1 |
commit: 3a5005c33678f26a1477a49e791f89a8480c523a |
2 |
Author: Alexander Tsoy <alexander <AT> tsoy <DOT> me> |
3 |
AuthorDate: Fri Jan 11 18:40:03 2019 +0000 |
4 |
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Jan 21 14:23:15 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a5005c3 |
7 |
|
8 |
sys-kernel/dracut: version bump to 049 |
9 |
|
10 |
Bug: https://bugs.gentoo.org/602122 |
11 |
Bug: https://bugs.gentoo.org/670450 |
12 |
Closes: https://github.com/gentoo/gentoo/pull/10808 |
13 |
Package-Manager: Portage-2.3.51, Repoman-2.3.11 |
14 |
Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me> |
15 |
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org> |
16 |
|
17 |
sys-kernel/dracut/Manifest | 1 + |
18 |
sys-kernel/dracut/dracut-049.ebuild | 158 +++++++++++++++++++++ |
19 |
...etwork-Don-t-include-40network-by-default.patch | 34 +++++ |
20 |
...49-remove-bashism-in-various-boot-scripts.patch | 89 ++++++++++++ |
21 |
4 files changed, 282 insertions(+) |
22 |
|
23 |
diff --git a/sys-kernel/dracut/Manifest b/sys-kernel/dracut/Manifest |
24 |
index cac868159ce..7b97320d25d 100644 |
25 |
--- a/sys-kernel/dracut/Manifest |
26 |
+++ b/sys-kernel/dracut/Manifest |
27 |
@@ -3,3 +3,4 @@ DIST dracut-045.tar.xz 292652 BLAKE2B 0e7c57ddca6757d59823afdc4ff23dcb06cc9cec31 |
28 |
DIST dracut-046.tar.xz 299520 BLAKE2B 1e2d848aa0db0e90734d8c60610a60b1f0ff67f8c4d4f9933bec0bc1290071b1b1ee3cdb6c3da5b82d8f6d4cc7561ee17d38685659a4a6ee48a9085e388dfced SHA512 75cefc184960024ef32f7bb5a0fe060e9c7d82dbfd0fe247d54b585e2ebbf0f8af5d5dc1be7e5e8cf2c3bc27b3293842c6361ae62d047289d0c59d7d40b09122 |
29 |
DIST dracut-047.tar.xz 305836 BLAKE2B 18333ae1e24cfbbb6a152bf9ba2c48884821f6a506344259ba56c581a9f3efac7b4c88e8ca149ef1f83347a5e4d59acba61e42b8e0ab3a9e9beb8684d5db28b0 SHA512 03369726b6c2b682d0c9dead7b7dbd1c3989aaf2b4a561015634d33a94e5230d03cb634c3890191b19dd8c1c83389533ae1a46d45d2024ba885e0d2d46c5d035 |
30 |
DIST dracut-048.tar.xz 308484 BLAKE2B b19c8122034a8b40cbc9d09245730900b59691c336f1d231e768786ad64068e0a8daf57ae9a4182ab50d9e1c683c9b7dcac354eb26d8a60f061db78121bc11c7 SHA512 97fcfd5d314ef40687c245d95d2f1d0f3f9ff0472e66b6e6324bf9bd6b98186104f9d71fd9af344126d6ea9fa47b744d52831a374225633225f6f17fb15c04e0 |
31 |
+DIST dracut-049.tar.gz 376857 BLAKE2B e50084164e26aae6de812345cc76782435ec84951b44eea454355d0c65fe84fdd0858733de534bdf018bdfd92922f0be30b74d74be329a918e55d96c5e4d4fb6 SHA512 51489570856538588868a66c7bcc8a3728574592529905484526c523398dc1b8f1416e6b264780303acd08d818417a9668b76f1d64d3194432b5af79dc15c9f7 |
32 |
|
33 |
diff --git a/sys-kernel/dracut/dracut-049.ebuild b/sys-kernel/dracut/dracut-049.ebuild |
34 |
new file mode 100644 |
35 |
index 00000000000..dda60561bf7 |
36 |
--- /dev/null |
37 |
+++ b/sys-kernel/dracut/dracut-049.ebuild |
38 |
@@ -0,0 +1,158 @@ |
39 |
+# Copyright 1999-2019 Gentoo Authors |
40 |
+# Distributed under the terms of the GNU General Public License v2 |
41 |
+ |
42 |
+EAPI=7 |
43 |
+ |
44 |
+inherit bash-completion-r1 eutils linux-info systemd toolchain-funcs |
45 |
+ |
46 |
+DESCRIPTION="Generic initramfs generation tool" |
47 |
+HOMEPAGE="https://dracut.wiki.kernel.org" |
48 |
+SRC_URI="https://github.com/dracutdevs/dracut/archive/${PV}.tar.gz -> ${P}.tar.gz" |
49 |
+ |
50 |
+LICENSE="GPL-2" |
51 |
+SLOT="0" |
52 |
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" |
53 |
+IUSE="selinux" |
54 |
+ |
55 |
+# Tests need root privileges, bug #298014 |
56 |
+RESTRICT="test" |
57 |
+ |
58 |
+RDEPEND=" |
59 |
+ app-arch/cpio |
60 |
+ >=app-shells/bash-4.0:0 |
61 |
+ sys-apps/coreutils[xattr(-)] |
62 |
+ >=sys-apps/kmod-23[tools] |
63 |
+ || ( |
64 |
+ >=sys-apps/sysvinit-2.87-r3 |
65 |
+ sys-apps/systemd[sysv-utils] |
66 |
+ ) |
67 |
+ >=sys-apps/util-linux-2.21 |
68 |
+ virtual/pkgconfig |
69 |
+ virtual/udev |
70 |
+ |
71 |
+ selinux? ( |
72 |
+ sec-policy/selinux-dracut |
73 |
+ sys-libs/libselinux |
74 |
+ sys-libs/libsepol |
75 |
+ ) |
76 |
+ " |
77 |
+DEPEND=">=sys-apps/kmod-23" |
78 |
+ |
79 |
+BDEPEND=" |
80 |
+ app-text/asciidoc |
81 |
+ app-text/docbook-xml-dtd:4.5 |
82 |
+ >=app-text/docbook-xsl-stylesheets-1.75.2 |
83 |
+ >=dev-libs/libxslt-1.1.26 |
84 |
+ virtual/pkgconfig |
85 |
+ " |
86 |
+ |
87 |
+DOCS=( AUTHORS HACKING NEWS README README.generic README.kernel README.modules |
88 |
+ README.testsuite TODO ) |
89 |
+ |
90 |
+QA_MULTILIB_PATHS="usr/lib/dracut/.*" |
91 |
+ |
92 |
+PATCHES=( |
93 |
+ "${FILESDIR}"/048-dracut-install-simplify-ldd-parsing-logic.patch |
94 |
+ "${FILESDIR}"/049-40network-Don-t-include-40network-by-default.patch |
95 |
+ "${FILESDIR}"/049-remove-bashism-in-various-boot-scripts.patch |
96 |
+) |
97 |
+ |
98 |
+src_configure() { |
99 |
+ local myconf=( |
100 |
+ --prefix="${EPREFIX}/usr" |
101 |
+ --sysconfdir="${EPREFIX}/etc" |
102 |
+ --bashcompletiondir="$(get_bashcompdir)" |
103 |
+ --systemdsystemunitdir="$(systemd_get_systemunitdir)" |
104 |
+ ) |
105 |
+ |
106 |
+ tc-export CC PKG_CONFIG |
107 |
+ |
108 |
+ echo ./configure "${myconf[@]}" |
109 |
+ ./configure "${myconf[@]}" || die |
110 |
+ |
111 |
+ # Source tarball from github doesn't include this file |
112 |
+ echo "DRACUT_VERSION=${PV}" > dracut-version.sh || die |
113 |
+} |
114 |
+ |
115 |
+src_install() { |
116 |
+ default |
117 |
+ |
118 |
+ local libdirs=( /$(get_libdir) /usr/$(get_libdir) ) |
119 |
+ if [[ ${SYMLINK_LIB} = yes && $(get_libdir) != lib ]]; then |
120 |
+ # Preserve lib -> lib64 symlinks in initramfs |
121 |
+ libdirs+=( /lib /usr/lib ) |
122 |
+ fi |
123 |
+ |
124 |
+ einfo "Setting libdirs to \"${libdirs[*]}\" ..." |
125 |
+ echo "libdirs=\"${libdirs[*]}\"" > "${T}/gentoo.conf" || die |
126 |
+ insinto "/usr/lib/dracut/dracut.conf.d" |
127 |
+ doins "${T}/gentoo.conf" |
128 |
+ |
129 |
+ insinto /etc/logrotate.d |
130 |
+ newins dracut.logrotate dracut |
131 |
+ |
132 |
+ docinto html |
133 |
+ dodoc dracut.html |
134 |
+} |
135 |
+ |
136 |
+pkg_postinst() { |
137 |
+ if linux-info_get_any_version && linux_config_exists; then |
138 |
+ ewarn "" |
139 |
+ ewarn "If the following test report contains a missing kernel" |
140 |
+ ewarn "configuration option, you should reconfigure and rebuild your" |
141 |
+ ewarn "kernel before booting image generated with this Dracut version." |
142 |
+ ewarn "" |
143 |
+ |
144 |
+ local CONFIG_CHECK="~BLK_DEV_INITRD ~DEVTMPFS" |
145 |
+ |
146 |
+ # Kernel configuration options descriptions: |
147 |
+ local ERROR_DEVTMPFS='CONFIG_DEVTMPFS: "Maintain a devtmpfs filesystem to mount at /dev" ' |
148 |
+ ERROR_DEVTMPFS+='is missing and REQUIRED' |
149 |
+ local ERROR_BLK_DEV_INITRD='CONFIG_BLK_DEV_INITRD: "Initial RAM filesystem and RAM disk ' |
150 |
+ ERROR_BLK_DEV_INITRD+='(initramfs/initrd) support" is missing and REQUIRED' |
151 |
+ |
152 |
+ check_extra_config |
153 |
+ echo |
154 |
+ else |
155 |
+ ewarn "" |
156 |
+ ewarn "Your kernel configuration couldn't be checked." |
157 |
+ ewarn "Please check manually if following options are enabled:" |
158 |
+ ewarn "" |
159 |
+ ewarn " CONFIG_BLK_DEV_INITRD" |
160 |
+ ewarn " CONFIG_DEVTMPFS" |
161 |
+ ewarn "" |
162 |
+ fi |
163 |
+ |
164 |
+ elog "To get additional features, a number of optional runtime" |
165 |
+ elog "dependencies may be installed:" |
166 |
+ elog "" |
167 |
+ optfeature "Networking support" net-misc/networkmanager |
168 |
+ optfeature "Legacy networking support" net-misc/curl "net-misc/dhcp[client]" \ |
169 |
+ sys-apps/iproute2 "net-misc/iputils[arping]" |
170 |
+ optfeature \ |
171 |
+ "Measure performance of the boot process for later visualisation" \ |
172 |
+ app-benchmarks/bootchart2 app-admin/killproc sys-process/acct |
173 |
+ optfeature "Scan for Btrfs on block devices" sys-fs/btrfs-progs |
174 |
+ optfeature "Load kernel modules and drop this privilege for real init" \ |
175 |
+ sys-libs/libcap |
176 |
+ optfeature "Support CIFS" net-fs/cifs-utils |
177 |
+ optfeature "Decrypt devices encrypted with cryptsetup/LUKS" \ |
178 |
+ "sys-fs/cryptsetup[-static-libs]" |
179 |
+ optfeature "Support for GPG-encrypted keys for crypt module" \ |
180 |
+ app-crypt/gnupg |
181 |
+ optfeature \ |
182 |
+ "Allows use of dash instead of default bash (on your own risk)" \ |
183 |
+ app-shells/dash |
184 |
+ optfeature "Support iSCSI" sys-block/open-iscsi |
185 |
+ optfeature "Support Logical Volume Manager" sys-fs/lvm2 |
186 |
+ optfeature "Support MD devices, also known as software RAID devices" \ |
187 |
+ sys-fs/mdadm |
188 |
+ optfeature "Support Device Mapper multipathing" sys-fs/multipath-tools |
189 |
+ optfeature "Plymouth boot splash" '>=sys-boot/plymouth-0.8.5-r5' |
190 |
+ optfeature "Support network block devices" sys-block/nbd |
191 |
+ optfeature "Support NFS" net-fs/nfs-utils net-nds/rpcbind |
192 |
+ optfeature \ |
193 |
+ "Install ssh and scp along with config files and specified keys" \ |
194 |
+ net-misc/openssh |
195 |
+ optfeature "Enable logging with rsyslog" app-admin/rsyslog |
196 |
+} |
197 |
|
198 |
diff --git a/sys-kernel/dracut/files/049-40network-Don-t-include-40network-by-default.patch b/sys-kernel/dracut/files/049-40network-Don-t-include-40network-by-default.patch |
199 |
new file mode 100644 |
200 |
index 00000000000..0d537941f1d |
201 |
--- /dev/null |
202 |
+++ b/sys-kernel/dracut/files/049-40network-Don-t-include-40network-by-default.patch |
203 |
@@ -0,0 +1,34 @@ |
204 |
+From 83cbc06ab91288e2d931b4f36935bfdb79a99b0e Mon Sep 17 00:00:00 2001 |
205 |
+From: Kairui Song <kasong@××××××.com> |
206 |
+Date: Fri, 12 Oct 2018 13:07:13 +0800 |
207 |
+Subject: [PATCH] 40network: Don't include 40network by default |
208 |
+To: <initramfs@×××××××××××.org> |
209 |
+ |
210 |
+commit 7347391 ('network-legacy: split off from network module') |
211 |
+splitted network function to network-legacy and removed check() function |
212 |
+of 40network. This caused 40network to be included even if network is |
213 |
+not needed. |
214 |
+ |
215 |
+Signed-off-by: Kairui Song <kasong@××××××.com> |
216 |
+--- |
217 |
+ modules.d/40network/module-setup.sh | 5 +++++ |
218 |
+ 1 file changed, 5 insertions(+) |
219 |
+ |
220 |
+diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh |
221 |
+index 57c0a45e..e8541636 100755 |
222 |
+--- a/modules.d/40network/module-setup.sh |
223 |
++++ b/modules.d/40network/module-setup.sh |
224 |
+@@ -1,5 +1,10 @@ |
225 |
+ #!/bin/bash |
226 |
+ |
227 |
++# called by dracut |
228 |
++check() { |
229 |
++ return 255 |
230 |
++} |
231 |
++ |
232 |
+ # called by dracut |
233 |
+ depends() { |
234 |
+ echo -n "kernel-network-modules " |
235 |
+-- |
236 |
+2.19.2 |
237 |
+ |
238 |
|
239 |
diff --git a/sys-kernel/dracut/files/049-remove-bashism-in-various-boot-scripts.patch b/sys-kernel/dracut/files/049-remove-bashism-in-various-boot-scripts.patch |
240 |
new file mode 100644 |
241 |
index 00000000000..93e3ed5bed8 |
242 |
--- /dev/null |
243 |
+++ b/sys-kernel/dracut/files/049-remove-bashism-in-various-boot-scripts.patch |
244 |
@@ -0,0 +1,89 @@ |
245 |
+From 09d2a1605b1b2663e3c25f1d9950b23a2bf4ad89 Mon Sep 17 00:00:00 2001 |
246 |
+From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= |
247 |
+ <congdanhqx@×××××.com> |
248 |
+Date: Sun, 6 Jan 2019 11:48:02 +0700 |
249 |
+Subject: [PATCH] remove bashism in various boot scripts |
250 |
+MIME-Version: 1.0 |
251 |
+Content-Type: text/plain; charset=UTF-8 |
252 |
+Content-Transfer-Encoding: 8bit |
253 |
+To: <initramfs@×××××××××××.org> |
254 |
+ |
255 |
+When using dash as initramfs shell, the boot process is broken. |
256 |
+ |
257 |
+Signed-off-by: Đoàn Trần Công Danh <congdanhqx@×××××.com> |
258 |
+--- |
259 |
+ modules.d/90crypt/crypt-lib.sh | 2 +- |
260 |
+ modules.d/90crypt/parse-keydev.sh | 2 +- |
261 |
+ modules.d/91crypt-gpg/crypt-gpg-lib.sh | 2 +- |
262 |
+ modules.d/95dcssblk/parse-dcssblk.sh | 2 +- |
263 |
+ modules.d/98syslog/rsyslogd-start.sh | 2 +- |
264 |
+ 5 files changed, 5 insertions(+), 5 deletions(-) |
265 |
+ |
266 |
+diff --git a/modules.d/90crypt/crypt-lib.sh b/modules.d/90crypt/crypt-lib.sh |
267 |
+index bbf485e0..688ea251 100755 |
268 |
+--- a/modules.d/90crypt/crypt-lib.sh |
269 |
++++ b/modules.d/90crypt/crypt-lib.sh |
270 |
+@@ -191,7 +191,7 @@ readkey() { |
271 |
+ local device="$3" |
272 |
+ |
273 |
+ # No mounting needed if the keyfile resides inside the initrd |
274 |
+- if [ "/" == "$keydev" ]; then |
275 |
++ if [ "/" = "$keydev" ]; then |
276 |
+ local mntp=/ |
277 |
+ else |
278 |
+ # This creates a unique single mountpoint for *, or several for explicitly |
279 |
+diff --git a/modules.d/90crypt/parse-keydev.sh b/modules.d/90crypt/parse-keydev.sh |
280 |
+index a45b2fb5..04813414 100755 |
281 |
+--- a/modules.d/90crypt/parse-keydev.sh |
282 |
++++ b/modules.d/90crypt/parse-keydev.sh |
283 |
+@@ -18,7 +18,7 @@ if getargbool 1 rd.luks -n rd_NO_LUKS && \ |
284 |
+ fi |
285 |
+ |
286 |
+ # A keydev of '/' is treated as the initrd itself |
287 |
+- if [ "/" == "$keydev" ]; then |
288 |
++ if [ "/" = "$keydev" ]; then |
289 |
+ [ -z "$luksdev" ] && luksdev='*' |
290 |
+ echo "$luksdev:$keydev:$keypath" >> /tmp/luks.keys |
291 |
+ continue |
292 |
+diff --git a/modules.d/91crypt-gpg/crypt-gpg-lib.sh b/modules.d/91crypt-gpg/crypt-gpg-lib.sh |
293 |
+index b85ed2b8..c051b430 100755 |
294 |
+--- a/modules.d/91crypt-gpg/crypt-gpg-lib.sh |
295 |
++++ b/modules.d/91crypt-gpg/crypt-gpg-lib.sh |
296 |
+@@ -53,7 +53,7 @@ gpg_decrypt() { |
297 |
+ --tries 3 --tty-echo-off |
298 |
+ |
299 |
+ # Clean up the smartcard gpg-agent |
300 |
+- if [ "${useSmartcard}" == "1" ]; then |
301 |
++ if [ "${useSmartcard}" = "1" ]; then |
302 |
+ GNUPGHOME="$gpghome" gpg-connect-agent 1>/dev/null killagent /bye |
303 |
+ fi |
304 |
+ |
305 |
+diff --git a/modules.d/95dcssblk/parse-dcssblk.sh b/modules.d/95dcssblk/parse-dcssblk.sh |
306 |
+index 8f174408..27ac1d8d 100644 |
307 |
+--- a/modules.d/95dcssblk/parse-dcssblk.sh |
308 |
++++ b/modules.d/95dcssblk/parse-dcssblk.sh |
309 |
+@@ -2,7 +2,7 @@ |
310 |
+ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- |
311 |
+ # ex: ts=8 sw=4 sts=4 et filetype=sh |
312 |
+ dcssblk_arg=$(getarg rd.dcssblk=) |
313 |
+-if [ $? == 0 ];then |
314 |
++if [ $? = 0 ];then |
315 |
+ info "Loading dcssblk segments=$dcssblk_arg" |
316 |
+ modprobe dcssblk segments=$dcssblk_arg |
317 |
+ fi |
318 |
+diff --git a/modules.d/98syslog/rsyslogd-start.sh b/modules.d/98syslog/rsyslogd-start.sh |
319 |
+index c64f2121..86ad50ea 100755 |
320 |
+--- a/modules.d/98syslog/rsyslogd-start.sh |
321 |
++++ b/modules.d/98syslog/rsyslogd-start.sh |
322 |
+@@ -38,7 +38,7 @@ rsyslog_config() { |
323 |
+ [ -f /tmp/syslog.conf ] && read conf < /tmp/syslog.conf |
324 |
+ [ -z "$conf" ] && conf="/etc/rsyslog.conf" && echo "$conf" > /tmp/syslog.conf |
325 |
+ |
326 |
+-if [ $type == "rsyslogd" ]; then |
327 |
++if [ $type = "rsyslogd" ]; then |
328 |
+ template=/etc/templates/rsyslog.conf |
329 |
+ if [ -n "$server" ]; then |
330 |
+ rsyslog_config "$server" "$template" "$filters" > $conf |
331 |
+-- |
332 |
+2.19.2 |
333 |
+ |