77 lines
3.0 KiB
Diff
77 lines
3.0 KiB
Diff
|
Description: fix install permissions
|
||
|
Without this patch, the makefile will try to install directories and
|
||
|
files with incompatible permissions for ejabberd, which run as an
|
||
|
ejabberd user.
|
||
|
Author: Johan Oudinet <johan.oudinet@gmail.com>
|
||
|
|
||
|
Index: ejabberd/Makefile.in
|
||
|
===================================================================
|
||
|
--- ejabberd.orig/Makefile.in 2014-10-28 12:36:49.228713322 +0100
|
||
|
+++ ejabberd/Makefile.in 2014-10-28 13:53:13.538888807 +0100
|
||
|
@@ -91,10 +91,10 @@ spec:
|
||
|
install: all
|
||
|
#
|
||
|
# Configuration files
|
||
|
- $(INSTALL) -d -m 750 $(G_USER) $(ETCDIR)
|
||
|
+ $(INSTALL) -d $(ETCDIR)
|
||
|
[ -f $(ETCDIR)/ejabberd.yml ] \
|
||
|
- && $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \
|
||
|
- || $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml
|
||
|
+ && $(INSTALL) -b -m 644 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \
|
||
|
+ || $(INSTALL) -b -m 644 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml
|
||
|
$(SED) -e "s*{{rootdir}}*@prefix@*" \
|
||
|
-e "s*{{installuser}}*@INSTALLUSER@*" \
|
||
|
-e "s*{{libdir}}*@libdir@*" \
|
||
|
@@ -104,13 +104,12 @@ install: all
|
||
|
-e "s*{{erl}}*@ERL@*" ejabberdctl.template \
|
||
|
> ejabberdctl.example
|
||
|
[ -f $(ETCDIR)/ejabberdctl.cfg ] \
|
||
|
- && $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \
|
||
|
- || $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
|
||
|
+ && $(INSTALL) -b -m 644 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \
|
||
|
+ || $(INSTALL) -b -m 644 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
|
||
|
$(INSTALL) -b -m 644 $(G_USER) inetrc $(ETCDIR)/inetrc
|
||
|
#
|
||
|
# Administration script
|
||
|
- [ -d $(SBINDIR) ] || $(INSTALL) -d -m 755 $(SBINDIR)
|
||
|
- $(INSTALL) -m 550 $(G_USER) ejabberdctl.example $(SBINDIR)/ejabberdctl
|
||
|
+ $(INSTALL) -D ejabberdctl.example $(SBINDIR)/ejabberdctl
|
||
|
#
|
||
|
# Init script
|
||
|
$(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*" \
|
||
|
@@ -129,10 +128,7 @@ install: all
|
||
|
$(INSTALL) -m 644 include/*.hrl $(INCLUDEDIR)
|
||
|
#
|
||
|
# Binary C programs
|
||
|
- $(INSTALL) -d $(PBINDIR)
|
||
|
- $(INSTALL) -m 750 $(O_USER) tools/captcha.sh $(PBINDIR)
|
||
|
- -[ -f deps/p1_pam/priv/bin/epam ] \
|
||
|
- && $(INSTALL) -m 750 $(O_USER) deps/p1_pam/priv/bin/epam $(PBINDIR)
|
||
|
+ $(INSTALL) -D tools/captcha.sh $(PBINDIR)/captcha.sh
|
||
|
#
|
||
|
# Binary system libraries
|
||
|
$(INSTALL) -d $(SODIR)
|
||
|
@@ -140,22 +136,6 @@ install: all
|
||
|
# Translated strings
|
||
|
$(INSTALL) -d $(MSGSDIR)
|
||
|
$(INSTALL) -m 644 priv/msgs/*.msg $(MSGSDIR)
|
||
|
- #
|
||
|
- # Spool directory
|
||
|
- $(INSTALL) -d -m 750 $(O_USER) $(SPOOLDIR)
|
||
|
- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(SPOOLDIR) >$(CHOWN_OUTPUT)
|
||
|
- chmod -R 750 $(SPOOLDIR)
|
||
|
- [ ! -f $(COOKIEFILE) ] || { $(CHOWN_COMMAND) @INSTALLUSER@ $(COOKIEFILE) >$(CHOWN_OUTPUT) ; chmod 400 $(COOKIEFILE) ; }
|
||
|
- #
|
||
|
- # ejabberdctl lock directory
|
||
|
- $(INSTALL) -d -m 750 $(O_USER) $(CTLLOCKDIR)
|
||
|
- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(CTLLOCKDIR) >$(CHOWN_OUTPUT)
|
||
|
- chmod -R 750 $(CTLLOCKDIR)
|
||
|
- #
|
||
|
- # Log directory
|
||
|
- $(INSTALL) -d -m 750 $(O_USER) $(LOGDIR)
|
||
|
- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(LOGDIR) >$(CHOWN_OUTPUT)
|
||
|
- chmod -R 750 $(LOGDIR)
|
||
|
|
||
|
uninstall: uninstall-binary
|
||
|
|