Files
garandos/flake.nix
2025-10-20 23:22:26 +02:00

82 lines
1.8 KiB
Nix

{
description = "GarandOS";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs";
};
stylix = {
url = "github:danth/stylix";
inputs = {
nixpkgs.follows = "nixpkgs";
flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs";
nur.inputs = {
nixpkgs.follows = "nixpkgs";
flake-parts.follows = "stylix/flake-parts";
};
};
};
auto-cpufreq = {
url = "github:AdnanHodzic/auto-cpufreq";
inputs.nixpkgs.follows = "nixpkgs";
};
firefox-addons = {
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
inputs.nixpkgs.follows = "nixpkgs";
};
prismlauncher-cracked = {
url = "github:Diegiwg/PrismLauncher-Cracked";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-flatpak.url = "github:gmodena/nix-flatpak?ref=latest";
};
outputs =
{
nixpkgs,
nix-flatpak,
auto-cpufreq,
...
}@inputs:
let
hostDirs = builtins.attrNames (builtins.readDir ./hosts);
mkHost =
hostName:
let
inherit (import ./hosts/${hostName}/variables.nix)
host
username
profile
system
;
in
nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {
inherit inputs;
inherit username;
inherit host;
inherit profile;
inherit system;
};
modules = [
./profiles/${profile}
nix-flatpak.nixosModules.nix-flatpak
auto-cpufreq.nixosModules.default
];
};
in
{
nixosConfigurations = nixpkgs.lib.genAttrs hostDirs mkHost;
};
}