aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-04-21 01:24:55 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-04-21 01:24:55 +0100
commit964269520a9c438f63a8f314e308b3fea5f0772c (patch)
tree35559ee94ab2eaffa19bfc304e22903fffb27c2e
parent1a19bec22a45a4ca92e1ef4637b8e55286df0585 (diff)
downloaddotfiles-964269520a9c438f63a8f314e308b3fea5f0772c.tar.gz
dotfiles-964269520a9c438f63a8f314e308b3fea5f0772c.tar.bz2
dotfiles-964269520a9c438f63a8f314e308b3fea5f0772c.zip
system: add zram swap via zram-generator
Cap at 8 GiB, zstd compression. Tune VM for RAM-backed swap: high swappiness, no read-ahead clustering.
-rw-r--r--etc/sysctl.d/99-zram.conf4
-rw-r--r--etc/systemd/zram-generator.conf4
-rw-r--r--meta/base.txt1
3 files changed, 9 insertions, 0 deletions
diff --git a/etc/sysctl.d/99-zram.conf b/etc/sysctl.d/99-zram.conf
new file mode 100644
index 0000000..daa302c
--- /dev/null
+++ b/etc/sysctl.d/99-zram.conf
@@ -0,0 +1,4 @@
+vm.swappiness = 180
+vm.watermark_boost_factor = 0
+vm.watermark_scale_factor = 125
+vm.page-cluster = 0
diff --git a/etc/systemd/zram-generator.conf b/etc/systemd/zram-generator.conf
new file mode 100644
index 0000000..c6e112e
--- /dev/null
+++ b/etc/systemd/zram-generator.conf
@@ -0,0 +1,4 @@
+[zram0]
+zram-size = min(ram / 2, 8192)
+compression-algorithm = zstd
+swap-priority = 100
diff --git a/meta/base.txt b/meta/base.txt
index 4b81ee2..6444244 100644
--- a/meta/base.txt
+++ b/meta/base.txt
@@ -61,3 +61,4 @@ zsh-autosuggestions
zsh-completions
zsh-history-substring-search
zsh-syntax-highlighting
+zram-generator