summaryrefslogtreecommitdiffstats
path: root/mdkapplet
diff options
context:
space:
mode:
Diffstat (limited to 'mdkapplet')
-rwxr-xr-xmdkapplet11
1 files changed, 10 insertions, 1 deletions
diff --git a/mdkapplet b/mdkapplet
index fdb43497..71d53ae0 100755
--- a/mdkapplet
+++ b/mdkapplet
@@ -236,7 +236,7 @@ foreach my $opt (@ARGV) {
my $root = Rpmdrake::open_db::fast_open_urpmi_db()->{root};
-my $new_distro_version;
+my ($new_distro_version, $new_distro_url);
my $product_id = common::parse_LDAP_namespace_structure(cat_("$root/etc/product.id"));
shouldStart() or die "$localfile should be set to TRUE: please use --force or -f option to launch applet\n";
@@ -306,6 +306,7 @@ sub is_there_a_new_distributions() {
if ($new_distro && $new_distro->{version} ne $product_id->{version}) {
$new_distro_version = $new_distro->{version};
+ $new_distro_url = $new_distro->{url};
log::explanations(sprintf("new '%s' distribution was released on %s", $new_distro_version, $new_distro->{release_date}));
return 1;
}
@@ -367,11 +368,19 @@ sub confirm_upgrade() {
N("Distribution Upgrade")
),
N("A new stable distribution has been released."),
+ gtknew('HButtonBox', layout => 'start', children_tight => [
+ my $link = Gtk2::LinkButton->new($new_distro_url, N("More info about this new version")),
+ ]),
N("Do you want to upgrade to the '\%s' distribution?", $new_distro_version),
gtknew('CheckButton', text => N("Do not ask me next time"), active_ref => \$warn_me),
create_okcancel($w, N("Yes"), N("No")),
]),
);
+ $link->set_uri_hook(sub {
+ my (undef, $url) = @_;
+ run_program::raw({ detach => 1, setuid => get_parent_uid() }, 'www-browser', $url);
+ });
+
$w->{ok}->grab_focus;
my $res = $w->main;
setVar('DO_NOT_ASK_FOR_DISTRO_UPGRADE', bool2text($warn_me));