nixos-configs/flake.nix

55 lines
1.5 KiB
Nix
Raw Normal View History

2021-07-02 01:47:30 +02:00
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-22.11";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
2021-07-02 01:47:30 +02:00
home-manager.url = "github:nix-community/home-manager";
2023-03-17 13:02:05 +01:00
nix-doom-emacs.url = "github:nix-community/nix-doom-emacs";
2023-03-27 09:28:51 +02:00
gruvbox-gtk-theme = {
url = "github:Fausto-Korpsvart/Gruvbox-GTK-Theme";
flake = false;
};
gruvbox-kvantum-theme = {
url = "github:sachnr/gruvbox-kvantum-themes";
flake = false;
};
2021-07-02 01:47:30 +02:00
};
2023-03-27 09:28:51 +02:00
outputs = inputs@{ self, home-manager, nixpkgs, nixpkgs-unstable, ... }:
let
2023-03-20 22:35:11 +01:00
inherit (lib.my) mapModules mapModulesRec mapHosts;
2023-03-20 22:35:11 +01:00
system = "x86_64-linux";
2023-03-27 09:28:51 +02:00
mkPkgs = pkgs: extraOverlays:
import pkgs {
inherit system;
config.allowUnfreePredicate = pkg:
builtins.elem (pkgs.lib.getName pkg) [
"corefonts"
"steam"
"steam-original"
"steam-run"
];
overlays = extraOverlays ++ (pkgs.lib.attrValues self.overlays);
};
2023-03-20 22:35:11 +01:00
pkgs = mkPkgs nixpkgs [ self.overlay ];
pkgs-unstable = mkPkgs nixpkgs-unstable [ ];
2022-09-05 01:37:52 +02:00
2023-03-27 09:28:51 +02:00
lib = nixpkgs.lib.extend (self: super: {
my = import ./lib {
inherit pkgs inputs;
lib = self;
};
});
in {
2023-03-20 22:35:11 +01:00
lib = lib.my;
2022-09-05 01:37:52 +02:00
2023-03-27 09:28:51 +02:00
overlay = final: prev: { unstable = pkgs-unstable; };
2022-09-05 01:37:52 +02:00
2023-03-20 22:35:11 +01:00
overlays = { my = (import ./overlay.nix); };
2022-10-30 00:16:27 +02:00
2023-03-20 22:35:11 +01:00
nixosConfigurations = mapHosts ./hosts { };
2022-09-05 01:37:52 +02:00
};
2021-07-02 01:47:30 +02:00
}