nixos-dotfiles/flake.nix
Alex Stan f9c94b283f storing my user in my host config is just dumb
Signed-off-by: Alex Stan <stan.alexandru@ichb.ro>
2023-04-30 15:05:48 +03:00

41 lines
1.6 KiB
Nix

{
description = "My NixOS system configuration";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nix-software-center.url = "github:vlinkz/nix-software-center";
nix-doom-emacs.url = "github:nix-community/nix-doom-emacs";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, home-manager, ... }@inputs: {
nixosConfigurations.ultrapc = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
./ultrapc/configuration.nix
{
environment.etc."nix/inputs/nixpkgs".source = nixpkgs.outPath;
nix.nixPath = [ "nixpkgs=/etc/nix/inputs/nixpkgs" ];
}
];
};
defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux;
homeConfigurations = {
ultra = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux;
extraSpecialArgs = { inherit inputs; };
modules = [
./users/ultra/home.nix
(args: { # https://ayats.org/blog/channels-to-flakes
xdg.configFile."nix/inputs/nixpkgs".source = nixpkgs.outPath;
home.sessionVariables.NIX_PATH = "nixpkgs=${args.config.xdg.configHome}/nix/inputs/nixpkgs$\{NIX_PATH:+:$NIX_PATH}";
})
];
};
};
};
}