Skip to content
Snippets Groups Projects
Verified Commit 5106aceb authored by Josef Schlehofer's avatar Josef Schlehofer
Browse files

Merge branch 'hotfix/preference-of-feeds' into hbl

parents 560e6232 1fa46a2c
Branches
Tags
1 merge request!123Turris OS 5.0 (HBK)
From 5b685c829941d1c54971ea89c1c50b4c7f557fe3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= <karel.koci@nic.cz>
Date: Tue, 10 Dec 2019 13:04:19 +0100
Subject: [PATCH] scripts/feeds: fix preference of package install
The previous behavior prefered same feed for dependent packages as
initial package. This caused inconsitency in installation of packages.
The difference was if two feeds provide same package (different version)
there was different result if you executed install for that specific
version compared to install for package depending on it from different
feed.
This ensures that preferred feed is propagated without change and
selected feed is used only really for package it was selected for.
---
scripts/feeds | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/scripts/feeds b/scripts/feeds
index 69ab602..fb115d0 100755
--- a/scripts/feeds
+++ b/scripts/feeds
@@ -517,19 +517,19 @@ sub install_src {
my $force = shift;
my $ret = 0;
- $feed = lookup_src($feed, $name);
- unless ($feed) {
+ my $select_feed = lookup_src($feed, $name);
+ unless ($select_feed) {
$installed{$name} and return 0;
$feed_src->{$name} or warn "WARNING: No feed for source package '$name' found\n";
return 0;
}
# switch to the metadata for the selected feed
- get_feed($feed->[1]);
+ get_feed($select_feed->[1]);
my $src = $feed_src->{$name} or return 1;
# enable force flag if feed src line was declared with --force
- if (exists($feed->[3]{force})) {
+ if (exists($select_feed->[3]{force})) {
$force = 1;
}
@@ -554,12 +554,12 @@ sub install_src {
}
if ($override) {
- warn "Overriding core package '$name' with version from $feed->[1]\n";
+ warn "Overriding core package '$name' with version from $select_feed->[1]\n";
} else {
- warn "Installing package '$name' from $feed->[1]\n";
+ warn "Installing package '$name' from $select_feed->[1]\n";
}
- do_install_src($feed, $src) == 0 or do {
+ do_install_src($select_feed, $src) == 0 or do {
warn "failed.\n";
return 1;
};
@@ -594,15 +594,15 @@ sub install_package {
my $name = shift;
my $force = shift;
- $feed = lookup_package($feed, $name);
- unless ($feed) {
+ my $select_feed = lookup_package($feed, $name);
+ unless ($select_feed) {
$installed_pkg{$name} and return 0;
$feed_vpackage->{$name} or warn "WARNING: No feed for package '$name' found\n";
return 0;
}
# switch to the metadata for the selected feed
- get_feed($feed->[1]);
+ get_feed($select_feed->[1]);
my $pkg = $feed_vpackage->{$name} or return 1;
return install_src($feed, $pkg->[0]{src}{name}, $force);
}
--
2.24.0
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment