summaryrefslogtreecommitdiff
path: root/config-mgmt-swap.PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'config-mgmt-swap.PKGBUILD')
-rw-r--r--config-mgmt-swap.PKGBUILD30
1 files changed, 30 insertions, 0 deletions
diff --git a/config-mgmt-swap.PKGBUILD b/config-mgmt-swap.PKGBUILD
new file mode 100644
index 0000000..6d0492b
--- /dev/null
+++ b/config-mgmt-swap.PKGBUILD
@@ -0,0 +1,30 @@
+. ${BUILDFILE%/*}/common.sh
+pkgver=20170204
+
+package() {
+preamble
+
+depends=(systemd-swap)
+
+add-file -m755 usr/share/holo/files/10-"$pkgname"/etc/systemd/swap.conf.holoscript <<EOF
+#!/bin/sh
+sed '
+ s/^# Zswap$/& (compress pages on disk)/
+ /zswap_zspool=z3fold/ {
+ a# The systemd-swap default '\''z3fold'\'' was added in Linux 4.7; because we
+ a# are running an -lts kernel, we'\''re still on 4.4, so we fall back to
+ a# zbud.
+ azswap_zpool=zbud
+ }
+
+ /^# ZRam/s/.*/& (compress pages in RAM)/
+ s/zram_enabled=.*/zram_enabled=1/
+
+ s/swapfc_enabled=.*/swapfc_enabled=1/
+' | awk '\$0==""||!x[\$0]++'
+EOF
+
+add-unit etc/systemd/system/local-fs.target.wants/systemd-swap.service
+
+postamble
+}