wok-next view boxbackup/receipt @ rev 20533

cairo-clock, grub4dos: fix CFLAGS
author Pascal Bellard <pascal.bellard@slitaz.org>
date Tue Mar 27 12:50:45 2018 +0200 (2018-03-27)
parents
children 471441bc00c3
line source
1 # SliTaz package receipt v2.
3 PACKAGE="boxbackup"
4 VERSION="0.11.1"
5 CATEGORY="meta"
6 SHORT_DESC="BoxBackup on-line backup system"
7 MAINTAINER="domcox@slitaz.org"
8 LICENSE="GPL2"
9 WEB_SITE="http://www.boxbackup.org/"
11 TARBALL="boxbackup-$VERSION.tgz"
12 # stable
13 # WGET_URL="$SF_MIRROR/boxbackup/$TARBALL"
14 #WGET_URL="http://www.boxbackup.org/svn/box/packages/$TARBALL"
15 WGET_URL="http://www.boxbackup.org/export/3106/box/packages/$TARBALL"
17 BUILD_DEPENDS="db-dev libedit-dev openssl-dev zlib-dev perl"
18 SPLIT="boxbackup-client boxbackup-server"
20 # Configuration variables
22 compile_rules() {
23 ./configure \
24 --prefix=/usr \
25 $CONFIGURE_ARGS &&
26 make -j1 &&
27 {
28 mkdir -p $DESTDIR
29 cp -a parcels/boxbackup-$VERSION-backup-client-linux-gnu $DESTDIR
30 cp -a parcels/boxbackup-$VERSION-backup-server-linux-gnu $DESTDIR
31 rm -f $DESTDIR/boxbackup-$VERSION-backup-server-linux-gnu/*.*
32 }
34 cook_pick_manpages $src/docs/man/*
35 }
37 genpkg_rules() {
38 case $PACKAGE in
39 boxbackup)
40 DEPENDS="$SPLIT"
41 ;;
42 *-client)
43 mkdir -p $fs/usr/bin
44 cp -a $install/boxbackup-$VERSION-backup-client-linux-gnu/bb* $fs/usr/bin
45 rm -f $fs/usr/bin/*.*
46 mkdir -p $fs/etc/init.d
47 cp -a $stuff/bbackupd $fs/etc/init.d
48 CAT="network|client"
49 DEPENDS="db libedit openssl perl zlib gcc-lib-base"
50 TAGS="backup automatic client"
51 ;;
52 *-server)
53 mkdir -p $fs/usr/bin
54 cp -a $install/boxbackup-$VERSION-backup-server-linux-gnu/bb* $fs/usr/bin
55 cp -a $install/boxbackup-$VERSION-backup-server-linux-gnu/ra* $fs/usr/bin
56 mkdir -p $fs/etc/init.d
57 cp -a $stuff/bbstored $fs/etc/init.d
58 CAT="network|server"
59 DEPENDS="db libedit openssl perl zlib gcc-lib-base"
60 TAGS="backup automatic server network"
61 ;;
62 esac
63 }
65 pre_install_boxbackup_client() {
66 RUN_DMON=0
68 # Stop daemon
69 if [ -z "$1" -a -e /var/run/bbackupd.pid ]; then
70 /etc/init.d/bbackupd stop
71 RUN_DMON=1
72 fi
73 }
75 post_install_boxbackup_client() {
76 CONF_DIR="/etc/boxbackup"
77 DATA_DIR="/var/lib/bbackupd"
79 # Creating conf dir
80 if [ ! -e "$1/$CONF_DIR" ]; then
81 mkdir -p "$1/$CONF_DIR" && chmod 755 "$1/$CONF_DIR"
82 fi
83 if [ ! -e "$1/$DATA_DIR" ]; then
84 mkdir -p "$1/$DATA_DIR" && chmod 700 "$1/$DATA_DIR"
85 fi
86 if [ -z "$1" ]; then
87 # Start daemon (if stopped by install)
88 if [ $RUN_DMON -eq 1 ]; then
89 /etc/init.d/bbackupd start
90 fi
91 fi
92 true
93 }
95 pre_remove_boxbackup_client() {
96 # Stop daemon
97 if [ -z "$1" ]; then
98 if [ -e /var/run/bbackupd.pid ]; then
99 /etc/init.d/bbackupd stop
100 fi
101 fi
102 }
104 post_remove_boxbackup_client() {
105 CONF_DIR="/etc/boxbackup"
106 DATA_DIR="/var/lib/bbackupd"
108 # Delete DATA directory
109 rm -rf "$1/$DATA_DIR"
111 # Delete Client config files
112 rm -rf "$1/$CONF_DIR"/bbackupd*
114 # Delete CONF dir (if empty)
115 if [ $(ls -lA "$1/$CONF_DIR" | wc -l) -eq 0 ]; then
116 echo
117 action "Removing $CONF_DIR..."
118 rm -rf "$1/$CONF_DIR"
119 status
120 fi
121 # Delete PID, sock files
122 rm -f "$1/var/run/bbackupd".*
123 }
126 pre_install_boxbackup_server() {
127 # Stop daemon
128 if [ -z "$1" -a -e /var/run/bbstored.pid ]; then
129 /etc/init.d/bbstored stop
130 fi
131 }
133 post_install_boxbackup_server() {
134 HOSTNAME=$(ifconfig | awk -F ":" '/cast/ {print substr($2,0, index($2," ")-1) }')
135 CONF_DIR="/etc/boxbackup"
136 DATA_DIR="/var/lib/bbstored"
137 CA_DIR="${CONF_DIR}/ca"
138 BBUSER="bbstored"
140 # default conf dir is now /etc/boxbackup
141 if [ ! -e "$1/etc/box/bbstored.conf" ]; then
142 mv "$1/etc/box" "$1$CONF_DIR"
143 fi
145 # adduser BBUSER if needed
146 if ! grep -q $BBUSER "$1/etc/passwd"; then
147 echo
148 action "Adding user '$BBUSER'..."
149 echo $BBUSER':x:505:505:BoxBackup Network Backup:/dev/null:/bin/false' >> "$1/etc/passwd"
150 echo $BBUSER':!:14013:0:99999:7:::' >> "$1/etc/shadow"
151 echo $BBUSER':x:505:' >> "$1/etc/group"
152 echo $BBUSER':!::' >> "$1/etc/gshadow"
153 status
154 fi
156 # Create config is needed
157 if [ ! -e "$1$CONF_DIR" ]; then
158 mkdir -p "$1$CONF_DIR" &&
159 chroot "$1/" chown $BBUSER $CONF_DIR &&
160 chmod 700 "$1$CONF_DIR"
161 fi
163 if [ ! -e "$1$DATA_DIR/backup" ]; then
164 # Creating backup dir
165 action "Creating backup directory..."
166 mkdir -p "$1$DATA_DIR/backup" &&
167 chroot "$1/" chown -R $BBUSER $DATA_DIR &&
168 chmod -R 700 "$1$DATA_DIR"
169 status
170 fi
172 if [ ! -e "$1$CONF_DIR/raidfile.conf" ]; then
173 # RAID Setup
174 action "Disabling deprecated userland RAID..."
175 chroot "$1/" /usr/bin/raidfile-config $CONF_DIR 2048 $DATA_DIR 2>1 > /dev/null
176 status
177 chroot "$1/" chown -R $BBUSER $CONF_DIR/raidfile.conf &&
178 chmod 700 -R "$1$CONF_DIR/raidfile.conf"
179 fi
181 if [ ! -e "$1$CONF_DIR/bbstored.conf" ]; then
182 # Setting hostname
183 action "Setting hostname... "
184 if [ $(chroot "$1/" hostname -f 2>1 > /dev/null;echo $?) -eq 0 ]; then
185 HOSTNAME=$(chroot "$1/" hostname -f)
186 fi
187 if [ -z $HOSTNAME ]; then
188 HOSTNAME="127.0.0.1"
189 fi
190 export $HOSTNAME
191 echo $HOSTNAME
193 # Setting up the CA environment
194 action "Creating certificates..."
195 chroot "$1/" /usr/bin/bbstored-certs $CA_DIR init 2>1 > /dev/null
196 status
198 # Generate server certificate request
199 action "Generate server certificate request..."
200 chroot "$1/" bbstored-config $CONF_DIR $HOSTNAME $BBUSER 2>1 > /dev/null
201 status
203 # Sign the server certificate
204 action "Sign the server certificate..."
205 chroot "$1/" openssl x509 -req -sha1 -extensions usr_crt \
206 -in $CONF_DIR/$BBUSER/${HOSTNAME}-csr.pem \
207 -CA $CA_DIR/roots/serverCA.pem \
208 -CAkey $CA_DIR/keys/serverRootKey.pem \
209 -out $CA_DIR/servers/${HOSTNAME}-cert.pem \
210 -days 5000 2>1 > /dev/null
211 status
213 # Preparing the server certificates
214 action "Installing server certificate..."
215 cp -a "$1$CA_DIR/servers/${HOSTNAME}-cert.pem" "$1$CONF_DIR/$BBUSER"
216 status
217 action "Installing client certificate..."
218 cp -a "$1$CA_DIR/roots/clientCA.pem" "$1$CONF_DIR/$BBUSER"
219 status
221 # Securing $CONF_DIR
222 chroot "$1/" chown -R $BBUSER $CONF_DIR/bbstored* &&
223 chmod 700 -R "$1$CONF_DIR/bbstored"*
224 fi
226 if [ -e "$1$CA_DIR" ]; then
227 # Warning
228 echo
229 echo "IMPORTANT NOTE:"
230 echo "--------------"
231 echo "The certificate authority directory $CA_DIR is intended to be"
232 echo "moved to another system. It should not be kept on the backup server"
233 echo "to limit the impact of a server compromise."
234 fi
235 }
237 pre_remove_boxbackup_server() {
238 /etc/init.d/bbstored stop
239 }
241 post_remove_boxbackup_server() {
242 CONF_DIR="/etc/boxbackup"
243 DATA_DIR="/var/lib/bbstored"
244 CA_DIR="${CONF_DIR}/ca"
245 BBUSER="bbstored"
247 echo
248 if grep -q $BBUSER /etc/passwd; then
249 action "Removing $BBUSER user..."
250 deluser bbstored
251 status
252 fi
253 # Delete data
254 if [ -e $DATA_DIR ]; then
255 action "Removing all backup data..."
256 rm -r $DATA_DIR
257 status
258 fi
259 # Delete bbstored conf files
260 if [ -e $CONF_DIR/bbstored.conf ]; then
261 action "Removing config files..."
262 rm -rf $CONF_DIR/bbstored
263 rm -f $CONF_DIR/raidfile.conf
264 rm -f $CONF_DIR/bbstored.conf
265 status
266 fi
267 # Delete certificates
268 if [ -e $CA_DIR ]; then
269 action "Removing certificates..."
270 rm -r $CA_DIR
271 status
272 fi
273 # Delete $CONF_DIR (if empty)
274 if [ $(ls -lA $CONF_DIR | wc -l) -eq 0 ]; then
275 action "Removing $CONF_DIR..."
276 rm -r $CONF_DIR
277 status
278 fi
279 # Delete PID, sock files
280 rm -f /var/run/bbstored.*
281 }