mirror of
https://gitlab.blahai.gay/elissa/haipkgs.git
synced 2025-04-08 02:29:31 +00:00
52 lines
1.4 KiB
Nix
52 lines
1.4 KiB
Nix
{
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
systems.url = "github:nix-systems/default";
|
|
|
|
hjem = {
|
|
url = "github:feel-co/hjem";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
systems,
|
|
hjem,
|
|
...
|
|
}: let
|
|
forAllSystems = function:
|
|
nixpkgs.lib.genAttrs (import systems) (system: function nixpkgs.legacyPackages.${system});
|
|
|
|
loadPackages = pkgs: let
|
|
packageNames = builtins.attrNames (builtins.readDir ./pkgs);
|
|
in
|
|
nixpkgs.lib.genAttrs packageNames (name: pkgs.callPackage (./pkgs + "/${name}") {});
|
|
|
|
loadModules = dir: let
|
|
moduleNames = builtins.attrNames (builtins.readDir dir);
|
|
in
|
|
nixpkgs.lib.genAttrs moduleNames (name: import (dir + "/${name}"));
|
|
|
|
loadOverlays = let
|
|
overlayNames = builtins.attrNames (builtins.readDir ./overlays);
|
|
in
|
|
nixpkgs.lib.genAttrs overlayNames (name: import (./overlays + "/${name}"));
|
|
in {
|
|
packages = forAllSystems loadPackages;
|
|
|
|
nixosModules = loadModules ./modules/nixos;
|
|
hjemModules = loadModules ./modules/hjem;
|
|
|
|
overlays = loadOverlays;
|
|
};
|
|
|
|
nixConfig = {
|
|
extra-substituters = ["https://blahai.cachix.org" "https://nix-community.cachix.org/"];
|
|
extra-trusted-public-keys = [
|
|
"blahai.cachix.org-1:7Pg+JDWpcIogeN3HesRnOb4dl6FSwl/ZHC+QUmb65So="
|
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
|
];
|
|
};
|
|
}
|