This is an odd one. In all the F19 live images I've done so far, some packages have showed up for no reason I can figure out.
Both KDE and GNOME lives seem to contain cups-pdf. It is not listed as 'mandatory' or 'default' in any group in comps, and it is not mentioned in any spin-kickstarts .ks at all. Nothing requires it:
[root@adam spin-kickstarts (f19 *)]# repoquery --whatrequires cups-pdf
[root@adam spin-kickstarts (f19 *)]#
It only provides:
and nothing else, so far as I can tell, requires any of those.
After installing the live image, I can run 'yum remove cups-pdf' and no other packages get removed at all - it comes out clean. So why is it winding up in the images? I have no idea, neither does bcl. It's a mystery.
OK, so this turns out to be pretty simple. I thought I'd already discovered it, but must have had a brain fart.
For some reason, packages listed as 'optional' in comps are being pulled into the live composes. a2ps is listed as 'optional' in the @printing group, which is in fedora-live-base.ks , so it gets pulled in. This was not the case in the past, only 'default' and 'mandatory' packages were pulled in.
This is probably what's to blame for almost all the crazy size explosion of the F19 images. There's all sorts of wacky stuff marked as 'optional' in the core groups. a2ps alone pulls the whole of perl and texlive onto the lives, for instance.
Proposing as a blocker for Beta, as this bug makes it almost impossible to force the images below their target sizes, which is a Beta requirement:
"The network installation image, DVD image, and live images for release-blocking desktops must meet current size requirements"
Also proposing as an FE for Alpha, as having all this crap in the lives just makes them more of a pain to build, more of a pain to download and test, and more fragile.
Let's blame this one on yum, as all livecd-tools really does is call yum (via python-imgcreate's yuminst.py , which is very short and simple). I can't see any really obvious smoking guns in the yum stuff, though - most obviously I was looking for changes to the group_package_types parameter, but it doesn't seem to have been touched at all since August and those changes were in F18.
The obvious first step here is to add group_package_types=default,mandatory to the yum.conf created by yuminst.py and re-spin and see if that solves the problem, which would indicate the default setting of that parameter has somehow gotten borked in yum. That's just what I'd do except my F19 live composes are currently failing with a completely vague and useless error:
Error creating Live CD : Dependency check failed!
so I can't do that. le sigh. I will continue to try and think of ways to figure out what's busted, here.
er, in case it's not blindingly obvious from comment #1, cups-pdf is also listed as 'optional' in @printing, and that appears to be why it's winding up in all the live images.
conf += "group_package_types=default,mandatory\n"
to the obvious spot in yuminst.py and re-running a live compose does not fix the problem. I'm somewhat stuck, now.
changing to group_package_types=mandatory makes no difference; neither, apparently does passing --nodefaults to the @printing group in fedora-live-base.ks (which should make it only include mandatory packages).
Re-assigning to James, as he did some modifications in groups code lately, this is probably related.
Discussed at 2013-03-27 blocker review meeting: http://meetbot.fedoraproject.org/fedora-blocker-review/2013-03-27/f19alpha-blocker-review-3.2013-03-27-16.01.log.txt . Accepted as a freeze exception: the oversized lives make it harder to test, and clearly will include stuff that we don't really _want_ to be in a default live / installed environment. Anything listed as optional is something that someone has explicitly thought 'well, that shouldn't be installed by default' about, so having them all installed by default is kind of significantly bad.
The same applies to packages being marked as conditional, even if the package they're supposed to be conditional on is not being pulled in, e.g. this drags in libreoffice-kde onto the KDE spin.
Also FYI, we found on #fedora-kde that yum groupinstall also behaves that way on F19, so the issue is not specific to the live CD compose.
Is there a temporary partial work-around of comparing the package list for a given spin between Fedora 18 and Fedora 19 alpha TC2, then explicitly excluding or removing the extra packages before making the next Fedora 19 spin?
christ on a bike, no. that would be hideous.
*** Bug 923549 has been marked as a duplicate of this bug. ***
Note that a fix has been proposed upstream:
Ok, this should be fixed with:
Building yum-3.4.3-81.fc19 for f19-candidate
Created task: 5186065
Task info: http://koji.fedoraproject.org/koji/taskinfo?taskID=5186065
Trying to compose a live cd now.
The Fedora 19 Alpha TC3 composes were performed with the fix mentioned in Comment 13 and Comment 14, so they are back to "normal" sizes:
Fedora-19-Alpha-TC3-i686-Live-Desktop.iso 29-Mar-2013 03:34 1.1G
Fedora-19-Alpha-TC3-i686-Live-KDE.iso 29-Mar-2013 03:30 862M
Fedora-19-Alpha-TC3-i686-Live-LXDE.iso 29-Mar-2013 03:51 707M
Fedora-19-Alpha-TC3-i686-Live-SoaS.iso 29-Mar-2013 04:18 617M
Fedora-19-Alpha-TC3-i686-Live-XFCE.iso 29-Mar-2013 03:59 720M
I reproduced independently the 1.1GB Live-Desktop this morning after "yum update" to yum-3.4.3-81.fc19, before I inspected the TC3 listings (because I saw nothing new in the announcement.)
And the DVD?
The sizes of the non-Live media are almost unchanged (within 100MB out of 4.7GB):
Fedora-19-Alpha-TC3-i386-DVD.iso 29-Mar-2013 03:20 4.7G
Fedora-19-Alpha-TC3-i386-netinst.iso 29-Mar-2013 03:12 348M
Fedora-19-Alpha-TC2-i386-DVD.iso 26-Mar-2013 01:57 4.7G
Fedora-19-Alpha-TC2-i386-netinst.iso 26-Mar-2013 01:50 347M
The DVD and netinst are composed by a different process (pungi) than the Live spins (livecd-creator).
I really feel this ought to be blocker - it also affects net installs,
and installing all optional packages from groups can affect defaults
etc meaning that Alpha testing is less effective also.
TC3 media contains yum-3.4.3-77.fc19 btw, so I guess this will be
fixed in TC4 anyway.
TC4 looks good to me.
Default (gnome) net install pulls in 1249 packages (TC4) compared to 1958 (TC3).
So I believe this is indeed fixed with yum-3.4.3-81.fc19 in TC4.
3.4.3-81 is already tagged stable, so we can close this.