nix/nixos/flake.nix

78 lines
1.8 KiB
Nix

{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
stylix = {
url = "github:danth/stylix";
inputs.nixpkgs.follows = "nixpkgs";
};
nixvim = {
url = "path:nixvim";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
river-shifttags = {
url = "path:river-shifttags";
inputs.nixpkgs.follows = "nixpkgs";
};
breezex-cursor = {
url = "path:breezex-cursor";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-06cb-009a-fingerprint-sensor = {
url = "github:ahbnr/nixos-06cb-009a-fingerprint-sensor";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = {
nixpkgs,
home-manager,
stylix,
nixvim,
river-shifttags,
breezex-cursor,
nixos-06cb-009a-fingerprint-sensor,
... }:
let
system = "x86_64-linux";
in
{
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./configuration.nix
home-manager.nixosModules.home-manager {
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.khais = ./home.nix;
extraSpecialArgs = {
nixvim = nixvim.packages.${system}.default;
river-shifttags = river-shifttags.packages.${system}.default;
breezex-cursor = breezex-cursor.packages.${system}.default;
};
};
}
stylix.nixosModules.stylix
./stylix.nix
nixos-06cb-009a-fingerprint-sensor.nixosModules.open-fprintd
nixos-06cb-009a-fingerprint-sensor.nixosModules.python-validity
];
};
};
}