# Make user apps the only thing systemd-oomd is allowed to kill. # # Hyprland runs in session.slice, as wayland-wm@hyprland.desktop.service, while # everything launched through uwsm-app lands in app.slice/app-*.scope. Marking # only app.slice as a kill candidate means the compositor is structurally # ineligible: oomd takes the browser or terminal that caused the pressure, and # the session survives to show the notification about it. Setting this on # user@.service instead would put the compositor back in the candidate pool. # # Swap kill is a backstop for the slower shape of the same problem, where swap # fills before pressure spikes. It uses the global SwapUsedLimit (90%) from # /etc/systemd/oomd.conf.d/10-omarchy.conf, which also carries the pressure # thresholds. [Slice] ManagedOOMMemoryPressure=kill ManagedOOMSwap=kill