Bump Standards-Version to 3.9.2
[grml2usb.git] / tarball.sh
1 #!/bin/sh
2 # Filename:      tarball.sh
3 # Purpose:       generate tarball for using grml2usb on non-Debian systems
4 # Authors:       grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
5 # Bug-Reports:   see http://grml.org/bugs/
6 # License:       This file is licensed under the GPL v2 or any later version.
7 ################################################################################
8
9 set -e
10
11 VERSION="$(awk '/^PROG_VERSION/ { print $3}' grml2usb | tr -d \")"
12
13 DIR="grml2usb-${VERSION}"
14 [ -d "$DIR" ] || mkdir "$DIR"
15
16 cat > "${DIR}"/README << EOF
17 README
18 ------
19
20 grml2usb installs grml ISO(s) on usb device for booting.
21
22 This tarball provides all the necessary files for running grml2usb.
23 Execute the script install.sh with root permissions to install the
24 files provided by the tarball in the filesystem.
25
26 Updating is possible via downloading the most recent tarball and
27 executing install.sh again.
28
29 If you want to remove grml2usb from your system just execute
30 the provided uninstall.sh script with root permissions.
31
32 Note:
33
34 If you are using Debian (or a Debian based system like grml, Ubuntu,...)
35 consider using the provided grml2usb Debian package:
36 http://deb.grml.org/ => http://deb.grml.org/pool/main/g/grml2usb/
37
38 Please report bugs and feedback to Michael Prokop <mika@grml.org>.
39 EOF
40
41 cat > "${DIR}"/install.sh << EOF
42 #!/bin/sh
43
44 set -e
45
46 if [ \$(id -u) != 0 ] ; then
47    echo "Error: become root before starting \$0" >& 2
48    exit 1
49 fi
50
51 BASE="\$(dirname \$0)"
52
53 printf "Installing files:\n"
54
55 printf "  - /usr/sbin/grml2usb\n"
56 install -m 755 \${BASE}/grml2usb /usr/sbin/grml2usb
57
58 printf "  - /usr/sbin/grml2usb-compat\n"
59 install -m 755 \${BASE}/grml2usb-compat /usr/sbin/grml2usb-compat
60
61 printf "  - /usr/sbin/grml2iso\n"
62 install -m 755 \${BASE}/grml2iso /usr/sbin/grml2iso
63
64 [ -d /usr/share/grml2usb/grub ] || mkdir -p /usr/share/grml2usb/grub
65 printf "  - /usr/share/grml2usb/grub/splash.xpm.gz\n"
66 install -m 644 \${BASE}/splash.xpm.gz /usr/share/grml2usb/grub/splash.xpm.gz
67 printf "  - /usr/share/grml2usb/grub/grml.png\n"
68 install -m 644 \${BASE}/grml.png      /usr/share/grml2usb/grub/grml.png
69
70 [ -d /usr/share/grml2usb/lilo ] || mkdir -p /usr/share/grml2usb/lilo
71 printf "  - /usr/share/grml2usb/lilo/lilo.static.amd64\n"
72 install -m 755 \${BASE}/lilo.static.amd64 /usr/share/grml2usb/lilo/lilo.static.amd64
73 printf "  - /usr/share/grml2usb/lilo/lilo.static.i386\n"
74 install -m 755 \${BASE}/lilo.static.i386  /usr/share/grml2usb/lilo/lilo.static.i386
75
76 [ -d /usr/share/grml2usb/mbr ] || mkdir -p /usr/share/grml2usb/mbr
77 printf "  - /usr/share/grml2usb/mbr/mbrmgr\n"
78 install -m 644 \${BASE}/mbrmgr /usr/share/grml2usb/mbr/mbrmgr
79 printf "  - /usr/share/grml2usb/mbr/mbrldr\n"
80 install -m 644 \${BASE}/mbrldr /usr/share/grml2usb/mbr/mbrldr
81
82 [ -d /usr/share/man/man8/ ] || mkdir -p /usr/share/man/man8
83 printf "  - /usr/share/man/man8/grml2usb.8.gz\n"
84 install -m 644 \${BASE}/grml2usb.8.gz /usr/share/man/man8/grml2usb.8.gz
85
86 printf "Finished installation.\n"
87 EOF
88
89 chmod 755 "${DIR}"/install.sh
90
91 cat > "${DIR}"/uninstall.sh << EOF
92 #!/bin/sh
93
94 set -e
95
96 if [ \$(id -u) != 0 ] ; then
97    echo "Error: become root before starting \$0" >& 2
98    exit 1
99 fi
100
101 for file in \\
102   /usr/sbin/grml2usb \\
103   /usr/sbin/grml2usb-compat \\
104   /usr/sbin/grml2iso \\
105   /usr/share/grml2usb/grub/splash.xpm.gz \\
106   /usr/share/grml2usb/grub/grml.png \\
107   /usr/share/grml2usb/lilo/lilo.static.amd64 \\
108   /usr/share/grml2usb/lilo/lilo.static.i386 \\
109   /usr/share/grml2usb/mbr/mbrmgr \\
110   /usr/share/grml2usb/mbr/mbrldr \\
111   /usr/share/man/man8/grml2usb.8.gz \\
112 ; do
113   printf "Removing \$file: "
114   rm -f \$file && printf "done\n" || printf "failed\n"
115 done
116 EOF
117
118 chmod 755 "${DIR}"/uninstall.sh
119
120 fakeroot debian/rules build
121
122 # manpage
123 cp grml2usb.8.txt grml2usb-$VERSION/
124 cp grml2iso.8.txt grml2usb-$VERSION/
125 gzip -9 --to-stdout grml2usb-$VERSION/grml2usb.8.txt > grml2usb-$VERSION/grml2usb.8.gz
126 gzip -9 --to-stdout grml2usb-$VERSION/grml2iso.8.txt > grml2usb-$VERSION/grml2iso.8.gz
127 rm grml2usb-$VERSION/grml2usb.8.txt
128 rm grml2usb-$VERSION/grml2iso.8.txt
129
130 # binaries, grub, lilo
131 cp grml2usb grml2usb-compat grml2iso mbr/mbrldr mbr/mbrmgr grub/* lilo/lilo.static.* grml2usb-$VERSION/
132
133 tar zcf grml2usb.tgz "${DIR}"
134
135 rm -rf "${DIR}"
136 md5sum grml2usb.tgz > grml2usb.tgz.md5
137 gpg --clearsign grml2usb.tgz.md5
138 rm grml2usb.tgz.md5
139 echo "Generated grml2usb.tgz and grml2usb.tgz.md5.asc of grml2usb $VERSION"
140
141 ## END OF FILE #################################################################