Compare commits

..

9 commits

Author SHA1 Message Date
Schrottkatze
03777592fe
install MM 2026-06-20 16:34:08 +02:00
Schrottkatze
b7514aa669
i hate this fucking OS 2026-06-20 15:54:08 +02:00
Schrottkatze
f71276f011
revert fucking braindead change: https://github.com/nix-community/home-manager/pull/5979 2026-06-20 15:53:54 +02:00
Schrottkatze
b85ae9f753
flake.lock: Update
Flake lock file updates:

• Updated input 'crane':
    'github:ipetkov/crane/709b316b6ba9424932b33761549e2117bbb3c5ae' (2026-05-02)
  → 'github:ipetkov/crane/469fd08d0bcf6926321fa973c6777fbc87785dd7' (2026-06-18)
• Updated input 'fenix':
    'github:nix-community/fenix/74c1591efaff494756b8d35ebe357c6c2bbdca96' (2026-05-02)
  → 'github:nix-community/fenix/ab90d0629159f412313b6bde02bdc346bd9c8b3b' (2026-06-20)
• Updated input 'fenix/rust-analyzer-src':
    'github:rust-lang/rust-analyzer/64cdaeb06f69b6b769a492edd88b022ae88e8ca2' (2026-05-01)
  → 'github:rust-lang/rust-analyzer/501826b6fb2b87d16fb35ffceb3b01f885517320' (2026-06-20)
• Updated input 'home-manager':
    'github:nix-community/home-manager/561bd674646db26ebfccc79b4fbef89f335505db' (2026-05-02)
  → 'github:nix-community/home-manager/37f21dfa5d27e71b75bacd9418b156f9265e312e' (2026-06-19)
• Updated input 'nixcord':
    'github:kaylorben/nixcord/853aa014283c1d3e58df7213c36d3a739cab1b6f' (2026-05-02)
  → 'github:kaylorben/nixcord/d9aad20784cb2fe8142f2e934d29e1c722cc71d6' (2026-06-20)
• Updated input 'nixcord/flake-parts':
    'github:hercules-ci/flake-parts/5250617bffd85403b14dbf43c3870e7f255d2c16' (2026-05-01)
  → 'github:hercules-ci/flake-parts/f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb' (2026-05-13)
• Updated input 'nixcord/nixpkgs':
    'github:NixOS/nixpkgs/755f5aa91337890c432639c60b6064bb7fe67769' (2026-04-29)
  → 'github:NixOS/nixpkgs/6b316287bae2ee04c9b93c8c858d930fd07d7338' (2026-06-03)
• Updated input 'nixcord/nixpkgs-nixcord':
    'github:NixOS/nixpkgs/755f5aa91337890c432639c60b6064bb7fe67769' (2026-04-29)
  → 'github:NixOS/nixpkgs/6b316287bae2ee04c9b93c8c858d930fd07d7338' (2026-06-03)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/2096f3f411ce46e88a79ae4eafcfc9df8ed41c61' (2026-04-23)
  → 'github:NixOS/nixos-hardware/08018c72174a4df5657f8d94178ac69fb9c243e5' (2026-06-16)
• Added input 'nixos-hardware/nixpkgs':
    'https://releases.nixos.org/nixos/unstable/nixos-26.05pre924538.3497aa5c9457/nixexprs.tar.xz?narHash=sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U%3D' (2026-01-08)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/15f4ee454b1dce334612fa6843b3e05cf546efab' (2026-04-30)
  → 'github:NixOS/nixpkgs/567a49d1913ce81ac6e9582e3553dd90a955875f' (2026-06-16)
• Updated input 'nixpkgs-stable':
    'github:NixOS/nixpkgs/755f5aa91337890c432639c60b6064bb7fe67769' (2026-04-29)
  → 'github:NixOS/nixpkgs/d6df3513510aa548c83868fd22bfddd0a8c0a0d4' (2026-06-15)
• Updated input 'nixpkgs-unstable-small':
    'github:NixOS/nixpkgs/e59d8bfa2cc42b1e1104595ac4292cfedce7f1a4' (2026-05-02)
  → 'github:NixOS/nixpkgs/d4fea6b6bfce7b55c6df36fb973205b89d7fe761' (2026-06-19)
• Updated input 'stylix':
    'github:danth/stylix/20ff51f523e2dd67e5f31a321719d30708c1b771' (2026-04-30)
  → 'github:danth/stylix/a378e4c09031fb15a4d65da88aa628f71fc52f6b' (2026-06-09)
• Updated input 'stylix/base16-helix':
    'github:tinted-theming/base16-helix/d646af9b7d14bff08824538164af99d0c521b185' (2025-10-17)
  → 'github:tinted-theming/base16-helix/4d508123037e7851ad36ebf7d9c48b0e9e1eb581' (2026-04-21)
• Updated input 'stylix/firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/179704030c5286c729b5b0522037d1d51341022c' (2026-04-03)
  → 'github:rafaelmardojai/firefox-gnome-theme/942159e73e40bf785816f7f1f5feed9ef3d7c8f9' (2026-05-25)
• Updated input 'stylix/flake-parts':
    'github:hercules-ci/flake-parts/3107b77cd68437b9a76194f0f7f9c55f2329ca5b' (2026-04-01)
  → 'github:hercules-ci/flake-parts/f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb' (2026-05-13)
• Updated input 'stylix/nixpkgs':
    'github:NixOS/nixpkgs/6201e203d09599479a3b3450ed24fa81537ebc4e' (2026-04-01)
  → 'github:NixOS/nixpkgs/331800de5053fcebacf6813adb5db9c9dca22a0c' (2026-05-31)
• Updated input 'stylix/nur':
    'github:nix-community/NUR/601971b9c89e0304561977f2c28fa25e73aa7132' (2026-04-03)
  → 'github:nix-community/NUR/30f9ae2f04174de63ba8bcf3580ca90843b28a01' (2026-06-01)
• Updated input 'stylix/tinted-schemes':
    'github:tinted-theming/schemes/13b5b0c299982bb361039601e2d72587d6846294' (2026-03-04)
  → 'github:tinted-theming/schemes/0c94645546f4f3ddac77a1a5fce54eb95bf50795' (2026-05-03)
• Updated input 'stylix/tinted-tmux':
    'github:tinted-theming/tinted-tmux/c3529673a5ab6e1b6830f618c45d9ce1bcdd829d' (2026-03-08)
  → 'github:tinted-theming/tinted-tmux/fe0203a198690e71a5ff11e08812a4673de3678d' (2026-05-10)
• Updated input 'stylix/tinted-zed':
    'github:tinted-theming/base16-zed/b4d3a1b3bcbd090937ef609a0a3b37237af974df' (2026-03-07)
  → 'github:tinted-theming/base16-zed/9cd816033ff969415b190722cddf134e78a5665f' (2026-05-10)
2026-06-20 15:16:26 +02:00
Schrottkatze
653dd043bb
i hate my life 2026-06-20 15:13:38 +02:00
Schrottkatze
b85f0a45d6
niri update 2026-06-20 15:13:38 +02:00
Schrottkatze
040ad93106
flake.lock: Update
Flake lock file updates:

• Updated input 'crane':
    'github:ipetkov/crane/709b316b6ba9424932b33761549e2117bbb3c5ae' (2026-05-02)
  → 'github:ipetkov/crane/d459c1350e96ce1a7e3859c513ef5e9869d67d6f' (2026-05-03)
• Updated input 'fenix':
    'github:nix-community/fenix/74c1591efaff494756b8d35ebe357c6c2bbdca96' (2026-05-02)
  → 'github:nix-community/fenix/18454832b8f5d6cb33910382defc793dd78306f2' (2026-05-04)
• Updated input 'fenix/rust-analyzer-src':
    'github:rust-lang/rust-analyzer/64cdaeb06f69b6b769a492edd88b022ae88e8ca2' (2026-05-01)
  → 'github:rust-lang/rust-analyzer/f04c37286472e3687a2d32d3d1fad2772de515a1' (2026-05-03)
• Updated input 'home-manager':
    'github:nix-community/home-manager/561bd674646db26ebfccc79b4fbef89f335505db' (2026-05-02)
  → 'github:nix-community/home-manager/a89686d115e970e200eb2caa7603f3673050e00c' (2026-05-04)
• Updated input 'nixcord':
    'github:kaylorben/nixcord/853aa014283c1d3e58df7213c36d3a739cab1b6f' (2026-05-02)
  → 'github:kaylorben/nixcord/8fc35d872fece368a7abffad99097b0daca12659' (2026-05-04)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/2096f3f411ce46e88a79ae4eafcfc9df8ed41c61' (2026-04-23)
  → 'github:NixOS/nixos-hardware/df7783100babf59001340a7a874ba3824e441ecb' (2026-05-04)
• Updated input 'nixpkgs-stable':
    'github:NixOS/nixpkgs/755f5aa91337890c432639c60b6064bb7fe67769' (2026-04-29)
  → 'github:NixOS/nixpkgs/26ef669cffa904b6f6832ab57b77892a37c1a671' (2026-05-01)
• Updated input 'nixpkgs-unstable-small':
    'github:NixOS/nixpkgs/e59d8bfa2cc42b1e1104595ac4292cfedce7f1a4' (2026-05-02)
  → 'github:NixOS/nixpkgs/e7b6ff4aac6041bd0ddb759f59318305c17cf0b8' (2026-05-04)
• Updated input 'stylix':
    'github:danth/stylix/20ff51f523e2dd67e5f31a321719d30708c1b771' (2026-04-30)
  → 'github:danth/stylix/7989a1054b01153212dede6005abfd1576b8328c' (2026-05-03)
• Updated input 'stylix/base16-helix':
    'github:tinted-theming/base16-helix/d646af9b7d14bff08824538164af99d0c521b185' (2025-10-17)
  → 'github:tinted-theming/base16-helix/4d508123037e7851ad36ebf7d9c48b0e9e1eb581' (2026-04-21)
• Updated input 'stylix/firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/179704030c5286c729b5b0522037d1d51341022c' (2026-04-03)
  → 'github:rafaelmardojai/firefox-gnome-theme/0f8ba203d475587f477e7ae12661bd8459e225b7' (2026-04-14)
• Updated input 'stylix/nixpkgs':
    'github:NixOS/nixpkgs/6201e203d09599479a3b3450ed24fa81537ebc4e' (2026-04-01)
  → 'github:NixOS/nixpkgs/1c3fe55ad329cbcb28471bb30f05c9827f724c76' (2026-04-27)
• Updated input 'stylix/nur':
    'github:nix-community/NUR/601971b9c89e0304561977f2c28fa25e73aa7132' (2026-04-03)
  → 'github:nix-community/NUR/5d55af01c0f86be583931fe99207fc56c14134b3' (2026-05-01)
• Updated input 'stylix/tinted-schemes':
    'github:tinted-theming/schemes/13b5b0c299982bb361039601e2d72587d6846294' (2026-03-04)
  → 'github:tinted-theming/schemes/5f868b3a338b6904c47f3833b9c411be641983a8' (2026-04-24)
• Updated input 'stylix/tinted-tmux':
    'github:tinted-theming/tinted-tmux/c3529673a5ab6e1b6830f618c45d9ce1bcdd829d' (2026-03-08)
  → 'github:tinted-theming/tinted-tmux/f798c2dce44ef815bb6b8f05a82135c7942d35ac' (2026-04-26)
• Updated input 'stylix/tinted-zed':
    'github:tinted-theming/base16-zed/b4d3a1b3bcbd090937ef609a0a3b37237af974df' (2026-03-07)
  → 'github:tinted-theming/base16-zed/5768d08ed2e7944a26a958868cdb073cb8856dae' (2026-04-29)
2026-06-20 15:13:38 +02:00
Schrottkatze
51d679170b
remove train stuff bc it's broken anyway 2026-06-20 15:13:38 +02:00
Schrottkatze
c699eacabd
audio? 2026-06-20 13:41:56 +02:00
21 changed files with 244 additions and 159 deletions

35
Cargo.lock generated
View file

@ -689,9 +689,9 @@ dependencies = [
[[package]] [[package]]
name = "niri-ipc" name = "niri-ipc"
version = "25.5.1" version = "26.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc3e165f7854b2f83054a2e8f7024baa49666ad25cdb95b8fb9fd17c48045605" checksum = "6a4adbddf4037ce047854d36a60b5bf80a7990b8db2f0a0b9ede7534b0bae09a"
dependencies = [ dependencies = [
"serde", "serde",
"serde_json", "serde_json",
@ -1028,18 +1028,28 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
[[package]] [[package]]
name = "serde" name = "serde"
version = "1.0.219" version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
dependencies = [
"serde_core",
"serde_derive",
]
[[package]]
name = "serde_core"
version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
dependencies = [ dependencies = [
"serde_derive", "serde_derive",
] ]
[[package]] [[package]]
name = "serde_derive" name = "serde_derive"
version = "1.0.219" version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -1048,14 +1058,15 @@ dependencies = [
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.140" version = "1.0.149"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86"
dependencies = [ dependencies = [
"itoa", "itoa",
"memchr", "memchr",
"ryu",
"serde", "serde",
"serde_core",
"zmij",
] ]
[[package]] [[package]]
@ -1731,3 +1742,9 @@ name = "zeroize"
version = "1.8.1" version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde"
[[package]]
name = "zmij"
version = "1.0.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"

View file

@ -14,7 +14,7 @@ with builtins;
environment = { environment = {
systemPackages = with pkgs; [ systemPackages = with pkgs; [
nixfmt-rfc-style nixfmt
overskride overskride
transmission_4-gtk transmission_4-gtk
@ -22,6 +22,10 @@ with builtins;
gnucobol gnucobol
patchage
musescore
material-maker
intiface-central intiface-central
ausweisapp ausweisapp
@ -36,6 +40,7 @@ with builtins;
iw iw
nodejs nodejs
nautilus nautilus
lixPackageSets.latest.colmena
cmatrix cmatrix
sl sl
@ -85,7 +90,7 @@ with builtins;
nixpkgs-review nixpkgs-review
nix-eval-jobs nix-eval-jobs
nix-fast-build nix-fast-build
colmena # colmena
; ;
}) })
]; ];

160
flake.lock generated
View file

@ -38,11 +38,11 @@
"base16-helix": { "base16-helix": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1760703920, "lastModified": 1776754714,
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=", "narHash": "sha256-E3OAK27smtATTmX45uoTSRsVD+Y+ZiVVfgM/tjpbtYg=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "base16-helix", "repo": "base16-helix",
"rev": "d646af9b7d14bff08824538164af99d0c521b185", "rev": "4d508123037e7851ad36ebf7d9c48b0e9e1eb581",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -70,11 +70,11 @@
}, },
"crane": { "crane": {
"locked": { "locked": {
"lastModified": 1777689689, "lastModified": 1781825982,
"narHash": "sha256-HGdYOOU4j7w5I/Tlve6z/Q/P9cGHZMhSlALlgfikjsU=", "narHash": "sha256-SlXKwIRIhrOSAcTjCB3ftPLzJWZStQIPS7J1FlZPnKk=",
"owner": "ipetkov", "owner": "ipetkov",
"repo": "crane", "repo": "crane",
"rev": "709b316b6ba9424932b33761549e2117bbb3c5ae", "rev": "469fd08d0bcf6926321fa973c6777fbc87785dd7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -106,11 +106,11 @@
"rust-analyzer-src": "rust-analyzer-src" "rust-analyzer-src": "rust-analyzer-src"
}, },
"locked": { "locked": {
"lastModified": 1777708550, "lastModified": 1781947848,
"narHash": "sha256-Qif3UXT0l5OQq8H9pRWt4/ia4gF48MWK2oHKL8uVx8U=", "narHash": "sha256-IergMRaafR+NBhWxgHuSRfsVKKnB7mSiYAsW728RYJM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "fenix", "repo": "fenix",
"rev": "74c1591efaff494756b8d35ebe357c6c2bbdca96", "rev": "ab90d0629159f412313b6bde02bdc346bd9c8b3b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -144,11 +144,11 @@
"firefox-gnome-theme": { "firefox-gnome-theme": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1775176642, "lastModified": 1779670703,
"narHash": "sha256-2veEED0Fg7Fsh81tvVDNYR6SzjqQxa7hbi18Jv4LWpM=", "narHash": "sha256-UdfMivNMwCCqQsYDg5pSz8X2IOaOrIZLIIy+Bg3CO2o=",
"owner": "rafaelmardojai", "owner": "rafaelmardojai",
"repo": "firefox-gnome-theme", "repo": "firefox-gnome-theme",
"rev": "179704030c5286c729b5b0522037d1d51341022c", "rev": "942159e73e40bf785816f7f1f5feed9ef3d7c8f9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -176,11 +176,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1777678872, "lastModified": 1778716662,
"narHash": "sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT+IPhcsukVbgk=", "narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "5250617bffd85403b14dbf43c3870e7f255d2c16", "rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -197,11 +197,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1775087534, "lastModified": 1778716662,
"narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=", "narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b", "rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -268,11 +268,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1777760447, "lastModified": 1781906751,
"narHash": "sha256-6Tq5I0u85ROgesFWvFUrWsJvPtIn51nsPU+EgXAMl/0=", "narHash": "sha256-6Ld1PqmptFtFKblE+SynhRgyBApUWcmrISetWqWHeeo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "561bd674646db26ebfccc79b4fbef89f335505db", "rev": "37f21dfa5d27e71b75bacd9418b156f9265e312e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -289,11 +289,11 @@
"nixpkgs-nixcord": "nixpkgs-nixcord" "nixpkgs-nixcord": "nixpkgs-nixcord"
}, },
"locked": { "locked": {
"lastModified": 1777740049, "lastModified": 1781918107,
"narHash": "sha256-O8rXPZaARIjp4fh20wkeRWeElYbp4Dgp8pKk3Ikkj40=", "narHash": "sha256-Fva6sbK1BiMgi9b+F7zDcBDNUeUlavWpO7hGi27xu4A=",
"owner": "kaylorben", "owner": "kaylorben",
"repo": "nixcord", "repo": "nixcord",
"rev": "853aa014283c1d3e58df7213c36d3a739cab1b6f", "rev": "d9aad20784cb2fe8142f2e934d29e1c722cc71d6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -303,12 +303,15 @@
} }
}, },
"nixos-hardware": { "nixos-hardware": {
"inputs": {
"nixpkgs": "nixpkgs_2"
},
"locked": { "locked": {
"lastModified": 1776983936, "lastModified": 1781622756,
"narHash": "sha256-ZOQyNqSvJ8UdrrqU1p7vaFcdL53idK+LOM8oRWEWh6o=", "narHash": "sha256-JrPh4M6S7aPsEE9tOENuZrxC6o2szSLlK+t4+nLke9s=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "2096f3f411ce46e88a79ae4eafcfc9df8ed41c61", "rev": "08018c72174a4df5657f8d94178ac69fb9c243e5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -318,16 +321,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1777428379, "lastModified": 1780453794,
"narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=", "narHash": "sha256-bXMRa9VTsHSPXL4Cw8R6JJLQeY3Y/IP4+YJCYVmQ7FY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "755f5aa91337890c432639c60b6064bb7fe67769", "rev": "6b316287bae2ee04c9b93c8c858d930fd07d7338",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-25.11", "ref": "nixos-26.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -361,27 +364,27 @@
}, },
"nixpkgs-nixcord": { "nixpkgs-nixcord": {
"locked": { "locked": {
"lastModified": 1777428379, "lastModified": 1780453794,
"narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=", "narHash": "sha256-bXMRa9VTsHSPXL4Cw8R6JJLQeY3Y/IP4+YJCYVmQ7FY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "755f5aa91337890c432639c60b6064bb7fe67769", "rev": "6b316287bae2ee04c9b93c8c858d930fd07d7338",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-25.11", "ref": "nixos-26.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1777428379, "lastModified": 1781509190,
"narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=", "narHash": "sha256-uJZs9Di8I6ciTp6jiojj0HzlNpBkud8ax5aT/O5aJkw=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "755f5aa91337890c432639c60b6064bb7fe67769", "rev": "d6df3513510aa548c83868fd22bfddd0a8c0a0d4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -392,11 +395,11 @@
}, },
"nixpkgs-unstable-small": { "nixpkgs-unstable-small": {
"locked": { "locked": {
"lastModified": 1777718177, "lastModified": 1781836206,
"narHash": "sha256-qq56SczKpUNKcm8xdOsXYLzaX37p1bLS0fFaCMB7s3Y=", "narHash": "sha256-BGjXqZOcLbkjwt8smyUskR8hNl7piTg8ccpQdSTw09s=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e59d8bfa2cc42b1e1104595ac4292cfedce7f1a4", "rev": "d4fea6b6bfce7b55c6df36fb973205b89d7fe761",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -407,11 +410,24 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1777578337, "lastModified": 1767892417,
"narHash": "sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM+Z4=", "narHash": "sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U=",
"rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba",
"type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre924538.3497aa5c9457/nixexprs.tar.xz"
},
"original": {
"type": "tarball",
"url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1781577229,
"narHash": "sha256-lrp67w8AulE9Ks53n27I45ADSzbOCn4H+CNW1Ck8B+8=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "15f4ee454b1dce334612fa6843b3e05cf546efab", "rev": "567a49d1913ce81ac6e9582e3553dd90a955875f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -420,13 +436,13 @@
"type": "indirect" "type": "indirect"
} }
}, },
"nixpkgs_3": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1775036866, "lastModified": 1780243769,
"narHash": "sha256-ZojAnPuCdy657PbTq5V0Y+AHKhZAIwSIT2cb8UgAz/U=", "narHash": "sha256-x5UQuRsH3MqI0U9afaXSNqzTPSeZlRLvFAav2Ux1pNw=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "6201e203d09599479a3b3450ed24fa81537ebc4e", "rev": "331800de5053fcebacf6813adb5db9c9dca22a0c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -436,7 +452,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_4": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1726937504, "lastModified": 1726937504,
"narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=", "narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=",
@ -464,11 +480,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1775228139, "lastModified": 1780281641,
"narHash": "sha256-ebbeHmg+V7w8050bwQOuhmQHoLOEOfqKzM1KgCTexK4=", "narHash": "sha256-M/+hUKoKbHXpV0xGVfELbN1Ds1aoe3pL5p5/t46YhVo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "601971b9c89e0304561977f2c28fa25e73aa7132", "rev": "30f9ae2f04174de63ba8bcf3580ca90843b28a01",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -484,7 +500,7 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"nixcord": "nixcord", "nixcord": "nixcord",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_3",
"nixpkgs-stable": "nixpkgs-stable", "nixpkgs-stable": "nixpkgs-stable",
"nixpkgs-unstable-small": "nixpkgs-unstable-small", "nixpkgs-unstable-small": "nixpkgs-unstable-small",
"stylix": "stylix", "stylix": "stylix",
@ -494,11 +510,11 @@
"rust-analyzer-src": { "rust-analyzer-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1777639980, "lastModified": 1781933682,
"narHash": "sha256-6d7Hdurvbjc5uwJuc0YiK7rZBGj6Gs3uzfBFcTs+xCc=", "narHash": "sha256-ing9gva28bsg0g0dws5/gir/23NoyCX5wzvrRSQDI2I=",
"owner": "rust-lang", "owner": "rust-lang",
"repo": "rust-analyzer", "repo": "rust-analyzer",
"rev": "64cdaeb06f69b6b769a492edd88b022ae88e8ca2", "rev": "501826b6fb2b87d16fb35ffceb3b01f885517320",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -546,7 +562,7 @@
"firefox-gnome-theme": "firefox-gnome-theme", "firefox-gnome-theme": "firefox-gnome-theme",
"flake-parts": "flake-parts_2", "flake-parts": "flake-parts_2",
"gnome-shell": "gnome-shell", "gnome-shell": "gnome-shell",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_4",
"nur": "nur", "nur": "nur",
"systems": "systems", "systems": "systems",
"tinted-kitty": "tinted-kitty", "tinted-kitty": "tinted-kitty",
@ -555,15 +571,15 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1777580129, "lastModified": 1781018772,
"narHash": "sha256-6buSTzDtHYCJP1JNAIZCmgNcOs76oN03j+21CxdijVo=", "narHash": "sha256-C+cGIUaC6dqfwTbI+BwCd572PbESGA3WYxR1sLTqxkY=",
"owner": "danth", "owner": "nix-community",
"repo": "stylix", "repo": "stylix",
"rev": "20ff51f523e2dd67e5f31a321719d30708c1b771", "rev": "a378e4c09031fb15a4d65da88aa628f71fc52f6b",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "danth", "owner": "nix-community",
"repo": "stylix", "repo": "stylix",
"type": "github" "type": "github"
} }
@ -617,11 +633,11 @@
"tinted-schemes": { "tinted-schemes": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1772661346, "lastModified": 1777806186,
"narHash": "sha256-4eu3LqB9tPqe0Vaqxd4wkZiBbthLbpb7llcoE/p5HT0=", "narHash": "sha256-PDF0/wObw4nIsSBeXVYLsloXOiphXCgIdsrNcVXguKs=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "schemes", "repo": "schemes",
"rev": "13b5b0c299982bb361039601e2d72587d6846294", "rev": "0c94645546f4f3ddac77a1a5fce54eb95bf50795",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -633,11 +649,11 @@
"tinted-tmux": { "tinted-tmux": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1772934010, "lastModified": 1778379944,
"narHash": "sha256-x+6+4UvaG+RBRQ6UaX+o6DjEg28u4eqhVRM9kpgJGjQ=", "narHash": "sha256-wPDFzMGSlARlw0Sfsn48Q2+jPSfk6N0Ng6BC/d+7Q24=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "tinted-tmux", "repo": "tinted-tmux",
"rev": "c3529673a5ab6e1b6830f618c45d9ce1bcdd829d", "rev": "fe0203a198690e71a5ff11e08812a4673de3678d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -649,11 +665,11 @@
"tinted-zed": { "tinted-zed": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1772909925, "lastModified": 1778378178,
"narHash": "sha256-jx/5+pgYR0noHa3hk2esin18VMbnPSvWPL5bBjfTIAU=", "narHash": "sha256-OXPXRIQgGwV77HjYRryOHguh4ALX96jkg+tseLkGgHA=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "base16-zed", "repo": "base16-zed",
"rev": "b4d3a1b3bcbd090937ef609a0a3b37237af974df", "rev": "9cd816033ff969415b190722cddf134e78a5665f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -667,7 +683,7 @@
"crane": "crane_2", "crane": "crane_2",
"fenix": "fenix_2", "fenix": "fenix_2",
"flake-parts": "flake-parts_3", "flake-parts": "flake-parts_3",
"nixpkgs": "nixpkgs_4", "nixpkgs": "nixpkgs_5",
"rust-manifest": "rust-manifest", "rust-manifest": "rust-manifest",
"systems": "systems_2" "systems": "systems_2"
}, },

View file

@ -5,7 +5,7 @@
nixpkgs.url = "nixpkgs/nixos-unstable"; nixpkgs.url = "nixpkgs/nixos-unstable";
nixpkgs-stable.url = "nixpkgs/nixos-25.11"; nixpkgs-stable.url = "nixpkgs/nixos-25.11";
nixpkgs-unstable-small.url = "nixpkgs/nixos-unstable-small"; nixpkgs-unstable-small.url = "nixpkgs/nixos-unstable-small";
stylix.url = "github:danth/stylix"; stylix.url = "github:nix-community/stylix";
typst-within.url = "github:schrottkatze/typst"; typst-within.url = "github:schrottkatze/typst";
crane.url = "github:ipetkov/crane"; crane.url = "github:ipetkov/crane";
nixcord.url = "github:kaylorben/nixcord"; nixcord.url = "github:kaylorben/nixcord";
@ -53,7 +53,7 @@
}; };
in in
{ {
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt-rfc-style; formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt;
devShells."x86_64-linux".default = pkgs.mkShell { devShells."x86_64-linux".default = pkgs.mkShell {
buildInputs = [ buildInputs = [
rs-toolchain rs-toolchain

View file

@ -22,7 +22,7 @@
videoEditing = true; videoEditing = true;
}; };
syncthing.enable = true; syncthing.enable = true;
kdeconnect.enable = true; kdeconnect.enable = false;
social.enable = true; social.enable = true;
gaming.enable = true; gaming.enable = true;
}; };

View file

@ -42,9 +42,9 @@ with lib;
magic-wormhole-rs magic-wormhole-rs
# filemanager # filemanager
xfce.thunar thunar
xfce.tumbler tumbler
xfce.thunar-archive-plugin thunar-archive-plugin
file-roller file-roller
# from environment.systemPackages cleanup # from environment.systemPackages cleanup

View file

@ -13,13 +13,13 @@ with lib;
enable = mkEnableOption "Enable KDE connect"; enable = mkEnableOption "Enable KDE connect";
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.kdeconnect.enable = true; programs.kdeconnect.enable = false;
home-manager.users.jade = home-manager.users.jade =
{ pkgs, ... }: { pkgs, ... }:
{ {
services.kdeconnect = { services.kdeconnect = {
enable = true; enable = false;
indicator = true; indicator = false;
}; };
}; };
}; };

View file

@ -14,6 +14,8 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
playerctl playerctl
pulsemixer pulsemixer
wiremix
crosspipe crosspipe
lmms
]; ];
} }

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: { pkgs, config, ... }:
{ {
home.file = { home.file = {
".tridactylrc" = { ".tridactylrc" = {
@ -15,6 +15,8 @@
pkgs.tridactyl-native pkgs.tridactyl-native
]; ];
}; };
configPath = ".mozilla/firefox";
policies = { policies = {
DefaultDownloadDirectory = "\${home}/Downloads"; DefaultDownloadDirectory = "\${home}/Downloads";
Extensions.Install = map (name: "https://addons.mozilla.org/firefox/downloads/latest/${name}") [ Extensions.Install = map (name: "https://addons.mozilla.org/firefox/downloads/latest/${name}") [
@ -172,7 +174,7 @@
} }
]; ];
icon = "https://lib.rs/favicon.png"; icon = "https://lib.rs/favicon.png";
definedAliases = [ "libs" ]; definedAliases = [ "rl" ];
}; };
"gleam packages" = { "gleam packages" = {
urls = [ urls = [
@ -187,7 +189,7 @@
} }
]; ];
icon = "https://packages.gleam.run/static/packages-icon.svg"; icon = "https://packages.gleam.run/static/packages-icon.svg";
definedAliases = [ "libs" ]; definedAliases = [ "gl" ];
}; };
"rust docs" = { "rust docs" = {
urls = [ urls = [

View file

@ -24,7 +24,7 @@
) )
(box (box
:halign "center" :halign "center"
(traveldings) ; (traveldings)
) )
(box (box
:halign "end" :halign "end"
@ -63,15 +63,15 @@
) )
) )
(defwidget iceTacho [] ; (defwidget iceTacho []
(box ; (box
:class "iceTacho" ; :class "iceTacho"
:tooltip "Tz${iceTachoData.tzn} (BR ${iceTachoData.br})" ; :tooltip "Tz${iceTachoData.tzn} (BR ${iceTachoData.br})"
(label :text "${iceTachoData.speed} km/h") ; (label :text "${iceTachoData.speed} km/h")
) ; )
) ; )
(deflisten iceTachoData ; (deflisten iceTachoData
:initial "null" ; :initial "null"
{ "~/.config/eww/scripts/iceTacho.nu" } ; { "~/.config/eww/scripts/iceTacho.nu" }
) ; )

View file

@ -2,6 +2,12 @@
{ {
programs.eww = { programs.eww = {
enable = true; enable = true;
configDir = ./configDir; yuckConfig = null;
scssConfig = null;
};
xdg.configFile."eww" = {
source = ./configDir;
recursive = true;
force = true;
}; };
} }

View file

@ -14,9 +14,23 @@
|> lib.mapAttrsToList (filename: _value: "include \"${./kdl}/${filename}\""); |> lib.mapAttrsToList (filename: _value: "include \"${./kdl}/${filename}\"");
startups = startups =
[ [
[ "eww" "open-many" "topBar" "bottomBar" ] [
[ "${pkgs.swaybg}/bin/swaybg" "-i" "${./wallpaper.jpg}" "-m" "fill" ] "eww"
[ "touch" ".config/niri/live.kdl" ] "open-many"
"topBar"
"bottomBar"
]
[
"${pkgs.swaybg}/bin/swaybg"
"-i"
"${./wallpaper.jpg}"
"-m"
"fill"
]
[
"touch"
".config/niri/live.kdl"
]
] ]
|> map (map (word: "\"${word}\"")) |> map (map (word: "\"${word}\""))
|> map (lib.concatStringsSep " ") |> map (lib.concatStringsSep " ")
@ -24,7 +38,8 @@
other = [ other = [
"include \"live.kdl\"" "include \"live.kdl\""
"output \"eDP-1\" { scale 1.1; }" "output \"eDP-1\" { scale 1.1; }"
"animations { window-open { duration-ms 3000; curve \"linear\"; custom-shader r\"\n${builtins.readFile ./shaders/arc.frag}\";};}" # conflicts with blur
# "animations { window-open { duration-ms 3000; curve \"linear\"; custom-shader r\"\n${builtins.readFile ./shaders/arc.frag}\";};}"
"binds {Mod+Shift+I { spawn \"${./scripts/cpdate.sh}\"; }; }" "binds {Mod+Shift+I { spawn \"${./scripts/cpdate.sh}\"; }; }"
]; ];
in in

View file

@ -1,3 +1,5 @@
prefer-no-csd
cursor { cursor {
xcursor-theme "phinger-cursors-dark" xcursor-theme "phinger-cursors-dark"
xcursor-size 32 xcursor-size 32
@ -80,3 +82,35 @@ layer-rule {
} }
baba-is-float true baba-is-float true
} }
layer-rule {
match namespace="^launcher$"
background-effect {
blur true
xray false
}
opacity 0.8
}
window-rule {
match is-floating=true
draw-border-with-background false
background-effect {
blur true
xray false
}
opacity 0.85
}
window-rule {
match app-id="cool-retro-term."
open-floating true
opacity 1.0
}
blur {
passes 3
offset 4
noise 0.05
saturation 2
}

View file

@ -4,15 +4,9 @@
services.swayidle = { services.swayidle = {
enable = true; enable = true;
events = [ events = {
{ "before-sleep" = "${pkgs.swaylock}/bin/swaylock -fF -c 442244";
event = "before-sleep"; "lock" = "swaylock -c 441144";
command = "${pkgs.swaylock}/bin/swaylock -fF -c 442244"; };
}
{
event = "lock";
command = "swaylock -c 441144";
}
];
}; };
} }

View file

@ -27,7 +27,7 @@
}; };
}; };
home-manager.users.jade = home-manager.users.jade =
{ pkgs, ... }: { config, pkgs, ... }:
{ {
stylix.targets = { stylix.targets = {
firefox = { firefox = {
@ -43,6 +43,7 @@
}; };
gtk = { gtk = {
enable = true; enable = true;
# gtk4.theme = config.gtk.theme;
cursorTheme = { cursorTheme = {
package = pkgs.phinger-cursors; package = pkgs.phinger-cursors;
name = "phinger-cursors"; name = "phinger-cursors";

View file

@ -126,7 +126,7 @@
"discord-presence-lsp" "discord-presence-lsp"
]; ];
formatter = { formatter = {
command = "${pkgs.nixfmt-rfc-style}/bin/nixfmt"; command = "${pkgs.nixfmt}/bin/nixfmt";
args = [ "--quiet" ]; args = [ "--quiet" ];
}; };
auto-format = true; auto-format = true;

View file

@ -1,13 +1,13 @@
{ ... }: { ... }:
{ {
services.xserver.wacom.enable = true; services.xserver.wacom.enable = false;
home-manager.users.jade = home-manager.users.jade =
{ pkgs, ... }: { pkgs, ... }:
{ {
home.packages = [ home.packages = [
# TODO: figure out if the previous enabled option depends on these anyway # TODO: figure out if the previous enabled option depends on these anyway
pkgs.libwacom # pkgs.libwacom
pkgs.kdePackages.wacomtablet # pkgs.kdePackages.wacomtablet
]; ];
}; };
} }

View file

@ -19,15 +19,6 @@
signByDefault = true; signByDefault = true;
}; };
}; };
programs.jujutsu = {
enable = true;
settings = {
user = {
name = config.programs.git.userName;
email = config.programs.git.userEmail;
};
};
};
programs.gitui = { programs.gitui = {
enable = true; enable = true;
keyConfig = '' keyConfig = ''

View file

@ -27,7 +27,7 @@ in
services.kmscon = { services.kmscon = {
enable = true; enable = true;
extraConfig = "font-size=14"; # extraConfig = "font-size=14";
extraOptions = generateOptions { extraOptions = generateOptions {
xkb-layout = config.services.xserver.xkb.layout; xkb-layout = config.services.xserver.xkb.layout;
xkb-variant = config.services.xserver.xkb.variant; xkb-variant = config.services.xserver.xkb.variant;

View file

@ -6,4 +6,4 @@ edition = "2021"
[dependencies] [dependencies]
serde = { version = "1.0.209", features = [ "derive" ] } serde = { version = "1.0.209", features = [ "derive" ] }
serde_json = "1.0.127" serde_json = "1.0.127"
niri-ipc = "25.5.1" niri-ipc = "26.4"

View file

@ -1,5 +1,5 @@
use core::panic; use core::panic;
use std::{collections::HashMap, io::Write}; use std::collections::HashMap;
use niri_ipc::{ use niri_ipc::{
socket::Socket, socket::Socket,
@ -19,18 +19,14 @@ const COLORS: [[&str; 2]; 7] = [
["#cc241d", "#fb4934"], // red ["#cc241d", "#fb4934"], // red
]; ];
const ERR_COLORS: [&str; 2] = ["#ff0000", "#ffff00"];
// tildes because they're at the end of the ascii
const BROKEN_NAME: &str = "~~~~~~~";
fn main() -> Result<(), std::io::Error> { fn main() -> Result<(), std::io::Error> {
let mut state = EventStreamState::default(); let mut state = EventStreamState::default();
let mut sock = Socket::connect()?; let mut sock = Socket::connect()?;
// let mut func = sock.send(Request::EventStream).and_then(|it| match it {
// (Ok(Response::Handled), func) => Ok(func),
// _ => unreachable!(),
// })?;
// let mut func = sock.send(Request::EventStream).and_then(|it| match it {
// Ok(Response::Handled) => {}
// Ok(_) => panic!("???"),
// Err(e) => panic!("e"),
// });
let r = sock.send(Request::EventStream)?; let r = sock.send(Request::EventStream)?;
match r { match r {
Ok(Response::Handled) => {} Ok(Response::Handled) => {}
@ -38,7 +34,7 @@ fn main() -> Result<(), std::io::Error> {
} }
let mut receiver = sock.read_events(); let mut receiver = sock.read_events();
while let Ok(ev) = receiver() { 'outer: while let Ok(ev) = receiver() {
// check only relevant later, only done here to avoid a clone // check only relevant later, only done here to avoid a clone
let ev_is_ws_related = matches!( let ev_is_ws_related = matches!(
&ev, &ev,
@ -55,21 +51,26 @@ fn main() -> Result<(), std::io::Error> {
.workspaces .workspaces
.workspaces .workspaces
.values() .values()
.map(|it| it.clone()) .cloned()
.collect::<Vec<Workspace>>(); .collect::<Vec<Workspace>>();
workspaces.sort_by(|a, b| a.idx.cmp(&b.idx)); workspaces.sort_by_key(|a| a.idx);
workspaces.sort_by(|a, b| { workspaces.sort_by(|a, b| {
a.output a.output
.clone() .clone()
.expect("unreachable") .unwrap_or_else(|| BROKEN_NAME.to_string())
.to_lowercase() .to_lowercase()
.cmp(&b.output.clone().expect("unreachable").to_lowercase()) .cmp(
&b.output
.clone()
.unwrap_or_else(|| BROKEN_NAME.to_string())
.to_lowercase(),
)
}); });
let output_colors_lut = workspaces let output_colors_lut = workspaces
.iter() .iter()
.map(|it| it.output.clone().expect("unreachable")) .map(|it| it.output.clone().unwrap_or_else(|| BROKEN_NAME.to_string()))
.fold(Vec::new(), |mut acc, it| { .fold(Vec::new(), |mut acc, it| {
if !acc.contains(&it) { if !acc.contains(&it) {
acc.push(it); acc.push(it);
@ -92,15 +93,16 @@ fn main() -> Result<(), std::io::Error> {
name, name,
.. ..
}| WsData { }| WsData {
color: output_colors_lut[&output.clone().expect("unreachable")] color: output
[if *is_active { 1 } else { 0 }], .as_ref()
.map(|output| output_colors_lut[output])
.unwrap_or(&ERR_COLORS)[if *is_active { 1 } else { 0 }],
idx: *idx, idx: *idx,
focused: *is_focused, focused: *is_focused,
active: *is_active, active: *is_active,
icon: name.as_ref().map(|name| match name.as_str() { icon: name.as_ref().map(|name| match name.as_str() {
"aaa social" => "󰭹", "social" => "󰭹",
"bbb browser" => "󰈹", "browser" => "󰈹",
"ccc notes" => "󰎚",
&_ => "!", &_ => "!",
}), }),
}, },