4d18d691669c1dc891b7bd1e59a546faa960533a
[util-vserver.git] / distrib / gentoo / initpre
1 #!/bin/bash
2
3 # Copyright (C) 2006 Benedikt Boehm <hollow@gentoo.org>
4 #  
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; version 2 of the License.
8 #  
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #  
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17
18 ## Called as: initpost <cfgdir> <path of util-vserver-vars>
19
20 vdir="$1"/vdir
21 . "$2"
22
23 # portage stuff
24 echo ">>> Adding shared /usr/portage to fstab ... "
25
26 hash portageq &>/dev/null
27
28 if test $? -eq 0; then
29         _PORTDIR=$(portageq portdir)
30 else
31         _PORTDIR=/usr/portage
32 fi
33
34 if test -d $_PORTDIR; then
35         ( echo
36           echo "# shared portage tree"
37           echo "${_PORTDIR}           /usr/portage           none bind,ro 0 0"
38           echo "${_PORTDIR}/distfiles /usr/portage/distfiles none bind,rw 0 0"
39         ) >> "$1"/fstab
40 else
41         echo "!!! Cannot find a portage tree! You should definitely use a"
42         echo "!!! shared portage tree if you have multiple Gentoo guests!"
43 fi
44
45
46 # initstyle sanity
47 initstyle=sysv
48 test -e "$1"/apps/init/style && initstyle=$(<"$1"/apps/init/style)
49
50 echo ">>> Checking init-style ... $initstyle"
51
52 if test "$initstyle" != "gentoo" -a "$initstyle" != "plain"; then
53         echo "!!! The init-style you specified is not supported for Gentoo"
54         echo "!!! Please use one of: plain, gentoo"
55 fi
56
57 echo -n ">>> Unpacking template ... "