/[cvs]/jonen/notes/build_bacula_deb.twingle
ViewVC logotype

Contents of /jonen/notes/build_bacula_deb.twingle

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (show annotations)
Thu Mar 13 22:02:25 2003 UTC (21 years, 3 months ago) by jonen
Branch: MAIN
+ initial commit

1 <h3>build bacula debian binary package</h3>
2 <hr/>
3
4 Description:
5 short notes about how to compile bacula sources (in this case with MySQL database support),
6 and package the binaries as debian packages.
7
8
9 #==== create temp dirs ========
10 mkdir -p bacula/build
11 mkdir -p bacula/debian
12
13 #======= prepare install dir =============
14 cd bacula/debian
15 mkdir -p /usr/local/bacula/
16
17 #======= build and install bacula ============
18 cd bacula/build ...and download source file here (bacula, depkgs, depkgs1)
19
20 untar all
21
22 be sure
23 libmysqlclient10-dev
24 and
25 libreadline4-dev is installed !
26
27 # make mtx (we don't need SQLite, we have MySQL...i hope..)
28 cd depkgs
29 make mtx
30
31 # make helper apps
32 cd ../depkgs1
33 make
34
35 cd ../bacula-<version>
36
37 # configure bacula
38 ./configure \
39 --prefix=/usr/local/bacula \
40 --enable-static-tools \
41 --enable-static-fd \
42 --enable-static-sd \
43 --enable-static-dir \
44 --enable-static-cons \
45 --with-mysql \
46 --enable-gnome \
47 --with-readline
48
49 # make and install bacula to prefixed dir
50 make
51 make install DESTDIR=/dir/to/install/bacula/debian ( e.g /tmp/bacula/debian )
52
53 #========== make final modifications and copy docs into package tree ========
54 #
55 # create control file
56 cd debian/DEBIAN
57 nano control
58 example:
59 ========== snip ========
60 Package: bacula
61 Version: 1.29-4
62 Section: net
63 Priority: optional
64 Architecture: all
65 Depends: libmysqlclient10 (>= 3.23.49-8), libstdc++5 (>= 3.2.1-0pre3), gcc-3.2-base (>= 3.2.$
66 Maintainer: Sebastian Utz <seut@netfrag.org>
67 Description: Bacula - The Network Backup Solution
68 Bacula is a set of computer programs that permit you (or the system administrator) to
69 manage backup, recovery, and verification of computer data across a network of
70 computers of different kinds. In technical terms, it is a network client/server based
71 backup program. Bacula is relatively easy to use and efficient, while offering many
72 advanced storage management features that make it easy to find and recover lost or
73 damaged files. Bacula source code has been released under the GPL version 2 license.
74
75 This version is compiled with MySQL support.
76 ========== end snip ========
77
78
79 # install doc to package tree
80 cd ../usr/
81 mkdir -p share/doc/bacula
82 cp all docu stuf at source to this dir
83 cp bacula-source/COPYRIGHT to share/doc/bacula/copyright
84
85 # create changelog files
86 cd share/doc/bacula/
87 nano changelog
88 example:
89 ========== snip ========
90 bacula (1.29-3)
91
92 * create bacula debian package
93
94 -- Sebastian Utz <seut@netfrag.org> 2003-03-12 04:45:55 +0100
95 ========== end snip ========
96
97 nano changelog.DEBIAN
98 example:
99 ========== snip ========
100 bacula Debian maintainer and upstream author are identical.
101 Therefore see also normal changelog file for Debian changes.
102 ========== end snip ========
103
104 gzip --best changelog
105 gzip --best changelog.DEBIAN
106
107
108 # maybe modify some start-up scripts under ../usr/local/bacula/etc/
109 # e.g create a start-up script for each daemon
110 cd ../usr/local/bacula/etc/
111 cp bacula bacula-all
112 cp bacula bacula-dir
113 nano bacula bacula-dir (to remove starting of the other daemons)
114 # ...same to the other daemons( fd and sd)
115
116 # maybe modify 'console' start-up script
117 example:
118 ========== snip ========
119 #!/bin/sh
120 CONSOLE=/usr/local/bacula/sbin/console
121 DEFAULT_CONF=/usr/local/bacula/etc/console.conf
122 if [ $# = 1 ] ; then
123 echo "doing console $1"
124 $CONSOLE -c $1
125 else
126 $CONSOLE -c $DEFAULT_CONF
127 fi
128 ========== end snip ========
129
130 # maybe create sym-links under /usr/local/sbin/ to console apps
131 cd ../usr/local/sbin/
132 ln -s ../bacula/etc/console bacula-console
133 ln -s ../bacula/etc/console-gnome bacula-console-gnome
134
135
136 # ============== create debian package =============
137 #
138 cd bacula/ (where debian/DEBIAN etc. is under the tree)
139 dpkg-deb --build debian
140 mv debian.deb bacula_<version>.deb
141
142
143 <hr/>
144 $Id$

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed