don't hardcode /usr/share paths

Add a defines.mk file defining the standard default layout
for installation (PREFIX, DATAROOTDIR, LIBDIR etc.).

Add a $(JSDIR) variable and use env!("JSDIR") in place of
the hardcoded /usr/share/javascript/proxmox-backup path.

Have defines.mk include an *optional* local.mak to override
JSDIR to www/ during local development.

Add `make install` targets and remove debian/install.

Note that service files are now in $libdir/proxmox-backup/
as there's usually no point in starting them from the
command line, so /usr/sbin makes no sense.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
This commit is contained in:
Wolfgang Bumiller
2019-01-31 13:43:09 +01:00
parent 9fa03fa2d3
commit 6285b251e7
12 changed files with 119 additions and 45 deletions

18
etc/Makefile Normal file
View File

@ -0,0 +1,18 @@
include ../defines.mk
UNITS := \
proxmox-backup.service \
proxmox-backup-proxy.service
all: $(UNITS)
clean:
rm -f $(UNITS)
.SUFFIXES: .service.in .service
.service.in.service:
sed \
-e 's!%LIBDIR%!$(LIBDIR)!g' \
-e 's!%PROXY_USER%!$(PROXY_USER)!g' \
$< >$@.tmp
mv $@.tmp $@

View File

@ -0,0 +1,15 @@
[Unit]
Description=Proxmox Backup API Proxy Server
Wants=network-online.target
After=network.target syslog.service
Requires=proxmox-backup.service
[Service]
Type=simple
ExecStart=%LIBDIR%/proxmox-backup/proxmox-backup-proxy
Restart=on-failure
User=%PROXY_USER%
Group=%PROXY_USER%
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,12 @@
[Unit]
Description=Proxmox Backup API Server
Wants=network-online.target
After=network.target syslog.target
[Service]
Type=simple
ExecStart=%LIBDIR%/proxmox-backup/proxmox-backup-api
Restart=on-failure
[Install]
WantedBy=multi-user.target