[Test-Announce] Fedora 18 Beta Test Compose 8 (TC8) Available Now!

Panu Matilainen pmatilai at laiskiainen.org
Mon Nov 12 19:40:54 UTC 2012


On 11/12/2012 09:43 AM, Panu Matilainen wrote:
> On 11/12/2012 08:56 AM, Adam Williamson wrote:
>> On 2012-11-11 22:02, Panu Matilainen wrote:
>>>
>>> Based on a quick grep, it doesn't seem to consider obsoletion at all,
>>> which explains what I see on the DVD and perhaps deserves looking at.
>>
>> I think the basic idea is that pungi isn't supposed to painfully
>> re-implement yum.
>
> Meh. Of course not. But unlike yum, pungi deals with space-constrained
> images and if it ends up pulling useless cruft in those images then it's
> not doing the best job it can for the very specific task it has.
>
>> If packages are obsoleted, they're supposed to be
>> retired. If something's obsoleted but not retired, that's a packaging
>> error.
>
> No disagreement there. But quite obviously nothing is currently finding
> those packaging errors, much of the "suspect items" list I posted has
> been there for years already. Just haven't gotten around to mention it
> anywhere.
>
> I'll shut up now and go see if I can actually do something about it.

FWIW, this is what I get with F18 pungi compose:

-rw-r--r--. 1 root root        240 Nov 12 21:10 Fedora-18-x86_64-CHECKSUM
-rw-r--r--. 1 root root 4687134720 Nov 12 21:10 Fedora-18-x86_64-DVD.iso
-rw-r--r--. 2 root root  268435456 Nov 12 19:22 Fedora-18-x86_64-netinst.iso

And this is with a patched pungi to filter out obsoleted packages:
-rw-r--r--. 1 root root        240 Nov 12 21:02 Fedora-18-x86_64-CHECKSUM
-rw-r--r--. 1 root root 4550819840 Nov 12 21:01 Fedora-18-x86_64-DVD.iso
-rw-r--r--. 2 root root  268435456 Nov 12 19:22 Fedora-18-x86_64-netinst.iso

It might not save the whales or even the day, but the difference is 
simply dead weight of obsoleted packages, and the list of packages 
excluded this way shockingly matches what the install-everything rpm 
"test" found.

Here's the diff to pungi in case somebody is interested:

[root at turre pypungi]# diff -u __init__.py.orig __init__.py
--- __init__.py.orig	2012-11-12 19:12:12.592544072 +0200
+++ __init__.py	2012-11-12 21:12:14.139970112 +0200
@@ -336,6 +336,14 @@
                          pkg_sack.remove(pkg)
                          break

+            # weed out obsoleted packages
+            obsoleters = 
pkg.obsoletedBy(self.ayum.pkgSack.searchObsoletes(pkg.name), limit=1)
+            if obsoleters:
+                obs = obsoleters[0]
+                self.logger.info("Excluding %s.%s (obsoleted by %s.%s)" 
% (pkg.name, pkg.arch, obs.name, obs.arch))
+                self.excluded_pkgs[pkg.nvra] = pkg
+                pkg_sack.remove(pkg)
+
          return pkg_sack

      def getPackageDeps(self, po):

	- Panu -


More information about the devel mailing list