mirror of
https://github.com/nix-community/home-manager.git
synced 2025-11-08 19:46:05 +01:00
mise: enable nushell integration (#6363)
This commit is contained in:
parent
6c93eea85d
commit
69dfc316c5
3 changed files with 36 additions and 0 deletions
|
|
@ -21,6 +21,7 @@ in {
|
||||||
"enableBashIntegration"
|
"enableBashIntegration"
|
||||||
"enableZshIntegration"
|
"enableZshIntegration"
|
||||||
"enableFishIntegration"
|
"enableFishIntegration"
|
||||||
|
"enableNushellIntegration"
|
||||||
"settings"
|
"settings"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
@ -39,6 +40,9 @@ in {
|
||||||
enableZshIntegration =
|
enableZshIntegration =
|
||||||
lib.hm.shell.mkZshIntegrationOption { inherit config; };
|
lib.hm.shell.mkZshIntegrationOption { inherit config; };
|
||||||
|
|
||||||
|
enableNushellIntegration =
|
||||||
|
lib.hm.shell.mkNushellIntegrationOption { inherit config; };
|
||||||
|
|
||||||
globalConfig = mkOption {
|
globalConfig = mkOption {
|
||||||
type = tomlFormat.type;
|
type = tomlFormat.type;
|
||||||
default = { };
|
default = { };
|
||||||
|
|
@ -103,6 +107,16 @@ in {
|
||||||
fish.interactiveShellInit = mkIf cfg.enableFishIntegration ''
|
fish.interactiveShellInit = mkIf cfg.enableFishIntegration ''
|
||||||
${getExe cfg.package} activate fish | source
|
${getExe cfg.package} activate fish | source
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
nushell = mkIf cfg.enableNushellIntegration {
|
||||||
|
extraEnv = ''
|
||||||
|
let mise_path = $nu.default-config-dir | path join mise.nu
|
||||||
|
^mise activate nu | save $mise_path --force
|
||||||
|
'';
|
||||||
|
extraConfig = ''
|
||||||
|
use ($nu.default-config-dir | path join mise.nu)
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,4 +4,5 @@
|
||||||
mise-bash-integration = ./bash-integration.nix;
|
mise-bash-integration = ./bash-integration.nix;
|
||||||
mise-zsh-integration = ./zsh-integration.nix;
|
mise-zsh-integration = ./zsh-integration.nix;
|
||||||
mise-fish-integration = ./fish-integration.nix;
|
mise-fish-integration = ./fish-integration.nix;
|
||||||
|
mise-nushell-integration = ./nushell-integration.nix;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
21
tests/modules/programs/mise/nushell-integration.nix
Normal file
21
tests/modules/programs/mise/nushell-integration.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
{ config, ... }: {
|
||||||
|
programs = {
|
||||||
|
mise = {
|
||||||
|
package = config.lib.test.mkStubPackage { name = "mise"; };
|
||||||
|
enable = true;
|
||||||
|
enableNushellIntegration = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
nushell.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
nmt.script = ''
|
||||||
|
assertFileContains home-files/.config/nushell/env.nu \
|
||||||
|
'
|
||||||
|
let mise_path = $nu.default-config-dir | path join mise.nu
|
||||||
|
^mise activate nu | save $mise_path --force
|
||||||
|
'
|
||||||
|
assertFileContains home-files/.config/nushell/config.nu \
|
||||||
|
'use ($nu.default-config-dir | path join mise.nu)'
|
||||||
|
'';
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue