Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1746 - (show annotations) (download)
Mon Apr 23 13:21:57 2012 UTC (12 years ago) by niro
File size: 4476 byte(s)
-added patch
1 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