mise: add module

This adds the support for the mise program, the successor of rtx. This
commit therefore also removes the rtx module.
This commit is contained in:
Nikita Pedorich 2024-01-21 08:51:14 +01:00 committed by GitHub
parent 9b378afae7
commit 928f2528f9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
16 changed files with 222 additions and 170 deletions

View file

@ -0,0 +1,16 @@
{ config, ... }: {
programs = {
mise = {
package = config.lib.test.mkStubPackage { name = "mise"; };
enable = true;
enableBashIntegration = true;
};
bash.enable = true;
};
nmt.script = ''
assertFileRegex home-files/.bashrc 'eval "$(/nix/store/.*mise.*/bin/mise activate bash)"'
'';
}

View file

@ -0,0 +1,45 @@
{ config, pkgs, ... }: {
programs = {
mise = {
package = config.lib.test.mkStubPackage { name = "mise"; };
enable = true;
globalConfig = {
tools = {
node = "lts";
python = [ "3.10" "3.11" ];
};
aliases = { my_custom_node = "20"; };
};
settings = {
verbose = false;
experimental = true;
disable_tools = [ "node" ];
};
};
};
nmt.script = ''
assertFileExists home-files/.config/mise/config.toml
assertPathExists home-files/.config/mise/settings.toml
assertFileContent home-files/.config/mise/config.toml ${
pkgs.writeText "mise.config.expected" ''
[aliases]
my_custom_node = "20"
[tools]
node = "lts"
python = ["3.10", "3.11"]
''
}
assertFileContent home-files/.config/mise/settings.toml ${
pkgs.writeText "mise.settings.expected" ''
disable_tools = ["node"]
experimental = true
verbose = false
''
}
'';
}

View file

@ -0,0 +1,13 @@
{ config, ... }: {
config = {
programs.mise = {
package = config.lib.test.mkStubPackage { name = "mise"; };
enable = true;
};
nmt.script = ''
assertPathNotExists home-files/.config/mise/config.toml
assertPathNotExists home-files/.config/mise/settings.toml
'';
};
}

View file

@ -0,0 +1,7 @@
{
mise-default-settings = ./default-settings.nix;
mise-custom-settings = ./custom-settings.nix;
mise-bash-integration = ./bash-integration.nix;
mise-zsh-integration = ./zsh-integration.nix;
mise-fish-integration = ./fish-integration.nix;
}

View file

@ -1,7 +1,7 @@
{ config, ... }: {
programs = {
rtx = {
package = config.lib.test.mkStubPackage { name = "rtx"; };
mise = {
package = config.lib.test.mkStubPackage { name = "mise"; };
enable = true;
enableFishIntegration = true;
};
@ -10,7 +10,7 @@
};
nmt.script = ''
assertFileRegex home-files/.config/fish/config.fish '/nix/store/.*rtx.*/bin/rtx activate fish | source'
assertFileRegex home-files/.config/fish/config.fish '/nix/store/.*mise.*/bin/mise activate fish | source'
'';
}

View file

@ -0,0 +1,16 @@
{ config, ... }: {
programs = {
mise = {
package = config.lib.test.mkStubPackage { name = "mise"; };
enable = true;
enableZshIntegration = true;
};
zsh.enable = true;
};
nmt.script = ''
assertFileRegex home-files/.zshrc 'eval "$(/nix/store/.*mise.*/bin/mise activate zsh)"'
'';
}

View file

@ -1,16 +0,0 @@
{ config, ... }: {
programs = {
rtx = {
package = config.lib.test.mkStubPackage { name = "rtx"; };
enable = true;
enableBashIntegration = true;
};
bash.enable = true;
};
nmt.script = ''
assertFileRegex home-files/.bashrc 'eval "$(/nix/store/.*rtx.*/bin/rtx activate bash)"'
'';
}

View file

@ -1,35 +0,0 @@
{ config, pkgs, ... }: {
programs = {
rtx = {
package = config.lib.test.mkStubPackage { name = "rtx"; };
enable = true;
settings = {
tools = {
node = "lts";
python = [ "3.10" "3.11" ];
};
settings = {
verbose = false;
experimental = false;
};
};
};
};
nmt.script = ''
assertFileExists home-files/.config/rtx/config.toml
assertFileContent home-files/.config/rtx/config.toml ${
pkgs.writeText "rtx.expected" ''
[settings]
experimental = false
verbose = false
[tools]
node = "lts"
python = ["3.10", "3.11"]
''
}
'';
}

View file

@ -1,12 +0,0 @@
{ config, ... }: {
config = {
programs.rtx = {
package = config.lib.test.mkStubPackage { name = "rtx"; };
enable = true;
};
nmt.script = ''
assertPathNotExists home-files/.config/rtx/config.toml
'';
};
}

View file

@ -1,7 +0,0 @@
{
rtx-default-settings = ./default-settings.nix;
rtx-custom-settings = ./custom-settings.nix;
rtx-bash-integration = ./bash-integration.nix;
rtx-zsh-integration = ./zsh-integration.nix;
rtx-fish-integration = ./fish-integration.nix;
}

View file

@ -1,16 +0,0 @@
{ config, ... }: {
programs = {
rtx = {
package = config.lib.test.mkStubPackage { name = "rtx"; };
enable = true;
enableZshIntegration = true;
};
zsh.enable = true;
};
nmt.script = ''
assertFileRegex home-files/.zshrc 'eval "$(/nix/store/.*rtx.*/bin/rtx activate zsh)"'
'';
}