Package: packagekit
Version: 1.0.6-1
Severity: normal
Tags: patch

Dear Maintainer,

PackageKit 1.0.6 appears to include an accidental change that makes
"reboot" the default action when the offline-update-action file does not
exist. This makes the gnome-shell shutdown sequence trigger updates on
reboot by default rather than by user choice, for example.

Upstream commit 0a7b6d67 introduced this change, and it was reverted in
version 1.0.7 in dffc8f1b. Please either incorporate this patch or
update to a new upstream release.

Including patch inline below for full clarity from
https://github.com/hughsie/PackageKit/commit/dffc8f1b0d4077ef07ec17181ed6f17723ce2120.patch

---

>From dffc8f1b0d4077ef07ec17181ed6f17723ce2120 Mon Sep 17 00:00:00 2001
From: Kalev Lember <kalevlem...@gmail.com>
Date: Thu, 14 May 2015 17:28:21 +0200
Subject: [PATCH] Revert "Make "reboot" the default action for no action file"

As a side effect, this commit inadvertently changed the default value
for the TriggerAction DBus property. This led to a fallout in the
gnome-shell shutdown dialog where the default then flipped to always
installing pending software updates on reboot / shutdown.

As for the issue that the original commit tried to address: it did so in
the wrong place. If there's a problem with the offline update process
hanging when no default is set, that should be addressed in
client/pk-offline-update.c to properly handle the UNSET state and not by
changing the default in the library.

This reverts commit 0a7b6d67b98cd06cabe03176c02db83f276dbe7b.
---
 lib/packagekit-glib2/pk-offline.c      | 2 +-
 lib/packagekit-glib2/pk-test-private.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/packagekit-glib2/pk-offline.c 
b/lib/packagekit-glib2/pk-offline.c
index 60cd81f..5985ba8 100644
--- a/lib/packagekit-glib2/pk-offline.c
+++ b/lib/packagekit-glib2/pk-offline.c
@@ -240,7 +240,7 @@ pk_offline_get_action (GError **error)
        /* is the trigger set? */
        if (!g_file_test (PK_OFFLINE_TRIGGER_FILENAME, G_FILE_TEST_EXISTS) ||
            !g_file_test (PK_OFFLINE_ACTION_FILENAME, G_FILE_TEST_EXISTS))
-               return PK_OFFLINE_ACTION_REBOOT;
+               return PK_OFFLINE_ACTION_UNSET;
 
        /* read data file */
        if (!g_file_get_contents (PK_OFFLINE_ACTION_FILENAME,
diff --git a/lib/packagekit-glib2/pk-test-private.c 
b/lib/packagekit-glib2/pk-test-private.c
index 4a79c7c..1ac4331 100644
--- a/lib/packagekit-glib2/pk-test-private.c
+++ b/lib/packagekit-glib2/pk-test-private.c
@@ -652,7 +652,7 @@ pk_test_offline_func (void)
        /* test no action set */
        action = pk_offline_get_action (&error);
        g_assert_no_error (error);
-       g_assert_cmpint (action, ==, PK_OFFLINE_ACTION_REBOOT);
+       g_assert_cmpint (action, ==, PK_OFFLINE_ACTION_UNSET);
 
        /* try to trigger without the fake updates set */
        ret = pk_offline_auth_trigger (PK_OFFLINE_ACTION_REBOOT, &error);


-- System Information:
Debian Release: stretch/sid
  APT prefers testing-updates
  APT policy: (500, 'testing-updates'), (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 4.1.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages packagekit depends on:
ii  gdebi-core              0.9.5.7
ii  libapt-inst1.5          1.0.9.10
ii  libapt-pkg4.12          1.0.9.10
ii  libc6                   2.19-19
ii  libgcc1                 1:5.1.1-14
ii  libglib2.0-0            2.44.1-1.1
ii  libglib2.0-bin          2.44.1-1.1
ii  libgstreamer1.0-0       1.4.5-2
ii  libpackagekit-glib2-18  1.0.6-1
ii  libpolkit-gobject-1-0   0.105-11
ii  libsqlite3-0            3.8.11.1-1
ii  libstdc++6              5.1.1-14
ii  libsystemd0             224-1
ii  policykit-1             0.105-11

Versions of packages packagekit recommends:
ii  packagekit-tools  1.0.6-1

Versions of packages packagekit suggests:
pn  appstream-index  <none>

-- no debconf information

Reply via email to