1 Description: fix install permissions
2 Without this patch, the makefile will try to install directories and
3 files with incompatible permissions for ejabberd, which run as an
5 Author: Johan Oudinet <johan.oudinet@gmail.com>
7 Index: ejabberd/Makefile.in
8 ===================================================================
9 --- ejabberd.orig/Makefile.in 2014-10-28 12:36:49.228713322 +0100
10 +++ ejabberd/Makefile.in 2014-10-28 13:53:13.538888807 +0100
11 @@ -91,10 +91,10 @@ spec:
15 - $(INSTALL) -d -m 750 $(G_USER) $(ETCDIR)
16 + $(INSTALL) -d $(ETCDIR)
17 [ -f $(ETCDIR)/ejabberd.yml ] \
18 - && $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \
19 - || $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml
20 + && $(INSTALL) -b -m 644 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \
21 + || $(INSTALL) -b -m 644 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml
22 $(SED) -e "s*{{rootdir}}*@prefix@*" \
23 -e "s*{{installuser}}*@INSTALLUSER@*" \
24 -e "s*{{libdir}}*@libdir@*" \
25 @@ -104,13 +104,12 @@ install: all
26 -e "s*{{erl}}*@ERL@*" ejabberdctl.template \
28 [ -f $(ETCDIR)/ejabberdctl.cfg ] \
29 - && $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \
30 - || $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
31 + && $(INSTALL) -b -m 644 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \
32 + || $(INSTALL) -b -m 644 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
33 $(INSTALL) -b -m 644 $(G_USER) inetrc $(ETCDIR)/inetrc
35 # Administration script
36 - [ -d $(SBINDIR) ] || $(INSTALL) -d -m 755 $(SBINDIR)
37 - $(INSTALL) -m 550 $(G_USER) ejabberdctl.example $(SBINDIR)/ejabberdctl
38 + $(INSTALL) -D ejabberdctl.example $(SBINDIR)/ejabberdctl
41 $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*" \
42 @@ -129,10 +128,7 @@ install: all
43 $(INSTALL) -m 644 include/*.hrl $(INCLUDEDIR)
46 - $(INSTALL) -d $(PBINDIR)
47 - $(INSTALL) -m 750 $(O_USER) tools/captcha.sh $(PBINDIR)
48 - -[ -f deps/p1_pam/priv/bin/epam ] \
49 - && $(INSTALL) -m 750 $(O_USER) deps/p1_pam/priv/bin/epam $(PBINDIR)
50 + $(INSTALL) -D tools/captcha.sh $(PBINDIR)/captcha.sh
52 # Binary system libraries
53 $(INSTALL) -d $(SODIR)
54 @@ -140,22 +136,6 @@ install: all
56 $(INSTALL) -d $(MSGSDIR)
57 $(INSTALL) -m 644 priv/msgs/*.msg $(MSGSDIR)
60 - $(INSTALL) -d -m 750 $(O_USER) $(SPOOLDIR)
61 - $(CHOWN_COMMAND) -R @INSTALLUSER@ $(SPOOLDIR) >$(CHOWN_OUTPUT)
62 - chmod -R 750 $(SPOOLDIR)
63 - [ ! -f $(COOKIEFILE) ] || { $(CHOWN_COMMAND) @INSTALLUSER@ $(COOKIEFILE) >$(CHOWN_OUTPUT) ; chmod 400 $(COOKIEFILE) ; }
65 - # ejabberdctl lock directory
66 - $(INSTALL) -d -m 750 $(O_USER) $(CTLLOCKDIR)
67 - $(CHOWN_COMMAND) -R @INSTALLUSER@ $(CTLLOCKDIR) >$(CHOWN_OUTPUT)
68 - chmod -R 750 $(CTLLOCKDIR)
71 - $(INSTALL) -d -m 750 $(O_USER) $(LOGDIR)
72 - $(CHOWN_COMMAND) -R @INSTALLUSER@ $(LOGDIR) >$(CHOWN_OUTPUT)
73 - chmod -R 750 $(LOGDIR)
75 uninstall: uninstall-binary