Reply to topic

KPackageKit: blocked updates from KOffice

User avatar lelamal
Registered Member
Posts
24
Karma
0
OS
Hi all, for a couple of days I have been seeing "12 blocked updates" in KPackageKit, and, since it never happened, I don't know what to do. At first, I thought some other package needed to be updated before those, which were held back until then. But it's not the case. I'm on Kubuntu 10.04, and all 12 updates relate to KOffice - I believe they must be the latest 2.2.1 update, but am not sure. "Unsupported updates" are enabled. The first part of their details read:

Type: Blocked update
Issued: 24/5/2010
Updated: 4/7/2010
New version: koffice-1:2.2.1-0ubuntu1~lucid1
Updates: koffice-1:2.2.0-0ubuntu1~lucid1
Repository: Ubuntu
Description: 1:2.2.1-0ubuntu1~lucid1
=======================

* Lucid backport
- Downgrade version of KDE build-depends to 4.4.2
- Change build-depend libkdcraw-dev to libkdcraw8-dev
- Downgrade version of pkg-kde-tools to 0.6.4ubuntu5
- Downgrade version of libgmm-dev to 3.0+svn758845-0ubuntu1
- Remove librcps-dev and opengtl-dev build-depends, not available in Lucid
- Update krita.install, krita-data.install and kplato.install

1:2.2.1-0ubuntu1
================

* New upstream bugfix release
- Remove kubuntu_01_kpluginselector_compile.diff and
kubuntu_03_file_copy_fixes.diff, went upstream
- Update krita.install, krita-data.install and
koffice-libs.install

Does anyone know why these updates are blocked, and what (if anything) should I do next? Many thanks in advance!
User avatar lelamal
Registered Member
Posts
24
Karma
0
OS
Some time ago, I posted the above help request. Since I received no reply, I asked on Kubuntu forums. Now I came back to share the solution, in case someone else might need it.

Basically, I was told that blocking specific updates is a good thing, most of the times, because installing them could have negative consequences on a system - either because the installed package has been deprecated, or because not all the dependencies needed have been updated/placed into the repositories yet.

Sometimes, however, KPackagekit may be the culprit:
Code: Select all
sudo apt-get update && sudo apt-get dist-upgrade

in which case the above command should unblock the situation. If it doesn't, chances are KPackagekit was legitimately preventing bad consequences, and it would be advisable not to force the process.
User avatar Snowhog
Registered Member
Posts
198
Karma
1
OS
A significant "problem" with KPackageKit is that it "does not do dependency resolution." It is using the "upgrade" option. This is why running apt-get dist-upgrade works were KPackageKit does not.
upgrade
upgrade is used to install the newest versions of all packages
currently installed on the system from the sources enumerated in
/etc/apt/sources.list. Packages currently installed with new
versions available are retrieved and upgraded; under no
circumstances are currently installed packages removed, or packages
not already installed retrieved and installed. New versions of
currently installed packages that cannot be upgraded without
changing the install status of another package will be left at
their current version. An update must be performed first so that
apt-get knows that new versions of packages are available.

dist-upgrade
dist-upgrade in addition to performing the function of upgrade,
also intelligently handles changing dependencies with new versions
of packages; apt-get has a "smart" conflict resolution system, and
it will attempt to upgrade the most important packages at the
expense of less important ones if necessary. So, dist-upgrade
command may remove some packages. The /etc/apt/sources.list file
contains a list of locations from which to retrieve desired package
files. See also apt_preferences(5) for a mechanism for overriding
the general settings for individual packages.

Why KPackageKit was developed this way is beyond me. It makes it a ham-strung package manager IMO.


Administrator
Kubuntu Forums . Net - https://kubuntuforums.net
dantti
Registered Member
Posts
2
Karma
0
OS
Snowhog wrote:A significant "problem" with KPackageKit is that it "does not do dependency resolution." It is using the "upgrade" option. This is why running apt-get dist-upgrade works were KPackageKit does not.
upgrade
upgrade is used to install the newest versions of all packages
currently installed on the system from the sources enumerated in
/etc/apt/sources.list. Packages currently installed with new
versions available are retrieved and upgraded; under no
circumstances are currently installed packages removed, or packages
not already installed retrieved and installed. New versions of
currently installed packages that cannot be upgraded without
changing the install status of another package will be left at
their current version. An update must be performed first so that
apt-get knows that new versions of packages are available.

dist-upgrade
dist-upgrade in addition to performing the function of upgrade,
also intelligently handles changing dependencies with new versions
of packages; apt-get has a "smart" conflict resolution system, and
it will attempt to upgrade the most important packages at the
expense of less important ones if necessary. So, dist-upgrade
command may remove some packages. The /etc/apt/sources.list file
contains a list of locations from which to retrieve desired package
files. See also apt_preferences(5) for a mechanism for overriding
the general settings for individual packages.

Why KPackageKit was developed this way is beyond me. It makes it a ham-strung package manager IMO.


You are right and you are wrong.
You are right because KPackageKit does not do package resolution, it's a simple frontend to PackageKit. This is the design since each distribution has it's way of handling resolution, so the job of doing this is on the PackageKit backend.

You are wrong because every backend has to do dependency resolution otherwise your system would break every time. The python apt backend that most people use in lucid does do the "upgrade" resolution, because when it was created PackageKit didn't allow package removal while installing. I've fixed PK as of 0.5, but the backend still does "upgrade", if you want "dist-upgrade" you can try using my aptcc backend which will be the default in Maverick. To do that install packagekit-backend-aptcc and change the DefaultBackend=aptcc in PackageKit.conf

Best.

 
Reply to topic

Bookmarks



Who is online

Registered users: Baidu [Spider], Bing [Bot], Google [Bot], konradppp, mickae, primokorn, Section_8, Sogou [Bot], Yahoo [Bot]