59 lines
1.8 KiB
Nix
59 lines
1.8 KiB
Nix
{
|
|
description = "FredOS NixOS configuration";
|
|
inputs = {
|
|
# Unstable: gaming desktop & laptop want bleeding-edge GPU/kernel updates.
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
# Stable: mediaserver values cache hit-rate over fresh packages so it
|
|
# doesn't have to compile gnupg/openldap/v8 locally on every flake bump.
|
|
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-25.11";
|
|
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
home-manager-stable = {
|
|
url = "github:nix-community/home-manager/release-25.11";
|
|
inputs.nixpkgs.follows = "nixpkgs-stable";
|
|
};
|
|
|
|
zen-browser = {
|
|
url = "github:0xc000022070/zen-browser-flake";
|
|
inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
home-manager.follows = "home-manager";
|
|
};
|
|
};
|
|
|
|
nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel/release";
|
|
};
|
|
outputs =
|
|
{ self
|
|
, nixpkgs
|
|
, nixpkgs-stable
|
|
, home-manager
|
|
, home-manager-stable
|
|
, zen-browser
|
|
, nix-cachyos-kernel
|
|
, ...
|
|
} @ inputs:
|
|
let
|
|
system = "x86_64-linux";
|
|
mkHost = hostname: pkgsInput: hmInput: pkgsInput.lib.nixosSystem {
|
|
inherit system;
|
|
specialArgs = { inherit inputs; };
|
|
modules = [
|
|
./hosts/${hostname}.nix
|
|
./hosts/hardware/${hostname}.nix
|
|
./common.nix
|
|
hmInput.nixosModules.home-manager
|
|
];
|
|
};
|
|
in
|
|
{
|
|
nixosConfigurations = {
|
|
FredOS-Gaming = mkHost "FredOS-Gaming" nixpkgs home-manager;
|
|
FredOS-Mediaserver = mkHost "FredOS-Mediaserver" nixpkgs-stable home-manager-stable;
|
|
FredOS-Macbook = mkHost "FredOS-Macbook" nixpkgs-stable home-manager-stable;
|
|
};
|
|
};
|
|
}
|