# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/ChangeLog,v 1.330 2005/09/12 17:17:21 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/ChangeLog,v 1.331 2005/09/12 18:49:44 wolf31o2 Exp $
+
+ 12 Sep 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ examples/livecd-stage2_template.spec, modules/livecd_stage2_target.py,
+ targets/support/livecdfs-update.sh:
+ Added livecd/xdm and livecd/xsession options. These are used to setup the
+ default display manager and X session, respectively. Added supporting
+ documentation to example spec files. Imported more work from my fsscript for
+ the official LiveCD.
12 Sep 2005; Chris Gianelloni <wolf31o2@gentoo.org> arch/x86.py:
Changing default CHOST for x86 from i386-pc-linux to i686-pc-linux. For
# livecd/xinitrc:
livecd/xinitrc:
+# This is used by catalyst to determine which display manager you wish to
+# become the default. This is used on the official Gentoo LiveCD and is valid
+# for any livecd/type.
+# example:
+# livecd/xdm: gdm
+livecd/xdm:
+
+# This is used by catalyst to determine which X session should be started by
+# default by the display manager. This is used on the official Gentoo LiveCD
+# and is valid for any livecd/type.
+# example:
+# livecd/xsession: gnome
+livecd/xsession:
+
# This option is used to create non-root users on your CD. It takes a space
# separated list of user names. These users will be added to the following
# groups: users,wheel,audio,games,cdrom,usb
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/modules/livecd_stage2_target.py,v 1.47 2005/08/09 19:02:31 rocket Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/modules/livecd_stage2_target.py,v 1.48 2005/09/12 18:49:44 wolf31o2 Exp $
"""
Builder class for a LiveCD stage2 build.
"livecd/rcadd","livecd/rcdel","livecd/fsscript","livecd/xinitrc",\
"livecd/root_overlay","livecd/devmanager","livecd/users",\
"gamecd/conf","livecd/users","portage_overlay","livecd/cdfstype",\
- "livecd/linuxrc","livecd/bootargs","gamecd/conf"])
+ "livecd/linuxrc","livecd/bootargs","gamecd/conf","livecd/xdm",\
+ "livecd/xsession"])
generic_stage_target.__init__(self,spec,addlargs)
if not self.settings.has_key("livecd/type"):
#!/bin/bash
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/targets/support/livecdfs-update.sh,v 1.21 2005/09/08 20:59:07 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/targets/support/livecdfs-update.sh,v 1.22 2005/09/12 18:49:44 wolf31o2 Exp $
. /tmp/chroot-functions.sh
update_env_settings
for x in ${clst_livecd_users}
do
useradd -G users,wheel,audio,games,cdrom,usb -c "Default LiveCD User" -m $x
+ if [ -n "${clst_livecd_xdm}" -a -n "${clst_livecd_xsession}" ]
+ then
+ echo "[Desktop]" > /home/$x/.dmrc
+ echo "Session=${clst_livecd_xsession}" >> /home/$x/.dmrc
+ chown -R $x:users /home/$x
+ fi
done
fi
# setup opengl in /etc (if configured)
[ -x /usr/sbin/openglify ] && /usr/sbin/openglify
+# Setup configured display manager
+if [ -n "${clst_livecd_xdm}" ]
+then
+ sed -i "s:#DISPLAYMANAGER=\"xdm\":DISPLAYMANAGER=\"${clst_livecd_xdm}\":" \
+ /etc/rc.conf
+ rc-update add xdm default
+fi
+
+# Setup configured default X Session
+if [ -n "${clst_livecd_xsession}" ]
+then
+ sed -i "s:#XSESSION=\"Gnome\":XSESSION=\"${clst_livecd_xsession}\":" \
+ /etc/rc.conf
+fi
+
# touch /etc/asound.state
touch /etc/asound.state
;;
esac
-
# Post configuration
case ${clst_livecd_type} in
gentoo-gamecd )
if [ -e /opt/installer/misc/mkvardb ]
then
chmod +x /opt/installer/misc/mkvardb
- /opt/installer/misc/mkvardb -p livecd-kernel -c sys-kernel -v 2005.0 /boot/kernel* /boot/initrd* $(for i in $(find "/lib/modules/$(uname -r)" -type f); do grep --quiet "${i}" /var/db/pkg/*/*/CONTENTS || echo ${i}; done)
+ /opt/installer/misc/mkvardb -p livecd-kernel -c sys-kernel -v ${clst_version_stamp} --provide "virtual/alsa" /boot/kernel* /boot/initr* $(for i in $(find "/lib/modules/" -type f); do grep --quiet "${i}" /var/db/pkg/*/*/CONTENTS || echo ${i}; done)
fi
# This is my hack to reduce tmpfs usage
rm -rf /usr/livecd/profiles/{co*,default-{1*,a*,b*,d*,h*,i*,m*,p*,s*,x*},g*,hardened-*,n*,x*}
mv -f /etc/gconf /usr/livecd
mv -f /var/db /usr/livecd
+
+ # This gives us our list of system packages for the installer
+ USE="-* $(cat /var/db/pkg/sys-libs/glibc*/USE)" emerge -ep system | grep -e '^\[ebuild' | sed -e 's:^\[ebuild .\+\] ::' > /usr/livecd/systempkgs.txt
;;
generic-livecd )
# This is my hack to reduce tmpfs usage