refactor(flake): apply dry principles
This commit is contained in:
parent
c877d9150a
commit
0e6e3d088f
2 changed files with 108 additions and 45 deletions
64
flake.lock
generated
64
flake.lock
generated
|
@ -1,5 +1,26 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"ags": {
|
||||||
|
"inputs": {
|
||||||
|
"astal": "astal",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1738087375,
|
||||||
|
"narHash": "sha256-GLyNtU9A2VN22jNRHZ2OXuFfTJLh8uEVVt+ftsKUX0c=",
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "ags",
|
||||||
|
"rev": "a6a7a0adb17740f4c34a59902701870d46fbb6a4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "ags",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"aquamarine": {
|
"aquamarine": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprutils": [
|
"hyprutils": [
|
||||||
|
@ -33,6 +54,47 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"astal": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"ags",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1737670815,
|
||||||
|
"narHash": "sha256-ZCxxshGN7XooabArcoGkYSNx5yVunqjKJi2aTv6cznI=",
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "astal",
|
||||||
|
"rev": "127e9cdcbf173846a3c40ddc0abfbb038df48042",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "astal",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"astal_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1742571008,
|
||||||
|
"narHash": "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=",
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "astal",
|
||||||
|
"rev": "dc0e5d37abe9424c53dcbd2506a4886ffee6296e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "aylur",
|
||||||
|
"repo": "astal",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"base16": {
|
"base16": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"fromYaml": "fromYaml"
|
"fromYaml": "fromYaml"
|
||||||
|
@ -1411,6 +1473,8 @@
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"ags": "ags",
|
||||||
|
"astal": "astal_2",
|
||||||
"disko": "disko",
|
"disko": "disko",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprcloser": "hyprcloser",
|
"hyprcloser": "hyprcloser",
|
||||||
|
|
89
flake.nix
89
flake.nix
|
@ -9,6 +9,15 @@
|
||||||
...
|
...
|
||||||
}@inputs:
|
}@inputs:
|
||||||
let
|
let
|
||||||
|
supportedSystems = [
|
||||||
|
"x86_64-linux"
|
||||||
|
"aarch64-linux"
|
||||||
|
"x86_64-darwin"
|
||||||
|
"aarch64-darwin"
|
||||||
|
];
|
||||||
|
forEachSupportedSystem = nixpkgs.lib.genAttrs supportedSystems (system: {
|
||||||
|
pkgs = import nixpkgs { inherit system; };
|
||||||
|
});
|
||||||
# args will later be used in outputs to inherit the flake and its inputs for use in modules.
|
# args will later be used in outputs to inherit the flake and its inputs for use in modules.
|
||||||
args = { inherit self inputs; };
|
args = { inherit self inputs; };
|
||||||
# mkSystem lets us repeat the same config for multiple systems, called later in outputs.
|
# mkSystem lets us repeat the same config for multiple systems, called later in outputs.
|
||||||
|
@ -32,59 +41,49 @@
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
mkListItem = hostname: {
|
||||||
|
name = "${hostname}";
|
||||||
|
value = mkSystem "${hostname}";
|
||||||
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
# System Configurations
|
# System Configurations
|
||||||
nixosConfigurations.nemesis = mkSystem "nemesis";
|
nixosConfigurations = builtins.listToAttrs [
|
||||||
nixosConfigurations.mellinoe = nixpkgs.lib.nixosSystem {
|
(mkListItem "nemesis")
|
||||||
specialArgs = args;
|
(mkListItem "mellinoe")
|
||||||
modules = [
|
];
|
||||||
./systems/mellinoe.nix
|
|
||||||
home-manager.nixosModules.home-manager
|
|
||||||
{
|
|
||||||
home-manager = {
|
|
||||||
useGlobalPkgs = true; # inherit the nixpkgs and its config
|
|
||||||
useUserPackages = true;
|
|
||||||
extraSpecialArgs = args;
|
|
||||||
users.rafiq.imports = [
|
|
||||||
./users/rafiq.nix
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
hyprland-plugins.inputs.hyprland.follows = "hyprland";
|
||||||
nixos-hardware.url = "github:nixos/nixos-hardware";
|
hyprland-plugins.url = "github:hyprwm/hyprland-plugins";
|
||||||
home-manager.url = "github:nix-community/home-manager";
|
wii-cursor.path = "/home/rafiq/repos/dotfiles/media/wii-cursors-xcursor";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
wii-cursor.type = "path";
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
|
||||||
yazi.url = "github:sxyazi/yazi";
|
|
||||||
nvf.url = "github:notashelf/nvf";
|
|
||||||
nixvim.url = "github:nix-community/nixvim";
|
|
||||||
nixvim.inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
nixd.url = "github:nix-community/nixd";
|
|
||||||
stylix.url = "github:danth/stylix";
|
|
||||||
spicetify-nix.url = "github:Gerg-L/spicetify-nix";
|
|
||||||
sops-nix.url = "github:Mic92/sops-nix";
|
|
||||||
hyprland-plugins = {
|
|
||||||
url = "github:hyprwm/hyprland-plugins";
|
|
||||||
inputs.hyprland.follows = "hyprland";
|
|
||||||
};
|
|
||||||
hyprlock.url = "github:hyprwm/hyprlock";
|
|
||||||
disko.url = "github:nix-community/disko/latest";
|
|
||||||
disko.inputs.nixpkgs.follows = "nixpkgs";
|
disko.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
impermanence.url = "github:nix-community/impermanence";
|
disko.url = "github:nix-community/disko/latest";
|
||||||
nix-index-database.url = "github:nix-community/nix-index-database";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
nix-index-database.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.url = "github:nix-community/home-manager";
|
||||||
wii-cursor = {
|
|
||||||
type = "path";
|
|
||||||
path = "/home/rafiq/repos/dotfiles/media/wii-cursors-xcursor";
|
|
||||||
};
|
|
||||||
hyprcloser.url = "github:rrvsh/hyprcloser";
|
hyprcloser.url = "github:rrvsh/hyprcloser";
|
||||||
hyprshaders.url = "github:0x15BA88FF/hyprshaders";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
|
hyprlock.url = "github:hyprwm/hyprlock";
|
||||||
hyprshaders.flake = false;
|
hyprshaders.flake = false;
|
||||||
|
hyprshaders.url = "github:0x15BA88FF/hyprshaders";
|
||||||
|
impermanence.url = "github:nix-community/impermanence";
|
||||||
|
nix-index-database.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
nix-index-database.url = "github:nix-community/nix-index-database";
|
||||||
|
nixd.url = "github:nix-community/nixd";
|
||||||
|
nixos-hardware.url = "github:nixos/nixos-hardware";
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
nixvim.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
nixvim.url = "github:nix-community/nixvim";
|
||||||
|
nvf.url = "github:notashelf/nvf";
|
||||||
|
sops-nix.url = "github:Mic92/sops-nix";
|
||||||
|
spicetify-nix.url = "github:Gerg-L/spicetify-nix";
|
||||||
|
stylix.url = "github:danth/stylix";
|
||||||
|
yazi.url = "github:sxyazi/yazi";
|
||||||
|
astal.url = "github:aylur/astal";
|
||||||
|
astal.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
ags.url = "github:aylur/ags";
|
||||||
|
ags.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue