cleaned up the flake

This commit is contained in:
2025-10-30 18:16:10 +01:00
parent a8d8c4dde9
commit efe873d714
2 changed files with 103 additions and 122 deletions

223
flake.nix
View File

@@ -5,21 +5,26 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
# Home manager # Home manager
home-manager.url = "github:nix-community/home-manager"; home-manager = {
home-manager.inputs.nixpkgs.follows = "nixpkgs"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
# Managing flatpak apps # Managing flatpak apps
nix-flatpak.url = "github:gmodena/nix-flatpak"; nix-flatpak.url = "github:gmodena/nix-flatpak";
# hyprland, plugins and related utils # hyprland, plugins and related utils
hyprland.url = "github:hyprwm/Hyprland"; hyprland.url = "github:hyprwm/Hyprland";
stylix = { stylix = {
url = "github:nix-community/stylix"; url = "github:nix-community/stylix";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
# zen browser # zen browser
zen-browser.url = "github:0xc000022070/zen-browser-flake"; zen-browser = {
# IMPORTANT: we're using "libgbm" and is only available in unstable so ensure url = "github:0xc000022070/zen-browser-flake";
# to have it up-to-date or simply don't specify the nixpkgs input inputs.nixpkgs.follows = "nixpkgs";
zen-browser.inputs.nixpkgs.follows = "nixpkgs"; };
# power management # power management
watt = { watt = {
@@ -28,8 +33,10 @@
}; };
# secrets # secrets
sops-nix.url = "github:Mic92/sops-nix"; sops-nix = {
sops-nix.inputs.nixpkgs.follows = "nixpkgs"; url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
# quickshell # quickshell
dms-cli = { dms-cli = {
@@ -42,7 +49,6 @@
inputs.dms-cli.follows = "dms-cli"; inputs.dms-cli.follows = "dms-cli";
}; };
nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions"; nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions";
}; };
@@ -63,123 +69,96 @@
pkgs = nixpkgs.legacyPackages.${system}; pkgs = nixpkgs.legacyPackages.${system};
pkgs-unstable = nixpkgs-unstable.legacyPackages.${system}; pkgs-unstable = nixpkgs-unstable.legacyPackages.${system};
lib = nixpkgs.lib;
systems = {
# HP Spectre x360 2018
Nixtre = {
hostModules = [
./hosts/spectre-x360-2018
];
userModules = [
./users/remy_spectre
inputs.nix-flatpak.homeManagerModules.nix-flatpak
];
extraModules = [
inputs.stylix.nixosModules.stylix
inputs.sops-nix.nixosModules.sops
];
};
# Portable usb stick
nichts = {
hostModules = [
./hosts/mobile-usb
];
userModules = [
./users/remy_usb
inputs.nix-flatpak.homeManagerModules.nix-flatpak
];
extraModules = [
inputs.stylix.nixosModules.stylix
inputs.sops-nix.nixosModules.sops
];
};
# Lenovo yoga 7 pro
nyx = {
hostModules = [
./hosts/yoga-7-pro
];
userModules = [
./users/remy_yoga
inputs.nix-flatpak.homeManagerModules.nix-flatpak
inputs.dankMaterialShell.homeModules.dankMaterialShell.default
];
extraModules = [
inputs.stylix.nixosModules.stylix
inputs.sops-nix.nixosModules.sops
{ nixpkgs.overlays = [ inputs.nix-vscode-extensions.overlays.default ]; }
];
};
};
in in
{ {
# For each entry in `systems` create a nixosConfiguration
nixosConfigurations = lib.mapAttrs (_name: cfg:
nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = { inherit inputs pkgs-unstable; };
modules =
cfg.hostModules ++
cfg.extraModules ++
[ home-manager.nixosModules.home-manager {
# Common home-manager flags
home-manager = {
backupFileExtension = ".backup";
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = { inherit inputs pkgs-unstable; };
};
## NixOS configurations are the main output of this flake # Merge in all the user fragments for this host
# HP Spectre x360 2018 home-manager.users.remy = lib.mkMerge cfg.userModules;
nixosConfigurations.Nixtre = nixpkgs.lib.nixosSystem { }
inherit system; ]
specialArgs = { ;
inherit inputs; }
inherit pkgs-unstable; ) systems;
};
modules = [
./hosts/spectre-x360-2018
stylix.nixosModules.stylix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = {
inherit inputs;
inherit pkgs-unstable;
};
home-manager.users.remy.imports = [
./users/remy_spectre
inputs.nix-flatpak.homeManagerModules.nix-flatpak
];
}
];
};
nixosConfigurations.nichts = nixpkgs.lib.nixosSystem { # ## Useful nix build tools
inherit system; # # iso builder TODO
specialArgs = { # nixosConfigurations.bcachefs-iso = nixpkgs.lib.nixosSystem {
inherit inputs; # system = "x86_64-linux";
inherit pkgs-unstable; # modules = [
}; # "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal-new-kernel-no-zfs.nix"
# ({ lib, pkgs, ... }: {
modules = [ # boot.supportedFilesystems = [ "bcachefs" ];
./hosts/mobile-usb # boot.kernelPackages = lib.mkOverride 0 pkgs.linuxPackages_latest;
stylix.nixosModules.stylix # })
home-manager.nixosModules.home-manager # ];
{ # };
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = {
inherit inputs;
inherit pkgs-unstable;
};
home-manager.users.remy.imports = [
./users/remy_usb
inputs.nix-flatpak.homeManagerModules.nix-flatpak
];
}
];
};
nixosConfigurations.nyx = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {
inherit inputs;
inherit pkgs-unstable;
};
modules = [
{
nixpkgs.overlays = [
inputs.nix-vscode-extensions.overlays.default
];
}
./hosts/yoga-7-pro
sops-nix.nixosModules.sops
stylix.nixosModules.stylix
home-manager.nixosModules.home-manager
{
home-manager.backupFileExtension = ".backup";
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = {
inherit inputs;
inherit pkgs-unstable;
};
home-manager.users.remy.imports = [
./users/remy_yoga
inputs.nix-flatpak.homeManagerModules.nix-flatpak
inputs.dankMaterialShell.homeModules.dankMaterialShell.default
];
}
];
};
# nixosConfigurations.raspberry-pi = nixpkgs.lib.nixosSystem {
# system = "aarch64-linux";
# modules = [
# ./hosts/raspberry-pi/configuration.nix
# ];
# };
## Home Manager configurations here?
## Useful nix build tools
# iso builder TODO
nixosConfigurations.bcachefs-iso = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
"${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal-new-kernel-no-zfs.nix"
({ lib, pkgs, ... }: {
boot.supportedFilesystems = [ "bcachefs" ];
boot.kernelPackages = lib.mkOverride 0 pkgs.linuxPackages_latest;
})
];
};
}; };
} }

View File

@@ -79,6 +79,8 @@
}; };
}; };
services.upower.enable = true;
services.irqbalance = { services.irqbalance = {
enable = true; enable = true;