diff --git a/pacman/0004-test-fixes.patch b/pacman/0004-test-fixes.patch index e9e32c8f..7131d931 100644 --- a/pacman/0004-test-fixes.patch +++ b/pacman/0004-test-fixes.patch @@ -11,7 +11,7 @@ diff --git a/test/pacman/pmtest.py b/test/pacman/pmtest.py index f5f033f..da2041b 100644 --- a/test/pacman/pmtest.py +++ b/test/pacman/pmtest.py -@@ -297,8 +297,10 @@ def run(self, pacman): +@@ -297,8 +297,10 @@ class pmtest(object): # Change to the tmp dir before running pacman, so that local package # archives are made available more easily. time_start = time.time() diff --git a/pacman/0005-Remove-everything-related-to-sudo-fakeroot-file-perm.patch b/pacman/0005-Remove-everything-related-to-sudo-fakeroot-file-perm.patch index d97d701a..480e32c3 100644 --- a/pacman/0005-Remove-everything-related-to-sudo-fakeroot-file-perm.patch +++ b/pacman/0005-Remove-everything-related-to-sudo-fakeroot-file-perm.patch @@ -336,7 +336,7 @@ diff --git a/test/pacman/pmtest.py b/test/pacman/pmtest.py index da2041b..47a7cf4 100644 --- a/test/pacman/pmtest.py +++ b/test/pacman/pmtest.py -@@ -240,21 +240,6 @@ def run(self, pacman): +@@ -240,21 +240,6 @@ class pmtest(object): vprint("\tpacman %s" % self.args) cmd = [] diff --git a/pacman/0012-Remove-ldconfig.patch b/pacman/0012-Remove-ldconfig.patch index f2e96e73..ed584feb 100644 --- a/pacman/0012-Remove-ldconfig.patch +++ b/pacman/0012-Remove-ldconfig.patch @@ -153,7 +153,7 @@ index c6add23..d9f0445 100755 parser.add_option("--review", action = "store_true", dest = "review", default = False, help = "review test files, test output, and saved logs") -@@ -146,7 +143,6 @@ def create_parser(): +@@ -146,7 +143,6 @@ if __name__ == "__main__": env.pacman["valgrind"] = opts.valgrind env.pacman["manual-confirm"] = opts.manualconfirm env.pacman["scriptlet-shell"] = opts.scriptletshell @@ -165,7 +165,7 @@ diff --git a/test/pacman/pmtest.py b/test/pacman/pmtest.py index 47a7cf4..742db1a 100644 --- a/test/pacman/pmtest.py +++ b/test/pacman/pmtest.py -@@ -134,12 +134,10 @@ def generate(self, pacman): +@@ -134,12 +134,10 @@ class pmtest(object): logdir = os.path.join(self.root, os.path.dirname(util.LOGFILE)) etcdir = os.path.join(self.root, os.path.dirname(util.PACCONF)) bindir = os.path.join(self.root, "bin") @@ -179,7 +179,7 @@ index 47a7cf4..742db1a 100644 for sys_dir in sys_dirs: if not os.path.isdir(sys_dir): vprint("\t%s" % sys_dir[len(self.root)+1:]) -@@ -148,10 +146,6 @@ def generate(self, pacman): +@@ -148,10 +146,6 @@ class pmtest(object): shutil.copy("/bin/sh", bindir) if shell != "bin/sh": shutil.copy("/bin/sh", os.path.join(self.root, shell)) diff --git a/pacman/0032-Translate-MSYS2-specific-messages-into-Japanese.patch b/pacman/0032-Translate-MSYS2-specific-messages-into-Japanese.patch index 07521a82..6ce38749 100644 --- a/pacman/0032-Translate-MSYS2-specific-messages-into-Japanese.patch +++ b/pacman/0032-Translate-MSYS2-specific-messages-into-Japanese.patch @@ -8,7 +8,7 @@ Subject: [PATCH 32/N] Translate MSYS2 specific messages into Japanese 1 file changed, 24 insertions(+) diff --git a/src/pacman/po/ja.po b/src/pacman/po/ja.po -index cf00c7cd..63e82e17 100644 +index cf00c7c..63e82e1 100644 --- a/src/pacman/po/ja.po +++ b/src/pacman/po/ja.po @@ -1498,6 +1498,30 @@ msgid "'%s' is a file, did you mean %s instead of %s?\n" @@ -42,6 +42,3 @@ index cf00c7cd..63e82e17 100644 #: src/pacman/sync.c:727 #, c-format msgid "Starting full system upgrade...\n" --- -2.45.1 - diff --git a/pacman/0033-fixup-Core-update.patch b/pacman/0033-fixup-Core-update.patch new file mode 100644 index 00000000..6c0a53e0 --- /dev/null +++ b/pacman/0033-fixup-Core-update.patch @@ -0,0 +1,42 @@ +From 87df1c19b3d3c2b953caa44e865f39d06cb92bf0 Mon Sep 17 00:00:00 2001 +From: Jeremy Drake +Date: Fri, 2 May 2025 11:19:35 -0700 +Subject: [PATCH 33/N] fixup! Core update + +don't terminate all processes and exit during core updates if: +* asked to print packages only +* asked to download packages only +* asked to operate against a different root +--- + src/pacman/sync.c | 18 +++++++++++++----- + 1 file changed, 13 insertions(+), 5 deletions(-) + +diff --git a/src/pacman/sync.c b/src/pacman/sync.c +index 03a307c..6bc8217 100644 +--- a/src/pacman/sync.c ++++ b/src/pacman/sync.c +@@ -856,11 +856,19 @@ static int sync_trans(alpm_list_t *targets) + + if(config->op_s_upgrade) { + #ifdef __MSYS__ +- if((retval = core_update(&found_core_updates))) { +- return retval; +- } +- if(found_core_updates) { +- return retval; ++ if (config->print || config->op_s_downloadonly || strcmp(config->rootdir, "/") != 0) { ++ if(alpm_sync_sysupgrade_core(config->handle, config->op_s_upgrade >= 2) == -1) { ++ pm_printf(ALPM_LOG_ERROR, "%s\n", alpm_strerror(alpm_errno(config->handle))); ++ trans_release(); ++ return 1; ++ } ++ } else { ++ if((retval = core_update(&found_core_updates))) { ++ return retval; ++ } ++ if(found_core_updates) { ++ return retval; ++ } + } + #endif + if(!config->print) { diff --git a/pacman/PKGBUILD b/pacman/PKGBUILD index 8eb8f297..f0585fc4 100644 --- a/pacman/PKGBUILD +++ b/pacman/PKGBUILD @@ -4,7 +4,7 @@ pkgname=pacman pkgver=6.1.0 -pkgrel=14 +pkgrel=15 pkgdesc="A library-based package manager with dependency support (MSYS2 port)" arch=('i686' 'x86_64') url="https://www.archlinux.org/pacman/" @@ -82,7 +82,8 @@ source=(pacman::git+https://gitlab.archlinux.org/pacman/pacman.git#commit=${_com 0029-libmakepkg-remove-MAKEFLAGS-from-buildenv_vars.patch 0030-libmakepkg-do-not-unset-CHOST-with-buildflags.patch 0031-repo-add-unconditionally-create-the-database-if-it-i.patch - 0032-Translate-MSYS2-specific-messages-into-Japanese.patch) + 0032-Translate-MSYS2-specific-messages-into-Japanese.patch + 0033-fixup-Core-update.patch) validpgpkeys=('6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD' # Allan McRae 'B8151B117037781095514CA7BBDFFC92306B1121') # Andrew Gregory (pacman) sha256sums=('803cba087e713a59866797747c3c63abbc0e4354c45cc2c0467d11e78364d66f' @@ -98,15 +99,15 @@ sha256sums=('803cba087e713a59866797747c3c63abbc0e4354c45cc2c0467d11e78364d66f' '167e9ffe59e55fb07d47e0c9a4bddd9d967c50ec2c8711a0a0bbe4b184fc8b0f' '1021dc5950ff9f9efac795688c4b53a1d3cda42b0f270ee755a038bbcf9eccab' 'af0c734c6efa167bdd9505f0cf8d5d85a8d535a5062a69b6e38473bb43b37aff' - '18e2eff8423c1492aa4b2231c6f2d68801390ac92650124be726191c59d6ba17' - '7f258a972f17ce1ed016b3cb142624a9c128f46421155aeb0525a954c85fae12' + '635a83766a0cdf47cfc51b648b80ceea1d05cfa664f44785caaeef93681f08bf' + 'ce5e0b89b5054f561585ab1e14ab9c160319def3e5249495d883492edb3341f4' '76a3764b5e556b5d68d2b56776082db45e00a9571e1ba6f53a1e4a2041f7d818' '69c4fd8cd0322dbdbe99cdb41020222ed84fbeda24781b39eaa154703b64a3fa' '7b699981a007c6c3acea5950db4ddee9c2c488083cd4266793d8b22d1843ebc7' '53811beed6feaacb0c5ebd7c1e4dcc6de4dde5c06e4d027bdd3ba85bc40a2926' '088a3f80ee0c81b9ca02ad83a35a1f45f86e85d37243e1f0ed521caee191ceab' 'e7b11b8c847b3a4b7062026b73b97561b2a92c60d746e509acace63c65e29ee1' - '741655fa3bb419e23a5bc4a0168de0c69b3e50a1e8428c7f2da3393490615117' + 'd1432a11149402601d0542b8b9b61b0987714099eeaf18744d4ef5986e49f4d9' '09e8c61dc9622cdee94e4ad857675e6408953db3ca60a33288eb5404ad9937eb' '87fd787dbd11a7d3472828b1be3d1c283bd177831fcc4d39e8e52592e2c88afc' '0a5e65369539ee2fae3856e961609dbabef765fd0db41c61cfe8aa36dcafdd40' @@ -126,7 +127,8 @@ sha256sums=('803cba087e713a59866797747c3c63abbc0e4354c45cc2c0467d11e78364d66f' '25229ab3f14460d14b58e37984262e26655110d3b2cdee74b345a3ccb8536cf1' 'c4762de7bb589b5ed84f0474e7a2ba8bf3c6447db153099816cba9cf8cf01cee' 'f090e9c042c901c52f13a8639577f3a97fcac20fc4f2c21a27e7d9223f5dfe2c' - 'b267d03ed6fd9fd2087084c35f303f0ece131ae9a2825e5d2764f7e98c6cf505') + '3de0512e99d5b13ecffd192b019ba2f77e0f238112d2578ae10cbb1cbdd39e47' + 'd093221c40c9a96e0303f299f5df31f5cd100e83e8ceb9eccaffee07a60ef338') apply_git_with_msg() { for _patch in "$@" @@ -174,7 +176,8 @@ prepare() { 0029-libmakepkg-remove-MAKEFLAGS-from-buildenv_vars.patch \ 0030-libmakepkg-do-not-unset-CHOST-with-buildflags.patch \ 0031-repo-add-unconditionally-create-the-database-if-it-i.patch \ - 0032-Translate-MSYS2-specific-messages-into-Japanese.patch + 0032-Translate-MSYS2-specific-messages-into-Japanese.patch \ + 0033-fixup-Core-update.patch } build() {