-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinputs.nix
More file actions
68 lines (59 loc) · 2 KB
/
Copy pathinputs.nix
File metadata and controls
68 lines (59 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
{ config, lib }:
let
pins = import ./npins;
flake-compat = config.inputs.flake-compat.result;
# TODO might be using this wrong https://github.com/nilla-nix/flake-compat
# nixpkgs-flake = flake-compat.load { src = config.inputs.nixpkgs.src; };
nixpkgs-flake = flake-compat.load { src = config.inputs.nixpkgs.src; };
# don't think I need to do this; config.inputs.hyprland.result should probably work the same
# hyprland-flake = flake-compat.load { src = config.inputs.hyprland.src; };
loaders = {
comma = "flake";
home-manager = "flake";
nix-index-database = "flake";
# hyprland = "flake";
hy3 = "flake";
catppuccin-nix = "flake";
sops-nix = "flake";
hardware = "raw";
impermanence = "raw";
disko = "raw";
};
# Per-input settings
settings = {
nixpkgs = {
configuration.allowUnfree = true;
overlays = [
config.overlays.default
config.inputs.nur.result.overlays.default
];
};
home-manager.inputs.nixpkgs = nixpkgs-flake; # default input already is nixpkgs/nixos-unstable
comma.inputs.nixpkgs = nixpkgs-flake;
hyprpanel.inputs.nixpkgs = nixpkgs-flake;
nixos-generators.inputs.nixpkgs = nixpkgs-flake;
# # # TODO hy3
# # # hy3 = {
# # # url = "github:outfoxxed/hy3?ref=hl{version}"; # where {version} is the hyprland release version
# # # # or "github:outfoxxed/hy3" to follow the development branch.
# # # # (you may encounter issues if you dont do the same for hyprland)
# # # inputs.hyprland.follows = "hyprland";
# # # };
# hy3.inputs.hyprland = hyprland-flake;
};
in
{
config = {
############
## Inputs ##
############
# Generate inputs from npins
inputs = builtins.mapAttrs
(name: pin: {
src = pin;
loader = loaders.${name} or config.lib.modules.never;
settings = settings.${name} or config.lib.modules.never;
})
(config.lib.attrs.filter (name: value: name != "__functor") pins);
};
}