summaryrefslogtreecommitdiffstats
path: root/tools/make_mdkinst_stage2
blob: 724808dd717f338f022a3642fb2076cdf27ec1e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/bin/sh

[ $# != 2 ] && { 
    echo "usage: make_mdkinst_stage2 <live dir> <output image>" ; 
    echo "  example: misc/make_mdkinst_stage2 Mandrake/mdkinst Mandrake/base/mdkinst_stage2"
    exit
}

STAGE2TMP=/tmp/stage2_tmp
MKE2FS="/sbin/mke2fs -q -m 0 -F -s 1"
MNTPOINT=/tmp/stage2_img
REP4PMS=/usr/bin/perl-install
DEST=$1
STAGE2=$2

if [ $EUID != "0" ]; then
    SUDO="sudo"
    PATH="/sbin:/usr/sbin:$PATH"
fi

$SUDO rm -rf $STAGE2TMP
install -d $STAGE2TMP
$SUDO cp -a $DEST/* $STAGE2TMP

mkdir -p $MNTPOINT 2>/dev/null
for i in $MNTPOINT $STAGE2; do $SUDO umount $i 2>/dev/null ; done
dd if=/dev/zero of=$STAGE2 bs=1M count=15
$MKE2FS -N 1000 $STAGE2
$SUDO mount -t ext2 $STAGE2 $MNTPOINT -o loop

# hack to reduce the STAGE2 image (do not edit without modifying in DrakX)
rm $STAGE2TMP/usr/X11R6/bin/XF86_VGA16
for i in /usr/share/locale /usr/share/keymaps /usr/share/xmodmap $REP4PMS/po; do \
	name=`basename $i` ; \
	(cd $STAGE2TMP/$i ; find * | cpio -o 2>/dev/null | bzip2 > ../$name.cpio.bz2 ; cd .. ; rm -rf $name) \
done
$SUDO cp -a $STAGE2TMP/* $MNTPOINT
$SUDO rm -rf $STAGE2TMP

$SUDO umount $STAGE2
rmdir $MNTPOINT

echo gzipping $STAGE2

gzip -f -9 $STAGE2