From 237c65b7a0b966ede7a122aea7fa33b05980432c Mon Sep 17 00:00:00 2001 From: Mikhail novosyolov Date: Wed, 1 Aug 2018 02:59:02 +0300 Subject: [PATCH] Makefile --- Makefile | 33 +++++++++++++++++++++++++++++++++ README.md | 7 +++++-- install.sh | 24 ------------------------ nohang.service | 2 +- purge.sh | 7 ------- 5 files changed, 39 insertions(+), 34 deletions(-) create mode 100644 Makefile delete mode 100755 install.sh delete mode 100755 purge.sh diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..591e414 --- /dev/null +++ b/Makefile @@ -0,0 +1,33 @@ +# +PREFIX = / + +all: + @ echo "Nothing to compile. Use: make install, make uninstall, make systemd" + +install: + install -d $(DESTDIR)/$(PREFIX)/usr/sbin + install -m0755 ./nohang $(DESTDIR)/$(PREFIX)/usr/sbin/nohang + + install -d $(DESTDIR)/$(PREFIX)/etc/nohang + install -m0644 ./nohang.conf $(DESTDIR)/$(PREFIX)/etc/nohang + install -m0644 ./default_values_backup.conf $(DESTDIR)/$(PREFIX)/etc/nohang + + install -d $(DESTDIR)/$(PREFIX)/usr/share/man/man1 + gzip -k -c nohang.1 > $(DESTDIR)/$(PREFIX)/usr/share/man/man1/nohang.1.gz + + install -d $(DESTDIR)/$(PREFIX)/lib/systemd/system + install -m0644 ./nohang.service $(DESTDIR)/$(PREFIX)/lib/systemd/system/nohang.service + + +uninstall: + # 'make uninstall' must not fail with error if systemctl is unavailable or returns error + systemctl disable nohang.service || true + rm -fv $(PREFIX)/usr/sbin/nohang + rm -fv $(PREFIX)/usr/share/man/man1/nohang.1.gz + rm -fv $(PREFIX)/lib/systemd/system/nohang.service + rm -fvr $(PREFIX)/etc/nohang/ + +systemd: + systemctl daemon-reload + systemctl enable nohang.service + systemctl restart nohang diff --git a/README.md b/README.md index dd48951..d9fb547 100644 --- a/README.md +++ b/README.md @@ -67,13 +67,16 @@ $ cd nohang ## Installation and start for systemd users ```bash -$ sudo ./install.sh +# to install: +$ sudo make install +# to enable and start systemd units: +$ sudo make systemd ``` ## Purge ```bash -$ sudo ./purge.sh +$ sudo make uninstall ``` ## Command line options diff --git a/install.sh b/install.sh deleted file mode 100755 index 65ebe3f..0000000 --- a/install.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh -v - -cp nohang /usr/local/bin/ -chmod 755 /usr/local/bin/nohang - -mkdir /etc/nohang -chmod 755 /etc/nohang -cp nohang.conf /etc/nohang/ -cp default_values_backup.conf /etc/nohang/ -chmod 644 /etc/nohang/nohang.conf -chmod 644 /etc/nohang/default_values_backup.conf - -gzip -k nohang.1 -mkdir /usr/local/share/man/man1 -chmod 755 /usr/local/share/man/man1 -cp nohang.1.gz /usr/local/share/man/man1/ -chmod 644 /usr/local/share/man/man1/nohang.1.gz -rm nohang.1.gz - -cp nohang.service /etc/systemd/system/ -chmod 644 /etc/systemd/system/nohang.service -systemctl daemon-reload -systemctl enable nohang -systemctl restart nohang diff --git a/nohang.service b/nohang.service index 3144a22..575f368 100644 --- a/nohang.service +++ b/nohang.service @@ -4,7 +4,7 @@ After=sysinit.target Documentation=man:nohang(1) https://github.com/hakavlad/nohang [Service] -ExecStart=/usr/local/bin/nohang +ExecStart=/usr/sbin/nohang Restart=always [Install] diff --git a/purge.sh b/purge.sh deleted file mode 100755 index a758270..0000000 --- a/purge.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh -v -systemctl stop nohang -systemctl disable nohang -rm /usr/local/bin/nohang -rm /usr/local/share/man/man1/nohang.1.gz -rm /etc/systemd/system/nohang.service -rm -r /etc/nohang