nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5}:
6
7let
8 mkNixBackground =
9 {
10 name,
11 src,
12 description,
13 license ? lib.licenses.free,
14 }:
15
16 let
17 pkg = stdenv.mkDerivation {
18 inherit name src;
19
20 dontUnpack = true;
21
22 installPhase = ''
23 runHook preInstall
24
25 # GNOME
26 mkdir -p $out/share/backgrounds/nixos
27 ln -s $src $out/share/backgrounds/nixos/${src.name}
28
29 mkdir -p $out/share/gnome-background-properties/
30 cat <<EOF > $out/share/gnome-background-properties/${name}.xml
31 <?xml version="1.0" encoding="UTF-8"?>
32 <!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
33 <wallpapers>
34 <wallpaper deleted="false">
35 <name>${name}</name>
36 <filename>${src}</filename>
37 <options>zoom</options>
38 <shade_type>solid</shade_type>
39 <pcolor>#ffffff</pcolor>
40 <scolor>#000000</scolor>
41 </wallpaper>
42 </wallpapers>
43 EOF
44
45 # TODO: is this path still needed?
46 mkdir -p $out/share/artwork/gnome
47 ln -s $src $out/share/artwork/gnome/${src.name}
48
49 # KDE
50 mkdir -p $out/share/wallpapers/${name}/contents/images
51 ln -s $src $out/share/wallpapers/${name}/contents/images/${src.name}
52 cat >>$out/share/wallpapers/${name}/metadata.desktop <<_EOF
53 [Desktop Entry]
54 Name=${name}
55 X-KDE-PluginInfo-Name=${name}
56 _EOF
57
58 runHook postInstall
59 '';
60
61 passthru = {
62 gnomeFilePath = "${pkg}/share/backgrounds/nixos/${src.name}";
63 kdeFilePath = "${pkg}/share/wallpapers/${name}/contents/images/${src.name}";
64 };
65
66 meta = with lib; {
67 inherit description license;
68 homepage = "https://github.com/NixOS/nixos-artwork";
69 platforms = platforms.all;
70 };
71 };
72 in
73 pkg;
74
75in
76
77rec {
78
79 binary-black = mkNixBackground {
80 name = "binary-black-2024-02-15";
81 description = "Black binary wallpaper for Nix";
82 src = fetchurl {
83 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/8957e93c95867faafec7f9988cedddd6837859fa/wallpapers/nix-wallpaper-binary-black.png";
84 hash = "sha256-mhSh0wz2ntH/kri3PF5ZrFykjjdQLhmlIlDDGFQIYWw=";
85 };
86 license = lib.licenses.cc-by-sa-40;
87 };
88
89 binary-blue = mkNixBackground {
90 name = "binary-blue-2024-02-15";
91 description = "Blue binary wallpaper for Nix";
92 src = fetchurl {
93 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/8957e93c95867faafec7f9988cedddd6837859fa/wallpapers/nix-wallpaper-binary-blue.png";
94 hash = "sha256-oVIRSgool/CsduGingDr0FuJJIkGtfQHXYn0JBI2eho=";
95 };
96 license = lib.licenses.cc-by-sa-40;
97 };
98
99 binary-red = mkNixBackground {
100 name = "binary-red-2024-02-15";
101 description = "Red binary wallpaper for Nix";
102 src = fetchurl {
103 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/8957e93c95867faafec7f9988cedddd6837859fa/wallpapers/nix-wallpaper-binary-red.png";
104 hash = "sha256-18UvtroyuAnluJ3EoLJWJAwN8T83s/ImPtsr5QTqvAA=";
105 };
106 license = lib.licenses.cc-by-sa-40;
107 };
108
109 binary-white = mkNixBackground {
110 name = "binary-white-2024-02-15";
111 description = "White binary wallpaper for Nix";
112 src = fetchurl {
113 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/8957e93c95867faafec7f9988cedddd6837859fa/wallpapers/nix-wallpaper-binary-white.png";
114 hash = "sha256-imj+OmuhTNxRtE54715wWQUA7pe1f32+q3qi2V37i8U=";
115 };
116 license = lib.licenses.cc-by-sa-40;
117 };
118
119 catppuccin-frappe = mkNixBackground {
120 name = "catppuccin-frappe-2024-02-15";
121 description = "Catppuccin Frappé colorscheme wallpaper for NixOS";
122 src = fetchurl {
123 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/97444e18b7fe97705e8caedd29ae05e62cb5d4b7/wallpapers/nixos-wallpaper-catppuccin-frappe.png";
124 hash = "sha256-wtBffKK9rqSJo8+7Wo8OMruRlg091vdroyUZj5mDPfI=";
125 };
126 license = lib.licenses.cc-by-sa-40;
127 };
128
129 catppuccin-latte = mkNixBackground {
130 name = "catppuccin-latte-2024-02-15";
131 description = "Catppuccin Latte colorscheme wallpaper for NixOS";
132 src = fetchurl {
133 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/97444e18b7fe97705e8caedd29ae05e62cb5d4b7/wallpapers/nixos-wallpaper-catppuccin-latte.png";
134 hash = "sha256-Y6WCwmHOLBStj1D9mcU2082y1fhAFHna01ajfUHxehk=";
135 };
136 license = lib.licenses.cc-by-sa-40;
137 };
138
139 catppuccin-macchiato = mkNixBackground {
140 name = "catppuccin-macchiato-2024-02-15";
141 description = "Catppuccin Macchiato colorscheme wallpaper for NixOS";
142 src = fetchurl {
143 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/97444e18b7fe97705e8caedd29ae05e62cb5d4b7/wallpapers/nixos-wallpaper-catppuccin-macchiato.png";
144 hash = "sha256-SkXrLbHvBOItJ7+8vW+6iXV+2g0f8bUJf9KcCXYOZF0=";
145 };
146 license = lib.licenses.cc-by-sa-40;
147 };
148
149 catppuccin-mocha = mkNixBackground {
150 name = "catppuccin-mocha-2024-02-15";
151 description = "Catppuccin Mochacolorscheme wallpaper for NixOS";
152 src = fetchurl {
153 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/97444e18b7fe97705e8caedd29ae05e62cb5d4b7/wallpapers/nixos-wallpaper-catppuccin-mocha.png";
154 hash = "sha256-fmKFYw2gYAYFjOv4lr8IkXPtZfE1+88yKQ4vjEcax1s=";
155 };
156 license = lib.licenses.cc-by-sa-40;
157 };
158
159 dracula = mkNixBackground {
160 name = "dracula-2020-07-02";
161 description = "Nix background based on the Dracula color palette";
162 src = fetchurl {
163 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/03c6c20be96c38827037d2238357f2c777ec4aa5/wallpapers/nix-wallpaper-dracula.png";
164 hash = "sha256-SykeFJXCzkeaxw06np0QkJCK28e0k30PdY8ZDVcQnh4=";
165 };
166 license = lib.licenses.cc-by-sa-40;
167 };
168
169 gear = mkNixBackground {
170 name = "gear-2022-04-19";
171 description = "3D wallpaper for Nix";
172 src = fetchurl {
173 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/bcdd2770f5f4839fddc9b503e68db2bc3a87ca4d/wallpapers/nix-wallpaper-gear.png";
174 hash = "sha256-2sT6b49/iClTs9QuUvpmZ5gcIeXI9kebs5IqgQN1RL8=";
175 };
176 license = lib.licenses.cc-by-sa-40;
177 };
178
179 gnome-dark = simple-dark-gray-bottom;
180
181 gradient-grey = mkNixBackground {
182 name = "gradient-grey-2018-10-20";
183 description = "Simple grey gradient background for NixOS";
184 src = fetchurl {
185 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/3f7695afe75239720a32d6c38df7c9888b5ed581/wallpapers/NixOS-Gradient-grey.png";
186 hash = "sha256-Tf4Xruf608hpl7YwL4Mq9l9egBOCN+W4KFKnqrgosLE=";
187 };
188 # license not clarified
189 };
190
191 moonscape = mkNixBackground {
192 name = "moonscape-2022-04-19";
193 description = "3D wallpaper for Nix";
194 src = fetchurl {
195 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/bcdd2770f5f4839fddc9b503e68db2bc3a87ca4d/wallpapers/nix-wallpaper-moonscape.png";
196 hash = "sha256-AR3W8avHzQLxMNLfD/A1efyZH+vAdTLKllEhJwBl0xc=";
197 };
198 license = lib.licenses.cc-by-sa-40;
199 };
200
201 mosaic-blue = mkNixBackground {
202 name = "mosaic-blue-2016-02-19";
203 description = "Mosaic blue background for Nix";
204 src = fetchurl {
205 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/766f10e0c93cb1236a85925a089d861b52ed2905/wallpapers/nix-wallpaper-mosaic-blue.png";
206 hash = "sha256-xZbNK8s3/ooRvyeHGxhcYnnifeGAiAnUjw9EjJTWbLE=";
207 };
208 license = lib.licenses.cc0;
209 };
210
211 nineish = mkNixBackground {
212 name = "nineish-2019-12-04";
213 description = "Nix background inspired by simpler times";
214 src = fetchurl {
215 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/da01f68d21ddfdc9f1c6e520c2170871c81f1cf5/wallpapers/nix-wallpaper-nineish.png";
216 hash = "sha256-EMSD1XQLaqHs0NbLY0lS1oZ4rKznO+h9XOGDS121m9c=";
217 };
218 license = lib.licenses.cc-by-sa-40;
219 };
220
221 nineish-dark-gray = mkNixBackground {
222 name = "nineish-dark-gray-2020-07-02";
223 description = "Dark gray Nix background inspired by simpler times";
224 src = fetchurl {
225 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/f07707cecfd89bc1459d5dad76a3a4c5315efba1/wallpapers/nix-wallpaper-nineish-dark-gray.png";
226 hash = "sha256-nhIUtCy/Hb8UbuxXeL3l3FMausjQrnjTVi1B3GkL9B8=";
227 };
228 license = lib.licenses.cc-by-sa-40;
229 };
230
231 nineish-solarized-dark = mkNixBackground {
232 name = "nineish-dark-gray-2021-07-20";
233 description = "Solarized dark Nix background inspired by simpler times";
234 src = fetchurl {
235 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/f99638d8d1a11d97a99ff7e0e1e7df58c28643ff/wallpapers/nix-wallpaper-nineish-solarized-dark.png";
236 hash = "sha256-ZBrk9izKvsY4Hzsr7YovocCbkRVgUN9i/y1B5IzOOKo=";
237 };
238 license = lib.licenses.cc-by-sa-40;
239 };
240
241 nineish-solarized-light = mkNixBackground {
242 name = "nineish-dark-light-2021-07-20";
243 description = "Solarized light Nix background inspired by simpler times";
244 src = fetchurl {
245 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/f99638d8d1a11d97a99ff7e0e1e7df58c28643ff/wallpapers/nix-wallpaper-nineish-solarized-light.png";
246 hash = "sha256-gb5s5ePdw7kuIL3SI8VVhOcLcHu0cHMJJ623vg1kz40=";
247 };
248 license = lib.licenses.cc-by-sa-40;
249 };
250
251 nineish-catppuccin-frappe-alt = mkNixBackground {
252 name = "nineish-catppuccin-frappe-alt-2025-01-27";
253 description = "Alternative Catppuccin Frappe wallpaper for Nix inspired by simpler times";
254 src = fetchurl {
255 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-frappe-alt.png";
256 hash = "sha256-ZbtgfBE09FhCTPPCzDlOrSoRUmv1lmhxiNTvHDldF/4=";
257 };
258 license = lib.licenses.cc-by-sa-40;
259 };
260
261 nineish-catppuccin-frappe = mkNixBackground {
262 name = "nineish-catppuccin-frappe-2025-01-27";
263 description = "Catppuccin Frappe wallpaper for Nix inspired by simpler times";
264 src = fetchurl {
265 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-frappe.png";
266 hash = "sha256-/HAtpGwLxjNfJvX5/4YZfM8jPNStaM3gisK8+ImRmQ4=";
267 };
268 license = lib.licenses.cc-by-sa-40;
269 };
270
271 nineish-catppuccin-latte-alt = mkNixBackground {
272 name = "nineish-catppuccin-latte-alt-2025-01-27";
273 description = "Alternative Catppuccin Latte wallpaper for Nix inspired by simpler times";
274 src = fetchurl {
275 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-latte-alt.png";
276 hash = "sha256-UyUQ4YQYlJrjoUX6qU6cGWjhA1AnIpQgniQermUtO2w=";
277 };
278 license = lib.licenses.cc-by-sa-40;
279 };
280
281 nineish-catppuccin-latte = mkNixBackground {
282 name = "nineish-catppuccin-latte-2025-01-27";
283 description = "Catppuccin Latte wallpaper for Nix inspired by simpler times";
284 src = fetchurl {
285 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-latte.png";
286 hash = "sha256-+DirQiQ1TUeB+e2AeJD8mWjt0OTWtrqkeqZrVr5v5iY=";
287 };
288 license = lib.licenses.cc-by-sa-40;
289 };
290
291 nineish-catppuccin-macchiato-alt = mkNixBackground {
292 name = "nineish-catppuccin-macchiato-alt-2025-01-27";
293 description = "Alternative Catppuccin Macchiato wallpaper for Nix inspired by simpler times";
294 src = fetchurl {
295 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-macchiato-alt.png";
296 hash = "sha256-OUT0SsToRH5Zdd+jOwhr9iVBoVNUKhUkJNBYFDKZGOU=";
297 };
298 license = lib.licenses.cc-by-sa-40;
299 };
300
301 nineish-catppuccin-macchiato = mkNixBackground {
302 name = "nineish-catppuccin-macchiato-2025-01-27";
303 description = "Catppuccin Macchiato wallpaper for Nix inspired by simpler times";
304 src = fetchurl {
305 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-macchiato.png";
306 hash = "sha256-1JWgytxOvI0hwkCk+1hdZqhLB0u5aHEyEcsmlo4kMuw=";
307 };
308 license = lib.licenses.cc-by-sa-40;
309 };
310
311 nineish-catppuccin-mocha-alt = mkNixBackground {
312 name = "nineish-catppuccin-mocha-alt-2025-01-27";
313 description = "Alternative Catppuccin Mocha wallpaper for Nix inspired by simpler times";
314 src = fetchurl {
315 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-mocha-alt.png";
316 hash = "sha256-ThDrZIJIyO2DdIW41sV6iYyCNhM89cwHr8l6DAfbXjI=";
317 };
318 license = lib.licenses.cc-by-sa-40;
319 };
320
321 nineish-catppuccin-mocha = mkNixBackground {
322 name = "nineish-catppuccin-mocha-2025-01-27";
323 description = "Catppuccin Mocha wallpaper for Nix inspired by simpler times";
324 src = fetchurl {
325 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/33856d7837cb8ba76c4fc9e26f91a659066ee31f/wallpapers/nix-wallpaper-nineish-catppuccin-mocha.png";
326 hash = "sha256-zlYqSid5Q1L5sUrAcvR+7aN2jImiuoR9gygBRk8x9Wo=";
327 };
328 license = lib.licenses.cc-by-sa-40;
329 };
330
331 recursive = mkNixBackground {
332 name = "recursive-2022-04-19";
333 description = "3D wallpaper for Nix";
334 src = fetchurl {
335 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/bcdd2770f5f4839fddc9b503e68db2bc3a87ca4d/wallpapers/nix-wallpaper-recursive.png";
336 hash = "sha256-YvFrlysNGMwJ7eMFOoz0KI8AjoPN3ao+AVOgnVZzkFE=";
337 };
338 license = lib.licenses.cc-by-sa-40;
339 };
340
341 simple-blue = mkNixBackground {
342 name = "simple-blue-2016-02-19";
343 description = "Simple blue background for Nix";
344 src = fetchurl {
345 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/766f10e0c93cb1236a85925a089d861b52ed2905/wallpapers/nix-wallpaper-simple-blue.png";
346 hash = "sha256-utrcjzfeJoFOpUbFY2eIUNCKy5rjLt57xIoUUssJmdI=";
347 };
348 license = lib.licenses.cc0;
349 };
350
351 simple-dark-gray = mkNixBackground {
352 name = "simple-dark-gray-2016-02-19";
353 description = "Simple dark gray background for Nix";
354 src = fetchurl {
355 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/766f10e0c93cb1236a85925a089d861b52ed2905/wallpapers/nix-wallpaper-simple-dark-gray.png";
356 hash = "sha256-JaLHdBxwrphKVherDVe5fgh+3zqUtpcwuNbjwrBlAok=";
357 };
358 license = lib.licenses.cc0;
359 };
360
361 simple-dark-gray-bootloader = mkNixBackground {
362 name = "simple-dark-gray-bootloader-2018-08-28";
363 description = "Simple dark gray background for NixOS, specifically bootloaders";
364 src = fetchurl {
365 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/9d1f11f652ed5ffe460b6c602fbfe2e7e9a08dff/bootloader/nix-wallpaper-simple-dark-gray_bootloader.png";
366 hash = "sha256-Sd52CEw/pHmk6Cs+yrM/8wscG9bvYuECylQd27ybRmw=";
367 };
368 # license not clarified
369 };
370
371 simple-dark-gray-bottom = mkNixBackground {
372 name = "simple-dark-gray-2018-08-28";
373 description = "Simple dark gray background for NixOS, specifically bootloaders and graphical login";
374 src = fetchurl {
375 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/783c38b22de09f6ee33aacc817470a4513392d83/wallpapers/nix-wallpaper-simple-dark-gray_bottom.png";
376 hash = "sha256-JUyzf9dYRyLQmxJPKptDxXL7yRqAFt5uM0C9crkkEY4=";
377 };
378 # license not clarified
379 };
380
381 simple-light-gray = mkNixBackground {
382 name = "simple-light-gray-2016-02-19";
383 description = "Simple light gray background for Nix";
384 src = fetchurl {
385 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/766f10e0c93cb1236a85925a089d861b52ed2905/wallpapers/nix-wallpaper-simple-light-gray.png";
386 hash = "sha256-Ylo5H5OrU/t9vwLbfO0OyPIsB/0vS5iUPTt/G3YHzUQ=";
387 };
388 license = lib.licenses.cc0;
389 };
390
391 simple-red = mkNixBackground {
392 name = "simple-red-2016-02-19";
393 description = "Simple red background for Nix";
394 src = fetchurl {
395 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/766f10e0c93cb1236a85925a089d861b52ed2905/wallpapers/nix-wallpaper-simple-red.png";
396 hash = "sha256-WnKjgvnn5Rg4R3xaJQ2mhBHQqCfl9jV6Xx3hEXW+uZk=";
397 };
398 license = lib.licenses.cc0;
399 };
400
401 stripes-logo = mkNixBackground {
402 name = "stripes-logo-2016-02-19";
403 description = "Stripes logo background for Nix";
404 src = fetchurl {
405 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/766f10e0c93cb1236a85925a089d861b52ed2905/wallpapers/nix-wallpaper-stripes-logo.png";
406 hash = "sha256-1MoPwytw8kBiy+Sx70xmHnxMJgqEaOR9YEgQMO6bEjM=";
407 };
408 license = lib.licenses.cc0;
409 };
410
411 stripes = mkNixBackground {
412 name = "stripes-2016-02-19";
413 description = "Stripes background for Nix";
414 src = fetchurl {
415 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/766f10e0c93cb1236a85925a089d861b52ed2905/wallpapers/nix-wallpaper-stripes.png";
416 hash = "sha256-o3GqbFZ/18ScLOlAL6GRy54l8P/U6wUeeK4HtPkZw4Q=";
417 };
418 license = lib.licenses.cc0;
419 };
420
421 waterfall = mkNixBackground {
422 name = "waterfall-2022-04-19";
423 description = "3D wallpaper for Nix";
424 src = fetchurl {
425 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/bcdd2770f5f4839fddc9b503e68db2bc3a87ca4d/wallpapers/nix-wallpaper-waterfall.png";
426 hash = "sha256-ULFNUZPU9khDG6rtkMskLe5sYpUcrJVvcFvEkpvXjMM=";
427 };
428 license = lib.licenses.cc-by-sa-40;
429 };
430
431 watersplash = mkNixBackground {
432 name = "watersplash-2022-04-19";
433 description = "3D wallpaper for Nix";
434 src = fetchurl {
435 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/bcdd2770f5f4839fddc9b503e68db2bc3a87ca4d/wallpapers/nix-wallpaper-watersplash.png";
436 hash = "sha256-6Gdjzq3hTvUH7GeZmZnf+aOQruFxReUNEryAvJSgycQ=";
437 };
438 license = lib.licenses.cc-by-sa-40;
439 };
440
441}