+
+ +
+

image-minimizer

+
+
Authors
+

Brian C. Lane <bcl@redhat.com>

+
+
+

image-minimizer is a script used as an interpreter for kickstart %post +sections. It is used to remove rpm packages and individual files from the +system that Anaconda has just installed.

+

It processes a list of commands that tell it which files or rpms to remove, and +which to keep.

+
+

image-minimizer cmdline arguments

+
+

usage: image-minimizer [-h] [-i STRING] [--dryrun] [-v] STRING

+
+
+

Optional arguments

+
+
+
-h, --help
+

show this help message and exit

+
+
-i STRING, --installroot STRING
+

Root path to prepend to all file patterns and +installation root for RPM operations. Defaults to +INSTALL_ROOT or /mnt/sysimage/

+
+
--dryrun
+

If set, no filesystem changes are made.

+
+
-v, --verbose
+

Display every action as it is performed.

+
+
+
+
+
+

Positional arguments

+
+
+
STRING
+

Filename to process

+
+
+
+
+
+
+

NOTES

+

You cannot pass any arguments to image-minimizer when using it from the +kickstart %post.

+

When using this from a kickstart the image-minimizer package needs to be available. +It is not included on the standard boot.iso, so you will need to include lorax in +the %package section. You can use image-minimizer to remove lorax from the install.

+

If you are using this with livemedia-creator it can be installed on the host +system so that lorax isn't needed in the %package list, and it doesn't need +to be removed.

+
+
+

commands

+

Commands are listed one per line, followed by a space, and then by the +package, file, or glob. The globs used are Unix style pathname patterns using +*, ?, and [] character ranges. globbing is implemented using the python +glob module.

+
    +
  • drop <PATTERN> +This will remove files from the installation.

  • +
  • keep <PATTERN> +This will keep files, and should follow any drop commands including globs.

  • +
  • droprpm <PATTERN> +Remove matching rpm packages. Dependencies are not remove, just individual +packages matching the glob.

  • +
  • keeprpm <PATTERN> +Do not remove matching rpm packages, it should follow any droprpm commands +that include globs.

  • +
+
+
+

example

+

Example Anaconda %post usage:

+
%post --interpreter=image-minimizer --nochroot
+
+drop /lib/modules/*/kernel/fs
+keep /lib/modules/*/kernel/fs/ext*
+keep /lib/modules/*/kernel/fs/mbcache*
+keep /lib/modules/*/kernel/fs/squashfs
+
+droprpm make
+droprpm mtools
+droprpm mysql-libs
+droprpm perl
+droprpm perl-Pod-*
+droprpm syslinux
+keeprpm perl-Pod-Simple
+
+# Not needed after image-minimizer is done
+droprpm lorax
+
+%end
+
+
+
+
+ + +
+