summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authord.marlin <dmarlin@redhat.com>2012-12-19 17:24:35 -0600
committerd.marlin <dmarlin@redhat.com>2012-12-19 17:24:35 -0600
commitd6f67c77509765a6b8b939668b45e2fbc7e28616 (patch)
treee4095473295ac0d5372e179fb9a30438fe27404a
downloadarm-kickstarts-d6f67c77509765a6b8b939668b45e2fbc7e28616.tar.gz
arm-kickstarts-d6f67c77509765a6b8b939668b45e2fbc7e28616.tar.xz
arm-kickstarts-d6f67c77509765a6b8b939668b45e2fbc7e28616.zip
Initial git repo for F18 kickstarts (used for Beta).
-rw-r--r--F18-beagle-xfce.ks251
-rw-r--r--F18-kirkwood.ks108
-rw-r--r--F18-panda-xfce.ks251
-rw-r--r--F18-trimslice.ks101
-rw-r--r--F18-vexpress-xfce.ks185
5 files changed, 896 insertions, 0 deletions
diff --git a/F18-beagle-xfce.ks b/F18-beagle-xfce.ks
new file mode 100644
index 0000000..4141edb
--- /dev/null
+++ b/F18-beagle-xfce.ks
@@ -0,0 +1,251 @@
+# Build an XFCE Fedora ARM (OMAP) BeagleBoard image using livemedia-creator
+
+lang en_US.UTF-8
+keyboard us
+timezone --utc US/Eastern
+auth --useshadow --enablemd5
+selinux --enforcing
+firstboot --enable
+firewall --enabled --service=mdns,ssh
+network --bootproto=dhcp --device=eth0 --onboot=on --activate --hostname=beagle-f18-v7hl
+services --enabled=NetworkManager,sshd,ntpd --disabled=network
+
+# Set a default root password for Fedora
+rootpw --plaintext fedora
+
+# Repositories
+# apparently we must use 'url' for the install repo for livemedia-creator
+url --url="http://archive.kernel.org/fedora-secondary/development/18/armhfp/os/"
+
+#
+# Define how large you want your rootfs to be
+#
+# NOTE: /boot and swap MUST use --asprimary to ensure '/' is
+# the last partition in order for rootfs-resize to work.
+#
+bootloader --location=none
+zerombr
+clearpart --all
+part /boot/uboot --size 200 --fstype vfat --label=uboot
+part swap --size 500 --label=swap
+part / --size 2200 --fstype ext4 --label=rootfs
+
+#
+# Add all the packages after the base packages
+#
+%packages --nobase
+@standard
+
+# vvvvvvvvvvvvvvvvvvvvvvv
+@base-x
+@fonts
+
+@xfce-desktop
+@xfce-apps
+@xfce-extra-plugins
+@xfce-media
+
+# lm_sensors cause warnings on ARM systems
+#-lm_sensors
+-xfce4-sensors-plugin
+
+# apparently, xfce-desktop does not include gdm or a theme (icons)
+gdm
+xfce4-icon-theme
+
+# First, no office
+-libreoffice-*
+-planner
+
+# Drop the Java plugin
+-icedtea-web
+-java-1.6.0-openjdk
+
+# save some space
+-autofs
+-acpid
+
+# Remove default unwanted hardware firmware and support we don't want
+-foomatic*
+-ghostscript*
+-ivtv-firmware
+# These are listed somewhere other than hardware support!
+-irda-utils
+-fprintd*
+
+-hplip
+-hpijs
+
+# Dictionaries are big
+-aspell-*
+-hunspell-*
+-man-pages*
+-words
+
+# scanning takes quite a bit of space :/
+-xsane
+-xsane-gimp
+-sane-backends
+
+# qlogic firmwares
+-ql2100-firmware
+-ql2200-firmware
+-ql23xx-firmware
+-ql2400-firmware
+
+#-xfburn appears twice in the menu, but the same behavior in PA
+
+# ^^^^^^^^^^^^^^^^^^^^^^^
+
+# apparently none of the groups sets the clock.
+ntp
+ntpdate
+
+# and ifconfig would be nice.
+net-tools
+
+# we'll want to resize the rootfs on first boot
+rootfs-resize
+
+# get the uboot tools
+uboot-tools
+# get MLO and uboot.bin
+uboot-beagle
+
+
+%end
+
+
+# more configuration
+%post --erroronfail
+
+# vvvvvvvvvvvvvvvvvvvvvvv
+# xfce configuration
+
+# create /etc/sysconfig/desktop (needed for installation)
+
+cat > /etc/sysconfig/desktop <<EOF
+PREFERRED=/usr/bin/startxfce4
+DISPLAYMANAGER=/usr/sbin/lightdm
+EOF
+
+mkdir -p /root/.config/xfce4
+
+cat > /root/.config/xfce4/helpers.rc << FOE
+MailReader=sylpheed-claws
+FileManager=Thunar
+FOE
+
+# disable screensaver locking (#674410)
+cat >> /root/.xscreensaver << FOE
+mode: off
+lock: False
+dpmsEnabled: False
+FOE
+
+# deactivate xfconf-migration (#683161)
+rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || :
+
+# deactivate xfce4-panel first-run dialog (#693569)
+mkdir -p /root/.config/xfce4/xfconf/xfce-perchannel-xml
+cp /etc/xdg/xfce4/panel/default.xml /root/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
+
+# make sure the default target is graphical
+ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
+ln -sf /lib/systemd/system/graphical.target /lib/systemd/system/default.target
+
+# firstboot does not run for us, so force it
+/bin/systemctl enable firstboot-graphical.service
+
+# force xorg to use framebuffer until we get omapdrm working well
+cat > /etc/X11/xorg.conf << EOF
+Section "Device"
+ Identifier "Device0"
+ Driver "fbdev" # Choose the driver used for this monitor
+EndSection
+EOF
+
+# include an xorg.config to use the OMAP DRM driver, if desired
+cat > /etc/X11/xorg.conf.omapdrm << EOF
+Section "Device"
+ Identifier "Device0"
+ Driver "omap"
+EndSection
+EOF
+
+# ^^^^^^^^^^^^^^^^^^^^^^^
+
+
+# set up the U-Boot config for Beagle
+cat << EOF >> /etc/sysconfig/uboot
+UBOOT_DEVICE=mmcblk0p1
+UBOOT_DIR=/boot/uboot
+EOF
+
+
+# Set up the bootloader bits on the U-Boot partition
+pushd /boot
+
+# MLO _must_ be the first thing copied to the partition
+cp -p /usr/share/uboot-beagle/MLO /boot/uboot/.
+
+sleep 3
+sync
+
+# try to make damned sure that MLO is written first!
+sleep 3
+sync; sync; sync;
+
+# now copy the bootloader
+cp -p /usr/share/uboot-beagle/u-boot.* /boot/uboot/.
+
+# and move the U-Boot kernel and initrd images
+mv boot.cmd uImage* uInitrd* uEnv* /boot/uboot/.
+
+
+# Install U-Boot boot script and environment
+pushd uboot
+
+# get the root device from fstab, typically UUID=<string>
+ROOTDEV=`grep -w / /etc/fstab | cut -d ' ' -f1`
+KERNEL_ADDR=0x80300000
+INITRD_ADDR=0x81600000
+
+# setup uEnv.txt
+cat <<EOL > uEnv.txt
+mmcargs=setenv bootargs console=\${console} vram=\${vram} root=$ROOTDEV ro rootwait quiet rhgb
+mmcload=fatload mmc 0:1 $INITRD_ADDR uInitrd; fatload mmc 0:1 $KERNEL_ADDR uImage;
+loaduimage=run mmcload; run mmcargs; bootm $KERNEL_ADDR $INITRD_ADDR
+EOL
+
+# and boot.scr
+cat <<EOL > boot.cmd
+setenv bootargs console=\${console} vram=\${vram} root=$ROOTDEV ro rootwait quiet rhgb
+fatload mmc 0:1 $INITRD_ADDR uInitrd
+fatload mmc 0:1 $KERNEL_ADDR uImage
+bootm $KERNEL_ADDR $INITRD_ADDR
+EOL
+
+/usr/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Beagle F18" -d boot.cmd boot.scr
+
+popd
+
+popd
+
+
+# datestamp this release
+date +F18-%Y%m%d-beta > /etc/RELEASE
+
+# force resize of the rootfs
+touch /.rootfs-repartition
+
+# force SELinux relabel of the rootfs
+#touch /.autorelabel
+
+# try Brendan's tip for workaround.
+setfiles -v -F -e /proc -e /sys -e /dev \
+ /etc/selinux/targeted/contexts/files/file_contexts /
+
+
+%end
+
diff --git a/F18-kirkwood.ks b/F18-kirkwood.ks
new file mode 100644
index 0000000..4da3049
--- /dev/null
+++ b/F18-kirkwood.ks
@@ -0,0 +1,108 @@
+# Build a minimal Fedora ARM (Kirkwood) image using livemedia-creator
+
+lang en_US.UTF-8
+keyboard us
+timezone --utc US/Eastern
+auth --useshadow --enablemd5
+selinux --enforcing
+firewall --enabled --service=mdns,ssh
+network --bootproto=dhcp --device=eth0 --onboot=on --activate --hostname=kirkwood-f18-v5tel
+services --enabled=NetworkManager,sshd,ntpd --disabled=network
+
+skipx
+
+# Set a default root password for Fedora
+rootpw --plaintext fedora
+
+# Repositories
+# apparently we must use 'url' for the install repo for livemedia-creator
+url --url="http://archive.kernel.org/fedora-secondary/development/18/arm/os/"
+
+#
+# Define how large you want your rootfs to be
+#
+# NOTE: /boot and swap MUST use --asprimary to ensure '/' is
+# the last partition in order for rootfs-resize to work.
+#
+bootloader --location=none
+zerombr
+clearpart --all
+part /boot --size 200 --fstype ext3 --asprimary --label=boot
+part swap --size 500 --asprimary --label=swap
+part / --size 2000 --fstype ext4 --label=rootfs
+
+#
+# Add all the packages after the base packages
+#
+%packages --nobase
+@standard
+
+# apparently none of the groups sets the clock.
+ntp
+ntpdate
+
+# and ifconfig would be nice.
+net-tools
+
+# we'll want to resize the rootfs on first boot
+rootfs-resize
+
+# get the uboot tools
+uboot-tools
+
+%end
+
+
+# more configuration
+%post --erroronfail
+
+
+# set up the U-Boot config for Kirkwood
+#use defaults, for now.
+
+# Install U-Boot boot.scr
+pushd /boot
+
+# get the root device from fstab, typically UUID=<string>
+ROOTDEV=`grep -w / /etc/fstab | cut -d ' ' -f1`
+
+# setup boot.scr
+
+KERNEL_ADDR=0x6400000
+INITRD_ADDR=0x7400000
+
+cat <<EOL > boot.cmd.mmc
+setenv bootargs console=ttyS0,115200n8 ro root=$ROOTDEV rootwait
+ext2load mmc 0:1 $INITRD_ADDR /uInitrd
+ext2load mmc 0:1 $KERNEL_ADDR /uImage
+bootm $KERNEL_ADDR $INITRD_ADDR
+EOL
+
+sed -e 's/mmc/usb/g' boot.cmd.mmc > boot.cmd.usb
+
+/usr/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Kirkwood F18" -d boot.cmd.mmc boot.scr.mmc
+/usr/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Kirkwood F18" -d boot.cmd.usb boot.scr.usb
+
+cp -p boot.scr.mmc boot.scr
+
+wget "http://dmarlin.fedorapeople.org/fedora-arm/kirkwood/README-kirkwood.txt"
+
+popd
+
+
+# datestamp this release
+date +F18-%Y%m%d-beta > /etc/RELEASE
+
+# force resize of the rootfs
+touch /.rootfs-repartition
+
+# force SELinux relabel of the rootfs
+#touch /.autorelabel
+
+# try Brendan's tip for workaround.
+setfiles -v -F -e /proc -e /sys -e /dev \
+ /etc/selinux/targeted/contexts/files/file_contexts /
+
+
+%end
+
diff --git a/F18-panda-xfce.ks b/F18-panda-xfce.ks
new file mode 100644
index 0000000..67e0e59
--- /dev/null
+++ b/F18-panda-xfce.ks
@@ -0,0 +1,251 @@
+# Build an XFCE Fedora ARM (OMAP) PandaBoard image using livemedia-creator
+
+lang en_US.UTF-8
+keyboard us
+timezone --utc US/Eastern
+auth --useshadow --enablemd5
+selinux --enforcing
+firstboot --enable
+firewall --enabled --service=mdns,ssh
+network --bootproto=dhcp --device=eth0 --onboot=on --activate --hostname=panda-f18-v7hl
+services --enabled=NetworkManager,sshd,ntpd --disabled=network
+
+# Set a default root password for Fedora
+rootpw --plaintext fedora
+
+# Repositories
+# apparently we must use 'url' for the install repo for livemedia-creator
+url --url="http://archive.kernel.org/fedora-secondary/development/18/armhfp/os/"
+
+#
+# Define how large you want your rootfs to be
+#
+# NOTE: /boot and swap MUST use --asprimary to ensure '/' is
+# the last partition in order for rootfs-resize to work.
+#
+bootloader --location=none
+zerombr
+clearpart --all
+part /boot/uboot --size 200 --fstype vfat --label=uboot
+part swap --size 500 --label=swap
+part / --size 2200 --fstype ext4 --label=rootfs
+
+#
+# Add all the packages after the base packages
+#
+%packages --nobase
+@standard
+
+# vvvvvvvvvvvvvvvvvvvvvvv
+@base-x
+@fonts
+
+@xfce-desktop
+@xfce-apps
+@xfce-extra-plugins
+@xfce-media
+
+# lm_sensors cause warnings on ARM systems
+#-lm_sensors
+-xfce4-sensors-plugin
+
+# apparently, xfce-desktop does not include gdm or a theme (icons)
+gdm
+xfce4-icon-theme
+
+# First, no office
+-libreoffice-*
+-planner
+
+# Drop the Java plugin
+-icedtea-web
+-java-1.6.0-openjdk
+
+# save some space
+-autofs
+-acpid
+
+# Remove default unwanted hardware firmware and support we don't want
+-foomatic*
+-ghostscript*
+-ivtv-firmware
+# These are listed somewhere other than hardware support!
+-irda-utils
+-fprintd*
+
+-hplip
+-hpijs
+
+# Dictionaries are big
+-aspell-*
+-hunspell-*
+-man-pages*
+-words
+
+# scanning takes quite a bit of space :/
+-xsane
+-xsane-gimp
+-sane-backends
+
+# qlogic firmwares
+-ql2100-firmware
+-ql2200-firmware
+-ql23xx-firmware
+-ql2400-firmware
+
+#-xfburn appears twice in the menu, but the same behavior in PA
+
+# ^^^^^^^^^^^^^^^^^^^^^^^
+
+# apparently none of the groups sets the clock.
+ntp
+ntpdate
+
+# and ifconfig would be nice.
+net-tools
+
+# we'll want to resize the rootfs on first boot
+rootfs-resize
+
+# get the uboot tools
+uboot-tools
+# get MLO and uboot.bin
+uboot-panda
+
+
+%end
+
+
+# more configuration
+%post --erroronfail
+
+# vvvvvvvvvvvvvvvvvvvvvvv
+# xfce configuration
+
+# create /etc/sysconfig/desktop (needed for installation)
+
+cat > /etc/sysconfig/desktop <<EOF
+PREFERRED=/usr/bin/startxfce4
+DISPLAYMANAGER=/usr/sbin/lightdm
+EOF
+
+mkdir -p /root/.config/xfce4
+
+cat > /root/.config/xfce4/helpers.rc << FOE
+MailReader=sylpheed-claws
+FileManager=Thunar
+FOE
+
+# disable screensaver locking (#674410)
+cat >> /root/.xscreensaver << FOE
+mode: off
+lock: False
+dpmsEnabled: False
+FOE
+
+# deactivate xfconf-migration (#683161)
+rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || :
+
+# deactivate xfce4-panel first-run dialog (#693569)
+mkdir -p /root/.config/xfce4/xfconf/xfce-perchannel-xml
+cp /etc/xdg/xfce4/panel/default.xml /root/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
+
+# make sure the default target is graphical
+ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
+ln -sf /lib/systemd/system/graphical.target /lib/systemd/system/default.target
+
+# firstboot does not run for us, so force it
+/bin/systemctl enable firstboot-graphical.service
+
+# force xorg to use framebuffer until we get omapdrm working well
+cat > /etc/X11/xorg.conf << EOF
+Section "Device"
+ Identifier "Device0"
+ Driver "fbdev" # Choose the driver used for this monitor
+EndSection
+EOF
+
+# include an xorg.config to use the OMAP DRM driver, if desired
+cat > /etc/X11/xorg.conf.omapdrm << EOF
+Section "Device"
+ Identifier "Device0"
+ Driver "omap"
+EndSection
+EOF
+
+# ^^^^^^^^^^^^^^^^^^^^^^^
+
+
+# set up the U-Boot config for Panda
+cat << EOF >> /etc/sysconfig/uboot
+UBOOT_DEVICE=mmcblk0p1
+UBOOT_DIR=/boot/uboot
+EOF
+
+
+# Set up the bootloader bits on the U-Boot partition
+pushd /boot
+
+# MLO _must_ be the first thing copied to the partition
+cp -p /usr/share/uboot-panda/MLO /boot/uboot/.
+
+sleep 3
+sync
+
+# try to make damned sure that MLO is written first!
+sleep 3
+sync; sync; sync;
+
+# now copy the bootloader
+cp -p /usr/share/uboot-panda/u-boot.* /boot/uboot/.
+
+# and move the U-Boot kernel and initrd images
+mv boot.cmd uImage* uInitrd* uEnv* /boot/uboot/.
+
+
+# Install U-Boot boot script and environment
+pushd uboot
+
+# get the root device from fstab, typically UUID=<string>
+ROOTDEV=`grep -w / /etc/fstab | cut -d ' ' -f1`
+KERNEL_ADDR=0x80300000
+INITRD_ADDR=0x81600000
+
+# setup uEnv.txt
+cat <<EOL > uEnv.txt
+mmcargs=setenv bootargs console=\${console} vram=\${vram} root=$ROOTDEV ro rootwait quiet rhgb
+mmcload=fatload mmc 0:1 $INITRD_ADDR uInitrd; fatload mmc 0:1 $KERNEL_ADDR uImage;
+loaduimage=run mmcload; run mmcargs; bootm $KERNEL_ADDR $INITRD_ADDR
+EOL
+
+# and boot.scr
+cat <<EOL > boot.cmd
+setenv bootargs console=\${console} vram=\${vram} root=$ROOTDEV ro rootwait quiet rhgb
+fatload mmc 0:1 $INITRD_ADDR uInitrd
+fatload mmc 0:1 $KERNEL_ADDR uImage
+bootm $KERNEL_ADDR $INITRD_ADDR
+EOL
+
+/usr/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Panda F18" -d boot.cmd boot.scr
+
+popd
+
+popd
+
+
+# datestamp this release
+date +F18-%Y%m%d-beta > /etc/RELEASE
+
+# force resize of the rootfs
+touch /.rootfs-repartition
+
+# force SELinux relabel of the rootfs
+#touch /.autorelabel
+
+# try Brendan's tip for workaround.
+setfiles -v -F -e /proc -e /sys -e /dev \
+ /etc/selinux/targeted/contexts/files/file_contexts /
+
+
+%end
+
diff --git a/F18-trimslice.ks b/F18-trimslice.ks
new file mode 100644
index 0000000..06c1487
--- /dev/null
+++ b/F18-trimslice.ks
@@ -0,0 +1,101 @@
+# Build a minimal Fedora ARM (Tegra) Trim Slice image using livemedia-creator
+
+lang en_US.UTF-8
+keyboard us
+timezone --utc US/Eastern
+auth --useshadow --enablemd5
+selinux --enforcing
+firewall --enabled --service=mdns,ssh
+network --bootproto=dhcp --device=eth0 --onboot=on --activate --hostname=trimslice-f18-v7hl
+services --enabled=NetworkManager,sshd,ntpd --disabled=network
+
+# Only use this with Anaconda for serial console installs, not with livemedia-creator.
+#cmdline
+skipx
+
+# Set a default root password for Fedora
+rootpw --plaintext fedora
+
+# Repositories
+# apparently we must use 'url' for the install repo for livemedia-creator
+url --url="http://archive.kernel.org/fedora-secondary/development/18/armhfp/os/"
+
+#
+# Define how large you want your rootfs to be
+#
+# NOTE: /boot and swap MUST use --asprimary to ensure '/' is
+# the last partition in order for rootfs-resize to work.
+#
+bootloader --location=none
+zerombr
+clearpart --all
+part /boot --size 200 --fstype ext3 --label=boot
+part swap --size 500 --asprimary --label=swap
+part / --size 2000 --fstype ext4 --label=rootfs
+
+#
+# Add all the packages after the base packages
+#
+%packages --nobase
+@standard
+
+# apparently none of the groups sets the clock.
+ntp
+ntpdate
+
+# and ifconfig would be nice.
+net-tools
+
+# we'll want to resize the rootfs on first boot
+rootfs-resize
+
+# get the uboot tools
+uboot-tools
+
+%end
+
+
+# more configuration
+%post --erroronfail
+
+
+# Install U-Boot boot.scr
+pushd /boot
+
+# get the root device from fstab, typically UUID=<string>
+ROOTDEV=`grep -w / /etc/fstab | cut -d ' ' -f1`
+
+# setup boot.scr
+cat <<EOL > boot.cmd.mmc
+setenv bootargs mem=384M@0M mem=512M@512M nvmem=128M@384M vmalloc=248M video=tegrafb console=ttyS0,115200n8 root=$ROOTDEV ro rootwait
+ext2load mmc 0:1 4880000 uInitrd
+ext2load mmc 0:1 4080000 uImage
+bootm 4080000 4880000
+EOL
+
+sed -e 's/mmc/usb/g' boot.cmd.mmc > boot.cmd.usb
+
+/usr/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Trim Slice F18" -d boot.cmd.mmc boot.scr.mmc
+/usr/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Trim Slice F18" -d boot.cmd.usb boot.scr.usb
+
+cp -p boot.scr.mmc boot.scr
+
+popd
+
+
+# datestamp this release
+date +F18-%Y%m%d-beta > /etc/RELEASE
+
+# force resize of the rootfs
+touch /.rootfs-repartition
+
+# force SELinux relabel of the rootfs
+#touch /.autorelabel
+
+# try Brendan's tip for workaround.
+setfiles -v -F -e /proc -e /sys -e /dev \
+ /etc/selinux/targeted/contexts/files/file_contexts /
+
+
+%end
+
diff --git a/F18-vexpress-xfce.ks b/F18-vexpress-xfce.ks
new file mode 100644
index 0000000..3a69b7c
--- /dev/null
+++ b/F18-vexpress-xfce.ks
@@ -0,0 +1,185 @@
+# Build a Fedora ARM (VExpress) XFCE image using livemedia-creator
+
+lang en_US.UTF-8
+keyboard us
+timezone --utc US/Eastern
+auth --useshadow --enablemd5
+selinux --enforcing
+firstboot --enable
+firewall --enabled --service=mdns,ssh
+network --bootproto=dhcp --device=eth0 --onboot=on --activate --hostname=vexpress-f18-v7hl
+services --enabled=NetworkManager,sshd,ntpd --disabled=network
+
+# Set a default root password for Fedora
+rootpw --plaintext fedora
+
+# Repositories
+# apparently we must use 'url' for the install repo for livemedia-creator
+url --url="http://archive.kernel.org/fedora-secondary/development/18/armhfp/os/"
+
+#
+# Define how large you want your rootfs to be
+#
+# NOTE: /boot and swap MUST use --asprimary to ensure '/' is
+# the last partition in order for rootfs-resize to work.
+#
+bootloader --location=none
+zerombr
+clearpart --all
+part /boot --size 200 --fstype ext3 --label=boot
+part swap --size 500 --asprimary --label=swap
+part / --size 2200 --fstype ext4 --label=rootfs
+
+#
+# Add all the packages after the base packages
+#
+%packages --nobase
+@standard
+
+# vvvvvvvvvvvvvvvvvvvvvvv
+@base-x
+@fonts
+
+@xfce-desktop
+@xfce-apps
+@xfce-extra-plugins
+@xfce-media
+
+# lm_sensors cause warnings on ARM systems
+#-lm_sensors
+-xfce4-sensors-plugin
+
+# apparently, xfce-desktop does not include gdm or a theme (icons)
+gdm
+xfce4-icon-theme
+
+# First, no office
+-libreoffice-*
+-planner
+
+# Drop the Java plugin
+-icedtea-web
+-java-1.6.0-openjdk
+
+# save some space
+-autofs
+-acpid
+
+# Remove default unwanted hardware firmware and support we don't want
+-foomatic*
+-ghostscript*
+-ivtv-firmware
+# These are listed somewhere other than hardware support!
+-irda-utils
+-fprintd*
+
+-hplip
+-hpijs
+
+# Dictionaries are big
+-aspell-*
+-hunspell-*
+-man-pages*
+-words
+
+# scanning takes quite a bit of space :/
+-xsane
+-xsane-gimp
+-sane-backends
+
+# qlogic firmwares
+-ql2100-firmware
+-ql2200-firmware
+-ql23xx-firmware
+-ql2400-firmware
+
+#-xfburn appears twice in the menu, but the same behavior in PA
+
+# ^^^^^^^^^^^^^^^^^^^^^^^
+
+# apparently none of the groups sets the clock.
+ntp
+ntpdate
+
+# and ifconfig would be nice.
+net-tools
+
+# get the uboot tools
+uboot-tools
+
+%end
+
+
+# more configuration
+%post --erroronfail
+
+# vvvvvvvvvvvvvvvvvvvvvvv
+# xfce configuration
+
+# create /etc/sysconfig/desktop (needed for installation)
+
+cat > /etc/sysconfig/desktop <<EOF
+PREFERRED=/usr/bin/startxfce4
+DISPLAYMANAGER=/usr/sbin/lightdm
+EOF
+
+mkdir -p /root/.config/xfce4
+
+cat > /root/.config/xfce4/helpers.rc << FOE
+MailReader=sylpheed-claws
+FileManager=Thunar
+FOE
+
+# disable screensaver locking (#674410)
+cat >> /root/.xscreensaver << FOE
+mode: off
+lock: False
+dpmsEnabled: False
+FOE
+
+# deactivate xfconf-migration (#683161)
+rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || :
+
+# deactivate xfce4-panel first-run dialog (#693569)
+mkdir -p /root/.config/xfce4/xfconf/xfce-perchannel-xml
+cp /etc/xdg/xfce4/panel/default.xml /root/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
+
+# make sure the default target is graphical
+ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
+ln -sf /lib/systemd/system/graphical.target /lib/systemd/system/default.target
+
+# firstboot does not run for us, so force it
+/bin/systemctl enable firstboot-graphical.service
+
+# ^^^^^^^^^^^^^^^^^^^^^^^
+
+
+# datestamp this release
+date +F18-%Y%m%d-beta > /etc/RELEASE
+
+# force SELinux relabel of the rootfs
+#touch /.autorelabel
+
+# try Brendan's tip for workaround.
+setfiles -v -F -e /proc -e /sys -e /dev \
+ /etc/selinux/targeted/contexts/files/file_contexts /
+
+
+%end
+
+
+# get the scripts to run qemu
+%post --nochroot
+
+pushd /mnt/sysimage/boot
+
+wget "http://dmarlin.fedorapeople.org/fedora-arm/vexpress/boot-vexpress"
+wget "http://dmarlin.fedorapeople.org/fedora-arm/vexpress/boot-vexpress+x"
+
+chmod +x /mnt/sysimage/boot/boot-vexpress*
+
+popd
+
+
+%end
+