Improve nixos-rebuild with nix-helper

This commit is contained in:
SebastianStork 2024-03-18 14:09:13 +01:00
parent 7adfa40f4d
commit d5729dc447
7 changed files with 70 additions and 5 deletions

View file

@ -1,6 +1,7 @@
{
config,
lib,
osConfig,
...
}: let
cfg = config.myConfig.shell;
@ -9,12 +10,25 @@ in {
bash.enable = lib.mkEnableOption "";
zsh.enable = lib.mkEnableOption "";
starship.enable = lib.mkEnableOption "";
nixAliases.enable = lib.mkEnableOption "";
nixAliases = {
enable = lib.mkEnableOption "";
nix-helper.enable = lib.mkEnableOption "";
};
improvedCommands.enable = lib.mkEnableOption "";
direnv.enable = lib.mkEnableOption "";
};
config = {
assertions = [
{
assertion =
if cfg.nixAliases.nix-helper.enable
then osConfig.myConfig.nix-helper.enable
else true;
message = "The nix-helper has to be enabled on the OS level.";
}
];
programs.bash.enable = cfg.bash.enable;
programs.zsh.enable = cfg.zsh.enable;
@ -35,10 +49,14 @@ in {
home.shellAliases = let
nixAliases = lib.mkIf cfg.nixAliases.enable {
nrs = "sudo nixos-rebuild switch";
nrb = "sudo nixos-rebuild boot";
nr =
if cfg.nixAliases.nix-helper.enable
then "nh os"
else "sudo nixos-rebuild --flake $FLAKE";
nrs = "nr switch";
nrt = "nr test";
nrb = "nr boot";
nrrb = "nrb && reboot";
nrt = "sudo nixos-rebuild test";
nu = "sudo nix flake update";
};
commandAliases = lib.mkIf cfg.improvedCommands.enable {

View file

@ -15,5 +15,6 @@
./dm.nix
./sound.nix
./boot-loader.nix
./nix-helper.nix
];
}

View file

@ -0,0 +1,14 @@
{
inputs,
config,
lib,
...
}: {
imports = [inputs.nh.nixosModules.default];
options.myConfig.nix-helper.enable = lib.mkEnableOption "";
config = lib.mkIf config.myConfig.nix-helper.enable {
nh.enable = true;
};
}