================================ PackageKit:source=0.5.7-3 cvc rdiff PackageKit -1 /weasel.rpath.org@wgl:3-devel/0.5.7-3 ================================ 0.5.7-3 Filip Brcic (brcha@xxxxxxxxxxxx) Tue Jun 15 12:50:26 2010 Automatic promote by rBuild. packagekit_simulate.diff: new --- /dev/null +++ packagekit_simulate.diff @@ -0,0 +276 @@ +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..02af524 +--- /dev/null ++++ b/.gitignore +@@ -0,0 +1,64 @@ ++Makefile ++Makefile.in ++aclocal.m4 ++config.cache ++autom4te.cache ++config.guess ++config.h ++config.h.in ++config.log ++config.status ++config.sub ++configure ++configure.scan ++compile ++depcomp ++intl ++libtool ++ltconfig ++ltmain.sh ++missing ++mkinstalldirs ++install-sh ++stamp-h ++stamp-h1 ++stamp-h.in ++version.h ++intl ++macros ++INSTALL ++PackageKit-*.tar.* ++org.freedesktop.PackageKit.conf ++xml-i18n-extract.in ++xml-i18n-extract ++xml-i18n-merge.in ++xml-i18n-merge ++xml-i18n-update.in ++xml-i18n-update ++intltool-extract.in ++intltool-extract ++intltool-merge.in ++intltool-merge ++intltool-update.in ++intltool-update ++xmldocs.make ++omf.make ++gtk-doc.make ++*~ ++*.pc ++py-compile ++*.swp ++tags ++*.patch ++NEWS.new ++.lock-wscript ++.waf-* ++_build_ ++waf-lightc ++wafadmin ++packagekit.types ++.anjuta ++*.cache ++*.anjuta ++ChangeLog ++ +diff --git a/backends/conary/conaryBackend.py b/backends/conary/conaryBackend.py +index 9bf022d..ee3e2b0 100755 +--- a/backends/conary/conaryBackend.py ++++ b/backends/conary/conaryBackend.py +@@ -151,16 +151,26 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + installed = INFO_AVAILABLE + return installed + ++ def get_package_id_from_pkg(self,pkg): ++ return self.get_package_id_new(pkg) ++ ++ def _format_metadata(self, metadata): ++ name = metadata.get("name") ++ data = "" ++ if "shortDesc" in metadata: ++ data = metadata['shortDesc'].decode("UTF") ++ if data == "." or data == "": ++ data = name.replace("-",' ').replace("_"," ").capitalize() ++ return data ++ ++ + def get_package_id_new(self,pkg): + + name,version,flavor = pkg.get("trove") + metadata = pkg.get("metadata") + data = "" + if metadata: +- if "shortDesc" in metadata: +- data = metadata['shortDesc'].decode("UTF") +- if data == "." or data == "": +- data = name.replace("-",' ').capitalize() ++ data = self._format_metadata(metadata) + return pkpackage.get_package_id(name, version.trailingRevision(), self._get_arch(flavor), data) + + @ExceptionHandler +@@ -174,11 +184,7 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + #data = versionObj.asString() + "#" + data = "" + if pkg: +- if "shortDesc" in pkg: +- data = pkg['shortDesc'].decode("UTF") +- if data == "." or data == "": +- data = name.replace("-",' ').capitalize() +- ++ data = self._format_metadata(pkg) + return pkpackage.get_package_id(name, version, arch, data) + + @ExceptionHandler +@@ -402,7 +408,7 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + # name ,version,flavor = pkg.get("trove") + # get the string id from packagekit + #log.info(pkg) +- package_id = self.get_package_id_new(pkg) ++ package_id = self.get_package_id_from_pkg(pkg) + + # split the list for get Determine info + summary = package_id.split(";") +@@ -411,7 +417,7 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + + summary[3] = pkg.get("metadata").get("label") + pkg_id = ";".join(summary) +- log.info("====== show the package (%s) %s- %s" %( pos, name, status) ) ++ log.info("====== show the package (%s) %s %s %s" %( pos, name, status, meta) ) + self.package(package_id, status, meta ) + self.packages = [] + +@@ -514,6 +520,7 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + self.percentage(None) + self.status(STATUS_INFO) + package_id = package_ids[0] ++ log.info("get_files ===============0") + def _get_files(troveSource, n, v, f): + files = [] + troves = [(n, v, f)] +@@ -521,21 +528,22 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + troves.extend([ x for x in trv.iterTroveList(strongRefs=True) + if troveSource.hasTrove(*x)]) + for n, v, f in troves: +- for (pathId, path, fileId, version, filename) in \ +- troveSource.iterFilesInTrove(n, v, f, sortByPath = True, +- withFiles = True): ++ tr = troveSource.getTrove(n, v, f) ++ for (pathId, path, fileId, version) in tr.iterFileList( ): + files.append(path) + return files + + for package in package_id.split("&"): ++ log.info("get:files===========0") + log.info(package) + name, version, flavor, installed = self._findPackage(package) +- ++ log.info((name,version,installed)) ++ log.info(">>>>>>>>>>>>>>>>>>>>>><") + if installed == INFO_INSTALLED: + files = _get_files(self.client.db, name, version, flavor) + else: + files = _get_files(self.client.repos, name, version, flavor) +- ++ log.info(files) + self.files(package_id, ';'.join(files)) + + @ExceptionHandler +@@ -748,9 +756,6 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + package_id = package_ids[0] + #name, version, flavor, installed = self._findPackage(package_id) + +- summary = package_id.split(";") +- log.info("====== geting summary") +- log.info(summary) + name,version,arch,data = pkpackage.get_package_from_id(package_id) + cache = Cache() + pkgDict = cache.resolve(name) +@@ -779,6 +784,7 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + pkg_id = package_id.split(";") + pkg_id[3] = pkgDict["label"] + package_id = ";".join(pkg_id) ++ log.info(package_id) + self.details(package_id, license, categories, longDesc, url, 0) + + def _show_package(self, name, version, flavor, status): +@@ -909,15 +915,15 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + ''' + find a package based on a package id (name;version;arch;summary) + ''' +- log.info("========== _findPackage ==========") +- log.info(package_id) ++# log.info("========== _findPackage ==========") ++ # log.info(package_id) + troveTuples = self.get_package_from_id(package_id) +- log.info(troveTuples) ++ # log.info(troveTuples) + for troveTuple in troveTuples: +- log.info("======== trove ") +- log.info(troveTuple) ++ # log.info("======== trove ") ++ # log.info(troveTuple) + installed = self.check_installed(troveTuple) +- log.info(installed) ++ # log.info(installed) + name, version, flavor = troveTuple + return name, version, flavor, installed + else: +diff --git a/backends/conary/pk-backend-conary.c b/backends/conary/pk-backend-conary.c +index 485f61d..261bd25 100644 +--- a/backends/conary/pk-backend-conary.c ++++ b/backends/conary/pk-backend-conary.c +@@ -348,6 +348,25 @@ backend_get_repo_list (PkBackend *backend, PkBitfield filters) + pk_backend_spawn_helper (spawn, "conaryBackend.py", "get-repo-list", filters_text, NULL); + g_free (filters_text); + } ++static void ++backend_simulate_install_packages (PkBackend *backend, gchar **package_ids) ++{ ++ ++ pk_backend_finished (backend); ++} ++static void ++backend_simulate_remove_packages (PkBackend *backend, gchar **package_ids) ++{ ++ ++ pk_backend_finished (backend); ++} ++ ++static void ++backend_simulate_update (PkBackend *backend, gchar **package_ids) ++{ ++ ++ pk_backend_finished (backend); ++} + + + PK_BACKEND_OPTIONS ( +@@ -389,8 +408,8 @@ PK_BACKEND_OPTIONS ( + backend_update_system, /* update_system */ + NULL, /* what_provides */ + NULL, /* simulate_install_files */ +- NULL, /* simulate_install_packages */ +- NULL, /* simulate_remove_packages */ +- NULL /* simulate_update_packages */ ++ backend_simulate_install_packages, /* simulate_install_packages */ ++ backend_simulate_remove_packages, /* simulate_remove_packages */ ++ backend_simulate_update /* simulate_update_packages */ + ); + +diff --git a/config.h b/config.h +index 0d2e1ef..228f1e3 100644 +--- a/config.h ++++ b/config.h +@@ -2,7 +2,7 @@ + /* config.h.in. Generated from configure.ac by autoheader. */ + + /* default backend prefix */ +-#define DEFAULT_BACKEND "yum" ++#define DEFAULT_BACKEND "conary" + + /* Build test code */ + #define EGG_BUILD_TESTS 1 +@@ -14,7 +14,7 @@ + #define GETTEXT_PACKAGE "PackageKit" + + /* Define to 1 if you have the <archive.h> header file. */ +-#define HAVE_ARCHIVE_H 1 ++/* #undef HAVE_ARCHIVE_H */ + + /* Define to 1 if you have the `bind_textdomain_codeset' function. */ + #define HAVE_BIND_TEXTDOMAIN_CODESET 1 PackageKit-0.5.7.tar.bz2: new PackageKit.recipe: new --- /dev/null +++ PackageKit.recipe @@ -0,0 +103 @@ +# +# Copyright (c) 2007-2010 Foresight Linux +# This file is distributed under the terms of the MIT License. +# A copy is available at http://www.rpath.com/permanent/mit-license.html +# + +class Packagekit(AutoPackageRecipe): + name = 'PackageKit' + version = '0.5.7' + + buildRequires = [ + 'atk:devel', + 'autoconf:data', + 'autoconf:runtime', + 'automake:runtime', + 'cairo:devel', + 'cElementTree:python', + 'ConsoleKit:runtime', + 'dbus:devel', + 'dbus-glib:devel', + 'dbus-glib:runtime', + 'dbus-python:python', + 'fontconfig:devel', + 'freetype:devel', + 'gettext:runtime', + 'glib:devel', + 'gtk-doc:devel', + 'gtk-doc:runtime', + 'gtk:devel', + 'intltool:runtime', + 'libtool:runtime', + 'libxslt:runtime', + 'NetworkManager:devel', + 'pango:devel', + 'pkgconfig:devel', + 'polkit:devel', + 'pygobject:python', + 'python:bin', + 'python:devel', + 'shared-mime-info:runtime', + 'sqlite:devel', +] + + + def unpack(r): + r.addArchive('http://www.packagekit.org/releases/') + # this patch make gnome-packagekit works again + r.addPatch('packagekit_simulate.diff') + r.addSource('pk.tmpwatch', dest='%(sysconfdir)s/cron.daily/PKConaryCache') + r.Replace('ScanDesktopFiles=true', 'ScanDesktopFiles=false', 'etc/PackageKit.conf.in') + r.Replace('UpdatePackageList=true', 'UpdatePackageList=false', 'etc/PackageKit.conf.in') + r.Replace('UpdateCheckProcesses=true', 'UpdateCheckProcesses=false', 'etc/PackageKit.conf.in') + r.Replace("CheckTestingRepos=true",'CheckTestingRepos=false',"etc/PackageKit.conf.in") + r.Replace("UseUpdateCache=true","UseUpdateCache=false","etc/PackageKit.conf.in") + r.Replace('auth_admin_keep', 'auth_self_keep', 'policy/org.freedesktop.packagekit.policy{,.in}') + + def configure(r): + r.Configure(' --disable-qt ' \ + ' --disable-local ' \ + ' --with-default-backend=conary ' \ + ' --enable-conary ' \ + ' --disable-dummy ' \ + ' --with-security-framework=polkit ' \ + ' --disable-gtk-doc ' \ + ' --enable-browser-plugin ' \ + ' --disable-gstreamer-plugin ' \ + ' --disable-ruck ' \ + ' --enable-command-not-found ' \ + ' --enable-gtk-module ' \ + ' --disable-strict ' \ + ' --disable-device-rebind ' \ + ' --disable-cron ' \ + ' --disable-pm-utils ' \ + ' --enable-introspection=no ' \ + ' --disable-service-packs ' \ + ' --disable-managed ' \ + ' --disable-gudev ') + + def policy(r): + + # for command-not-found + r.Remove('%(localstatedir)s/lib/PackageKit/*', allowNoMatch=True) + #r.Remove('%(sysconfdir)s/dbus-1/system.d/org.freedesktop.PackageKitTestBackend.conf', + # "%(sysconfdir)s/etc/dbus-1/system.d/org.freedesktop.PackageKitAptBackend.conf") + r.Remove("%(datadir)s/%(name)s/website/",recursive=True, allowNoMatch=True) + r.Remove('%(localstatedir)s/db/PackageKit/transactions.db', allowNoMatch=True) + r.Remove("%(localstatedir)s/cache/conary/job/") + r.Remove("%(localstatedir)s/cache/conary/xmlrepo/") + r.MakeDirs('%(localstatedir)s/db/PackageKit/') + r.MakeDirs('%(localstatedir)s/cache/PackageKit/downloads') + r.MakeDirs('%(localstatedir)s/run/PackageKit/udev') + r.ExcludeDirectories(exceptions=['%(localstatedir)s/db/PackageKit', + '%(localstatedir)s/cache/PackageKit/downloads', + '%(localstatedir)s/lib/PackageKit', + '%(localstatedir)s/run/PackageKit/udev']) + r.Requires("elementtree:python","/usr/sbin/packagekitd") + + # PackageSpec + r.SetModes("%(sysconfdir)s/profile.d/PackageKit.sh",0755) + r.PackageSpec("PackageKit-command-not-found","%(sysconfdir)s/%(name)s/CommandNotFound.conf|%(sysconfdir)s/profile.d/*|%(libexecdir)s/pk-command-not-found") + r.PackageSpec("PackageKit-browser-plugin","%(libdir)s/mozilla/plugins/packagekit-plugin.so") + r.PackageSpec("PackageKit-gtk-module","%(libdir)s/gtk-2.0/modules/libpk-gtk-module.so") + pkg.diff: new --- /dev/null +++ pkg.diff @@ -0,0 +109 @@ +diff --git a/backends/conary/conaryBackend.py b/backends/conary/conaryBackend.py +index 4089680..d351cbd 100755 +--- a/backends/conary/conaryBackend.py ++++ b/backends/conary/conaryBackend.py +@@ -320,7 +320,7 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + + pkgFilter = ConaryFilter(filters) + # if filter install exist only do a conary q +- trovesList = self.client.db.findTroves( None ,specList, allowMissing = True) ++ trovesList = self.conary.db.findTroves( None ,specList, allowMissing = True) + log.info("Packages installed .... %s " % len(trovesList)) + for trove in specList: + if trove in trovesList: +@@ -341,7 +341,9 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + name,version,flavor = pkg.get("trove") + trove = name, version, self.conary.flavor + specList.append(trove) +- trovelist = self.client.repos.findTroves(self.conary.default_label, specList, allowMissing=True) ++ log.info("doing a repos.findTroves") ++ r = self.client.getRepos() ++ trovelist = r.findTroves(self.conary.default_label, specList, allowMissing=True) + + list_available = [] + for trove in specList: +@@ -376,13 +378,14 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + + filter = ConaryFilter(filters) + trove = None +- ++ log.info("doing query") + trove_installed = self.conary.query( pkg_dict.get("name") ) + if trove_installed: + pkg = self._convert_package( trove_installed[0], pkg_dict ) + log.info( pkg) + filter.add_installed( [ pkg ] ) + ++ log.info("doing rquery") + trove_available = self.conary.request_query( pkg_dict.get("name") ) + if trove_available: + pkg = self._convert_package( trove_available[0], pkg_dict ) +@@ -946,6 +949,8 @@ class PackageKitConaryBackend(PackageKitBaseBackend): + Implement the {backend}-repo-enable functionality + ''' + pass ++ def __del__(self): ++ self.cli.close() + + from pkConaryLog import pdb + +@@ -954,6 +959,8 @@ def main(): + log.info("======== argv =========== ") + log.info(sys.argv) + backend.dispatcher(sys.argv[1:]) ++ log.info("backend close") ++ del backend + + if __name__ == "__main__": + main() +diff --git a/backends/conary/conarypk.py b/backends/conary/conarypk.py +index 7a8628e..ed999bb 100644 +--- a/backends/conary/conarypk.py ++++ b/backends/conary/conarypk.py +@@ -37,10 +37,11 @@ class ConaryPk: + # for client + self.cli = cli + # for query on system (database) +- self.db = cli.db ++ self.db = cli.getDatabase() + # for request query on repository (repos) +- self.repos = cli.repos ++ self.repos = cli.getRepos() + def _exist_network(self): ++ return + if not os.environ.get("NETWORK"): + Pk = PackageKitBaseBackend("") + Pk.error(ERROR_NO_NETWORK,"Not exist network conection") +@@ -81,7 +82,7 @@ class ConaryPk: + return [] + db = self._get_db() + try: +- troves = db.findTrove( None ,(name , None, None )) ++ troves = self.db.findTrove( None ,(name , None, None )) + #return db.getTroves(troves) + return troves + except TroveNotFound: +@@ -93,7 +94,7 @@ class ConaryPk: + label = self.label( installLabel ) + repos = self._get_repos() + try: +- troves = repos.findTrove( label ,( name, None ,self.flavor ) ) ++ troves = self.repos.findTrove( label ,( name, None ,self.flavor ) ) + #return repos.getTroves(troves) + return troves + except TroveNotFound: +@@ -132,10 +133,12 @@ class ConaryPk: + + if __name__ == "__main__": + conary = ConaryPk() +- print conary.search_path("/usr/bin/vim") ++ conary2 = ConaryPk() ++ #print conary.search_path("/usr/bin/vim") + #print conary.query("gimpasdas") + #print conary.request_query("dpaster",'zodyrepo.rpath.org@rpl:devel') +- #print conary.request_query("gimp") ++ print conary.request_query("gimp") ++ print conary2.request_query("emesene") + #print conary.request_query("gimpasdasd") + #print conary.update("amsn") + #print conary.remove("amsn") pk.tmpwatch: new --- /dev/null +++ pk.tmpwatch @@ -0,0 +1 @@ +/usr/sbin/tmpwatch 168 /var/cache/conary/jobs/ Committed by: brcha