-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathproject.nix
More file actions
129 lines (114 loc) · 3.4 KB
/
project.nix
File metadata and controls
129 lines (114 loc) · 3.4 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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# SPDX-FileCopyrightText: 2025 FreshlyBakedCake
#
# SPDX-License-Identifier: MIT
{
config,
lib,
pins,
...
}:
{
includes = [
./homes
./lib
./modules
./packages
./systems
"${pins.nilla-nixos}/modules/nixos.nix" # We can't use config.inputs here without infinitely-recursing
];
config = {
name = "packetmix";
packages.packetmix-allNixOSSystems = {
systems = [ "x86_64-linux" ];
package =
{ stdenv }:
stdenv.mkDerivation {
name = "all-nixos-systems";
dontUnpack = true;
buildPhase = ''
mkdir -p $out
''
+ (builtins.concatStringsSep "\n" (
config.lib.attrs.mapToList (
name: value:
builtins.trace "Evaluating the system ${name}" ''ln -s "${value.result.config.system.build.toplevel}" "$out/${name}"''
) config.systems.nixos
));
};
};
packages.packetmix-allHomes = {
systems = [ "x86_64-linux" ];
package =
{ stdenv }:
stdenv.mkDerivation {
name = "all-homes";
dontUnpack = true;
buildPhase = ''
mkdir -p $out
''
+ (builtins.concatStringsSep "\n" (
config.lib.attrs.mapToList (
name: value:
builtins.trace "Evaluating the home ${name}" ''ln -s "${
value.result.${stdenv.hostPlatform.system}.activationPackage
}" "$out/${name}"''
) (config.lib.attrs.filter (_: value: value.result ? ${stdenv.hostPlatform.system}) config.homes)
));
};
};
packages.packetmix-helix = {
systems = [ "x86_64-linux" ];
package =
{ helix }:
helix.overrideAttrs (
{
patches ? [ ],
...
}:
{
doCheck = false;
patches = patches ++ [ ./patches/helix/3958-labels-for-config-menus.patch ];
}
);
};
shells.packetmix = {
systems = [ "x86_64-linux" ];
shell =
{
pkgs,
stdenv,
mkShell,
kdePackages,
reuse,
...
}:
mkShell {
QML_IMPORT_PATH =
lib.fp.pipe
[
(map (pkg: "${pkg}/lib/qt-6/qml"))
(builtins.concatStringsSep ":")
]
[
config.inputs.nixos-unstable.result.${stdenv.hostPlatform.system}.quickshell
kdePackages.qtdeclarative
];
packages = [
config.inputs.nilla-cli.result.packages.nilla-cli.result.${stdenv.hostPlatform.system}
config.inputs.nilla-home.result.packages.nilla-home.result.${stdenv.hostPlatform.system}
config.inputs.nilla-nixos.result.packages.nilla-nixos.result.${stdenv.hostPlatform.system}
config.inputs.nixos-unstable.result.${stdenv.hostPlatform.system}.quickshell
config.inputs.nixpkgs.result.${stdenv.hostPlatform.system}.deadnix
config.packages.packetmix-nilla-fmt.result.${stdenv.hostPlatform.system}
config.packages.packetmix-treefmt.result.${stdenv.hostPlatform.system}
(config.inputs.npins.result {
inherit pkgs;
inherit (stdenv.hostPlatform) system;
})
kdePackages.qtdeclarative
reuse
];
};
};
};
}