Co-Authored-By: Skyler Grey sky@a.starrysky.fyi
-1
packetmix/homes/catppuccin/catppuccin.nix
-1
packetmix/homes/catppuccin/catppuccin.nix
···
6
6
{
7
7
imports = [
8
8
project.inputs.catppuccin.result.homeModules.catppuccin
9
-
"${project.inputs.home-manager-unstable.src}/modules/programs/vivid.nix" # Needed for latest catppuccin...
10
9
];
11
10
config.catppuccin.enable = true;
12
11
config.catppuccin.delta.enable = lib.mkForce false;
+8
packetmix/homes/coded/games.nix
+8
packetmix/homes/coded/games.nix
+4
-1
packetmix/homes/niri/niri.nix
+4
-1
packetmix/homes/niri/niri.nix
···
7
7
config,
8
8
pkgs,
9
9
lib,
10
+
system,
10
11
...
11
12
}:
12
13
{
···
63
64
settings = {
64
65
xwayland-satellite = {
65
66
enable = true;
66
-
path = "${pkgs.xwayland-satellite}/bin/xwayland-satellite";
67
+
path = "${
68
+
project.inputs.nixos-unstable.result.${system}.xwayland-satellite
69
+
}/bin/xwayland-satellite";
67
70
};
68
71
environment.NIXOS_OZONE_WL = "1";
69
72
-2
packetmix/homes/niri/quickshell.nix
-2
packetmix/homes/niri/quickshell.nix
+3
-3
packetmix/modules/nilla-home/nixos.nix
+3
-3
packetmix/modules/nilla-home/nixos.nix
···
117
117
homeName: home:
118
118
let
119
119
homeHasHomeManager = !(builtins.isNull home.home-manager);
120
-
homeIsValidForSystem = home ? result.${value.pkgs.system};
120
+
homeIsValidForSystem = home ? result.${value.pkgs.stdenv.hostPlatform.system};
121
121
in
122
122
[
123
123
{
···
126
126
}
127
127
{
128
128
assertion = !homeHasHomeManager || !hasNixpkgs || homeIsValidForSystem;
129
-
message = "You've asked for the home \"${homeName}\" to be activated in the NixOS system \"${name}\", but it isn't valid for \"${value.pkgs.system}\" systems.";
129
+
message = "You've asked for the home \"${homeName}\" to be activated in the NixOS system \"${name}\", but it isn't valid for \"${value.pkgs.stdenv.hostPlatform.system}\" systems.";
130
130
}
131
131
]
132
132
) value.homes)
···
136
136
homeName: home:
137
137
let
138
138
homeHasHomeManager = !(builtins.isNull home.home-manager);
139
-
homeIsValidForSystem = home ? result.${value.pkgs.system};
139
+
homeIsValidForSystem = home ? result.${value.pkgs.stdenv.hostPlatform.system};
140
140
in
141
141
if homeHasHomeManager && hasNixpkgs && homeIsValidForSystem then
142
142
let
+19
-30
packetmix/nilla.nix
+19
-30
packetmix/nilla.nix
···
46
46
systems = [ "x86_64-linux" ];
47
47
48
48
package =
49
-
{ system, stdenv }:
49
+
{ stdenv }:
50
50
stdenv.mkDerivation {
51
51
name = "all-homes";
52
52
···
57
57
''
58
58
+ (builtins.concatStringsSep "\n" (
59
59
config.lib.attrs.mapToList (
60
-
name: value: ''ln -s "${value.result.${system}.activationPackage}" "$out/${name}"''
61
-
) (config.lib.attrs.filter (_: value: value.result ? ${system}) config.homes)
60
+
name: value:
61
+
''ln -s "${value.result.${stdenv.hostPlatform.system}.activationPackage}" "$out/${name}"''
62
+
) (config.lib.attrs.filter (_: value: value.result ? ${stdenv.hostPlatform.system}) config.homes)
62
63
));
63
64
};
64
65
};
···
80
81
);
81
82
};
82
83
83
-
packages.reuse = {
84
-
systems = [ "x86_64-linux" ];
85
-
86
-
package =
87
-
{ reuse }:
88
-
reuse.overrideAttrs (
89
-
{
90
-
patches ? [ ],
91
-
...
92
-
}:
93
-
{
94
-
patches = patches ++ [ ./patches/reuse/1191-correct-invocation-for-jujutsu-file-listing.patch ];
95
-
}
96
-
);
97
-
};
98
-
99
84
# With a package set defined, we can create a shell.
100
85
shells.default = {
101
86
# Declare what systems the shell can be used on.
···
105
90
shell =
106
91
{
107
92
pkgs,
108
-
system,
93
+
stdenv,
109
94
mkShell,
110
95
kdePackages,
96
+
reuse,
111
97
...
112
98
}:
113
99
mkShell {
···
118
104
(builtins.concatStringsSep ":")
119
105
]
120
106
[
121
-
config.inputs.nixos-unstable.result.${system}.quickshell
107
+
config.inputs.nixos-unstable.result.${stdenv.hostPlatform.system}.quickshell
122
108
kdePackages.qtdeclarative
123
109
];
124
110
125
111
packages = [
126
-
config.inputs.nilla-cli.result.packages.nilla-cli.result.${system}
127
-
config.inputs.nilla-home.result.packages.nilla-home.result.${system}
128
-
config.inputs.nilla-nixos.result.packages.nilla-nixos.result.${system}
129
-
config.inputs.nixos-unstable.result.${system}.quickshell
130
-
config.inputs.nixpkgs.result.${system}.deadnix
131
-
config.packages.nilla-fmt.result.${system}
132
-
config.packages.treefmt.result.${system}
133
-
(config.inputs.npins.result { inherit pkgs system; })
112
+
config.inputs.nilla-cli.result.packages.nilla-cli.result.${stdenv.hostPlatform.system}
113
+
config.inputs.nilla-home.result.packages.nilla-home.result.${stdenv.hostPlatform.system}
114
+
config.inputs.nilla-nixos.result.packages.nilla-nixos.result.${stdenv.hostPlatform.system}
115
+
config.inputs.nixos-unstable.result.${stdenv.hostPlatform.system}.quickshell
116
+
config.inputs.nixpkgs.result.${stdenv.hostPlatform.system}.deadnix
117
+
config.packages.nilla-fmt.result.${stdenv.hostPlatform.system}
118
+
config.packages.treefmt.result.${stdenv.hostPlatform.system}
119
+
(config.inputs.npins.result {
120
+
inherit pkgs;
121
+
inherit (stdenv.hostPlatform) system;
122
+
})
134
123
kdePackages.qtdeclarative
135
-
config.packages.reuse.result.${system}
124
+
reuse
136
125
];
137
126
};
138
127
};
+121
-20
packetmix/npins/default.nix
+121
-20
packetmix/npins/default.nix
···
9
9
*/
10
10
# Generated by npins. Do not modify; will be overwritten regularly
11
11
let
12
-
data = builtins.fromJSON (builtins.readFile ./sources.json);
13
-
version = data.version;
12
+
# Backwards-compatibly make something that previously didn't take any arguments take some
13
+
# The function must return an attrset, and will unfortunately be eagerly evaluated
14
+
# Same thing, but it catches eval errors on the default argument so that one may still call it with other arguments
15
+
mkFunctor =
16
+
fn:
17
+
let
18
+
e = builtins.tryEval (fn { });
19
+
in
20
+
(if e.success then e.value else { error = fn { }; }) // { __functor = _self: fn; };
14
21
15
22
# https://github.com/NixOS/nixpkgs/blob/0258808f5744ca980b9a1f24fe0b1e6f0fecee9c/lib/lists.nix#L295
16
23
range =
···
21
28
22
29
# https://github.com/NixOS/nixpkgs/blob/0258808f5744ca980b9a1f24fe0b1e6f0fecee9c/lib/strings.nix#L269
23
30
stringAsChars = f: s: concatStrings (map f (stringToCharacters s));
24
-
concatMapStrings = f: list: concatStrings (map f list);
25
31
concatStrings = builtins.concatStringsSep "";
26
32
27
33
# If the environment variable NPINS_OVERRIDE_${name} is set, then use
···
48
54
49
55
mkSource =
50
56
name: spec:
57
+
{
58
+
pkgs ? null,
59
+
}:
51
60
assert spec ? type;
52
61
let
62
+
# Unify across builtin and pkgs fetchers.
63
+
# `fetchGit` requires a wrapper because of slight API differences.
64
+
fetchers =
65
+
if pkgs == null then
66
+
{
67
+
inherit (builtins) fetchTarball fetchurl;
68
+
# For some fucking reason, fetchGit has a different signature than the other builtin fetchers …
69
+
fetchGit = args: (builtins.fetchGit args).outPath;
70
+
}
71
+
else
72
+
{
73
+
fetchTarball =
74
+
{
75
+
url,
76
+
sha256,
77
+
}:
78
+
pkgs.fetchzip {
79
+
inherit url sha256;
80
+
extension = "tar";
81
+
};
82
+
inherit (pkgs) fetchurl;
83
+
fetchGit =
84
+
{
85
+
url,
86
+
submodules,
87
+
rev,
88
+
name,
89
+
narHash,
90
+
}:
91
+
pkgs.fetchgit {
92
+
inherit url rev name;
93
+
fetchSubmodules = submodules;
94
+
hash = narHash;
95
+
};
96
+
};
97
+
98
+
# Dispatch to the correct code path based on the type
53
99
path =
54
100
if spec.type == "Git" then
55
-
mkGitSource spec
101
+
mkGitSource fetchers spec
56
102
else if spec.type == "GitRelease" then
57
-
mkGitSource spec
103
+
mkGitSource fetchers spec
58
104
else if spec.type == "PyPi" then
59
-
mkPyPiSource spec
105
+
mkPyPiSource fetchers spec
60
106
else if spec.type == "Channel" then
61
-
mkChannelSource spec
107
+
mkChannelSource fetchers spec
62
108
else if spec.type == "Tarball" then
63
-
mkTarballSource spec
109
+
mkTarballSource fetchers spec
110
+
else if spec.type == "Container" then
111
+
mkContainerSource pkgs spec
64
112
else
65
113
builtins.throw "Unknown source type ${spec.type}";
66
114
in
67
115
spec // { outPath = mayOverride name path; };
68
116
69
117
mkGitSource =
118
+
{
119
+
fetchTarball,
120
+
fetchGit,
121
+
...
122
+
}:
70
123
{
71
124
repository,
72
125
revision,
73
126
url ? null,
74
127
submodules,
75
128
hash,
76
-
branch ? null,
77
129
...
78
130
}:
79
131
assert repository ? type;
80
132
# At the moment, either it is a plain git repository (which has an url), or it is a GitHub/GitLab repository
81
133
# In the latter case, there we will always be an url to the tarball
82
134
if url != null && !submodules then
83
-
builtins.fetchTarball {
135
+
fetchTarball {
84
136
inherit url;
85
137
sha256 = hash;
86
138
}
···
107
159
"${if matched == null then "source" else builtins.head matched}${appendShort}";
108
160
name = urlToName url revision;
109
161
in
110
-
builtins.fetchGit {
162
+
fetchGit {
111
163
rev = revision;
112
164
narHash = hash;
113
165
···
115
167
};
116
168
117
169
mkPyPiSource =
118
-
{ url, hash, ... }:
119
-
builtins.fetchurl {
170
+
{ fetchurl, ... }:
171
+
{
172
+
url,
173
+
hash,
174
+
...
175
+
}:
176
+
fetchurl {
120
177
inherit url;
121
178
sha256 = hash;
122
179
};
123
180
124
181
mkChannelSource =
125
-
{ url, hash, ... }:
126
-
builtins.fetchTarball {
182
+
{ fetchTarball, ... }:
183
+
{
184
+
url,
185
+
hash,
186
+
...
187
+
}:
188
+
fetchTarball {
127
189
inherit url;
128
190
sha256 = hash;
129
191
};
130
192
131
193
mkTarballSource =
194
+
{ fetchTarball, ... }:
132
195
{
133
196
url,
134
197
locked_url ? url,
135
198
hash,
136
199
...
137
200
}:
138
-
builtins.fetchTarball {
201
+
fetchTarball {
139
202
url = locked_url;
140
203
sha256 = hash;
141
204
};
205
+
206
+
mkContainerSource =
207
+
pkgs:
208
+
{
209
+
image_name,
210
+
image_tag,
211
+
image_digest,
212
+
...
213
+
}:
214
+
if pkgs == null then
215
+
builtins.throw "container sources require passing in a Nixpkgs value: https://github.com/andir/npins/blob/master/README.md#using-the-nixpkgs-fetchers"
216
+
else
217
+
pkgs.dockerTools.pullImage {
218
+
imageName = image_name;
219
+
imageDigest = image_digest;
220
+
finalImageTag = image_tag;
221
+
};
142
222
in
143
-
if version == 6 then
144
-
builtins.mapAttrs mkSource data.pins
145
-
else
146
-
throw "Unsupported format version ${toString version} in sources.json. Try running `npins upgrade`"
223
+
mkFunctor (
224
+
{
225
+
input ? ./sources.json,
226
+
}:
227
+
let
228
+
data =
229
+
if builtins.isPath input then
230
+
# while `readFile` will throw an error anyways if the path doesn't exist,
231
+
# we still need to check beforehand because *our* error can be caught but not the one from the builtin
232
+
# *piegames sighs*
233
+
if builtins.pathExists input then
234
+
builtins.fromJSON (builtins.readFile input)
235
+
else
236
+
throw "Input path ${toString input} does not exist"
237
+
else if builtins.isAttrs input then
238
+
input
239
+
else
240
+
throw "Unsupported input type ${builtins.typeOf input}, must be a path or an attrset";
241
+
version = data.version;
242
+
in
243
+
if version == 7 then
244
+
builtins.mapAttrs (name: spec: mkFunctor (mkSource name spec)) data.pins
245
+
else
246
+
throw "Unsupported format version ${toString version} in sources.json. Try running `npins upgrade`"
247
+
)
+75
-62
packetmix/npins/sources.json
+75
-62
packetmix/npins/sources.json
···
61
61
},
62
62
"branch": "main",
63
63
"submodules": false,
64
-
"revision": "c518cf4f62659d9cf585da6f29b67f8a77d0fbc0",
65
-
"url": "https://github.com/bluesky-social/atproto/archive/c518cf4f62659d9cf585da6f29b67f8a77d0fbc0.tar.gz",
66
-
"hash": "sha256-fW9BKtG9vptNYzCh/AWf8m9QoPEGX6najSFlAekElHA="
64
+
"revision": "3628cebfbb04ba49f326bbf411a2d15de2900302",
65
+
"url": "https://github.com/bluesky-social/atproto/archive/3628cebfbb04ba49f326bbf411a2d15de2900302.tar.gz",
66
+
"hash": "sha256-5udskm8sOQ73VukP6bweE0rNxW8YG9so8Gk93x9Dzzs="
67
67
},
68
68
"catppuccin": {
69
69
"type": "Git",
···
88
88
},
89
89
"branch": "master",
90
90
"submodules": false,
91
-
"revision": "8395ec4576cf54411d974675d26f64208acdcee0",
92
-
"url": "https://gitlab.collabora.com/api/v4/projects/collabora%2Fgtimelog/repository/archive.tar.gz?sha=8395ec4576cf54411d974675d26f64208acdcee0",
93
-
"hash": "sha256-M9pCF+XVf5ylxgq0BSUn5Vkg1HZ6i88LDiUDM4Y1Ghs="
91
+
"revision": "1be9d9f7e844831f221b67a46a55fc47a164e416",
92
+
"url": "https://gitlab.collabora.com/api/v4/projects/collabora%2Fgtimelog/repository/archive.tar.gz?sha=1be9d9f7e844831f221b67a46a55fc47a164e416",
93
+
"hash": "sha256-v5WEa7M0mmrxdU1l7nIqyrMaVy2jiJNnXHLiHnw2xIc="
94
94
},
95
95
"copyparty": {
96
96
"type": "GitRelease",
···
103
103
"version_upper_bound": null,
104
104
"release_prefix": null,
105
105
"submodules": false,
106
-
"version": "v1.19.17",
107
-
"revision": "e2a15a3a922514efe97afc4afa043cd7c4619ad1",
108
-
"url": "https://api.github.com/repos/9001/copyparty/tarball/refs/tags/v1.19.17",
109
-
"hash": "sha256-Rb6Lq2CW+LrIH8M4sCPA8k12GX7xNUWK4I+xeByLl+M="
106
+
"version": "v1.19.20",
107
+
"revision": "450cd86dc1e98b98ab131fc9417c83289165a507",
108
+
"url": "https://api.github.com/repos/9001/copyparty/tarball/refs/tags/v1.19.20",
109
+
"hash": "sha256-/Wm8hZvdGfYWdTOF+dgTPX8DGuSKLhGw4qC4crf1dAo="
110
110
},
111
111
"headscale": {
112
112
"type": "Git",
···
117
117
},
118
118
"branch": "main",
119
119
"submodules": false,
120
-
"revision": "8010cc574ea309728f5c7d3fd1cb08252f0111f5",
121
-
"url": "https://github.com/juanfont/headscale/archive/8010cc574ea309728f5c7d3fd1cb08252f0111f5.tar.gz",
122
-
"hash": "sha256-lQhaw7SVV+qBEZnH8u+gsEwqIByFlZQyjDJ3RbW7uzM="
120
+
"revision": "21af106f68fa38f37d80c9ac91a336a4f53bc074",
121
+
"url": "https://github.com/juanfont/headscale/archive/21af106f68fa38f37d80c9ac91a336a4f53bc074.tar.gz",
122
+
"hash": "sha256-EGLIiL/80bf6e5P5oDcG7zw7fMpOK5jIALd8rmu6Jv8="
123
123
},
124
124
"home-manager": {
125
125
"type": "Git",
···
128
128
"owner": "nix-community",
129
129
"repo": "home-manager"
130
130
},
131
-
"branch": "release-25.05",
131
+
"branch": "release-25.11",
132
132
"submodules": false,
133
-
"revision": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
134
-
"url": "https://github.com/nix-community/home-manager/archive/3b955f5f0a942f9f60cdc9cacb7844335d0f21c3.tar.gz",
135
-
"hash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA="
133
+
"revision": "d3135ab747fd9dac250ffb90b4a7e80634eacbe9",
134
+
"url": "https://github.com/nix-community/home-manager/archive/d3135ab747fd9dac250ffb90b4a7e80634eacbe9.tar.gz",
135
+
"hash": "sha256-/r9/1KamvbHJx6I40H4HsSXnEcBAkj46ZwibhBx9kg0="
136
136
},
137
137
"home-manager-unstable": {
138
138
"type": "Git",
···
143
143
},
144
144
"branch": "master",
145
145
"submodules": false,
146
-
"revision": "189c21cf879669008ccf06e78a553f17e88d8ef0",
147
-
"url": "https://github.com/nix-community/home-manager/archive/189c21cf879669008ccf06e78a553f17e88d8ef0.tar.gz",
148
-
"hash": "sha256-nZh6uvc71nVNaf/y+wesnjwsmJ6IZZUnP2EzpZe48To="
146
+
"revision": "827f2a23373a774a8805f84ca5344654c31f354b",
147
+
"url": "https://github.com/nix-community/home-manager/archive/827f2a23373a774a8805f84ca5344654c31f354b.tar.gz",
148
+
"hash": "sha256-RYHN8O/Aja59XDji6WSJZPkJpYVUfpSkyH+PEupBJqM="
149
149
},
150
150
"impermanence": {
151
151
"type": "Git",
···
171
171
"version_upper_bound": null,
172
172
"release_prefix": null,
173
173
"submodules": false,
174
-
"version": "v0.4.2",
175
-
"revision": "f0212638a2ec787a7841882f4477d40ae24f0a5d",
176
-
"url": "https://api.github.com/repos/nix-community/lanzaboote/tarball/refs/tags/v0.4.2",
177
-
"hash": "sha256-AEEDktApTEZ5PZXNDkry2YV2k6t0dTgLPEmAZbnigXU="
174
+
"version": "v0.4.3",
175
+
"revision": "65a4aa3d4dccf50f22c0190c7ee660de51c586f2",
176
+
"url": "https://api.github.com/repos/nix-community/lanzaboote/tarball/refs/tags/v0.4.3",
177
+
"hash": "sha256-If6vQ+KvtKs3ARBO9G3l+4wFSCYtRBrwX1z+I+B61wQ="
178
178
},
179
179
"lix": {
180
180
"type": "Git",
···
186
186
},
187
187
"branch": "main",
188
188
"submodules": false,
189
-
"revision": "2d2cd7ac03311bddb9645a7ab82c7e78edccbaa0",
190
-
"url": "https://git.lix.systems/lix-project/lix/archive/2d2cd7ac03311bddb9645a7ab82c7e78edccbaa0.tar.gz",
191
-
"hash": "sha256-jUn34QOaXqguaH+WwB2xWRHlmelvzJfFuEcQrC1cwK0="
189
+
"revision": "2fa40c9de49e47c1f59dd32bf99227884bad3a2d",
190
+
"url": "https://git.lix.systems/lix-project/lix/archive/2fa40c9de49e47c1f59dd32bf99227884bad3a2d.tar.gz",
191
+
"hash": "sha256-2SAAMUhS1rH2J0elOJZLAbU6KjQ1r6vEWrRFeIaVDzM="
192
192
},
193
193
"lix-module": {
194
194
"type": "Git",
···
200
200
},
201
201
"branch": "main",
202
202
"submodules": false,
203
-
"revision": "7c31a18259b8358ac196cf803a26967c0fa1d3e4",
204
-
"url": "https://git.lix.systems/lix-project/nixos-module/archive/7c31a18259b8358ac196cf803a26967c0fa1d3e4.tar.gz",
205
-
"hash": "sha256-n5dRAIC3/78drQtFxmQRrBLd6TKfotUnX7GWu0mAcSg="
203
+
"revision": "c47f62187601ea2991b79a9bacdbfdf76cd29fbe",
204
+
"url": "https://git.lix.systems/lix-project/nixos-module/archive/c47f62187601ea2991b79a9bacdbfdf76cd29fbe.tar.gz",
205
+
"hash": "sha256-FvuAw56NIVJpS3Kr8Wv9PpU4eehZMcdIVkxjStuYmqc="
206
206
},
207
207
"lua-multipart": {
208
208
"type": "GitRelease",
···
221
221
"hash": "sha256-CWQf76/SQEHYX0Xv1UudA4RJtZsMpLY+IU8vjlqnsQY="
222
222
},
223
223
"nilla": {
224
-
"type": "GitRelease",
224
+
"type": "Git",
225
225
"repository": {
226
226
"type": "GitHub",
227
227
"owner": "nilla-nix",
228
228
"repo": "nilla"
229
229
},
230
-
"pre_releases": true,
231
-
"version_upper_bound": null,
232
-
"release_prefix": null,
230
+
"branch": "private/coded/push-nzprlvpltxyl",
233
231
"submodules": false,
234
-
"version": "v0.0.0-alpha.14",
235
-
"revision": "2e98ae315a592ad6b6de44670514c048dcc88dc7",
236
-
"url": "https://api.github.com/repos/nilla-nix/nilla/tarball/refs/tags/v0.0.0-alpha.14",
237
-
"hash": "sha256-15lwhWcMonJH6UholMMHDc+p2BoSpGA4AYGrsXQA9Do="
232
+
"revision": "2f8b8c68efc4d81637be344d1b01462291a45e05",
233
+
"url": "https://github.com/nilla-nix/nilla/archive/2f8b8c68efc4d81637be344d1b01462291a45e05.tar.gz",
234
+
"hash": "sha256-VLlP6L8uvgEjb1ZZXdc4P3NAs5PcgIjpGm8LvaObrLY="
238
235
},
239
236
"nilla-cli": {
240
237
"type": "Git",
···
245
242
},
246
243
"branch": "main",
247
244
"submodules": false,
248
-
"revision": "6c6c42eaae3d095de6d1b47396c8b74ea57cb442",
249
-
"url": "https://github.com/nilla-nix/cli/archive/6c6c42eaae3d095de6d1b47396c8b74ea57cb442.tar.gz",
250
-
"hash": "sha256-0+d6LZfofBG+4OxnZcFaNg2ycgj1zcOJQUcPL1TEaSc="
245
+
"revision": "aa042dbd9152c99e5a8db51bcf87306737423b9e",
246
+
"url": "https://github.com/nilla-nix/cli/archive/aa042dbd9152c99e5a8db51bcf87306737423b9e.tar.gz",
247
+
"hash": "sha256-cPdYYXhCsDllVgq+gs5Wqhb41bFtKWHlkTvjOJv7its="
251
248
},
252
249
"nilla-home": {
253
250
"type": "GitRelease",
···
287
284
},
288
285
"branch": "main",
289
286
"submodules": false,
290
-
"revision": "f851a923137c0a54719412146fd63d24b3214e60",
291
-
"url": "https://github.com/sodiboo/niri-flake/archive/f851a923137c0a54719412146fd63d24b3214e60.tar.gz",
292
-
"hash": "sha256-E2ySTu/oK7cYBdAI3tlGP9zVjF4mZgWJ1OZInBCMb00="
287
+
"revision": "d06ab0308d797dc4b2f9025d5952cca90afd11a7",
288
+
"url": "https://github.com/sodiboo/niri-flake/archive/d06ab0308d797dc4b2f9025d5952cca90afd11a7.tar.gz",
289
+
"hash": "sha256-e1SOJYHe5IbKFIOpWswB/4nIog1Zx5iXA4YB49XTFxE="
293
290
},
294
291
"nix-index-database": {
295
292
"type": "Git",
···
300
297
},
301
298
"branch": "main",
302
299
"submodules": false,
303
-
"revision": "5024e1901239a76b7bf94a4cd27f3507e639d49e",
304
-
"url": "https://github.com/nix-community/nix-index-database/archive/5024e1901239a76b7bf94a4cd27f3507e639d49e.tar.gz",
305
-
"hash": "sha256-xmU8kAsRprJiTGBTaGrwmjBP3AMA9ltlrxHKFuy5JWc="
300
+
"revision": "15c5451c63f4c612874a43846bfe3fa828b03eee",
301
+
"url": "https://github.com/nix-community/nix-index-database/archive/15c5451c63f4c612874a43846bfe3fa828b03eee.tar.gz",
302
+
"hash": "sha256-C9F1C31ys0V7mnp4EcDy7L1cLZw/sCTEXqqTtGnvu08="
306
303
},
307
304
"nix-monitored": {
308
305
"type": "Git",
···
320
317
"nixos-unstable": {
321
318
"type": "Channel",
322
319
"name": "nixos-unstable",
323
-
"url": "https://releases.nixos.org/nixos/unstable/nixos-25.11pre880095.5e2a59a5b1a8/nixexprs.tar.xz",
324
-
"hash": "sha256-u0JUo46QSoXnjLaezAM75wRNuxVMVbm5OxHH122TeTY="
320
+
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre912002.1306659b587d/nixexprs.tar.xz",
321
+
"hash": "sha256-2BzIb1uB1hPl5fKGsMc+xj2DrSYmpRLcKdCq0UHdLwI="
325
322
},
326
323
"nixpkgs": {
327
324
"type": "Channel",
328
-
"name": "nixos-25.05",
329
-
"url": "https://releases.nixos.org/nixos/25.05/nixos-25.05.811497.33c6dca0c0cb/nixexprs.tar.xz",
330
-
"hash": "sha256-Z7kbKnORypPkJ74r6sHA2RQH1XATHLWiGgZVrli0scY="
325
+
"name": "nixos-25.11",
326
+
"url": "https://releases.nixos.org/nixos/25.11/nixos-25.11.1948.c6f52ebd45e5/nixexprs.tar.xz",
327
+
"hash": "sha256-Rgx3RPys4DTsfZPBbJa2QpJGbjnWVC7V2Rlviyp4qMI="
331
328
},
332
329
"npins": {
333
330
"type": "Git",
···
363
360
},
364
361
"branch": "master",
365
362
"submodules": false,
366
-
"revision": "7d1888abf8c5b82692476a9de2137a024d484771",
363
+
"revision": "3eb9cefd98d13ab9864abb2e394fc41f89ffd923",
367
364
"url": null,
368
-
"hash": "sha256-WD/UFUMcXMV/3tqD4h2tPaQH1KDlsJ00M+T4N/xkAGs="
365
+
"hash": "sha256-lRTZLRcqWpVf6CzJmvg+ggp/YWWasT4u2lFKIiIopoM="
369
366
},
370
367
"treefmt-nix": {
371
368
"type": "Git",
···
376
373
},
377
374
"branch": "main",
378
375
"submodules": false,
379
-
"revision": "f56b1934f5f8fcab8deb5d38d42fd692632b47c2",
380
-
"url": "https://github.com/numtide/treefmt-nix/archive/f56b1934f5f8fcab8deb5d38d42fd692632b47c2.tar.gz",
381
-
"hash": "sha256-ZRVs8UqikBa4Ki3X4KCnMBtBW0ux1DaT35tgsnB1jM4="
376
+
"revision": "5b4ee75aeefd1e2d5a1cc43cf6ba65eba75e83e4",
377
+
"url": "https://github.com/numtide/treefmt-nix/archive/5b4ee75aeefd1e2d5a1cc43cf6ba65eba75e83e4.tar.gz",
378
+
"hash": "sha256-AlEObg0syDl+Spi4LsZIBrjw+snSVU4T8MOeuZJUJjM="
379
+
},
380
+
"vs-launcher": {
381
+
"type": "GitRelease",
382
+
"repository": {
383
+
"type": "GitHub",
384
+
"owner": "XurxoMF",
385
+
"repo": "vs-launcher"
386
+
},
387
+
"pre_releases": false,
388
+
"version_upper_bound": null,
389
+
"release_prefix": null,
390
+
"submodules": false,
391
+
"version": "1.5.8",
392
+
"revision": "2068a31948396ca7c0a1b0efbc805ba7e99cdd96",
393
+
"url": "https://api.github.com/repos/XurxoMF/vs-launcher/tarball/refs/tags/1.5.8",
394
+
"hash": "sha256-SYpZSFyavD19sGuQhUrmVAbzx2Hs5nupsu2DkCymT4w="
382
395
},
383
396
"walker": {
384
397
"type": "GitRelease",
···
391
404
"version_upper_bound": null,
392
405
"release_prefix": null,
393
406
"submodules": false,
394
-
"version": "v2.5.5",
395
-
"revision": "ff292cb12c4816ce21dab47cd9894b8046b16a93",
396
-
"url": "https://api.github.com/repos/abenz1267/walker/tarball/refs/tags/v2.5.5",
397
-
"hash": "sha256-xc0yW9OhLTppjkaWWCWG9q4BVJZbhnLqLniLeMkcTvM="
407
+
"version": "v2.10.0",
408
+
"revision": "ce131301bbbdecde37bf76bf8478e8af06ff3792",
409
+
"url": "https://api.github.com/repos/abenz1267/walker/tarball/refs/tags/v2.10.0",
410
+
"hash": "sha256-72+WE0RGSW8TgzPijHU6TtLWfMb0G7ojraM5UifTLVg="
398
411
}
399
412
},
400
-
"version": 6
413
+
"version": 7
401
414
}
+4
packetmix/packages/OpenLinkHub/default.nix
+4
packetmix/packages/OpenLinkHub/default.nix
···
14
14
cp ${prev.src}/database/rgb.json $out/var/lib/OpenLinkHub/database
15
15
echo "{}" >> $out/var/lib/OpenLinkHub/database/scheduler.json
16
16
cp -r ${prev.src}/database/keyboard $out/var/lib/OpenLinkHub/database
17
+
cp -r ${prev.src}/database/lcd $out/var/lib/OpenLinkHub/database
18
+
cp -r ${prev.src}/database/language $out/var/lib/OpenLinkHub/database
19
+
cp -r ${prev.src}/database/nexus $out/var/lib/OpenLinkHub/database
20
+
cp -r ${prev.src}/database/external $out/var/lib/OpenLinkHub/database
17
21
18
22
mkdir -p $out/lib/udev/rules.d
19
23
cp ${prev.src}/99-openlinkhub.rules $out/lib/udev/rules.d
+1
-1
packetmix/packages/beancount-smart_importer/default.nix
+1
-1
packetmix/packages/beancount-smart_importer/default.nix
+6
-4
packetmix/packages/bluesky-pds/default.nix
+6
-4
packetmix/packages/bluesky-pds/default.nix
···
35
35
pnpmDeps = pnpm_9.fetchDeps {
36
36
inherit (finalAttrs) pname version src;
37
37
fetcherVersion = 2;
38
-
hash = "sha256-3Q3k2zTAyJHWunOLU/CuCaNljmPf9r3ONUjZ/0vno8s=";
38
+
hash = "sha256-9FYnpZ9wCC2JdpS/AGb8jrURrkrbMi5DTFvZVi7MYPc=";
39
39
};
40
40
41
41
buildPhase = ''
···
78
78
systems = [ "x86_64-linux" ];
79
79
package =
80
80
{
81
-
system,
81
+
stdenv,
82
82
findutils,
83
83
...
84
84
}:
85
-
config.inputs.nixos-unstable.result.${system}.bluesky-pds.overrideAttrs {
85
+
config.inputs.nixos-unstable.result.${stdenv.hostPlatform.system}.bluesky-pds.overrideAttrs {
86
86
postBuild = ''
87
87
atproto_pds_dir=$(${findutils}/bin/find node_modules/.pnpm -maxdepth 1 -name "@atproto+pds@*")
88
88
rm -r $atproto_pds_dir
89
89
mkdir -p $atproto_pds_dir
90
-
ln -s ${config.packages.bluesky-atproto-pds.result.${system}}/lib $atproto_pds_dir/node_modules
90
+
ln -s ${
91
+
config.packages.bluesky-atproto-pds.result.${stdenv.hostPlatform.system}
92
+
}/lib $atproto_pds_dir/node_modules
91
93
'';
92
94
};
93
95
};
+3
-1
packetmix/packages/collabora-gtimelog/default.nix
+3
-1
packetmix/packages/collabora-gtimelog/default.nix
+1
packetmix/packages/default.nix
+1
packetmix/packages/default.nix
+1
-1
packetmix/packages/headscale/default.nix
+1
-1
packetmix/packages/headscale/default.nix
+2
-2
packetmix/packages/treefmt/default.nix
+2
-2
packetmix/packages/treefmt/default.nix
···
29
29
systems = [ "x86_64-linux" ];
30
30
31
31
package =
32
-
{ stdenv, system }:
32
+
{ stdenv }:
33
33
stdenv.mkDerivation {
34
34
name = "nilla-fmt";
35
35
36
-
src = config.packages.treefmt.result.${system};
36
+
src = config.packages.treefmt.result.${stdenv.hostPlatform.system};
37
37
38
38
dontBuild = true;
39
39
+30
packetmix/packages/vs-launcher/default.nix
+30
packetmix/packages/vs-launcher/default.nix
···
1
+
# SPDX-FileCopyrightText: 2025 FreshlyBakedCake
2
+
#
3
+
# SPDX-License-Identifier: MIT
4
+
let
5
+
pins = import ../../npins;
6
+
in
7
+
{ config, ... }:
8
+
{
9
+
config.packages.vs-launcher = {
10
+
systems = [ "x86_64-linux" ];
11
+
12
+
package =
13
+
let
14
+
15
+
in
16
+
{ appimageTools, fetchurl }:
17
+
let
18
+
version = pins.vs-launcher.version;
19
+
pname = "vs-launcher";
20
+
src = fetchurl {
21
+
url = "https://github.com/XurxoMF/vs-launcher/releases/download/${version}/vs-launcher-${version}.AppImage";
22
+
sha256 = "sha256-WohOevunsop8cSg1E+GuUJpYHRfj7XtJEC0xH16A4Hg=";
23
+
};
24
+
in
25
+
appimageTools.wrapType2 {
26
+
inherit pname version src;
27
+
extraPkgs = pkgs: [ pkgs.dotnet-runtime ];
28
+
};
29
+
};
30
+
}
-63
packetmix/patches/reuse/1191-correct-invocation-for-jujutsu-file-listing.patch
-63
packetmix/patches/reuse/1191-correct-invocation-for-jujutsu-file-listing.patch
···
1
-
From 44d6d1a802e92c4837348329b32f1d0a158b5c30 Mon Sep 17 00:00:00 2001
2
-
From: Jonas Fierlings <fnoegip@gmail.com>
3
-
Date: Mon, 9 Jun 2025 18:28:42 +0200
4
-
Subject: [PATCH] Correct invocation for jujutsu file listing
5
-
6
-
The `jj files` command was deprecated in jujutsu 0.19.0, and removed in
7
-
jujutsu 0.26.0 (released in february of 2025). The fix is to use the new
8
-
`jj file list` command instead.
9
-
---
10
-
src/reuse/vcs.py | 29 ++++++++++++++++++++++++++++-
11
-
1 files changed, 28 insertions(+), 1 deletion(-)
12
-
13
-
diff --git a/src/reuse/vcs.py b/src/reuse/vcs.py
14
-
index 8c1cb5c8e..63b220048 100644
15
-
--- a/src/reuse/vcs.py
16
-
+++ b/src/reuse/vcs.py
17
-
@@ -2,6 +2,7 @@
18
-
# SPDX-FileCopyrightText: 2020 John Mulligan <jmulligan@redhat.com>
19
-
# SPDX-FileCopyrightText: 2023 Markus Haug <korrat@proton.me>
20
-
# SPDX-FileCopyrightText: 2024 Skyler Grey <sky@a.starrysky.fyi>
21
-
+# SPDX-FileCopyrightText: 2025 Jonas Fierlings <fnoegip@gmail.com>
22
-
# SPDX-FileCopyrightText: © 2020 Liferay, Inc. <https://liferay.com>
23
-
#
24
-
# SPDX-License-Identifier: GPL-3.0-or-later
25
-
@@ -261,11 +262,37 @@ def _find_all_tracked_files(self) -> set[Path]:
26
-
"""
27
-
Return a set of all files tracked in the current jj revision
28
-
"""
29
-
- command = [str(self.EXE), "files"]
30
-
+ version = self._version()
31
-
+ # TODO: Remove the version check once most distributions ship jj 0.19.0
32
-
+ # or higher.
33
-
+ if version is None or version >= (0, 19, 0):
34
-
+ command = [str(self.EXE), "file", "list"]
35
-
+ else:
36
-
+ command = [str(self.EXE), "files"]
37
-
result = execute_command(command, _LOGGER, cwd=self.root)
38
-
all_files = result.stdout.decode("utf-8").split("\n")
39
-
return {Path(file_) for file_ in all_files if file_}
40
-
41
-
+ def _version(self) -> Optional[tuple[int, int, int]]:
42
-
+ """
43
-
+ Returns the (major, minor, patch) version of the jujutsu executable,
44
-
+ or None if the version components cannot be determined.
45
-
+ """
46
-
+ result = execute_command(
47
-
+ [str(self.EXE), "--version"], _LOGGER, cwd=self.root
48
-
+ )
49
-
+ lines = result.stdout.decode("utf-8").split("\n")
50
-
+ # Output has the form `jj major.minor.patch[-hash]\n`.
51
-
+ try:
52
-
+ line = lines[0]
53
-
+ version = line.split(" ")[-1]
54
-
+ without_hash = version.split("-")[0]
55
-
+ components = without_hash.split(".")
56
-
+ return (int(components[0]), int(components[1]), int(components[2]))
57
-
+ except (IndexError, ValueError) as e:
58
-
+ _LOGGER.debug("unable to parse jj version: %s", e)
59
-
+ return None
60
-
+
61
-
def is_ignored(self, path: StrPath) -> bool:
62
-
path = relative_from_root(path, self.root)
63
-
-3
packetmix/patches/reuse/1191-correct-invocation-for-jujutsu-file-listing.patch.license
-3
packetmix/patches/reuse/1191-correct-invocation-for-jujutsu-file-listing.patch.license
+1
-1
packetmix/systems/common/inputs.nix
+1
-1
packetmix/systems/common/inputs.nix
+7
-1
packetmix/systems/corsair/openlinkhub.nix
+7
-1
packetmix/systems/corsair/openlinkhub.nix
···
46
46
[ -f ${path}/database/scheduler.json ] || cp ${pkg}/var/lib/OpenLinkHub/schduler.json ${path}/database/scheduler.json
47
47
mkdir -p ${path}/database/temperatures
48
48
mkdir -p ${path}/database/profiles
49
+
mkdir -p ${path}/database/macros
50
+
mkdir -p ${path}/database/led
49
51
50
-
cp -r ${pkg}/var/lib/OpenLinkHub/database/keyboard ${path}/database/keyboard
52
+
cp -r ${pkg}/var/lib/OpenLinkHub/database/keyboard ${path}/database
53
+
cp -r ${pkg}/var/lib/OpenLinkHub/database/lcd ${path}/database
54
+
cp -r ${pkg}/var/lib/OpenLinkHub/database/external ${path}/database
55
+
cp -r ${pkg}/var/lib/OpenLinkHub/database/nexus ${path}/database
56
+
cp -r ${pkg}/var/lib/OpenLinkHub/database/language ${path}/database
51
57
52
58
[ -L ${path}/static ] || ln -s ${pkg}/var/lib/OpenLinkHub/static ${path}/static
53
59
[ -L ${path}/web ] || ln -s ${pkg}/var/lib/OpenLinkHub/web ${path}/web
-2
packetmix/systems/espanso/espanso.nix
-2
packetmix/systems/espanso/espanso.nix
-63
packetmix/systems/espanso/nixpkgs-328890--espanso-capdacoverride.nix
-63
packetmix/systems/espanso/nixpkgs-328890--espanso-capdacoverride.nix
···
1
-
# SPDX-FileCopyrightText: 2025 Eelco Dolstra and the Nixpkgs/NixOS contributors
2
-
#
3
-
# SPDX-License-Identifier: MIT
4
-
5
-
{
6
-
config,
7
-
lib,
8
-
pkgs,
9
-
...
10
-
}:
11
-
12
-
let
13
-
cfg = config.programs.espanso.capdacoverride;
14
-
in
15
-
{
16
-
meta = {
17
-
maintainers = with lib.maintainers; [ pitkling ];
18
-
};
19
-
20
-
options = {
21
-
programs.espanso.capdacoverride = {
22
-
enable = (lib.mkEnableOption "espanso-wayland overlay with DAC_OVERRIDE capability") // {
23
-
description = ''
24
-
Creates an espanso binary with the DAC_OVERRIDE capability (via `security.wrappers`) and overlays `pkgs.espanso-wayland` such that self-forks call the capability-enabled binary.
25
-
Required for `pkgs.espanso-wayland` to work correctly if not run with root privileges.
26
-
'';
27
-
};
28
-
29
-
package = lib.mkOption {
30
-
type = lib.types.package // {
31
-
check = package: lib.types.package.check package && (builtins.elem "wayland" package.buildFeatures);
32
-
description =
33
-
lib.types.package.description
34
-
+ " for espanso with wayland support (`package.builtFeatures` must contain `\"wayland\"`)";
35
-
};
36
-
default = pkgs._espanso-wayland-orig;
37
-
defaultText = "pkgs.espanso-wayland (before applying the overlay)";
38
-
description = "The espanso-wayland package used as the base to generate the capability-enabled package.";
39
-
};
40
-
};
41
-
};
42
-
43
-
config = lib.mkIf cfg.enable {
44
-
nixpkgs.overlays = [
45
-
(_final: prev: {
46
-
_espanso-wayland-orig = prev.espanso-wayland;
47
-
espanso-wayland =
48
-
pkgs.callPackage ./nixpkgs-328890--espanso-capdacoverride/espanso-capdacoverride.nix
49
-
{
50
-
capDacOverrideWrapperDir = "${config.security.wrapperDir}";
51
-
espanso = cfg.package;
52
-
};
53
-
})
54
-
];
55
-
56
-
security.wrappers."espanso-wayland" = {
57
-
source = lib.getExe pkgs.espanso-wayland;
58
-
capabilities = "cap_dac_override+p";
59
-
owner = "root";
60
-
group = "root";
61
-
};
62
-
};
63
-
}
-63
packetmix/systems/espanso/nixpkgs-328890--espanso-capdacoverride/espanso-capdacoverride.nix
-63
packetmix/systems/espanso/nixpkgs-328890--espanso-capdacoverride/espanso-capdacoverride.nix
···
1
-
# SPDX-FileCopyrightText: 2025 Eelco Dolstra and the Nixpkgs/NixOS contributors
2
-
#
3
-
# SPDX-License-Identifier: MIT
4
-
5
-
{
6
-
autoPatchelfHook,
7
-
capDacOverrideWrapperDir,
8
-
espanso,
9
-
patchelfUnstable, # have to use patchelfUnstable to support --rename-dynamic-symbols
10
-
stdenv,
11
-
}:
12
-
let
13
-
inherit (espanso) version;
14
-
pname = "${espanso.pname}-capdacoverride";
15
-
16
-
wrapperLibName = "wrapper-lib.so";
17
-
18
-
# On Wayland, Espanso requires the DAC_OVERRIDE capability. One can create a wrapper binary with this
19
-
# capability using the `config.security.wrappers.<name>` framework. However, this is not enough: the
20
-
# capability is required by a worker process of Espanso created by forking `/proc/self/exe`, which points
21
-
# to the executable **without** the DAC_OVERRIDE capability. Thus, we inject a wrapper library into Espanso
22
-
# that redirects requests to `/proc/self/exe` to the binary with the proper capabilities.
23
-
wrapperLib = stdenv.mkDerivation {
24
-
name = "${pname}-${version}-wrapper-lib";
25
-
26
-
dontUnpack = true;
27
-
28
-
postPatch = ''
29
-
substitute ${./wrapper-lib.c} lib.c --subst-var-by to "${capDacOverrideWrapperDir}/espanso-wayland"
30
-
'';
31
-
32
-
buildPhase = ''
33
-
runHook preBuild
34
-
cc -fPIC -shared lib.c -o ${wrapperLibName}
35
-
runHook postBuild
36
-
'';
37
-
38
-
installPhase = ''
39
-
runHook preInstall
40
-
install -D -t $out/lib ${wrapperLibName}
41
-
runHook postInstall
42
-
'';
43
-
};
44
-
in
45
-
espanso.overrideAttrs (previousAttrs: {
46
-
inherit pname;
47
-
48
-
buildInputs = previousAttrs.buildInputs ++ [ wrapperLib ];
49
-
50
-
nativeBuildInputs = previousAttrs.nativeBuildInputs ++ [
51
-
autoPatchelfHook
52
-
patchelfUnstable
53
-
];
54
-
55
-
postInstall = ''
56
-
echo readlink readlink_wrapper > readlink_name_map
57
-
patchelf \
58
-
--rename-dynamic-symbols readlink_name_map \
59
-
--add-needed ${wrapperLibName} \
60
-
"$out/bin/espanso"
61
-
''
62
-
+ previousAttrs.postInstall;
63
-
})
-26
packetmix/systems/espanso/nixpkgs-328890--espanso-capdacoverride/wrapper-lib.c
-26
packetmix/systems/espanso/nixpkgs-328890--espanso-capdacoverride/wrapper-lib.c
···
1
-
/*
2
-
* SPDX-FileCopyrightText: 2025 Eelco Dolstra and the Nixpkgs/NixOS contributors
3
-
*
4
-
* SPDX-License-Identifier: MIT
5
-
*/
6
-
7
-
#include <stdio.h>
8
-
#include <string.h>
9
-
#include <unistd.h>
10
-
11
-
static const char from[] = "/proc/self/exe";
12
-
static const char to[] = "@to@";
13
-
14
-
ssize_t readlink_wrapper(const char *restrict path, char *restrict buf, size_t bufsize) {
15
-
if (strcmp(path, from) == 0) {
16
-
printf("readlink_wrapper.c: Resolving readlink call to '%s' to '%s'\n", from, to);
17
-
size_t to_length = strlen(to);
18
-
if (to_length > bufsize) {
19
-
to_length = bufsize;
20
-
}
21
-
memcpy(buf, to, to_length);
22
-
return to_length;
23
-
} else {
24
-
return readlink(path, buf, bufsize);
25
-
}
26
-
}
+1
-1
packetmix/systems/freshlybakedcake+personal/kanidm.nix
+1
-1
packetmix/systems/freshlybakedcake+personal/kanidm.nix
+1
-1
packetmix/systems/midnight/spindle.nix
+1
-1
packetmix/systems/midnight/spindle.nix
+1
-1
packetmix/systems/niri/niri.nix
+1
-1
packetmix/systems/niri/niri.nix
···
45
45
partOf = [ "graphical-session.target" ];
46
46
serviceConfig = {
47
47
Type = "simple";
48
-
ExecStart = "${pkgs.libsForQt5.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1";
48
+
ExecStart = "${pkgs.kdePackages.polkit-kde-agent-1}/libexec/polkit-kde-authentication-agent-1";
49
49
Restart = "on-failure";
50
50
RestartSec = 1;
51
51
TimeoutStopSec = 10;
+3
packetmix/systems/nix-serve/cache.nix
+3
packetmix/systems/nix-serve/cache.nix
···
2
2
#
3
3
# SPDX-License-Identifier: MIT
4
4
5
+
{ pkgs, ... }:
5
6
{
6
7
networking.firewall.allowedTCPPorts = [ 1025 ];
7
8
8
9
services.nix-serve = {
9
10
enable = true;
11
+
package = pkgs.nix-serve-ng;
12
+
10
13
secretKeyFile = "/secrets/cache/signer.key";
11
14
12
15
bindAddress = "0.0.0.0";
-3
packetmix/systems/redhead/android.nix
-3
packetmix/systems/redhead/android.nix
+1
-1
packetmix/systems/redhead/nextcloud.nix
+1
-1
packetmix/systems/redhead/nextcloud.nix
+8
packetmix/systems/shorthair/vr.nix
+8
packetmix/systems/shorthair/vr.nix
+1
-1
packetmix/systems/teal/kanidm.nix
+1
-1
packetmix/systems/teal/kanidm.nix
-11
packetmix/systems/teal/pds.nix
-11
packetmix/systems/teal/pds.nix
···
8
8
...
9
9
}:
10
10
{
11
-
disabledModules = [ "services/web-apps/pds.nix" ];
12
-
imports = [
13
-
"${project.inputs.nixos-unstable.src}/nixos/modules/services/web-apps/bluesky-pds.nix"
14
-
];
15
-
16
-
nixpkgs.overlays = [
17
-
(final: _prev: {
18
-
bluesky-pdsadmin = final.pdsadmin;
19
-
})
20
-
];
21
-
22
11
services.bluesky-pds = {
23
12
enable = true;
24
13
package = project.packages.bluesky-pds.result.${system};