Add a "small" home-manager image for the raspberry pi's

This commit is contained in:
iFargle 2023-12-12 19:29:04 +09:00
parent a772298809
commit 24454badb9
3 changed files with 39 additions and 5 deletions

View file

@ -54,9 +54,9 @@
"albert@framework-server" = libx.mkHome { hostname = "framework-server"; }; "albert@framework-server" = libx.mkHome { hostname = "framework-server"; };
# "albert@nixos-desktop" = libx.mkHome { hostname = "nixos-desktop"; desktop = "gnome"; }; # "albert@nixos-desktop" = libx.mkHome { hostname = "nixos-desktop"; desktop = "gnome"; };
"albert@nixos-framework" = libx.mkHome { hostname = "nixos-framework"; desktop = "hyprland"; theme = "green"; }; "albert@nixos-framework" = libx.mkHome { hostname = "nixos-framework"; desktop = "hyprland"; theme = "green"; };
"albert@nixos-rpi4-01" = libx.mkHome { hostname = "nixos-rpi4-01"; platform = "aarch64-linux"; }; "albert@nixos-rpi4-01" = libx.mkHome { hostname = "nixos-rpi4-01"; platform = "aarch64-linux"; type = "small"; };
"albert@nixos-rpi4-02" = libx.mkHome { hostname = "nixos-rpi4-02"; platform = "aarch64-linux"; }; "albert@nixos-rpi4-02" = libx.mkHome { hostname = "nixos-rpi4-02"; platform = "aarch64-linux"; type = "small"; };
"albert@nixos-rpi4-03" = libx.mkHome { hostname = "nixos-rpi4-03"; platform = "aarch64-linux"; }; "albert@nixos-rpi4-03" = libx.mkHome { hostname = "nixos-rpi4-03"; platform = "aarch64-linux"; type = "small"; };
}; };
deploy.nodes = { deploy.nodes = {
osaka-linode-01 = libx.deploy { hostname = "osaka-linode-01"; }; osaka-linode-01 = libx.deploy { hostname = "osaka-linode-01"; };

33
home-manager/small.nix Normal file
View file

@ -0,0 +1,33 @@
{ lib, config, pkgs, inputs, hostname, platform, username, desktop, theme, hmStateVersion, ... }: {
imports = [
# Common configs
./common/software/cli/bash.nix
./common/software/cli/git.nix
./common/software/cli/neovim.nix
./common/software/cli/ssh.nix
./common/software/cli/themes/${theme}/btop.nix
# User configs
./users/${username}
]
++ lib.optional (builtins.isString desktop) ./common/software/gui # GUI packages
++ lib.optional (builtins.isString desktop) ./common/desktops/${desktop} # Machine-agnostic desktop configs
++ lib.optional (builtins.isString desktop) ./hosts/${hostname}/desktops/${desktop} # Machine-specific desktop configs
;
home = {
inherit username;
stateVersion = hmStateVersion;
homeDirectory = "/home/${username}";
sessionPath = [ "$HOME/.local/bin" ];
};
};
nixpkgs = {
overlays = [
# Currently in use in the Firefox config
inputs.nur.overlay
];
};
}

View file

@ -29,12 +29,13 @@
username ? "albert", username ? "albert",
desktop ? null, desktop ? null,
platform ? "x86_64-linux", platform ? "x86_64-linux",
theme ? "default" theme ? "default",
type ? "default"
}: inputs.home-manager.lib.homeManagerConfiguration { }: inputs.home-manager.lib.homeManagerConfiguration {
pkgs = inputs.nixpkgs.legacyPackages.${platform}; pkgs = inputs.nixpkgs.legacyPackages.${platform};
extraSpecialArgs = { inherit inputs outputs desktop hostname platform username hmStateVersion theme; }; extraSpecialArgs = { inherit inputs outputs desktop hostname platform username hmStateVersion theme; };
modules = [ modules = [
../home-manager ../home-manager/${type}.nix
]; ];
}; };