[packages/earlyoom] Up to 1.9.0

arekm arekm at pld-linux.org
Mon Sep 14 16:29:11 CEST 2026


commit 93dbf93f8a9b3b7e3cbdf679f6955cc3e258f985
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Mon Sep 14 16:27:37 2026 +0200

    Up to 1.9.0

 earlyoom.conf      |  7 +++++--
 earlyoom.init      |  6 ++----
 earlyoom.logrotate |  1 -
 earlyoom.spec      | 21 +++++++++++++++------
 4 files changed, 22 insertions(+), 13 deletions(-)
---
diff --git a/earlyoom.spec b/earlyoom.spec
index c8f3015..bc7deac 100644
--- a/earlyoom.spec
+++ b/earlyoom.spec
@@ -1,16 +1,18 @@
 Summary:	Early OOM Daemon for Linux
 Name:		earlyoom
-Version:	1.7
-Release:	3
+Version:	1.9.0
+Release:	1
 License:	MIT
 URL:		https://github.com/rfjakob/earlyoom
 Source0:	https://github.com/rfjakob/earlyoom/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5:	9c567930c60b2ccdc536951b005d413d
+# Source0-md5:	ce0cfaca4b8563140a9b64a19f255ed0
 Source1:	%{name}.conf
 Source2:	%{name}.init
 Source3:	%{name}.logrotate
 BuildRequires:	pandoc
 Requires(post,preun):	/sbin/chkconfig
+Requires(post,preun,postun):	systemd-units
+Requires:	rc-scripts
 Requires:	systemd-units
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -29,9 +31,15 @@ sed -i -e '/systemctl/d' Makefile
 sed -i -e 's#/default/#/sysconfig/#g' Makefile earlyoom.service.in
 
 %build
+# flags go through the environment: the Makefile appends -DVERSION and
+# -std=gnu99 with +=, which a make command line assignment would discard
+CPPFLAGS="%{rpmcppflags}" \
+CFLAGS="%{rpmcflags}" \
+LDFLAGS="%{rpmldflags}" \
 %{__make} \
+	CC="%{__cc}" \
 	VERSION=%{version} \
-	BINDIR=/bin \
+	BINDIR=%{_bindir} \
 	PREFIX=%{_prefix} \
 	SYSCONFDIR=%{_sysconfdir} \
 	SYSTEMDUNITDIR=%{systemdunitdir}
@@ -43,8 +51,9 @@ install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d}
 install -d $RPM_BUILD_ROOT/var/log
 
 %{__make} install \
+	VERSION=%{version} \
 	PREFIX=%{_prefix} \
-	BINDIR=/bin \
+	BINDIR=%{_bindir} \
 	SYSCONFDIR=%{_sysconfdir} \
 	SYSTEMDUNITDIR=%{systemdunitdir} \
 	DESTDIR=$RPM_BUILD_ROOT
@@ -81,5 +90,5 @@ fi
 %{systemdunitdir}/%{name}.service
 %{_mandir}/man1/%{name}.*
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
-%ghost %{_var}/log/%{name}.log
+%attr(640,root,root) %ghost %{_var}/log/%{name}.log
 
diff --git a/earlyoom.conf b/earlyoom.conf
index 1f7eb86..c1a1bc2 100644
--- a/earlyoom.conf
+++ b/earlyoom.conf
@@ -1,6 +1,9 @@
-# These default settings were approved by the Fedora Workstation SIG:
+# Desktop part of the avoid list comes from the Fedora Workstation SIG:
 # https://pagure.io/fedora-workstation/issue/119
+# poldek, rpm: killing the package manager mid-transaction corrupts the rpm database
+# sshd, sshd-session: on a headless machine this is the only way back in
+# Names are matched against /proc/pid/comm, which is truncated to 15 bytes.
 
-EARLYOOM_ARGS="-r 0 -m 4 -M 409600 --prefer '^(Web Content|Isolated Web Co)$' --avoid '^(dnf|packagekitd|gnome-shell|gnome-session-c|gnome-session-b|lightdm|sddm|sddm-helper|gdm|gdm-wayland-ses|gdm-session-wor|gdm-x-session|Xorg|Xwayland|systemd|systemd-logind|dbus-daemon|dbus-broker|cinnamon|cinnamon-sessio|kwin_x11|kwin_wayland|plasmashell|ksmserver|plasma_session|startplasma-way|xfce4-session|mate-session|marco|lxqt-session|openbox|cryptsetup)$'"
+EARLYOOM_ARGS="-r 0 -m 4 -M 1048576 --prefer '^(Web Content|Isolated Web Co)$' --avoid '^(poldek|rpm|sshd|sshd-session|gnome-shell|gnome-session-c|gnome-session-b|lightdm|sddm|sddm-helper|gdm|gdm-wayland-ses|gdm-session-wor|gdm-x-session|Xorg|Xwayland|systemd|systemd-logind|dbus-daemon|dbus-broker|cinnamon|cinnamon-sessio|kwin_x11|kwin_wayland|plasmashell|ksmserver|plasma_session|startplasma-way|xfce4-session|mate-session|marco|lxqt-session|openbox|cryptsetup)$'"
 
 # More documentation at `man earlyoom` or `earlyoom -h`.
diff --git a/earlyoom.init b/earlyoom.init
index 64ff5d7..3765102 100644
--- a/earlyoom.init
+++ b/earlyoom.init
@@ -8,7 +8,6 @@
 #
 # processname:	earlyoom
 # config:       /etc/sysconfig/earlyoom
-# pidfile:      /var/run/earlyoom.pid
 #
 
 # Source function library
@@ -17,8 +16,6 @@
 # Get service config - may override defaults
 [ -f /etc/sysconfig/earlyoom ] && . /etc/sysconfig/earlyoom
 
-pidfile="/var/run/earlyoom.pid"
-
 start() {
 	# Check if the service is already running?
 	if [ -f /var/lock/subsys/earlyoom ]; then
@@ -27,7 +24,8 @@ start() {
 	fi
 
 	msg_starting "earlyoom"
-	start-stop-daemon --start --quiet --background --pidfile /var/log/earlyoom --exec /bin/sh -- -c "exec /usr/bin/earlyoom $EARLYOOM_ARGS 2>> \"/var/log/earlyoom.log\"" && ok || fail
+	# umask 027: the log records names and uids of killed processes
+	start-stop-daemon --start --quiet --background --exec /bin/sh -- -c "umask 027; exec /usr/bin/earlyoom $EARLYOOM_ARGS 2>> \"/var/log/earlyoom.log\"" && ok || fail
 	RETVAL=$?
 	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/earlyoom
 }
diff --git a/earlyoom.logrotate b/earlyoom.logrotate
index caebcb5..ae94b1d 100644
--- a/earlyoom.logrotate
+++ b/earlyoom.logrotate
@@ -1,5 +1,4 @@
 /var/log/earlyoom.log
 {
-    create 0640 root root
     copytruncate
 }
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/earlyoom.git/commitdiff/93dbf93f8a9b3b7e3cbdf679f6955cc3e258f985



More information about the pld-cvs-commit mailing list