diff options
| author | Gregor Kleen <gkleen@yggdrasil.li> | 2026-09-23 21:08:35 +0200 |
|---|---|---|
| committer | Gregor Kleen <gkleen@yggdrasil.li> | 2026-09-23 21:08:35 +0200 |
| commit | ae9a80c1f012686c1f65fce7ce76fdd1b77b0b71 (patch) | |
| tree | 141f738276cf84c6b7e5633c2bd5f2b44e9b0b75 /accounts/gkleen@skadhi/shell/default.nix | |
| parent | 6a763272038e637a8a03dd9059d43a1ff44921dd (diff) | |
| download | nixos-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.nix | 123 |
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 | } | ||
