Files
garandos/flake.nix

90 lines
2.1 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";
};
affinity-nix = {
url = "github:mrshmllow/affinity-nix";
inputs = {
nixpkgs.follows = "nixpkgs";
treefmt-nix.inputs.nixpkgs.follows = "nixpkgs";
git-hooks.inputs = {
nixpkgs.follows = "nixpkgs";
gitignore.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;
};
}