Gentoo Archives: gentoo-commits

From: Yuta SATOH <nigoro@×××××××××.jp>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gentoo-bsd:master commit in: dev-util/catalyst/, dev-util/catalyst/files/
Date: Mon, 31 Oct 2016 16:17:14
Message-Id: 1477930603.5bedc2513a1f3bdc91e0e0793f451f55fca8d6cd.yuta_satoh@gentoo
1 commit: 5bedc2513a1f3bdc91e0e0793f451f55fca8d6cd
2 Author: Yuta SATOH <nigoro.dev <AT> gmail <DOT> com>
3 AuthorDate: Mon Oct 31 16:16:43 2016 +0000
4 Commit: Yuta SATOH <nigoro <AT> gentoo <DOT> gr <DOT> jp>
5 CommitDate: Mon Oct 31 16:16:43 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/gentoo-bsd.git/commit/?id=5bedc251
7
8 dev-util/catalyst: added -9999 patches.
9
10 dev-util/catalyst/Manifest | 3 +
11 dev-util/catalyst/catalyst-9999.ebuild | 10 +-
12 dev-util/catalyst/files/catalyst-9999-sed.patch | 302 ++++++++++++++++++++++
13 dev-util/catalyst/files/catalyst-9999-tmpfs.patch | 40 +++
14 4 files changed, 353 insertions(+), 2 deletions(-)
15
16 diff --git a/dev-util/catalyst/Manifest b/dev-util/catalyst/Manifest
17 index b9a8134..5a8318f 100644
18 --- a/dev-util/catalyst/Manifest
19 +++ b/dev-util/catalyst/Manifest
20 @@ -1,9 +1,12 @@
21 AUX catalyst-2.0.12.1-fbsd.patch 9713 SHA256 c66f856b7f3b0b9988984cf7eac1ab332d6103ac4bbcc855dbfdb0f4de8e6692 SHA512 335b29e7bda61c1875a66694031924a3f04851b056651b6ee8f3572209bf216d5f63520513223ca996f3b9404eeefacf7cfe40d0feddbebd5c3782bf8db36d4d WHIRLPOOL b63adab3d5ead0950a06d9a6490cfbef9d07ca420e45eaee99b9bef87f3b96d93cdaada2212faa368c1473360f917db094f8319f34bdbc1dd673390fb55cc9bf
22 AUX catalyst-2.0.14-fbsd.patch 10559 SHA256 c4f53aa4a29eceb01a19b76b08b898efab1244b045b7657430c81ac796ebd8f3 SHA512 344193243bea083c8af3c641f69b70362635af7eaec9887cb0a5aa92957f951b53bbc8ea68f62e66395a2efa63b3b69bb2da7aeac489f88df70abf117a6108b7 WHIRLPOOL 3c54e14b0a05e272403ff738c2a5ba25eaa5c034148f35317809c5ccb758f245490ccead2d6554b36ef3f4e6a592faa2988974f901f01096eefe1466de058272
23 AUX catalyst-2.0.15-fbsd-extra.patch 5180 SHA256 3f9cfe533be0050e936d47f2d4392f7ca5110cecb4a5dcd68e7cb79c59b25efb SHA512 dc930e063cf3870048a395577ba5c7d8fce96a150345af7766c4156109ec9539455e05b59a7c5873dfc596ab240e9d7dde55dc954410054fd85eaf289def7a1c WHIRLPOOL 78be8967fdce9b2c247f720d3389a41ff056d9ce3d270f2951dbd2318e8c93519c91ea4b6c889aced17775ea187180899f7a8a13450334c1b7df76611f944f9f
24 +AUX catalyst-9999-sed.patch 12970 SHA256 279d0ba5b32bc7e921e9a6038a85981da2229773edc1b7519e144e05f34614c2 SHA512 f90d9e64079c88380508c42c5f408a106d7cc6fe07732d25722f92c94ddea84c9a592c61e403585b29e16612c2a8b59f1245e3259e7d7587aeb11881c6e84932 WHIRLPOOL 6e4db5701884eb976b2b893dbc3ec73297096ef30319ff7a2dbec43861403ad2444dc0af40fe5b03143f5694ccd7806b6e057a6ab7cc58d59c19aa245ae86eb1
25 +AUX catalyst-9999-tmpfs.patch 1531 SHA256 23cdf7e169129343d7a55e62870a70f971b8746c721cf6acf8b19027d8f9cf6e SHA512 1ff41b0c994336ff73e69c54258f6d0aa75b235eeeefbfe67ebc6c20322b9c27bf7554e6236b0f7376a06e115abdb80e6947b32afe94ff73755290f80b85a68d WHIRLPOOL 8715a0fb31c323ec76e30be6e4dd9fd864d5acdf61c3633e9a194c4355c250d6da6570d99de68bc487e7419eac396ce2f722d44aa639662f5032f3ca59b1c6cd
26 DIST catalyst-2.0.12.2.tar.bz2 907893 SHA256 411d531b6de8c8c1bc9fa9502af3a4882e94e9db8b911bb48e4a0fcfc1efe7e8 SHA512 12349f6249363a94a72a71d05b2fe6ee13593b5ea67e1cb9a054c5ece896ff68f89d1af6341b98238ba6a6510e2737f81dcc2606649c10681235315663ab04ae WHIRLPOOL 1769a78f615c8e0eec2167dd9d6ab873e24801ecb5e4634037898933c6f5a1dbb189d967a628be6f8811f6769eadc91c5003ddbb6bd58eb05efbbd5110f740c7
27 DIST catalyst-2.0.15.tar.bz2 873335 SHA256 80fc39e6f6b7c32fb84f51333d8bf62a56a1ee068eb83cf2b03cb21c1f163e51 SHA512 9e61ba61eaa806424041f7edd1680b55dfd69bdea5b292aff305b4b3ef03349d82a47d8ab876baf7bf888e03810d79c6a00d74dc748082a1ed180ec1ed7043bd WHIRLPOOL 03c0f1137f59c57d106df4210104000c498a4c7ff2ae5bcc6e6c7a23d3d0c4c35ed125c036a0468859706da82af799641c1abe1b18c716c230c6ab657b4b765c
28 DIST catalyst-2.0.17.tar.bz2 861341 SHA256 5f4142598d921e5174ff06f9571856760a324e79db5f3b63caf0d1a16adc813c SHA512 9d7b9ad383dcc5d4ba058596c0b607eb9601b28025d9300f63e68d78cbd5bca8fa3f3e03a81dc6b233021e773ba4301df0bf5cec51ca4368eb3577a68d33a92c WHIRLPOOL e97fc120141cc4f9f5c297652d8b43313780f615429c0eb3d9b85cba40aeca01dcbc6efb0f8d388cc5e7debabb2563cfc9b5a5aa00e3d00d306aed0f799fc642
29 EBUILD catalyst-2.0.12.2.ebuild 3660 SHA256 4b0714dbb8eb96a9588f6b95e5e9021ddb62144c1a2e47f717111d70a84593a2 SHA512 f5ca61ec95864928d27e93ac72c2b441fdc04d30a27ebb3cedff6ec327147cee51a213b06d5f8e82bfda50ebc9e2eff51d77f43d3b699018459a4094b691ff4f WHIRLPOOL 1a558bd6eba2f278e4f6fcc4c846d884cf3fe79961204e6cf04bdb41889c96dd5f0af447eb14a6e8d17eac0622d8874cc6be20ff97e59d9632114495c77c2019
30 EBUILD catalyst-2.0.15.ebuild 3166 SHA256 90063f74c89fa79969cfc35c695cadd20aadce8c922dd9d9444d8243b08f974e SHA512 1e0a83a4c65679c0f2c11b3ccbb96695a7f551f97c875bb0d81453db1f6803873a1ef8838eee884a9b34bb69dd97bbdb80344deac103301882d9e95dd61e8b55 WHIRLPOOL 6239a89daa41d5bc983cf020eb2fd6486c3e990ebc5cccd27260ce54ade5fb9a1e20c256d8a6861c728fa9286f54d0f6b7fa7e63949222147f178bcbd2e0a3b7
31 EBUILD catalyst-2.0.17.ebuild 3162 SHA256 1f9aacf9e56f5184fa791583ea7c9d332b7ab4a1504bde50ae77f7f879a17a2c SHA512 31ab393441dd34eeb030703e75c91c4b01ecb32354728e0bedff40ec1c2a6f70ba4868eeeb1e63ff4f68c500d62abea0d2e2d17743b89c37c000d6cb18b8aa7c WHIRLPOOL b424423dfaaf07b8df3317e93d0b93eac341d0b82fe201f9ed71ef8c7dda365434a5796cf9abbe5a2c9ef21c45702649220524675e8113e6ef76d7e05000bd62
32 +EBUILD catalyst-9999.ebuild 1758 SHA256 f5f551262785dfb504bc8f1b8fd37ed4db4c2e7b416a97c0bd3821ef7f07dc95 SHA512 f5a56f1d6f2ca9a91e398a20400c6fe40619a4aa32b8db17254203a849e9ef745efd1318ea15c069c4b893d7931205c52ec148ee70dca54f5261e16166ad9e1c WHIRLPOOL 58cc2bd7c78fd8cd11dca0ce64b125985972fe6e432802e7ed43be7fb7a6aa8e99ff521a747742cbc719ea6cfd73445a1475ae1a5dd152156f952706ed9f9afc
33
34 diff --git a/dev-util/catalyst/catalyst-9999.ebuild b/dev-util/catalyst/catalyst-9999.ebuild
35 index adc1244..e19b49c 100644
36 --- a/dev-util/catalyst/catalyst-9999.ebuild
37 +++ b/dev-util/catalyst/catalyst-9999.ebuild
38 @@ -36,18 +36,24 @@ RDEPEND="
39 =dev-python/pydecomp-9999[${PYTHON_USEDEP}]
40 app-arch/lbzip2
41 app-crypt/shash
42 - app-arch/tar[xattr]
43 virtual/cdrtools
44 amd64? ( >=sys-boot/syslinux-3.72 )
45 ia64? ( sys-fs/dosfstools )
46 x86? ( >=sys-boot/syslinux-3.72 )
47 ccache? ( dev-util/ccache )
48 - kernel_linux? ( app-misc/zisofs-tools >=sys-fs/squashfs-tools-2.1 )
49 + kernel_linux? ( app-arch/tar[xattr] app-misc/zisofs-tools >=sys-fs/squashfs-tools-2.1 )
50 "
51
52 +src_prepare() {
53 + epatch "${FILESDIR}"/${PN}-9999-sed.patch
54 + epatch "${FILESDIR}"/${PN}-9999-tmpfs.patch
55 +}
56 +
57 python_prepare_all() {
58 echo VERSION="${PV}" "${PYTHON}" setup.py set_version
59 VERSION="${PV}" "${PYTHON}" setup.py set_version
60 +
61 + distutils-r1_python_prepare_all
62 }
63
64 python_compile_all() {
65
66 diff --git a/dev-util/catalyst/files/catalyst-9999-sed.patch b/dev-util/catalyst/files/catalyst-9999-sed.patch
67 new file mode 100644
68 index 0000000..d7ef1b3
69 --- /dev/null
70 +++ b/dev-util/catalyst/files/catalyst-9999-sed.patch
71 @@ -0,0 +1,302 @@
72 +diff --git a/catalyst-3.0_rc1/catalyst/defaults.py b/catalyst-3.0_rc1/catalyst/defaults.py
73 +index a0e3ea8..67ad8f7 100644
74 +--- a/catalyst-3.0_rc1/catalyst/defaults.py
75 ++++ b/catalyst-3.0_rc1/catalyst/defaults.py
76 +@@ -39,6 +39,7 @@ confdefaults={
77 + "PythonDir": "./catalyst",
78 + "repo_basedir": "/usr",
79 + "repo_name": "portage",
80 ++ "sed": "sed",
81 + "sharedir": "/usr/share/catalyst",
82 + "shdir": "/usr/share/catalyst/targets/",
83 + "snapshot_cache": "/var/tmp/catalyst/snapshot_cache",
84 +diff --git a/catalyst-3.0_rc1/catalyst/main.py b/catalyst-3.0_rc1/catalyst/main.py
85 +index 6608b86..4a0e515 100644
86 +--- a/catalyst-3.0_rc1/catalyst/main.py
87 ++++ b/catalyst-3.0_rc1/catalyst/main.py
88 +@@ -343,6 +343,12 @@ def _main(parser, opts):
89 + conf_values['compress_definitions'] = COMPRESS_DEFINITIONS
90 + # TODO add capability to config/spec new definitions
91 +
92 ++ # detect GNU sed
93 ++ for sed in ('/usr/bin/gsed', '/bin/sed', '/usr/bin/sed'):
94 ++ if os.path.exists(sed):
95 ++ conf_values["sed"] = sed
96 ++ break
97 ++
98 + # Start checking that digests are valid now that hash_map is initialized
99 + if "digests" in conf_values:
100 + digests = set(conf_values['digests'].split())
101 +diff --git a/catalyst-3.0_rc1/targets/stage1/stage1-chroot.sh b/catalyst-3.0_rc1/targets/stage1/stage1-chroot.sh
102 +index fbda84b..28bd743 100755
103 +--- a/catalyst-3.0_rc1/targets/stage1/stage1-chroot.sh
104 ++++ b/catalyst-3.0_rc1/targets/stage1/stage1-chroot.sh
105 +@@ -49,7 +49,7 @@ make_destpath /tmp/stage1root
106 + # First, we drop in a known-good baselayout
107 + [ -e ${clst_make_conf} ] && echo "USE=\"${USE} -build\"" >> ${clst_make_conf}
108 + run_merge "--oneshot --nodeps sys-apps/baselayout"
109 +-sed -i "/USE=\"${USE} -build\"/d" ${clst_make_conf}
110 ++${clst_sed} -i "/USE=\"${USE} -build\"/d" ${clst_make_conf}
111 +
112 + # Now, we install our packages
113 + if [ -e ${clst_make_conf} ]; then
114 +@@ -62,10 +62,10 @@ if [ -e ${clst_make_conf} ]; then
115 + fi
116 +
117 + run_merge "--oneshot ${clst_buildpkgs}"
118 +-sed -i "/USE=\"-* build ${BOOTSTRAP_USE} ${clst_HOSTUSE}\"/d" \
119 ++${clst_sed} -i "/USE=\"-* build ${BOOTSTRAP_USE} ${clst_HOSTUSE}\"/d" \
120 + ${clst_make_conf}
121 + for useexpand in ${clst_HOSTUSEEXPAND}; do
122 + x="clst_${useexpand}"
123 +- sed -i "/${useexpand}=\"${!x}\"/d" \
124 ++ ${clst_sed} -i "/${useexpand}=\"${!x}\"/d" \
125 + ${clst_make_conf}
126 + done
127 +diff --git a/catalyst-3.0_rc1/targets/stage2/stage2-chroot.sh b/catalyst-3.0_rc1/targets/stage2/stage2-chroot.sh
128 +index 38dfea3..30dc47a 100755
129 +--- a/catalyst-3.0_rc1/targets/stage2/stage2-chroot.sh
130 ++++ b/catalyst-3.0_rc1/targets/stage2/stage2-chroot.sh
131 +@@ -21,5 +21,5 @@ fi
132 + ${clst_repo_basedir}/${clst_repo_name}/scripts/bootstrap.sh ${bootstrap_opts} || exit 1
133 +
134 + # Clean-up USE again
135 +-sed -i "/USE=\"\${USE} bindist\"/d" "${clst_make_conf}"
136 +-sed -i "/USE=\"bindist\"/d" "${clst_make_conf}"
137 ++${clst_sed} -i "/USE=\"\${USE} bindist\"/d" "${clst_make_conf}"
138 ++${clst_sed} -i "/USE=\"bindist\"/d" "${clst_make_conf}"
139 +diff --git a/catalyst-3.0_rc1/targets/support/bootloader-setup.sh b/catalyst-3.0_rc1/targets/support/bootloader-setup.sh
140 +index d9e2620..ffe7be2 100755
141 +--- a/catalyst-3.0_rc1/targets/support/bootloader-setup.sh
142 ++++ b/catalyst-3.0_rc1/targets/support/bootloader-setup.sh
143 +@@ -79,7 +79,7 @@ case ${clst_hostarch} in
144 + echo "message=/boot/boot.msg" >> ${icfg}
145 +
146 + # Here is where I fix up the boot.msg file.
147 +- sed -e 's/ARCH/PowerPC/' \
148 ++ ${clst_sed} -e 's/ARCH/PowerPC/' \
149 + -e 's/HARDWARE/Apple and IBM hardware/' \
150 + -i $kmsg
151 +
152 +diff --git a/catalyst-3.0_rc1/targets/support/chroot-functions.sh b/catalyst-3.0_rc1/targets/support/chroot-functions.sh
153 +index 456ae4c..004e7c3 100755
154 +--- a/catalyst-3.0_rc1/targets/support/chroot-functions.sh
155 ++++ b/catalyst-3.0_rc1/targets/support/chroot-functions.sh
156 +@@ -87,7 +87,7 @@ setup_myfeatures(){
157 + else
158 + clst_root_path=/ run_merge --oneshot --noreplace sys-devel/distcc || exit 1
159 + fi
160 +- sed -i '/USE="${USE} -avahi -gtk -gnome"/d' ${clst_make_conf}
161 ++ ${clst_sed} -i '/USE="${USE} -avahi -gtk -gnome"/d' ${clst_make_conf}
162 + mkdir -p /etc/distcc
163 + echo "${clst_distcc_hosts}" > /etc/distcc/hosts
164 +
165 +@@ -186,7 +186,7 @@ setup_pkgmgr(){
166 + echo "Adding USE=\"\${USE} $1\" to make.conf for portage build"
167 + [ -e "${clst_make_conf}" ] && echo "USE=\"\${USE} $1\"" >> "${clst_make_conf}"
168 + run_merge --oneshot --update --newuse sys-apps/portage
169 +- sed -i "/USE=\"\${USE} $1\"/d" "${clst_make_conf}"
170 ++ ${clst_sed} -i "/USE=\"\${USE} $1\"/d" "${clst_make_conf}"
171 + else
172 + run_merge --oneshot --update --newuse sys-apps/portage
173 + fi
174 +@@ -241,8 +241,8 @@ cleanup_stages() {
175 +
176 + # Remove bindist from use
177 + # this is handled independantly in stage2, changes here should be mirrored there
178 +- sed -i "/USE=\"\${USE} bindist\"/d" "${clst_make_conf}"
179 +- sed -i "/USE=\"bindist\"/d" "${clst_make_conf}"
180 ++ ${clst_sed} -i "/USE=\"\${USE} bindist\"/d" "${clst_make_conf}"
181 ++ ${clst_sed} -i "/USE=\"bindist\"/d" "${clst_make_conf}"
182 +
183 + [ "${clst_target}" != "tinderbox" ] && rm -f /var/log/emerge.log /var/log/portage/elog/*
184 + }
185 +@@ -260,7 +260,7 @@ die() {
186 +
187 + make_destpath() {
188 + # ROOT is / by default, so remove any ROOT= settings from make.conf
189 +- sed -i '/ROOT=/d' ${clst_make_conf}
190 ++ ${clst_sed} -i '/ROOT=/d' ${clst_make_conf}
191 + export ROOT=/
192 + if [ "${1}" != "/" -a -n "${1}" ]
193 + then
194 +diff --git a/catalyst-3.0_rc1/targets/support/kmerge.sh b/catalyst-3.0_rc1/targets/support/kmerge.sh
195 +index 3d4afea..68cd3f2 100755
196 +--- a/catalyst-3.0_rc1/targets/support/kmerge.sh
197 ++++ b/catalyst-3.0_rc1/targets/support/kmerge.sh
198 +@@ -245,7 +245,7 @@ then
199 + if [ ! "${clst_kextraversion}" = "" ]
200 + then
201 + echo "Setting extraversion to ${clst_kextraversion}"
202 +- sed -i -e "s:EXTRAVERSION \(=.*\):EXTRAVERSION \1-${clst_kextraversion}:" /usr/src/linux/Makefile
203 ++ ${clst_sed} -i -e "s:EXTRAVERSION \(=.*\):EXTRAVERSION \1-${clst_kextraversion}:" /usr/src/linux/Makefile
204 + echo ${clst_kextraversion} > /tmp/kerncache/${clst_kname}/${clst_kname}-${clst_version_stamp}.EXTRAVERSION
205 + else
206 + touch /tmp/kerncache/${clst_kname}/${clst_kname}-${clst_version_stamp}.EXTRAVERSION
207 +@@ -262,7 +262,7 @@ $(portageq contents / $(portageq best_visible / "${clst_ksource}" 2>/dev/null) 2
208 + if [ ! "${clst_kextraversion}" = "" ]
209 + then
210 + echo "Setting extraversion to ${clst_kextraversion}"
211 +- sed -i -e "s:EXTRAVERSION \(=.*\):EXTRAVERSION \1-${clst_kextraversion}:" /usr/src/linux/Makefile
212 ++ ${clst_sed} -i -e "s:EXTRAVERSION \(=.*\):EXTRAVERSION \1-${clst_kextraversion}:" /usr/src/linux/Makefile
213 + fi
214 + fi
215 +
216 +@@ -275,12 +275,12 @@ make_destpath
217 +
218 +
219 + build_kernel
220 +-sed -i "/USE=\"\${USE} ${clst_kernel_use} \"/d" ${clst_make_conf}
221 ++${clst_sed} -i "/USE=\"\${USE} ${clst_kernel_use} \"/d" ${clst_make_conf}
222 + # grep out the kernel version so that we can do our modules magic
223 + VER=`grep ^VERSION\ \= /usr/src/linux/Makefile | awk '{ print $3 };'`
224 + PAT=`grep ^PATCHLEVEL\ \= /usr/src/linux/Makefile | awk '{ print $3 };'`
225 + SUB=`grep ^SUBLEVEL\ \= /usr/src/linux/Makefile | awk '{ print $3 };'`
226 +-EXV=`grep ^EXTRAVERSION\ \= /usr/src/linux/Makefile | sed -e "s/EXTRAVERSION =//" -e "s/ //g"`
227 ++EXV=`grep ^EXTRAVERSION\ \= /usr/src/linux/Makefile | ${clst_sed} -e "s/EXTRAVERSION =//" -e "s/ //g"`
228 + clst_fudgeuname=${VER}.${PAT}.${SUB}${EXV}
229 +
230 + unset USE
231 +diff --git a/catalyst-3.0_rc1/targets/support/livecdfs-update.sh b/catalyst-3.0_rc1/targets/support/livecdfs-update.sh
232 +index 31cdf04..2c551b4 100755
233 +--- a/catalyst-3.0_rc1/targets/support/livecdfs-update.sh
234 ++++ b/catalyst-3.0_rc1/targets/support/livecdfs-update.sh
235 +@@ -7,7 +7,7 @@ source /tmp/chroot-functions.sh
236 + # Allow root logins to our CD by default
237 + if [ -e /etc/ssh/sshd_config ]
238 + then
239 +- sed -i 's:^#PermitRootLogin\ yes:PermitRootLogin\ yes:' \
240 ++ ${clst_sed} -i 's:^#PermitRootLogin\ yes:PermitRootLogin\ yes:' \
241 + /etc/ssh/sshd_config
242 + fi
243 +
244 +@@ -73,7 +73,7 @@ fi
245 + # Setup sudoers
246 + if [ -f /etc/sudoers ]
247 + then
248 +- sed -i '/NOPASSWD: ALL/ s/^# //' /etc/sudoers
249 ++ ${clst_sed} -i '/NOPASSWD: ALL/ s/^# //' /etc/sudoers
250 + fi
251 +
252 + # Setup links for ethernet devices
253 +@@ -113,7 +113,7 @@ echo "####################################################" >> ${clst_make_conf}
254 + cat ${clst_make_conf}.old >> ${clst_make_conf}
255 +
256 + # devfs tweaks
257 +-[ -e /etc/devfsd.conf ] && sed -i '/dev-state/ s:^:#:' /etc/devfsd.conf
258 ++[ -e /etc/devfsd.conf ] && ${clst_sed} -i '/dev-state/ s:^:#:' /etc/devfsd.conf
259 +
260 + # Add some helpful aliases
261 + echo "alias cp='cp -i'" >> /etc/profile
262 +@@ -153,10 +153,10 @@ fi
263 + # Setup configured display manager
264 + if [ -n "${clst_livecd_xdm}" ]
265 + then
266 +- sed -i \
267 ++ ${clst_sed} -i \
268 + -e "s:^#\\?DISPLAYMANAGER=.\+$:DISPLAYMANAGER=\"${clst_livecd_xdm}\":" \
269 + /etc/rc.conf
270 +- sed -i \
271 ++ ${clst_sed} -i \
272 + -e "s:^#\\?DISPLAYMANAGER=.\+$:DISPLAYMANAGER=\"${clst_livecd_xdm}\":" \
273 + /etc/conf.d/xdm
274 + fi
275 +@@ -175,21 +175,21 @@ case ${clst_livecd_type} in
276 + gentoo-release-universal)
277 + cat /etc/generic.motd.txt /etc/universal.motd.txt \
278 + /etc/minimal.motd.txt > /etc/motd
279 +- sed -i 's:^##GREETING:Welcome to the Gentoo Linux Universal Installation CD!:' /etc/motd
280 ++ ${clst_sed} -i 's:^##GREETING:Welcome to the Gentoo Linux Universal Installation CD!:' /etc/motd
281 + ;;
282 + gentoo-release-minimal)
283 + cat /etc/generic.motd.txt /etc/minimal.motd.txt > /etc/motd
284 +- sed -i 's:^##GREETING:Welcome to the Gentoo Linux Minimal Installation CD!:' /etc/motd
285 ++ ${clst_sed} -i 's:^##GREETING:Welcome to the Gentoo Linux Minimal Installation CD!:' /etc/motd
286 + ;;
287 + gentoo-release-live*)
288 + cat /etc/generic.motd.txt \
289 + /etc/minimal.motd.txt /etc/livecd.motd.txt > /etc/motd
290 +- sed -i -e 's:^##GREETING:Welcome to the Gentoo Linux LiveCD!:' \
291 ++ ${clst_sed} -i -e 's:^##GREETING:Welcome to the Gentoo Linux LiveCD!:' \
292 + -e "s:##DISPLAY_MANAGER:${clst_livecd_xdm}:" /etc/motd
293 + ;;
294 + gentoo-gamecd)
295 + cat /etc/generic.motd.txt /etc/gamecd.motd.txt > /etc/motd
296 +- sed -i 's:^##GREETING:Welcome to the Gentoo Linux ##GAME_NAME GameCD!:' /etc/motd
297 ++ ${clst_sed} -i 's:^##GREETING:Welcome to the Gentoo Linux ##GAME_NAME GameCD!:' /etc/motd
298 + ;;
299 + esac
300 +
301 +@@ -200,7 +200,7 @@ if [ -n "${clst_livecd_splash_theme}" ]
302 + then
303 + if [ -d /etc/splash/${clst_livecd_splash_theme} ]
304 + then
305 +- sed -i \
306 ++ ${clst_sed} -i \
307 + -e "s:# SPLASH_THEME=\"gentoo\":SPLASH_THEME=\"${clst_livecd_splash_theme}\":" \
308 + -e "/^# SPLASH_TTYS=/ s/^#//" \
309 + /etc/conf.d/splash
310 +@@ -229,7 +229,7 @@ case ${clst_livecd_type} in
311 + rm /tmp/gamecd.conf
312 +
313 + # Here we replace out game information into several files
314 +- sed -i -e "s:##GAME_NAME:${GAME_NAME}:" /etc/motd
315 ++ ${clst_sed} -i -e "s:##GAME_NAME:${GAME_NAME}:" /etc/motd
316 +
317 + # Here we setup our xinitrc
318 + echo "exec ${GAME_EXECUTABLE}" > /etc/X11/xinit/xinitrc
319 +@@ -276,7 +276,7 @@ case ${clst_livecd_type} in
320 + /etc/X11/gdm/custom.conf
321 + else
322 + cp -f /etc/X11/gdm/gdm.conf /etc/X11/gdm/gdm.conf.old
323 +- sed -i \
324 ++ ${clst_sed} -i \
325 + -e 's:TimedLoginEnable=false:TimedLoginEnable=true:' \
326 + -e 's:TimedLoginDelay=30:TimedLoginDelay=10:' \
327 + -e 's:AllowRemoteRoot=true:AllowRemoteRoot=false:' \
328 +@@ -286,7 +286,7 @@ case ${clst_livecd_type} in
329 +
330 + if [ -n "${clst_livecd_users}" ] && [ -n "${first_user}" ]
331 + then
332 +- sed -i \
333 ++ ${clst_sed} -i \
334 + -e "s:TimedLogin=:TimedLogin=${first_user}:" \
335 + /etc/X11/gdm/gdm.conf
336 + fi
337 +@@ -296,7 +296,7 @@ case ${clst_livecd_type} in
338 + # This gives us our list of system packages for the installer
339 + mkdir -p /usr/livecd
340 + ### XXX: Andrew says we don't need this anymore
341 +- USE="-* $(cat /var/db/pkg/sys-libs/glibc*/USE)" emerge -eqp @system | grep -e '^\[ebuild' | sed -e 's:^\[ebuild .\+\] ::' -e 's: .\+$::' > /usr/livecd/systempkgs.txt
342 ++ USE="-* $(cat /var/db/pkg/sys-libs/glibc*/USE)" emerge -eqp @system | grep -e '^\[ebuild' | ${clst_sed} -e 's:^\[ebuild .\+\] ::' -e 's: .\+$::' > /usr/livecd/systempkgs.txt
343 +
344 + # This is my hack to reduce tmpfs usage
345 + cp -r ${clst_repo_basedir}/${clst_repo_name}/profiles /usr/livecd
346 +@@ -331,10 +331,10 @@ case ${clst_livecd_type} in
347 + /home/${username}/Desktop
348 + cp -f /usr/share/applications/installer-dialog.desktop \
349 + /home/${username}/Desktop
350 +- sed -i -e \
351 ++ ${clst_sed} -i -e \
352 + 's:Exec=installer-dialog:Exec=sudo installer-dialog:' \
353 + /home/${username}/Desktop/installer-dialog.desktop
354 +- sed -i -e 's:Exec=installer-gtk:Exec=installer:' \
355 ++ ${clst_sed} -i -e 's:Exec=installer-gtk:Exec=installer:' \
356 + /home/${username}/Desktop/installer-gtk.desktop
357 + fi
358 + chown -R ${username}:100 /home/${username}
359 +@@ -369,12 +369,12 @@ esac
360 + # We want the first user to be used when auto-starting X
361 + if [ -e /etc/startx ]
362 + then
363 +- sed -i "s:##STARTX:echo startx | su - '${first_user}':" /root/.bashrc
364 ++ ${clst_sed} -i "s:##STARTX:echo startx | su - '${first_user}':" /root/.bashrc
365 + fi
366 +
367 + if [ -e /lib/rcscripts/addons/udev-start.sh ]
368 + then
369 +- sed -i "s:\t\[\[ -x /sbin/evms_activate:\t\[\[ -x \${CDBOOT} \]\] \&\& \[\[ -x /sbin/evms_activate:" /lib/rcscripts/addons/udev-start.sh
370 ++ ${clst_sed} -i "s:\t\[\[ -x /sbin/evms_activate:\t\[\[ -x \${CDBOOT} \]\] \&\& \[\[ -x /sbin/evms_activate:" /lib/rcscripts/addons/udev-start.sh
371 + fi
372 +
373 + env-update
374
375 diff --git a/dev-util/catalyst/files/catalyst-9999-tmpfs.patch b/dev-util/catalyst/files/catalyst-9999-tmpfs.patch
376 new file mode 100644
377 index 0000000..9a41f49
378 --- /dev/null
379 +++ b/dev-util/catalyst/files/catalyst-9999-tmpfs.patch
380 @@ -0,0 +1,40 @@
381 +diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
382 +index 68ccb79..966d872 100644
383 +--- a/catalyst/base/stagebase.py
384 ++++ b/catalyst/base/stagebase.py
385 +@@ -935,21 +935,22 @@ class StageBase(TargetBase, ClearBase, GenBase):
386 + if "snapcache" in self.settings["options"] and x == "portdir":
387 + self.snapcache_lock.read_lock()
388 + _cmd = None
389 +- if os.uname()[0] == "FreeBSD":
390 +- if src == "/dev":
391 +- _cmd = ['mount', '-t', 'devfs', 'none', target]
392 +- else:
393 +- _cmd = ['mount_nullfs', src, target]
394 ++ if src == "tmpfs":
395 ++ if "var_tmpfs_portage" in self.settings:
396 ++ _cmd = ['mount', '-t', 'tmpfs',
397 ++ '-o', 'size=' + self.settings['var_tmpfs_portage'] + 'G',
398 ++ src, target]
399 + else:
400 +- if src == "tmpfs":
401 +- if "var_tmpfs_portage" in self.settings:
402 +- _cmd = ['mount', '-t', 'tmpfs',
403 +- '-o', 'size=' + self.settings['var_tmpfs_portage'] + 'G',
404 +- src, target]
405 +- elif src == "shmfs":
406 +- _cmd = ['mount', '-t', 'tmpfs', '-o', 'noexec,nosuid,nodev', 'shm', target]
407 ++ if os.uname()[0] == "FreeBSD":
408 ++ if src == "/dev":
409 ++ _cmd = ['mount', '-t', 'devfs', 'none', target]
410 ++ else:
411 ++ _cmd = ['mount_nullfs', src, target]
412 + else:
413 +- _cmd = ['mount', '--bind', src, target]
414 ++ if src == "shmfs":
415 ++ _cmd = ['mount', '-t', 'tmpfs', '-o', 'noexec,nosuid,nodev', 'shm', target]
416 ++ else:
417 ++ _cmd = ['mount', '--bind', src, target]
418 + if _cmd:
419 + log.debug('bind(); _cmd = %s', _cmd)
420 + cmd(_cmd, env=self.env, fail_func=self.unbind)