nix/flake.nix

51 lines
2.5 KiB
Nix
Raw Normal View History

2023-08-23 07:30:15 +02:00
{
description = "NixOS System Config";
inputs = {
2023-08-25 12:07:54 +02:00
nixpkgs.url = "nixpkgs/nixos-unstable";
2023-08-27 12:35:58 +02:00
nixpkgs-wayland.url = "github:nix-community/nixpkgs-wayland";
2023-08-25 12:07:54 +02:00
home-manager.url = "github:nix-community/home-manager/master";
2023-08-23 07:30:15 +02:00
home-manager.inputs.nixpkgs.follows = "nixpkgs";
2023-08-25 12:07:54 +02:00
lanzaboote.url = "github:nix-community/lanzaboote";
2023-08-23 07:30:15 +02:00
lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
2023-08-25 12:07:54 +02:00
nur.url = "github:nix-community/NUR";
sops-nix.url = "github:Mic92/sops-nix";
doom-emacs.url = "github:nix-community/nix-doom-emacs";
};
2023-09-15 06:50:26 +02:00
outputs = { self, nixpkgs, nixpkgs-wayland, home-manager, lanzaboote, nur, sops-nix, doom-emacs, ... } @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-09-15 06:50:26 +02:00
nixos-laptop = libx.mkHost
{ hostname = "nixos-laptop"; username = "albert"; desktop = "hyprland"; gpu = "intel"; theme = "gruvbox"; };
nixos-framework = libx.mkHost
{ hostname = "nixos-framework"; username = "albert"; desktop = "hyprland"; gpu = "amd"; theme = "gruvbox"; };
nixos-rpi4-01 = libx.mkHost
2023-09-15 12:19:33 +02:00
{ hostname = "nixos-rpi4-01"; username = "albert"; platform = "aarch64-linux"; };
2023-09-16 13:58:47 +02:00
nixos-rpi4-02 = libx.mkHost
{ hostname = "nixos-rpi4-02"; username = "albert"; platform = "aarch64-linux"; };
nixos-rpi4-03 = libx.mkHost
{ hostname = "nixos-rpi4-03"; username = "albert"; platform = "aarch64-linux"; };
2023-08-23 07:30:15 +02:00
};
2023-08-23 15:38:35 +02:00
homeConfigurations = {
2023-09-15 06:50:26 +02:00
"albert@nixos-laptop" = libx.mkHome
{ hostname = "nixos-laptop"; username = "albert"; desktop = "hyprland"; theme = "gruvbox"; };
"albert@nixos-framework" = libx.mkHome
{ hostname = "nixos-framework"; username = "albert"; desktop = "hyprland"; theme = "gruvbox"; };
"albert@nixos-rpi4-01" = libx.mkHome
2023-09-15 12:19:33 +02:00
{ hostname = "nixos-rpi4-01"; username = "albert"; platform = "aarch64-linux"; };
2023-09-16 13:58:47 +02:00
"albert@nixos-rpi4-02" = libx.mkHome
{ hostname = "nixos-rpi4-01"; username = "albert"; platform = "aarch64-linux"; };
"albert@nixos-rpi4-03" = libx.mkHome
{ hostname = "nixos-rpi4-01"; username = "albert"; platform = "aarch64-linux"; };
};
images = {
nixos-rpi4-01 = nixosConfigurations.nixos-rpi4-01.config.system.build.sdImage;
nixos-rpi4-02 = nixosConfigurations.nixos-rpi4-02.config.system.build.sdImage;
nixos-rpi4-03 = nixosConfigurations.nixos-rpi4-03.config.system.build.sdImage;
2023-08-23 07:30:15 +02:00
};
};
2023-09-01 03:47:46 +02:00
}