diff --git a/Makefile b/Makefile index 7df7c20..23701e6 100644 --- a/Makefile +++ b/Makefile @@ -77,6 +77,22 @@ build_deb: base units install: base units chcon daemon-reload +openrc: + install -d $(DESTDIR)$(SYSCONFDIR)/init.d + -sed "s|:TARGET_SBINDIR:|$(SBINDIR)|g;s|:TARGET_SYSCONFDIR:|$(SYSCONFDIR)|g" nohang/openrc/nohang.in > nohang/openrc/nohang + -sed "s|:TARGET_SBINDIR:|$(SBINDIR)|g;s|:TARGET_SYSCONFDIR:|$(SYSCONFDIR)|g" nohang/openrc/nohang-desktop.in > nohang/openrc/nohang-desktop + install -m0775 nohang/openrc/nohang $(DESTDIR)$(SYSCONFDIR)/init.d/nohang + install -m0775 nohang/openrc/nohang-desktop $(DESTDIR)$(SYSCONFDIR)/init.d/nohang-desktop + +install-openrc: base openrc + +uninstall-openrc: uninstall + # 'make uninstall-openrc' must not fail with error if openrc is unavailable or returns error + -rc-service nohang-desktop stop || true + -rc-service nohang stop || true + -rm -fv /etc/init.d/nohang-desktop + -rm -fv /etc/init.d/nohang + uninstall-base: rm -fv $(DESTDIR)$(SBINDIR)/nohang rm -fv $(DESTDIR)$(BINDIR)/oom-sort @@ -101,4 +117,4 @@ uninstall-units: -rm -fv $(DESTDIR)$(SYSTEMDUNITDIR)/nohang.service -rm -fv $(DESTDIR)$(SYSTEMDUNITDIR)/nohang-desktop.service -uninstall: uninstall-base uninstall-units daemon-reload +uninstall: uninstall-base uninstall-units daemon-reload uninstall-openrc diff --git a/nohang/openrc/nohang-desktop.in b/nohang/openrc/nohang-desktop.in new file mode 100755 index 0000000..5747464 --- /dev/null +++ b/nohang/openrc/nohang-desktop.in @@ -0,0 +1,8 @@ +#!/sbin/openrc-run + +name="nohang-desktop daemon" +description="Sophisticated low memory handler" +command=:TARGET_SBINDIR:/nohang +command_args="--monitor --config :TARGET_SYSCONFDIR:/nohang/nohang-desktop.conf" +pidfile="/var/run/nohang-desktop" +start_stop_daemon_args="--background --make-pidfile" diff --git a/nohang/openrc/nohang.in b/nohang/openrc/nohang.in new file mode 100755 index 0000000..90b171b --- /dev/null +++ b/nohang/openrc/nohang.in @@ -0,0 +1,8 @@ +#!/sbin/openrc-run + +name="nohang daemon" +description="Sophisticated low memory handler" +command=:TARGET_SBINDIR:/nohang +command_args="--monitor --config :TARGET_SYSCONFDIR:/nohang/nohang.conf" +pidfile="/var/run/nohang" +start_stop_daemon_args="--background --make-pidfile"