aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2014-04-10 08:26:32 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2014-04-10 08:26:32 +0000
commit833b2ebee9959a13dd6d6e921be8ecd4f0341603 (patch)
treef524b4f619a5897c87b0a312405d277965048573
parent3fb25f42f62be859ca890b553a4102c495cf3433 (diff)
downloadaports-833b2ebee9959a13dd6d6e921be8ecd4f0341603.tar.bz2
aports-833b2ebee9959a13dd6d6e921be8ecd4f0341603.tar.xz
main/apk-tools: fix purge install_if packages on upgrade -a
-rw-r--r--main/apk-tools/0001-solver-purge-install_if-packages-deleted-from-reposi.patch42
-rw-r--r--main/apk-tools/APKBUILD12
2 files changed, 50 insertions, 4 deletions
diff --git a/main/apk-tools/0001-solver-purge-install_if-packages-deleted-from-reposi.patch b/main/apk-tools/0001-solver-purge-install_if-packages-deleted-from-reposi.patch
new file mode 100644
index 0000000000..42b97988f0
--- /dev/null
+++ b/main/apk-tools/0001-solver-purge-install_if-packages-deleted-from-reposi.patch
@@ -0,0 +1,42 @@
+From c35086dc927372bcbb260f0ef4b06eca38d9fdc4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
+Date: Thu, 10 Apr 2014 11:10:12 +0300
+Subject: [PATCH] solver: purge install_if packages deleted from repositories
+ on upgrade -a
+
+---
+ src/solver.c | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/src/solver.c b/src/solver.c
+index 9c513c7..2b35924 100644
+--- a/src/solver.c
++++ b/src/solver.c
+@@ -187,8 +187,6 @@ static void discover_name(struct apk_solver_state *ss, struct apk_name *name)
+ continue;
+
+ pkg->ss.seen = 1;
+- pkg->ss.iif_failed = (pkg->install_if->num == 0);
+- name->ss.no_iif &= pkg->ss.iif_failed;
+
+ pkg->ss.pinning_allowed = APK_DEFAULT_PINNING_MASK;
+ pkg->ss.pinning_preferred = APK_DEFAULT_PINNING_MASK;
+@@ -201,6 +199,15 @@ static void discover_name(struct apk_solver_state *ss, struct apk_name *name)
+ (pkg->repos & db->available_repos) ||
+ pkg->ipkg;
+
++ /* Prune install_if packages that are no longer available,
++ * currently works only if SOLVERF_AVAILABLE is set in the
++ * global solver flags. */
++ pkg->ss.iif_failed =
++ (pkg->install_if->num == 0) ||
++ ((ss->solver_flags_inherit & APK_SOLVERF_AVAILABLE) &&
++ !pkg->ss.pkg_available);
++ name->ss.no_iif &= pkg->ss.iif_failed;
++
+ repos = get_pkg_repos(db, pkg);
+ pkg->ss.tag_preferred =
+ (pkg->filename != NULL) ||
+--
+1.9.1
+
diff --git a/main/apk-tools/APKBUILD b/main/apk-tools/APKBUILD
index e4a8df98f9..a42b77024a 100644
--- a/main/apk-tools/APKBUILD
+++ b/main/apk-tools/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=apk-tools
pkgver=2.4.2
-pkgrel=1
+pkgrel=2
pkgdesc="Alpine Package Keeper - package manager for alpine"
subpackages="$pkgname-static"
depends=
@@ -14,6 +14,7 @@ if [ "$CBUILD" == "$CHOST" ]; then
fi
source="http://dev.alpinelinux.org/archive/$pkgname/$pkgname-$pkgver.tar.xz
0001-solver-fix-cleaning-of-packages-that-got-replaced-by.patch
+ 0001-solver-purge-install_if-packages-deleted-from-reposi.patch
"
url="http://git.alpinelinux.org/cgit/apk-tools/"
@@ -84,8 +85,11 @@ luaapk() {
}
md5sums="d046604f183a9e5c8d3ce760cee0d9c9 apk-tools-2.4.2.tar.xz
-06ac5dce22c526dcc977c4a81659985b 0001-solver-fix-cleaning-of-packages-that-got-replaced-by.patch"
+06ac5dce22c526dcc977c4a81659985b 0001-solver-fix-cleaning-of-packages-that-got-replaced-by.patch
+5c3882117f83a3553f7f9887ab2b8049 0001-solver-purge-install_if-packages-deleted-from-reposi.patch"
sha256sums="b35231dce35432d76d75eb0dc306e7d7ee52fedf012303af59f00342e39aedda apk-tools-2.4.2.tar.xz
-804878bdd008bb68fd457a53d977da3321bd82776a894b7d016980c29de5c8ed 0001-solver-fix-cleaning-of-packages-that-got-replaced-by.patch"
+804878bdd008bb68fd457a53d977da3321bd82776a894b7d016980c29de5c8ed 0001-solver-fix-cleaning-of-packages-that-got-replaced-by.patch
+d8bf58e7e6206698f2ba4bdcbfb9118bde1b0e183a1e3226d91b1b4f2010e1f7 0001-solver-purge-install_if-packages-deleted-from-reposi.patch"
sha512sums="0f0a48289eb407b5e0e44f6bd854170f491972ad48b48232885c352e79664c420c15bf25c32676f6ef453b2df0333979c94634a43c6ef858ff72bfd802d25f69 apk-tools-2.4.2.tar.xz
-cbef12bacdf76e2908306b68aed135c37b329ca0b4f2cba2f8aa1da9ec83086d1114a0b05777267cd113f78480cac787a806a76496c8ad8954d2f795d9670c97 0001-solver-fix-cleaning-of-packages-that-got-replaced-by.patch"
+cbef12bacdf76e2908306b68aed135c37b329ca0b4f2cba2f8aa1da9ec83086d1114a0b05777267cd113f78480cac787a806a76496c8ad8954d2f795d9670c97 0001-solver-fix-cleaning-of-packages-that-got-replaced-by.patch
+a5c11340e90226ca165977acba291db1ec0c013b9fab527b7d71a5a9b23bd15e883c7819ed3b9c4a91dd79af8e051d75e775ecf97d6f3c00ab340865deecfe11 0001-solver-purge-install_if-packages-deleted-from-reposi.patch"