mirror of
https://github.com/nix-community/home-manager.git
synced 2025-11-08 19:46:05 +01:00
numbat: Allow specifying a path for initFile
This commit is contained in:
parent
26d405da41
commit
f117b383dd
4 changed files with 33 additions and 3 deletions
|
|
@ -40,13 +40,14 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
initFile = lib.mkOption {
|
initFile = lib.mkOption {
|
||||||
type = lib.types.nullOr lib.types.lines;
|
type = lib.types.nullOr (lib.types.either lib.types.lines lib.types.path);
|
||||||
default = null;
|
default = null;
|
||||||
example = ''
|
example = ''
|
||||||
unit kohm: ElectricResistance = kV/A
|
unit kohm: ElectricResistance = kV/A
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
User initialization file ({file}`init.nbt`) contents.
|
User initialization file ({file}`init.nbt`) contents. May be specified
|
||||||
|
inline or as a path to a source file.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -55,7 +56,7 @@ in
|
||||||
home.packages = mkIf (cfg.package != null) [ cfg.package ];
|
home.packages = mkIf (cfg.package != null) [ cfg.package ];
|
||||||
|
|
||||||
home.file."${configDir}/init.nbt" = mkIf (cfg.initFile != null) {
|
home.file."${configDir}/init.nbt" = mkIf (cfg.initFile != null) {
|
||||||
text = cfg.initFile;
|
source = if lib.isString cfg.initFile then pkgs.writeText "init.nbt" cfg.initFile else cfg.initFile;
|
||||||
};
|
};
|
||||||
|
|
||||||
home.file."${configDir}/config.toml" = mkIf (cfg.settings != { }) {
|
home.file."${configDir}/config.toml" = mkIf (cfg.settings != { }) {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
numbat-example-config = ./example-config.nix;
|
numbat-example-config = ./example-config.nix;
|
||||||
numbat-empty-config = ./empty-config.nix;
|
numbat-empty-config = ./empty-config.nix;
|
||||||
|
numbat-external-initfile = ./external-initfile.nix;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
27
tests/modules/programs/numbat/external-initfile.nix
Normal file
27
tests/modules/programs/numbat/external-initfile.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
configDir =
|
||||||
|
if pkgs.stdenv.hostPlatform.isDarwin then
|
||||||
|
"Library/Application Support/numbat"
|
||||||
|
else
|
||||||
|
".config/numbat";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
programs.numbat = {
|
||||||
|
enable = true;
|
||||||
|
package = config.lib.test.mkStubPackage { };
|
||||||
|
initFile = ./init.nbt;
|
||||||
|
};
|
||||||
|
|
||||||
|
nmt.script = ''
|
||||||
|
assertFileExists 'home-files/${configDir}/init.nbt'
|
||||||
|
assertFileContent $(normalizeStorePaths 'home-files/${configDir}/init.nbt') \
|
||||||
|
${builtins.toFile "expected-init.nbt" ''
|
||||||
|
unit kohm: ElectricResistance = kV/A
|
||||||
|
''}
|
||||||
|
'';
|
||||||
|
}
|
||||||
1
tests/modules/programs/numbat/init.nbt
Normal file
1
tests/modules/programs/numbat/init.nbt
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
unit kohm: ElectricResistance = kV/A
|
||||||
Loading…
Add table
Add a link
Reference in a new issue