dotfiles-nix/flake.nix
2023-10-18 13:28:39 +02:00

57 lines
1.8 KiB
Nix

{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
maxfetch.url = "github:jobcmax/maxfetch";
orcaslicer.url = "github:ovlach/nix-orca-slicer";
hyprland.url = "github:hyprwm/Hyprland";
sops-nix = {
url = "github:mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
inputs.nixpkgs-stable.follows = "";
};
nur.url = "github:nix-community/NUR";
};
outputs = { self, nixpkgs, home-manager, ...}@inputs:
let
system = "x86_64-linux";
username = "nicolaivds";
home_profile = "nicolaivds";
pkgs = nixpkgs.legacyPackages.${system};
# The path to this very repo
flake_path = "~/.dotfiles";
in
{
homeConfigurations = {
"${username}" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
extraSpecialArgs = { inherit username flake_path inputs; };
modules = [
./nix/users/${home_profile}
# Pin registry to flake
{ nix.registry.nixpkgs.flake = nixpkgs; }
# Pin channel to flake
# { home.sessionVariables.NIX_PATH = "nixpkgs=nixpkgs=flake:nixpkgs$\{NIX_PATH:+:$NIX_PATH}"; }
{ home.sessionVariables.NIX_PATH = "nixpkgs=flake:nixpkgs$\{NIX_PATH:+:$NIX_PATH}"; }
];
};
};
nixosConfigurations = {
desktop = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = { inherit username flake_path inputs; };
modules = [
./nix/systems/main/desktop
{ nix.registry.nixpkgs.flake = nixpkgs; }
# { nix.nixPath = [ "nixpkgs=configflake:nixpkgs" ]; }
{ nix.nixPath = [ "nixpkgs=flake:nixpkgs" ]; }
];
};
};
};
}