Files
laptop-config/flake.nix
T
2025-08-22 23:24:59 -05:00

58 lines
1.7 KiB
Nix
Executable File

{
description = "System Wide Config Controller";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
nixvim = {
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager/release-25.05";
inputs.nixpkgs.follows = "nixpkgs";
};
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
impermanence.url = "github:nix-community/impermanence";
# implement at some point (So I can push repo public)
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
firefox-addons = {
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, nixvim, home-manager, disko, impermanence, sops-nix, firefox-addons }@inputs: {
nixosConfigurations.default = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
./hardware-configuration.nix
./disk-config.nix
disko.nixosModules.disko
impermanence.nixosModules.impermanence
sops-nix.nixosModules.sops
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs; };
home-manager.users.roy = { ... }: {
imports = [
./home.nix
nixvim.homeManagerModules.nixvim
impermanence.homeManagerModules.impermanence
sops-nix.homeManagerModules.sops
];
};
}
];
};
};
}