Rework live-base and desktop minimization

First, strip the "minimization" parts out of fedora-live-base.ks,
and move them into fedora-live-minimization.ks.  All previous consumers
of fedora-live-base.ks are updated.

The old fedora-live-base.ks was conflating two entirely different
things:

* A live-based image which can be used to install
* Stripping some random bits to fit onto a CD

The previous fedora-livecd-desktop is now fedora-live-desktop.ks.
The new file fedora-livecd-desktop.ks is actually further
minimizations on top of fedora-live-desktop.ks.

Split up these two concepts so that fedora-live-desktop is *THE*
desktop.  What we expect everyone to have as a base, and the
exact same set of packages should be installed by Standalone
Anaconda (DVD) as well.  Then, we have minimization hacks
in fedora-live-desktop-cd.ks.

Over time, we should be shrinking the default install and making
it more just-in-time, by e.g. having many more things use
the PackageKit library to pull in components as needed.
This commit is contained in:
Colin Walters 2010-03-23 09:14:04 -04:00
parent 05c51b0146
commit 198011f976
9 changed files with 118 additions and 96 deletions

View File

@ -5,9 +5,12 @@ fedora_DATA = \
fedora-aos.ks \ fedora-aos.ks \
fedora-install-fedora.ks \ fedora-install-fedora.ks \
fedora-live-base.ks \ fedora-live-base.ks \
fedora-live-minimization.ks \
fedora-live-mini.ks \ fedora-live-mini.ks \
fedora-livecd-broffice.org.ks \ fedora-livecd-broffice.org.ks \
fedora-livecd-design-suite.ks \ fedora-livecd-design-suite.ks \
fedora-live-desktop.ks \
fedora-live-desktop-minimization.ks \
fedora-livecd-desktop.ks \ fedora-livecd-desktop.ks \
fedora-livecd-kde.ks \ fedora-livecd-kde.ks \
fedora-livecd-lxde.ks \ fedora-livecd-lxde.ks \

View File

@ -40,54 +40,16 @@ repo --name=released --mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?re
@dial-up @dial-up
@hardware-support @hardware-support
@printing @printing
# Explicitly specified here:
# <notting> walters: because otherwise dependency loops cause yum issues.
kernel kernel
# This was added a while ago, I think it falls into the category of
# "Diagnosis/recovery tool useful from a Live OS image". Leaving this untouched
# for now.
memtest86+ memtest86+
#firstaidkit-plugin-all
# save some space
-specspo
-esc
-samba-client
-a2ps
-mpage
-redhat-lsb
-sox
-hplip
-hpijs
sendmail
#ssmtp
-numactl
-isdn4k-utils
-autofs
# smartcards won't really work on the livecd.
-coolkey
-ccid
# duplicate functionality
-pinfo
-vorbis-tools
-wget
# lose the compat stuff
-compat*
# qlogic firmwares
-ql2100-firmware
-ql2200-firmware
-ql23xx-firmware
-ql2400-firmware
# scanning takes quite a bit of space :/
-xsane
-xsane-gimp
-sane-backends
# livecd bits to set up the livecd and be able to install
anaconda
isomd5sum
# commented out to avoid warning
# # make sure debuginfo doesn't end up on the live image
#-*debuginfo
%end %end
%post %post

54
fedora-live-desktop.ks Normal file
View File

@ -0,0 +1,54 @@
# Maintained by the Fedora Desktop SIG:
# http://fedoraproject.org/wiki/SIGs/Desktop
# mailto:fedora-desktop-list@fedoraproject.org
%include fedora-live-base.ks
%packages
@graphical-internet
@sound-and-video
@gnome-desktop
@office
# FIXME - these two need to go in comps
nss-mdns
# use the PackageKit helper for bash
PackageKit-command-not-found
# avoid weird case where we pull in more festival stuff than we need
festival
festvox-slt-arctic-hts
%end
%post
cat >> /etc/rc.d/init.d/livesys << EOF
# disable screensaver locking
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /apps/gnome-screensaver/lock_enabled false >/dev/null
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /desktop/gnome/lockdown/disable_lock_screen true >/dev/null
# set up timed auto-login for after 60 seconds
cat >> /etc/gdm/custom.conf << FOE
[daemon]
TimedLoginEnable=true
TimedLogin=liveuser
TimedLoginDelay=60
FOE
# Show harddisk install on the desktop
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
chown -R liveuser.liveuser /home/liveuser/Desktop
chmod a+x /home/liveuser/Desktop/liveinst.desktop
# But not trash and home
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /apps/nautilus/desktop/trash_icon_visible false >/dev/null
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /apps/nautilus/desktop/home_icon_visible false >/dev/null
# Turn off PackageKit-command-not-found while uninstalled
sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf
EOF
%end

View File

@ -0,0 +1,41 @@
# Common packages removed from comps
# For F14, these removals should be moved to comps itself
%packages
# save some space
-specspo
-esc
-samba-client
-a2ps
-mpage
-redhat-lsb
-sox
-hplip
-hpijs
#ssmtp
-numactl
-isdn4k-utils
-autofs
# smartcards won't really work on the livecd.
-coolkey
-ccid
# duplicate functionality
-pinfo
-vorbis-tools
-wget
# lose the compat stuff
-compat*
# qlogic firmwares
-ql2100-firmware
-ql2200-firmware
-ql23xx-firmware
-ql2400-firmware
# scanning takes quite a bit of space :/
-xsane
-xsane-gimp
-sane-backends
%end

View File

@ -1,24 +1,18 @@
# Desktop with customizationst to fit in a CD sized image (package removals, etc.)
# Maintained by the Fedora Desktop SIG: # Maintained by the Fedora Desktop SIG:
# http://fedoraproject.org/wiki/SIGs/Desktop # http://fedoraproject.org/wiki/SIGs/Desktop
# mailto:fedora-desktop-list@redhat.com # mailto:fedora-desktop-list@fedoraproject.org
## NOTE: %include fedora-live-desktop.ks
# This file should in general be *subtraction* from the gnome-desktop %include fedora-live-minimization.ks
# comps group to fit within a CD-sized image. If you want to add
# a package to the desktop, add them to the comps group.
%include fedora-live-base.ks
%packages %packages
@graphical-internet # First, no office.
@sound-and-video -openoffice.org-*
@gnome-desktop
@office
nss-mdns
# avoid weird case where we pull in more festival stuff than we need # Temporary list of things removed from comps but not synced yet
festival -specspo
festvox-slt-arctic-hts -xsane
# dictionaries are big # dictionaries are big
-aspell-* -aspell-*
@ -68,40 +62,4 @@ festvox-slt-arctic-hts
-system-config-rootpassword -system-config-rootpassword
-system-config-services -system-config-services
-policycoreutils-gui -policycoreutils-gui
# use the PackageKit helper for bash
PackageKit-command-not-found
%end
%post
cat >> /etc/rc.d/init.d/livesys << EOF
# disable screensaver locking
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /apps/gnome-screensaver/lock_enabled false >/dev/null
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /desktop/gnome/lockdown/disable_lock_screen true >/dev/null
# set up timed auto-login for after 60 seconds
cat >> /etc/gdm/custom.conf << FOE
[daemon]
TimedLoginEnable=true
TimedLogin=liveuser
TimedLoginDelay=60
FOE
# Show harddisk install on the desktop
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
chown -R liveuser.liveuser /home/liveuser/Desktop
chmod a+x /home/liveuser/Desktop/liveinst.desktop
# But not trash and home
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /apps/nautilus/desktop/trash_icon_visible false >/dev/null
gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool /apps/nautilus/desktop/home_icon_visible false >/dev/null
# Turn off PackageKit-command-not-found while uninstalled
sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf
EOF
%end %end

View File

@ -8,6 +8,7 @@
# - Fedora KDE SIG # - Fedora KDE SIG
%include fedora-live-base.ks %include fedora-live-base.ks
%include fedora-live-minimization.ks
%packages %packages

View File

@ -7,6 +7,7 @@
# - Christoph Wickert <cwickert@fedoraproject.org> # - Christoph Wickert <cwickert@fedoraproject.org>
%include fedora-live-base.ks %include fedora-live-base.ks
%include fedora-live-minimization.ks
%packages %packages
# LXDE desktop # LXDE desktop

View File

@ -13,6 +13,7 @@
%include fedora-live-base.ks %include fedora-live-base.ks
%include fedora-live-minimization.ks
%packages %packages
security-menus security-menus

View File

@ -10,6 +10,7 @@
# - Adam Miller <maxamillion@gmail.com> # - Adam Miller <maxamillion@gmail.com>
%include fedora-live-base.ks %include fedora-live-base.ks
%include fedora-live-minimization.ks
%packages %packages