mirror of
https://github.com/nix-community/nix-on-droid.git
synced 2025-11-09 03:56:06 +01:00
modules: Accept a path-like for home-manager
We don't actually use the initialized attrset for anything other than its path.
This commit is contained in:
parent
8972fbf3da
commit
b1086df532
2 changed files with 8 additions and 4 deletions
|
|
@ -1,12 +1,16 @@
|
||||||
# Copyright (c) 2019-2020, see AUTHORS. Licensed under MIT License, see LICENSE.
|
# Copyright (c) 2019-2020, see AUTHORS. Licensed under MIT License, see LICENSE.
|
||||||
|
|
||||||
{ pkgs ? import <nixpkgs> { }, home-manager ? import <home-manager> { }, config ? null, isFlake ? false }:
|
{ pkgs ? import <nixpkgs> { }, home-manager ? <home-manager>, config ? null, isFlake ? false }:
|
||||||
|
|
||||||
with pkgs.lib;
|
with pkgs.lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
defaultConfigFile = "${builtins.getEnv "HOME"}/.config/nixpkgs/nix-on-droid.nix";
|
defaultConfigFile = "${builtins.getEnv "HOME"}/.config/nixpkgs/nix-on-droid.nix";
|
||||||
|
|
||||||
|
hmPath = if home-manager ? install then
|
||||||
|
pkgs.lib.warn "Passing an initialized home-manager is useless - The overridden pkgs will not be used" home-manager.path
|
||||||
|
else home-manager;
|
||||||
|
|
||||||
configModule =
|
configModule =
|
||||||
if config != null then config
|
if config != null then config
|
||||||
else if builtins.pathExists defaultConfigFile then defaultConfigFile
|
else if builtins.pathExists defaultConfigFile then defaultConfigFile
|
||||||
|
|
@ -16,7 +20,7 @@ let
|
||||||
rawModule = evalModules {
|
rawModule = evalModules {
|
||||||
modules = [
|
modules = [
|
||||||
{
|
{
|
||||||
_module.args.home-manager = home-manager;
|
_module.args.home-manager = hmPath;
|
||||||
_module.args.pkgs = mkDefault pkgs;
|
_module.args.pkgs = mkDefault pkgs;
|
||||||
_module.args.isFlake = isFlake;
|
_module.args.isFlake = isFlake;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,13 +7,13 @@ with lib;
|
||||||
let
|
let
|
||||||
cfg = config.home-manager;
|
cfg = config.home-manager;
|
||||||
|
|
||||||
extendedLib = import (home-manager.path + "/modules/lib/stdlib-extended.nix") pkgs.lib;
|
extendedLib = import (home-manager + "/modules/lib/stdlib-extended.nix") pkgs.lib;
|
||||||
|
|
||||||
hmModule = types.submoduleWith {
|
hmModule = types.submoduleWith {
|
||||||
specialArgs = { lib = extendedLib; };
|
specialArgs = { lib = extendedLib; };
|
||||||
modules = [
|
modules = [
|
||||||
({ name, ... }: {
|
({ name, ... }: {
|
||||||
imports = import (home-manager.path + "/modules/modules.nix") {
|
imports = import (home-manager + "/modules/modules.nix") {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
lib = extendedLib;
|
lib = extendedLib;
|
||||||
useNixpkgsModule = !cfg.useGlobalPkgs;
|
useNixpkgsModule = !cfg.useGlobalPkgs;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue