Remove a bunch of useless 'removefrom' lines that did nothing but cause
"no files to remove!" messages in lorax logs.
- ConsoleKit isn't in the anaconda runtime
- update-gtk-immodules isn't in gtk3
- there's nothing in /usr/share/selinux in selinux-policy-targeted
- zenity doesn't have a /usr/share/omf directory
- libpng moved to libpng15.*; actually removing it breaks the GUI
- pcmciautils' binaries are in /sbin, not /usr/sbin. They're only 7kb,
so let's just keep 'em.
This should have *no effect* on the contents of the runtime images.
Since noloader mounts stuff under /run/install, but anaconda (and
people's scripts etc.) look under /mnt/install, make a symlink so
everything works as expected.
Install the anaconda dracut module during 'install', use it when
rebuilding initramfs, and clean it up afterward.
Also install '.buildstamp' into the initramfs (the anconda module wants
it).
This doesn't get rid of the gtk2 stuff yet, though. The intention here is
that you can use this lorax to generate an image containing either the old
anaconda or the newui branch, simply by including a different repo in your
tree composition kickstart file.
Also, it appears that some things in the tree still require gtk2 so we may
be stuck with both for the forseeable future.
Actual content changes:
- {High,Low}Contrast themes moved to gnome-themes-standard, so remove
them from there. Also remove HighContrastInverse theme.
- Removed metacity 'Atlanta' theme - 'Adwaita' is the default metacity
theme these days.
ntfsresize is currently living in the ntfsprogs package, which (for
whatever reason) isn't getting automatically pulled into the runtime
environment anymore.
So: install ntfsprogs in runtime-install, and remove everything but
ntfsresize in runtime-cleanup.
symlinking /modules to '/lib/modules' inside the runtime image is fine,
but since we're operating outside the runtime image, the absolute
symlink will point to the host's /lib/modules, which can cause us to
delete kernel modules. Yikes.
Instead:
1) use /lib/modules rather than the symlink, and
2) use a relative symlink, just to be safe.
This lets us easily do whitelisting instead of blacklisting during
runtime cleanup. For example:
removefrom xfsprogs --allbut /sbin/* /usr/sbin/xfs_admin
would remove everything from the xfsprogs package except files in /sbin
and /usr/sbin/xfs_admin.
A few things in runtime-cleanup have been converted to use --allbut. The
only difference in the created runtime image is that we're deleting
/usr/share/kde4 from fedora-logos.
- use libdir in GConf2
- delete redundant removals of /usr/share/gnome/*
- remove systemd units for nfs-utils
- remove all of notification-daemon rather than piece-by-piece
- don't try to delete non-existent libldif from openldap
- /usr/sbin/xfs_bmapd is actually /usr/sbin/xfs_bmap
- remove /etc/* from yum rather than etc/*
also make sure we clean a bunch more unneeded services, but don't bother
deleting target files that would just be ignored anyway.
also also, delete everything in /etc/systemd/system/default.target.wants
so that we don't get readahead stuff in anaconda.
Add commentary for a bunch of the removepkg lines, and drop a bunch of
things that were in the list that weren't being installed anyway. Also
drop some redundant removepkg lines about chkconfig.
removing packages sadly doesn't run their %post scripts, so a lot of
broken links are left around for systemd units and/or sysvinit scripts.
So, after other cleanup, remove any broken links in /etc, /usr, or /lib.
Clean a bunch of things that we don't need to removepkg:
- packages with no files (*-filesystem, basesystem)
- packages that only contain files that will be deleted anyway
(e.g. *-fonts-common - only contains files in /usr/share/doc)
- packages that aren't being installed or no longer exist
(hal-libs, clutter, mutter, libXv, redhat-menus, etc)
- consolidate perl lines to just: removepkg perl*
To build F15 images we need to remove systemd and set up loader as init
(see runtime-cleanup and runtime-postinstall).
We also need to add a hack to dracut so loader won't freak out when it
gets started by anaconda - see the file we're adding to the initramfs in
treebuilder.py.
(There's also an extra bonus hack for working around a bug in dracut if
/proc/cmdline is empty - SEE IF YOU CAN SPOT IT!!!)
Removing the 'module' whitelist added ~50M of kernel modules. Yuck.
This commit adds a kmod blacklist, removing ~34MB of kernel modules.
Yes, that's a ~16MB increase, but we're also including a whole mess of
stuff that was getting left out before: missing ISDN drivers, wireless
drivers, net bonding drivers, infiniband drivers, etc.