From 9d6cc4b9349aa4a8757f34a3964c7b3b1a553ea0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9ana=20=E6=B1=9F?= Date: Mon, 24 Nov 2025 12:25:23 +0800 Subject: [PATCH 1/7] vanadium/xmonad: don't copy dialog to all --- nix/configurations/vanadium/home/xmonad/xmonad.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nix/configurations/vanadium/home/xmonad/xmonad.hs b/nix/configurations/vanadium/home/xmonad/xmonad.hs index e2867807..cbce62bb 100644 --- a/nix/configurations/vanadium/home/xmonad/xmonad.hs +++ b/nix/configurations/vanadium/home/xmonad/xmonad.hs @@ -168,7 +168,7 @@ myManageHook = , isNautilus <||> isSioyek --> insertPosition End Older , isUtility --> doIgnore - , isDialog --> doF copyToAll <> customFloating centeredFloat + , isDialog --> customFloating centeredFloat , isEvolutionComposer --> customFloating centeredFloat ] <> namedScratchpadManageHook myScratchpads From 20bd1bc6fedf210d20e32c6b69eb3c272d0b5b1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9ana=20=E6=B1=9F?= Date: Mon, 24 Nov 2025 12:47:12 +0800 Subject: [PATCH 2/7] npins/fcitx5-table-extra: fix pin Related: https://discourse.nixos.org/t/nixos-rebuild-and-nix-flake-check-fails-error-program-git-failed-with-exit-code-128/64775/6 I don't know why this happened so I just updated the pin. --- npins/sources.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/npins/sources.json b/npins/sources.json index ae589196..a1bb31dc 100644 --- a/npins/sources.json +++ b/npins/sources.json @@ -71,9 +71,9 @@ }, "branch": "taiwanese", "submodules": true, - "revision": "48a7a51516302e070479156b54d2911ba9fbfce8", + "revision": "cba16e03fd43b1ee8a15d20e14ecf0fb1c6762fa", "url": null, - "hash": "07d2mzjnggbxlpqarcj65xdndkqxcab38lkbbqh65cyfqzqahdg0", + "hash": "0ryb3cng4py2zrm95p5ial9w13p7w4ws0bl0lddrij1sq42kzg8l", "frozen": true }, "flake-compat": { From 412480f14ccfb57c7884ed5343be3962d196f7a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9ana=20=E6=B1=9F?= Date: Mon, 24 Nov 2025 12:50:54 +0800 Subject: [PATCH 3/7] vanadium: enable earlyoom --- nix/configurations/vanadium/nixos/programs.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nix/configurations/vanadium/nixos/programs.nix b/nix/configurations/vanadium/nixos/programs.nix index 0fbaf33c..74d4be3e 100644 --- a/nix/configurations/vanadium/nixos/programs.nix +++ b/nix/configurations/vanadium/nixos/programs.nix @@ -49,6 +49,9 @@ services.gnome.gnome-keyring.enable = true; services = { + # Since we don't have a lot of swap, we make sure we kill the processes and not halt the machine + earlyoom.enable = true; + postgresql = { enable = true; authentication = lib.mkOverride 10 '' From c72ef76b20fadb07ab178a99a3e39abf5a93b8a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9ana=20=E6=B1=9F?= Date: Mon, 24 Nov 2025 13:40:01 +0800 Subject: [PATCH 4/7] vanadium/xmonad: fix overlapping manage hooks --- nix/configurations/vanadium/home/xmonad/xmonad.hs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/nix/configurations/vanadium/home/xmonad/xmonad.hs b/nix/configurations/vanadium/home/xmonad/xmonad.hs index cbce62bb..8a378a9a 100644 --- a/nix/configurations/vanadium/home/xmonad/xmonad.hs +++ b/nix/configurations/vanadium/home/xmonad/xmonad.hs @@ -159,19 +159,22 @@ myManageHook = , isPavucontrol --> customFloating centeredFloat , isFeh --> doF copyToAll <> customFloating buttomRightFloat , isMinder --> customFloating centeredFloat - , isFirefoxPip --> doF copyToAll <> customFloating buttomRightFloat , isDiscord --> doShift chatWS , isEvolution --> doShift chatWS , isSignal --> doShift chatWS , isFirefox --> insertPosition Master Newer , isKitty --> insertPosition Below Newer , isNautilus <||> isSioyek --> insertPosition End Older - - , isUtility --> doIgnore - , isDialog --> customFloating centeredFloat - , isEvolutionComposer --> customFloating centeredFloat ] - <> namedScratchpadManageHook myScratchpads + -- Note: some rules here are overlapping, the first one will take the precedence (composeOne) + -- e.g. firefoxpip is a utility window + <> composeOne + [ isFirefoxPip -?> doF copyToAll <> customFloating buttomRightFloat + , isUtility -?> doIgnore + , isDialog -?> customFloating centeredFloat + , isEvolutionComposer -?> customFloating centeredFloat + ] + <> namedScratchpadManageHook myScratchpads -- TODO: is there a way to always open certain sites in new windows in firefox? -- TODO: stop full screen when move happens From cc13b4d51ede50f003c9bac8138604131b318ade Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9ana=20=E6=B1=9F?= Date: Mon, 24 Nov 2025 13:40:47 +0800 Subject: [PATCH 5/7] Revert "vanadium/xmonad: use sift instead of swap" This reverts commit 9f080c070752092b366eb6ba25901d554c0ef062. --- nix/configurations/vanadium/home/xmonad/xmonad.hs | 5 ----- 1 file changed, 5 deletions(-) diff --git a/nix/configurations/vanadium/home/xmonad/xmonad.hs b/nix/configurations/vanadium/home/xmonad/xmonad.hs index 8a378a9a..a41e765d 100644 --- a/nix/configurations/vanadium/home/xmonad/xmonad.hs +++ b/nix/configurations/vanadium/home/xmonad/xmonad.hs @@ -2,7 +2,6 @@ import XMonad import XMonad.Actions.CopyWindow -import XMonad.Actions.Sift import XMonad.Actions.Submap import XMonad.Actions.SwapWorkspaces import XMonad.Hooks.DynamicLog @@ -267,10 +266,6 @@ keybinds = -- Toggle fullscreen , ((superMask, xK_Escape), sendMessage NextLayout) - -- Sift instead of swap - , ((superMask .|. shiftMask, xK_j), windows siftDown) - , ((superMask .|. shiftMask, xK_k), windows siftUp ) - -- Resize windows , ((superMask, xK_equal ), sendMessage $ IncMasterN 1) , ((superMask, xK_minus ), sendMessage $ IncMasterN -1) From a57af732e94580f7f0e7f25f11a45b85631e0869 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9ana=20=E6=B1=9F?= Date: Mon, 24 Nov 2025 17:14:22 +0800 Subject: [PATCH 6/7] doc: update readme --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e89685ac..949f6b2f 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,10 @@ This repo is managed with Nix + GNU stow nixos-generate-config --no-filesystems --root /mnt --dir . # disko will take care of the file system configuration # put the generated config in the right path and import it - nixos-install --flake .dotfiles# + # We do -j 1 because otherwise the kernel or the fonts might use too much + # memory at the same time and the system will kaput + nixos-install --flake .dotfiles# -j 1 + # profit ``` From b3c6744da5d18d742d31462b25ef9b463e677fe6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9ana=20=E6=B1=9F?= Date: Mon, 24 Nov 2025 17:15:51 +0800 Subject: [PATCH 7/7] installer: enable earlyoom --- nix/configurations/installer.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nix/configurations/installer.nix b/nix/configurations/installer.nix index c821744a..e77b99ad 100644 --- a/nix/configurations/installer.nix +++ b/nix/configurations/installer.nix @@ -70,4 +70,8 @@ boot.extraModprobeConfig = '' options cfg80211 ieee80211_regdom="US" ''; + + # If we run out of memory during building, the machine would hang, and that sucks. + # Nothing worse than restarting the installation from scratch + services.earlyoom.enable = true; }