summaryrefslogtreecommitdiff
path: root/accounts/gkleen@skadhi/shell/default.nix
diff options
context:
space:
mode:
authorGregor Kleen <gkleen@yggdrasil.li>2026-09-23 21:08:35 +0200
committerGregor Kleen <gkleen@yggdrasil.li>2026-09-23 21:08:35 +0200
commitae9a80c1f012686c1f65fce7ce76fdd1b77b0b71 (patch)
tree141f738276cf84c6b7e5633c2bd5f2b44e9b0b75 /accounts/gkleen@skadhi/shell/default.nix
parent6a763272038e637a8a03dd9059d43a1ff44921dd (diff)
downloadnixos-ae9a80c1f012686c1f65fce7ce76fdd1b77b0b71.tar
nixos-ae9a80c1f012686c1f65fce7ce76fdd1b77b0b71.tar.gz
nixos-ae9a80c1f012686c1f65fce7ce76fdd1b77b0b71.tar.bz2
nixos-ae9a80c1f012686c1f65fce7ce76fdd1b77b0b71.tar.xz
nixos-ae9a80c1f012686c1f65fce7ce76fdd1b77b0b71.zip
...
Diffstat (limited to 'accounts/gkleen@skadhi/shell/default.nix')
-rw-r--r--accounts/gkleen@skadhi/shell/default.nix123
1 files changed, 123 insertions, 0 deletions
diff --git a/accounts/gkleen@skadhi/shell/default.nix b/accounts/gkleen@skadhi/shell/default.nix
new file mode 100644
index 00000000..09eb6863
--- /dev/null
+++ b/accounts/gkleen@skadhi/shell/default.nix
@@ -0,0 +1,123 @@
1{ config, pkgs, lib, ... }:
2
3{
4 config = {
5 programs.quickshell = {
6 enable = true;
7 package = pkgs.symlinkJoin {
8 pname = pkgs.quickshell.pname + "-wrapped";
9 inherit (pkgs.quickshell) version meta;
10 paths = [ pkgs.quickshell ];
11 buildInputs = [ pkgs.makeWrapper ];
12 postBuild = ''
13 for binary in quickshell qs; do
14 wrapProgram $out/bin/$binary \
15 --prefix QT_PLUGIN_PATH : ${pkgs.qt6.qtimageformats}/${pkgs.qt6.qtbase.qtPluginPrefix} \
16 --prefix QML_IMPORT_PATH : ${pkgs.qt6Packages.callPackage ./quickshell-plugins {}}/${pkgs.qt6.qtbase.qtQmlPrefix}
17 done
18 '';
19 };
20 config = {
21 src = ./quickshell;
22 replacements = {
23 ignore_workspaces = builtins.toJSON (map ({ name, ... }: name) config.programs.niri.scratchspaces);
24 wallpapers = builtins.toJSON (pkgs.stdenvNoCC.mkDerivation {
25 name = "wallpapers";
26 srcs = [
27 (pkgs.fetchurl {
28 url = "https://esawebb.org/media/archives/images/publicationtiff10k/carinanebula3.tif";
29 hash = "sha256-YxZEweDKJfvfrdxb/QFmgJhcZDEJYxotoHrG+RRn1tw=";
30 })
31 (pkgs.fetchurl {
32 url = "https://esawebb.org/media/archives/images/original/pillarsofcreation_composite.tif";
33 hash = "sha256-qRiODxR0lZWdxgYXna0fNRFFDErpBJDwOJuQl6sNjRc=";
34 })
35 (pkgs.fetchurl {
36 url = "https://esawebb.org/media/archives/images/publicationtiff10k/weic2212a.tif";
37 hash = "sha256-l2fqE/z//C1a0xkvZwsnwPbTSb+WuA11h+SUl3E1dhw=";
38 })
39 (pkgs.fetchurl {
40 url = "https://esawebb.org/media/archives/images/publicationtiff10k/weic2415a.tif";
41 hash = "sha256-onBy7cPoUpDuzQStbY2E+qmlGgSLXPwFCLX53ukAb4c=";
42 })
43 (pkgs.fetchurl {
44 url = "https://esawebb.org/media/archives/images/publicationtiff10k/weic2330a.tif";
45 hash = "sha256-nn0ZtjZIrPcpj3YcLTsrL7XiXvyh3QYgCSmdDMD+3OM=";
46 })
47 (pkgs.fetchurl {
48 url = "https://esawebb.org/media/archives/images/original/weic2426a.tif";
49 hash = "sha256-EDnfPn3GE9jt6XPqiGInP7E2F3Az7d25NqATSWltDv0=";
50 })
51 (pkgs.fetchurl {
52 url = "https://esawebb.org/media/archives/images/original/weic2503a.tif";
53 hash = "sha256-3/RX6RQp8naELcgReHPd5/zhJkoCjnA10w5BEnNo+qI=";
54 })
55 (pkgs.fetchurl {
56 url = "https://esawebb.org/media/archives/images/original/weic2506a.tif";
57 hash = "sha256-aDld0aoY1owRxDVf7Jcyw71TH42M1foYotxn2thyFYw=";
58 })
59 (pkgs.fetchurl {
60 url = "https://esawebb.org/media/archives/images/original/weic2514a.tif";
61 hash = "sha256-jTi1G1Ofo5xsF6ggrbtYJHxqLaCQ7edM5B3uORiVQtg=";
62 })
63 (pkgs.fetchurl {
64 url = "https://esawebb.org/media/archives/images/original/weic2425c.tif";
65 hash = "sha256-oaEOexSJHEGj090dJF3ct5HAoR+Y5gRiPrUlxdvnTRo=";
66 })
67 (pkgs.fetchurl {
68 url = "https://esawebb.org/media/archives/images/original/weic2605c.tif";
69 hash = "sha256-IwWfgkz84LFXkfk77anb5e0Mf0wWiIszum7UC3yZn0U=";
70 })
71 ];
72
73 dontUnpack = true;
74
75 buildInputs = [ pkgs.imagemagick ];
76 buildPhase = ''
77 runHook preBuild
78
79 typeset sources=($srcs)
80
81 mkdir -p $out
82 magick ''${sources[0]} -crop 10000x5625+0+79 +repage -define webp:target-size=10000000 $out/carinanebula3.webp
83 magick ''${sources[1]} -crop 6716x3778+329+80 +repage -define webp:target-size=10000000 $out/pillarsofcreation_composite.webp
84 magick ''${sources[2]} -crop 10000x5625+0+79 +repage -define webp:target-size=10000000 $out/weic2212a.webp
85 magick ''${sources[3]} -crop 7650x4302+1166+389 +repage -define webp:target-size=10000000 $out/weic2415a.webp
86 magick ''${sources[4]} -crop 8732x4912+0+434 +repage -define webp:target-size=10000000 $out/weic2330a.webp
87 magick ''${sources[5]} -crop 5302x2982+636+0 +repage -define webp:target-size=10000000 $out/weic2426a.webp
88 magick ''${sources[6]} -crop 4328x2434+0+906 +repage -define webp:target-size=10000000 $out/weic2503a.webp
89 magick ''${sources[7]} -crop 4152x2335+0+666 +repage -define webp:target-size=10000000 $out/weic2506a.webp
90 magick ''${sources[8]} -crop 4320x2430+0+0 +repage -define webp:target-size=10000000 $out/weic2514a.webp
91 magick ''${sources[9]} -crop 5863x3298+0+477 +repage -define webp:target-size=10000000 $out/weic2425c.webp
92 magick ''${sources[10]} -crop 3990x2244+0+1379 +repage -define webp:target-size=10000000 $out/weic2605c.webp
93
94 runHook postBuild
95 '';
96 });
97 niri_session = builtins.toJSON [
98 (pkgs.writeShellScript "niri-session" ''
99 exec ${lib.getExe pkgs.dex} -w ${config.programs.niri.package}/share/wayland-sessions/niri.desktop &>/tmp/niri-session-$$.log
100 '')
101 # (lib.getExe pkgs.dex)
102 # "${config.programs.niri.package}/share/wayland-sessions/niri.desktop"
103 ];
104 username = builtins.toJSON config.home.username;
105 mdi = builtins.toJSON (pkgs.fetchFromGitHub {
106 owner = "Templarian";
107 repo = "MaterialDesign";
108 rev = "2424e748e0cc63ab7b9c095a099b9fe239b737c0";
109 hash = "sha256-QMGl7soAhErrrnY3aKOZpt49yebkSNzy10p/v5OaqQ0=";
110 });
111 worktime = builtins.toJSON (lib.getExe pkgs.worktime);
112 slurp = builtins.toJSON (lib.getExe pkgs.slurp);
113 wf-recorder = builtins.toJSON (lib.getExe pkgs.wf-recorder);
114 };
115 };
116 };
117 systemd.user.services.quickshell = {
118 Service = {
119 RuntimeDirectory = "quickshell";
120 };
121 };
122 };
123}