nix/flake.nix

31 lines
1.5 KiB
Nix
Raw Normal View History

2023-08-23 07:30:15 +02:00
{
description = "NixOS System Config";
inputs = {
2023-08-23 07:30:15 +02:00
nixpkgs.url = "nixpkgs/nixos-unstable"; # NixOS packages
2023-08-24 13:52:02 +02:00
home-manager.url = "github:nix-community/home-manager/master"; # Manage dotfiles in a home directory
2023-08-23 07:30:15 +02:00
home-manager.inputs.nixpkgs.follows = "nixpkgs";
lanzaboote.url = "github:nix-community/lanzaboote"; # Secureboot Configuration
lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
nur.url = "github:nix-community/NUR"; # Nix User Repository
sops-nix.url = "github:Mic92/sops-nix"; # Encrypted secrets in Nix configuration files
};
2023-08-23 07:30:15 +02:00
outputs = {
2023-08-23 12:49:37 +02:00
self, nixpkgs, home-manager, lanzaboote, nur, sops-nix, ...
}@inputs:
let
2023-08-23 07:30:15 +02:00
inherit (self) outputs;
stateVersion = "unstable";
2023-08-24 13:52:02 +02:00
hmStateVersion = "23.11";
2023-08-23 14:41:07 +02:00
libx = import ./lib { inherit inputs outputs stateVersion hmStateVersion; };
in {
nixosConfigurations = {
2023-08-25 01:02:10 +02:00
nixos-laptop = libx.mkHost { hostname = "nixos-laptop"; username = "albert"; desktop = "hyprland"; gpu = "intel"; };
nixos-desktop = libx.mkHost { hostname = "nixos-desktop"; username = "albert"; desktop = "gnome"; gpu = "nvidia"; };
2023-08-23 07:30:15 +02:00
};
2023-08-23 15:38:35 +02:00
homeConfigurations = {
2023-08-24 02:50:14 +02:00
"albert@nixos-laptop" = libx.mkHome { hostname = "nixos-laptop"; username = "albert"; desktop = "hyprland"; };
2023-08-23 15:09:30 +02:00
"albert@nixos-desktop" = libx.mkHome { hostname = "nixos-desktop"; username = "albert"; desktop = "gnome"; };
2023-08-23 07:30:15 +02:00
};
};
2023-08-24 02:56:55 +02:00
}