

I was using flakes. I gave the reason why it’s data intensive. If a core dependency like glibc is updated, it’s hash will change and all packages that depend on it need to be rebuilt and rehashed. It’ll download all packages again even though there’s minimal change.
Zram usually has a very high compression ratio - around 4:1 for lz4 and 6:1 for zstd. You can set zram to 40-50 GB. It will still use less than 1/2 of your ram.
Zram has an option to write poorly compressible data to the disk instead of storing it in the ram. I would split the swap partition - 3 GB for zram writeback and rest for ordinary swap.