diff --git a/roles/common/files/zram-generator.conf b/roles/common/files/zram-generator.conf
new file mode 100644
index 0000000000000000000000000000000000000000..507a0c47a23c2091d7a97472c6ff5f6c79bba784
--- /dev/null
+++ b/roles/common/files/zram-generator.conf
@@ -0,0 +1 @@
+[zram0]
diff --git a/roles/common/files/zram-swap.conf b/roles/common/files/zram-swap.conf
deleted file mode 100644
index cc79bc1395c44f331d2971c1a777ec705ba2741b..0000000000000000000000000000000000000000
--- a/roles/common/files/zram-swap.conf
+++ /dev/null
@@ -1,35 +0,0 @@
-#  This file is part of systemd-swap.
-#
-# Entries in this file show the systemd-swap defaults as
-# specified in /usr/share/systemd-swap/swap-default.conf
-# You can change settings by editing this file.
-# Defaults can be restored by simply deleting this file.
-#
-# See swap.conf(5) and /usr/share/systemd-swap/swap-default.conf for details.
-
-zswap_enabled=0
-#zswap_compressor=zstd
-#zswap_max_pool_percent=25
-#zswap_zpool=z3fold
-zram_enabled=1
-#zram_size=$(( RAM_SIZE / 4 ))
-zram_count=1
-#zram_streams=${NCPU}
-#zram_alg=zstd
-#zram_prio=32767
-#swapfc_enabled=0
-#swapfc_force_use_loop=0
-#swapfc_frequency=1
-#swapfc_chunk_size=256M
-#swapfc_max_count=32
-#swapfc_min_count=0
-#swapfc_free_ram_perc=35
-#swapfc_free_swap_perc=15
-#swapfc_remove_free_swap_perc=55
-#swapfc_priority=50
-#swapfc_path=/var/lib/systemd-swap/swapfc/
-#swapfc_nocow=1
-#swapfc_directio=1
-#swapfc_force_preallocated=0
-#swapd_auto_swapon=1
-#swapd_prio=1024
diff --git a/roles/common/handlers/main.yml b/roles/common/handlers/main.yml
index 05f2bdef9ba11e039e59b2be76f0ab82447fa67d..d4bc10407da45d2093992c506331ab3648a386eb 100644
--- a/roles/common/handlers/main.yml
+++ b/roles/common/handlers/main.yml
@@ -19,5 +19,5 @@
 - name: restart syslog-ng
   service: name=syslog-ng@default state=restarted
 
-- name: restart systemd-swap
-  service: name=systemd-swap state=restarted
+- name: restart swap.target
+  service: name=swap.target state=restarted daemon_reload=yes
diff --git a/roles/common/tasks/main.yml b/roles/common/tasks/main.yml
index 07c64e49d4320ddde180ee29e58f685be64a5e77..53c02fc49da09965aa7bdc25de3859891364f48b 100644
--- a/roles/common/tasks/main.yml
+++ b/roles/common/tasks/main.yml
@@ -131,18 +131,14 @@
   notify:
     - systemd daemon-reload
 
-- name: install systemd-swap
-  pacman: name=systemd-swap state=present
+- name: install zram-generator
+  pacman: name=zram-generator state=present
   when: enable_zram_swap
 
-- name: install systemd-swap config for zram
-  copy: src=zram-swap.conf dest=/etc/systemd/swap.conf owner=root group=root mode=0644
+- name: install zram-generator config for zram
+  copy: src=zram-generator.conf dest=/etc/systemd/zram-generator.conf owner=root group=root mode=0644
   notify:
-    - restart systemd-swap
-  when: enable_zram_swap
-
-- name: start systemd-swap
-  service: name=systemd-swap state=started enabled=yes
+    - restart swap.target
   when: enable_zram_swap
 
 - name: start systemd-oomd