File: makedirs.sh

package info (click to toggle)
inn 1%3A1.7.2q-52
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 9,256 kB
  • sloc: ansic: 37,984; perl: 11,945; sh: 3,968; makefile: 2,009; awk: 1,567; yacc: 686; tcl: 85; csh: 70
file content (114 lines) | stat: -rwxr-xr-x 2,946 bytes parent folder | download | duplicates (6)
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#! /bin/sh
##  $Revision: 1.14 $
##  Script to make INN directories.

##  Some systems don't support -x, so we have to use -f.
CHOWN=chown
if [ ${CHOWN} = chown ] ; then
    if [ -f /sbin/chown ] ; then
	CHOWN=/sbin/chown
    else
	if [ -f /etc/chown ] ; then
	    CHOWN=/etc/chown
	else
	    if [ -f /usr/etc/chown ] ; then
		CHOWN=/usr/etc/chown
	    fi
	fi
    fi
fi

##  =()<MAN1=@<MAN1>@>()=
MAN1=/usr/news/man/man1
##  =()<MAN3=@<MAN3>@>()=
MAN3=/usr/news/man/man3
##  =()<MAN5=@<MAN5>@>()=
MAN5=/usr/news/man/man5
##  =()<MAN8=@<MAN8>@>()=
MAN8=/usr/news/man/man8
MAN=`echo $MAN8 | sed -e 's@\(.*\)/[^/]*@\1@'`

##  =()<SPOOL=@<_PATH_SPOOL>@>()=
SPOOL=/var/news/spool/articles
## =()<OVERVIEWDIR=@<_PATH_OVERVIEWDIR>@>()=
OVERVIEWDIR=/var/news/spool/over.view
##  =()<ARCHIVEDIR=@<_PATH_ARCHIVEDIR>@>()=
ARCHIVEDIR=/var/news/spool/archive
##  =()<BATCHDIR=@<_PATH_BATCHDIR>@>()=
BATCHDIR=/var/news/spool/out.going
##  =()<MOST_LOGS=@<_PATH_MOST_LOGS>@>()=
MOST_LOGS=/var/log/news
## =()<PATH_AUTHDIR=@<_PATH_AUTHDIR>@>()=
PATH_AUTHDIR=/usr/news/bin/auth
##  =()<SPOOLNEWS=@<_PATH_SPOOLNEWS>@>()=
SPOOLNEWS=/var/news/spool/in.coming
##  =()<BADNEWS=@<_PATH_BADNEWS>@>()=
BADNEWS=/var/news/spool/in.coming/bad
##  =()<SPOOLTEMP=@<_PATH_SPOOLTEMP>@>()=
SPOOLTEMP=/var/tmp

##  =()<NEWSLIB=@<_PATH_NEWSLIB>@>()=
NEWSLIB=/var/news/etc
##  =()<NEWSBIN=@<_PATH_NEWSBIN>@>()=
NEWSBIN=/usr/news/bin
##  =()<CONTROLPROGS=@<_PATH_CONTROLPROGS>@>()=
CONTROLPROGS=/usr/news/bin/control
##  =()<RNEWSPROGS=@<_PATH_RNEWSPROGS>@>()=
RNEWSPROGS=/usr/news/bin/rnews.libexec
##  =()<INNDDIR=@<_PATH_INNDDIR>@>()=
INNDDIR=/var/news/run
##  =()<LOCKSDIR=@<_PATH_LOCKS>@>()=
LOCKSDIR=/var/news/locks
## =()<MOST_LOGS=@<_PATH_MOST_LOGS>@>()=
MOST_LOGS=/var/log/news
## =()<LOCKS=@<_PATH_LOCKS>@>()=
LOCKS=/var/news/locks

##  =()<NEWSETC=@<_PATH_NEWSBOOT>@>()=
NEWSETC=/usr/news/bin/rc.news
NEWSETC="`dirname ${NEWSETC}`"
##  =()<NEWSHIST=@<_PATH_HISTORY>@>()=
NEWSHIST=/var/news/etc/history
NEWSHIST="`dirname ${NEWSHIST}`"
##  =()<NEWSTMP=@<_PATH_TMP>@>()=
NEWSTMP=/var/tmp
##  =()<NEWSHOME=@<_PATH_NEWSHOME>@>()=
NEWSHOME=/usr/news
NEWSLBIN=${NEWSHOME}/local

##  =()<NEWSUSER=@<NEWSUSER>@>()=
NEWSUSER=news
##  =()<NEWSGROUP=@<NEWSGROUP>@>()=
NEWSGROUP=news

PFLAG="$1"
umask 0
set -x

for F in \
${MAN} ${MAN1} ${MAN3} ${MAN5} ${MAN8} \
${NEWSHOME} ${NEWSETC} ${NEWSHIST} ${NEWSTMP} ${NEWSLBIN} \
${SPOOL} ${OVERVIEWDIR} ${ARCHIVEDIR} ${BATCHDIR} ${LOCKS} \
${MOST_LOGS} ${MOST_LOGS}/OLD \
${SPOOLNEWS} ${BADNEWS} ${SPOOLTEMP} \
${NEWSLIB} ${INNDDIR} ${LOCKSDIR} \
${NEWSBIN} ${CONTROLPROGS} ${RNEWSPROGS} \
${PATH_AUTHDIR} ; do

    if [ ! -d ${DESTDIR}${F} ] ; then
	mkdir ${PFLAG} ${DESTDIR}${F} || exit 1
	${CHOWN} ${NEWSUSER} ${DESTDIR}${F} || exit 1
	chgrp ${NEWSGROUP} ${DESTDIR}${F} || exit 1
	case ${F} in
	${INNDDIR})
	    chmod 0770 ${DESTDIR}${F} || exit 1
	    ;;
	*)
	    chmod 0775 ${DESTDIR}${F} || exit 1
	    ;;
	esac
    fi

done

exit 0