desktop/kdebase-workspace/PKGBUILD

370 lines
14 KiB
Bash
Raw Normal View History

2010-05-22 06:25:44 +08:00
#
# KDE SC Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# include global config
source ../_buildscripts/${current_repo}-${_arch}-cfg.conf
# original name (used for the source and pkgnames)
_origname=kdebase-workspace
# default wallpaper to be kept in kdebase-workspace main package
_default_wp="Ethais"
#
# package info
#
pkgbase=('kdebase-workspace')
pkgname=('kdebase-workspace'
'kdebase-workspace-doc'
'kdebase-workspace-wallpapers')
arch=('i686' 'x86_64')
pkgver=${_kdever}
pkgrel=1
2010-05-22 06:25:44 +08:00
pkgdesc="split package"
url="http://www.kde.org"
license=('GPL' 'LGPL' 'FDL')
options=('docs' '!splithdr')
# NOTE keep in sync with kdebase-workspace-depends
depends=('polkit-kde' "kdepimlibs>=${_kdever}" 'qimageblitz'
2010-05-22 06:25:44 +08:00
'libxxf86misc' 'libxcomposite' 'libxss' 'lm_sensors' 'libxklavier' 'libxft' 'oxygen-icons' "xkit"
'libxdamage' 'xorg-utils' 'libxrandr') # "kdepim-runtime>=${_kdever}"
2010-05-22 06:25:44 +08:00
makedepends=('pkgconfig' 'cmake' 'automoc4' 'networkmanager' 'bluez' "kdebindings-python>=${_kdever}"
"kdebindings-ruby>=${_kdever}" 'oxygen-icons' 'qedje') # 'gpsd' 'google-gadgets-qt>=0.11.1' "kdebase-runtime>=${_kdever}"
2010-05-22 06:25:44 +08:00
source=($_mirror/${_origname}-$_kdever.tar.bz2
mishaaq-kcm_touchpad-00370b5.tar.gz
http://www.kde-apps.org/CONTENT/content-files/114856-kcm_tablet-1.1.3.tar.gz
http://www.kde-apps.org/CONTENT/content-files/117639-favorites-0.1.tar.bz2
kde.pam
kde-np.pam
kscreensaver.pam
chakra-branding.tar.gz
chakra-themes.tar.gz
# core patches
01_kdm_zsh_profile.patch
02_sane_env_and_shutdown_path.patch
03_plasma_menubutton_branding.patch
04_plasma_kickoff_url.patch
# 05_plasma_desktop_defaults.patch
2010-05-22 06:25:44 +08:00
06_kickoff_default_favourites.patch
07_always_show_kickoff_subtext.patch
09_enable_start-shutdown-scripts.patch
# fixes
# let KDM wait a big longer for X to start up, fixes problems on some gfx hardware that needs a lot of time to initialize
fix_kdm-increase-xserver-timeout-bnc#462478.patch
# restart xserver on logout
fix_terminate-server.patch
# if kdm is not loaded, try to shutdown via consolekit
fix_ck-shutdown.patch
# "fix" some sytemsettings modules that need root access
# FIXME fix_root-only-kcms.patch
2010-05-22 06:25:44 +08:00
# experimental, software transparency for plasma panels
# feature_plasma-transparent-panel-v4-rb#472.patch
2010-05-22 06:25:44 +08:00
# show osd for when setting the brightness
# feature_brightness-osd.patch
2010-05-22 06:25:44 +08:00
# some nice tooltip for the battery applet
# feature_battery-tooltip.patch
2010-05-22 06:25:44 +08:00
# patch to allow enabling/disabling the notification history
# feature_history-notifications-enable-disable-kde#119207.patch
2010-05-22 06:25:44 +08:00
# smaller icons in plasma notifications:
# http://chakra-project.org/bbs/viewtopic.php?id=2193
# feature_smaller-notification-icons.patch
2010-05-22 06:25:44 +08:00
# feature_kdm-plymouth.patch
2010-05-22 06:25:44 +08:00
screensaver-sleep.patch)
md5sums=('8dc81a878fe23220bef7bf2d386779d9' # kdebase-workspace-4.4.92.tar.bz2
2010-05-22 06:25:44 +08:00
'f355a658d2e9267fdf4e8d8f88038bcf' # mishaaq-kcm_touchpad-00370b5.tar.gz
'd4570491bcf9986d84aeb77c939090a9' # 114856-kcm_tablet-1.1.3.tar.gz
'b60baabccbd302d00923e053db0dc0ae' # 117639-favorites-0.1.tar.bz2
'10a490653b002e6f9e7476ff9d37c011' # kde.pam
'552337fd9a3982d809ea16c7f0033d42' # kde-np.pam
'367a3538f54db71f108b34cfa31088ac' # kscreensaver.pam
'169c6fc83d5562b5d7249db7fc46d8d6' # chakra-branding.tar.gz
'c328f1c5cfa3e551205ffdc0fdda41a8' # chakra-themes.tar.gz
'721e97031b62aee8914e8617e86f9235' # 01_kdm_zsh_profile.patch
'e2eb9d270fe0e93901b29256bdedd7e2' # 02_sane_env_and_shutdown_path.patch
'8e623bb5608025417ff9ed061e5a03f1' # 03_plasma_menubutton_branding.patch
2010-05-22 06:25:44 +08:00
'522a294c09d88d3d722de3f39fd203c3' # 04_plasma_kickoff_url.patch
# '0aba9287f038d66afbf545c83a46fd19' # 05_plasma_desktop_defaults.patch
2010-06-27 23:29:22 +08:00
'0ee6e12bb9830b4248becb0442dc7e0c' # 06_kickoff_default_favourites.patch
2010-05-22 06:25:44 +08:00
'89d96455c6a446ef59b0620d1b8606af' # 07_always_show_kickoff_subtext.patch
'5eb9285268916492012151045bdebd26' # 09_enable_start-shutdown-scripts.patch
'db2d8166f5ea80ecd291deb9c0e2bb71' # fix_kdm-increase-xserver-timeout-bnc#462478.patch
'814350c52c135d6f7bdada1e29223d38' # fix_terminate-server.patch
'5d752cf39a28306438bb6d82db6e1696' # fix_ck-shutdown.patch
# FIXME '6df4a57eb6b5b99df9ec21b76f07c027' # fix_root-only-kcms.patch
# '13c3203589143e9e2fc757c17375227a' # feature_plasma-transparent-panel-v4-rb#472.patch
# '7361012da217f9aeeca61f0e9956e1d0' # feature_brightness-osd.patch
# '894815a80f99a9a0dee1adbcda49b161' # feature_battery-tooltip.patch
# '9b97ac1b4deb8d0c8ca7afffb80b4320' # feature_history-notifications-enable-disable-kde#119207.patch
# '99c4e25e79e75cc5e90c1b66172b1c32' # feature_smaller-notification-icons.patch
# '42b3b5e09372c57910c3435e63e2dfd6' # feature_kdm-plymouth.patch
2010-05-22 06:25:44 +08:00
'bf36e9cc623c7c3da6668e560e29975c') # screensaver-sleep.patch
#
# build function
#
build()
{
cd ${srcdir}/${_origname}-${pkgver}
# branch update
if [ "$_branchupdate" = "yes" ] ; then
msg "applying branch update ..."
patch -p0 -i $startdir/branch-update-r*.patch || return 1
else
warning "branch updates disabled ..."
warning "if you want to make use of it, run branch_updater.sh"
warning "and enable branch updates in _/buildsystem/kdemod.conf"
fi
msg "applying main patchset ..."
patch -Np0 -i ${srcdir}/01_kdm_zsh_profile.patch || return 1
patch -Np0 -i ${srcdir}/02_sane_env_and_shutdown_path.patch || return 1
patch -Np1 -i ${srcdir}/03_plasma_menubutton_branding.patch || return 1
patch -Np1 -i ${srcdir}/04_plasma_kickoff_url.patch || return 1
# patch -Np1 -i ${srcdir}/05_plasma_desktop_defaults.patch || return 1
2010-05-22 06:25:44 +08:00
patch -Np1 -i ${srcdir}/06_kickoff_default_favourites.patch || return 1
patch -Np1 -i ${srcdir}/07_always_show_kickoff_subtext.patch || return 1
patch -Np1 -i ${srcdir}/09_enable_start-shutdown-scripts.patch || return 1
msg "applying fixes ..."
patch -Np0 -i ${srcdir}/fix_kdm-increase-xserver-timeout-bnc#462478.patch || return 1
patch -Np0 -i ${srcdir}/fix_terminate-server.patch || return 1
patch -Np1 -i ${srcdir}/fix_ck-shutdown.patch || return 1
# patch -Np1 -i ${srcdir}/fix_root-only-kcms.patch || return 1
2010-05-22 06:25:44 +08:00
# FIXME: update feature patches
# msg "applying feature patches ..."
# patch -Np1 -i ${srcdir}/feature_plasma-transparent-panel-v4-rb#472.patch || return 1
# patch -Np1 -i ${srcdir}/feature_brightness-osd.patch || return 1
# patch -Np1 -i ${srcdir}/feature_battery-tooltip.patch || return 1
# patch -Np1 -i ${srcdir}/feature_history-notifications-enable-disable-kde#119207.patch || return 1
# patch -Np0 -i ${srcdir}/feature_smaller-notification-icons.patch || return 1
# patch -Np1 -i ${srcdir}/feature_kdm-plymouth.patch || return 1
2010-05-22 06:25:44 +08:00
#msg "applying upstream patches ..."
msg "applying arch patches ..."
patch -p1 -i ${srcdir}/screensaver-sleep.patch || return 1 # FS#19426
msg "starting workspace build ..."
cmake . -DCMAKE_BUILD_TYPE=${_build_type} \
-DCMAKE_INSTALL_PREFIX=${_installprefix} \
-DWITH_Xmms=OFF \
-DCMAKE_SKIP_RPATH=ON \
-DWITH_PolkitQt=OFF \
-DCMAKE_{SHARED,MODULE,EXE}_LINKER_FLAGS='-Wl,--no-undefined -Wl,--as-needed'
make || return 1
msg "starting kcm_touchpad build ..."
cd ${srcdir}/mishaaq-kcm_touchpad-00370b5
cmake . -DCMAKE_BUILD_TYPE=${_build_type} \
-DCMAKE_INSTALL_PREFIX=${_installprefix} \
-DWITH_Xmms=OFF \
-DCMAKE_SKIP_RPATH=ON \
-DCMAKE_{SHARED,MODULE,EXE}_LINKER_FLAGS='-Wl,--no-undefined -Wl,--as-needed'
msg "starting kcm_tablet build ..."
cd ${srcdir}/kcm_tablet-1.1.3
cmake . -DCMAKE_BUILD_TYPE=${_build_type} \
-DCMAKE_INSTALL_PREFIX=${_installprefix} \
-DWITH_Xmms=OFF \
-DCMAKE_SKIP_RPATH=ON \
-DCMAKE_{SHARED,MODULE,EXE}_LINKER_FLAGS='-Wl,--no-undefined -Wl,--as-needed'
msg "starting favorites launcher build ..."
cd ${srcdir}/favorites-0.1
cmake . -DCMAKE_BUILD_TYPE=${_build_type} \
-DCMAKE_INSTALL_PREFIX=${_installprefix} \
-DWITH_Xmms=OFF \
-DCMAKE_SKIP_RPATH=ON \
-DCMAKE_{SHARED,MODULE,EXE}_LINKER_FLAGS='-Wl,--no-undefined -Wl,--as-needed'
make || return 1
}
#
# split-install functions
#
package_kdebase-workspace()
{
pkgdesc="KDE Workspace"
2010-06-27 23:29:22 +08:00
# FIXME don't find google-gadgets and gpsd can't be build cos of liblesstif
2010-05-22 06:25:44 +08:00
# NOTE keep in sync with depends
depends=('polkit-kde' "kdepimlibs>=${_kdever}" "kdebase-runtime>=${_kdever}" 'qimageblitz'
2010-05-22 06:25:44 +08:00
'libxxf86misc' 'libxcomposite' 'libxss' 'lm_sensors' 'libxklavier' 'libxft' 'oxygen-icons' "xkit"
'libxdamage' 'xorg-utils' 'libxrandr') # "kdepim-runtime>=${_kdever}"
2010-05-22 06:25:44 +08:00
optdepends=("kdebindings-python : Python Support for Plasma"
"kdeedu-marble : Marble Wallpaper Plugin"
2010-06-27 23:29:22 +08:00
#"google-gadgets-qt : Plasma Support for Google Gadgets"
2010-05-22 06:25:44 +08:00
"qedje : Plasma Support for Edje Files"
2010-06-27 23:29:22 +08:00
#"gpsd : Plasma geolocation support"
2010-05-22 06:25:44 +08:00
"(open)ntp : Time/Date sync support")
2010-06-27 23:29:22 +08:00
provides=("${_origname}=${_kdever}" "powerdevil" 'powerdevil' 'kcm_tablet=1.1.3')
replaces=('kdebase-workspace-devel' 'guidance-power-manager')
2010-05-22 06:25:44 +08:00
2010-06-27 23:29:22 +08:00
conflicts=("kdemod-${_origname}" "powerdevil" 'powerdevil' "kde-meta-${_origname}" 'kcm_tablet' 'guidance-power-manager')
2010-05-22 06:25:44 +08:00
groups=("kde" "kde-complete" "kde-uninstall" "kde-minimal")
backup=('usr/share/config/kdm/kdmrc'
'etc/pam.d/kde'
'etc/pam.d/kde-np'
'etc/pam.d/kscreensaver')
install=${_origname}.install
cd ${srcdir}/${_origname}-${pkgver}
make DESTDIR=${pkgdir} install || return 1
cd ${srcdir}/mishaaq-kcm_touchpad-00370b5
make DESTDIR=${pkgdir} install || return 1
cd ${srcdir}/kcm_tablet-1.1.3
make DESTDIR=${pkgdir} install || return 1
cd ${srcdir}/favorites-0.1
make DESTDIR=${pkgdir} install || return 1
# install pam configuration
install -D -m644 ${srcdir}/kde.pam ${pkgdir}/etc/pam.d/kde
install -D -m644 ${srcdir}/kde-np.pam ${pkgdir}/etc/pam.d/kde-np
install -D -m644 ${srcdir}/kscreensaver.pam ${pkgdir}/etc/pam.d/kscreensaver
# sane path for env and shutdown dir
install -d -m755 ${pkgdir}/etc/kde/{env,shutdown}
# install session
install -D -m 644 ${srcdir}/${_origname}-${pkgver}/kdm/kfrontend/sessions/kde.desktop \
${pkgdir}/etc/X11/sessions/kde.desktop
# also install kdm clean default config
cd ${srcdir}/${_origname}-${pkgver}/kdm
make DESTDIR=${pkgdir} GENKDMCONF_FLAGS="--no-old --no-backup --no-in-notice" install
# povided in separate package
rm -rf ${pkgdir}/usr/share/doc
# copy branding stuff
mkdir -p ${pkgdir}/usr/share/icons/oxygen/scalable/places/
cp -f ${srcdir}/kdemod-branding/start-here-branding.svgz ${pkgdir}/usr/share/icons/oxygen/scalable/places/start-here-branding.svgz
cp -f ${srcdir}/kdmeod-branding/branding-icon.png ${pkgdir}/usr/share/apps/kdm/themes/oxygen/branding-icon.png
cd ${srcdir}/kdemod-branding/
for i in 256 128 64 48 32 22 16; do
mkdir -p ${pkgdir}/usr/share/icons/oxygen/${i}x${i}/places/
install -D -m644 start-here-branding-${i}.png ${pkgdir}/usr/share/icons/oxygen/${i}x${i}/places/start-here-branding.png
done
# copy kdm/ksplash themes
mkdir -p ${pkgdir}/usr/share/apps/kdm/themes
mv -fv ${srcdir}/kdemod-themes/oxygen-light ${pkgdir}/usr/share/apps/kdm/themes
mkdir -p ${pkgdir}/usr/share/apps/ksplash/Themes
mv -fv ${srcdir}/kdemod-themes/Default-Light ${pkgdir}/usr/share/apps/ksplash/Themes
# WORKAROUND -> install oxygen-air kdm theme
cp -frv ${srcdir}/${_origname}-${pkgver}/kdm/kfrontend/themes/oxygen-air ${pkgdir}/usr/share/apps/kdm/themes
sed -i -e s,#GUIStyle=.*,GUIStyle=Oxygen,g ${pkgdir}/usr/share/config/kdm/kdmrc
sed -i -e s,#ColorScheme=.*,ColorScheme=Oxygen,g ${pkgdir}/usr/share/config/kdm/kdmrc
sed -i -e s,Theme=/usr.*,Theme=/usr/share/apps/kdm/themes/oxygen-air,g ${pkgdir}/usr/share/config/kdm/kdmrc
# WORKAROUND -> put ggl stuff into ggl package
rm -rf ${pkgdir}/usr/share/apps/plasma/plasmoids/ggl_photos
rm -rf ${pkgdir}/usr/share/apps/plasma/plasmoids/ggl_rss
rm -rf ${pkgdir}/usr/share/kde4/services/plasma-applet-ggl-photos.desktop
rm -rf ${pkgdir}/usr/share/kde4/services/plasma-applet-ggl-rss.desktop
# remove all wallpapers, just keep the default one
cp -ar ${pkgdir}/usr/share/wallpapers/${_default_wp} ${pkgdir}
rm -rf ${pkgdir}/usr/share/wallpapers
mkdir -p ${pkgdir}/usr/share/wallpapers
mv ${pkgdir}/${_default_wp} ${pkgdir}/usr/share/wallpapers
# include our patches into the package
ls -1 ${startdir}/*.patch &>/dev/null 2>&1
if [ "$?" = "0" ]; then
warning "incuding patches into package"
mkdir -p ${pkgdir}/usr/share/chakra/patches/${_origname} &>/dev/null
for i in ${startdir}/*.patch; do
msg "$i"
cp $i ${pkgdir}/usr/share/chakra/patches/${_origname}/ &>/dev/null
done
else
warning "no patches found, skipping to include them into the package..."
fi
# FIXME: duplicates in kdebase-workspace-doc
rm -rf $pkgdir/usr/share/man/man1/plasmaengineexplorer.1
}
package_kdebase-workspace-doc()
{
pkgdesc="KDE Workspace - Documentation"
depends=("${_origname}>=${_kdever}")
groups=("kde" "kde-complete" "kde-uninstall" "kde-doc")
# keep this, the variable must be resetted
optdepends=()
splitdirs="doc"
for i in ${splitdirs} ; do
cd ${srcdir}/${_origname}-${pkgver}/${i}
make DESTDIR=${pkgdir} install || return 1
done
}
package_kdebase-workspace-wallpapers()
{
pkgdesc="KDE Workspace - Desktop Wallpapers"
groups=("kde" "kde-complete" "kde-uninstall")
# keep this, the variable must be resetted
optdepends=()
splitdirs="wallpapers"
for i in ${splitdirs} ; do
cd ${srcdir}/${_origname}-${pkgver}/${i}
make DESTDIR=${pkgdir} install || return 1
done
rm -rfv ${pkgdir}/usr/share/wallpapers/${_default_wp}
}