From b2db6d28eea5b12b620036e39d62b6513782c8cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Wed, 1 Jul 2026 15:38:52 -0300 Subject: [PATCH 1/9] kde: sync XWayland keyboard layout with KDE --- scripts/default.nix | 7 +++++ scripts/kde-sync-xkbmap | 51 ++++++++++++++++++++++++++++++++++++ user/kde.nix | 5 +++- user/kde/kde-sync-xkbmap.nix | 22 ++++++++++++++++ 4 files changed, 84 insertions(+), 1 deletion(-) create mode 100755 scripts/kde-sync-xkbmap create mode 100644 user/kde/kde-sync-xkbmap.nix diff --git a/scripts/default.nix b/scripts/default.nix index 3ebf1dd..e8e1462 100644 --- a/scripts/default.nix +++ b/scripts/default.nix @@ -146,6 +146,13 @@ xorg.setxkbmap jq ]; + kde-sync-xkbmap = [ + xorg.setxkbmap + dbus + gnugrep + gnused + gawk + ]; print-battery-icon = [ ]; controller-battery = [ print-battery-icon ]; mouse-battery = [ print-battery-icon ]; diff --git a/scripts/kde-sync-xkbmap b/scripts/kde-sync-xkbmap new file mode 100755 index 0000000..40b1858 --- /dev/null +++ b/scripts/kde-sync-xkbmap @@ -0,0 +1,51 @@ +#!/bin/sh + +set -euo pipefail + +get_layout_display_name() { + idx="$1" + dbus-send --session --print-reply --dest=org.kde.keyboard /Layouts org.kde.KeyboardLayouts.getLayoutsList 2>/dev/null \ + | grep 'string "' \ + | sed 's/.*string "\([^"]*\)".*/\1/' \ + | awk -v idx="$idx" 'NR%3==0 { if (c++ == idx) { print; exit } }' +} + +get_layout_index() { + dbus-send --session --print-reply --dest=org.kde.keyboard /Layouts org.kde.KeyboardLayouts.getLayout 2>/dev/null \ + | awk '/uint32/ { print $2; exit }' +} + +LAST_LAYOUT="" + +apply_layout() { + idx="$1" + CURRENT_LAYOUT=$(get_layout_display_name "$idx") + + if test "$LAST_LAYOUT" = "$CURRENT_LAYOUT"; then + return 0 + elif test "$CURRENT_LAYOUT" = "English (Colemak)"; then + echo "Setting layout to colemak" + setxkbmap us colemak + elif test "$CURRENT_LAYOUT" = "Portuguese (Brazil)"; then + echo "Setting layout to br" + setxkbmap br + fi + + LAST_LAYOUT="$CURRENT_LAYOUT" +} + +update_layout() { + INDEX=$(get_layout_index) + apply_layout "$INDEX" +} + +while ! get_layout_index; do + sleep 1s +done +update_layout + +dbus-monitor --session \ + "type='signal',interface='org.kde.KeyboardLayouts',member='layoutChanged',path='/Layouts'" \ + | while read -r line; do + update_layout + done diff --git a/user/kde.nix b/user/kde.nix index 3e647b8..6a19816 100644 --- a/user/kde.nix +++ b/user/kde.nix @@ -4,6 +4,9 @@ config, ... }: -lib.mkIf (config.my.desktop == "kde") { +{ + imports = [ ./kde/kde-sync-xkbmap.nix ]; +} +// lib.mkIf (config.my.desktop == "kde") { services.gpg-agent.pinentry.package = lib.mkForce pkgs.pinentry-qt; } diff --git a/user/kde/kde-sync-xkbmap.nix b/user/kde/kde-sync-xkbmap.nix new file mode 100644 index 0000000..85eb543 --- /dev/null +++ b/user/kde/kde-sync-xkbmap.nix @@ -0,0 +1,22 @@ +{ + config, + pkgs, + lib, + ... +}: +lib.mkIf (config.my.desktop == "kde") { + systemd.user.services.kde-sync-xkbmap = { + Unit = { + Description = "Sync xkbmap with KDE keyboard layout"; + PartOf = [ "plasma-workspace.target" ]; + After = [ "plasma-workspace.target" ]; + }; + Service = { + ExecStart = lib.getExe pkgs.kde-sync-xkbmap; + Restart = "on-failure"; + }; + Install = { + WantedBy = [ "plasma-workspace.target" ]; + }; + }; +} From 1742f732306cd16eedf7571756ae1a2de72e2a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Wed, 1 Jul 2026 16:29:57 -0300 Subject: [PATCH 2/9] update --- flake.lock | 107 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 70 insertions(+), 37 deletions(-) diff --git a/flake.lock b/flake.lock index c452d10..cd26ff6 100644 --- a/flake.lock +++ b/flake.lock @@ -178,11 +178,11 @@ ] }, "locked": { - "lastModified": 1780894562, - "narHash": "sha256-c3430xwxwhHipl3jigUGMMBfpaMylDqytW/kdmB3ZGs=", + "lastModified": 1781152676, + "narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=", "owner": "nix-community", "repo": "disko", - "rev": "24fed06cac83bcc44ac8efbb57cab1a82fa0bedc", + "rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1", "type": "github" }, "original": { @@ -457,11 +457,11 @@ ] }, "locked": { - "lastModified": 1780883961, - "narHash": "sha256-WU6SUrESuPiEXEUvX4D51AgWrXRJty+sLJBwBaDBGqE=", + "lastModified": 1781981105, + "narHash": "sha256-/1nNBbA7PrSQpTc9Qazkhl4kIPg+TNl0CjxS3UQJKlw=", "owner": "nix-community", "repo": "home-manager", - "rev": "4eb4fec41674d5b059aa2eedf0f98453890546fa", + "rev": "7bfff44b465909f69a442701293bc0badcf476dc", "type": "github" }, "original": { @@ -552,6 +552,22 @@ "url": "https://git.lelgenio.com/lelgenio/made-you-look" } }, + "netlinkrb": { + "flake": false, + "locked": { + "lastModified": 1562850306, + "narHash": "sha256-0bXTWUdUDr2XP+bEIfIbxXap8Niva/IoPXTxFeXXImg=", + "owner": "vpsfreecz", + "repo": "netlinkrb", + "rev": "d9de53d843d2586ffa5b7b404887fa801c697ddf", + "type": "github" + }, + "original": { + "owner": "vpsfreecz", + "repo": "netlinkrb", + "type": "github" + } + }, "nix-index-database": { "inputs": { "nixpkgs": [ @@ -559,11 +575,11 @@ ] }, "locked": { - "lastModified": 1780816331, - "narHash": "sha256-0BYqs8yKWkOz2Q7+SP18N5E5gmDKSo6LSxIVIa0wWes=", + "lastModified": 1782636943, + "narHash": "sha256-ripjZa7BBLwL1uS5VJF3s/VpZpWt5ZIQEvkJ/FJNpQw=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "1a2ea89c917781e88508d9fd2b507f2d2a0e173c", + "rev": "058b1f9381fa79fcda49982370a750ff92dbba43", "type": "github" }, "original": { @@ -582,11 +598,11 @@ ] }, "locked": { - "lastModified": 1780704867, - "narHash": "sha256-JuatomIQeXXZhdfEnBid9VoWyh6IfQgTE/FsM94UsRk=", + "lastModified": 1781301671, + "narHash": "sha256-rq6WOopxq3U2AGEWO80o9LIJDYcYIdgw6jyl+y+19w8=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "da29f6cc3d7e15eb7bfdae599918851cbd5ea142", + "rev": "661ec59a97ccee13a63f79280b282eb6f7d3f817", "type": "gitlab" }, "original": { @@ -614,12 +630,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1780749050, - "narHash": "sha256-3av0pIjlOWQ6rDbNOmpUSvbNnJkGORQKKjb4LtCZsIY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a799d3e3886da994fa307f817a6bc705ae538eeb", - "type": "github" + "lastModified": 1782467914, + "narHash": "sha256-inDx/w70OSJoJPqtKh0BrzAsbZZhpya7YgS43jHnhwg=", + "rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", + "type": "tarball", + "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1022855.e73de5be04e0/nixexprs.tar.xz" }, "original": { "id": "nixpkgs", @@ -629,11 +644,11 @@ }, "nixpkgsUnstable": { "locked": { - "lastModified": 1780749050, - "narHash": "sha256-3av0pIjlOWQ6rDbNOmpUSvbNnJkGORQKKjb4LtCZsIY=", + "lastModified": 1782467914, + "narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a799d3e3886da994fa307f817a6bc705ae538eeb", + "rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", "type": "github" }, "original": { @@ -707,12 +722,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1780902259, - "narHash": "sha256-q8yYEC5f1mFlQO9RGna4LTc9QrcvWunX6FYp83munkQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "bd0ff2d3eac24699c3664d5966b9ef36f388e2ca", - "type": "github" + "lastModified": 1782535326, + "narHash": "sha256-r4TA57SL7nvj1R+GY/FCLwFU48w9IixTQlzBTIYkt8E=", + "rev": "714a5f8c4ead6b31148d829288440ed033ccc041", + "type": "tarball", + "url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.3494.714a5f8c4ead/nixexprs.tar.xz" }, "original": { "id": "nixpkgs", @@ -754,11 +768,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1780734595, - "narHash": "sha256-DmTfP92QFYRLOGXlMIE54MAgxSJjDWocl3gRNOu72Os=", + "lastModified": 1782375420, + "narHash": "sha256-wiPYmEuHbJvleW489n6+lamL7JSJg3pcKUYwURU9CkI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9b696460ac78b5ccfc17c854d8c976f20456e943", + "rev": "4062d36ebeae843c750011eef6b61ec9a9dbc9a9", "type": "github" }, "original": { @@ -844,6 +858,23 @@ "youre-wrong": "youre-wrong" } }, + "ruby-lxc": { + "flake": false, + "locked": { + "lastModified": 1780499941, + "narHash": "sha256-guAdOSP9MyCL3BQ1LGXAhcCoXgEU1fUE69d2ATMqUGE=", + "owner": "vpsfreecz", + "repo": "ruby-lxc", + "rev": "004bf35eb90d41ba60b347b5b1e73d868a4f95d9", + "type": "github" + }, + "original": { + "owner": "vpsfreecz", + "ref": "2026-06-03-nixos-26-05-port", + "repo": "ruby-lxc", + "type": "github" + } + }, "rust-analyzer-src": { "flake": false, "locked": { @@ -895,11 +926,11 @@ ] }, "locked": { - "lastModified": 1780547341, - "narHash": "sha256-Gq8KNx5A7hBB3uGJaj6eQfLDIz5YdLu92gqBcvHvoUo=", + "lastModified": 1782165805, + "narHash": "sha256-478kKQBvK6SYTOdN2h9jhKJv94nbXRbFMfuL1WshErg=", "owner": "Mic92", "repo": "sops-nix", - "rev": "9ed65852b6257fbeae4355bc24ecfea307ca759a", + "rev": "56b24064fdcaedca53553b1a6d607fd23b613a24", "type": "github" }, "original": { @@ -1056,15 +1087,17 @@ "vpsadminos": { "inputs": { "impermanence": "impermanence", + "netlinkrb": "netlinkrb", "nixpkgs": "nixpkgs_8", - "nixpkgsUnstable": "nixpkgsUnstable" + "nixpkgsUnstable": "nixpkgsUnstable", + "ruby-lxc": "ruby-lxc" }, "locked": { - "lastModified": 1780902784, - "narHash": "sha256-xqY+ApLpKx8/sVGx6a6Tt1NUqU8FPaNlitR3R396HFo=", + "lastModified": 1782540463, + "narHash": "sha256-OpSw3D1naT34lbIcRSykz2T7JY66ZduL56qfxEoRdXQ=", "owner": "vpsfreecz", "repo": "vpsadminos", - "rev": "a791e6b372bb0fb6c9ffd65383517c140f510f8b", + "rev": "503684bcfbe3e9be442ce5282cdbb22e250b225c", "type": "github" }, "original": { From 96edd9e6db609926d15d227d0a9979c66943f2cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Sun, 12 Jul 2026 23:38:35 -0300 Subject: [PATCH 3/9] patches: remove deluge patch overlay, included in nixpkgs --- overlays/default.nix | 5 ----- 1 file changed, 5 deletions(-) diff --git a/overlays/default.nix b/overlays/default.nix index 01125e3..a7a3073 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -71,11 +71,6 @@ rec { patches = old.patches ++ [ ../patches/sway/fix-hide_cursor-clearing-focus.patch ]; }); }; - deluge = prev.deluge.overrideAttrs (old: { - propagatedBuildInputs = old.propagatedBuildInputs ++ [ - prev.libappindicator-gtk3 - ]; - }); } ); From 37c5a382fd34eaaa219062f9dd1f4e176cff7adf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Mon, 13 Jul 2026 18:36:22 -0300 Subject: [PATCH 4/9] monolith: fix suspend wakeup from kb, disable from mouse --- hosts/monolith/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hosts/monolith/default.nix b/hosts/monolith/default.nix index 0dbc10a..ba480d6 100644 --- a/hosts/monolith/default.nix +++ b/hosts/monolith/default.nix @@ -120,9 +120,14 @@ in virtualisation.virtualbox.host.enable = true; services.udev.extraRules = '' + # Arm all USB root hubs (vendor 1d6b) so any USB device can wake the system. + # Wakeup only fires if the device on the end also has wakeup enabled, so we still + # disable it individually for devices that must NOT wake the system (see below). + ACTION=="add" SUBSYSTEM=="usb" ATTR{idVendor}=="1d6b" ATTR{power/wakeup}="enabled" # Fix broken suspend with Logitech USB dongle + # The mouse/mousepad receiver wakes the system right after suspend, so disable its wakeup. # `lsusb | grep Logitech` will return "vendor:product" - ACTION=="add" SUBSYSTEM=="usb" ATTR{idVendor}=="046d" ATTR{idProduct}=="c547" ATTR{power/wakeup}="disabled" + ACTION=="add" SUBSYSTEM=="usb" ATTR{idVendor}=="046d" ATTR{idProduct}=="c53a" ATTR{power/wakeup}="disabled" # Force all disks to use kyber scheduler # For some reason "noop" is used by default which is kinda bad when io is saturated ACTION=="add|change", KERNEL=="sd[a-z]*[0-9]*|mmcblk[0-9]*p[0-9]*|nvme[0-9]*n[0-9]*p[0-9]*", ATTR{../queue/scheduler}="kyber" From 381e00f4f87374d96ab149541af6c8b6f100b662 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Mon, 13 Jul 2026 18:36:44 -0300 Subject: [PATCH 5/9] factorio: 2.0.76 -> 2.0.77 --- pkgs/factorio-headless/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/factorio-headless/default.nix b/pkgs/factorio-headless/default.nix index 5ed05bb..f510f4e 100644 --- a/pkgs/factorio-headless/default.nix +++ b/pkgs/factorio-headless/default.nix @@ -1,10 +1,10 @@ { factorio-headless, pkgs }: factorio-headless.overrideAttrs (_: rec { - version = "2.0.76"; + version = "2.0.77"; src = pkgs.fetchurl { name = "factorio_headless_x64-${version}.tar.xz"; url = "https://www.factorio.com/get-download/${version}/headless/linux64"; - hash = "sha256-7zZj9mFG12NC98CaP3Q3kmNvjNlcOeomz8pb0uDpJDA="; + hash = "sha256-xO/BFSn3TTfJaTPikeDbc/2fWqRziRPZMBskaAs+lH8="; }; }) From e8e87ba127156ebc9f32fe9990ad2c7f210c8f42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Mon, 13 Jul 2026 18:37:48 -0300 Subject: [PATCH 6/9] scripts: add obs-autostart script to skip safe mode prompt --- scripts/default.nix | 3 +++ scripts/obs-studio-autostart | 6 ++++++ system/media-packages.nix | 1 + 3 files changed, 10 insertions(+) create mode 100755 scripts/obs-studio-autostart diff --git a/scripts/default.nix b/scripts/default.nix index e8e1462..39fe853 100644 --- a/scripts/default.nix +++ b/scripts/default.nix @@ -153,6 +153,9 @@ gnused gawk ]; + obs-studio-autostart = [ + obs-studio + ]; print-battery-icon = [ ]; controller-battery = [ print-battery-icon ]; mouse-battery = [ print-battery-icon ]; diff --git a/scripts/obs-studio-autostart b/scripts/obs-studio-autostart new file mode 100755 index 0000000..6ab23d1 --- /dev/null +++ b/scripts/obs-studio-autostart @@ -0,0 +1,6 @@ +#!/bin/sh + +# The --disable-shutdown-check has been removed apparently +rm -rf "$HOME/.config/obs-studio/.sentinel" + +exec obs --startreplaybuffer "$@" \ No newline at end of file diff --git a/system/media-packages.nix b/system/media-packages.nix index 3f9af01..0f8f58a 100644 --- a/system/media-packages.nix +++ b/system/media-packages.nix @@ -17,6 +17,7 @@ in unstable.yt-dlp ffmpeg obs-studio + obs-studio-autostart imagemagick mpc crosspipe From 234aac2630fc7c6f092b617944327dce52698f4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Mon, 13 Jul 2026 18:39:12 -0300 Subject: [PATCH 7/9] update --- flake.lock | 52 ++++++++++++++++++++++++++-------------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/flake.lock b/flake.lock index cd26ff6..2e45b38 100644 --- a/flake.lock +++ b/flake.lock @@ -457,11 +457,11 @@ ] }, "locked": { - "lastModified": 1781981105, - "narHash": "sha256-/1nNBbA7PrSQpTc9Qazkhl4kIPg+TNl0CjxS3UQJKlw=", + "lastModified": 1783221248, + "narHash": "sha256-ESQnuNHEDChsB4IxoLRhscVahqkDWkTb+qdIz8euYt4=", "owner": "nix-community", "repo": "home-manager", - "rev": "7bfff44b465909f69a442701293bc0badcf476dc", + "rev": "af2beae5f0fae0a4310cc0e6aef2572f56090353", "type": "github" }, "original": { @@ -575,11 +575,11 @@ ] }, "locked": { - "lastModified": 1782636943, - "narHash": "sha256-ripjZa7BBLwL1uS5VJF3s/VpZpWt5ZIQEvkJ/FJNpQw=", + "lastModified": 1783233851, + "narHash": "sha256-jzisD+3wWZPC4QvAsKtYguiGsmlH2SN3Mjx5LWd68Ok=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "058b1f9381fa79fcda49982370a750ff92dbba43", + "rev": "fab14c7b63499d57cb6673d5690168c3ec42b99a", "type": "github" }, "original": { @@ -630,11 +630,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1782467914, - "narHash": "sha256-inDx/w70OSJoJPqtKh0BrzAsbZZhpya7YgS43jHnhwg=", - "rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", + "lastModified": 1783224372, + "narHash": "sha256-FGQ8TfSm9WviNE/fQAWsKs+y4GkX8fU4EScewpw54Y8=", + "rev": "d407951447dcd00442e97087bf374aad70c04cea", "type": "tarball", - "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1022855.e73de5be04e0/nixexprs.tar.xz" + "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1027867.d407951447dc/nixexprs.tar.xz" }, "original": { "id": "nixpkgs", @@ -644,11 +644,11 @@ }, "nixpkgsUnstable": { "locked": { - "lastModified": 1782467914, - "narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=", + "lastModified": 1783224372, + "narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", + "rev": "d407951447dcd00442e97087bf374aad70c04cea", "type": "github" }, "original": { @@ -722,11 +722,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1782535326, - "narHash": "sha256-r4TA57SL7nvj1R+GY/FCLwFU48w9IixTQlzBTIYkt8E=", - "rev": "714a5f8c4ead6b31148d829288440ed033ccc041", + "lastModified": 1783148766, + "narHash": "sha256-H9+N+GFtsbVC8ZniHliChM7ndizxtqVZs6bnGOLM3WQ=", + "rev": "a50de1b7d8a586adc18d2395c19de7d6058e6030", "type": "tarball", - "url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.3494.714a5f8c4ead/nixexprs.tar.xz" + "url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.4193.a50de1b7d8a5/nixexprs.tar.xz" }, "original": { "id": "nixpkgs", @@ -768,11 +768,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1782375420, - "narHash": "sha256-wiPYmEuHbJvleW489n6+lamL7JSJg3pcKUYwURU9CkI=", + "lastModified": 1783148766, + "narHash": "sha256-uslt2pqShTIXDdAHRHv2QkYLsVdY8Oqwz0EA48/RSM8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4062d36ebeae843c750011eef6b61ec9a9dbc9a9", + "rev": "a50de1b7d8a586adc18d2395c19de7d6058e6030", "type": "github" }, "original": { @@ -926,11 +926,11 @@ ] }, "locked": { - "lastModified": 1782165805, - "narHash": "sha256-478kKQBvK6SYTOdN2h9jhKJv94nbXRbFMfuL1WshErg=", + "lastModified": 1783174389, + "narHash": "sha256-aCWC8ngycU7OdJrU2+Je3qf+1a2ykuBvpPhZT/9tXMc=", "owner": "Mic92", "repo": "sops-nix", - "rev": "56b24064fdcaedca53553b1a6d607fd23b613a24", + "rev": "f1406619a3884cd5c47992a70b8b35c9c0fcb4c9", "type": "github" }, "original": { @@ -1093,11 +1093,11 @@ "ruby-lxc": "ruby-lxc" }, "locked": { - "lastModified": 1782540463, - "narHash": "sha256-OpSw3D1naT34lbIcRSykz2T7JY66ZduL56qfxEoRdXQ=", + "lastModified": 1783331081, + "narHash": "sha256-sJS1tI/SqjOGBm/8RqEIi7M/rSFVtzTIshYdZYmPqWA=", "owner": "vpsfreecz", "repo": "vpsadminos", - "rev": "503684bcfbe3e9be442ce5282cdbb22e250b225c", + "rev": "849282e6be436743a47fb0e592041e6fba9ad41f", "type": "github" }, "original": { From df1efe0481965c0556eda36da04af079ca364664 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Mon, 13 Jul 2026 18:39:36 -0300 Subject: [PATCH 8/9] monolith: pin kernel 7.1 --- hosts/monolith/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hosts/monolith/default.nix b/hosts/monolith/default.nix index ba480d6..868ba1c 100644 --- a/hosts/monolith/default.nix +++ b/hosts/monolith/default.nix @@ -63,6 +63,8 @@ in "zenpower" ]; + boot.kernelPackages = pkgs.linuxPackages_7_1; + systemd.sleep.settings.Sleep = { HibernateDelaySec = "30s"; SuspendState = "mem"; From 45c2ea8b1e040a7de15be09a3b42b96f38927773 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Eug=C3=AAnio?= Date: Tue, 28 Jul 2026 20:09:05 -0300 Subject: [PATCH 9/9] firefox: add pass ff extension --- user/firefox.nix | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/user/firefox.nix b/user/firefox.nix index 5c7a712..9622270 100644 --- a/user/firefox.nix +++ b/user/firefox.nix @@ -12,6 +12,12 @@ let requireSigning = false; allowAddonSideload = true; }; + + passff-host-patched = ( + pkgs.passff-host.override { + pass = config.programs.password-store.package; + } + ); in { config = { @@ -19,6 +25,9 @@ in enable = true; configPath = ".mozilla/firefox"; package = pkgs.wrapFirefox bugfixedFirefox { + nativeMessagingHosts = with pkgs; [ + passff-host-patched + ]; nixExtensions = [ (pkgs.fetchFirefoxAddon { name = "darkreader"; @@ -37,8 +46,8 @@ in # }) (pkgs.fetchFirefoxAddon { name = "ublock-origin"; - url = "https://addons.mozilla.org/firefox/downloads/file/4492375/ublock_origin-1.64.0.xpi"; - hash = "sha256-ueHIaL0awd78q/LgF3bRqQ7/ujSwf+aiE1DUXwIuDp8="; + url = "https://addons.mozilla.org/firefox/downloads/file/4888680/ublock_origin-1.72.2.xpi"; + hash = "sha256-QMMVsNp4cYaBVez656UKWN+gkgrr2GXgCCFJhvG3xXg="; }) (pkgs.fetchFirefoxAddon { name = "user_agent_string_switcher"; @@ -63,6 +72,12 @@ in url = "https://addons.mozilla.org/firefox/downloads/file/4191523/vimium_ff-2.0.6.xpi"; hash = "sha256-lKLX6IWWtliRdH1Ig33rVEB4DVfbeuMw0dfUPV/mSSI="; }) + (pkgs.fetchFirefoxAddon { + name = "passff"; + fixedExtid = "passff@invicem.pro"; # Needed for native messaging host to work + url = "https://addons.mozilla.org/firefox/downloads/file/4591422/passff-1.23.xpi"; + hash = "sha256-aW09mXNdq845jwJdFTH0K83bhvgcKfS8eyQml5FVAds="; + }) (pkgs.fetchFirefoxAddon { name = "unhook"; url = "https://addons.mozilla.org/firefox/downloads/file/4263531/youtube_recommended_videos-1.6.7.xpi"; @@ -151,6 +166,7 @@ in home.packages = with pkgs; [ nix-prefetch-firefox-extension + passff-host-patched ]; wayland.windowManager.sway = {