Date: Friday, April 11, 2014 @ 03:28:15 Author: bgyorgy Revision: 109161
archrelease: copy trunk to community-testing-i686, community-testing-x86_64 Added: gnome-packagekit/repos/community-testing-i686/ gnome-packagekit/repos/community-testing-i686/PKGBUILD (from rev 109160, gnome-packagekit/trunk/PKGBUILD) gnome-packagekit/repos/community-testing-i686/gnome-packagekit.install (from rev 109160, gnome-packagekit/trunk/gnome-packagekit.install) gnome-packagekit/repos/community-testing-i686/packagekit-0.8.patch (from rev 109160, gnome-packagekit/trunk/packagekit-0.8.patch) gnome-packagekit/repos/community-testing-x86_64/ gnome-packagekit/repos/community-testing-x86_64/PKGBUILD (from rev 109160, gnome-packagekit/trunk/PKGBUILD) gnome-packagekit/repos/community-testing-x86_64/gnome-packagekit.install (from rev 109160, gnome-packagekit/trunk/gnome-packagekit.install) gnome-packagekit/repos/community-testing-x86_64/packagekit-0.8.patch (from rev 109160, gnome-packagekit/trunk/packagekit-0.8.patch) ---------------------------------------------------+ community-testing-i686/PKGBUILD | 47 ++++++++++++++ community-testing-i686/gnome-packagekit.install | 19 +++++ community-testing-i686/packagekit-0.8.patch | 65 ++++++++++++++++++++ community-testing-x86_64/PKGBUILD | 47 ++++++++++++++ community-testing-x86_64/gnome-packagekit.install | 19 +++++ community-testing-x86_64/packagekit-0.8.patch | 65 ++++++++++++++++++++ 6 files changed, 262 insertions(+) Copied: gnome-packagekit/repos/community-testing-i686/PKGBUILD (from rev 109160, gnome-packagekit/trunk/PKGBUILD) =================================================================== --- community-testing-i686/PKGBUILD (rev 0) +++ community-testing-i686/PKGBUILD 2014-04-11 01:28:15 UTC (rev 109161) @@ -0,0 +1,47 @@ +# $Id$ +# Maintainer: Jonathan Conder <jonno.con...@gmail.com> + +pkgname=gnome-packagekit +pkgver=3.12.0 +pkgrel=1 +pkgdesc='Collection of graphical tools for PackageKit to be used in the GNOME desktop' +arch=('i686' 'x86_64') +url='http://www.packagekit.org/' +license=('GPL') +depends=('desktop-file-utils' 'gtk3' 'hicolor-icon-theme' 'libnotify' + 'packagekit') +makedepends=('gconf' 'gtk-doc' 'intltool' 'itstool' 'libcanberra' 'upower') +optdepends=('gnome-settings-daemon-updates: update and message notifications') +options=('!emptydirs') +install="$pkgname.install" +source=("http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz" + "packagekit-0.8.patch") +sha256sums=('84cc4641bb174c833a2b01e2f3f5cbe24d9020ab9c2f245781be201a975a5943' + '717ba4d281adbafc9409202538ad1c8ce9a2bb41a6a0bc127e8dd5c4c1da1d65') + +prepare() { + cd "$srcdir/$pkgname-$pkgver" + + patch -RNp1 -i "$srcdir/packagekit-0.8.patch" + + _mime='application/x-xz-compressed-tar;application/x-servicepack;' + sed -i "s@MimeType=.*@MimeType=$_mime@" data/gpk-install-local-file.desktop.in +} + +build() { + cd "$srcdir/$pkgname-$pkgver" + + export PYTHON=/usr/bin/python2 + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --disable-gtk-doc \ + --disable-schemas-compile \ + --disable-scrollkeeper + make -s +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make -s DESTDIR="$pkgdir" install +} Copied: gnome-packagekit/repos/community-testing-i686/gnome-packagekit.install (from rev 109160, gnome-packagekit/trunk/gnome-packagekit.install) =================================================================== --- community-testing-i686/gnome-packagekit.install (rev 0) +++ community-testing-i686/gnome-packagekit.install 2014-04-11 01:28:15 UTC (rev 109161) @@ -0,0 +1,19 @@ +post_install() { + usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q +} + +pre_upgrade() { + if (( $(vercmp $2 2.91.90) < 0 )); then + usr/sbin/gconfpkg --uninstall gnome-packagekit + fi +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} Copied: gnome-packagekit/repos/community-testing-i686/packagekit-0.8.patch (from rev 109160, gnome-packagekit/trunk/packagekit-0.8.patch) =================================================================== --- community-testing-i686/packagekit-0.8.patch (rev 0) +++ community-testing-i686/packagekit-0.8.patch 2014-04-11 01:28:15 UTC (rev 109161) @@ -0,0 +1,65 @@ +From 4077ba3ea30354ef070d640a5af4b6a913e97f4b Mon Sep 17 00:00:00 2001 +From: Richard Hughes <rich...@hughsie.com> +Date: Tue, 18 Jun 2013 12:56:05 +0000 +Subject: Ignore package progress updates when the transaction is being simulated + +PackageKit backends do not have to issue INFO_FINISHED when simulating, and most +don't bother. As we didn't special-case simulation, we set up the activity +spinner on the Package(INFO_UPDATING) event and do not cancel the signal. + +This leaves every row in the update viewer with a spinning cursor, which due to +the way the code was structured lead to an O(n*n) exposion of updates to the +cell renderers for each update. For a dozen or so updates it was not noticable, +and nobody noticed the slight increase of CPU usage. + +Now that TeX Live has officially jumped the shark and has many hundreds of +sub-packages, it's quite plausible to have *thousands* of small packages to +update. This means that the O(n*n) bug stops being a minor increase in CPU and +starts to use the CPU at 100% for many hours before completing. + +Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=969852 +--- +diff --git a/src/gpk-update-viewer.c b/src/gpk-update-viewer.c +index 53be9cf..a2182a1 100644 +--- a/src/gpk-update-viewer.c ++++ b/src/gpk-update-viewer.c +@@ -841,6 +841,7 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + gchar *text; + gint percentage; + GtkWidget *widget; ++ guint64 transaction_flags; + PkInfoEnum info; + PkRoleEnum role; + PkStatusEnum status; +@@ -853,6 +854,7 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + "percentage", &percentage, + "package", &package, + "allow-cancel", &allow_cancel, ++ "transaction-flags", &transaction_flags, + NULL); + + if (type == PK_PROGRESS_TYPE_PACKAGE) { +@@ -864,6 +866,10 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + GtkTreePath *path; + gboolean scroll; + ++ /* ignore simulation phase */ ++ if (pk_bitfield_contain (transaction_flags, PK_TRANSACTION_FLAG_ENUM_SIMULATE)) ++ goto out; ++ + /* add the results, not the progress */ + if (role == PK_ROLE_ENUM_GET_UPDATES) + goto out; +@@ -1040,6 +1046,10 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + guint size_display; + PkItemProgress *item_progress; + ++ /* ignore simulation phase */ ++ if (pk_bitfield_contain (transaction_flags, PK_TRANSACTION_FLAG_ENUM_SIMULATE)) ++ goto out; ++ + g_object_get (progress, + "item-progress", &item_progress, + NULL); +-- +cgit v0.9.2 Copied: gnome-packagekit/repos/community-testing-x86_64/PKGBUILD (from rev 109160, gnome-packagekit/trunk/PKGBUILD) =================================================================== --- community-testing-x86_64/PKGBUILD (rev 0) +++ community-testing-x86_64/PKGBUILD 2014-04-11 01:28:15 UTC (rev 109161) @@ -0,0 +1,47 @@ +# $Id$ +# Maintainer: Jonathan Conder <jonno.con...@gmail.com> + +pkgname=gnome-packagekit +pkgver=3.12.0 +pkgrel=1 +pkgdesc='Collection of graphical tools for PackageKit to be used in the GNOME desktop' +arch=('i686' 'x86_64') +url='http://www.packagekit.org/' +license=('GPL') +depends=('desktop-file-utils' 'gtk3' 'hicolor-icon-theme' 'libnotify' + 'packagekit') +makedepends=('gconf' 'gtk-doc' 'intltool' 'itstool' 'libcanberra' 'upower') +optdepends=('gnome-settings-daemon-updates: update and message notifications') +options=('!emptydirs') +install="$pkgname.install" +source=("http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz" + "packagekit-0.8.patch") +sha256sums=('84cc4641bb174c833a2b01e2f3f5cbe24d9020ab9c2f245781be201a975a5943' + '717ba4d281adbafc9409202538ad1c8ce9a2bb41a6a0bc127e8dd5c4c1da1d65') + +prepare() { + cd "$srcdir/$pkgname-$pkgver" + + patch -RNp1 -i "$srcdir/packagekit-0.8.patch" + + _mime='application/x-xz-compressed-tar;application/x-servicepack;' + sed -i "s@MimeType=.*@MimeType=$_mime@" data/gpk-install-local-file.desktop.in +} + +build() { + cd "$srcdir/$pkgname-$pkgver" + + export PYTHON=/usr/bin/python2 + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --disable-gtk-doc \ + --disable-schemas-compile \ + --disable-scrollkeeper + make -s +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make -s DESTDIR="$pkgdir" install +} Copied: gnome-packagekit/repos/community-testing-x86_64/gnome-packagekit.install (from rev 109160, gnome-packagekit/trunk/gnome-packagekit.install) =================================================================== --- community-testing-x86_64/gnome-packagekit.install (rev 0) +++ community-testing-x86_64/gnome-packagekit.install 2014-04-11 01:28:15 UTC (rev 109161) @@ -0,0 +1,19 @@ +post_install() { + usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q +} + +pre_upgrade() { + if (( $(vercmp $2 2.91.90) < 0 )); then + usr/sbin/gconfpkg --uninstall gnome-packagekit + fi +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} Copied: gnome-packagekit/repos/community-testing-x86_64/packagekit-0.8.patch (from rev 109160, gnome-packagekit/trunk/packagekit-0.8.patch) =================================================================== --- community-testing-x86_64/packagekit-0.8.patch (rev 0) +++ community-testing-x86_64/packagekit-0.8.patch 2014-04-11 01:28:15 UTC (rev 109161) @@ -0,0 +1,65 @@ +From 4077ba3ea30354ef070d640a5af4b6a913e97f4b Mon Sep 17 00:00:00 2001 +From: Richard Hughes <rich...@hughsie.com> +Date: Tue, 18 Jun 2013 12:56:05 +0000 +Subject: Ignore package progress updates when the transaction is being simulated + +PackageKit backends do not have to issue INFO_FINISHED when simulating, and most +don't bother. As we didn't special-case simulation, we set up the activity +spinner on the Package(INFO_UPDATING) event and do not cancel the signal. + +This leaves every row in the update viewer with a spinning cursor, which due to +the way the code was structured lead to an O(n*n) exposion of updates to the +cell renderers for each update. For a dozen or so updates it was not noticable, +and nobody noticed the slight increase of CPU usage. + +Now that TeX Live has officially jumped the shark and has many hundreds of +sub-packages, it's quite plausible to have *thousands* of small packages to +update. This means that the O(n*n) bug stops being a minor increase in CPU and +starts to use the CPU at 100% for many hours before completing. + +Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=969852 +--- +diff --git a/src/gpk-update-viewer.c b/src/gpk-update-viewer.c +index 53be9cf..a2182a1 100644 +--- a/src/gpk-update-viewer.c ++++ b/src/gpk-update-viewer.c +@@ -841,6 +841,7 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + gchar *text; + gint percentage; + GtkWidget *widget; ++ guint64 transaction_flags; + PkInfoEnum info; + PkRoleEnum role; + PkStatusEnum status; +@@ -853,6 +854,7 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + "percentage", &percentage, + "package", &package, + "allow-cancel", &allow_cancel, ++ "transaction-flags", &transaction_flags, + NULL); + + if (type == PK_PROGRESS_TYPE_PACKAGE) { +@@ -864,6 +866,10 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + GtkTreePath *path; + gboolean scroll; + ++ /* ignore simulation phase */ ++ if (pk_bitfield_contain (transaction_flags, PK_TRANSACTION_FLAG_ENUM_SIMULATE)) ++ goto out; ++ + /* add the results, not the progress */ + if (role == PK_ROLE_ENUM_GET_UPDATES) + goto out; +@@ -1040,6 +1046,10 @@ gpk_update_viewer_progress_cb (PkProgress *progress, + guint size_display; + PkItemProgress *item_progress; + ++ /* ignore simulation phase */ ++ if (pk_bitfield_contain (transaction_flags, PK_TRANSACTION_FLAG_ENUM_SIMULATE)) ++ goto out; ++ + g_object_get (progress, + "item-progress", &item_progress, + NULL); +-- +cgit v0.9.2