summaryrefslogtreecommitdiff
path: root/package/ejabberd/0007-fix-install-permissions.patch
blob: 2ad8453238577faba73bf4646abaf170a6ae9b34 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
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
===================================================================
diff --git a/Makefile.in b/Makefile.in
index b9d783a..6ec805a 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -122,10 +122,8 @@ copy-files: $(call TO_DEST,$(MAIN_FILES))
 install: all copy-files
 	#
 	# Configuration files
-	$(INSTALL) -d -m 750 $(G_USER) $(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) -d $(ETCDIR)
+	$(INSTALL) -b -m 644 ejabberd.yml.example $(ETCDIR)/ejabberd.yml
 	$(SED) -e "s*{{rootdir}}*@prefix@*" \
 		-e "s*{{installuser}}*@INSTALLUSER@*" \
 		-e "s*{{bindir}}*@bindir@*" \
@@ -135,14 +133,11 @@ install: all copy-files
 		-e "s*{{docdir}}*@docdir@*" \
 		-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) inetrc $(ETCDIR)/inetrc
+	$(INSTALL) -b -m 644 ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
+	$(INSTALL) -b -m 644 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
 	# Elixir binaries
 	[ -d $(BINDIR) ] || $(INSTALL) -d -m 755 $(BINDIR)
 	[ -f deps/elixir/bin/iex ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/iex $(BINDIR)/iex || true
@@ -157,34 +152,11 @@ install: all copy-files
 	#
 	# Binary C programs
 	$(INSTALL) -d $(PBINDIR)
-	$(INSTALL) -m 750 $(O_USER) tools/captcha.sh $(PBINDIR)
+	$(INSTALL) tools/captcha.sh $(PBINDIR)
 	#
 	# Copy lite.sql
 	[ -d deps/sqlite3 ] && $(INSTALL) -d $(SQLDIR) || true
 	[ -d deps/sqlite3 ] && $(INSTALL) -m 644 sql/lite.sql $(SQLDIR) || true
-	#
-	# 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)
-	#
-	# Documentation
-	$(INSTALL) -d $(DOCDIR)
-	[ -f doc/guide.html ] \
-		&& $(INSTALL) -m 644 doc/guide.html $(DOCDIR) \
-		|| echo "Documentation not included in sources"
-	$(INSTALL) -m 644 COPYING $(DOCDIR)
 
 uninstall: uninstall-binary