dotfiles/home/flake.nix

66 lines
2.1 KiB
Nix

{
description = "Home Manager configuration of chayleaf";
inputs = {
#nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
#instead take it from system config
nur.url = "github:nix-community/NUR";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-gaming = {
url = "github:fufexan/nix-gaming";
inputs.nixpkgs.follows = "nixpkgs";
};
notlua = {
url = "github:chayleaf/notlua/469652092f4f2e951b0db29027b05346b32d8122";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, home-manager, nur, nix-gaming, notlua }:
let
# IRL-related private config
priv = if builtins.pathExists ./private.nix then (import ./private.nix) else {};
getPriv = (hostname: with builtins; if hasAttr hostname priv then (getAttr hostname priv) else {});
in {
homeConfigurations = {
"user@nixmsi" = let system = "x86_64-linux"; in home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs {
inherit system;
binaryCachePublicKeys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
# "nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA="
];
binaryCaches = [
"https://cache.nixos.org"
# "https://nixpkgs-wayland.cachix.org"
];
overlays = [
(self: super: import ./pkgs {
# can't use callPackage here, idk why
pkgs = super;
lib = super.lib;
nur = import nur {
pkgs = super;
nurpkgs = super;
};
})
nix-gaming.overlays.default
];
};
extraSpecialArgs = {
notlua = notlua.lib.${system};
# pkgs-wayland = nixpkgs-wayland.packages.${system};
};
modules = [
nur.nixosModules.nur
./hosts/nixmsi.nix
(getPriv "nixmsi")
];
};
};
};
}