From 66ec40dcfc67857f5edc4b65ce97fb59b0e9708e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Fabian=20Silva=20Delgado?= Date: Tue, 23 Feb 2016 16:14:26 -0300 Subject: pacman-5.0.0-1.parabola2: sychronize filesystem and revert close stdin before running install scripts for armv7h; fix nonprism repos in pacman.conf files --- libre/pacman/0001-Sychronize-filesystem.patch | 32 ++++++++++++++++++++++ ...lose-stdin-before-running-install-scripts.patch | 32 ++++++++++++++++++++++ libre/pacman/PKGBUILD | 17 +++++++++--- libre/pacman/pacman.conf.armv7h | 4 +-- libre/pacman/pacman.conf.i686 | 4 +-- libre/pacman/pacman.conf.x86_64 | 4 +-- 6 files changed, 83 insertions(+), 10 deletions(-) create mode 100644 libre/pacman/0001-Sychronize-filesystem.patch create mode 100644 libre/pacman/0002-Revert-close-stdin-before-running-install-scripts.patch (limited to 'libre/pacman') diff --git a/libre/pacman/0001-Sychronize-filesystem.patch b/libre/pacman/0001-Sychronize-filesystem.patch new file mode 100644 index 000000000..7c5f6fdcb --- /dev/null +++ b/libre/pacman/0001-Sychronize-filesystem.patch @@ -0,0 +1,32 @@ +From 25b7d2243038723c95402c0e6e1bdaa38817c92f Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Sat, 13 Sep 2014 18:58:16 -0600 +Subject: [PATCH 1/2] Sychronize filesystem + +Since many problems arise from improper flushing of the filesystem, +particularly package installations followed by a reboot very shorly after, +this will perform a sync() after installations and removals to ensure a +consistent filesystem state after package operations. + +Signed-off-by: Kevin Mihelich +--- + lib/libalpm/trans.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/lib/libalpm/trans.c b/lib/libalpm/trans.c +index 239d6a1..8a6260a 100644 +--- a/lib/libalpm/trans.c ++++ b/lib/libalpm/trans.c +@@ -230,6 +230,9 @@ int SYMEXPORT alpm_trans_commit(alpm_handle_t *handle, alpm_list_t **data) + + trans->state = STATE_COMMITED; + ++ _alpm_log(handle, ALPM_LOG_DEBUG, "synchronizing filesystem\n"); ++ sync(); ++ + return 0; + } + +-- +2.7.0 + diff --git a/libre/pacman/0002-Revert-close-stdin-before-running-install-scripts.patch b/libre/pacman/0002-Revert-close-stdin-before-running-install-scripts.patch new file mode 100644 index 000000000..7a926dc16 --- /dev/null +++ b/libre/pacman/0002-Revert-close-stdin-before-running-install-scripts.patch @@ -0,0 +1,32 @@ +From 4a773b741fd6aca6e6f7183e40d40a06e9c65ee3 Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Sat, 30 Jan 2016 17:19:03 -0700 +Subject: [PATCH 2/2] Revert "close stdin before running install scripts" + +This reverts commit e374e6829cea3512f0b4a4069c5a6168f0f8d8a0. + +Arch Linux ARM packages have use cases for this feature, such as +prompting the user to flash a new kernel to a bare partition. Removing +this feature will undoubtedly cause more problems than it intends to +solve. + +Signed-off-by: Kevin Mihelich +--- + lib/libalpm/util.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c +index 001c042..f2d43ee 100644 +--- a/lib/libalpm/util.c ++++ b/lib/libalpm/util.c +@@ -602,7 +602,6 @@ int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[], + + if(pid == 0) { + /* this code runs for the child only (the actual chroot/exec) */ +- close(0); + close(1); + close(2); + while(dup2(child2parent_pipefd[1], 1) == -1 && errno == EINTR); +-- +2.7.0 + diff --git a/libre/pacman/PKGBUILD b/libre/pacman/PKGBUILD index c1649ca8c..ca377657b 100644 --- a/libre/pacman/PKGBUILD +++ b/libre/pacman/PKGBUILD @@ -10,7 +10,7 @@ pkgname=pacman pkgver=5.0.0 -pkgrel=1.parabola1 +pkgrel=1.parabola2 pkgdesc="A library-based package manager with dependency support" arch=('i686' 'x86_64' 'armv7h') url="http://www.archlinux.org/pacman/" @@ -35,21 +35,30 @@ source=(https://sources.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz{,.sig makepkg.conf $pkgname-keyring.service $pkgname-keyring.timer + 0001-Sychronize-filesystem.patch + 0002-Revert-close-stdin-before-running-install-scripts.patch makepkg-pkgrel-5.patch) md5sums=('9ecf8a5b659c0e02232c945ab198e6e1' 'SKIP' - 'cbae23ebbdedb242b4229b1fa3788a2a' - '125d48252a2ac58092cc489ab6719375' - 'cbae23ebbdedb242b4229b1fa3788a2a' + 'f67cafd2e70b5b1231831f454e4ecb90' + '9853109830015e7516fd01a9ad00fe31' + 'f67cafd2e70b5b1231831f454e4ecb90' '19c91127e409cf24246de252be44eaa9' '11a5fac02651041e44d65d66c3538030' '7fb448e0d2b5b22da5ddc0040378efb0' + '11869a104d0944cc86215098cf5a32bf' + 'd4692c3add0b0dab87036edad3f59626' 'da78f246ac281ed949cf97d48f86d994') validpgpkeys=('6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD') # Allan McRae prepare() { cd "$pkgname-$pkgver" + if [ "${CARCH}" = "armv7h" ]; then + patch -p1 -i ../0001-Sychronize-filesystem.patch + patch -p1 -i ../0002-Revert-close-stdin-before-running-install-scripts.patch + fi + # treat pkgrel more similarly to pkgver patch -p1 -i "$srcdir/makepkg-pkgrel-5.patch" } diff --git a/libre/pacman/pacman.conf.armv7h b/libre/pacman/pacman.conf.armv7h index 5672efc43..de321afe9 100644 --- a/libre/pacman/pacman.conf.armv7h +++ b/libre/pacman/pacman.conf.armv7h @@ -73,10 +73,10 @@ LocalFileSigLevel = Optional # and patched without services under global data surveillance programs like PRISM, # XKeyscore and Tempora. For more info see: https://wiki.parabola.nu/Nonprism -#[nonprism] +#[nonprism-testing] #Include = /etc/pacman.d/mirrorlist -#[nonprism-testing] +#[nonprism] #Include = /etc/pacman.d/mirrorlist #[libre-testing] diff --git a/libre/pacman/pacman.conf.i686 b/libre/pacman/pacman.conf.i686 index 5672efc43..de321afe9 100644 --- a/libre/pacman/pacman.conf.i686 +++ b/libre/pacman/pacman.conf.i686 @@ -73,10 +73,10 @@ LocalFileSigLevel = Optional # and patched without services under global data surveillance programs like PRISM, # XKeyscore and Tempora. For more info see: https://wiki.parabola.nu/Nonprism -#[nonprism] +#[nonprism-testing] #Include = /etc/pacman.d/mirrorlist -#[nonprism-testing] +#[nonprism] #Include = /etc/pacman.d/mirrorlist #[libre-testing] diff --git a/libre/pacman/pacman.conf.x86_64 b/libre/pacman/pacman.conf.x86_64 index 371a64a68..1061a5611 100644 --- a/libre/pacman/pacman.conf.x86_64 +++ b/libre/pacman/pacman.conf.x86_64 @@ -73,10 +73,10 @@ LocalFileSigLevel = Optional # and patched without services under global data surveillance programs like PRISM, # XKeyscore and Tempora. For more info see: https://wiki.parabola.nu/Nonprism -#[nonprism] +#[nonprism-testing] #Include = /etc/pacman.d/mirrorlist -#[nonprism-testing] +#[nonprism] #Include = /etc/pacman.d/mirrorlist #[libre-testing] -- cgit v1.2.3