Add nokms option to grub menu
[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/grml2iso\n"
59 install -m 755 \${BASE}/grml2iso /usr/sbin/grml2iso
60
61 [ -d /usr/share/grml2usb/grub ] || mkdir -p /usr/share/grml2usb/grub
62 printf "  - /usr/share/grml2usb/grub/splash.xpm.gz\n"
63 install -m 644 \${BASE}/splash.xpm.gz /usr/share/grml2usb/grub/splash.xpm.gz
64 printf "  - /usr/share/grml2usb/grub/grml.png\n"
65 install -m 644 \${BASE}/grml.png      /usr/share/grml2usb/grub/grml.png
66
67 [ -d /usr/share/grml2usb/mbr ] || mkdir -p /usr/share/grml2usb/mbr
68 printf "  - /usr/share/grml2usb/mbr/mbrmgr\n"
69 install -m 644 \${BASE}/mbrmgr /usr/share/grml2usb/mbr/mbrmgr
70 printf "  - /usr/share/grml2usb/mbr/mbrldr\n"
71 install -m 644 \${BASE}/mbrldr /usr/share/grml2usb/mbr/mbrldr
72
73 [ -d /usr/share/man/man8/ ] || mkdir -p /usr/share/man/man8
74 printf "  - /usr/share/man/man8/grml2usb.8.gz\n"
75 install -m 644 \${BASE}/grml2usb.8.gz /usr/share/man/man8/grml2usb.8.gz
76
77 printf "Finished installation.\n"
78 EOF
79
80 chmod 755 "${DIR}"/install.sh
81
82 cat > "${DIR}"/uninstall.sh << EOF
83 #!/bin/sh
84
85 set -e
86
87 if [ \$(id -u) != 0 ] ; then
88    echo "Error: become root before starting \$0" >& 2
89    exit 1
90 fi
91
92 for file in \\
93   /usr/sbin/grml2usb \\
94   /usr/sbin/grml2iso \\
95   /usr/share/grml2usb/grub/splash.xpm.gz \\
96   /usr/share/grml2usb/grub/grml.png \\
97   /usr/share/grml2usb/mbr/mbrmgr \\
98   /usr/share/grml2usb/mbr/mbrldr \\
99   /usr/share/man/man8/grml2usb.8.gz \\
100 ; do
101   printf "Removing \$file: "
102   rm -f \$file && printf "done\n" || printf "failed\n"
103 done
104 EOF
105
106 chmod 755 "${DIR}"/uninstall.sh
107
108 fakeroot debian/rules build
109
110 # manpage
111 cp grml2usb.8.txt grml2usb-$VERSION/
112 cp grml2iso.8.txt grml2usb-$VERSION/
113 gzip -9 --to-stdout grml2usb-$VERSION/grml2usb.8.txt > grml2usb-$VERSION/grml2usb.8.gz
114 gzip -9 --to-stdout grml2usb-$VERSION/grml2iso.8.txt > grml2usb-$VERSION/grml2iso.8.gz
115 rm grml2usb-$VERSION/grml2usb.8.txt
116 rm grml2usb-$VERSION/grml2iso.8.txt
117
118 # binaries, grub
119 cp grml2usb grml2iso mbr/mbrldr mbr/mbrmgr grub/* grml2usb-$VERSION/
120
121 tar zcf grml2usb.tgz "${DIR}"
122
123 rm -rf "${DIR}"
124 md5sum grml2usb.tgz > grml2usb.tgz.md5
125 gpg --clearsign grml2usb.tgz.md5
126 rm grml2usb.tgz.md5
127 echo "Generated grml2usb.tgz and grml2usb.tgz.md5.asc of grml2usb $VERSION"
128
129 ## END OF FILE #################################################################