111 lines
2.3 KiB
Nix
111 lines
2.3 KiB
Nix
{
|
|
self,
|
|
inputs,
|
|
homeImports,
|
|
...
|
|
}: let
|
|
specialArgs = {
|
|
inherit inputs self;
|
|
};
|
|
in {
|
|
flake.colmena = let
|
|
mod = "${self}/system";
|
|
inherit (import "${self}/system") desktop;
|
|
in {
|
|
meta = {
|
|
nixpkgs = import inputs.nixpkgs {
|
|
system = "x86_64-linux";
|
|
config.allowUnfree = true;
|
|
};
|
|
|
|
inherit specialArgs;
|
|
};
|
|
nixdesk = {
|
|
deployment = {
|
|
allowLocalDeployment = true;
|
|
targetHost = null;
|
|
};
|
|
imports =
|
|
desktop
|
|
++ [
|
|
./nixdesk
|
|
|
|
"${self}/secrets"
|
|
"${self}/secrets/nixdesk"
|
|
|
|
"${mod}/services/syncthing.nix"
|
|
"${mod}/desktop/x11/nosleep.nix"
|
|
|
|
{
|
|
home-manager = {
|
|
users.xun.imports = homeImports."xun@nixdesk";
|
|
extraSpecialArgs = specialArgs;
|
|
};
|
|
}
|
|
];
|
|
};
|
|
hopper = {
|
|
deployment = {
|
|
targetUser = "xun";
|
|
};
|
|
imports = [
|
|
./hopper
|
|
|
|
"${self}/secrets"
|
|
"${self}/secrets/hopper"
|
|
|
|
"${mod}/core"
|
|
|
|
"${mod}/programs/home-manager.nix"
|
|
|
|
"${mod}/desktop"
|
|
"${mod}/desktop/awesome.nix"
|
|
|
|
"${mod}/hardware/opengl.nix"
|
|
"${mod}/hardware/steam-hardware.nix"
|
|
"${mod}/hardware/bluetooth.nix"
|
|
"${mod}/hardware/qmk.nix"
|
|
|
|
"${mod}/network/avahi.nix"
|
|
"${mod}/network/networkd.nix"
|
|
"${mod}/network/tailscale.nix"
|
|
|
|
"${mod}/services"
|
|
"${mod}/services/pipewire.nix"
|
|
"${mod}/services/syncthing.nix"
|
|
"${mod}/services/containers/server"
|
|
|
|
#"${mod}/services/networkd-wireguard.nix"
|
|
#"${mod}/services/wireguard.nix"
|
|
#"${mod}/services/transmission.nix"
|
|
|
|
{
|
|
home-manager = {
|
|
users.xun.imports = homeImports."xun@hopper";
|
|
extraSpecialArgs = specialArgs;
|
|
};
|
|
}
|
|
];
|
|
};
|
|
liveiso = {
|
|
deployment.targetHost = null;
|
|
imports = [
|
|
./liveiso
|
|
|
|
"${mod}/nix"
|
|
"${mod}/core/security.nix"
|
|
|
|
"${mod}/services"
|
|
|
|
"${mod}/desktop"
|
|
];
|
|
};
|
|
};
|
|
flake.nixosConfigurations = let
|
|
l = inputs.nixpkgs.lib;
|
|
in (builtins.mapAttrs (_n: v:
|
|
l.nixosSystem {
|
|
inherit specialArgs;
|
|
modules = v.imports;
|
|
}) (l.filterAttrs (n: _: n != "meta") self.colmena));
|
|
}
|