|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
1 |
#!/bin/bash
|
2 |
#Mythbuntu live cd generating script
|
|
3 |
||
4 |
#####################
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
5 |
#
|
6 |
# License:
|
|
7 |
#
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
8 |
# Copyright © 2007 Mario Limonciello
|
9 |
#
|
|
10 |
# This script is loosely based from Linux Mint's live CD building script remastersys.
|
|
11 |
#
|
|
12 |
# * This program is free software; you can redistribute it and/or modify
|
|
13 |
# * it under the terms of the GNU General Public License as published by
|
|
14 |
# * the Free Software Foundation; either version 2 of the License, or
|
|
15 |
# * (at your option) any later version.
|
|
16 |
# *
|
|
17 |
# * This program is distributed in the hope that it will be useful,
|
|
18 |
# * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
19 |
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
20 |
# * GNU General Public License for more details.
|
|
21 |
# *
|
|
22 |
# * You should have received a copy of the GNU General Public License
|
|
23 |
# * along with this program; if not, write to the Free Software
|
|
24 |
# * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
25 |
#
|
|
26 |
# On Ubuntu systems, a copy of the GPLv2 is available in /usr/share/common-licenses/GPL-2
|
|
27 |
#
|
|
28 |
#####################
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
29 |
#
|
30 |
# Requirements:
|
|
31 |
# * Root permissions
|
|
32 |
# * debootstrap taken from ubuntu/main of the target Ubuntu release
|
|
|
53
by Mario Limonciello
add restricted manager as dependencies. it makes sense to source |
33 |
# * Approx 2GB during the build process
|
34 |
# - 1GB in the build location
|
|
35 |
# - 1GB on the partition containing /var/cache/apt/archives
|
|
36 |
# This script will link externally to /var/cache/apt/archives for
|
|
37 |
# quicker future builds.
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
38 |
#
|
39 |
#####################
|
|
40 |
#
|
|
41 |
# Release Configuration & Environment Variables:
|
|
42 |
#
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
43 |
|
44 |
#Working Directory. You will need 2-3 GB space here.
|
|
45 |
if [ -z "$BASE_INSTALL" ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
46 |
BASE_INSTALL='/tmp/mythbuntu_iso' |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
47 |
fi
|
48 |
||
49 |
#Base mirror for repositories
|
|
50 |
if [ -z "$BASE_MIRROR" ] ; then |
|
|
79
by Mario Limonciello
merge with ubiquity 1.5.4 |
51 |
# BASE_MIRROR='http://mirror.imbrandon.com/ubuntu/'
|
52 |
BASE_MIRROR='http://mirror.cs.umn.edu/ubuntu/' |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
53 |
# BASE_MIRROR='http://ftp.ussg.iu.edu/linux/ubuntu'
|
54 |
# BASE_MIRROR='http://archive.ubuntu.com/ubuntu'
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
55 |
fi
|
56 |
||
57 |
#Proxy if needed
|
|
|
47.1.2
by Dave Walker (Daviey)
Changed http_proxy settings to keep DaveMorris happy |
58 |
if [ -z "$http_proxy" ] ; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
59 |
http_proxy="" |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
60 |
fi
|
61 |
||
62 |
#Number of APT Retries
|
|
63 |
if [ -z "$APT_RETRIES" ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
64 |
APT_RETRIES=25 |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
65 |
fi
|
66 |
||
67 |
#Ubuntu Release to base from
|
|
68 |
if [ -z "$BASE_RELEASE" ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
69 |
BASE_RELEASE='gutsy' |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
70 |
fi
|
71 |
||
72 |
#Ubuntu Version to base from
|
|
73 |
if [ -z "$VERSION" ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
74 |
VERSION='7.10' |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
75 |
fi
|
76 |
||
77 |
#Mythbuntu Release
|
|
78 |
if [ -z "$MYTHBUNTU_RELEASE" ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
79 |
MYTHBUNTU_RELEASE='alpha2' |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
80 |
fi
|
81 |
||
82 |
#Architecture we are building on
|
|
83 |
if [ -z "$ARCHITECTURE" ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
84 |
ARCHITECTURE='i386' |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
85 |
fi
|
86 |
||
87 |
#Place to put the final ISO when done. You will need 300-700 MB here.
|
|
88 |
if [ -z "$NEW_DIRECTORY" ] ; then |
|
|
64
by Mario Limonciello
typo in build script |
89 |
NEW_DIRECTORY="/var/cache/mythbuntu_isos/result" |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
90 |
fi
|
91 |
||
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
92 |
#For minor changes not requiring an entire rebuild
|
|
56
by Mario Limonciello
updated FF icon location |
93 |
if [ -z "$DONT_CLEAN_SYSTEM" ]; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
94 |
DONT_CLEAN_SYSTEM="no" |
|
56
by Mario Limonciello
updated FF icon location |
95 |
fi
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
96 |
|
97 |
#Install all packages and configuration
|
|
|
56
by Mario Limonciello
updated FF icon location |
98 |
if [ -z "$BUILD_SYSTEM" ]; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
99 |
BUILD_SYSTEM="yes" |
|
56
by Mario Limonciello
updated FF icon location |
100 |
fi
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
101 |
|
102 |
#Build the target ISO image
|
|
|
56
by Mario Limonciello
updated FF icon location |
103 |
if [ -z "$BUILD_ISO" ]; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
104 |
BUILD_ISO="yes" |
|
56
by Mario Limonciello
updated FF icon location |
105 |
fi
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
106 |
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
107 |
#APT Key that we sign our packages with
|
|
56
by Mario Limonciello
updated FF icon location |
108 |
if [ -z "$APT_KEY" ]; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
109 |
APT_KEY="EEED06D0" |
|
56
by Mario Limonciello
updated FF icon location |
110 |
fi
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
111 |
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
112 |
#####################
|
113 |
#
|
|
114 |
# Experimental Environment Variables:
|
|
115 |
# WARNING: These will produce unpredictable results
|
|
116 |
||
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
117 |
#For testing the port to non root user
|
118 |
#FAKECHROOT='no'
|
|
119 |
||
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
120 |
#####################
|
121 |
#
|
|
122 |
# Calculated env variables (don't change)
|
|
123 |
#
|
|
124 |
||
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
125 |
#Setup our date that is used throughout the rest of the build
|
126 |
DATE=`date '+%y%m%d'` |
|
127 |
||
128 |
#Find the user building this
|
|
129 |
ID=`id -u` |
|
130 |
||
131 |
#ISO & MD5Sum file names
|
|
132 |
NEW_ISO="mythbuntu-$VERSION~$DATE-$ARCHITECTURE.iso" |
|
133 |
NEW_MD5="$NEW_ISO.md5sum" |
|
134 |
||
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
135 |
#####################
|
136 |
#
|
|
137 |
# Test enviornment, cleanup old builds, and pre-chroot steps
|
|
138 |
#
|
|
139 |
||
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
140 |
#Step 0 - Check users, Clean up old stuf
|
141 |
if [ -z $FAKECHROOT ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
142 |
if [ $ID != '0' ] ; then |
143 |
echo "Not building with fakechroot, need to build as root" |
|
144 |
exit 1
|
|
145 |
else
|
|
146 |
echo "Initializing normal Mythbuntu build initiated by $ID at `date`" |
|
147 |
fi
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
148 |
else
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
149 |
if [ $ID != '0' ] ; then |
150 |
echo "Initializing fakechroot'ed Mythbuntu build initiated by $ID at `date`" |
|
151 |
else
|
|
152 |
echo "Don't build in fakechroot as root." |
|
153 |
exit 1
|
|
154 |
fi
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
155 |
fi
|
156 |
if [ $BASE_INSTALL = '/' ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
157 |
echo "Aborting build. BASE_INSTALL was set to be / which would obliterate this filesystem." |
158 |
exit 2
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
159 |
fi
|
160 |
if [ -d work ] ; then |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
161 |
#when building on pegasus, we build from a work directory
|
162 |
cd work
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
163 |
fi
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
164 |
mkdir -p $BASE_INSTALL
|
165 |
umount $BASE_INSTALL/proc 2>&1
|
|
166 |
umount $BASE_INSTALL/sys 2>&1
|
|
167 |
umount $BASE_INSTALL/dev/pts 2>&1
|
|
|
24
by Mario Limonciello
more ubiquity changes, mostly backend work and text labels |
168 |
umount $BASE_INSTALL/var/cache/apt/archives 2>&1
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
169 |
find $BASE_INSTALL/lib/modules/ -name volatile | xargs umount 2>&1
|
|
24
by Mario Limonciello
more ubiquity changes, mostly backend work and text labels |
170 |
rm -rf $BASE_INSTALL/home/remastersys/ISOTMP/casper/filesystem.squashfs
|
171 |
rm -rf $BASE_INSTALL/home/remastersys/mythbuntu.iso
|
|
|
56
by Mario Limonciello
updated FF icon location |
172 |
if [ "$DONT_CLEAN_SYSTEM" != "yes" ] ; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
173 |
echo "Starting cleanup for Mythbuntu build, `date`" |
174 |
rm -rf $BASE_INSTALL/*
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
175 |
else
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
176 |
echo "Skipping clean because DONT_CLEAN_SYSTEM variable was set to yes." |
177 |
rm $BASE_INSTALL/home/remastersys/ISOTMP/ubuntu #symlink is recreated (Prevent the error) |
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
178 |
fi
|
179 |
||
180 |
||
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
181 |
#Step 1 - debootstrap new base system
|
|
56
by Mario Limonciello
updated FF icon location |
182 |
if [ "$DONT_CLEAN_SYSTEM" != "yes" ] ;then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
183 |
echo "Starting actual Mythbuntu build, `date`" |
184 |
if [ -z $FAKECHROOT ] ; then |
|
185 |
debootstrap --arch $ARCHITECTURE $BASE_RELEASE $BASE_INSTALL $BASE_MIRROR |
|
186 |
else
|
|
187 |
fakeroot fakechroot debootstrap --variant=fakechroot --arch $ARCHITECTURE $BASE_RELEASE $BASE_INSTALL $BASE_MIRROR |
|
188 |
fi
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
189 |
else
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
190 |
echo "Skipping debootstrap, but starting mythbuntu build, `date`" |
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
191 |
fi
|
192 |
||
193 |
#Step 2, Prep remastersys directory
|
|
194 |
mkdir -p $BASE_INSTALL/home/remastersys
|
|
195 |
mkdir -p $BASE_INSTALL/home/remastersys/dummysys
|
|
196 |
mkdir -p $BASE_INSTALL/home/remastersys/dummysys/proc
|
|
197 |
mkdir -p $BASE_INSTALL/home/remastersys/dummysys/tmp
|
|
198 |
chmod ug+rwx,o+rwt $BASE_INSTALL/home/remastersys/dummysys/tmp
|
|
199 |
mkdir -p $BASE_INSTALL/home/remastersys/dummysys/sys
|
|
200 |
mkdir -p $BASE_INSTALL/home/remastersys/dummysys/mnt
|
|
201 |
mkdir -p $BASE_INSTALL/home/remastersys/dummysys/media
|
|
202 |
mkdir -p $BASE_INSTALL/home/remastersys/dummysys/var
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
203 |
mkdir -p $BASE_INSTALL/var/cache/apt/archives/partial
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
204 |
mkdir -p $BASE_INSTALL/tmp
|
205 |
mkdir -p $BASE_INSTALL/etc/apt
|
|
|
7
by Mario Limonciello
dereference a symbolic link |
206 |
cp -L -R ISOTMP $BASE_INSTALL/home/remastersys
|
|
5
by Mario Limonciello
make directories during install. |
207 |
mkdir -p $BASE_INSTALL/home/remastersys/ISOTMP/casper
|
208 |
ln -s . $BASE_INSTALL/home/remastersys/ISOTMP/ubuntu
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
209 |
|
210 |
#Step 3 - copy over networking config
|
|
|
67
by Mario Limonciello
Merge new gutsy changes for packaging |
211 |
if [ -f /etc/resolv.conf ]; then |
212 |
cp /etc/resolv.conf $BASE_INSTALL/etc/. |
|
213 |
fi
|
|
214 |
if [ -f /etc/apt/apt.conf ]; then |
|
215 |
cp /etc/apt/apt.conf $BASE_INSTALL/etc/apt/. |
|
216 |
fi
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
217 |
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
218 |
#Step 4, Copy in our apt key
|
219 |
cp $APT_KEY.gpg $BASE_INSTALL/tmp |
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
220 |
|
221 |
#Step 5, Copy in our background files
|
|
222 |
cp background_setup.xpm $BASE_INSTALL/tmp
|
|
223 |
cp background_install.xpm $BASE_INSTALL/tmp
|
|
224 |
||
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
225 |
#Step 5a, make symlinks to directories we will need to access in fakechroot mode (Experimental)
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
226 |
if [ ! -z $FAKECHROOT ] ; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
227 |
rm $BASE_INSTALL/proc -r |
228 |
rm $BASE_INSTALL/sys -r
|
|
229 |
rm $BASE_INSTALL/dev -r
|
|
230 |
ln -s /proc $BASE_INSTALL/proc
|
|
231 |
ln -s /dev $BASE_INSTALL/dev
|
|
232 |
ln -s /sys $BASE_INSTALL/sys
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
233 |
fi
|
234 |
||
235 |
#####################################
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
236 |
#Step 6, generate our chroot system script
|
237 |
cat <<EOCHROOT >$BASE_INSTALL/tmp/mythbuntu-system-script
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
238 |
#!/bin/bash
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
239 |
#Mythbuntu chroot system script
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
240 |
# Copyright © 2007 Mario Limonciello
|
241 |
||
242 |
export DEBIAN_FRONTEND=noninteractive
|
|
243 |
||
|
24
by Mario Limonciello
more ubiquity changes, mostly backend work and text labels |
244 |
#Step A: Don't start any init scripts in this env
|
245 |
#This will keep any build machines clean of rogue processes
|
|
246 |
mv /sbin/start-stop-daemon /sbin/start-stop-daemon.real
|
|
247 |
cat <<EOF > /sbin/start-stop-daemon
|
|
248 |
#!/bin/sh
|
|
249 |
echo 1>&2
|
|
250 |
echo 'Warning: Fake start-stop-daemon called, doing nothing.' 1>&2
|
|
251 |
exit 0
|
|
252 |
EOF
|
|
253 |
cat <<EOF > /usr/sbin/policy-rc.d
|
|
254 |
#!/bin/sh
|
|
255 |
exit 101
|
|
256 |
EOF
|
|
257 |
chmod 755 /usr/sbin/policy-rc.d
|
|
258 |
chmod 755 /sbin/start-stop-daemon
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
259 |
|
260 |
#Step B: Install the minimal ubuntu system in fakechroot mode, mount imaginary systems in normal mode
|
|
261 |
if [ ! -z $FAKECHROOT ] ; then
|
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
262 |
#Note, this needs to be forced because we don't yet have any apt keys
|
263 |
apt-get install ubuntu-minimal -y --force-yes -o Acquire::Retries=$APT_RETRIES
|
|
264 |
echo "Running fakechroot"
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
265 |
else
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
266 |
mount -t proc none /proc
|
267 |
mount -t devpts none /dev/pts
|
|
268 |
mount -t sysfs sysfs /sys
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
269 |
fi
|
270 |
||
271 |
#Step C: Generate sources.list
|
|
272 |
cat <<EOF >/etc/apt/sources.list
|
|
273 |
deb $BASE_MIRROR $BASE_RELEASE main restricted universe multiverse
|
|
274 |
deb $BASE_MIRROR $BASE_RELEASE-updates main restricted universe multiverse
|
|
275 |
deb $BASE_MIRROR $BASE_RELEASE-security main restricted universe multiverse
|
|
276 |
deb $BASE_MIRROR $BASE_RELEASE-backports main restricted universe multiverse
|
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
277 |
deb http://www.mythbuntu.org/files/packages $BASE_RELEASE mythbuntu
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
278 |
deb-src $BASE_MIRROR $BASE_RELEASE-updates main restricted universe multiverse
|
279 |
deb-src $BASE_MIRROR $BASE_RELEASE universe multiverse main restricted
|
|
280 |
deb-src $BASE_MIRROR $BASE_RELEASE-backports main restricted universe multiverse
|
|
281 |
deb-src $BASE_MIRROR $BASE_RELEASE-security main restricted universe multiverse
|
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
282 |
deb-src http://www.mythbuntu.org/files/packages $BASE_RELEASE mythbuntu
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
283 |
EOF
|
284 |
||
285 |
#Step D: Set default locale and timezone
|
|
286 |
localedef -i en_US -c -f UTF-8 en_US.UTF-8
|
|
287 |
echo "America/Chicago" > /etc/timezone
|
|
288 |
cp /usr/share/zoneinfo/America/Chicago /etc/localtime
|
|
289 |
||
290 |
#Step E: Set up base configuration files for the rest of installation
|
|
291 |
cat <<EOF >/etc/network/interfaces
|
|
292 |
auto lo
|
|
293 |
iface lo inet loopback
|
|
294 |
EOF
|
|
295 |
cat <<EOF >/etc/kernel-img.conf
|
|
296 |
do_symlinks = yes
|
|
297 |
do_initrd = yes
|
|
298 |
EOF
|
|
299 |
cat <<EOF >/etc/casper.conf
|
|
300 |
# This file should go in /etc/casper.conf
|
|
301 |
# Supported variables are:
|
|
302 |
# USERNAME, USERFULLNAME, HOST, BUILD_SYSTEM
|
|
303 |
||
304 |
export USERNAME="ubuntu"
|
|
305 |
export USERFULLNAME="Live session user"
|
|
306 |
export HOST="ubuntu"
|
|
307 |
export BUILD_SYSTEM="Ubuntu"
|
|
308 |
EOF
|
|
309 |
||
310 |
#Step F: Update the bootstrapped install
|
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
311 |
apt-key add /tmp/$APT_KEY.gpg
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
312 |
apt-get update
|
313 |
apt-get upgrade -y
|
|
314 |
||
315 |
#Step G: install the standard ubuntu utils
|
|
316 |
apt-get install -y -o Acquire::Retries=$APT_RETRIES ubuntu-standard
|
|
317 |
||
318 |
#Step H: Install a kernel & Restricted modules
|
|
|
53
by Mario Limonciello
add restricted manager as dependencies. it makes sense to source |
319 |
apt-get install -y -o Acquire::Retries=$APT_RETRIES linux-image-generic linux-restricted-modules-generic restricted-manager
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
320 |
|
|
37
by Mario Limonciello
big changes all around ubiquity. we should be able to go through |
321 |
#Step I: install X, openbox, gdm, gnome-screensaver, idesk, feh, theme, firefox, libgnome2-perl, gnome-volume-manager
|
|
76
by Mario Limonciello
Fix VNC and SSH. Samba and SSH on by default atm. |
322 |
apt-get install -y -o Acquire::Retries=$APT_RETRIES openbox gdm xserver-xorg xterm xfonts-100dpi xfonts-75dpi xfonts-base gnome-screensaver gsfonts-x11 idesk feh firefox libgnome2-perl update-notifier update-manager-core gnome-volume-manager apport acpi-support acpi openssh-server vnc4-common
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
323 |
|
324 |
#Step J: install media players and mythtv frontend and all plugins
|
|
325 |
apt-get install -y -o Acquire::Retries=$APT_RETRIES vlc mythtv-frontend mythvideo mythdvd mythnews mythflix mythweather mythgame mythmusic mythgallery mythtv-themes mythphone mytharchive mythcontrols mythbrowser mplayer xine-ui
|
|
326 |
||
|
37
by Mario Limonciello
big changes all around ubiquity. we should be able to go through |
327 |
#Step K: install modified artwork that we assembled
|
|
54
by Mario Limonciello
update to new upstream ubiquity (REQUIRES 7.10) |
328 |
apt-get install -y -o Acquire::Retries=$APT_RETRIES mythbuntu-artwork-usplash gtk2-engines-mythbuntu mythbuntu-gdm-theme
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
329 |
|
330 |
#Step L: Generate Skeleton Files & Configuration Files
|
|
|
81
by Mario Limonciello
next set of mythtv-setup related changes. it launches now! |
331 |
mkdir -p /etc/xdg/mythtv-ubuntu/gdm/
|
|
79
by Mario Limonciello
merge with ubiquity 1.5.4 |
332 |
cat > /etc/xdg/mythtv-ubuntu/gdm/mythbuntu-gdm-noautologin.conf <<EOF
|
|
54
by Mario Limonciello
update to new upstream ubiquity (REQUIRES 7.10) |
333 |
[daemon]
|
334 |
AutomaticLoginEnable=true
|
|
335 |
AutomaticLogin=mythtv
|
|
|
76
by Mario Limonciello
Fix VNC and SSH. Samba and SSH on by default atm. |
336 |
TimedLoginEnable=true
|
|
54
by Mario Limonciello
update to new upstream ubiquity (REQUIRES 7.10) |
337 |
TimedLogin=mythtv
|
338 |
TimedLoginDelay=5
|
|
339 |
Greeter=/usr/lib/gdm/gdmgreeter
|
|
340 |
User=gdm
|
|
341 |
Group=gdm
|
|
342 |
LogDir=/var/log/gdm
|
|
343 |
PidFile=/var/run/gdm.pid
|
|
344 |
PostLoginScriptDir=/etc/gdm/PostLogin/
|
|
345 |
PreSessionScriptDir=/etc/gdm/PreSession/
|
|
346 |
PostSessionScriptDir=/etc/gdm/PostSession/
|
|
347 |
DisplayInitDir=/etc/gdm/Init
|
|
348 |
XKeepsCrashing=/etc/gdm/XKeepsCrashing
|
|
349 |
RebootCommand=/sbin/shutdown -r now "Rebooted from gdm menu."
|
|
350 |
HaltCommand=/sbin/shutdown -h now "Halted from gdm menu."
|
|
351 |
SuspendCommand=/usr/sbin/pmi action sleep
|
|
352 |
HibernateCommand=/usr/sbin/pmi action hibernate
|
|
353 |
ServAuthDir=/var/lib/gdm
|
|
354 |
BaseXsession=/etc/gdm/Xsession
|
|
355 |
SessionDesktopDir=/etc/X11/sessions/:/etc/dm/Sessions/:/usr/share/gdm/BuiltInSessions/:/usr/share/xsessions/
|
|
356 |
DefaultSession=default.desktop
|
|
357 |
UserAuthDir=
|
|
358 |
UserAuthFBDir=/tmp
|
|
359 |
UserAuthFile=.Xauthority
|
|
360 |
StandardXServer=/usr/X11R6/bin/X
|
|
361 |
Xnest=/usr/bin/Xnest -br -br -audit 0 -name Xnest
|
|
362 |
FirstVT=7
|
|
363 |
VTAllocation=true
|
|
364 |
SoundProgram=/usr/lib/gdmplay
|
|
365 |
GdmXserverTimeout=10
|
|
366 |
||
367 |
[security]
|
|
368 |
AllowRoot=false
|
|
369 |
AllowRemoteRoot=false
|
|
370 |
AllowRemoteAutoLogin=false
|
|
371 |
RelaxPermissions=0
|
|
372 |
CheckDirOwner=true
|
|
373 |
DisallowTCP=true
|
|
374 |
PamStack=gdm
|
|
375 |
||
376 |
[xdmcp]
|
|
377 |
Enable=false
|
|
378 |
||
379 |
[gui]
|
|
380 |
GtkTheme=Mythbuntu
|
|
381 |
AllowGtkThemeChange=false
|
|
382 |
||
383 |
[greeter]
|
|
384 |
Browser=true
|
|
385 |
MinimalUID=1000
|
|
386 |
Exclude=bin,daemon,adm,lp,sync,shutdown,halt,mail,news,uucp,operator,nobody,gdm,postgres,pvm,rpm
|
|
387 |
IncludeAll=true
|
|
388 |
LocaleFile=/etc/gdm/locale.conf
|
|
389 |
ConfigAvailable=false
|
|
390 |
DefaultWelcome=true
|
|
391 |
DefaultRemoteWelcome=true
|
|
392 |
BackgroundColor=#FFFFFF
|
|
393 |
GraphicalThemedColor=#FFFFFF
|
|
394 |
UseCirclesInEntry=true
|
|
395 |
GraphicalTheme=Mythbuntu
|
|
396 |
GraphicalThemeDir=/usr/share/gdm/themes/
|
|
397 |
GraphicalThemeRand=false
|
|
398 |
SoundOnLogin=true
|
|
399 |
SoundOnLoginFile=/usr/share/sounds/question.wav
|
|
400 |
[chooser]
|
|
401 |
HostImageDir=/usr/share/hosts/
|
|
402 |
Hosts=
|
|
403 |
Broadcast=true
|
|
404 |
Multicast=false
|
|
405 |
||
406 |
[debug]
|
|
407 |
Enable=false
|
|
408 |
Gestures=false
|
|
409 |
||
410 |
[servers]
|
|
411 |
0=Standard
|
|
412 |
||
413 |
[server-Standard]
|
|
414 |
name=Standard server
|
|
415 |
command=/usr/X11R6/bin/X -br -audit 0
|
|
416 |
flexible=true
|
|
417 |
||
418 |
[server-Terminal]
|
|
419 |
name=Terminal server
|
|
420 |
command=/usr/X11R6/bin/X -br -audit 0 -terminate
|
|
421 |
flexible=false
|
|
422 |
handled=false
|
|
423 |
||
424 |
[server-Chooser]
|
|
425 |
name=Chooser server
|
|
426 |
command=/usr/X11R6/bin/X -br -audit 0
|
|
427 |
flexible=false
|
|
428 |
chooser=true
|
|
429 |
EOF
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
430 |
cat > /etc/skel/.ideskrc <<EOF
|
431 |
table Config
|
|
432 |
FontName: arial
|
|
433 |
FontSize: 14
|
|
434 |
FontColor: #37CFA6
|
|
435 |
ToolTip.FontSize: 11
|
|
436 |
ToolTip.FontName: arial
|
|
437 |
ToolTip.ForeColor: #0000FF
|
|
438 |
ToolTip.BackColor: #FFFFFF
|
|
439 |
ToolTip.CaptionOnHover: true
|
|
440 |
ToolTip.CaptionPlacement: Right
|
|
441 |
Locked: false
|
|
442 |
Transparency: 92
|
|
443 |
Shadow: true
|
|
444 |
ShadowColor: #000000
|
|
445 |
ShadowX: 1
|
|
446 |
ShadowY: 1
|
|
447 |
Bold: true
|
|
448 |
ClickDelay: 300
|
|
449 |
IconSnap: true
|
|
450 |
SnapWidth: 10
|
|
451 |
SnapHeight: 10
|
|
452 |
SnapOrigin: BottomRight
|
|
453 |
SnapShadow: false
|
|
454 |
SnapShadowTrans: 200
|
|
455 |
CaptionOnHover: false
|
|
456 |
CaptionPlacement: bottom
|
|
457 |
FillStyle: fillinvert
|
|
458 |
Background.Delay: 0
|
|
459 |
Background.Source: None
|
|
460 |
Background.File: None
|
|
461 |
Background.Mode: Center
|
|
462 |
Background.Color: #C2CCFF
|
|
463 |
end
|
|
464 |
||
465 |
table Actions
|
|
466 |
Lock: control right doubleClk
|
|
467 |
Reload: middle doubleClk
|
|
468 |
Drag: left hold
|
|
469 |
EndDrag: left singleClk
|
|
470 |
Execute[0]: left doubleClk
|
|
471 |
Execute[1]: right doubleClk
|
|
472 |
end
|
|
473 |
EOF
|
|
474 |
mkdir /etc/skel/.idesktop
|
|
475 |
cat > /etc/skel/.dmrc <<EOF
|
|
476 |
[Desktop]
|
|
477 |
Session=mythtv_setup
|
|
478 |
EOF
|
|
479 |
cat > /etc/skel/.idesktop/mythtv-setup.lnk <<EOF
|
|
480 |
table Icon
|
|
481 |
Caption: MythTV Setup
|
|
482 |
CaptionTip: Runs mythtv-setup
|
|
483 |
Command: mythtv-setup
|
|
484 |
Icon: /usr/share/mythtv/themes/blue/setup.png
|
|
|
4
by Mario Limonciello
add font color |
485 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
486 |
Width: 90
|
487 |
Height: 60
|
|
488 |
X: 59
|
|
489 |
Y: 3
|
|
490 |
end
|
|
491 |
EOF
|
|
492 |
cat > /etc/skel/.idesktop/mythtv-backend-stop.lnk <<EOF
|
|
493 |
table Icon
|
|
494 |
Caption: Stop MythTV Backend
|
|
495 |
CaptionTip: Stops backend
|
|
496 |
Command: xterm -e "gksudo /etc/init.d/mythtv-backend stop --description \"Stop Mythtv-Backend\" && sleep 3"
|
|
497 |
Icon: /usr/share/mythtv/themes/blue/stop_button_pushed.png
|
|
|
4
by Mario Limonciello
add font color |
498 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
499 |
Width: 60
|
500 |
Height: 60
|
|
501 |
X: 299
|
|
502 |
Y: 3
|
|
503 |
end
|
|
504 |
EOF
|
|
505 |
cat > /etc/skel/.idesktop/mythtv-backend-start.lnk <<EOF
|
|
506 |
table Icon
|
|
507 |
Caption: Start MythTV Backend
|
|
508 |
CaptionTip: Starts backend
|
|
509 |
Command: xterm -e "gksudo /etc/init.d/mythtv-backend start --description \"Start Mythtv-Backend\" && sleep 3"
|
|
510 |
Icon: /usr/share/mythtv/themes/blue/play_button_on.png
|
|
|
4
by Mario Limonciello
add font color |
511 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
512 |
Width: 60
|
513 |
Height: 60
|
|
514 |
X: 519
|
|
515 |
Y: 3
|
|
516 |
end
|
|
517 |
EOF
|
|
518 |
cat > /etc/skel/.idesktop/mythtv-backend-restart.lnk <<EOF
|
|
519 |
table Icon
|
|
520 |
Caption: Restart MythTV Backend
|
|
521 |
CaptionTip: Restarts backend
|
|
522 |
Command: xterm -e "gksudo /etc/init.d/mythtv-backend restart --description \"Restart Mythtv-Backend\" && sleep 3"
|
|
523 |
Icon: /usr/share/mythtv/themes/default/mv_gallery_dir_up.png
|
|
|
4
by Mario Limonciello
add font color |
524 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
525 |
Width: 60
|
526 |
Height: 60
|
|
527 |
X: 704
|
|
528 |
Y: 3
|
|
529 |
end
|
|
530 |
EOF
|
|
531 |
cat > /etc/skel/.idesktop/mythfilldatabase.lnk <<EOF
|
|
532 |
table Icon
|
|
533 |
Caption: mythfilldatabase
|
|
534 |
CaptionTip: Fills with initial data
|
|
535 |
Command: xterm -e "mythfilldatabase && sleep 3"
|
|
536 |
Icon: /usr/share/mythtv/themes/blue/showstatus.png
|
|
|
4
by Mario Limonciello
add font color |
537 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
538 |
Width: 90
|
539 |
Height: 60
|
|
540 |
X: 864
|
|
541 |
Y: 3
|
|
542 |
end
|
|
543 |
EOF
|
|
544 |
cat > /usr/share/xsessions/mythtv_setup.desktop <<EOF
|
|
545 |
[Desktop Entry]
|
|
546 |
Encoding=UTF-8
|
|
547 |
Name=MythTV Setup
|
|
548 |
Comment=Use this session to install and change mythtv settings
|
|
549 |
Exec=/usr/share/mythtv/startmythtv_setup.sh
|
|
550 |
Icon=
|
|
551 |
Type=Application
|
|
552 |
EOF
|
|
553 |
cat > /usr/share/mythtv/startmythtv_setup.sh <<EOF
|
|
554 |
#!/bin/sh
|
|
555 |
#MythTV Install & Settings Session
|
|
556 |
# Copyright © 2007 Mario Limonciello
|
|
557 |
||
558 |
#Setup background
|
|
559 |
feh --bg-center ~/.background.xpm
|
|
560 |
||
561 |
#Start screensaver
|
|
562 |
gnome-screensaver
|
|
563 |
||
564 |
#Start desktop icons
|
|
565 |
idesk &
|
|
566 |
||
|
81
by Mario Limonciello
next set of mythtv-setup related changes. it launches now! |
567 |
#Gnome volume manager if present
|
568 |
if [ -x /usr/bin/gnome-volume-manager ]; then
|
|
569 |
gnome-volume-manager&
|
|
570 |
fi
|
|
571 |
||
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
572 |
#Start window manager
|
573 |
exec openbox
|
|
574 |
EOF
|
|
575 |
chmod +x /usr/share/mythtv/startmythtv_setup.sh
|
|
576 |
cat > /etc/skel/.gtkrc-2.0 <<EOF
|
|
|
47
by Mario Limonciello
new theme for gtk |
577 |
include "/usr/share/themes/Mythbuntu/gtk-2.0/gtkrc"
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
578 |
EOF
|
579 |
cp /etc/skel/.gtkrc-2.0 /root
|
|
|
75
by Mario Limonciello
Readd openssh-server to build deps, but don't start it on boot. |
580 |
cp /etc/skel/.gtkrc-2.0 /home/mythtv
|
581 |
chown mythtv:mythtv /home/mythtv/.gtkrc-2.0
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
582 |
mv /tmp/background_setup.xpm /etc/skel/.background.xpm
|
|
82
by Mario Limonciello
set temporary higher alternative on gdm-cdd.conf |
583 |
#TODO: higher priority until the ubuntu-mythtv-frontend package is fixed
|
584 |
update-alternatives --install /etc/gdm/gdm-cdd.conf gdm-config-derivative /etc/xdg/mythtv-ubuntu/gdm/mythbuntu-gdm-noautologin.conf 65
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
585 |
|
586 |
#Step M: Grab Live Cd Build Dependencies
|
|
|
76
by Mario Limonciello
Fix VNC and SSH. Samba and SSH on by default atm. |
587 |
apt-get install -y -o Acquire::Retries=$APT_RETRIES coreutils mkisofs findutils bash passwd sed squashfs-tools casper rsync mount eject libdebian-installer4 os-prober ubiquity ubiquity-frontend-mythbuntu ubiquity-ubuntu-artwork user-setup memtest86+ dpkg-dev discover1 language-selector-common
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
588 |
|
589 |
#Step N: Preinstall all other options
|
|
|
70
by Mario Limonciello
ubiquity: |
590 |
apt-get -y install -o Acquire::Retries=$APT_RETRIES ubuntu-mythtv-frontend mythtv-backend-master lirc lirc-modules-source module-assistant mythweb mythtv samba
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
591 |
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
592 |
#Step O: Build CD information
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
593 |
cd /
|
594 |
mkdir -p /home/remastersys/ISOTMP/.disk
|
|
595 |
cat > /home/remastersys/ISOTMP/.disk/info << EOF
|
|
596 |
Mythbuntu $VERSION "$BASE_RELEASE" - $MYTHBUNTU_RELEASE $ARCHITECTURE ($DATE)
|
|
597 |
EOF
|
|
|
20
by Mario Limonciello
fix usplash and ubiquity dependency problems during build |
598 |
cat > /home/remastersys/ISOTMP/.disk/release_notes_url << EOF
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
599 |
www.mythbuntu.org/$VERSION/release_notes
|
|
20
by Mario Limonciello
fix usplash and ubiquity dependency problems during build |
600 |
EOF
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
601 |
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
602 |
#Step P: prepare ubiquity
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
603 |
rm -f /usr/share/ubiquity/apt-setup
|
604 |
echo "#do nothing" > /usr/share/ubiquity/apt-setup
|
|
605 |
chmod 755 /usr/share/ubiquity/apt-setup
|
|
606 |
dpkg-reconfigure casper
|
|
607 |
||
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
608 |
#Step Q: copy current kernel/initrd
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
609 |
cp /vmlinuz /home/remastersys/ISOTMP/casper/
|
610 |
cp /initrd.img /home/remastersys/ISOTMP/casper/initrd.gz
|
|
611 |
cp /boot/memtest86+.bin /home/remastersys/ISOTMP/install/mt86plus
|
|
612 |
||
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
613 |
#Step R: remove our proxy conf file
|
|
81
by Mario Limonciello
next set of mythtv-setup related changes. it launches now! |
614 |
if [ -f /etc/apt/apt.conf ]; then
|
615 |
rm /etc/apt/apt.conf
|
|
616 |
fi
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
617 |
|
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
618 |
#Step S: unmount imaginary filesystems
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
619 |
#the last one gets mounted during l-r-m install, but can be from many different kernels
|
620 |
if [ -z $FAKECHROOT ] ; then
|
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
621 |
umount /proc
|
622 |
umount /dev/pts
|
|
623 |
umount /sys
|
|
624 |
umount /var/cache/apt/archives
|
|
625 |
find /lib/modules/ -name volatile | xargs umount
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
626 |
fi
|
627 |
||
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
628 |
#Step T: Remove our archives directory that was linked in from the outside world
|
|
25
by Mario Limonciello
Don't remove all downloaded files from /var/cache/apt/archives |
629 |
rm -rf /var/cache/apt/archives
|
630 |
mkdir -p /var/cache/apt/archives/partial
|
|
631 |
||
632 |
||
|
31
by Mario Limonciello
work off a mythbuntu.org repo for changed packages |
633 |
#Step U: Remove our fake scripts
|
|
24
by Mario Limonciello
more ubiquity changes, mostly backend work and text labels |
634 |
rm /usr/sbin/policy-rc.d
|
635 |
rm /sbin/start-stop-daemon
|
|
636 |
mv /sbin/start-stop-daemon.real /sbin/start-stop-daemon
|
|
|
74
by Mario Limonciello
Add acpi to live CD deps. |
637 |
|
638 |
#Step V: Remove Autostarting of:
|
|
|
47.1.1
by Dave Walker (Daviey)
* Added removal of apache2, mysql & mythtv-backend autostarting at boot via mythbuntu_install.sh |
639 |
update-rc.d -f mythtv-backend remove
|
640 |
update-rc.d -f mysql remove
|
|
641 |
update-rc.d -f apache2 remove
|
|
|
70
by Mario Limonciello
ubiquity: |
642 |
update-rc.d -f ntp remove
|
643 |
update-rc.d -f samba remove
|
|
|
75
by Mario Limonciello
Readd openssh-server to build deps, but don't start it on boot. |
644 |
update-rc.d -f ssh remove
|
|
24
by Mario Limonciello
more ubiquity changes, mostly backend work and text labels |
645 |
|
|
74
by Mario Limonciello
Add acpi to live CD deps. |
646 |
#Step W: Re-enable apache upon reinstall
|
647 |
cat > /etc/default/apache2 <<EOF
|
|
648 |
# 0 = start on boot; 1 = don't start on boot
|
|
649 |
NO_START=0
|
|
650 |
EOF
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
651 |
EOCHROOT
|
652 |
||
653 |
#Step 6, generate our chroot iso script
|
|
654 |
cat <<EOCHROOT >$BASE_INSTALL/tmp/mythbuntu-iso-script
|
|
655 |
#!/bin/bash
|
|
656 |
#Mythbuntu chroot iso build script
|
|
657 |
# Copyright © 2007 Mario Limonciello
|
|
658 |
||
|
74
by Mario Limonciello
Add acpi to live CD deps. |
659 |
#Step X: Create Live Disk User & prep their personalized desktop
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
660 |
groupadd -g 999 ubuntu
|
661 |
useradd -g 999 -u 999 -s /bin/bash -m -G adm,dialout,cdrom,floppy,audio,dip,video,plugdev,mythtv ubuntu
|
|
662 |
mv /tmp/background_install.xpm /home/ubuntu/.background.xpm
|
|
663 |
rm /home/ubuntu/.idesktop/*
|
|
664 |
cat > /home/ubuntu/.idesktop/gmplayer.lnk <<EOF
|
|
665 |
table Icon
|
|
666 |
Caption: GMplayer
|
|
667 |
CaptionTip: Runs mplayer from livecd
|
|
668 |
Command: gmplayer
|
|
669 |
Icon: /usr/share/pixmaps/mplayer.xpm
|
|
|
4
by Mario Limonciello
add font color |
670 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
671 |
Width: 48
|
672 |
Height: 48
|
|
673 |
X: 243
|
|
674 |
Y: 0
|
|
675 |
end
|
|
676 |
EOF
|
|
677 |
cat > /home/ubuntu/.idesktop/mythfrontend.lnk <<EOF
|
|
678 |
table Icon
|
|
679 |
Caption: MythTV Frontend
|
|
680 |
CaptionTip: Runs directly from live cd
|
|
681 |
Command: export DEBIAN_FRONTEND=gnome; echo | sudo -S dpkg-reconfigure mythtv-common; mythfrontend
|
|
682 |
Icon: /usr/share/mythtv/themes/blue/myth_tv_logo.png
|
|
|
4
by Mario Limonciello
add font color |
683 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
684 |
Width: 145
|
685 |
Height: 48
|
|
686 |
X: 1
|
|
687 |
Y: 0
|
|
688 |
end
|
|
689 |
EOF
|
|
690 |
cat > /home/ubuntu/.idesktop/ubiquity.lnk <<EOF
|
|
691 |
table Icon
|
|
|
70
by Mario Limonciello
ubiquity: |
692 |
Caption: Install Mythbuntu
|
693 |
Caption Tip: Installs Mythbuntu directly to this system
|
|
|
88
by Mario Limonciello
change - to _ in new installer |
694 |
Command: echo | sudo -S /usr/bin/ubiquity mythbuntu_ui
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
695 |
Icon: /usr/share/pixmaps/ubiquity.png
|
|
4
by Mario Limonciello
add font color |
696 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
697 |
Width: 64
|
698 |
Height: 64
|
|
699 |
X: 51
|
|
700 |
Y: 85
|
|
701 |
end
|
|
702 |
EOF
|
|
703 |
cat > /home/ubuntu/.idesktop/vlc.lnk <<EOF
|
|
704 |
table Icon
|
|
705 |
Caption: VLC
|
|
706 |
CaptionTip: Runs VLC from live cd
|
|
707 |
Command: vlc
|
|
708 |
Icon: /usr/share/vlc/vlc.xpm
|
|
|
4
by Mario Limonciello
add font color |
709 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
710 |
Width: 48
|
711 |
Height: 48
|
|
712 |
X: 163
|
|
713 |
Y: 0
|
|
714 |
end
|
|
715 |
EOF
|
|
716 |
cat > /home/ubuntu/.idesktop/firefox.lnk <<EOF
|
|
717 |
table Icon
|
|
718 |
Caption: Firefox
|
|
719 |
CaptionTip: Runs Firefox from live cd
|
|
720 |
Command: firefox http://www.mythbuntu.org
|
|
|
56
by Mario Limonciello
updated FF icon location |
721 |
Icon: /usr/share/pixmaps/firefox.png
|
|
4
by Mario Limonciello
add font color |
722 |
FontColor: #FFFFFA
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
723 |
Width: 48
|
724 |
Height: 48
|
|
725 |
X: 323
|
|
726 |
Y: 0
|
|
727 |
end
|
|
728 |
EOF
|
|
729 |
chown 999:999 /home/ubuntu/.idesk* -R
|
|
730 |
||
|
74
by Mario Limonciello
Add acpi to live CD deps. |
731 |
#Step Y: Generate manifests and control scripts
|
|
22
by Mario Limonciello
finally fix the broken package list. this will allow for much more further work on the installer (Just a matter of escaping an env variable during a chroot) |
732 |
dpkg-query -W --showformat='\${Package} \${Version}\n' | grep -v deinstall > /home/remastersys/ISOTMP/casper/filesystem.manifest
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
733 |
cat > /home/remastersys/control <<EOF
|
734 |
/casper/d
|
|
735 |
/libdebian-installer4/d
|
|
736 |
/os-prober/d
|
|
737 |
/ubiquity/d
|
|
738 |
/user-setup/d
|
|
|
37
by Mario Limonciello
big changes all around ubiquity. we should be able to go through |
739 |
/gnome-mount/d
|
740 |
/gnome-volume-manager/d
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
741 |
EOF
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
742 |
sed -f /home/remastersys/control < /home/remastersys/ISOTMP/casper/filesystem.manifest > /home/remastersys/ISOTMP/casper/filesystem.manifest-desktop
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
743 |
|
|
74
by Mario Limonciello
Add acpi to live CD deps. |
744 |
#Step Z: Prep remastersys directories
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
745 |
find /var/log -name *log.* > /home/remastersys/varexc
|
746 |
find /var -name *.pid >> /home/remastersys/varexc
|
|
747 |
find /var/tmp -name *cache* >> /home/remastersys/varexc
|
|
748 |
rsync --exclude-from=/home/remastersys/varexc -av /var/. /home/remastersys/dummysys/var/.
|
|
749 |
||
|
74
by Mario Limonciello
Add acpi to live CD deps. |
750 |
#Step Za: create squashfs
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
751 |
if [ ! -z $FAKECHROOT ] ; then
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
752 |
#Clean up directories before making
|
753 |
rm -r /proc /sys /dev
|
|
754 |
mkdir -p /proc
|
|
755 |
mkdir -p /dev
|
|
756 |
mkdir -p /sys
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
757 |
fi
|
758 |
mksquashfs / /home/remastersys/ISOTMP/casper/filesystem.squashfs -e \
|
|
759 |
.thumbnails \
|
|
760 |
Cache \
|
|
761 |
/etc/X11/xorg.conf \
|
|
762 |
/etc/resolv.conf \
|
|
763 |
/etc/mtab \
|
|
764 |
/etc/fstab \
|
|
765 |
/media \
|
|
766 |
/mnt \
|
|
767 |
/proc \
|
|
768 |
/sys \
|
|
769 |
/tmp \
|
|
770 |
/var \
|
|
771 |
/home/remastersys
|
|
772 |
||
|
74
by Mario Limonciello
Add acpi to live CD deps. |
773 |
#Step Zb: add other live cd folder requirements
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
774 |
mksquashfs /home/remastersys/dummysys/ /home/remastersys/ISOTMP/casper/filesystem.squashfs
|
775 |
||
|
74
by Mario Limonciello
Add acpi to live CD deps. |
776 |
#Step Zc: remove our live user
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
777 |
userdel ubuntu
|
778 |
||
|
74
by Mario Limonciello
Add acpi to live CD deps. |
779 |
#Step Zd: create a md5sum for the ISO
|
780 |
cd /home/remastersys/ISOTMP && find . -type f -print0 | xargs -0 md5sum | sed /md5sum/d | sed /boot.cat/d | sed /isolinux.bin/d > md5sum.txt
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
781 |
|
|
74
by Mario Limonciello
Add acpi to live CD deps. |
782 |
#Step Ze: create ISO
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
783 |
mkisofs \
|
784 |
-r \
|
|
|
75
by Mario Limonciello
Readd openssh-server to build deps, but don't start it on boot. |
785 |
-V "Mythbuntu $VERSION $MYTHBUNTU_RELEASE" \
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
786 |
-cache-inodes \
|
787 |
-J \
|
|
788 |
-l \
|
|
789 |
-b isolinux/isolinux.bin \
|
|
790 |
-c isolinux/boot.cat \
|
|
791 |
-no-emul-boot \
|
|
792 |
-boot-load-size 4 \
|
|
793 |
-boot-info-table \
|
|
794 |
-o /home/remastersys/mythbuntu.iso "/home/remastersys/ISOTMP"
|
|
795 |
ls -hs /home/remastersys/mythbuntu.iso
|
|
796 |
EOCHROOT
|
|
797 |
||
798 |
#####################################
|
|
799 |
#Step 7, run our chroot script
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
800 |
chmod +x $BASE_INSTALL/tmp/mythbuntu-system-script
|
801 |
chmod +x $BASE_INSTALL/tmp/mythbuntu-iso-script
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
802 |
if [ ! -z $FAKECHROOT ] ; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
803 |
TIME="The fakechroot build process ran for %E." time fakeroot fakechroot chroot $BASE_INSTALL /tmp/mythbuntu-system-script |
804 |
TIME2="The fakechroot build process ran for %E." time fakeroot fakechroot chroot $BASE_INSTALL /tmp/mythbuntu-iso-script |
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
805 |
else
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
806 |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
807 |
if [ $BUILD_SYSTEM = "yes" ]; then |
808 |
mount --bind /var/cache/apt/archives $BASE_INSTALL/var/cache/apt/archives |
|
809 |
TIME="The chroot build process ran for %E." time chroot $BASE_INSTALL /tmp/mythbuntu-system-script |
|
810 |
else
|
|
811 |
echo "Skipping chroot build process as requested by user." |
|
812 |
fi
|
|
813 |
if [ $BUILD_ISO = "yes" ]; then |
|
814 |
TIME2="The chroot iso process ran for %E." time chroot $BASE_INSTALL /tmp/mythbuntu-iso-script |
|
815 |
else
|
|
816 |
echo "Skipping chroot iso process as requested by user." |
|
817 |
fi
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
818 |
|
819 |
||
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
820 |
fi
|
821 |
||
822 |
#####################################
|
|
823 |
#Step 8, Cleanup
|
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
824 |
rm $BASE_INSTALL/tmp/mythbuntu-system-script
|
825 |
rm $BASE_INSTALL/tmp/mythbuntu-iso-script
|
|
|
1
by Mario Limonciello
initial merge from old ~ubuntu-mythtv/devel branch |
826 |
|
827 |
#####################################
|
|
828 |
#Step 9, Finished up
|
|
829 |
#####################################
|
|
|
23
by Mario Limonciello
silly script, == is for C! |
830 |
if [ $BUILD_ISO = "yes" ]; then |
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
831 |
mv $BASE_INSTALL/home/remastersys/mythbuntu.iso $NEW_DIRECTORY/$NEW_ISO |
832 |
cd $NEW_DIRECTORY |
|
833 |
md5sum $NEW_ISO > $NEW_MD5 |
|
834 |
echo "Your mythbuntu image generation completed at `date`" |
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
835 |
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
836 |
echo "The ISO image is located in $NEW_DIRECTORY/$NEW_ISO" |
837 |
echo "The ISO md5sum is located in $NEW_DIRECTORY/$NEW_MD5" |
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
838 |
else
|
|
63
by Mario Limonciello
Add support to install prop. drivers w/ restricted manager. |
839 |
echo "The base install is located in $BASE_INSTALL" |
840 |
echo "No ISO image was generated as requested by user." |
|
|
21
by Mario Limonciello
Re-add broken ubiquity signals |
841 |
fi
|