[arch-commits] Commit in mkinitcpio/repos (5 files)

Dave Reisner dreisner at archlinux.org
Tue Oct 9 14:19:07 UTC 2018


    Date: Tuesday, October 9, 2018 @ 14:19:07
  Author: dreisner
Revision: 336058

archrelease: copy trunk to testing-any

Added:
  mkinitcpio/repos/testing-any/
  mkinitcpio/repos/testing-any/0001-Restore-addition-of-modules-from-config-file.patch
    (from rev 336057, mkinitcpio/trunk/0001-Restore-addition-of-modules-from-config-file.patch)
  mkinitcpio/repos/testing-any/0001-install-block-avoid-conditional-addition-of-drivers.patch
    (from rev 336057, mkinitcpio/trunk/0001-install-block-avoid-conditional-addition-of-drivers.patch)
  mkinitcpio/repos/testing-any/PKGBUILD
    (from rev 336057, mkinitcpio/trunk/PKGBUILD)
  mkinitcpio/repos/testing-any/mkinitcpio.install
    (from rev 336057, mkinitcpio/trunk/mkinitcpio.install)

----------------------------------------------------------------+
 0001-Restore-addition-of-modules-from-config-file.patch        |   39 ++++++
 0001-install-block-avoid-conditional-addition-of-drivers.patch |   65 ++++++++++
 PKGBUILD                                                       |   43 ++++++
 mkinitcpio.install                                             |   15 ++
 4 files changed, 162 insertions(+)

Copied: mkinitcpio/repos/testing-any/0001-Restore-addition-of-modules-from-config-file.patch (from rev 336057, mkinitcpio/trunk/0001-Restore-addition-of-modules-from-config-file.patch)
===================================================================
--- testing-any/0001-Restore-addition-of-modules-from-config-file.patch	                        (rev 0)
+++ testing-any/0001-Restore-addition-of-modules-from-config-file.patch	2018-10-09 14:19:07 UTC (rev 336058)
@@ -0,0 +1,39 @@
+From 5bba09cb1c661627fde76b977cfe9f937b1264a3 Mon Sep 17 00:00:00 2001
+From: Dave Reisner <dreisner at archlinux.org>
+Date: Fri, 6 Oct 2017 08:15:43 -0400
+Subject: [mkinitcpio] [PATCH] Restore addition of modules from config file
+
+Broken by c5ad00c2.
+
+ref: https://bugs.archlinux.org/task/55870
+---
+ functions | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/functions b/functions
+index 1486f2f..ba95e80 100644
+--- a/functions
++++ b/functions
+@@ -627,9 +627,18 @@ parse_config() {
+     map add_file "${FILES[@]}"
+ 
+     tee "$BUILDROOT/buildconfig" < "$1" | {
++        # When MODULES is not an array (but instead implicitly converted at
++        # startup), sourcing the config causes the string value of MODULES
++        # to be assigned as MODULES[0]. Avoid this by explicitly unsetting
++        # MODULES before re-sourcing the config.
++        unset MODULES
++
+         . /dev/stdin
+ 
+-        for mod in "${modules[@]%\?}"; do
++        # arrayize MODULES if necessary.
++        [[ ${MODULES at a} != *a* ]] && read -ra MODULES <<<"${MODULES//-/_}"
++
++        for mod in "${MODULES[@]%\?}"; do
+             mod=${mod//-/_}
+             # only add real modules (2 == builtin)
+             (( _addedmodules["$mod"] == 1 )) && add+=("$mod")
+-- 
+2.14.2
+

Copied: mkinitcpio/repos/testing-any/0001-install-block-avoid-conditional-addition-of-drivers.patch (from rev 336057, mkinitcpio/trunk/0001-install-block-avoid-conditional-addition-of-drivers.patch)
===================================================================
--- testing-any/0001-install-block-avoid-conditional-addition-of-drivers.patch	                        (rev 0)
+++ testing-any/0001-install-block-avoid-conditional-addition-of-drivers.patch	2018-10-09 14:19:07 UTC (rev 336058)
@@ -0,0 +1,65 @@
+From a3cb799a8f63186b843db6a57da12d74a9320686 Mon Sep 17 00:00:00 2001
+From: Dave Reisner <dreisner at archlinux.org>
+Date: Mon, 8 Oct 2018 19:45:11 -0400
+Subject: [subjectprefix = mkinitcpio] [PATCH] install/block: avoid conditional
+ addition of drivers
+
+Avoid over-optimizing autodetect and always add these. This allows
+storage drivers to be builtins and still trigger addition of the block
+node driver.
+---
+ install/block | 25 ++++++++-----------------
+ 1 file changed, 8 insertions(+), 17 deletions(-)
+
+diff --git a/install/block b/install/block
+index d9c627f..11c4665 100644
+--- a/install/block
++++ b/install/block
+@@ -2,36 +2,27 @@
+ 
+ build() {
+     local filter
+-    local -A blockdevs
++
++    map add_module sd_mod? sr_mod? usb_storage? mmc_block? firewire-sbp2? virtio_blk?
+ 
+     # pata, sata, scsi, nvme
+     for filter in 'scsi/.*ata' '/(block|scsi|fusion|nvme)/' 'ata/[ps]ata_' \
+             'ata/(ahci|pdc_adma|ata_piix|ata_generic)'; do
+-        add_checked_modules "$filter" && blockdevs['sd_mod']=1
++        add_checked_modules "$filter"
+     done
+ 
+     # usb
+-    if add_checked_modules -f '(_cs|sl811_hcd|isp116x_hcd)' '/usb/host'; then
+-        blockdevs+=(['usb_storage?']=1 ['sd_mod?']=1 ['sr_mod?']=1)
+-        add_checked_modules '/drivers/usb/storage/'
+-    fi
++    add_checked_modules -f '(_cs|sl811_hcd|isp116x_hcd)' '/usb/host'
++    add_checked_modules '/drivers/usb/storage/'
+ 
+     # firewire
+-    if add_checked_modules '/drivers/firewire/'; then
+-        blockdevs+=(['firewire-sbp2?']=1 ['sd_mod?']=1 ['sr_mod?']=1)
+-    fi
++    add_checked_modules '/drivers/firewire/'
+ 
+     # mmc
+-    if add_checked_modules '/(mmc|tifm_)'; then
+-        blockdevs+=(['mmc_block?']=1)
+-    fi
++    add_checked_modules '/(mmc|tifm_)'
+ 
+     # virtio
+-    if add_checked_modules 'virtio'; then
+-        blockdevs['virtio_blk?']=1
+-    fi
+-
+-    map add_module "${!blockdevs[@]}"
++    add_checked_modules 'virtio'
+ }
+ 
+ help() {
+-- 
+2.19.0
+

Copied: mkinitcpio/repos/testing-any/PKGBUILD (from rev 336057, mkinitcpio/trunk/PKGBUILD)
===================================================================
--- testing-any/PKGBUILD	                        (rev 0)
+++ testing-any/PKGBUILD	2018-10-09 14:19:07 UTC (rev 336058)
@@ -0,0 +1,43 @@
+# Maintainer: Dave Reisner <dreisner at archlinux.org>
+# Maintainer: Thomas Bächler <thomas at archlinux.org>
+
+pkgname=mkinitcpio
+pkgver=24
+pkgrel=3
+pkgdesc="Modular initramfs image creation utility"
+arch=('any')
+url="https://projects.archlinux.org/mkinitcpio.git/"
+license=('GPL')
+depends=('awk' 'mkinitcpio-busybox>=1.19.4-2' 'kmod' 'util-linux>=2.23' 'libarchive'
+         'coreutils' 'bash' 'findutils' 'grep' 'filesystem>=2011.10-1' 'gzip' 'systemd')
+optdepends=('xz: Use lzma or xz compression for the initramfs image'
+            'bzip2: Use bzip2 compression for the initramfs image'
+            'lzop: Use lzo compression for the initramfs image'
+            'lz4: Use lz4 compression for the initramfs image'
+            'mkinitcpio-nfs-utils: Support for root filesystem on NFS')
+backup=('etc/mkinitcpio.conf')
+source=("https://sources.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig}
+        0001-Restore-addition-of-modules-from-config-file.patch
+        0001-install-block-avoid-conditional-addition-of-drivers.patch)
+install=mkinitcpio.install
+sha256sums=('ec0ecbc518c14ecacf5a8ece2f068fe86fcaf3aed09ee6b82737e773e5d7d02b'
+            'SKIP'
+            'd4cbbf7b05f5dcaf23139469376ff6c29e948ce77a8c51ad4867413b4bddc4db'
+            '2ef47f6068323494bfc3181d8d34a732f8947775f6ff6e595e6f3eb4190df76e')
+validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53'   # Dave Reisner
+              '86CFFCA918CF3AF47147588051E8B148A9999C34')  # Evangelos Foutras
+
+prepare() {
+  cd "$pkgname-$pkgver"
+
+  patch -Np1 <"$srcdir"/0001-Restore-addition-of-modules-from-config-file.patch
+  patch -Np1 <"$srcdir"/0001-install-block-avoid-conditional-addition-of-drivers.patch
+}
+
+check() {
+  make -C "$pkgname-$pkgver" check
+}
+
+package() {
+  make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install
+}

Copied: mkinitcpio/repos/testing-any/mkinitcpio.install (from rev 336057, mkinitcpio/trunk/mkinitcpio.install)
===================================================================
--- testing-any/mkinitcpio.install	                        (rev 0)
+++ testing-any/mkinitcpio.install	2018-10-09 14:19:07 UTC (rev 336058)
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+post_upgrade() {
+  if [ "$(vercmp 0.9.0 "$2")" -eq 1 ]; then
+    printf '==> If your /usr is on a separate partition, you must add the "usr" hook\n'
+    printf '    to /etc/mkinitcpio.conf and regenerate your images before rebooting\n'
+  fi
+
+  if [ "$(vercmp 0.12.0 "$2")" -eq 1 ]; then
+    printf '==> The "block" hook has replaced several hooks:\n'
+    printf '       fw, sata, pata, scsi, virtio, mmc, usb\n'
+    printf '    Replace any and all of these in /etc/mkinitcpio.conf with a single\n'
+    printf '    instance of the "block" hook\n'
+  fi
+}



More information about the arch-commits mailing list