File kiwi-config-openSUSE.spec of Package kiwi-config-openSUSE

#
# spec file for package kiwi-config-openSUSE (Version 11.1)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#



Name:           kiwi-config-openSUSE
BuildRequires:  fdupes kiwi-desc-isoboot package-lists-openSUSE-all
BuildRequires:  kiwi-desc-oemboot kiwi-desc-usbboot kiwi-doc kiwi-tools
BuildRequires:  licenses skelcd-control-openSUSE skelcd-openSUSE-CD
BuildRequires:  libxslt opensuse-gnomequick_en-pdf opensuse-kdequick_en-pdf
BuildRequires:  yast2-country
Summary:        KDE live CD
Version:        11.1
Release:        7
Group:          System/Boot
License:        BSD 3-Clause
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Source1:        COPYING
Source2:        config-hal.patch
Source3:        config.sh
Source4:        config.xml.in
Source5:        config.patch
Source6:        config-kde.patch
Source7:        config-gnome.patch
Source8:        ifcfg-eth0
Source9:        langset-xkb.pl
Source10:       README
Source11:       configure-x.sh
Source12:       correct_live_install
Source13:       SoftLocks
Source16:       boot.langset
Source17:       99-ignore-live-usb.fdi
Source18:       kiwi-config-oem.diff
Source19:       config-usb.patch
Source20:       geturls.xsl
Source21:       kiwi-config-iso.diff
Source22:       getcountrydata.ycp
Source23:       langset.pl
Source24:       boot.braille
Source25:       boot.sax.diff
ExcludeArch:    ia64 ppc64 s390x s390 ppc
%define build_usb 0

%description
The package contains a huge ISO



%prep
%setup -T -c

%build
BASEDIR=$PWD
rm -rf /tmp/locale-settings/
mkdir /tmp/locale-settings/
/usr/lib/YaST2/bin/y2base %{SOURCE22} UI
pushd /tmp/locale-settings/
for i in *.UTF-8; do
  mv $i ${i/.UTF-8/}
done
popd
for config in livecd-kde livecd-gnome usb-kde usb-gnome livecd-kde3; do
  cd $BASEDIR
  mkdir $config
  cd $config
  desktop=`echo $config | cut -d- -f2`
  type=`echo $config | cut -d- -f1`
  cdlist=/usr/share/suse/packages/"$desktop"_cd.%{_target_cpu}.list 
  test -f "$cdlist" || exit 1
  sort -u $cdlist > wanted.list
  if test $type = usb; then
    sed -i -e "s,yast2-live-installer,yast2-firstboot," wanted.list
    sed -i -e "s,release-livecd,release-usb," wanted.list
  fi
  install -m 755 %{SOURCE3} config.sh
  (sed -n -e '1,/ PACKAGES BEGIN/p' %{SOURCE4} ; cat wanted.list | while read pack; do echo '<package name="'$pack'"/>'; done; sed -n -e '/ PACKAGES END/,$p' %{SOURCE4} ) | \
    xmllint --format - > config.xml
  if test $type = usb; then 
     sed -i -e "s,yast2-live-installer,yast2-firstboot," config.xml
  fi
  rm wanted.list
  suseversion=%{version}
  if test $type = usb; then
    sed -i -e 's,#USB ,,' config.sh
    cp -rL /usr/share/kiwi/image/oemboot/suse-$suseversion myoem
    patch -l -p0 < %{SOURCE18}
    rm -f myoem/config.xml.orig
    /usr/sbin/kiwi --createhash myoem
  else
    cp -rL /usr/share/kiwi/image/isoboot/suse-$suseversion myiso
    patch -l -p0 < %{SOURCE21}
    rm -f myiso/config.xml.orig
    /usr/sbin/kiwi --createhash myiso
  fi
  sed -i -e "s,@CONFIG@,/usr/share/openSUSE-kiwi/$config," config.xml
  sed -i -e "s,@VERSION@,$suseversion," config.xml
  sed -i -e "s,@FLAVOR@,$config," config.xml
  mkdir config-cdroot
  cd config-cdroot
  install -m 644 /usr/share/doc/licenses/GPL-2.0.txt GPLv2.txt
  install -m 644 /usr/share/doc/licenses/gpl-3.0.txt GPLv3.txt
  tar czf ../config-cdroot.tgz *
  cd ..
  rm -rf config-cdroot
  mkdir -p root/tmp
  cd root
  install -m 644 /CD1/license.tar.gz .
  mkdir rpmkeys
  cp /CD1/gpg-pubkey* rpmkeys
  install -m 644 -D /CD1/control.xml etc/YaST2/control.xml
  /usr/bin/xsltproc %{SOURCE20} /CD1/control.xml > tmp/geturls.sh
  install -m 644 %{SOURCE5} tmp/config.patch
  if test "$desktop" = gnome; then
    cat %{SOURCE7} >> tmp/config.patch
  else
    cat %{SOURCE6} >> tmp/config.patch
  fi
  mkdir -p var/lib/zypp
  echo 0123456-7890-$desktop-$type-0123456 > var/lib/zypp/AnonymousUniqueId
  mkdir -p etc/smolt
  echo 0123456-7890-$desktop-$type-0123456 > etc/smolt/uuid
  if test $type = usb; then
    cp %{SOURCE19} tmp
    mkdir -p var/lib/YaST2
    touch var/lib/YaST2/reconfig_system
    # still needed due to a bug in yast2-installation
    touch etc/reconfig_system
  fi
  install -D -m 644 %{SOURCE8} etc/sysconfig/network/ifcfg-eth0
  cp -a /tmp/locale-settings/ etc/langset
  install -m 755 %{SOURCE9} etc/langset-xkb.pl
  install -m 755 %{SOURCE23} etc/langset.pl
  install -D -m 644 %{SOURCE13} var/lib/zypp/SoftLocks
  install -D -m 755 %{SOURCE24} etc/init.d/boot.braille
  install -D -m 755 %{SOURCE16} etc/init.d/boot.langset
  install -D -m 755 %{SOURCE11} usr/sbin/configure-x.sh
  install -D -m 755 %{SOURCE12} usr/bin/correct_live_install
  install -D -m 644 %{SOURCE2} etc/YaST2/policy.patch
  install -m 755 /usr/share/doc/packages/kiwi/examples/suse-11.1/suse-live-stick/root/etc/init.d/sax etc/init.d/sax
  #patch etc/init.d/sax %{SOURCE25}
  if test $desktop = kde; then
     install -m 644 /usr/share/doc/manual/opensuse-kdequick_en-pdf/opensuse-kdequick_en.pdf tmp/
  else
     install -m 644 /usr/share/doc/manual/opensuse-gnomequick_en-pdf/opensuse-gnomequick_en.pdf tmp/
  fi
done

%install
mkdir -p %{buildroot}/usr/share/openSUSE-kiwi
mv * %{buildroot}/usr/share/openSUSE-kiwi
install -m 644 -D %{SOURCE1} %{buildroot}/%_docdir/%name/COPYING
install -m 644 -D %{SOURCE10} %{buildroot}/%_docdir/%name/README
%fdupes %{buildroot}/usr/share/openSUSE-kiwi

%files
%defattr(-, root, root)
%doc %_docdir/%name
/usr/share/openSUSE-kiwi

%changelog
* Thu Dec 04 2008 coolo@suse.de
- update documentation
- also include the kde3 cd config
* Wed Dec 03 2008 coolo@suse.de
- fixes to make it possible to create livecd from online repos (preset
  repos)
* Wed Dec 03 2008 coolo@suse.de
- do not overwrite the swap size
- do not overwrite sax defaults for language
* Tue Dec 02 2008 coolo@suse.de
- fixed shell script to enable repos (bnc#441525)
* Tue Nov 25 2008 coolo@suse.de
- there is no EULA.txt anymore
* Sat Nov 22 2008 coolo@suse.de
- adapt kiwi-doc patch to fix build
* Fri Nov 21 2008 coolo@suse.de
- do not use YAST_KEYBOARD but it's mapping (bnc#444925)
* Wed Nov 19 2008 coolo@suse.de
- fix keyboard handling in sax (bnc#444925)
* Wed Nov 19 2008 coolo@suse.de
- correct the anonymous zypp and smolt ids after live install
* Wed Nov 12 2008 coolo@suse.de
- replace boot.create_xconf with kiwi example
* Mon Nov 10 2008 cthiel@suse.de
- add boot.braille
- requires kiwi-doc in order to copy boot/sax from it (todo)
* Sun Nov 09 2008 coolo@suse.de
- several build fixes
* Wed Nov 05 2008 coolo@suse.de
- take the other release flavor for usb
* Fri Oct 31 2008 coolo@suse.de
- use the yast data for langset (bnc#439822)
* Wed Oct 29 2008 coolo@suse.de
- adapt sysconfig/console (bnc#438964)
* Tue Oct 21 2008 cthiel@suse.de
- enable size check again
* Thu Oct 02 2008 cthiel@suse.de
- fix build again
* Thu Oct 02 2008 cthiel@suse.de
- fix kiwi-config.diff with latests kiwi
* Wed Oct 01 2008 cthiel@suse.de
- fix build for build service
* Tue Sep 30 2008 cthiel@suse.de
- don't buildrequire smart anymore
* Thu Aug 21 2008 cthiel@suse.de
- fix config.sh
* Tue Aug 19 2008 cthiel@suse.de
- fix build_usb
* Fri Aug 15 2008 coolo@suse.de
- build CDs again
* Wed Aug 13 2008 coolo@suse.de
- make the usb image work with factory (kiwi patch)
- make the repos work
- support minimal X11
* Mon Aug 11 2008 coolo@suse.de
- don't use cracklib-dict-small
* Mon Aug 11 2008 coolo@suse.de
- remove possible outcome of patch
* Sat Aug 09 2008 coolo@suse.de
- remove unneeded buildrequire
* Fri Aug 08 2008 coolo@suse.de
- take the repos out of the control.xml (to build it easily against
  11.0 and 11.1)
* Thu Aug 07 2008 coolo@suse.de
- make the usb image configurable
- make the usb firstboot config work
* Wed Jul 23 2008 cthiel@suse.de
- don't build usb image for now
- disable boot.apparmor as a temporary workaround for Alpha1
* Thu Jul 17 2008 coolo@suse.de
- adapt to 11.1
* Mon Jun 09 2008 coolo@suse.de
- SoftLock again some recommends (bnc#398367)
* Sat Jun 07 2008 coolo@suse.de
- don't put the pdf in the root of the CD, but in $HOME
* Sat Jun 07 2008 coolo@suse.de
- hide volumes mounted as /read-write and /read-only (bnc#391866)
* Sat Jun 07 2008 coolo@suse.de
- do not use zypper out of live installer (zypp lock in the way,
  bnc#398138)
* Tue Jun 03 2008 coolo@suse.de
- fix build requires
- remove most of the softlocks, should not be necessary any longer
- tag the media for checkmedia
* Mon Jun 02 2008 coolo@suse.de
- switch to 11.0 URLs (bnc#395316)
* Wed May 28 2008 coolo@suse.de
- avoid duplicated online repos here too
* Wed May 28 2008 coolo@suse.de
- kiwi needs kiwi-tools now
* Tue May 27 2008 coolo@suse.de
- sax2 team wants the profiles to be used (bnc#394541)
* Mon May 26 2008 coolo@suse.de
- fixing check-build to really avoid hosts without squashfs
* Wed May 21 2008 coolo@suse.de
- if autologin is set to linux, remove it (bnc#391798)
* Tue May 20 2008 coolo@suse.de
- set the keyboard layout correctly (bnc#345135)
* Sat May 17 2008 coolo@suse.de
- do not try building on older kernels
* Thu May 15 2008 coolo@suse.de
- update softlocks (bnc#390796)
* Thu May 15 2008 coolo@suse.de
- build the USB stick again
* Tue May 13 2008 coolo@suse.de
- use sax2 again - too many problems not understood
* Tue May 13 2008 coolo@suse.de
- do not disable device mapper (bnc#389188)
* Mon May 12 2008 coolo@suse.de
- create linux with uid 999 (bnc#388739)
- use new way to register (bnc#385868)
* Fri May 09 2008 coolo@suse.de
- do not use sax2 at boot time
* Fri May 02 2008 coolo@suse.de
- sign the repo (bnc#385488)
* Wed Apr 30 2008 coolo@suse.de
- creating a product
* Tue Apr 29 2008 coolo@suse.de
- softlock recommends
* Tue Apr 29 2008 coolo@suse.de
- we need small dict now too
* Thu Apr 24 2008 coolo@suse.de
- more packages to be copied
* Tue Apr 22 2008 coolo@suse.de
- only take the wanted rpms into the repo
* Mon Apr 21 2008 coolo@suse.de
- clarify license
* Sat Apr 19 2008 coolo@suse.de
- remove hack again and strictly check if zypper installed what
  we wanted to install
* Thu Apr 17 2008 ro@suse.de
- back to zypper but avoid kernel-source in repo
* Thu Apr 17 2008 coolo@suse.de
- had to switch to smart as zypper shows very weird bug tonight
* Wed Apr 16 2008 coolo@suse.de
- register update repo
* Tue Apr 15 2008 coolo@suse.de
- taking out oem live again, just doesn't work
* Mon Apr 14 2008 coolo@suse.de
- copy away the actually used config
* Sun Apr 13 2008 coolo@suse.de
- fix package names after bootsplash split
* Thu Apr 10 2008 coolo@suse.de
- kiwi support for oem is fixed, retrying
* Wed Apr 09 2008 coolo@suse.de
- kiwi has smart hardcoded without requiring it, adding work around
* Tue Apr 08 2008 coolo@suse.de
- show and allow mounting of fixed drives (bnc#340723)
* Tue Apr 08 2008 coolo@suse.de
- fix permissions of scripts
* Mon Apr 07 2008 coolo@suse.de
- put all the required files in the package
* Fri Apr 04 2008 coolo@suse.de
- include live installer
* Wed Mar 26 2008 coolo@suse.de
- also create an USB image
* Sat Mar 22 2008 coolo@suse.de
- adapt to new filenames in package lists
* Tue Mar 18 2008 coolo@suse.de
- I should have lunch with Rudi more often - rework
  dependency on patterns
* Tue Mar 18 2008 coolo@suse.de
- do not rely on brute force insserv, but rather
  use YAST_IS_RUNNING
* Sun Mar 16 2008 coolo@suse.de
- aufs works again
- update package set
* Fri Mar 14 2008 coolo@suse.de
- new packages, less recommends
* Thu Mar 06 2008 coolo@suse.de
- updated config again
* Sun Mar 02 2008 coolo@suse.de
- buildrequire some packages in the config
* Sun Mar 02 2008 coolo@suse.de
- update config again
* Fri Feb 29 2008 coolo@suse.de
- adding NM-{kde,gnome} as explicit requires
* Fri Feb 29 2008 coolo@suse.de
- updated again
* Wed Feb 27 2008 coolo@suse.de
- update package lists
* Sat Feb 23 2008 coolo@suse.de
- remove broken deps for now
* Fri Feb 22 2008 coolo@suse.de
- some packages needed
* Thu Feb 21 2008 coolo@suse.de
- update configs
* Wed Feb 06 2008 coolo@suse.de
- use uncompressed payload
* Wed Feb 06 2008 coolo@suse.de
- KDE CD is now KDE4
* Fri Feb 01 2008 coolo@suse.de
- update again
* Wed Jan 30 2008 coolo@suse.de
- new package lists
* Tue Jan 29 2008 coolo@suse.de
- split off GNOME live CD
- try not to use aufs (bnc#356902)
* Mon Jan 21 2008 coolo@suse.de
- initial package of kiwi live cd
openSUSE Build Service is sponsored by