make home configs work
This commit is contained in:
parent
f0c21b2e79
commit
30f81b2b79
29 changed files with 2131 additions and 2033 deletions
112
flake.nix
112
flake.nix
|
|
@ -72,12 +72,10 @@
|
|||
};
|
||||
outputs =
|
||||
{
|
||||
self,
|
||||
nixpkgs,
|
||||
flake-utils,
|
||||
sops-nix,
|
||||
vpn-confinement,
|
||||
home-manager,
|
||||
deploy-rs,
|
||||
...
|
||||
}@inputs:
|
||||
|
|
@ -94,87 +92,40 @@
|
|||
})
|
||||
];
|
||||
};
|
||||
|
||||
specialArgsForSystem = system: {
|
||||
pkgs = pkgsForSystem system;
|
||||
flakes = inputs;
|
||||
inherit inputs;
|
||||
inherit (inputs.secrets.packages.${system}) secrets;
|
||||
};
|
||||
configs = import ./config.nix (inputs // { inherit pkgsForSystem; });
|
||||
in
|
||||
{
|
||||
nixosConfigurations.fili = nixpkgs.lib.nixosSystem rec {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
inputs.home-manager.nixosModules.default
|
||||
{ home-manager.extraSpecialArgs = specialArgs; }
|
||||
|
||||
./hosts/fili/configuration.nix
|
||||
./users
|
||||
./default-machine-config.nix
|
||||
|
||||
(configs.configs [
|
||||
{
|
||||
hostname = "fili";
|
||||
capabilities = [ "cli" ];
|
||||
type = "server";
|
||||
extra-modules = [
|
||||
sops-nix.nixosModules.sops
|
||||
vpn-confinement.nixosModules.default
|
||||
];
|
||||
specialArgs = specialArgsForSystem system;
|
||||
};
|
||||
nixosConfigurations.kili = nixpkgs.lib.nixosSystem rec {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
inputs.home-manager.nixosModules.default
|
||||
{ home-manager.extraSpecialArgs = specialArgs; }
|
||||
|
||||
./hosts/kili/configuration.nix
|
||||
./users
|
||||
}
|
||||
{
|
||||
hostname = "kili";
|
||||
deploy-hostname = "localhost";
|
||||
capabilities = [
|
||||
"cli"
|
||||
"graphical"
|
||||
"work"
|
||||
"fun"
|
||||
];
|
||||
specialArgs = specialArgsForSystem system;
|
||||
};
|
||||
nixosConfigurations.ragdoll = home-manager.lib.homeManagerConfiguration (
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
in
|
||||
{
|
||||
modules = [
|
||||
inputs.home-manager.nixosModules.default
|
||||
{ home-manager.extraSpecialArgs = specialArgsForSystem system; }
|
||||
|
||||
./hosts/ragdoll/configuration.nix
|
||||
./default-machine-config.nix
|
||||
];
|
||||
pkgs = pkgsForSystem system;
|
||||
}
|
||||
);
|
||||
|
||||
deploy.nodes.fili = {
|
||||
hostname = "fili";
|
||||
fastConnection = true;
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.fili;
|
||||
sshUser = "jana";
|
||||
};
|
||||
};
|
||||
|
||||
deploy.nodes.kili = {
|
||||
hostname = "localhost";
|
||||
fastConnection = true;
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.kili;
|
||||
sshUser = "jana";
|
||||
};
|
||||
};
|
||||
|
||||
deploy.nodes.ragdoll = {
|
||||
type = "pc";
|
||||
}
|
||||
{
|
||||
hostname = "ragdoll";
|
||||
fastConnection = true;
|
||||
profiles.system = {
|
||||
user = "jana";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.home-manager self.nixosConfigurations.ragdoll;
|
||||
sshUser = "jana";
|
||||
};
|
||||
};
|
||||
}
|
||||
deploy-hostname = "ragdoll";
|
||||
home-only = "jana";
|
||||
capabilities = [
|
||||
"cli"
|
||||
"work"
|
||||
];
|
||||
type = "pc";
|
||||
}
|
||||
])
|
||||
// flake-utils.lib.eachDefaultSystem (
|
||||
system:
|
||||
let
|
||||
|
|
@ -184,14 +135,17 @@
|
|||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
lix
|
||||
(pkgs.writeShellScriptBin "apply-local" ''
|
||||
apply $(hostname)
|
||||
'')
|
||||
(pkgs.writeShellScriptBin "apply" ''
|
||||
set -e
|
||||
if [ $# -eq 0 ]
|
||||
then
|
||||
deploy
|
||||
deploy -s
|
||||
elif [ $# -eq 1 ]
|
||||
then
|
||||
deploy ".#$@"
|
||||
deploy -s ".#$@"
|
||||
else
|
||||
echo "too many parameters"
|
||||
exit 1
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue