system builder flake.nix

This commit is contained in:
Your Name 2024-05-17 21:20:23 +03:00
parent cbe06e1d34
commit c6f5084aa7

View file

@ -1,14 +1,13 @@
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
# nixpkgs.url = "github:nixos/nixpkgs?rev=ebce8ace41c8ca0d1776de4c5be5c815fb2fb5f7";
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-23.11";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs2105.url = "github:NixOS/nixpkgs/nixos-21.05";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
anyrun.url = "github:Kirottu/anyrun";
# anyrun.inputs.nixpkgs.follows = "nixpkgs";
anyrun.url = "github:anyrun-org/anyrun";
anyrun.inputs.nixpkgs.follows = "nixpkgs";
secrets.url = "git+ssh://git@github.com/deltathetawastaken/secrets.git";
nixvim.url = "github:nix-community/nixvim";
shwewo = {
@ -21,6 +20,11 @@
url = "github:hyprwm/contrib";
inputs.nixpkgs.follows = "nixpkgs";
};
#hyprland-plugins = {
# url = "github:hyprwm/hyprland-plugins";
# inputs.hyprland.follows = "hyprland";
#};
};
outputs = inputs@{ self, nixpkgs, home-manager, ... }:
@ -34,33 +38,32 @@
system = "x86_64-linux";
config = { allowUnfree = true; };
};
specialArgs = { inherit inputs self stable unstable homeSettings; };
homeSettings = {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.delta = import ./home/home.nix;
home-manager.extraSpecialArgs = specialArgs;
specialArgs = { inherit inputs self stable unstable homeSettings; }; #var coz shared between home and system
homeSettings.home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.delta = import ./home/home.nix;
extraSpecialArgs = specialArgs;
};
makeSystem = name: systemModules: nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = specialArgs;
modules = [ ./hosts/generic.nix ] ++ systemModules;
};
in {
devShells."x86_64-linux".default = pkgs.mkShell {
name = "delta";
packages = with pkgs; [ gitleaks pre-commit ];
shellHook = "pre-commit install &> /dev/null && gitleaks detect -v";
};
nixosConfigurations.dlaptop = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = specialArgs;
modules = [ ./hosts/generic.nix ./hosts/dlaptop/system.nix ];
};
nixosConfigurations.intelnuc = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = specialArgs;
modules = [ ./hosts/generic.nix ./hosts/intelnuc/system.nix ];
};
nixosConfigurations.huanan = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = specialArgs;
modules = [ ./hosts/generic.nix ./hosts/huanan/system.nix ];
nixosConfigurations = {
dlaptop = makeSystem "dlaptop" [ ./hosts/dlaptop/system.nix ];
intelnuc = makeSystem "intelnuc" [ ./hosts/intelnuc/system.nix ];
huanan = makeSystem "huanan" [ ./hosts/huanan/system.nix ];
};
};
}