Magellan Linux

Annotation of /trunk/mkinitrd/patches/mkinitrd-6.3.5-variable-sysroot-and-substition-fix.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1746 - (hide annotations) (download)
Mon Apr 23 13:21:57 2012 UTC (12 years, 1 month ago) by niro
File size: 4476 byte(s)
-added patch
1 niro 1746 diff -Naur mkinitrd-6.3.5/livecd/linuxrc.sh mkinitrd-6.3.5-magellan/livecd/linuxrc.sh
2     --- mkinitrd-6.3.5/livecd/linuxrc.sh 2012-04-23 16:18:35.714982656 +0200
3     +++ mkinitrd-6.3.5-magellan/livecd/linuxrc.sh 2012-04-23 16:14:56.453982660 +0200
4     @@ -63,7 +63,8 @@
5     BREAK_ENABLED=no
6     UNIONFS=no
7     UNIONFS_FILE=""
8     -CLOOPMOUNTDIR="/sysroot/mnt/cloop"
9     +SYSROOT="/sysroot"
10     +CLOOPMOUNTDIR="${SYSROOT}/mnt/cloop"
11    
12     ## starts here ##
13    
14     @@ -124,13 +125,13 @@
15     echo /sbin/mdev > /proc/sys/kernel/hotplug
16    
17     # create newroot mount point
18     -mkdir -p /sysroot
19     +mkdir -p ${SYSROOT}
20     # fake a new filesystem (also needed with an initramfs!!)
21     -mount -t tmpfs tmpfs /sysroot
22     +mount -t tmpfs tmpfs ${SYSROOT}
23    
24     -mkdir -p /sysroot/mnt/cdrom
25     -mkdir -p /sysroot/mnt/cloop
26     -mkdir -p /sysroot/mnt/magellan
27     +mkdir -p ${SYSROOT}/mnt/cdrom
28     +mkdir -p ${SYSROOT}/mnt/cloop
29     +mkdir -p ${SYSROOT}/mnt/magellan
30    
31    
32     # needed for the usbstick, the timeout maybe to short
33     @@ -182,17 +183,17 @@
34     exit 1
35     else
36     echo -e "Booting from: $BOOT_DEVICE ..."
37     - mount -o ro -t "${FSTYPE}" "${BOOT_DEVICE}" /sysroot/mnt/cdrom >/dev/null 2>&1
38     + mount -o ro -t "${FSTYPE}" "${BOOT_DEVICE}" ${SYSROOT}/mnt/cdrom >/dev/null 2>&1
39    
40     # write our boot_device to /mnt/.bootdev for later use (mtab)
41     - echo "BOOTDEV=${BOOT_DEVICE}" > /sysroot/.bootdev
42     - echo "FSTYPE=${FSTYPE}" >> /sysroot/.bootdev
43     + echo "BOOTDEV=${BOOT_DEVICE}" > ${SYSROOT}/.bootdev
44     + echo "FSTYPE=${FSTYPE}" >> ${SYSROOT}/.bootdev
45    
46     # mount squashfs
47     echo -e "Mounting squashfs system image ..."
48     echo
49     [ ! -e /dev/loop0 ] && mknod /dev/loop0 b 7 0
50     - mount -o loop,ro -t squashfs /sysroot/mnt/cdrom/livecdrootfs.sqsh "${CLOOPMOUNTDIR}"
51     + mount -o loop,ro -t squashfs ${SYSROOT}/mnt/cdrom/livecdrootfs.sqsh "${CLOOPMOUNTDIR}"
52    
53     # mount unionfs if enabled
54     if [[ ${UNIONFS} = yes ]]
55     @@ -200,38 +201,38 @@
56     echo -e "Mounting writeable cdbuffer (unionfs) ..."
57    
58     # default setting
59     - CLOOPMOUNTDIR="/sysroot/mnt/unionfs"
60     - [[ -z ${UNIONFS_FILE} ]] && UNIONFS_FILE="/sysroot/mnt/cdrom/unionfs"
61     + CLOOPMOUNTDIR="${SYSROOT}/mnt/unionfs"
62     + [[ -z ${UNIONFS_FILE} ]] && UNIONFS_FILE="${SYSROOT}/mnt/cdrom/unionfs"
63    
64     - [[ ! -d /sysroot/mnt/unionfs ]] && install -d /sysroot/mnt/unionfs
65     - mount -t unionfs dirs=${UNIONFS_FILE}=rw:/sysroot/mnt/cloop=ro ${CLOOPMOUNTDIR}
66     + [[ ! -d ${SYSROOT}/mnt/unionfs ]] && install -d ${SYSROOT}/mnt/unionfs
67     + mount -t unionfs dirs=${UNIONFS_FILE}=rw:${SYSROOT}/mnt/cloop=ro ${CLOOPMOUNTDIR}
68     fi
69    
70     # symlinking cloop rootfs to /mnt as newroot
71     - cd /sysroot
72     + cd ${SYSROOT}
73    
74     for x in bin sbin lib lib64 boot usr opt
75     do
76     - [ -d ${CLOOPMOUNTDIR/\/sysroot\//}/${x} ] && ln -s ${CLOOPMOUNTDIR/\/sysroot\//}/${x} ${x}
77     + [ -d ${CLOOPMOUNTDIR}/${x} ] && ln -s ${CLOOPMOUNTDIR#${SYSROOT}}/${x} ${x}
78     done
79     mkdir -p initrd proc tmp sys var/tmp dev media
80    
81     - # make /sysroot/dev/console & /mnt/dev/null
82     - [ ! -e /sysroot/dev/console ] && mknod -m 600 /sysroot/dev/console c 5 1
83     - [ ! -e /sysroot/dev/null ] && mknod -m 666 /sysroot/dev/null c 1 3
84     + # make ${SYSROOT}/dev/console & /mnt/dev/null
85     + [ ! -e ${SYSROOT}/dev/console ] && mknod -m 600 ${SYSROOT}/dev/console c 5 1
86     + [ ! -e ${SYSROOT}/dev/null ] && mknod -m 666 ${SYSROOT}/dev/null c 1 3
87     # only to be safe and to have a log channel
88     - [ ! -e /sysroot/dev/tty ] && mknod /sysroot/dev/tty c 5 0
89     + [ ! -e ${SYSROOT}/dev/tty ] && mknod ${SYSROOT}/dev/tty c 5 0
90     # busybox needs this one
91     - [ ! -e /sysroot/dev/tty5 ] && mknod /sysroot/dev/tty5 c 4 5
92     + [ ! -e ${SYSROOT}/dev/tty5 ] && mknod ${SYSROOT}/dev/tty5 c 4 5
93    
94     - (cd ${CLOOPMOUNTDIR}; cp -a etc root home var /sysroot)
95     + (cd ${CLOOPMOUNTDIR}; cp -a etc root home var ${SYSROOT})
96    
97     - # ensure that /sysroot/linurc exists
98     - [ ! -e /sysroot/linuxrc ] && ln -snf ${INITEXEC} /sysroot/linuxrc
99     + # ensure that ${SYSROOT}/linurc exists
100     + [ ! -e ${SYSROOT}/linuxrc ] && ln -snf ${INITEXEC} ${SYSROOT}/linuxrc
101    
102     # ensure the right permissions
103     - chmod 1777 /sysroot/tmp
104     - chmod 1777 /sysroot/var/tmp
105     + chmod 1777 ${SYSROOT}/tmp
106     + chmod 1777 ${SYSROOT}/var/tmp
107     fi
108    
109     cd /
110     @@ -249,8 +250,8 @@
111     fi
112    
113     echo "-- Switching to real sysroot ..."
114     -mount --move /dev /sysroot/dev
115     -mount --move /sys /sysroot/sys
116     -mount --move /proc /sysroot/proc
117     +mount --move /dev ${SYSROOT}/dev
118     +mount --move /sys ${SYSROOT}/sys
119     +mount --move /proc ${SYSROOT}/proc
120    
121     -exec run-init /sysroot ${INITEXEC} $@ </sysroot/dev/console >/sysroot/dev/console
122     +exec run-init ${SYSROOT} ${INITEXEC} $@ < ${SYSROOT}/dev/console > ${SYSROOT}/dev/console