From Fedora Project Wiki

< QA‎ | Test Days

(Add gnome-terminal shortcut to desktop)
Line 21: Line 21:
<pre>
<pre>
%include fedora-livecd-desktop.ks
%include fedora-livecd-desktop.ks
repo --name jlaska --baseurl http://jlaska.fedorapeople.org/repos/testday
repo --name awilliam --baseurl http://adamwill.fedorapeople.org/nouveau


%packages
%packages
Line 34: Line 31:
mc
mc
vim
vim
nano
wget
wget
xorg-x11-apps
xorg-x11-apps
Line 46: Line 44:
-gnome-backgrounds
-gnome-backgrounds
-desktop-backgrounds*
-desktop-backgrounds*
-evolution
# brand as fedora test spin
# brand as fedora test spin
fedora-logos
fedora-logos

Revision as of 15:04, 18 August 2009

Creating a Test Day Live Image

The following steps outline how to create a Fedora live image based on current Rawhide packages for use during Test Days.

This guide is intended mainly for Fedora QA team
Ordinary users who want to participate on a test day don't have to follow this guide, the pre-built images will be published and available for them to download on a Test Day pages.

1. Install required packages:

yum install spin-kickstarts livecd-tools

2. Save most recent fedora-live-base.ks and fedora-livecd-desktop.ks kickstart templates to a custom directory:

wget 'http://git.fedorahosted.org/git/spin-kickstarts.git?p=spin-kickstarts.git;a=blob_plain;f=fedora-live-base.ks;hb=HEAD' -O fedora-live-base.ks
wget 'http://git.fedorahosted.org/git/spin-kickstarts.git?p=spin-kickstarts.git;a=blob_plain;f=fedora-livecd-desktop.ks;hb=HEAD' -O fedora-livecd-desktop.ks

3. Create a new testday kickstart template fedora-livecd-testday.ks in the same directory, with this content:

%include fedora-livecd-desktop.ks

%packages
gdb
strace
ltrace
rendercheck
libdrm
pidgin
mc
vim
nano
wget
xorg-x11-apps
gtk-recordmydesktop
gconf-editor
# save some space
-empathy
-@games
-brasero*
-sound-juicer
-gthumb
-gnome-backgrounds
-desktop-backgrounds*
-evolution
# brand as fedora test spin
fedora-logos
-generic-logos
%end

%post
# Set Test_Day:Current as default browser homepage
cat << EOF > `ls -1 /usr/lib*/firefox*/browserconfig.properties`
browser.startup.homepage=https://fedoraproject.org/wiki/Test_Day:Current
EOF

# Create a .desktop link for Test Day wiki
mkdir -p /etc/skel/Desktop
cat << EOF > /etc/skel/Desktop/testday-wiki.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Participate in a Test Day
Type=Link
URL=https://fedoraproject.org/wiki/Test_Day:Current
Icon=gnome-fs-bookmark
EOF

# Create a .desktop link for Test Day IRC chat
cat << EOF > /etc/skel/Desktop/testday-irc.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Connect to a Test Day chat
Type=Link
URL=http://webchat.freenode.net/?channels=fedora-qa
Icon=gnome-fs-bookmark
EOF

# Add gnome-terminal shortcut to desktop
cp /usr/share/applications/gnome-terminal.desktop /etc/skel/Desktop
%end

3. Create the live image:

livecd-creator -c fedora-livecd-testday.ks --cache /var/cache/live -f "testday-`date +%Y%m%d`"
Different architecture
You can use setarch command to create a x86 Live CD/DVD on a x86_64 system. Example: setarch i686 livecd-creator <...>.

Solving problems

Rawhide repository broken

If current rawhide repository is broken and the livecd can't be built, and you have access to some mirror with older rawhide snapshot, you may edit fedora-livecd-testday.ks and redefine the rawhide repository after the %include line, for example looking like this:

repo --name=rawhide --baseurl=protocol:/path-to-older-rawhide-repository/$basearch/os/

In the worst case you can base the whole livecd on Fedora 11 packages with this definition:

# not really rawhide, overriden with F11 'released' repo
repo --name=rawhide --mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-11&arch=$basearch
repo --name=updates --mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f11&arch=$basearch

Don't forget to comment out these lines when rawhide repository gets fixed.

SELinux complaints

For building Test Days LiveCD you must have SELinux installed and enabled. Ideally it should be in the enforcing mode and everything should run fine. In case you have problems with that, you may switch the mode temporarily into permissive mode with this command run as root:

setenforce 0

If that doesn't help, you may also modify the fedora-livecd-testday.ks file and after %include line add a directive

selinux --permissive

Now the build should run fine.

Further references

Ideas For Improvement

  1. Create a .desktop file with a Test Day URL on the Desktop
  2. Make browser default homepage http://fedoraproject.org/wiki/Test_Day:Current (suggested by User:sgallagh)
  3. Setup a test day .repo for the running live image (suggested by User:sgallagh)