remotes
This commit is contained in:
1 parent
4f0886b6cd
commit
02017d470f
16 files changed
+2665
-84
No files matched your search
@@ -17,10 +17,18 @@ SYSUSERSDIR := $(PREFIX)/lib/sysusers.d
|
||||
TMPFILESDIR := $(PREFIX)/lib/tmpfiles.d
|
||||
DOCDIR := $(PREFIX)/share/doc/$(NAME)
|
||||
DATADIR := $(PREFIX)/share/$(NAME)
|
||||
PKGLIBDIR := $(PREFIX)/lib/$(NAME)
|
||||
COMPLETIONDIR := $(PREFIX)/share/bash-completion/completions
|
||||
# polkit only reads /usr/share/polkit-1/rules.d and /etc/polkit-1/rules.d
|
||||
ifeq ($(PREFIX),/usr)
|
||||
POLKITDIR ?= /usr/share/polkit-1/rules.d
|
||||
else
|
||||
POLKITDIR ?= $(SYSCONFDIR)/polkit-1/rules.d
|
||||
endif
|
||||
|
||||
# Fill in version and install paths
|
||||
SUBST = sed -e 's|@VERSION@|$(VERSION)|g' -e 's|@BINDIR@|$(BINDIR)|g' -e 's|@DOCDIR@|$(DOCDIR)|g'
|
||||
SUBST = sed -e 's|@VERSION@|$(VERSION)|g' -e 's|@BINDIR@|$(BINDIR)|g' -e 's|@DOCDIR@|$(DOCDIR)|g' \
|
||||
-e 's|@PKGLIBDIR@|$(PKGLIBDIR)|g'
|
||||
|
||||
MAINT_SCRIPTS := packaging/deb/postinst packaging/deb/prerm packaging/deb/postrm
|
||||
STAGE := build/deb-root
|
||||
@@ -34,22 +42,33 @@ check:
|
||||
bash -n bin/terractl
|
||||
bash -n completions/bash/terractl
|
||||
for f in $(MAINT_SCRIPTS); do sh -n $$f; done
|
||||
python3 -c 'import ast, sys; ast.parse(open(sys.argv[1]).read(), sys.argv[1])' lib/terractl-remote
|
||||
@if command -v shellcheck >/dev/null; then \
|
||||
shellcheck bin/terractl completions/bash/terractl $(MAINT_SCRIPTS); \
|
||||
else \
|
||||
echo "shellcheck not installed; skipped (apt install shellcheck)"; \
|
||||
fi
|
||||
@if python3 -m pyflakes --version >/dev/null 2>&1; then \
|
||||
python3 -m pyflakes lib/terractl-remote; \
|
||||
else \
|
||||
echo "pyflakes not installed; skipped (apt install python3-pyflakes)"; \
|
||||
fi
|
||||
|
||||
install:
|
||||
install -d $(DESTDIR)$(BINDIR) $(DESTDIR)$(UNITDIR) $(DESTDIR)$(SYSUSERSDIR) \
|
||||
$(DESTDIR)$(TMPFILESDIR) $(DESTDIR)$(DOCDIR) $(DESTDIR)$(DATADIR) \
|
||||
$(DESTDIR)$(COMPLETIONDIR) $(DESTDIR)$(SYSCONFDIR)/default $(DESTDIR)$(SYSCONFDIR)/systemd
|
||||
$(DESTDIR)$(TMPFILESDIR) $(DESTDIR)$(DOCDIR) $(DESTDIR)$(DATADIR) $(DESTDIR)$(PKGLIBDIR) \
|
||||
$(DESTDIR)$(COMPLETIONDIR) $(DESTDIR)$(SYSCONFDIR)/default $(DESTDIR)$(SYSCONFDIR)/systemd \
|
||||
$(DESTDIR)$(POLKITDIR)
|
||||
$(SUBST) bin/terractl > $(DESTDIR)$(BINDIR)/terractl
|
||||
chmod 755 $(DESTDIR)$(BINDIR)/terractl
|
||||
install -m 755 lib/terractl-remote $(DESTDIR)$(PKGLIBDIR)/terractl-remote
|
||||
$(SUBST) systemd/terraria@.service > $(DESTDIR)$(UNITDIR)/terraria@.service
|
||||
$(SUBST) systemd/terractld.service > $(DESTDIR)$(UNITDIR)/terractld.service
|
||||
chmod 644 $(DESTDIR)$(UNITDIR)/terraria@.service $(DESTDIR)$(UNITDIR)/terractld.service
|
||||
install -m 644 systemd/terraria@.socket $(DESTDIR)$(UNITDIR)/
|
||||
install -m 644 config/sysusers.d/terractl.conf $(DESTDIR)$(SYSUSERSDIR)/
|
||||
install -m 644 config/tmpfiles.d/terractl.conf $(DESTDIR)$(TMPFILESDIR)/
|
||||
install -m 644 config/polkit/terractl.rules $(DESTDIR)$(POLKITDIR)/50-terractl.rules
|
||||
install -m 644 docs/guide.md $(DESTDIR)$(DOCDIR)/README.md
|
||||
install -m 644 tools/windows/export-tmod-mods.ps1 $(DESTDIR)$(DATADIR)/
|
||||
install -m 644 completions/bash/terractl $(DESTDIR)$(COMPLETIONDIR)/terractl
|
||||
@@ -68,20 +87,27 @@ install:
|
||||
@if [ -z "$(DESTDIR)" ]; then \
|
||||
systemd-sysusers terractl.conf && \
|
||||
systemd-tmpfiles --create terractl.conf && \
|
||||
if [ -d /run/systemd/system ]; then systemctl daemon-reload; fi && \
|
||||
if [ -d /run/systemd/system ]; then \
|
||||
systemctl daemon-reload && systemctl try-restart terractld.service; \
|
||||
fi && \
|
||||
$(BINDIR)/terractl journal-access && \
|
||||
echo "Installed terractl $(VERSION). See $(DOCDIR)/README.md"; \
|
||||
fi
|
||||
|
||||
uninstall:
|
||||
@if [ -z "$(DESTDIR)" ] && [ -d /run/systemd/system ]; then \
|
||||
systemctl disable --now terractld.service 2>/dev/null || true; \
|
||||
fi
|
||||
rm -f $(DESTDIR)$(BINDIR)/terractl \
|
||||
$(DESTDIR)$(UNITDIR)/terraria@.service $(DESTDIR)$(UNITDIR)/terraria@.socket \
|
||||
$(DESTDIR)$(UNITDIR)/terractld.service \
|
||||
$(DESTDIR)$(SYSUSERSDIR)/terractl.conf $(DESTDIR)$(TMPFILESDIR)/terractl.conf \
|
||||
$(DESTDIR)$(COMPLETIONDIR)/terractl
|
||||
rm -rf $(DESTDIR)$(DOCDIR) $(DESTDIR)$(DATADIR)
|
||||
$(DESTDIR)$(COMPLETIONDIR)/terractl $(DESTDIR)$(POLKITDIR)/50-terractl.rules
|
||||
rm -rf $(DESTDIR)$(DOCDIR) $(DESTDIR)$(DATADIR) $(DESTDIR)$(PKGLIBDIR)
|
||||
@if [ -z "$(DESTDIR)" ] && [ -d /run/systemd/system ]; then systemctl daemon-reload; fi
|
||||
@echo "Removed. Kept: $(SYSCONFDIR)/default/terractl, $(SYSCONFDIR)/systemd/journald@terraria.conf,"
|
||||
@echo "/var/lib/terraria, the servers' journal and the terraria user."
|
||||
@echo "/var/lib/terraria, /var/lib/terractl (the daemon's certificate and trusted"
|
||||
@echo "computers), the servers' journal and the terraria user."
|
||||
|
||||
deb: check
|
||||
rm -rf $(STAGE)
|
||||
|
||||
Reference in new issue
Block a user