Matt Wronkiewicz wrote:
What if, instead of concentrating on the nightly builds, we went after
the updates to Fedora 15 as they came in? From reading through the
past messages to the list, it seems like once someone else breaks
something in Fedora core for us, we have a hard time fixing it. Two
things would be really helpful for this. One, a page on the wiki
explaining how to import a F15 update to a SoaS install. Two, a page
detailing the standard procedures for testing SoaS. What do you think?
Matt
I did such a test tonight by building a Remix pointed at the rawhide repo.
I used the procedure in:
> http://wiki.sugarlabs.org/go/Sugar_Creation_Kit#Build_Your_Own_Remix
I edited the fedora-live-mini.ks to point it to the rawhide repo (see
fedora-live-mini-rawhide,ks attached)
I edited the fedora-livecd-soas.ks to point to the above modified file.
Soas-v5-31102010-remix.txt is the command used in f14 root terminal to
run livecd-creator (livecd-to disk) to build the remix.iso
all three attached files are needed to do this.
This gives me a f15 (rawhide) Soas build.
Rawhide ( f15) now uses systemd (
http://0pointer.de/blog/projects/systemd.html ) a completely new boot
system. : /
tonights remix.iso would not get into a graphic boot. startx seems to
endlessly cycle. the alternate boot method available is upstart:
*At boot*hold <ESC> <TAB> linux0 init=/sbin/upstart*
got to an init 3 login: liveuser logged in OK worked but startx failed
as well.
You will find that just testing the nightly composes and reporting bugs
to the developers is a full time job!
Cordially;
Tom Gilliard
satellit
PS: here are my Soas and remix test results:
Current:
>
http://wiki.sugarlabs.org/go/Talk:Sugar_on_a_Stick_release_process#Test_Matix
Archive of older tests:
>
http://wiki.sugarlabs.org/go/Talk:Features/Soas_V4/Install_Test_Table#Test_results
On Sun, Oct 31, 2010 at 10:54 AM, Thomas C Gilliard
<[email protected]> wrote:
Matt;
You are correct that Soas-v4-Mango lassi is closed.
http://alt.fedoraproject.org/pub/alt/stage/14.RC1/Live/Fedora-14-i686-Live-SoaS/Fedora-14-i686-Live-SoaS.iso
Seems to be destined to be destined to be the final version that will be
released on nov 3.
I assume that the nightly composes will restart soon.
The developers working on Sugar need to know what is not working so they can
incorporate the fixes for future sugar builds.
It is always possible to build your own remix in the meantime. I have been
doing this routinely to see what features are in updates-testing and
rawhide.
I edit the mini.ks in /usr/share/spin-kickstarts/ to point to these other
repos)
( I use a EeePC1000HE and Acer Aspire One netbook with external usb drives
with f13 and f14 installed on them to do this, so a powerful computer is not
required)
See: http://wiki.sugarlabs.org/go/Sugar_Creation_Kit#Build_Your_Own_Remix
All testing is valuable. Please contribute if you have the time..
Thanks
Tom Gilliard
satellit
Matt Wronkiewicz wrote:
I'd like to help out, but I don't see any benefit to additional
testing on v4. If we find bugs, can they be fixed? If we find blocker
bugs and they cannot be fixed, can the release be cancelled? I sent an
email about this to the SoaS list, but didn't get a response.
Matt
On Sun, Oct 31, 2010 at 5:11 AM, Thomas C Gilliard
<[email protected]> wrote:
I have been working on a page that lists current bugs in the Soas-v4:
http://wiki.sugarlabs.org/go/Sugar_on_a_Stick_Bugs#Current_Bugs
I have been testing all three current sources:
http://alt.fedoraproject.org/pub/alt/stage/14.RC1/Live/Fedora-14-i686-Live-SoaS/Fedora-14-i686-Live-SoaS.iso
http://serverbeach1.fedoraproject.org/pub/alt/stage/14.RC1/Live/Fedora-14-i686-Live-SoaS/
http://alt.fedoraproject.org/pub/alt/nightly-composes/soas/
Testing results are listed here:
http://wiki.sugarlabs.org/go/Talk:Sugar_on_a_Stick_release_process#Test_Matrix
Please comment and participate by contributing to these wiki pages.
Thanks
Tom Gilliard
satellit
_______________________________________________
SoaS mailing list
[email protected]
http://lists.sugarlabs.org/listinfo/soas
livecd-creator \
--config=/home/robert/Desktop/spin-kickstarts/fedora-livecd-soas-rawhide.ks \
--fslabel=Soas-v5 31102010-remix --cache=/var/cache/live
# fedora-live-mini.ks
#
# Defines the basics for all kickstarts in the fedora-mini branch
lang en_US.UTF-8
keyboard us
timezone US/Eastern
auth --useshadow --enablemd5
selinux --permissive
firewall --enabled --service=mdns
xconfig --startxonboot
part / --size 4096 --fstype ext4
services --enabled=NetworkManager,messagebus --disabled=network,sshd
repo --name=rawhide
--mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=$basearch
repo --name=fedora
--mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-14&arch=$basearch
repo --name=updates
--mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f14&arch=$basearch
#repo --name=updates-testing
--mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-testing-f14&arch=$basearch
%packages
@base-x
@base
@core
@hardware-support
kernel
memtest86+
# implicitly include the fonts we want
liberation-mono-fonts
liberation-sans-fonts
liberation-serif-fonts
google-droid-sans-fonts
google-droid-sans-mono-fonts
google-droid-serif-fonts
dejavu-sans-fonts
dejavu-sans-mono-fonts
dejavu-serif-fonts
# We like noise
alsa-plugins-pulseaudio
alsa-utils
pulseaudio
pulseaudio-module-x11
pulseaudio-utils
# Remove default base packages we don't want
-ccid
-coolkey
-dos2unix
-dump
-finger
-fprintd-pam
-hunspell
-irda-utils
-jwhois
-lftp
-mlocate
-nano
-nc
-nfs-utils
-nss_db
-nss_ldap
-numactl
-pcmciautils
-perf
-pm-utils
-rdate
-rdist
-rsh
-rsync
-sendmail
-sos
-specspo
-stunnel
-system-config-firewall-tui
-system-config-network-tui
-talk
-time
-tree
-words
-ypbind
# Remove default base-x packages we don't want
-cups-pk-helper
-glx-utils
-system-config-date
-system-config-firewall
-system-config-network
-system-config-printer
-system-config-services
-system-config-users
# Remove default unwanted hardware firmware and support we don't want
-foomatic*
-ghostscript*
-ivtv-firmware
-ql2100-firmware
-ql2200-firmware
-ql23xx-firmware
-ql2400-firmware
-ql2500-firmware
# These are listed somewhere other than hardware support!
-irda-utils
-fprintd*
# dictionaries are big
-aspell-*
-hunspell-*
-man-pages*
-words
# livecd bits to set up the livecd and be able to install
anaconda
# Add some useful utils
system-config-firewall-base
gnome-packagekit
powertop
gnupg2
yum-presto
avahi
# Remove sendmail: this needs to be explicit
-sendmail
# But hopefully there shouldn't be deps so this shouldn't need to be there
#ssmtp
%end
%post
# FIXME: it'd be better to get this installed from a package
cat > /etc/rc.d/init.d/livesys << EOF
#!/bin/bash
#
# live: Init script for live image
#
# chkconfig: 345 00 99
# description: Init script for live image.
. /etc/init.d/functions
if ! strstr "\`cat /proc/cmdline\`" liveimg || [ "\$1" != "start" ]; then
exit 0
fi
if [ -e /.liveimg-configured ] ; then
configdone=1
fi
exists() {
which \$1 >/dev/null 2>&1 || return
\$*
}
touch /.liveimg-configured
# mount live image
if [ -b \`readlink -f /dev/live\` ]; then
mkdir -p /mnt/live
mount -o ro /dev/live /mnt/live 2>/dev/null || mount /dev/live /mnt/live
fi
livedir="LiveOS"
for arg in \`cat /proc/cmdline\` ; do
if [ "\${arg##live_dir=}" != "\${arg}" ]; then
livedir=\${arg##live_dir=}
return
fi
done
# enable swaps unless requested otherwise
swaps=\`blkid -t TYPE=swap -o device\`
if ! strstr "\`cat /proc/cmdline\`" noswap && [ -n "\$swaps" ] ; then
for s in \$swaps ; do
action "Enabling swap partition \$s" swapon \$s
done
fi
if ! strstr "\`cat /proc/cmdline\`" noswap && [ -f
/mnt/live/\${livedir}/swap.img ] ; then
action "Enabling swap file" swapon /mnt/live/\${livedir}/swap.img
fi
mountPersistentHome() {
# support label/uuid
if [ "\${homedev##LABEL=}" != "\${homedev}" -o "\${homedev##UUID=}" !=
"\${homedev}" ]; then
homedev=\`/sbin/blkid -o device -t "\$homedev"\`
fi
# if we're given a file rather than a blockdev, loopback it
if [ "\${homedev##mtd}" != "\${homedev}" ]; then
# mtd devs don't have a block device but get magic-mounted with -t jffs2
mountopts="-t jffs2"
elif [ ! -b "\$homedev" ]; then
loopdev=\`losetup -f\`
if [ "\${homedev##/mnt/live}" != "\${homedev}" ]; then
action "Remounting live store r/w" mount -o remount,rw /mnt/live
fi
losetup \$loopdev \$homedev
homedev=\$loopdev
fi
# if it's encrypted, we need to unlock it
if [ "\$(/sbin/blkid -s TYPE -o value \$homedev 2>/dev/null)" = "crypto_LUKS"
]; then
echo
echo "Setting up encrypted /home device"
plymouth ask-for-password --command="cryptsetup luksOpen \$homedev EncHome"
homedev=/dev/mapper/EncHome
fi
# and finally do the mount
mount \$mountopts \$homedev /home
# if we have /home under what's passed for persistent home, then
# we should make that the real /home. useful for mtd device on olpc
if [ -d /home/home ]; then mount --bind /home/home /home ; fi
[ -x /sbin/restorecon ] && /sbin/restorecon /home
if [ -d /home/liveuser ]; then USERADDARGS="-M" ; fi
}
findPersistentHome() {
for arg in \`cat /proc/cmdline\` ; do
if [ "\${arg##persistenthome=}" != "\${arg}" ]; then
homedev=\${arg##persistenthome=}
return
fi
done
}
if strstr "\`cat /proc/cmdline\`" persistenthome= ; then
findPersistentHome
elif [ -e /mnt/live/\${livedir}/home.img ]; then
homedev=/mnt/live/\${livedir}/home.img
fi
# if we have a persistent /home, then we want to go ahead and mount it
if ! strstr "\`cat /proc/cmdline\`" nopersistenthome && [ -n "\$homedev" ] ;
then
action "Mounting persistent /home" mountPersistentHome
fi
# make it so that we don't do writing to the overlay for things which
# are just tmpdirs/caches
mount -t tmpfs -o mode=0755 varcacheyum /var/cache/yum
mount -t tmpfs tmp /tmp
mount -t tmpfs vartmp /var/tmp
[ -x /sbin/restorecon ] && /sbin/restorecon /var/cache/yum /tmp /var/tmp
>/dev/null 2>&1
if [ -n "\$configdone" ]; then
exit 0
fi
# add fedora user with no passwd
action "Adding live user" useradd \$USERADDARGS -c "Live System User" liveuser
passwd -d liveuser > /dev/null
# turn off firstboot for livecd boots
chkconfig --level 345 firstboot off 2>/dev/null
# The above doesn't works so we need to do this... GRR systemctl
echo "RUN_FIRSTBOOT=NO" > /etc/sysconfig/firstboot
# don't start yum-updatesd for livecd boots
chkconfig --level 345 yum-updatesd off 2>/dev/null
# turn off mdmonitor by default
chkconfig --level 345 mdmonitor off 2>/dev/null
# turn off setroubleshoot on the live image to preserve resources
chkconfig --level 345 setroubleshoot off 2>/dev/null
# don't do packagekit checking by default
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t string
/apps/gnome-packagekit/frequency_get_updates never >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t string
/apps/gnome-packagekit/frequency_get_upgrades never >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t string
/apps/gnome-packagekit/frequency_refresh_cache never >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/apps/gnome-packagekit/notify_available false >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/apps/gnome-packagekit/notify_distro_upgrades false >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/apps/gnome-packagekit/enable_check_firmware false >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/apps/gnome-packagekit/enable_check_hardware false >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/apps/gnome-packagekit/enable_codec_helper false >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/apps/gnome-packagekit/enable_font_helper false >/dev/null
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/apps/gnome-packagekit/enable_mime_type_helper false >/dev/null
# don't start cron/at as they tend to spawn things which are
# disk intensive that are painful on a live image
chkconfig --level 345 crond off 2>/dev/null
chkconfig --level 345 atd off 2>/dev/null
chkconfig --level 345 readahead_early off 2>/dev/null
chkconfig --level 345 readahead_later off 2>/dev/null
# Stopgap fix for RH #217966; should be fixed in HAL instead
touch /media/.hal-mtab
# workaround clock syncing on shutdown that we don't want (#297421)
sed -i -e 's/hwclock/no-such-hwclock/g' /etc/rc.d/init.d/halt
# and hack so that we eject the cd on shutdown if we're using a CD...
if strstr "\`cat /proc/cmdline\`" CDLABEL= ; then
cat >> /sbin/halt.local << FOE
#!/bin/bash
# we want to eject the cd on halt, but let's also try to avoid
# io errors due to not being able to get files...
cat /sbin/halt > /dev/null
cat /sbin/reboot > /dev/null
/usr/sbin/eject -p -m \$(readlink -f /dev/live) >/dev/null 2>&1
echo "Please remove the CD from your drive and press Enter to finish restarting"
read -t 30 < /dev/console
FOE
chmod +x /sbin/halt.local
fi
EOF
# bah, hal starts way too late
cat > /etc/rc.d/init.d/livesys-late << EOF
#!/bin/bash
#
# live: Late init script for live image
#
# chkconfig: 345 99 01
# description: Late init script for live image.
. /etc/init.d/functions
if ! strstr "\`cat /proc/cmdline\`" liveimg || [ "\$1" != "start" ] || [ -e
/.liveimg-late-configured ] ; then
exit 0
fi
exists() {
which \$1 >/dev/null 2>&1 || return
\$*
}
touch /.liveimg-late-configured
# read some variables out of /proc/cmdline
for o in \`cat /proc/cmdline\` ; do
case \$o in
ks=*)
ks="\${o#ks=}"
;;
xdriver=*)
xdriver="\${o#xdriver=}"
;;
esac
done
# if liveinst or textinst is given, start anaconda
if strstr "\`cat /proc/cmdline\`" liveinst ; then
plymouth --quit
/usr/sbin/liveinst \$ks
fi
if strstr "\`cat /proc/cmdline\`" textinst ; then
plymouth --quit
/usr/sbin/liveinst --text \$ks
fi
# configure X, allowing user to override xdriver
if [ -n "\$xdriver" ]; then
cat > /etc/X11/xorg.conf.d/00-xdriver.conf <<FOE
Section "Device"
Identifier "Videocard0"
Driver "\$xdriver"
EndSection
FOE
fi
EOF
chmod 755 /etc/rc.d/init.d/livesys
/sbin/restorecon /etc/rc.d/init.d/livesys
/sbin/chkconfig --add livesys
chmod 755 /etc/rc.d/init.d/livesys-late
/sbin/restorecon /etc/rc.d/init.d/livesys-late
/sbin/chkconfig --add livesys-late
# work around for poor key import UI in PackageKit
rm -f /var/lib/rpm/__db*
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
# go ahead and pre-make the man -k cache (#455968)
/usr/bin/mandb
# save a little bit of space at least...
rm -f /boot/initrd*
# make sure there aren't core files lying around
rm -f /core*
# convince readahead not to collect
rm -f /.readahead_collect
touch /var/lib/readahead/early.sorted
%end
%post
cp $INSTALL_ROOT/usr/share/doc/*-release-*/GPL $LIVE_ROOT/GPL
# only works on x86, x86_64
if [ "$(uname -i)" = "i386" -o "$(uname -i)" = "x86_64" ]; then
if [ ! -d $LIVE_ROOT/LiveOS ]; then mkdir -p $LIVE_ROOT/LiveOS ; fi
cp /usr/bin/livecd-iso-to-disk $LIVE_ROOT/LiveOS
fi
%end
# fedora-livecd-soas.ks
#
# Description:
# - A Sugar environment that you can carry in your pocket
#
# Maintainers:
# - Sebastian Dziallas <sdz AT fedoraproject DOT org>
# - Peter Robinson <pbrobinson AT gmail DOT com>
# - Mel Chua <mchua AT fedoraproject DOT org>
%include fedora-live-mini-rawhide.ks
part / --size=2048
%packages
# == Core Sugar Platform ==
sugar
# == Platform Components ==
# from http://wiki.sugarlabs.org/go/0.88/Platform_Components
alsa-plugins-pulseaudio
alsa-utils
etoys
csound-python
evince-djvu
gstreamer-plugins-good
gstreamer-plugins-espeak
gstreamer-plugins-bad-free
pygame
pulseaudio
pulseaudio-utils
# == Sugar Activities ==
sugar-browse # Because they need this to install activities.
sugar-log # Because they need this for debugging.
sugar-physics # Because this is a great demo example (quick demo).
sugar-terminal # Because this makes debugging easier.
sugar-turtleart # Because this is a great demo example (extended demo).
sugar-xoirc # Because this helps us help them.
sugar-chat
sugar-record
sugar-write
etoys-sugar
sugar-pippy
sugar-calculator
# Write breaks unless we do this (we don't need it anyway)
-...@input-methods
# == Activities from ASLO ==
# These are activities we're going to polish to the same level
# as the ones included in the SoaS image, but encourage people
# to download from ASLO as part of the SoaS experience of exploring
# other Activities in there.
# sugar-maze
# sugar-speak
# sugar-tamtam-*
# sugar-visualmatch
# These are Activities that aren't quite there, but are important,
# so we're going to encourage people to test them.
# sugar-pippy
# sugar-read
# == System ==
# Automatically logs in the liveuser
# We're going to replace this with nodm
# http://bugs.sugarlabs.org/ticket/1849
gdm
# Needed to show external hard drives
gvfs
# Needed for battery monitoring and power management
gnome-power-manager
# Usefulness for DSL connections as per:
# http://bugs.sugarlabs.org/ticket/1951
rp-pppoe
# Useful for SoaS duplication from:
# http://bugs.sugarlabs.org/ticket/74
livecd-tools
# Get the Sugar boot screen
-plymouth-system-theme
-plymouth-theme-charge
sugar-logos
# == Hardware ==
# Lets support Broadcom and XO wifi hardware
b43-openfwwf
libertas-usb8388-firmware
# == Fonts ==
# More font support according to:
# http://bugs.sugarlabs.org/ticket/1119
# Moved to mini.ks
%end
%post
# Rebuild initrd for Sugar boot screen
KERNEL_VERSION=$(rpm -q kernel --qf '%{version}-%{release}.%{arch}\n')
/usr/sbin/plymouth-set-default-theme sugar
/sbin/dracut -f /boot/initramfs-$KERNEL_VERSION.img $KERNEL_VERSION
# Get proper release naming in the control panel
cat >> /boot/olpc_build << EOF
Sugar on a Stick 4 (Mango Lassi)
Fedora 14 (Laughlin)
EOF
cat >> /etc/rc.d/init.d/livesys << EOF
# Don't use the default system user (in SoaS liveuser) as nick name
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t string
/desktop/sugar/user/default_nick disabled >/dev/null
# Disable the logout menu item in Sugar
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/desktop/sugar/show_logout false >/dev/null
# Enable Sugar power management
gconftool-2 --direct
--config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s -t bool
/desktop/sugar/power/automatic True >/dev/null
# Add our activities to the favorites
cat > /usr/share/sugar/data/activities.defaults << FOE
org.laptop.AbiWordActivity
org.laptop.Chat
org.laptop.Log
org.laptop.physics
org.laptop.RecordActivity
org.laptop.Terminal
org.laptop.TurtleArtActivity
org.laptop.WebActivity
org.laptop.Pippy
org.laptop.Calculator
org.sugarlabs.IRC
org.vpri.EtoysActivity
FOE
# Set up auto-login for for liveuser
cat >> /etc/gdm/custom.conf << FOE
[daemon]
AutomaticLoginEnable=true
AutomaticLogin=liveuser
FOE
EOF
%end
_______________________________________________
SoaS mailing list
[email protected]
http://lists.sugarlabs.org/listinfo/soas