c62d4e8338e165e7f4983bbcf532d82e649b5e9f
[virt-p2v.git] / p2v.ks.in
1 # LiveCD kickstart file for virt-p2v
2 # @configure_input@
3 #
4 # Copyright (C) 2007-2008 Red Hat Inc.
5 # Written by Richard W.M. Jones <rjones@redhat.com>
6 #
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2 of the License, or
10 # (at your option) any later version.
11 #
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20
21 lang @CD_LANG@
22 keyboard @CD_KEYBOARD@
23 timezone @CD_TIMEZONE@
24 auth --useshadow --enablemd5
25 selinux --enforcing
26 firewall --disabled
27
28 repo --name=released --baseurl=@CD_BASE_URL@
29 #repo --name=released --mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-@CD_BASE@&arch=@CD_ARCH@
30 @LOCALREPO@
31
32 %packages
33 bash
34 kernel
35 syslinux
36 passwd
37 policycoreutils
38 chkconfig
39 authconfig
40 rootfiles
41
42 # dd, sleep, sync, etc.
43 coreutils
44
45 # For device mapping
46 device-mapper
47 util-linux-ng
48 module-init-tools
49 gzip
50 kpartx
51
52 # For remote communications
53 openssh-clients
54 nc
55
56 # For the shell script
57 grep
58 sed
59 gawk
60 findutils
61
62 # For IP configuration
63 iproute
64 net-tools
65
66 # For OCaml
67 ocaml
68 ocaml-runtime
69 ocaml-pcre
70 ocaml-extlib
71 ocaml-xml-light
72 ocaml-libvirt
73 ocaml-newt
74
75 # For network configuration
76 dhclient
77
78 # Some other generally useful packages
79 which
80 perl
81 rpm
82 lsof
83 strace
84 vim-minimal
85 vim-enhanced
86 bind-utils
87 file
88
89
90 %post --nochroot
91
92 # These files have to be copied from the build directory into the
93 # squashfs.  See also:
94 # http://www.mail-archive.com/fedora-livecd-list@redhat.com/msg01470.html
95
96 # Just check everything exists, because kickstart will not give
97 # an error if files or paths are missing.
98 if test "x$INSTALL_ROOT" = "x"; then ERROR=1; fi
99 if ! test -d "$INSTALL_ROOT/usr/bin"; then ERROR=1; fi
100 if ! test -d "@abs_top_srcdir@"; then ERROR=1; fi
101 if ! test -d "@abs_top_srcdir@/extras"; then ERROR=1; fi
102 if ! test -f "@abs_top_srcdir@/virt-p2v"; then ERROR=1; fi
103
104 if test "x$ERROR" = "x1"; then
105     echo "**************************************************"
106     echo "**************************************************"
107     echo "**************************************************"
108     echo "Missing files or directories found.  This ISO will be bad."
109     echo "**************************************************"
110     echo "**************************************************"
111     echo "**************************************************"
112     # Exit 1 won't stop anything, but it makes me feel better.
113     exit 1
114 fi
115
116 install -m 0755 -o root -g root \
117         @abs_top_srcdir@/virt-p2v \
118         @abs_top_srcdir@/virt-p2v-update-wrapper \
119         @abs_top_srcdir@/iso-attach \
120         $INSTALL_ROOT/usr/bin
121
122 install -m 0644 -o root -g root @abs_top_srcdir@/inittab \
123         $INSTALL_ROOT/etc
124
125 cp -a $INSTALL_ROOT/etc/lvm $INSTALL_ROOT/etc/lvm.new
126 install -m 0644 -o root -g root @abs_top_srcdir@/lvm.conf \
127         $INSTALL_ROOT/etc/lvm.new
128
129 # Copy everything under extras to the squashfs /extras.
130 cp -a @abs_top_srcdir@/extras $INSTALL_ROOT/extras
131
132 %end
133
134 %post
135
136 # Restore SELinux permissions on installed binaries.
137 /sbin/restorecon /usr/bin/virt-p2v
138 /sbin/restorecon /usr/bin/virt-p2v-update-wrapper
139 /sbin/restorecon /usr/bin/iso-attach
140
141 # Turn off firstboot for livecd boots.
142 echo "RUN_FIRSTBOOT=NO" > /etc/sysconfig/firstboot
143
144 # Don't start yum-updatesd for livecd boots.
145 /sbin/chkconfig --level 345 yum-updatesd off
146
147 # Don't start cron/at as they tend to spawn things which are
148 # disk intensive that are painful on a live image.
149 /sbin/chkconfig --level 345 crond off
150 /sbin/chkconfig --level 345 atd off
151 /sbin/chkconfig --level 345 anacron off
152 /sbin/chkconfig --level 345 readahead_early off
153 /sbin/chkconfig --level 345 readahead_later off
154
155 # Stopgap fix for RH #217966; should be fixed in HAL instead
156 touch /media/.hal-mtab
157
158 # Make some mountpoints.
159 mkdir /mnt/root
160
161 # Remove some unused files.
162 rm -rf /usr/share/man           ;# 20 MB
163 rm -rf /usr/share/doc           ;# 44 MB
164 rm -rf /usr/share/locale        ;# 60 MB
165
166 %end