summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
authorParabola <dev@list.parabolagnulinux.org>2012-05-28 20:14:47 +0000
committerParabola <dev@list.parabolagnulinux.org>2012-05-28 20:14:47 +0000
commitedec45419def1b81bd663a2859684ef55ba56269 (patch)
treecaa3c2d5f4e55b38e7740a39d80a21507679c586 /extra
parent483f7de4ab6a706517279a24d2efc969f4a1996d (diff)
Mon May 28 20:14:39 UTC 2012
Diffstat (limited to 'extra')
-rw-r--r--extra/amule/gcc4.7.patch19
-rw-r--r--extra/bind/so_bsdcompat.patch12
-rw-r--r--extra/dvdrip/PKGBUILD42
-rw-r--r--extra/dvdrip/dvdrip.desktop8
-rw-r--r--extra/dvdrip/dvdrip.install11
-rw-r--r--extra/gstreamer0.10-good/PKGBUILD59
-rw-r--r--extra/gstreamer0.10-good/gstreamer0.10-good-plugins.install19
-rw-r--r--extra/gvfs/gvfs-1.12.2-afp-g_clear_object.patch35
-rw-r--r--extra/iperf/PKGBUILD35
-rw-r--r--extra/iperf/client.cpp.patch17
-rw-r--r--extra/libreoffice/libreoffice.install47
-rw-r--r--extra/llvm/clang-plugin-loader-registry.patch11
-rw-r--r--extra/llvm/fix-gold-lto-linking.patch11
-rw-r--r--extra/mail-notification/PKGBUILD85
-rw-r--r--extra/mail-notification/dont-update-cache.patch22
-rw-r--r--extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch16
-rw-r--r--extra/mail-notification/mail-notification-5.4-camel_headers.patch36
-rw-r--r--extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch122
-rw-r--r--extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch12
-rw-r--r--extra/mail-notification/mail-notification-5.4-evolution.patch244
-rw-r--r--extra/mail-notification/mail-notification-5.4-gmime.patch63
-rw-r--r--extra/mail-notification/mail-notification-5.4-gtk3-support.patch1416
-rw-r--r--extra/mail-notification/mail-notification-5.4-icons.patch39
-rw-r--r--extra/mail-notification/mail-notification-5.4-kde-trayicon.patch72
-rw-r--r--extra/mail-notification/mail-notification-5.4-libx11.patch13
-rw-r--r--extra/mail-notification/mail-notification-5.4-popup-attach.patch45
-rw-r--r--extra/mail-notification/mail-notification-5.4-sasl_encode64.patch24
-rw-r--r--extra/mail-notification/mail-notification-5.4-weak.patch11
-rw-r--r--extra/mail-notification/mail-notification.install24
-rw-r--r--extra/mail-notification/remove-ubuntu-special-case.patch33
-rw-r--r--extra/moc/gcc-undefined-symbols.diff12
-rw-r--r--extra/moc/moc-ffmpeg.patch26
-rw-r--r--extra/nautilus/samba-crash.patch32
-rw-r--r--extra/nmap/ChangeLog17
-rw-r--r--extra/nxserver/NXproto.h.64bit.diff66
-rw-r--r--extra/nxserver/PKGBUILD95
-rw-r--r--extra/nxserver/nx-3.5.0-libpng15.patch30
-rw-r--r--extra/nxserver/nxcompsh-gcc43.patch19
-rw-r--r--extra/openmpi/openmpi-1.5.4-fix-fakeroot-execution.patch43
-rw-r--r--extra/php-suhosin/PKGBUILD33
-rw-r--r--extra/php/suhosin.patch13
-rw-r--r--extra/pidgin/port-to-farstream-v3.patch447
-rw-r--r--extra/pm-utils/11netcfg26
-rw-r--r--extra/qt/fix-buffer-overflow.patch34
-rw-r--r--extra/qt/fix-cursortox-crash.patch32
-rw-r--r--extra/qt/gcc47.patch27
-rw-r--r--extra/qtwebkit/python2-path.patch29
-rw-r--r--extra/slim/no-host.patch29
-rw-r--r--extra/slim/restart.patch144
-rw-r--r--extra/slim/sigterm.patch45
-rw-r--r--extra/slim/slim-1.3.2-libpng15.patch11
-rw-r--r--extra/streamtuner/PKGBUILD49
-rw-r--r--extra/streamtuner/shoutcast-redesign-patch.diff12
-rw-r--r--extra/streamtuner/streamtuner-0.99.99-shoutcast.diff41
-rw-r--r--extra/sysklogd/sysklogd-debian.patch21
-rw-r--r--extra/systemd/0001-check-for-proper-return-from-dirent_ensure_type.patch28
-rw-r--r--extra/systemd/0001-logind-close-FIFO-before-ending-sessions-cleanly.patch156
-rw-r--r--extra/systemd/0001-util-never-follow-symlinks-in-rm_rf_children.patch32
-rw-r--r--extra/systemd/PKGBUILD127
-rw-r--r--extra/systemd/os-release5
-rw-r--r--extra/systemd/systemd.install50
-rw-r--r--extra/tunepimp/PKGBUILD49
-rw-r--r--extra/tunepimp/gcc4.4.patch13
-rw-r--r--extra/tunepimp/mp4v2-1.9.patch30
-rw-r--r--extra/tunepimp/tunepimp-curl-headers.patch12
-rw-r--r--extra/tunepimp/tunepimp-gcc43.patch145
-rw-r--r--extra/watchdog/watchdog-5.9-use-oom_score_adj.patch91
-rw-r--r--extra/xf86-video-intel/0001-uxa-gen3-Remove-special-casing-of-solid-pictures.patch533
-rw-r--r--extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch50
-rw-r--r--extra/xf86-video-intel/0003-uxa-Remove-hook-for-CompositeRectangles.patch255
-rw-r--r--extra/xf86-video-intel/0004-uxa-Remove-broken-render-glyphs-to-dst.patch391
-rw-r--r--extra/xf86-video-intel/0005-uxa-Fix-leak-of-glyph-mask-for-unhandled-glyph-compo.patch40
72 files changed, 0 insertions, 5943 deletions
diff --git a/extra/amule/gcc4.7.patch b/extra/amule/gcc4.7.patch
deleted file mode 100644
index 2bfcbe057..000000000
--- a/extra/amule/gcc4.7.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/src/ObservableQueue.h 2011-11-20 19:08:59.000000000 +0100
-+++ b/src/ObservableQueue.h 2012-04-11 00:06:28.000000000 +0200
-@@ -331,14 +331,14 @@
- template <typename ValueType>
- void CObservableQueue<ValueType>::ObserverAdded( ObserverType* o )
- {
-- NotifyObservers( EventType( EventType::STARTING ), o );
-+ this->NotifyObservers( EventType( EventType::STARTING ), o );
- }
-
-
- template <typename ValueType>
- void CObservableQueue<ValueType>::ObserverRemoved( ObserverType* o )
- {
-- NotifyObservers( EventType( EventType::STOPPING ), o );
-+ this->NotifyObservers( EventType( EventType::STOPPING ), o );
- }
-
-
diff --git a/extra/bind/so_bsdcompat.patch b/extra/bind/so_bsdcompat.patch
deleted file mode 100644
index 4d7031fcc..000000000
--- a/extra/bind/so_bsdcompat.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -aur old/lib/isc/unix/socket.c new/lib/isc/unix/socket.c
---- old/lib/isc/unix/socket.c 2011-02-18 05:01:16.000000000 +0100
-+++ new/lib/isc/unix/socket.c 2011-05-27 10:12:01.685269374 +0200
-@@ -712,6 +712,8 @@
- }
- #endif
-
-+#undef SO_BSDCOMPAT
-+
- static void
- socket_log(isc__socket_t *sock, isc_sockaddr_t *address,
- isc_logcategory_t *category, isc_logmodule_t *module, int level,
diff --git a/extra/dvdrip/PKGBUILD b/extra/dvdrip/PKGBUILD
deleted file mode 100644
index e3be37d2f..000000000
--- a/extra/dvdrip/PKGBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# $Id: PKGBUILD 143731 2011-11-28 17:39:01Z giovanni $
-# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
-# Contributor: Fredrik Hammar <Horney_C86@Hotmail.com>
-
-pkgname=dvdrip
-pkgver=0.98.11
-pkgrel=10
-pkgdesc="A Gtk frontend for transcode writen in Perl"
-arch=('i686' 'x86_64')
-license=('custom')
-url="http://www.exit1.org/dvdrip/"
-install=${pkgname}.install
-depends=('perl-gtk2-ex-formfactory' 'transcode' 'imagemagick'
- 'perl-libintl-perl' 'desktop-file-utils' 'perl-event-execflow')
-optdepends=('ogmtools: for ogm/odd video creation'
- 'lsdvd: fast reading of DVD table'
- 'fping: for cluster support')
-source=("http://www.exit1.org/dvdrip/dist/${pkgname}-${pkgver}.tar.gz"
- 'dvdrip.desktop')
-options=('!emptydirs' '!makeflags')
-md5sums=('6dfa4199d451757a37eea233a07da4c0'
- 'e91cf411928fd0500d07a0022b4ef546')
-
-build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- # install module in vendor directories.
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
-package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- make install DESTDIR="${pkgdir}"
-
- # remove perllocal.pod and .packlist
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
-
- install -Dm644 ${srcdir}/${pkgname}.desktop "${pkgdir}/usr/share/applications/${pkgname}.desktop"
- install -Dm 644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
-}
diff --git a/extra/dvdrip/dvdrip.desktop b/extra/dvdrip/dvdrip.desktop
deleted file mode 100644
index dd19b4aae..000000000
--- a/extra/dvdrip/dvdrip.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Name=dvd::rip
-Comment=DVD Ripper and Encoder - Backup and compression utility for DVDs
-Exec=/usr/bin/vendor_perl/dvdrip
-Icon=/usr/share/perl5/vendor_perl/Video/DVDRip/icon.xpm
-Terminal=false
-Type=Application
-Categories=Application;AudioVideo;Video;
diff --git a/extra/dvdrip/dvdrip.install b/extra/dvdrip/dvdrip.install
deleted file mode 100644
index e111ef946..000000000
--- a/extra/dvdrip/dvdrip.install
+++ /dev/null
@@ -1,11 +0,0 @@
-post_install() {
- update-desktop-database -q
-}
-
-post_upgrade() {
- post_install
-}
-
-post_remove() {
- post_install
-}
diff --git a/extra/gstreamer0.10-good/PKGBUILD b/extra/gstreamer0.10-good/PKGBUILD
deleted file mode 100644
index 3d0b13a61..000000000
--- a/extra/gstreamer0.10-good/PKGBUILD
+++ /dev/null
@@ -1,59 +0,0 @@
-# $Id: PKGBUILD 153259 2012-03-12 16:05:31Z jgc $
-# Maintainer: Jan de Groot <jgc@archlinux.org>
-
-pkgbase=gstreamer0.10-good
-pkgname=('gstreamer0.10-good' 'gstreamer0.10-good-plugins')
-pkgver=0.10.31
-pkgrel=1
-arch=('i686' 'x86_64')
-license=('LGPL')
-makedepends=('intltool' 'pkgconfig' 'gstreamer0.10-base>=0.10.34' 'libavc1394' 'libiec61883' 'aalib' 'libshout' 'libdv' 'flac' 'gconf' 'wavpack' 'taglib' 'libsoup-gnome' 'v4l-utils' 'libcaca' 'bzip2' 'gdk-pixbuf2' 'libpulse' 'jack' 'udev')
-url="http://gstreamer.freedesktop.org/"
-options=(!libtool !emptydirs)
-source=(${url}/src/gst-plugins-good/gst-plugins-good-${pkgver}.tar.xz)
-sha256sums=('77a8436a7c0a15f876bad29616835046890df2bcaf72da02151bd91e3d292b64')
-
-build() {
- cd "${srcdir}/gst-plugins-good-${pkgver}"
- sed -i '/AC_PATH_XTRA/d' configure.ac
- autoreconf
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
- --disable-static --enable-experimental \
- --disable-schemas-install \
- --disable-hal \
- --disable-esd \
- --with-package-name="GStreamer Good Plugins (Archlinux)" \
- --with-package-origin="http://www.archlinux.org/"
-
- make
- sed -e 's/gst sys ext/gst/' -i Makefile
-}
-
-check() {
- cd "${srcdir}/gst-plugins-good-${pkgver}"
- make check
-}
-
-package_gstreamer0.10-good() {
- depends=('gstreamer0.10-base>=0.10.34' 'bzip2')
- pkgdesc="GStreamer Multimedia Framework Good plugin libraries"
-
- cd "${srcdir}/gst-plugins-good-${pkgver}"
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
- rm -rf "${pkgdir}/etc/gconf"
-}
-
-package_gstreamer0.10-good-plugins() {
- depends=("gstreamer0.10-good=${pkgver}" 'libavc1394' 'libiec61883' 'aalib' 'libshout' 'libdv' 'flac' 'gconf' 'wavpack' 'taglib' 'libsoup-gnome' 'v4l-utils' 'libcaca' 'libpng' 'libjpeg' 'jack' 'libpulse' 'udev')
- pkgdesc="GStreamer Multimedia Framework Good Plugins (gst-plugins-good)"
- groups=('gstreamer0.10-plugins')
- replaces=('gstreamer0.10-aalib' 'gstreamer0.10-wavpack' 'gstreamer0.10-shout2' 'gstreamer0.10-taglib' 'gstreamer0.10-libcaca' 'gstreamer0.10-libpng' 'gstreamer0.10-jpeg' 'gstreamer0.10-cairo' 'gstreamer0.10-flac' 'gstreamer0.10-speex' 'gstreamer0.10-gdkpixbuf' 'gstreamer0.10-dv1394' 'gstreamer0.10-annodex' 'gstreamer0.10-gconf' 'gstreamer0.10-esd' 'gstreamer0.10-cdio' 'gstreamer0.10-dv' 'gstreamer0.10-soup' 'gstreamer0.10-pulse')
- conflicts=('gstreamer0.10-aalib' 'gstreamer0.10-wavpack' 'gstreamer0.10-shout2' 'gstreamer0.10-taglib' 'gstreamer0.10-libcaca' 'gstreamer0.10-libpng' 'gstreamer0.10-jpeg' 'gstreamer0.10-cairo' 'gstreamer0.10-flac' 'gstreamer0.10-speex' 'gstreamer0.10-gdkpixbuf' 'gstreamer0.10-dv1394' 'gstreamer0.10-annodex' 'gstreamer0.10-gconf' 'gstreamer0.10-esd' 'gstreamer0.10-cdio' 'gstreamer0.10-dv' 'gstreamer0.10-bad-plugins<0.10.7' 'gstreamer0.10-soup' 'gstreamer0.10-pulse')
- install=gstreamer0.10-good-plugins.install
-
- cd "${srcdir}/gst-plugins-good-${pkgver}"
- make -C sys DESTDIR="${pkgdir}" install
- make -C ext GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- install -m644 gconf/gstreamer-0.10.schemas "${pkgdir}/usr/share/gconf/schemas/gstreamer0.10-good-plugins.schemas"
-}
diff --git a/extra/gstreamer0.10-good/gstreamer0.10-good-plugins.install b/extra/gstreamer0.10-good/gstreamer0.10-good-plugins.install
deleted file mode 100644
index e343beea5..000000000
--- a/extra/gstreamer0.10-good/gstreamer0.10-good-plugins.install
+++ /dev/null
@@ -1,19 +0,0 @@
-pkgname=gstreamer0.10-good-plugins
-
-post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
-}
-
-pre_upgrade() {
- if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
- pre_remove
- fi
-}
-
-post_upgrade() {
- post_install
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
-}
diff --git a/extra/gvfs/gvfs-1.12.2-afp-g_clear_object.patch b/extra/gvfs/gvfs-1.12.2-afp-g_clear_object.patch
deleted file mode 100644
index 09e11d888..000000000
--- a/extra/gvfs/gvfs-1.12.2-afp-g_clear_object.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 01161473ed33ee682f340e6f12edcba5334475e0 Mon Sep 17 00:00:00 2001
-From: Matthias Clasen <mclasen@redhat.com>
-Date: Mon, 30 Apr 2012 06:09:30 -0400
-Subject: [PATCH] afp: Use g_clear_object properly
-
-g_clear_object expects the address of a pointer. A recent
-change in its definition makes gcc complain about this.
-(cherry picked from commit 7fe5deeae25f2396027f667d8960d2ec84c64716)
----
- daemon/gvfsafpvolume.c | 4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/daemon/gvfsafpvolume.c b/daemon/gvfsafpvolume.c
-index 3fd33f2..5207459 100644
---- a/daemon/gvfsafpvolume.c
-+++ b/daemon/gvfsafpvolume.c
-@@ -1082,7 +1082,7 @@ create_directory_get_filedir_parms_cb (GObject *source_object, GAsyncResult *res
- return;
-
- error:
-- g_clear_object (info);
-+ g_clear_object (&info);
- g_simple_async_result_take_error (simple, err);
- g_simple_async_result_complete (simple);
- g_object_unref (simple);
-@@ -3033,4 +3033,4 @@ g_vfs_afp_volume_read_from_fork_finish (GVfsAfpVolume *volume,
- *bytes_read = g_simple_async_result_get_op_res_gssize (simple);
-
- return TRUE;
--}
-\ No newline at end of file
-+}
---
-1.7.8.6
-
diff --git a/extra/iperf/PKGBUILD b/extra/iperf/PKGBUILD
deleted file mode 100644
index 85694c453..000000000
--- a/extra/iperf/PKGBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# $Id: PKGBUILD 153712 2012-03-18 13:40:58Z giovanni $
-# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
-# Contributor: Dale Blount <dale@archlinux.org>
-
-pkgname=iperf
-pkgver=2.0.5
-pkgrel=4
-pkgdesc="A tool to measure maximum TCP bandwidth"
-arch=('i686' 'x86_64')
-license=('custom')
-url="http://iperf.sourceforge.net"
-depends=('gcc-libs')
-source=("http://downloads.sourceforge.net/iperf/iperf-2.0.5.tar.gz"
- 'client.cpp.patch')
-md5sums=('44b5536b67719f4250faed632a3cd016'
- '82ce63c87cc8bb2f0f94069857ac14a9')
-
-build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- # FS#25159
- patch -Np1 -i ${srcdir}/client.cpp.patch
-
- ./configure --prefix=/usr \
- --enable-ipv6 \
- --enable-threads
- make
-}
-
-package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- make DESTDIR="${pkgdir}" install
- install -Dm644 COPYING "${pkgdir}/usr/share/licenses/iperf/LICENSE"
-}
diff --git a/extra/iperf/client.cpp.patch b/extra/iperf/client.cpp.patch
deleted file mode 100644
index 85f89e765..000000000
--- a/extra/iperf/client.cpp.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- a/src/Client.cpp 2010-04-01 22:23:17.000000000 +0200
-+++ b/src/Client.cpp 2011-07-19 11:03:42.000000000 +0200
-@@ -212,10 +212,10 @@
- char* readAt = mBuf;
-
- #if HAVE_THREAD
-- if ( !isUDP( mSettings ) ) {
-- RunTCP();
-- return;
-- }
-+// if ( !isUDP( mSettings ) ) {
-+// RunTCP();
-+// return;
-+// }
- #endif
-
- // Indicates if the stream is readable
diff --git a/extra/libreoffice/libreoffice.install b/extra/libreoffice/libreoffice.install
deleted file mode 100644
index e66b66f3d..000000000
--- a/extra/libreoffice/libreoffice.install
+++ /dev/null
@@ -1,47 +0,0 @@
-post_install() {
-
-xdg-icon-resource forceupdate --theme hicolor
-update-desktop-database -q
-update-mime-database usr/share/mime > /dev/null 2>&1
-
-echo " * see https://wiki.archlinux.org/index.php/LibreOffice"
-echo "-------------------------------------------------------------------"
-echo "LibreOffice has been split into several packages:"
-echo "- libreoffice-common"
-echo "- libreoffice-{base,calc,draw,impress,math,writer} - frontend applications"
-echo "- libreoffice-{gnome,kde4} - desktop integration plugins"
-echo "- libreoffice-{sdk,sdk-doc} - add-on and doc for programming using"
-echo " the LibreOffice APIs and for creating"
-echo " extensions (UNO components)."
-echo "-------------------------------------------------------------------"
-echo " * you need to install at least one libreoffice-langpack"
-echo " * you may want to pacman -Ss libreoffice-extensions"
-echo " to see what additional extensions are prepared to install"
-echo " * it's recommended to install {hunspell,mythes,hyphen}-xx pkg
- for spell checking"
-echo " * make sure you have installed some ttf font (ttf-dejavu recommended)"
-}
-
-post_upgrade() {
-# post_install $1
-xdg-icon-resource forceupdate --theme hicolor
-update-desktop-database -q
-update-mime-database usr/share/mime > /dev/null 2>&1
- if [ "`vercmp $2 3.4.2rc1`" -lt 0 ]; then
- # important upgrade notice
- echo "LibreOffice has been split into several packages:"
- echo "- libreoffice-common"
- echo "- libreoffice-{base,calc,draw,impress,math,writer} - frontend applications"
- echo "- libreoffice-{gnome,kde4} - desktop integration plugins"
- echo "- libreoffice-{sdk,sdk-doc} - add-on and doc for programming using"
- echo " the LibreOffice APIs and for creating"
- echo " extensions (UNO components)."
- echo "Now you need to install at least one libreoffice-langpack!"
- fi
-}
-
-post_remove() {
-update-desktop-database -q
-xdg-icon-resource forceupdate --theme hicolor
-update-mime-database usr/share/mime > /dev/null 2>&1
-}
diff --git a/extra/llvm/clang-plugin-loader-registry.patch b/extra/llvm/clang-plugin-loader-registry.patch
deleted file mode 100644
index f46eb9fce..000000000
--- a/extra/llvm/clang-plugin-loader-registry.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -upr llvm-2.7.orig/autoconf/ExportMap.map llvm-2.7/autoconf/ExportMap.map
---- llvm-2.7.orig/autoconf/ExportMap.map 2010-02-25 00:33:41.000000000 +0200
-+++ llvm-2.7/autoconf/ExportMap.map 2010-05-10 14:14:22.000000000 +0300
-@@ -2,6 +2,7 @@
- global: main;
- __progname;
- environ;
-+ _ZN4llvm8RegistryIN5clang14FrontendActionENS_14RegistryTraitsIS2_EEE4HeadE;
-
- local: *;
- };
diff --git a/extra/llvm/fix-gold-lto-linking.patch b/extra/llvm/fix-gold-lto-linking.patch
deleted file mode 100644
index 84d166471..000000000
--- a/extra/llvm/fix-gold-lto-linking.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -upr llvm-3.0.src.orig/tools/gold/Makefile llvm-3.0.src/tools/gold/Makefile
---- llvm-3.0.src.orig/tools/gold/Makefile 2011-05-31 23:00:45.000000000 +0300
-+++ llvm-3.0.src/tools/gold/Makefile 2011-12-04 22:06:59.000000000 +0200
-@@ -26,6 +26,6 @@ LINK_COMPONENTS := support
- # Because off_t is used in the public API, the largefile parts are required for
- # ABI compatibility.
- CXXFLAGS+=-I$(BINUTILS_INCDIR) -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
--CXXFLAGS+=$(SharedLibDir)/$(SharedPrefix)LTO$(SHLIBEXT)
-+CXXFLAGS+=-L $(SharedLibDir) -lLTO
-
- include $(LEVEL)/Makefile.common
diff --git a/extra/mail-notification/PKGBUILD b/extra/mail-notification/PKGBUILD
deleted file mode 100644
index b7789212a..000000000
--- a/extra/mail-notification/PKGBUILD
+++ /dev/null
@@ -1,85 +0,0 @@
-# $Id: PKGBUILD 146721 2012-01-16 19:51:02Z dreisner $
-# Maintainer: Roman Kyrylych <roman@archlinux.org>
-
-pkgname=mail-notification
-pkgver=5.4
-pkgrel=10
-pkgdesc="Tray icon application that informs you if you have new mail"
-arch=('i686' 'x86_64')
-url="http://www.nongnu.org/mailnotify/"
-license=('GPL3' 'FDL')
-depends=('gmime' 'libnotify' 'gnome-keyring' 'hicolor-icon-theme' 'notification-daemon' 'libgnome')
-makedepends=('gob2' 'intltool' 'evolution' 'gnome-doc-utils' 'gtk2')
-options=('!libtool' '!emptydirs')
-install=mail-notification.install
-source=(http://savannah.nongnu.org/download/mailnotify-orig/${pkgname}-${pkgver}.tar.bz2
- dont-update-cache.patch
- remove-ubuntu-special-case.patch
- mail-notification-5.4-evolution.patch
- mail-notification-5.4-sasl_encode64.patch
- mail-notification-5.4-evolution-gtkhtml.patch
- mail-notification-5.4-camel_headers.patch
- mail-notification-5.4-icons.patch
- mail-notification-5.4-weak.patch
- mail-notification-5.4-popup-attach.patch
- mail-notification-5.4-kde-trayicon.patch
- mail-notification-5.4-evolution-3-0-support.patch
- mail-notification-5.4-gtk3-support.patch
- mail-notification-5.4-add-fallback-icon.patch
- mail-notification-5.4-gmime.patch
- mail-notification-5.4-libx11.patch)
-md5sums=('c8dc33a61251acb5474e56eab6b18f43'
- '6007bc30e789dab0a8282038e0335eb9'
- '9cadd61bbd9c324b2916ec980231e0f2'
- 'aa6f80820899f904c25988772f70ade9'
- '125513ed059f62469377eb0ab794dbed'
- 'c595a3962ab13a65be24a941e28faa9c'
- 'f79939f593b2e8659e302df72c2b54b1'
- '244b7ef2aec7656e8df390be87c10e2b'
- '31bde95dfd39449959d8b3316f91429c'
- 'cdead6a88d1779f69a5f40dc75d5cb84'
- 'c7991b831834724eddc1c6802c3e06a6'
- 'b370b1085ebb2814bd5d345a6d2b45ea'
- '1ba948759110787dd57097cff157b75a'
- '09df61b4dc29c676ac81ff9054e840ac'
- '0944695e9b9b30f39028f85c83c6a7e2'
- 'c3f643ef16aab3b4fe9ff5b333bff41a')
-
-build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- patch -Np0 -i "${srcdir}/dont-update-cache.patch"
- patch -Np0 -i "${srcdir}/remove-ubuntu-special-case.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-evolution.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-sasl_encode64.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-evolution-gtkhtml.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-camel_headers.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-icons.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-weak.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-popup-attach.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-kde-trayicon.patch"
- patch -Np0 -i "${srcdir}/mail-notification-5.4-evolution-3-0-support.patch"
- patch -Np0 -i "${srcdir}/mail-notification-5.4-gtk3-support.patch"
- patch -Np0 -i "${srcdir}/mail-notification-5.4-add-fallback-icon.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-gmime.patch"
- patch -Np1 -i "${srcdir}/mail-notification-5.4-libx11.patch"
-
- gtk-builder-convert ui/mailbox-properties-dialog.glade ui/mailbox-properties-dialog.ui
- gtk-builder-convert ui/properties-dialog.glade ui/properties-dialog.ui
-
- ./jb configure prefix=/usr sysconfdir=/etc \
- localstatedir=/var destdir="${pkgdir}" \
- gconf-schemas-dir=/etc/gconf/schemas install-gconf-schemas=no \
- cflags="${CFLAGS}" cppflags="${CXXFLAGS}" ldflags="${LDFLAGS}" \
- library-mode=0755
- ./jb build
- GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 ./jb install
-
- rm -f "${pkgdir}/usr/share/mail-notification/"*.glade
- install -m644 ui/mailbox-properties-dialog.ui "${pkgdir}/usr/share/mail-notification/"
- install -m644 ui/properties-dialog.ui "${pkgdir}/usr/share/mail-notification/"
-
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema ${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas --domain mail-notification ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
-}
diff --git a/extra/mail-notification/dont-update-cache.patch b/extra/mail-notification/dont-update-cache.patch
deleted file mode 100644
index 81216835e..000000000
--- a/extra/mail-notification/dont-update-cache.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- jbsrc/jb.c.~1~ 2008-03-20 16:53:02.000000000 +0100
-+++ jbsrc/jb.c 2008-03-26 20:51:45.641363619 +0100
-@@ -327,7 +327,6 @@
- jb_package_add_resources (void)
- {
- JBGroup *group;
-- JBRule *rule;
- JBObject *object;
-
- if (jb_variable_get_bool("compile-warnings"))
-@@ -362,11 +361,6 @@
- if (jb_variable_get_bool("hotmail"))
- jb_group_add_data_file(group, "hotmail.png", "$pkgdatadir");
-
-- rule = jb_rule_new();
-- jb_rule_set_install_message(rule, "updating the GTK+ icon cache");
-- jb_rule_add_install_command(rule, "-gtk-update-icon-cache -f -t $datadir/icons/hicolor");
-- jb_group_add_resource(group, JB_GROUP_RESOURCE(rule));
--
- jb_group_add(group);
-
- /*** data ******************************************************************/
diff --git a/extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch b/extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch
deleted file mode 100644
index 41c28e870..000000000
--- a/extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- src/mn-stock.c.orig 2011-02-17 17:42:39.886767087 +0100
-+++ src/mn-stock.c 2011-02-17 17:49:37.415541177 +0100
-@@ -86,6 +86,13 @@
- gtk_icon_source_set_icon_name(icon_source, icons[i].icon_name);
- gtk_icon_set_add_source(icon_set, icon_source);
- gtk_icon_source_free(icon_source);
-+
-+ /* Add a fallback icon */
-+ icon_source = gtk_icon_source_new();
-+ gtk_icon_source_set_icon_name(icon_source, "mail-notification");
-+ gtk_icon_source_set_state_wildcarded(icon_source, TRUE);
-+ gtk_icon_set_add_source(icon_set, icon_source);
-+ gtk_icon_source_free(icon_source);
- }
- else if (icons[i].source_stock_id)
- {
diff --git a/extra/mail-notification/mail-notification-5.4-camel_headers.patch b/extra/mail-notification/mail-notification-5.4-camel_headers.patch
deleted file mode 100644
index 861e3d215..000000000
--- a/extra/mail-notification/mail-notification-5.4-camel_headers.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -Nrbu mail-notification-5.4/build/src/mn-evolution-message.c mail-notification-5.4-OK/build/src/mn-evolution-message.c
---- mail-notification-5.4/build/src/mn-evolution-message.c 2008-05-22 19:47:51.000000000 +0400
-+++ mail-notification-5.4-OK/build/src/mn-evolution-message.c 2010-05-04 18:13:31.000000000 +0400
-@@ -25,7 +25,7 @@
- #line 24 "src/mn-evolution-message.gob"
-
- #include <glib/gi18n.h>
--#include <camel/camel-folder-summary.h>
-+#include <camel/camel.h>
- #include "mn-evolution-mailbox.h"
- #include "mn-message-private.h"
- #include "mn-evolution-client.h"
-diff -Nrbu mail-notification-5.4/build/src/mn-evolution-server.c mail-notification-5.4-OK/build/src/mn-evolution-server.c
---- mail-notification-5.4/build/src/mn-evolution-server.c 2010-05-04 18:12:56.000000000 +0400
-+++ mail-notification-5.4-OK/build/src/mn-evolution-server.c 2010-05-04 18:13:39.000000000 +0400
-@@ -28,7 +28,7 @@
- #include <libintl.h>
- #include <gobject/gvaluecollector.h>
- #include <libedataserver/eds-version.h>
--#include <camel/camel-folder.h>
-+#include <camel/camel.h>
- #if EDS_CHECK_VERSION(2,29,0)
- #include <shell/e-shell.h>
- #include <mail/e-mail-browser.h>
-diff -Nrbu mail-notification-5.4/src/mn-evolution-plugin.c mail-notification-5.4-OK/src/mn-evolution-plugin.c
---- mail-notification-5.4/src/mn-evolution-plugin.c 2010-05-04 18:12:56.000000000 +0400
-+++ mail-notification-5.4-OK/src/mn-evolution-plugin.c 2010-05-04 18:13:20.000000000 +0400
-@@ -24,7 +24,7 @@
- #include <dbus/dbus.h>
- #include <dbus/dbus-glib-lowlevel.h>
- #include <dbus/dbus-glib-bindings.h>
--#include <camel/camel-folder.h>
-+#include <camel/camel.h>
- #include <mail/em-event.h>
- #include <mail/mail-tools.h>
- #include "mn-evolution.h"
diff --git a/extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch b/extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch
deleted file mode 100644
index 51938b5fa..000000000
--- a/extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch
+++ /dev/null
@@ -1,122 +0,0 @@
---- jbsrc/lib/src/extras/jb-evolution-plugin.c.evolution30 2011-02-02 00:09:33.945696868 +0100
-+++ jbsrc/lib/src/extras/jb-evolution-plugin.c 2011-02-02 00:28:09.096275028 +0100
-@@ -41,7 +41,7 @@
- if (! minversion)
- minversion = "2.12";
-
-- packages = g_strdup_printf("evolution-plugin >= %s libgtkhtml-3.15 gtkhtml-editor-3.14", minversion);
-+ packages = g_strdup_printf("evolution-plugin-3.0 >= %s libgtkhtml-4.0 gtkhtml-editor-4.0", minversion);
- result = jb_check_packages("Evolution", "evolution-plugin", packages);
- g_free(packages);
-
-@@ -53,7 +53,7 @@
- char *plugindir;
-
- jb_message_checking("for the Evolution plugin directory");
-- plugindir = jb_get_package_variable("evolution-plugin", "plugindir");
-+ plugindir = jb_get_package_variable("evolution-plugin-3.0", "plugindir");
- jb_message_result_string(plugindir ? plugindir : "not found");
-
- if (! plugindir)
---- src/mn-evolution-plugin.c.orig 2011-02-09 00:07:37.422002566 +0100
-+++ src/mn-evolution-plugin.c 2011-02-09 00:12:43.652678682 +0100
-@@ -25,6 +25,7 @@
- #include <dbus/dbus-glib-lowlevel.h>
- #include <dbus/dbus-glib-bindings.h>
- #include <camel/camel.h>
-+#include <libedataserver/eds-version.h>
- #include <mail/em-event.h>
- #include <mail/mail-tools.h>
- #include "mn-evolution.h"
-@@ -240,7 +241,11 @@
- EMEventTargetFolder *folder)
- {
- if (evo_server)
-+#if EDS_CHECK_VERSION(3,1,0)
-+ mn_evolution_server_folder_changed(evo_server, e_mail_folder_uri_build(folder->store, folder->folder_name));
-+#else
- mn_evolution_server_folder_changed(evo_server, folder->uri);
-+#endif
- }
-
- void
-@@ -249,10 +250,16 @@
- {
- if (evo_server)
- {
-- char *url;
-+#if EDS_CHECK_VERSION(2,91,0)
-+ const char *url = camel_folder_get_uri(message->folder);
-+#else
-+ char *url = mail_tools_folder_to_url(message->folder);
-+#endif
-
-- url = mail_tools_folder_to_url(message->folder);
- mn_evolution_server_message_reading(evo_server, url);
-+
-+#if !EDS_CHECK_VERSION(2,91,0)
- g_free(url);
-+#endif
- }
- }
---- build/src/mn-evolution-server.c.orig 2011-02-09 00:17:38.850944227 +0100
-+++ build/src/mn-evolution-server.c 2011-02-09 22:21:54.155346478 +0100
-@@ -496,11 +496,15 @@
-
- if (! folder)
- {
-- folder = mail_tool_uri_to_folder(uri, 0,
- #if EDS_CHECK_VERSION(2,91,0)
-- NULL,
-+ static EMailSession * session = NULL;
-+ if (!session)
-+ session = e_mail_session_new();
-+
-+ folder = e_mail_session_uri_to_folder_sync(session, uri, 0, NULL, NULL);
-+#else
-+ folder = mail_tool_uri_to_folder(uri, 0, NULL);
- #endif
-- NULL);
- if (folder)
- self_cache_folder(uri, folder);
- else
-@@ -677,7 +681,12 @@
- folder = self_lookup_folder(folder_uri, err);
- if (folder)
- {
-+#if EDS_CHECK_VERSION(3,1,0)
-+ *ret = g_strdup(camel_folder_get_display_name(folder));
-+#else
- *ret = g_strdup(camel_folder_get_name(folder));
-+#endif
-+
- #if EDS_CHECK_VERSION(2,31,0)
- g_object_unref(folder);
- #else
-@@ -725,8 +734,12 @@
- shell = e_shell_get_default ();
- shell_backend = e_shell_get_backend_by_name (shell, "mail");
-
-- browser = e_mail_browser_new (shell_backend);
-+ browser = e_mail_browser_new (E_MAIL_BACKEND(shell_backend));
-+#if EDS_CHECK_VERSION(3,1,0)
-+ e_mail_reader_set_folder (E_MAIL_READER (browser), folder);
-+#else
- e_mail_reader_set_folder (E_MAIL_READER (browser), folder, folder_uri);
-+#endif
- e_mail_reader_set_message (E_MAIL_READER (browser), message_uid);
- gtk_widget_show (browser);
- #else
---- build/src/mn-evolution-folder-tree-server.c.orig 2011-06-17 22:01:49.226886994 +0200
-+++ build/src/mn-evolution-folder-tree-server.c 2011-06-18 00:34:23.046889847 +0200
-@@ -444,7 +444,9 @@
- {
- #line 61 "src/mn-evolution-folder-tree-server.gob"
-
--#if EDS_CHECK_VERSION(2,91,0)
-+#if EDS_CHECK_VERSION(3,1,0)
-+ selfp->tree = em_folder_tree_new(NULL, NULL);
-+#elif EDS_CHECK_VERSION(2,91,0)
- selfp->session = e_mail_session_new();
- selfp->tree = em_folder_tree_new(selfp->session);
- #elif EDS_CHECK_VERSION(2,29,0)
diff --git a/extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch b/extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch
deleted file mode 100644
index 283ef36d6..000000000
--- a/extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nrbu mail-notification-5.4/jbsrc/lib/src/extras/jb-evolution-plugin.c mail-notification-5.4-OK/jbsrc/lib/src/extras/jb-evolution-plugin.c
---- mail-notification-5.4/jbsrc/lib/src/extras/jb-evolution-plugin.c 2008-04-27 18:47:43.000000000 +0400
-+++ mail-notification-5.4-OK/jbsrc/lib/src/extras/jb-evolution-plugin.c 2009-08-21 19:48:22.000000000 +0400
-@@ -41,7 +41,7 @@
- if (! minversion)
- minversion = "2.12";
-
-- packages = g_strdup_printf("evolution-plugin >= %s", minversion);
-+ packages = g_strdup_printf("evolution-plugin >= %s libgtkhtml-3.15 gtkhtml-editor-3.14", minversion);
- result = jb_check_packages("Evolution", "evolution-plugin", packages);
- g_free(packages);
-
diff --git a/extra/mail-notification/mail-notification-5.4-evolution.patch b/extra/mail-notification/mail-notification-5.4-evolution.patch
deleted file mode 100644
index 87514c22d..000000000
--- a/extra/mail-notification/mail-notification-5.4-evolution.patch
+++ /dev/null
@@ -1,244 +0,0 @@
-diff -Nrbu mail-notification-5.4/build/src/mn-evolution-folder-tree-server.c mail-notification-5.4-OK/build/src/mn-evolution-folder-tree-server.c
---- mail-notification-5.4/build/src/mn-evolution-folder-tree-server.c 2008-05-22 19:47:48.000000000 +0400
-+++ mail-notification-5.4-OK/build/src/mn-evolution-folder-tree-server.c 2010-10-12 16:50:15.000000000 +0400
-@@ -25,7 +25,10 @@
- #line 24 "src/mn-evolution-folder-tree-server.gob"
-
- #include <dbus/dbus.h>
-+#include <libedataserver/eds-version.h>
-+#if !EDS_CHECK_VERSION(2,29,0)
- #include <mail/mail-component.h>
-+#endif
- #include <mail/em-folder-tree.h>
- #include "mn-evolution-plugin.h"
- #include "mn-evolution.h"
-@@ -441,10 +444,17 @@
- {
- #line 61 "src/mn-evolution-folder-tree-server.gob"
-
-+#if EDS_CHECK_VERSION(2,91,0)
-+ selfp->session = e_mail_session_new();
-+ selfp->tree = em_folder_tree_new(selfp->session);
-+#elif EDS_CHECK_VERSION(2,29,0)
-+ selfp->tree = em_folder_tree_new();
-+#else
- EMFolderTreeModel *model;
-
- model = mail_component_peek_tree_model(mail_component_peek());
- selfp->tree = em_folder_tree_new_with_model(model);
-+#endif
-
- selfp->plug = gtk_plug_new((GdkNativeWindow) selfp->id);
- gtk_container_add(GTK_CONTAINER(selfp->plug), selfp->tree);
-@@ -469,6 +479,10 @@
- {
- #line 80 "src/mn-evolution-folder-tree-server.gob"
-
-+#if EDS_CHECK_VERSION(2,91,0)
-+ g_object_unref(selfp->session);
-+ selfp->session = NULL;
-+#endif
- g_signal_handlers_disconnect_by_func(selfp->plug, self_plug_destroy_h, self);
- }}
- #line 475 "mn-evolution-folder-tree-server.c"
-diff -Nrbu mail-notification-5.4/build/src/mn-evolution-server.c mail-notification-5.4-OK/build/src/mn-evolution-server.c
---- mail-notification-5.4/build/src/mn-evolution-server.c 2008-05-22 19:47:48.000000000 +0400
-+++ mail-notification-5.4-OK/build/src/mn-evolution-server.c 2010-10-12 16:50:40.000000000 +0400
-@@ -27,12 +27,22 @@
- #include <stdio.h>
- #include <libintl.h>
- #include <gobject/gvaluecollector.h>
-+#include <libedataserver/eds-version.h>
- #include <camel/camel-folder.h>
-+#if EDS_CHECK_VERSION(2,29,0)
-+#include <shell/e-shell.h>
-+#include <mail/e-mail-browser.h>
-+#else
- #include <mail/em-folder-view.h>
- #include <mail/em-format.h>
- #include <mail/em-message-browser.h>
-+#endif
- #include <mail/em-utils.h>
-+#if EDS_CHECK_VERSION(2,91,0)
-+#include <mail/e-mail-session.h>
-+#else
- #include <mail/mail-session.h>
-+#endif
- #include <mail/mail-tools.h>
- #include "mn-evolution.h"
- #include "mn-evolution-folder-tree-server.h"
-@@ -391,10 +397,18 @@
- info = g_new0(FolderInfo, 1);
- info->uri = g_strdup(uri);
- info->folder = folder;
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_object_ref(folder);
-+#else
- camel_object_ref(folder);
-+#endif
-
- /* uncache the folder when it is deleted */
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_signal_connect(folder, "deleted", G_CALLBACK(self_folder_deleted_cb), info);
-+#else
- camel_object_hook_event(folder, "deleted", self_folder_deleted_cb, info);
-+#endif
-
- g_hash_table_replace(folders, info->uri, info);
- }}
-@@ -413,8 +427,13 @@
- {
- #line 105 "src/mn-evolution-server.gob"
-
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_signal_handlers_disconnect_by_func(info->folder, self_folder_deleted_cb, info);
-+ g_object_unref(info->folder);
-+#else
- camel_object_unhook_event(info->folder, "deleted", self_folder_deleted_cb, info);
- camel_object_unref(info->folder);
-+#endif
- g_free(info->uri);
- g_free(info);
- }}
-@@ -461,7 +480,11 @@
- if (info)
- {
- folder = info->folder;
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_object_ref(folder);
-+#else
- camel_object_ref(folder);
-+#endif
- }
- }
- else
-@@ -469,7 +492,11 @@
-
- if (! folder)
- {
-- folder = mail_tool_uri_to_folder(uri, 0, NULL);
-+ folder = mail_tool_uri_to_folder(uri, 0,
-+#if EDS_CHECK_VERSION(2,91,0)
-+ NULL,
-+#endif
-+ NULL);
- if (folder)
- self_cache_folder(uri, folder);
- else
-@@ -595,14 +622,23 @@
-
- for (i = 0; i < summary->len; i++)
- {
-+#if EDS_CHECK_VERSION(2,23,5)
-+ char *uid = summary->pdata[i];
-+ CamelMessageInfo *info = camel_folder_get_message_info(folder, uid);
-+#else
- CamelMessageInfo *info = summary->pdata[i];
-+#endif
-
- if ((camel_message_info_flags(info) & CAMEL_MESSAGE_SEEN) == 0)
- g_ptr_array_add(*ret, self_camel_message_info_to_dbus_struct(info));
- }
-
- camel_folder_free_summary(folder, summary);
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_object_unref(folder);
-+#else
- camel_object_unref(folder);
-+#endif
- }
-
- GDK_THREADS_LEAVE();
-@@ -638,7 +674,11 @@
- if (folder)
- {
- *ret = g_strdup(camel_folder_get_name(folder));
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_object_unref(folder);
-+#else
- camel_object_unref(folder);
-+#endif
- }
-
- GDK_THREADS_LEAVE();
-@@ -673,6 +713,19 @@
- folder = self_lookup_folder(folder_uri, err);
- if (folder)
- {
-+#if EDS_CHECK_VERSION(2,29,0)
-+ EShell *shell;
-+ EShellBackend *shell_backend;
-+ GtkWidget *browser;
-+
-+ shell = e_shell_get_default ();
-+ shell_backend = e_shell_get_backend_by_name (shell, "mail");
-+
-+ browser = e_mail_browser_new (shell_backend);
-+ e_mail_reader_set_folder (E_MAIL_READER (browser), folder, folder_uri);
-+ e_mail_reader_set_message (E_MAIL_READER (browser), message_uid);
-+ gtk_widget_show (browser);
-+#else
- GtkWidget *browser;
-
- /* modelled after Evolution's handleuri_got_folder() */
-@@ -683,8 +736,13 @@
- em_folder_view_set_folder((EMFolderView *) browser, folder, folder_uri);
- em_folder_view_set_message((EMFolderView *) browser, message_uid, FALSE);
- gtk_widget_show(((EMMessageBrowser *) browser)->window);
-+#endif
-
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_object_unref(folder);
-+#else
- camel_object_unref(folder);
-+#endif
- }
-
- GDK_THREADS_LEAVE();
-@@ -721,7 +779,11 @@
- if (folder)
- {
- status = camel_folder_set_message_flags(folder, message_uid, flags, flags);
-+#if EDS_CHECK_VERSION(2,31,0)
-+ g_object_unref(folder);
-+#else
- camel_object_unref(folder);
-+#endif
-
- if (! status)
- g_set_error(err,
-diff -Nrbu mail-notification-5.4/src/mn-evolution-plugin.c mail-notification-5.4-OK/src/mn-evolution-plugin.c
---- mail-notification-5.4/src/mn-evolution-plugin.c 2008-05-22 19:45:35.000000000 +0400
-+++ mail-notification-5.4-OK/src/mn-evolution-plugin.c 2010-10-12 16:50:15.000000000 +0400
-@@ -204,7 +204,7 @@
- }
-
- int
--e_plugin_lib_enable (EPluginLib *ep, int enable)
-+e_plugin_lib_enable (EPlugin *ep, int enable)
- {
- static gboolean enabled = FALSE;
- GError *err = NULL;
---- mail-notification-5.4/build/src/mn-evolution-folder-tree-server-private.h.orig 2010-11-13 13:55:01.571934066 +0100
-+++ mail-notification-5.4/build/src/mn-evolution-folder-tree-server-private.h 2010-11-13 13:56:07.019487418 +0100
-@@ -4,6 +4,10 @@
- #define __MN_EVOLUTION_FOLDER_TREE_SERVER_PRIVATE_H__
-
- #include "mn-evolution-folder-tree-server.h"
-+#include <libedataserver/eds-version.h>
-+#if EDS_CHECK_VERSION(2,91,0)
-+#include <mail/e-mail-session.h>
-+#endif
-
- #ifdef __cplusplus
- extern "C" {
-@@ -23,6 +23,9 @@
- #line 41 "src/mn-evolution-folder-tree-server.gob"
- GtkWidget * tree;
- #line 26 "mn-evolution-folder-tree-server-private.h"
-+#if EDS_CHECK_VERSION(2,91,0)
-+ EMailSession * session;
-+#endif
- };
-
- #ifdef __cplusplus
diff --git a/extra/mail-notification/mail-notification-5.4-gmime.patch b/extra/mail-notification/mail-notification-5.4-gmime.patch
deleted file mode 100644
index 5f516a46b..000000000
--- a/extra/mail-notification/mail-notification-5.4-gmime.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-diff -Nrbu mail-notification-5.4/build/src/mn-base-mbox-mailbox-backend.c mail-notification-5.4-OK/build/src/mn-base-mbox-mailbox-backend.c
---- mail-notification-5.4/build/src/mn-base-mbox-mailbox-backend.c 2008-12-23 14:48:49.000000000 +0300
-+++ mail-notification-5.4-OK/build/src/mn-base-mbox-mailbox-backend.c 2008-12-23 14:48:28.000000000 +0300
-@@ -265,7 +265,7 @@
- mime_message = g_mime_parser_construct_message(parser);
- if (mime_message)
- {
-- if (g_mime_message_get_header(mime_message, "X-Mozilla-Status"))
-+ if (g_mime_object_get_header(mime_message, "X-Mozilla-Status"))
- {
- #if WITH_MOZILLA
- type = MN_TYPE_MOZILLA_MAILBOX_BACKEND;
-diff -Nrbu mail-notification-5.4/build/src/mn-mozilla-mailbox-backend.c mail-notification-5.4-OK/build/src/mn-mozilla-mailbox-backend.c
---- mail-notification-5.4/build/src/mn-mozilla-mailbox-backend.c 2008-12-23 14:48:49.000000000 +0300
-+++ mail-notification-5.4-OK/build/src/mn-mozilla-mailbox-backend.c 2008-12-23 14:46:47.000000000 +0300
-@@ -167,7 +167,7 @@
-
- const char *header;
-
-- header = g_mime_message_get_header(mime_message, header_name);
-+ header = g_mime_object_get_header(mime_message, header_name);
- if (header && mn_str_ishex(header))
- return strtol(header, NULL, 16);
- else
-diff -Nrbu mail-notification-5.4/jbsrc/jb.c mail-notification-5.4-OK/jbsrc/jb.c
---- mail-notification-5.4/jbsrc/jb.c 2008-05-22 19:47:04.000000000 +0400
-+++ mail-notification-5.4-OK/jbsrc/jb.c 2008-12-23 14:43:09.000000000 +0300
-@@ -166,7 +166,7 @@
- jb_require_packages("GNOME", "gnome", "glib-2.0 >= 2.14 gthread-2.0 gconf-2.0 >= 2.4.0 gtk+-2.0 >= 2.12 libgnomeui-2.0 >= 2.14.0 gnome-vfs-2.0 libglade-2.0 libxml-2.0 libnotify >= 0.4.1");
- jb_require_packages("D-Bus", "dbus", "dbus-glib-1");
-
-- jb_check_packages_for_options("GMime", "gmime", "gmime-2.0 >= 2.2.7",
-+ jb_check_packages_for_options("GMime", "gmime", "gmime-2.6",
- "hotmail",
- "imap",
- "maildir",
-diff -Nrbu mail-notification-5.4/src/mn-message-mime.c mail-notification-5.4-OK/src/mn-message-mime.c
---- mail-notification-5.4/src/mn-message-mime.c 2008-05-22 19:45:35.000000000 +0400
-+++ mail-notification-5.4-OK/src/mn-message-mime.c 2008-12-23 14:46:35.000000000 +0300
-@@ -33,12 +33,12 @@
- g_return_val_if_fail(GMIME_IS_MESSAGE(mime_message), FALSE);
-
- /* SpamAssassin */
-- spam = g_mime_message_get_header(mime_message, "X-Spam-Status");
-+ spam = g_mime_object_get_header(mime_message, "X-Spam-Status");
- if (spam && mn_ascii_str_case_has_prefix(spam, "yes"))
- return TRUE;
-
- /* bogofilter */
-- spam = g_mime_message_get_header(mime_message, "X-Bogosity");
-+ spam = g_mime_object_get_header(mime_message, "X-Bogosity");
- if (spam && mn_ascii_str_case_has_prefix(spam, "yes"))
- return TRUE;
-
-@@ -89,7 +89,7 @@
- {
- const char *status;
-
-- status = g_mime_message_get_header(mime_message, "Status");
-+ status = g_mime_object_get_header(mime_message, "Status");
- if (status && strchr(status, 'R'))
- return NULL; /* the message was read */
- else if (status && strchr(status, 'O'))
diff --git a/extra/mail-notification/mail-notification-5.4-gtk3-support.patch b/extra/mail-notification/mail-notification-5.4-gtk3-support.patch
deleted file mode 100644
index 6a29f8622..000000000
--- a/extra/mail-notification/mail-notification-5.4-gtk3-support.patch
+++ /dev/null
@@ -1,1416 +0,0 @@
---- build/src/mn-dialog.c.orig 2011-02-02 23:08:09.816659245 +0100
-+++ build/src/mn-dialog.c 2011-02-02 23:09:16.988113774 +0100
-@@ -106,8 +106,7 @@
- #line 27 "src/mn-dialog.gob"
-
- gtk_container_set_border_width(GTK_CONTAINER(self), 5);
-- gtk_dialog_set_has_separator(GTK_DIALOG(self), FALSE);
-- gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(self)->vbox), 2);
-+ gtk_box_set_spacing(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(self))), 2);
-
- #line 113 "mn-dialog.c"
- }
---- jbsrc/jb.c.orig 2011-02-02 23:40:33.567924712 +0100
-+++ jbsrc/jb.c 2011-02-02 23:39:39.680803618 +0100
-@@ -163,7 +163,7 @@
- {
- jb_check_glibc();
-
-- jb_require_packages("GNOME", "gnome", "glib-2.0 >= 2.14 gthread-2.0 gconf-2.0 >= 2.4.0 gtk+-2.0 >= 2.12 libgnomeui-2.0 >= 2.14.0 gnome-vfs-2.0 libglade-2.0 libxml-2.0 libnotify >= 0.4.1");
-+ jb_require_packages("GNOME", "gnome", "glib-2.0 >= 2.14 gthread-2.0 gconf-2.0 >= 2.4.0 gtk+-3.0 libgnome-2.0 >= 2.14.0 gnome-vfs-2.0 libxml-2.0 libnotify >= 0.4.1");
- jb_require_packages("D-Bus", "dbus", "dbus-glib-1");
-
- jb_check_packages_for_options("GMime", "gmime", "gmime-2.6",
---- build/src/mn-file-chooser-button.c.orig 2011-02-02 23:38:01.503049512 +0100
-+++ build/src/mn-file-chooser-button.c 2011-02-02 23:38:16.988222034 +0100
-@@ -358,7 +358,7 @@
- g_signal_connect(selfp->dialog, "response", G_CALLBACK(self_response_h), self);
- }
-
-- if (! GTK_WIDGET_VISIBLE(selfp->dialog))
-+ if (! gtk_widget_get_visible(selfp->dialog))
- {
- GtkWindow *parent;
-
---- build/src/mn-sound-player.c.orig 2011-02-02 23:55:02.436500397 +0100
-+++ build/src/mn-sound-player.c 2011-02-02 23:55:09.125141055 +0100
-@@ -27,7 +27,7 @@
- #include <sys/types.h>
- #include <signal.h>
- #include <glib/gi18n.h>
--#include <gnome.h>
-+#include <libgnome/libgnome.h>
- #include "mn-conf.h"
- #include "mn-locked-callback.h"
- #include "mn-util.h"
---- build/src/mn-file-chooser-button.c.orig 2011-02-02 23:55:21.857457045 +0100
-+++ build/src/mn-file-chooser-button.c 2011-02-02 23:55:30.422996901 +0100
-@@ -25,7 +25,7 @@
- #line 39 "src/mn-file-chooser-button.gob"
-
- #include <glib/gi18n.h>
--#include <gnome.h>
-+#include <libgnome/libgnome.h>
- #include "mn-util.h"
-
- #line 32 "mn-file-chooser-button.c"
---- build/src/mn-message.c.orig 2011-02-02 23:55:41.160420099 +0100
-+++ build/src/mn-message.c 2011-02-02 23:55:47.755065850 +0100
-@@ -26,7 +26,7 @@
-
- #include <errno.h>
- #include <glib/gi18n.h>
--#include <gnome.h>
-+#include <libgnome/libgnome.h>
- #include <libgnomevfs/gnome-vfs.h>
- #include "mn-conf.h"
- #include "mn-util.h"
---- build/src/mn-file-chooser-button.c.orig 2011-02-03 00:15:16.178407712 +0100
-+++ build/src/mn-file-chooser-button.c 2011-02-03 00:18:17.865681563 +0100
-@@ -463,6 +463,7 @@
-
- GDK_THREADS_ENTER();
-
-+#if 0
- if (results)
- {
- GnomeVFSGetFileInfoResult *result = results->data;
-@@ -494,6 +495,7 @@
- }
- }
- }
-+#endif
-
- selfp->async_handle = NULL;
- g_object_unref(self);
---- build/src/mn-evolution-folder-tree-server.c.orig 2011-02-07 20:17:09.574274620 +0100
-+++ build/src/mn-evolution-folder-tree-server.c 2011-02-07 20:23:25.196053994 +0100
-@@ -25,6 +25,7 @@
- #line 24 "src/mn-evolution-folder-tree-server.gob"
-
- #include <dbus/dbus.h>
-+#include <gtk/gtkx.h>
- #include <libedataserver/eds-version.h>
- #if !EDS_CHECK_VERSION(2,29,0)
- #include <mail/mail-component.h>
-@@ -71,7 +72,7 @@
- static void mn_evolution_folder_tree_server_finalize (MNEvolutionFolderTreeServer * self);
- #line 70 "mn-evolution-folder-tree-server.c"
- #line 84 "src/mn-evolution-folder-tree-server.gob"
--static void mn_evolution_folder_tree_server_plug_destroy_h (GtkObject * object, gpointer user_data);
-+static void mn_evolution_folder_tree_server_plug_destroy_h (GtkWidget * object, gpointer user_data);
- #line 73 "mn-evolution-folder-tree-server.c"
- #line 104 "src/mn-evolution-folder-tree-server.gob"
- static void mn_evolution_folder_tree_server_selected_h (EMFolderTree * tree, const char * full_name, const char * uri, guint32 flags, gpointer user_data);
-@@ -456,7 +457,7 @@
- selfp->tree = em_folder_tree_new_with_model(model);
- #endif
-
-- selfp->plug = gtk_plug_new((GdkNativeWindow) selfp->id);
-+ selfp->plug = gtk_plug_new((Window) selfp->id);
- gtk_container_add(GTK_CONTAINER(selfp->plug), selfp->tree);
- gtk_widget_show_all(selfp->plug);
-
-@@ -490,7 +491,7 @@
-
- #line 84 "src/mn-evolution-folder-tree-server.gob"
- static void
--mn_evolution_folder_tree_server_plug_destroy_h (GtkObject * object, gpointer user_data)
-+mn_evolution_folder_tree_server_plug_destroy_h (GtkWidget * object, gpointer user_data)
- {
- #line 482 "mn-evolution-folder-tree-server.c"
- #define __GOB_FUNCTION__ "MN:Evolution:Folder:Tree:Server::plug_destroy_h"
---- src/eggtrayicon.h.orig 2011-02-07 20:25:26.352057350 +0100
-+++ src/eggtrayicon.h 2011-02-07 20:27:54.495032920 +0100
-@@ -23,10 +23,9 @@
- #ifndef __EGG_TRAY_ICON_H__
- #define __EGG_TRAY_ICON_H__
-
--#include <gtk/gtkplug.h>
--#ifdef GDK_WINDOWING_X11
-+#include <gtk/gtk.h>
-+#include <gtk/gtkx.h>
- #include <gdk/gdkx.h>
--#endif
-
- G_BEGIN_DECLS
-
---- build/src/mn-mail-icon.c.orig 2011-02-07 20:24:58.971663075 +0100
-+++ build/src/mn-mail-icon.c 2011-02-07 20:30:33.714401306 +0100
-@@ -833,11 +833,13 @@
- #line 239 "src/mn-mail-icon.gob"
-
- GtkWidget *widget = user_data;
-+ GtkAllocation allocation;
-
-- gdk_window_get_origin(widget->window, x, y);
-+ gdk_window_get_origin(gtk_widget_get_window(widget), x, y);
-+ gtk_widget_get_allocation(widget, &allocation);
-
-- *x += widget->allocation.x;
-- *y += widget->allocation.y;
-+ *x += allocation.x;
-+ *y += allocation.y;
-
- if (*y > gdk_screen_get_height(gtk_widget_get_screen(widget)) / 2)
- {
-@@ -847,7 +849,7 @@
- *y -= req.height;
- }
- else
-- *y += widget->allocation.height;
-+ *y += allocation.height;
-
- *push_in = TRUE;
- }}
---- build/src/mn-mail-icon-widget.c.orig 2011-02-07 20:31:19.475816763 +0100
-+++ build/src/mn-mail-icon-widget.c 2011-02-07 21:53:48.858814715 +0100
-@@ -64,9 +64,13 @@
- #line 65 "mn-mail-icon-widget.c"
- #line 110 "src/mn-mail-icon-widget.gob"
- static void ___7_mn_mail_icon_widget_size_request (GtkWidget * widget, GtkRequisition * requisition);
-+static void
-+mn_mail_icon_widget_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width);
-+static void
-+mn_mail_icon_widget_get_preferred_height(GtkWidget *widget, gint *minimal_height, gint *natural_height);
- #line 68 "mn-mail-icon-widget.c"
- #line 132 "src/mn-mail-icon-widget.gob"
--static gboolean ___8_mn_mail_icon_widget_expose_event (GtkWidget * widget, GdkEventExpose * event);
-+static gboolean ___8_mn_mail_icon_widget_draw (GtkWidget * widget, cairo_t *cr);
- #line 71 "mn-mail-icon-widget.c"
- #line 244 "src/mn-mail-icon-widget.gob"
- static GdkPixbuf * mn_mail_icon_widget_render_icon (MNMailIconWidget * self);
-@@ -187,9 +191,10 @@
- parent_class = g_type_class_ref (GTK_TYPE_WIDGET);
-
- #line 110 "src/mn-mail-icon-widget.gob"
-- gtk_widget_class->size_request = ___7_mn_mail_icon_widget_size_request;
-+ gtk_widget_class->get_preferred_width = mn_mail_icon_widget_get_preferred_width;
-+ gtk_widget_class->get_preferred_height = mn_mail_icon_widget_get_preferred_height;
- #line 132 "src/mn-mail-icon-widget.gob"
-- gtk_widget_class->expose_event = ___8_mn_mail_icon_widget_expose_event;
-+ gtk_widget_class->draw = ___8_mn_mail_icon_widget_draw;
- #line 194 "mn-mail-icon-widget.c"
- g_object_class->dispose = ___dispose;
- g_object_class->finalize = ___finalize;
-@@ -234,7 +239,7 @@
- {
- #line 93 "src/mn-mail-icon-widget.gob"
-
-- GTK_WIDGET_SET_FLAGS(self, GTK_NO_WINDOW);
-+ gtk_widget_set_has_window(GTK_WIDGET(self), FALSE);
-
- gtk_widget_set_name(GTK_WIDGET(self), "mn-mail-icon");
-
-@@ -457,9 +462,28 @@
- #undef __GOB_FUNCTION__
- #undef PARENT_HANDLER
-
-+static void
-+mn_mail_icon_widget_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width)
-+{
-+ GtkRequisition requisition;
-+
-+ ___7_mn_mail_icon_widget_size_request (widget, &requisition);
-+ *minimal_width = *natural_width = requisition.width;
-+}
-+
-+static void
-+mn_mail_icon_widget_get_preferred_height(GtkWidget *widget, gint *minimal_height, gint *natural_height)
-+{
-+ GtkRequisition requisition;
-+
-+ ___7_mn_mail_icon_widget_size_request (widget, &requisition);
-+
-+ *minimal_height = *natural_height = requisition.height;
-+}
-+
- #line 132 "src/mn-mail-icon-widget.gob"
- static gboolean
--___8_mn_mail_icon_widget_expose_event (GtkWidget * widget G_GNUC_UNUSED, GdkEventExpose * event)
-+___8_mn_mail_icon_widget_draw (GtkWidget * widget G_GNUC_UNUSED, cairo_t *cr)
- #line 464 "mn-mail-icon-widget.c"
- #define PARENT_HANDLER(___widget,___event) \
- ((GTK_WIDGET_CLASS(parent_class)->expose_event)? \
-@@ -472,7 +496,7 @@
-
- Self *self = SELF(widget);
-
-- if (! GTK_WIDGET_DRAWABLE(widget) || ! selfp->stock_id)
-+ if (! gtk_widget_is_drawable(widget) || ! selfp->stock_id)
- return FALSE;
-
- if (selfp->is_on)
-@@ -480,23 +504,34 @@
- int x;
- int y;
- GdkRectangle image_area;
-+ GtkAllocation allocation;
-+ GtkRequisition requisition;
-
- /* note: widget->requisition is the pixbuf size, see size_request() */
-
-- x = floor(widget->allocation.x + ((widget->allocation.width - widget->requisition.width) * ICON_XALIGN));
-- y = floor(widget->allocation.y + ((widget->allocation.height - widget->requisition.height) * ICON_YALIGN));
-+ gtk_widget_get_allocation(widget, &allocation);
-+ gtk_widget_get_requisition(widget, &requisition);
-+
-+ x = floor(allocation.x + ((allocation.width - requisition.width) * ICON_XALIGN));
-+ y = floor(allocation.y + ((allocation.height - requisition.height) * ICON_YALIGN));
-
- image_area.x = x;
- image_area.y = y;
-- image_area.width = widget->requisition.width;
-- image_area.height = widget->requisition.height;
-+ image_area.width = requisition.width;
-+ image_area.height = requisition.height;
-
-+#if 0
- if (gdk_rectangle_intersect(&event->area, &image_area, &image_area))
-+#endif
- {
- GdkPixbuf *pixbuf;
-
- pixbuf = self_render_icon(self);
-+ gdk_cairo_set_source_pixbuf(cr, pixbuf, image_area.x, image_area.y);
-+ cairo_move_to(cr, image_area.x - x, image_area.y - y);
-+ cairo_paint(cr);
-
-+#if 0
- gdk_draw_pixbuf(widget->window,
- NULL,
- pixbuf,
-@@ -509,6 +544,7 @@
- GDK_RGB_DITHER_NORMAL,
- 0,
- 0);
-+#endif
-
- g_object_unref(pixbuf);
- }
-@@ -523,13 +559,16 @@
- int box_y;
- int box_width;
- int box_height;
-+ GtkAllocation allocation;
-+
-+ gtk_widget_get_allocation(widget, &allocation);
-
- if (! selfp->count_layout)
- {
- const char *size;
- char *markup;
-
-- if (widget->allocation.height < 32)
-+ if (allocation.height < 32)
- size = "small";
- else
- size = "medium";
-@@ -546,17 +585,16 @@
- box_width = count_rect.width + COUNT_BOX_XPAD * 2;
- box_height = count_rect.height + COUNT_BOX_YPAD * 2;
-
-- box_x = widget->allocation.x + widget->allocation.width - box_width - COUNT_BOX_XMARGIN;
-- box_y = widget->allocation.y + widget->allocation.height - box_height - COUNT_BOX_YMARGIN;
-+ box_x = allocation.x + allocation.width - box_width - COUNT_BOX_XMARGIN;
-+ box_y = allocation.y + allocation.height - box_height - COUNT_BOX_YMARGIN;
-
- count_x = box_x - count_rect.x + COUNT_BOX_XPAD;
- count_y = box_y - count_rect.y + COUNT_BOX_YPAD;
-
-- gtk_paint_box(widget->style,
-- widget->window,
-- GTK_WIDGET_STATE(widget),
-+ gtk_paint_box(gtk_widget_get_style(widget),
-+ cr,
-+ gtk_widget_get_state_flags(widget),
- GTK_SHADOW_OUT,
-- &event->area,
- widget,
- NULL,
- box_x,
-@@ -564,11 +602,10 @@
- box_width,
- box_height);
-
-- gtk_paint_layout(widget->style,
-- widget->window,
-- GTK_WIDGET_STATE(widget),
-+ gtk_paint_layout(gtk_widget_get_style(widget),
-+ cr,
-+ gtk_widget_get_state_flags(widget),
- FALSE,
-- &event->area,
- widget,
- NULL,
- count_x,
---- build/src/mn-mailbox-properties-dialog.c.orig 2011-02-07 21:57:31.257251776 +0100
-+++ build/src/mn-mailbox-properties-dialog.c 2011-02-07 21:56:56.989854854 +0100
-@@ -456,7 +456,7 @@
- MNMailboxProperties *properties;
-
- mn_container_create_interface(GTK_CONTAINER(self),
-- PKGDATADIR G_DIR_SEPARATOR_S "mailbox-properties-dialog.glade",
-+ PKGDATADIR G_DIR_SEPARATOR_S "mailbox-properties-dialog.ui",
- "notebook",
- "mn_mailbox_properties_dialog_",
- "notebook", &self->notebook,
-@@ -1290,7 +1290,7 @@
- {
- #line 686 "src/mn-mailbox-properties-dialog.gob"
-
-- if (GTK_WIDGET_IS_SENSITIVE(GTK_WINDOW(self)->default_widget))
-+ if (gtk_widget_is_sensitive(gtk_window_get_default_widget(GTK_WINDOW(self))))
- gtk_window_activate_default(GTK_WINDOW(self));
- else
- {
-@@ -1313,9 +1313,9 @@
- if (elem->data == entry)
- break;
-
-- if (GTK_WIDGET_MAPPED(elem->data)
-- && GTK_WIDGET_VISIBLE(elem->data)
-- && GTK_WIDGET_SENSITIVE(elem->data))
-+ if (gtk_widget_get_mapped(elem->data)
-+ && gtk_widget_get_visible(elem->data)
-+ && gtk_widget_get_sensitive(elem->data))
- next = elem->data;
- }
- while (! next);
---- build/src/mn-mailbox-view.c.orig 2011-02-07 22:18:49.962462920 +0100
-+++ build/src/mn-mailbox-view.c 2011-02-07 23:01:39.990363248 +0100
-@@ -412,23 +412,23 @@
- binding_set = gtk_binding_set_by_class(class);
-
- /* Delete removes a row */
-- gtk_binding_entry_add_signal(binding_set, GDK_Delete, 0, "activate-remove", 0);
-- gtk_binding_entry_add_signal(binding_set, GDK_KP_Delete, 0, "activate-remove", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Delete, 0, "activate-remove", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_KP_Delete, 0, "activate-remove", 0);
-
- /* HIG 2.0 cut/copy/paste shortcuts */
-- gtk_binding_entry_add_signal(binding_set, GDK_x, GDK_CONTROL_MASK, "activate-cut", 0);
-- gtk_binding_entry_add_signal(binding_set, GDK_c, GDK_CONTROL_MASK, "activate-copy", 0);
-- gtk_binding_entry_add_signal(binding_set, GDK_v, GDK_CONTROL_MASK, "activate-paste", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_x, GDK_CONTROL_MASK, "activate-cut", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_c, GDK_CONTROL_MASK, "activate-copy", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_v, GDK_CONTROL_MASK, "activate-paste", 0);
-
- /* cut/copy/paste shortcuts taken from gtkentry.c */
-- gtk_binding_entry_add_signal(binding_set, GDK_Delete, GDK_SHIFT_MASK, "activate-cut", 0);
-- gtk_binding_entry_add_signal(binding_set, GDK_Insert, GDK_CONTROL_MASK, "activate-copy", 0);
-- gtk_binding_entry_add_signal(binding_set, GDK_Insert, GDK_SHIFT_MASK, "activate-paste", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Delete, GDK_SHIFT_MASK, "activate-cut", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Insert, GDK_CONTROL_MASK, "activate-copy", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Insert, GDK_SHIFT_MASK, "activate-paste", 0);
-
- /* HIG 2.0 properties */
-- gtk_binding_entry_add_signal(binding_set, GDK_Return, GDK_MOD1_MASK, "activate-properties", 0);
-- gtk_binding_entry_add_signal(binding_set, GDK_ISO_Enter, GDK_MOD1_MASK, "activate-properties", 0);
-- gtk_binding_entry_add_signal(binding_set, GDK_KP_Enter, GDK_MOD1_MASK, "activate-properties", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Return, GDK_MOD1_MASK, "activate-properties", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_ISO_Enter, GDK_MOD1_MASK, "activate-properties", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_KEY_KP_Enter, GDK_MOD1_MASK, "activate-properties", 0);
-
- #line 434 "mn-mailbox-view.c"
- }
-@@ -934,14 +934,13 @@
- #line 183 "src/mn-mailbox-view.gob"
-
- GtkSelectionData *data;
--
- data = gtk_clipboard_wait_for_contents(global_clipboard, clipboard_info[TARGET_MAILBOXES].atom);
- if (data)
- {
- GSList *configurations;
- GSList *l;
-
-- memcpy(&configurations, data->data, data->length);
-+ memcpy(&configurations, gtk_selection_data_get_data(data), gtk_selection_data_get_length(data));
-
- MN_LIST_FOREACH(l, configurations)
- {
-@@ -962,14 +961,14 @@
- data = gtk_clipboard_wait_for_contents(global_clipboard, clipboard_info[TARGET_GNOME_COPIED_FILES].atom);
- if (data)
- {
-- if (data->format == 8 && data->length > 0)
-+ if (gtk_selection_data_get_format(data) == 8 && gtk_selection_data_get_length(data) > 0)
- {
- char *gnome_copied_files;
- gboolean status;
- MNGnomeCopiedFilesType type;
- GSList *uri_list;
-
-- gnome_copied_files = g_strndup(data->data, data->length);
-+ gnome_copied_files = g_strndup(gtk_selection_data_get_data(data), gtk_selection_data_get_length(data));
- status = mn_parse_gnome_copied_files(gnome_copied_files, &type, &uri_list);
- g_free(gnome_copied_files);
-
---- build/src/mn-shell.c.orig 2011-02-07 23:02:17.852293679 +0100
-+++ build/src/mn-shell.c 2011-02-07 23:04:39.223548403 +0100
-@@ -158,7 +158,7 @@
- static void mn_shell_icon_activate_about_h (MNMailIcon * icon, gpointer user_data);
- #line 160 "mn-shell.c"
- #line 499 "src/mn-shell.gob"
--static void mn_shell_icon_destroy_h (GtkObject * object, gpointer user_data);
-+static void mn_shell_icon_destroy_h (GtkWidget * object, gpointer user_data);
- #line 163 "mn-shell.c"
- #line 508 "src/mn-shell.gob"
- static void mn_shell_update_sensitivity (MNShell * self);
-@@ -1006,7 +1006,7 @@
-
- #line 499 "src/mn-shell.gob"
- static void
--mn_shell_icon_destroy_h (GtkObject * object, gpointer user_data)
-+mn_shell_icon_destroy_h (GtkWidget * object, gpointer user_data)
- {
- #line 1004 "mn-shell.c"
- #define __GOB_FUNCTION__ "MN:Shell::icon_destroy_h"
---- build/src/mn-text-table.c.orig 2011-02-07 23:05:08.799927792 +0100
-+++ build/src/mn-text-table.c 2011-02-07 23:18:06.480056895 +0100
-@@ -69,9 +69,11 @@
- #line 70 "mn-text-table.c"
- #line 104 "src/mn-text-table.gob"
- static void ___4_mn_text_table_size_request (GtkWidget * widget, GtkRequisition * requisition);
-+static void mn_text_table_get_preferred_width (GtkWidget * widget, gint * minimal_width, gint * natural_width);
-+static void mn_text_table_get_preferred_height (GtkWidget * widget, gint * minimal_height, gint * natural_height);
- #line 73 "mn-text-table.c"
- #line 115 "src/mn-text-table.gob"
--static gboolean ___5_mn_text_table_expose_event (GtkWidget * widget, GdkEventExpose * event);
-+static gboolean ___5_mn_text_table_draw (GtkWidget * widget, cairo_t *cr);
- #line 76 "mn-text-table.c"
- #line 165 "src/mn-text-table.gob"
- static void mn_text_table_set_dirty (MNTextTable * self);
-@@ -188,9 +190,10 @@
- parent_class = g_type_class_ref (GTK_TYPE_WIDGET);
-
- #line 104 "src/mn-text-table.gob"
-- gtk_widget_class->size_request = ___4_mn_text_table_size_request;
-+ gtk_widget_class->get_preferred_width = mn_text_table_get_preferred_width;
-+ gtk_widget_class->get_preferred_height = mn_text_table_get_preferred_height;
- #line 115 "src/mn-text-table.gob"
-- gtk_widget_class->expose_event = ___5_mn_text_table_expose_event;
-+ gtk_widget_class->draw = ___5_mn_text_table_draw;
- #line 257 "src/mn-text-table.gob"
- c->clear = ___real_mn_text_table_clear;
- #line 197 "mn-text-table.c"
-@@ -216,7 +219,7 @@
- {
- #line 80 "src/mn-text-table.gob"
-
-- GTK_WIDGET_SET_FLAGS(self, GTK_NO_WINDOW);
-+ gtk_widget_set_has_window(GTK_WIDGET(self), FALSE);
-
- g_object_connect(self,
- "swapped-signal::style-set", self_context_changed, self,
-@@ -290,9 +293,29 @@
- #undef __GOB_FUNCTION__
- #undef PARENT_HANDLER
-
-+static void
-+mn_text_table_get_preferred_width (GtkWidget * widget, gint * minimal_width, gint * natural_width)
-+{
-+ GtkRequisition requisition;
-+
-+ ___4_mn_text_table_size_request (widget, &requisition);
-+
-+ *minimal_width = *natural_width = requisition.width;
-+}
-+
-+static void
-+mn_text_table_get_preferred_height (GtkWidget * widget, gint * minimal_height, gint * natural_height)
-+{
-+ GtkRequisition requisition;
-+
-+ ___4_mn_text_table_size_request (widget, &requisition);
-+
-+ *minimal_height = *natural_height = requisition.height;
-+}
-+
- #line 115 "src/mn-text-table.gob"
- static gboolean
--___5_mn_text_table_expose_event (GtkWidget * widget G_GNUC_UNUSED, GdkEventExpose * event)
-+___5_mn_text_table_draw (GtkWidget * widget G_GNUC_UNUSED, cairo_t *cr)
- #line 297 "mn-text-table.c"
- #define PARENT_HANDLER(___widget,___event) \
- ((GTK_WIDGET_CLASS(parent_class)->expose_event)? \
-@@ -304,10 +327,14 @@
- #line 117 "src/mn-text-table.gob"
-
- Self *self = SELF(widget);
-+ GtkAllocation allocation;
- int i;
-- int y = widget->allocation.y;
-+ int y;
-+
-+ gtk_widget_get_allocation(widget, &allocation);
-+ y = 0;
-
-- if (! GTK_WIDGET_DRAWABLE(widget))
-+ if (! gtk_widget_is_drawable(widget))
- return FALSE;
-
- self_relayout(self);
-@@ -316,7 +343,7 @@
- {
- Row *row = g_ptr_array_index(selfp->rows, i);
- int j;
-- int x = widget->allocation.x;
-+ int x = 0;
- int column = 0;
-
- MN_ARRAY_FOREACH(j, row->cells)
-@@ -324,11 +351,10 @@
- MNTextTableCell *cell = g_ptr_array_index(row->cells, j);
-
- if (cell->layout)
-- gtk_paint_layout(widget->style,
-- widget->window,
-- GTK_WIDGET_STATE(widget),
-+ gtk_paint_layout(gtk_widget_get_style(widget),
-+ cr,
-+ gtk_widget_get_state_flags(widget),
- FALSE,
-- &event->area,
- widget,
- NULL,
- x,
---- build/src/mn-tooltips.c.orig 2011-02-07 23:19:05.903761972 +0100
-+++ build/src/mn-tooltips.c 2011-02-07 23:41:19.368621912 +0100
-@@ -104,7 +104,7 @@
- static void mn_tooltips_set_tip_widget_real (MNTooltips * self, GtkWidget * widget, GtkWidget * tip_widget, int border_width);
- #line 106 "mn-tooltips.c"
- #line 287 "src/mn-tooltips.gob"
--static gboolean mn_tooltips_paint_window (MNTooltips * self);
-+static gboolean mn_tooltips_paint_window (MNTooltips * self, cairo_t *cr);
- #line 109 "mn-tooltips.c"
- #line 308 "src/mn-tooltips.gob"
- static void mn_tooltips_draw_tips (MNTooltips * self);
-@@ -422,7 +422,13 @@
-
- if (! selfp->window)
- {
-+ GtkStyleContext *ctx;
-+
- selfp->window = gtk_window_new(GTK_WINDOW_POPUP);
-+
-+ ctx = gtk_widget_get_style_context(GTK_WIDGET(selfp->window));
-+ gtk_style_context_add_class(ctx, "tooltip");
-+
- self_update_screen(self, TRUE);
- gtk_widget_set_app_paintable(selfp->window, TRUE);
- gtk_window_set_resizable(GTK_WINDOW(selfp->window), FALSE);
-@@ -430,7 +430,7 @@
- gtk_container_set_border_width(GTK_CONTAINER(selfp->window), selfp->border_width);
-
- g_signal_connect_swapped(selfp->window,
-- "expose-event",
-+ "draw",
- G_CALLBACK(self_paint_window),
- self);
-
-@@ -490,7 +490,7 @@
-
- if (selfp->active_data
- && selfp->active_data->widget == widget
-- && GTK_WIDGET_DRAWABLE(selfp->active_data->widget))
-+ && gtk_widget_is_drawable(selfp->active_data->widget))
- {
- if (data->tip_widget)
- g_object_unref(data->tip_widget);
-@@ -594,7 +594,7 @@
-
- #line 287 "src/mn-tooltips.gob"
- static gboolean
--mn_tooltips_paint_window (MNTooltips * self)
-+mn_tooltips_paint_window (MNTooltips * self, cairo_t *cr)
- {
- #line 600 "mn-tooltips.c"
- #define __GOB_FUNCTION__ "MN:Tooltips::paint_window"
-@@ -608,18 +608,13 @@
-
- GtkRequisition req;
-
-- gtk_widget_size_request(selfp->window, &req);
-- gtk_paint_flat_box(selfp->window->style,
-- selfp->window->window,
-- GTK_STATE_NORMAL,
-- GTK_SHADOW_OUT,
-- NULL,
-- selfp->window,
-- "tooltip",
-- 0,
-- 0,
-- req.width,
-- req.height);
-+ gtk_widget_size_request(GTK_WIDGET(selfp->window), &req);
-+ gtk_render_background(gtk_widget_get_style_context(GTK_WIDGET(selfp->window)),
-+ cr,
-+ 0,
-+ 0,
-+ req.width,
-+ req.height);
-
- return FALSE;
- }}
-@@ -651,10 +650,11 @@
- gint monitor_num, px, py;
- GdkRectangle monitor;
- int screen_width;
-+ GtkAllocation allocation;
-
- if (! selfp->window)
- self_force_window(self);
-- else if (GTK_WIDGET_VISIBLE(selfp->window))
-+ else if (gtk_widget_get_visible(selfp->window))
- g_get_current_time(&selfp->last_popdown);
-
- gtk_widget_ensure_style(selfp->window);
-@@ -670,7 +670,7 @@
-
- data = selfp->active_data;
-
-- child = GTK_BIN(selfp->window)->child;
-+ child = gtk_bin_get_child(GTK_BIN(selfp->window));
- if (child)
- gtk_container_remove(GTK_CONTAINER(selfp->window), child);
-
-@@ -684,14 +684,16 @@
- w = requisition.width;
- h = requisition.height;
-
-- gdk_window_get_origin(widget->window, &x, &y);
-- if (GTK_WIDGET_NO_WINDOW(widget))
-+ gtk_widget_get_allocation(selfp->window, &allocation);
-+
-+ gdk_window_get_origin(gtk_widget_get_window(widget), &x, &y);
-+ if (! gtk_widget_get_has_window(widget))
- {
-- x += widget->allocation.x;
-- y += widget->allocation.y;
-+ x += allocation.x;
-+ y += allocation.y;
- }
-
-- x += widget->allocation.width / 2;
-+ x += allocation.width / 2;
-
- if (! keyboard_mode)
- gdk_window_get_pointer(gdk_screen_get_root_window(screen), &x, NULL, NULL);
-@@ -712,11 +714,11 @@
- else if (x < monitor.x)
- x = monitor.x;
-
-- if ((y + h + widget->allocation.height + 4) > monitor.y + monitor.height
-+ if ((y + h + allocation.height + 4) > monitor.y + monitor.height
- && (y - 4) > monitor.y)
- y = y - h - 4;
- else
-- y = y + widget->allocation.height + 4;
-+ y = y + allocation.height + 4;
-
- /*
- * The following block is not part of GTK+ and has been added to
-@@ -760,7 +762,7 @@
-
- Self *self = SELF(data);
-
-- if (selfp->active_data && GTK_WIDGET_DRAWABLE(selfp->active_data->widget))
-+ if (selfp->active_data && gtk_widget_is_drawable(selfp->active_data->widget))
- self_draw_tips(self);
-
- selfp->timeout_id = 0;
-@@ -785,7 +787,7 @@
-
- if (selfp->window)
- {
-- if (GTK_WIDGET_VISIBLE(selfp->window))
-+ if (gtk_widget_get_visible(selfp->window))
- g_get_current_time(&selfp->last_popdown);
- gtk_widget_hide(selfp->window);
- }
-@@ -802,7 +804,7 @@
- {
- TooltipsData *data = l->data;
-
-- if (data->widget == widget && GTK_WIDGET_DRAWABLE(widget))
-+ if (data->widget == widget && gtk_widget_is_drawable(widget))
- {
- selfp->active_data = data;
- break;
-@@ -937,7 +939,7 @@
-
- if (GTK_IS_WINDOW(toplevel))
- {
-- GtkWidget *focus = GTK_WINDOW(toplevel)->focus_widget;
-+ GtkWidget *focus = gtk_window_get_focus(GTK_WINDOW(toplevel));
-
- g_object_set_data(G_OBJECT(toplevel), TOOLTIPS_KEYBOARD_MODE, GINT_TO_POINTER(TRUE));
-
-@@ -966,7 +968,7 @@
-
- if (GTK_IS_WINDOW(toplevel))
- {
-- GtkWidget *focus = GTK_WINDOW(toplevel)->focus_widget;
-+ GtkWidget *focus = gtk_window_get_focus(GTK_WINDOW(toplevel));
-
- if (focus)
- self_hide_tip(focus);
-@@ -1057,24 +1059,24 @@
- break;
-
- case GDK_ENTER_NOTIFY:
-- if (! (GTK_IS_MENU_ITEM(widget) && GTK_MENU_ITEM(widget)->submenu))
-+ if (! (GTK_IS_MENU_ITEM(widget) && gtk_menu_item_get_submenu(GTK_MENU_ITEM(widget))))
- self_start_delay(self, widget);
- break;
-
- case GDK_LEAVE_NOTIFY:
- self_set_active_widget(self, NULL);
-- selfp->use_sticky_delay = selfp->window && GTK_WIDGET_VISIBLE(selfp->window);
-+ selfp->use_sticky_delay = selfp->window && gtk_widget_get_visible(selfp->window);
- break;
-
- case GDK_MOTION_NOTIFY:
- /* Handle menu items specially ... pend popup for each motion
- * on other widgets, we ignore motion.
- */
-- if (GTK_IS_MENU_ITEM(widget) && ! GTK_MENU_ITEM(widget)->submenu)
-+ if (GTK_IS_MENU_ITEM(widget) && ! gtk_menu_item_get_submenu(GTK_MENU_ITEM(widget)))
- {
- /* Completely evil hack to make sure we get the LEAVE_NOTIFY
- */
-- GTK_PRIVATE_SET_FLAG(widget, GTK_LEAVE_PENDING);
-+ //GTK_PRIVATE_SET_FLAG(widget, GTK_LEAVE_PENDING);
- self_set_active_widget(self, NULL);
- self_start_delay(self, widget);
- break;
---- src/nautilus-cell-renderer-pixbuf-emblem.c.orig 2011-02-08 00:16:43.847831409 +0100
-+++ src/nautilus-cell-renderer-pixbuf-emblem.c 2011-02-08 00:32:59.128682767 +0100
-@@ -39,17 +39,16 @@
- GtkWidget *widget);
- static void nautilus_cell_renderer_pixbuf_emblem_get_size (GtkCellRenderer *cell,
- GtkWidget *widget,
-- GdkRectangle *rectangle,
-+ const GdkRectangle *rectangle,
- gint *x_offset,
- gint *y_offset,
- gint *width,
- gint *height);
- static void nautilus_cell_renderer_pixbuf_emblem_render (GtkCellRenderer *cell,
-- GdkWindow *window,
-+ cairo_t *cr,
- GtkWidget *widget,
-- GdkRectangle *background_area,
-- GdkRectangle *cell_area,
-- GdkRectangle *expose_area,
-+ const GdkRectangle *background_area,
-+ const GdkRectangle *cell_area,
- GtkCellRendererState flags);
-
- enum {
-@@ -356,7 +355,7 @@
- static void
- nautilus_cell_renderer_pixbuf_emblem_get_size (GtkCellRenderer *cell,
- GtkWidget *widget,
-- GdkRectangle *cell_area,
-+ const GdkRectangle *cell_area,
- gint *x_offset,
- gint *y_offset,
- gint *width,
-@@ -368,6 +367,10 @@
- gint pixbuf_height = 0;
- gint calc_width;
- gint calc_height;
-+ int xpad;
-+ int ypad;
-+ gfloat xalign;
-+ gfloat yalign;
-
- if (!cellpixbuf->pixbuf && cellinfo->stock_id)
- nautilus_cell_renderer_pixbuf_emblem_create_stock_pixbuf (cellpixbuf, widget);
-@@ -385,8 +388,11 @@
- pixbuf_height = MAX (pixbuf_height, gdk_pixbuf_get_height (cellpixbuf->pixbuf_expander_closed));
- }
-
-- calc_width = (gint) cell->xpad * 2 + pixbuf_width;
-- calc_height = (gint) cell->ypad * 2 + pixbuf_height;
-+ gtk_cell_renderer_get_padding(cell, &xpad, &ypad);
-+ gtk_cell_renderer_get_alignment(cell, &xalign, &yalign);
-+
-+ calc_width = (gint) xpad * 2 + pixbuf_width;
-+ calc_height = (gint) ypad * 2 + pixbuf_height;
-
- if (x_offset) *x_offset = 0;
- if (y_offset) *y_offset = 0;
-@@ -394,14 +400,14 @@
- if (cell_area && pixbuf_width > 0 && pixbuf_height > 0) {
- if (x_offset) {
- *x_offset = (((gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) ?
-- 1.0 - cell->xalign : cell->xalign) *
-- (cell_area->width - calc_width - 2 * cell->xpad));
-- *x_offset = MAX (*x_offset, 0) + cell->xpad;
-+ 1.0 - xalign : xalign) *
-+ (cell_area->width - calc_width - 2 * xpad));
-+ *x_offset = MAX (*x_offset, 0) + xpad;
- }
- if (y_offset) {
-- *y_offset = (cell->yalign *
-- (cell_area->height - calc_height - 2 * cell->ypad));
-- *y_offset = MAX (*y_offset, 0) + cell->ypad;
-+ *y_offset = (yalign *
-+ (cell_area->height - calc_height - 2 * ypad));
-+ *y_offset = MAX (*y_offset, 0) + ypad;
- }
- }
-
-@@ -414,11 +420,10 @@
-
- static void
- nautilus_cell_renderer_pixbuf_emblem_render (GtkCellRenderer *cell,
-- GdkWindow *window,
-+ cairo_t *cr,
- GtkWidget *widget,
-- GdkRectangle *background_area,
-- GdkRectangle *cell_area,
-- GdkRectangle *expose_area,
-+ const GdkRectangle *background_area,
-+ const GdkRectangle *cell_area,
- GtkCellRendererState flags)
-
- {
-@@ -429,13 +434,19 @@
- GdkRectangle pix_emblem_rect;
- GdkRectangle draw_rect;
- gboolean stock_pixbuf = FALSE;
-+ gboolean is_expander = FALSE;
-+ gboolean is_expanded = FALSE;
-+ int xpad;
-+ int ypad;
-+
-+ g_object_get(cell, "is-expander", &is_expander, "is-expanded", &is_expanded, NULL);
-
- pixbuf = cellpixbuf->pixbuf;
-- if (cell->is_expander) {
-- if (cell->is_expanded &&
-+ if (is_expander) {
-+ if (is_expanded &&
- cellpixbuf->pixbuf_expander_open != NULL) {
- pixbuf = cellpixbuf->pixbuf_expander_open;
-- } else if (!cell->is_expanded &&
-+ } else if (!is_expanded &&
- cellpixbuf->pixbuf_expander_closed != NULL) {
- pixbuf = cellpixbuf->pixbuf_expander_closed;
- }
-@@ -456,15 +467,20 @@
- if (stock_pixbuf)
- pixbuf = cellpixbuf->pixbuf;
-
-+ gtk_cell_renderer_get_padding(cell, &xpad, &ypad);
-+
- pix_rect.x += cell_area->x;
- pix_rect.y += cell_area->y;
-- pix_rect.width -= cell->xpad * 2;
-- pix_rect.height -= cell->ypad * 2;
-+ pix_rect.width -= xpad * 2;
-+ pix_rect.height -= ypad * 2;
-
-+ if (gdk_rectangle_intersect (cell_area, &pix_rect, &draw_rect)) {
-+#if 0
- if (gdk_rectangle_intersect (cell_area, &pix_rect, &draw_rect) &&
- gdk_rectangle_intersect (expose_area, &draw_rect, &draw_rect)) {
-+
- gdk_draw_pixbuf (window,
-- widget->style->black_gc,
-+ gtk_widget_get_style(widget)->black_gc,
- pixbuf,
- /* pixbuf 0, 0 is at pix_rect.x, pix_rect.y */
- draw_rect.x - pix_rect.x,
-@@ -475,6 +491,11 @@
- draw_rect.height,
- GDK_RGB_DITHER_NORMAL,
- 0, 0);
-+#endif
-+
-+ cairo_move_to (cr, draw_rect.x - pix_rect.x, draw_rect.y - pix_rect.y);
-+ gdk_cairo_set_source_pixbuf (cr, pixbuf, draw_rect.x, draw_rect.y);
-+ cairo_paint (cr);
- }
-
- if (cellpixbuf->pixbuf_emblem) {
-@@ -482,8 +503,11 @@
- pix_emblem_rect.height = gdk_pixbuf_get_height (cellpixbuf->pixbuf_emblem);
- pix_emblem_rect.x = pix_rect.x;
- pix_emblem_rect.y = pix_rect.y + pix_rect.height - pix_emblem_rect.height;
-+ if (gdk_rectangle_intersect (cell_area, &pix_emblem_rect, &draw_rect)) {
-+#if 0
- if (gdk_rectangle_intersect (cell_area, &pix_emblem_rect, &draw_rect) &&
- gdk_rectangle_intersect (expose_area, &draw_rect, &draw_rect)) {
-+
- gdk_draw_pixbuf (window,
- widget->style->black_gc,
- cellpixbuf->pixbuf_emblem,
-@@ -496,6 +520,11 @@
- draw_rect.height,
- GDK_RGB_DITHER_NORMAL,
- 0, 0);
-+#endif
-+
-+ cairo_move_to (cr, draw_rect.x - pix_emblem_rect.x, draw_rect.y - pix_emblem_rect.y);
-+ gdk_cairo_set_source_pixbuf (cr, cellpixbuf->pixbuf_emblem, draw_rect.x, draw_rect.y);
-+ cairo_paint (cr);
- }
- }
- }
---- src/nautilus-cell-renderer-pixbuf-emblem.h.orig 2011-02-07 22:18:12.336471764 +0100
-+++ src/nautilus-cell-renderer-pixbuf-emblem.h 2011-02-08 00:20:30.461758697 +0100
-@@ -25,18 +25,18 @@
- #ifndef NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_H
- #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_H
-
--#include <gtk/gtkcellrenderer.h>
-+#include <gtk/gtk.h>
-
- #define NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM \
- (nautilus_cell_renderer_pixbuf_emblem_get_type ())
- #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM(obj) \
-- (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblem))
-+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblem))
- #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_CLASS(klass) \
-- (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblemClass))
-+ (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblemClass))
- #define NAUTILUS_IS_CELL_RENDERER_PIXBUF_EMBLEM(obj) \
-- (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
-+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
- #define NAUTILUS_IS_CELL_RENDERER_PIXBUF_EMBLEM_CLASS(klass) \
-- (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
-+ (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
-
- typedef struct _NautilusCellRendererPixbufEmblem NautilusCellRendererPixbufEmblem;
- typedef struct _NautilusCellRendererPixbufEmblemClass NautilusCellRendererPixbufEmblemClass;
---- build/src/mn-authenticated-mailbox.c.orig 2011-02-08 00:34:16.332610802 +0100
-+++ build/src/mn-authenticated-mailbox.c 2011-02-08 00:36:23.706936717 +0100
-@@ -25,7 +25,7 @@
- #line 29 "src/mn-authenticated-mailbox.gob"
-
- #include <glib/gi18n.h>
--#include <gnome.h>
-+#include <libgnome/libgnome.h>
- #include "mn-mailbox-private.h"
- #include "mn-shell.h"
- #include "mn-util.h"
-@@ -859,6 +859,7 @@
-
- /* keep the title in sync with gnome-authentication-manager */
-
-+#if 0
- /* translators: header capitalization */
- selfp->auth_dialog = gnome_password_dialog_new(_("Authentication Required"),
- message,
-@@ -891,6 +892,9 @@
- gtk_widget_destroy(selfp->auth_dialog);
-
- return ok;
-+#else
-+ return FALSE;
-+#endif
- }}
- #line 896 "mn-authenticated-mailbox.c"
- #undef __GOB_FUNCTION__
---- build/src/mn-about-dialog.c.orig 2011-02-08 22:20:54.469841262 +0100
-+++ build/src/mn-about-dialog.c 2011-02-08 22:21:13.309839037 +0100
-@@ -111,9 +111,11 @@
- {
- #line 32 "src/mn-about-dialog.gob"
-
-+#if 0
- gtk_about_dialog_set_email_hook(self_activate_link_cb, "mailto:", NULL);
- gtk_about_dialog_set_url_hook(self_activate_link_cb, NULL, NULL);
--
-+#endif
-+
- #line 118 "mn-about-dialog.c"
- }
- }
---- build/src/mn-autodetect-mailbox-properties.c.orig 2011-02-08 22:21:58.639427345 +0100
-+++ build/src/mn-autodetect-mailbox-properties.c 2011-02-08 22:22:43.564035901 +0100
-@@ -355,10 +355,9 @@
-
- toplevel = gtk_widget_get_toplevel(GTK_WIDGET(button));
- /* translators: header capitalization */
-- selfp->chooser = gtk_file_chooser_dialog_new_with_backend(_("Select a File or Folder"),
-+ selfp->chooser = gtk_file_chooser_dialog_new(_("Select a File or Folder"),
- GTK_WINDOW(toplevel),
- GTK_FILE_CHOOSER_ACTION_OPEN,
-- "gnome-vfs",
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, 1,
- NULL);
---- build/src/mn-pi-mailbox-properties.c.orig 2011-02-08 22:30:08.051375715 +0100
-+++ build/src/mn-pi-mailbox-properties.c 2011-02-08 22:30:21.398665261 +0100
-@@ -415,7 +415,7 @@
- int i;
-
- for (i = 0; i < MN_PI_MAILBOX_N_CONNECTION_TYPES; i++)
-- gtk_widget_set_sensitive(self->port_spin[i], GTK_WIDGET_SENSITIVE(self->conn_radio[i]) && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self->conn_radio[i])));
-+ gtk_widget_set_sensitive(self->port_spin[i], gtk_widget_get_sensitive(self->conn_radio[i]) && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self->conn_radio[i])));
-
- g_object_notify(G_OBJECT(self), "complete");
- }}
---- src/eggtrayicon.c.orig 2011-02-07 23:42:30.405791829 +0100
-+++ src/eggtrayicon.c 2011-02-08 23:06:16.092968325 +0100
-@@ -25,7 +25,7 @@
-
- #include "eggtrayicon.h"
-
--#include <gdkconfig.h>
-+#include <gdk/gdk.h>
- #if defined (GDK_WINDOWING_X11)
- #include <gdk/gdkx.h>
- #include <X11/Xatom.h>
-@@ -258,7 +258,7 @@
- {
- GdkWindow *gdkwin;
-
-- gdkwin = gdk_window_lookup_for_display (gtk_widget_get_display (widget),
-+ gdkwin = gdk_x11_window_lookup_for_display (gtk_widget_get_display (widget),
- icon->manager_window);
-
- gdk_window_remove_filter (gdkwin, egg_tray_icon_manager_filter, icon);
-@@ -290,7 +290,7 @@
- ev.window = window;
- ev.message_type = icon->system_tray_opcode_atom;
- ev.format = 32;
-- ev.data.l[0] = gdk_x11_get_server_time (GTK_WIDGET (icon)->window);
-+ ev.data.l[0] = gdk_x11_get_server_time (gtk_widget_get_window(GTK_WIDGET (icon)));
- ev.data.l[1] = message;
- ev.data.l[2] = data1;
- ev.data.l[3] = data2;
-@@ -342,12 +342,12 @@
- {
- GdkWindow *gdkwin;
-
-- gdkwin = gdk_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
-+ gdkwin = gdk_x11_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
- icon->manager_window);
-
- gdk_window_add_filter (gdkwin, egg_tray_icon_manager_filter, icon);
-
-- if (dock_if_realized && GTK_WIDGET_REALIZED (icon))
-+ if (dock_if_realized && gtk_widget_get_realized (GTK_WIDGET(icon)))
- egg_tray_icon_send_dock_request (icon);
-
- egg_tray_icon_get_orientation_property (icon);
-@@ -355,10 +355,16 @@
- }
-
- static gboolean
--transparent_expose_event (GtkWidget *widget, GdkEventExpose *event, gpointer user_data)
-+transparent_draw (GtkWidget *widget, cairo_t *cr, gpointer user_data)
- {
-- gdk_window_clear_area (widget->window, event->area.x, event->area.y,
-+#if 0
-+ gdk_window_clear_area (gtk_widget_get_window(widget), event->area.x, event->area.y,
- event->area.width, event->area.height);
-+#endif
-+ cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR);
-+ //gdk_cairo_region (cr, event->region);
-+ cairo_fill (cr);
-+
- return FALSE;
- }
-
-@@ -366,20 +372,20 @@
- make_transparent_again (GtkWidget *widget, GtkStyle *previous_style,
- gpointer user_data)
- {
-- gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
-+ //gdk_window_set_back_pixmap (gtk_widget_get_window(widget), NULL, TRUE);
- }
-
- static void
- make_transparent (GtkWidget *widget, gpointer user_data)
- {
-- if (GTK_WIDGET_NO_WINDOW (widget) || GTK_WIDGET_APP_PAINTABLE (widget))
-+ if (! gtk_widget_get_has_window (widget) || gtk_widget_get_app_paintable (widget))
- return;
-
- gtk_widget_set_app_paintable (widget, TRUE);
- gtk_widget_set_double_buffered (widget, FALSE);
-- gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
-- g_signal_connect (widget, "expose_event",
-- G_CALLBACK (transparent_expose_event), NULL);
-+ //gdk_window_set_back_pixmap (gtk_widget_get_window(widget), NULL, TRUE);
-+ g_signal_connect (widget, "draw",
-+ G_CALLBACK (transparent_draw), NULL);
- g_signal_connect_after (widget, "style_set",
- G_CALLBACK (make_transparent_again), NULL);
- }
-@@ -391,7 +397,7 @@
-
- g_return_if_fail (icon->manager_window != None);
-
-- gdkwin = gdk_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
-+ gdkwin = gdk_x11_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
- icon->manager_window);
-
- gdk_window_remove_filter (gdkwin, egg_tray_icon_manager_filter, icon);
---- build/src/mn-properties-dialog.c.orig 2011-02-08 23:37:12.605200174 +0100
-+++ build/src/mn-properties-dialog.c 2011-02-08 23:37:18.601881191 +0100
-@@ -183,7 +183,7 @@
- GtkTreeSelection *selection;
-
- mn_container_create_interface(GTK_CONTAINER(self),
-- PKGDATADIR G_DIR_SEPARATOR_S "properties-dialog.glade",
-+ PKGDATADIR G_DIR_SEPARATOR_S "properties-dialog.ui",
- "main_vbox",
- "mn_properties_dialog_",
- "notebook", &selfp->notebook,
---- src/mn-util.c.orig 2011-02-08 00:01:25.167207512 +0100
-+++ src/mn-util.c 2011-02-09 00:01:35.718285446 +0100
-@@ -26,8 +26,7 @@
- #include <gmodule.h>
- #include <glib/gi18n.h>
- #include <gobject/gvaluecollector.h>
--#include <gnome.h>
--#include <glade/glade.h>
-+#include <libgnome/libgnome.h>
- #include "mn-util.h"
- #include "mn-mailboxes.h"
- #include "mn-shell.h"
-@@ -303,49 +302,55 @@
- return pixbuf;
- }
-
--static GladeXML *
-+static GtkBuilder *
- mn_glade_xml_new (const char *filename, const char *root, const char *domain)
- {
-- GladeXML *xml;
-+ GtkBuilder *builder;
-+ GError *err = NULL;
-
- g_return_val_if_fail(filename != NULL, NULL);
-
-- xml = glade_xml_new(filename, root, domain);
-- if (! xml)
-- mn_show_fatal_error_dialog(NULL, "Unable to load interface \"%s\".", filename);
-+ builder = gtk_builder_new();
-+ gtk_builder_set_translation_domain(builder, domain);
-+ if (! gtk_builder_add_from_file(builder, filename, &err)) {
-+ mn_show_fatal_error_dialog(NULL, "Unable to load interface \"%s\": %s.", filename, err->message);
-+ g_error_free(err);
-+ g_object_unref(builder);
-+ return NULL;
-+ }
-
-- return xml;
-+ return builder;
- }
-
- static GtkWidget *
--mn_glade_xml_get_widget (GladeXML *xml, const char *widget_name)
-+mn_glade_xml_get_widget (GtkBuilder *builder, const char *widget_name)
- {
- GtkWidget *widget;
-
-- g_return_val_if_fail(GLADE_IS_XML(xml), NULL);
-+ g_return_val_if_fail(GTK_IS_BUILDER(builder), NULL);
- g_return_val_if_fail(widget_name != NULL, NULL);
-
-- widget = glade_xml_get_widget(xml, widget_name);
-+ widget = GTK_WIDGET(gtk_builder_get_object(builder, widget_name));
- if (! widget)
-- mn_show_fatal_error_dialog(NULL, "Widget \"%s\" not found in interface \"%s\".", widget_name, xml->filename);
-+ mn_show_fatal_error_dialog(NULL, "Widget \"%s\" not found in interface.", widget_name);
-
- return widget;
- }
-
- static void
--create_interface_connect_cb (const char *handler_name,
-+create_interface_connect_cb (GtkBuilder *builder,
- GObject *object,
- const char *signal_name,
-- const char *signal_data,
-+ const char *handler_name,
- GObject *connect_object,
-- gboolean after,
-+ GConnectFlags flags,
- gpointer user_data)
- {
- static GModule *module = NULL;
- ContainerCreateInterfaceConnectInfo *info = user_data;
- char *cb_name;
- GCallback cb;
-- GConnectFlags flags;
-+ GConnectFlags cflags;
-
- if (! module)
- {
-@@ -359,11 +364,9 @@
- mn_show_fatal_error_dialog(NULL, "Signal handler \"%s\" not found.", cb_name);
- g_free(cb_name);
-
-- flags = G_CONNECT_SWAPPED;
-- if (after)
-- flags |= G_CONNECT_AFTER;
-+ cflags = G_CONNECT_SWAPPED;
-
-- g_signal_connect_data(object, signal_name, cb, info->container, NULL, flags);
-+ g_signal_connect_data(object, signal_name, cb, info->container, NULL, cflags);
- }
-
- void
-@@ -373,7 +376,7 @@
- const char *callback_prefix,
- ...)
- {
-- GladeXML *xml;
-+ GtkBuilder *xml;
- GtkWidget *child;
- ContainerCreateInterfaceConnectInfo info;
- va_list args;
-@@ -387,14 +390,16 @@
- xml = mn_glade_xml_new(filename, child_name, NULL);
- child = mn_glade_xml_get_widget(xml, child_name);
-
-- if (GTK_IS_DIALOG(container))
-- gtk_box_pack_start(GTK_BOX(GTK_DIALOG(container)->vbox), child, TRUE, TRUE, 0);
-- else
-+ if (GTK_IS_DIALOG(container)) {
-+ gtk_widget_unparent(child);
-+ gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(container))), child, TRUE, TRUE, 0);
-+ } else {
- gtk_container_add(container, child);
-+ }
-
- info.container = container;
- info.callback_prefix = callback_prefix;
-- glade_xml_signal_autoconnect_full(xml, create_interface_connect_cb, &info);
-+ gtk_builder_connect_signals_full(xml, create_interface_connect_cb, &info);
-
- va_start(args, callback_prefix);
-
-@@ -422,7 +427,7 @@
-
- toplevel = gtk_widget_get_toplevel(widget);
-
-- return GTK_WIDGET_TOPLEVEL(toplevel) ? GTK_WINDOW(toplevel) : NULL;
-+ return gtk_widget_get_toplevel(toplevel) ? GTK_WINDOW(toplevel) : NULL;
- }
-
- static void
-@@ -493,9 +498,11 @@
- gpointer user_data)
- {
- GtkAdjustment *adjustment;
-+ GtkAllocation allocation;
-
-+ gtk_widget_get_allocation(widget, &allocation);
- adjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(widget));
-- gtk_adjustment_set_value(adjustment, (double) y / (widget->allocation.height - 2) * (adjustment->upper - adjustment->page_size));
-+ gtk_adjustment_set_value(adjustment, (double) y / (allocation.height - 2) * (gtk_adjustment_get_upper(adjustment) - gtk_adjustment_get_page_size(adjustment)));
-
- return TRUE; /* we're forcibly in a drop zone */
- }
-@@ -562,7 +569,7 @@
- MNMailbox *mailbox;
-
- /* text/x-moz-url is encoded in UCS-2 but in format 8: broken */
-- if (selection_data->format != 8 || selection_data->length <= 0 || (selection_data->length % 2) != 0)
-+ if (gtk_selection_data_get_format(selection_data) != 8 || gtk_selection_data_get_length(selection_data) <= 0 || (gtk_selection_data_get_length(selection_data) % 2) != 0)
- {
- mn_show_error_dialog(mn_widget_get_parent_window(widget),
- _("A drag and drop error has occurred"),
-@@ -570,8 +577,8 @@
- return;
- }
-
-- char_data = (const guint16 *) selection_data->data;
-- char_len = selection_data->length / 2;
-+ char_data = (const guint16 *) gtk_selection_data_get_data(selection_data);
-+ char_len = gtk_selection_data_get_length(selection_data) / 2;
-
- url = g_string_new(NULL);
- for (i = 0; i < char_len && char_data[i] != '\n'; i++)
-@@ -1322,7 +1329,7 @@
- }
-
- static void
--dialog_run_nonmodal_destroy_h (GtkObject *object, gpointer user_data)
-+dialog_run_nonmodal_destroy_h (GtkWidget *object, gpointer user_data)
- {
- RunNonmodalInfo *info = user_data;
-
-@@ -1375,7 +1382,7 @@
-
- g_object_ref(dialog);
-
-- if (! GTK_WIDGET_VISIBLE(dialog))
-+ if (! gtk_widget_get_visible(dialog))
- gtk_widget_show(GTK_WIDGET(dialog));
-
- g_object_connect(dialog,
---- src/mn-main.c.gtk3 2008-05-22 17:45:35.000000000 +0200
-+++ src/mn-main.c 2011-02-08 23:32:33.800030659 +0100
-@@ -21,7 +21,7 @@
- #include <stdlib.h>
- #include <signal.h>
- #include <glib/gi18n.h>
--#include <gnome.h>
-+#include <libgnome/libgnome.h>
- #include <libgnomevfs/gnome-vfs.h>
- #include <libnotify/notify.h>
- #include <dbus/dbus-glib-lowlevel.h>
-@@ -452,7 +452,7 @@
-
- gnome_program_init(PACKAGE,
- VERSION,
-- LIBGNOMEUI_MODULE,
-+ LIBGNOME_MODULE,
- argc,
- argv,
- GNOME_PARAM_HUMAN_READABLE_NAME, _("Mail Notification"),
-@@ -460,6 +460,8 @@
- GNOME_PARAM_GOPTION_CONTEXT, option_context,
- NULL);
-
-+ gtk_init(&argc, &argv);
-+
- if (arg_version)
- {
- print_version();
-@@ -497,7 +499,9 @@
- if (! gnome_vfs_init())
- mn_show_fatal_error_dialog(NULL, _("Unable to initialize the GnomeVFS library."));
-
-+#if 0
- gnome_authentication_manager_init();
-+#endif
-
- /* must be called before init_gmime() */
- mn_conf_init();
---- src/mn-conf.c.gtk3 2008-05-22 17:45:35.000000000 +0200
-+++ src/mn-conf.c 2011-02-07 20:07:01.630580132 +0100
-@@ -23,7 +23,7 @@
- #include <errno.h>
- #include <stdarg.h>
- #include <glib/gi18n.h>
--#include <gnome.h>
-+#include <libgnome/libgnome.h>
- #include "mn-util.h"
- #include "mn-conf.h"
- #include "mn-shell.h"
---- data/mail-notification.desktop.in.orig 2011-07-08 13:46:52.327548264 +0200
-+++ data/mail-notification.desktop.in 2011-07-08 13:47:00.732704467 +0200
-@@ -5,7 +5,7 @@
- _Comment=Get notified when new mail arrives
- Type=Application
- Categories=GNOME;GTK;Network;Email;
--Exec=mail-notification --sm-disable
-+Exec=mail-notification
- Terminal=false
- StartupNotify=true
- X-GNOME-DocPath=mail-notification/mail-notification.xml
diff --git a/extra/mail-notification/mail-notification-5.4-icons.patch b/extra/mail-notification/mail-notification-5.4-icons.patch
deleted file mode 100644
index 48d54742a..000000000
--- a/extra/mail-notification/mail-notification-5.4-icons.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-diff -Nrbu mail-notification-5.4/src/mn-stock.c mail-notification-5.4-OK/src/mn-stock.c
---- mail-notification-5.4/src/mn-stock.c 2008-05-22 19:45:35.000000000 +0400
-+++ mail-notification-5.4-OK/src/mn-stock.c 2010-05-24 19:36:03.000000000 +0400
-@@ -32,11 +32,11 @@
- const char *icon_name;
- const char *source_stock_id;
- } icons[] = {
-- { MN_STOCK_MAIL, NULL, "stock_mail" },
-- { MN_STOCK_NO_MAIL, NULL, "stock_inbox" },
-- { MN_STOCK_LOCAL, NULL, "stock_folder" },
-- { MN_STOCK_REMOTE, NULL, "stock_internet" },
-- { MN_STOCK_UNKNOWN, NULL, "stock_unknown" },
-+ { MN_STOCK_MAIL, NULL, "mail-message-new" },
-+ { MN_STOCK_NO_MAIL, NULL, "mail-notification" },
-+ { MN_STOCK_LOCAL, NULL, "folder" },
-+ { MN_STOCK_REMOTE, NULL, "applications-internet" },
-+ { MN_STOCK_UNKNOWN, NULL, "dialog-question" },
- { MN_STOCK_ERROR, NULL, NULL, GTK_STOCK_DIALOG_ERROR },
- #if WITH_GMAIL
- { MN_STOCK_GMAIL, PKGDATADIR G_DIR_SEPARATOR_S "gmail.png" },
-@@ -48,14 +48,14 @@
- { MN_STOCK_HOTMAIL, PKGDATADIR G_DIR_SEPARATOR_S "hotmail.png" },
- #endif
- #if WITH_MBOX || WITH_MOZILLA || WITH_MH || WITH_MAILDIR || WITH_SYLPHEED
-- { MN_STOCK_SYSTEM_MAILBOX, NULL, "system" },
-+ { MN_STOCK_SYSTEM_MAILBOX, NULL, "applications-system" },
- #endif
- #if WITH_EVOLUTION
- { MN_STOCK_EVOLUTION_MAILBOX, NULL, "evolution" },
- #endif
-- { MN_STOCK_MAIL_READER, NULL, "stock_mail-handling" },
-- { MN_STOCK_OPEN_MESSAGE, NULL, "stock_mail-open" },
-- { MN_STOCK_CONSIDER_NEW_MAIL_AS_READ, NULL, "stock_mark" }
-+ { MN_STOCK_MAIL_READER, NULL, "mail-unread" },
-+ { MN_STOCK_OPEN_MESSAGE, NULL, "mail-read" },
-+ { MN_STOCK_CONSIDER_NEW_MAIL_AS_READ, NULL, "mail-mark-read" }
- };
- GtkIconFactory *factory;
- GtkIconTheme *icon_theme;
diff --git a/extra/mail-notification/mail-notification-5.4-kde-trayicon.patch b/extra/mail-notification/mail-notification-5.4-kde-trayicon.patch
deleted file mode 100644
index a3bdc8372..000000000
--- a/extra/mail-notification/mail-notification-5.4-kde-trayicon.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-diff -Nrbu mail-notification-5.4/build/src/mn-shell.c mail-notification-5.4-OK/build/src/mn-shell.c
---- mail-notification-5.4/build/src/mn-shell.c 2010-10-11 17:45:23.000000000 +0400
-+++ mail-notification-5.4-OK/build/src/mn-shell.c 2010-10-11 17:45:48.000000000 +0400
-@@ -313,6 +313,29 @@
- #undef __GOB_FUNCTION__
-
- static void
-+mn_shell_init_icon_base (MNShell * self)
-+{
-+ g_return_if_fail (self != NULL);
-+ g_return_if_fail (MN_IS_SHELL (self));
-+
-+ self->icon = MN_MAIL_ICON(mn_mail_icon_new());
-+ mn_add_weak_pointer(&self->icon);
-+
-+ g_object_connect(self->icon,
-+ "signal::activate", self_icon_activate_h, self,
-+ "signal::activate-mail-reader", self_icon_activate_mail_reader_h, self,
-+ "signal::activate-open-latest-message", self_icon_activate_open_latest_message_h, self,
-+ "swapped-signal::activate-consider-new-mail-as-read", self_consider_new_mail_as_read, self,
-+ "swapped-signal::activate-update", self_update, self,
-+ "signal::activate-properties", self_icon_activate_properties_h, self,
-+ "signal::activate-help", self_icon_activate_help_h, self,
-+ "signal::activate-about", self_icon_activate_about_h, self,
-+ "swapped-signal::activate-remove", self_quit, self,
-+ "signal::destroy", self_icon_destroy_h, self,
-+ NULL);
-+}
-+
-+static void
- mn_shell_init (MNShell * o G_GNUC_UNUSED)
- {
- #define __GOB_FUNCTION__ "MN:Shell::init"
-@@ -793,22 +816,7 @@
- {
- #line 360 "src/mn-shell.gob"
-
-- self->icon = MN_MAIL_ICON(mn_mail_icon_new());
-- mn_add_weak_pointer(&self->icon);
--
-- g_object_connect(self->icon,
-- "signal::activate", self_icon_activate_h, self,
-- "signal::activate-mail-reader", self_icon_activate_mail_reader_h, self,
-- "signal::activate-open-latest-message", self_icon_activate_open_latest_message_h, self,
-- "swapped-signal::activate-consider-new-mail-as-read", self_consider_new_mail_as_read, self,
-- "swapped-signal::activate-update", self_update, self,
-- "signal::activate-properties", self_icon_activate_properties_h, self,
-- "signal::activate-help", self_icon_activate_help_h, self,
-- "signal::activate-about", self_icon_activate_about_h, self,
-- "swapped-signal::activate-remove", self_quit, self,
-- "signal::destroy", self_icon_destroy_h, self,
-- NULL);
--
-+ mn_shell_init_icon_base(self);
- self_update_sensitivity(self);
- self_update_tooltip(self);
- self_update_icon(self);
-@@ -1094,7 +1102,13 @@
- }
- else
- {
-- gtk_widget_hide(GTK_WIDGET(self->icon));
-+ /* Re-create the icon as a regular gtk_widget_hide causes the
-+ * icon to remain visible on non-GNOME environments. We can't
-+ * use the callback self_icon_destroy_h here as it can cause an
-+ * endless recursion */
-+ g_signal_handlers_disconnect_by_func(self->icon, self_icon_destroy_h, self);
-+ gtk_widget_destroy(GTK_WIDGET(self->icon));
-+ mn_shell_init_icon_base(self);
- mn_mail_icon_set_blinking(self->icon, FALSE);
- }
- }}
diff --git a/extra/mail-notification/mail-notification-5.4-libx11.patch b/extra/mail-notification/mail-notification-5.4-libx11.patch
deleted file mode 100644
index bb3574fda..000000000
--- a/extra/mail-notification/mail-notification-5.4-libx11.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Link with libX11 explicitly.
-
---- mail-notification-5.4.dfsg.1.orig/jbsrc/jb.c
-+++ mail-notification-5.4.dfsg.1/jbsrc/jb.c
-@@ -445,6 +445,8 @@
-
- jb_compile_options_add_libs(object->compile_options, "-lm");
-
-+ jb_compile_options_add_libs(object->compile_options, "-lX11");
-+
- jb_compile_options_add_package(object->compile_options, "gettext");
- jb_compile_options_add_package(object->compile_options, "gnome");
- jb_compile_options_add_package(object->compile_options, "dbus");
diff --git a/extra/mail-notification/mail-notification-5.4-popup-attach.patch b/extra/mail-notification/mail-notification-5.4-popup-attach.patch
deleted file mode 100644
index b8d5f6a09..000000000
--- a/extra/mail-notification/mail-notification-5.4-popup-attach.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff -Nrbu mail-notification-5.4/build/src/mn-popup.c mail-notification-5.4-OK/build/src/mn-popup.c
---- mail-notification-5.4/build/src/mn-popup.c 2008-05-22 19:47:49.000000000 +0400
-+++ mail-notification-5.4-OK/build/src/mn-popup.c 2010-10-11 17:42:32.000000000 +0400
-@@ -177,6 +177,29 @@
- #undef __GOB_FUNCTION__
-
- static void
-+mn_popup_wait_for_icon_to_become_ready (void)
-+{
-+ int x, y;
-+ int count = 0;
-+
-+ /* When the tray icon is created, it can still take some time before
-+ * it has arrived at the correct position. This is especially the case
-+ * on KDE environments. To work around this, add a little delay of at
-+ * most 2 seconds before showing a popup which is attached to the notification */
-+ do {
-+ gdk_window_get_origin (gtk_widget_get_window (mn_shell->icon), &x, &y);
-+
-+ if (x != 0 || y != 0) {
-+ break;
-+ }
-+
-+ g_usleep(G_USEC_PER_SEC / 10);
-+ count++;
-+ } while (count < 20);
-+}
-+
-+
-+static void
- mn_popup_init (MNPopup * o G_GNUC_UNUSED)
- {
- #define __GOB_FUNCTION__ "MN:Popup::init"
-@@ -299,8 +322,10 @@
- "icon-name", "stock_mail",
- NULL);
-
-- if (mn_conf_get_enum_value(MN_TYPE_POPUP_POSITION, MN_CONF_POPUPS_POSITION) == MN_POPUP_POSITION_ATTACHED)
-+ if (mn_conf_get_enum_value(MN_TYPE_POPUP_POSITION, MN_CONF_POPUPS_POSITION) == MN_POPUP_POSITION_ATTACHED) {
-+ mn_popup_wait_for_icon_to_become_ready();
- g_object_set(self, "attach-widget", mn_shell->icon, NULL);
-+ }
-
- g_string_free(body, TRUE);
-
diff --git a/extra/mail-notification/mail-notification-5.4-sasl_encode64.patch b/extra/mail-notification/mail-notification-5.4-sasl_encode64.patch
deleted file mode 100644
index 80a7304d1..000000000
--- a/extra/mail-notification/mail-notification-5.4-sasl_encode64.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -up mail-notification-5.4/build/src/mn-pop3-mailbox.c mail-notification-5.4-OK/build/src/mn-pop3-mailbox.c
---- mail-notification-5.4/build/src/mn-pop3-mailbox.c 2009-05-19 10:29:58.448201837 +0200
-+++ mail-notification-5.4-OK/build/src/mn-pop3-mailbox.c 2009-05-19 10:23:29.356204287 +0200
-@@ -619,7 +619,7 @@ mn_pop3_mailbox_enter_auth_cb (MNClientS
-
- if (initial_clientoutlen > 0)
- {
-- char buf64[initial_clientoutlen * 2]; /* Base64 is 33% larger than the data it encodes */
-+ char buf64[initial_clientoutlen * 2 + 1]; /* Base64 is 33% larger than the data it encodes */
- unsigned int outlen;
- int result;
- char *str;
-diff -up mail-notification-5.4/src/mn-client-session.c mail-notification-5.4-OK/src/mn-client-session.c
---- mail-notification-5.4/src/mn-client-session.c 2008-05-22 17:45:35.000000000 +0200
-+++ mail-notification-5.4-OK/src/mn-client-session.c 2009-05-19 10:29:09.112211055 +0200
-@@ -1030,7 +1030,7 @@ mn_client_session_write (MNClientSession
- static int
- write_base64 (MNClientSession *session, const char *buf, unsigned int len)
- {
-- char buf64[len * 2]; /* Base64 is 33% larger than the data it encodes */
-+ char buf64[len * 2 + 1]; /* Base64 is 33% larger than the data it encodes */
- unsigned int outlen;
- int result;
- char *str;
diff --git a/extra/mail-notification/mail-notification-5.4-weak.patch b/extra/mail-notification/mail-notification-5.4-weak.patch
deleted file mode 100644
index 2e2a233aa..000000000
--- a/extra/mail-notification/mail-notification-5.4-weak.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Nrbu mail-notification-5.4/build/src/mn-shell.c mail-notification-5.4-OK/build/src/mn-shell.c
---- mail-notification-5.4/build/src/mn-shell.c 2008-05-22 19:47:49.000000000 +0400
-+++ mail-notification-5.4-OK/build/src/mn-shell.c 2010-05-24 19:39:48.000000000 +0400
-@@ -1008,6 +1008,7 @@
- Self *self = user_data;
-
- /* The Notification Area applet has been terminated. Recreate the icon. */
-+ mn_remove_weak_pointer(&self->icon);
- self_init_icon(self);
- }}
- #line 1014 "mn-shell.c"
diff --git a/extra/mail-notification/mail-notification.install b/extra/mail-notification/mail-notification.install
deleted file mode 100644
index 21cd94399..000000000
--- a/extra/mail-notification/mail-notification.install
+++ /dev/null
@@ -1,24 +0,0 @@
-pkgname=mail-notification
-
-post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
- kill -s HUP `pidof bonobo-activation-server` > /dev/null 2>&1
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
-}
-
-pre_upgrade() {
- pre_remove $1
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
-}
-
-post_remove() {
- kill -s HUP `pidof bonobo-activation-server` > /dev/null 2>&1
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
-}
diff --git a/extra/mail-notification/remove-ubuntu-special-case.patch b/extra/mail-notification/remove-ubuntu-special-case.patch
deleted file mode 100644
index 4516f32c6..000000000
--- a/extra/mail-notification/remove-ubuntu-special-case.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- jbsrc/lib/src/core/jb-feature.c.~1~ 2008-04-27 16:47:27.000000000 +0200
-+++ jbsrc/lib/src/core/jb-feature.c 2008-07-22 11:40:50.856886210 +0200
-@@ -164,8 +164,6 @@
- static void
- gconf_configure (void)
- {
-- JBVariable *variable;
--
- jb_require_program("gconftool-2");
-
- if (! strcmp(jb_variable_get_string("gconf-config-source"), "autodetect"))
-@@ -178,21 +176,6 @@
- jb_variable_set_string("gconf-config-source", config_source);
- g_free(config_source);
- }
--
-- /* fix the default schemas dir on Ubuntu */
-- variable = jb_variable_get_variable_or_error("gconf-schemas-dir");
-- if (! variable->user_set)
-- {
-- static const char *ubuntu_dir = "$datadir/gconf/schemas";
-- char *expanded;
--
-- expanded = jb_variable_expand(ubuntu_dir, NULL);
--
-- if (g_file_test(expanded, G_FILE_TEST_IS_DIR))
-- jb_variable_set_string("gconf-schemas-dir", ubuntu_dir);
--
-- g_free(expanded);
-- }
- }
-
- static void
diff --git a/extra/moc/gcc-undefined-symbols.diff b/extra/moc/gcc-undefined-symbols.diff
deleted file mode 100644
index 09e9b8bda..000000000
--- a/extra/moc/gcc-undefined-symbols.diff
+++ /dev/null
@@ -1,12 +0,0 @@
---- decoder.c~ 2011-05-08 09:28:28.077137883 +0200
-+++ decoder.c 2011-05-10 21:40:48.887941968 +0200
-@@ -259,6 +259,9 @@
- for (i = 0; i < plugins_num; i++)
- if (plugins[i].decoder->destroy)
- plugins[i].decoder->destroy ();
-+ for (i = 0; i < plugins_num; i++)
-+ if (plugins[i].handle)
-+ lt_dlclose(plugins[i].handle);
-
- if (lt_dlexit())
- logit ("lt_exit() failed: %s", lt_dlerror());
diff --git a/extra/moc/moc-ffmpeg.patch b/extra/moc/moc-ffmpeg.patch
deleted file mode 100644
index 7554ea14e..000000000
--- a/extra/moc/moc-ffmpeg.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: decoder_plugins/ffmpeg/ffmpeg.c
-===================================================================
---- decoder_plugins/ffmpeg/ffmpeg.c (revision 2307)
-+++ decoder_plugins/ffmpeg/ffmpeg.c (working copy)
-@@ -28,12 +28,6 @@
- #include <ffmpeg/avformat.h>
- #endif
-
--/* libavformat's API will be changing at version 53, but at present there
-- * appears to be no guidance on what will replace the deprecated fields. */
--#ifndef FF_API_OLD_METADATA
--#define FF_API_OLD_METADATA (LIBAVFORMAT_VERSION_MAJOR < 53)
--#endif
--
- /* FFmpeg also likes common names, without that, our common.h and log.h
- * would not be included. */
- #undef COMMON_H
-@@ -137,7 +131,7 @@
- av_read_play (data->ic);
- for (i = 0; i < data->ic->nb_streams; i++) {
- data->enc = data->ic->streams[i]->codec;
-- if (data->enc->codec_type == CODEC_TYPE_AUDIO) {
-+ if (data->enc->codec_type == AVMEDIA_TYPE_AUDIO) {
- audio_index = i;
- break;
- }
diff --git a/extra/nautilus/samba-crash.patch b/extra/nautilus/samba-crash.patch
deleted file mode 100644
index b10d39008..000000000
--- a/extra/nautilus/samba-crash.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 4e59e4cfc7bc68534664d9f72d0c7ea680b79db3 Mon Sep 17 00:00:00 2001
-From: Cosimo Cecchi <cosimoc@gnome.org>
-Date: Fri, 04 May 2012 18:38:43 +0000
-Subject: places-sidebar: don't double unref GMount objects
-
-Fixes a lot of reported crashers with NFS/Samba volumes.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=674659
----
-diff --git a/src/nautilus-places-sidebar.c b/src/nautilus-places-sidebar.c
-index 61f3658..672a4b0 100644
---- a/src/nautilus-places-sidebar.c
-+++ b/src/nautilus-places-sidebar.c
-@@ -774,7 +774,7 @@ update_places (NautilusPlacesSidebar *sidebar)
- root = g_mount_get_default_location (mount);
-
- if (!g_file_is_native (root)) {
-- network_mounts = g_list_prepend (network_mounts, g_object_ref (mount));
-+ network_mounts = g_list_prepend (network_mounts, mount);
- continue;
- }
-
-@@ -856,7 +856,6 @@ update_places (NautilusPlacesSidebar *sidebar)
- name, icon, mount_uri,
- NULL, NULL, mount, 0, tooltip);
- g_object_unref (root);
-- g_object_unref (mount);
- g_object_unref (icon);
- g_free (name);
- g_free (mount_uri);
---
-cgit v0.9.0.2
diff --git a/extra/nmap/ChangeLog b/extra/nmap/ChangeLog
deleted file mode 100644
index a1ef5e062..000000000
--- a/extra/nmap/ChangeLog
+++ /dev/null
@@ -1,17 +0,0 @@
-
-2008-10-28 Douglas Soares de Andrade <douglas@archlinux.org>
-
- * Python 2.6 rebuild.
-
-2008-07-23 Hugo Doria <hugo@archlinux.org>
-
- * Added pygtk in optdepends: 4.68-3
-
-2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org>
-
- * Fixing the pixmaps path for i686: 4.68
-
-2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org>
-
- * Updated for i686: 4.68
-
diff --git a/extra/nxserver/NXproto.h.64bit.diff b/extra/nxserver/NXproto.h.64bit.diff
deleted file mode 100644
index ac326ebcd..000000000
--- a/extra/nxserver/NXproto.h.64bit.diff
+++ /dev/null
@@ -1,66 +0,0 @@
---- nxcomp.old/NXproto.h 2006-06-19 19:55:56.000000000 +0200
-+++ nxcomp/NXproto.h 2007-02-12 18:17:41.000000000 +0100
-@@ -26,6 +26,30 @@
- #include <X11/Xmd.h>
- #include <X11/Xproto.h>
-
-+/*
-+ Copied from Xproto.h
-+ */
-+
-+/* For the purpose of the structure definitions in this file,
-+we must redefine the following types in terms of Xmd.h's types, which may
-+include bit fields. All of these are #undef'd at the end of this file,
-+restoring the definitions in X.h. */
-+
-+#define Window CARD32
-+#define Drawable CARD32
-+#define Font CARD32
-+#define Pixmap CARD32
-+#define Cursor CARD32
-+#define Colormap CARD32
-+#define GContext CARD32
-+#define Atom CARD32
-+#define VisualID CARD32
-+#define Time CARD32
-+#define KeyCode CARD8
-+#define KeySym CARD32
-+
-+/* End copied from Xproto.h */
-+
- #define sz_xNXGetControlParametersReq 4
- #define sz_xNXGetCleanupParametersReq 4
- #define sz_xNXGetImageParametersReq 4
-@@ -343,9 +367,9 @@
- CARD8 dstDepth;
- CARD32 srcLength B32;
- CARD32 dstLength B32;
-- INT16 srcX B16, srcY B16;
-+ CARD16 srcX B16, srcY B16;
- CARD16 srcWidth B16, srcHeight B16;
-- INT16 dstX B16, dstY B16;
-+ CARD16 dstX B16, dstY B16;
- CARD16 dstWidth B16, dstHeight B16;
- } xNXPutPackedImageReq;
-
-@@ -463,4 +487,20 @@
- }
- #endif
-
-+/* Copied from Xproto.h */
-+
-+/* restore these definitions back to the typedefs in X.h */
-+#undef Window
-+#undef Drawable
-+#undef Font
-+#undef Pixmap
-+#undef Cursor
-+#undef Colormap
-+#undef GContext
-+#undef Atom
-+#undef VisualID
-+#undef Time
-+#undef KeyCode
-+#undef KeySym
-+
- #endif /* NXproto_H */
diff --git a/extra/nxserver/PKGBUILD b/extra/nxserver/PKGBUILD
deleted file mode 100644
index 242c5f08b..000000000
--- a/extra/nxserver/PKGBUILD
+++ /dev/null
@@ -1,95 +0,0 @@
-# $Id: PKGBUILD 148864 2012-02-05 11:53:19Z ibiru $
-# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
-# Contributed: eliott <eliott@solarblue.net>, Andre Naumann <anaumann@SPARCed.org>
-
-pkgname=nxserver
-pkgver=3.5.0
-pkgrel=5
-pkgdesc="NoMachine NX is the next-generation X compression and roundtrip suppression scheme."
-arch=(i686 x86_64)
-url="http://nomachine.com/"
-license=('GPL')
-depends=("nx-common" 'libxaw' 'libxrender' 'libxp' 'gcc-libs' 'libjpeg>=8' #>=$pkgver
- 'libxpm' 'libpng>=1.5.7' 'libxdamage' 'libxrandr' 'libxcomposite' 'libxtst' 'freetype2'
- 'xorg-sessreg')
-makedepends=('imake')
-source=(
-#X11 support programs and libraries
-http://64.34.161.181/download/$pkgver/sources/nx-X11-$pkgver-2.tar.gz
-http://64.34.161.181/download/$pkgver/sources/nxwin-$pkgver-2.tar.gz
-http://64.34.161.181/download/$pkgver/sources/nxauth-$pkgver-1.tar.gz
-http://64.34.161.181/download/$pkgver/sources/nxcomp-$pkgver-2.tar.gz # needed to provide NX.h and -LXcomp - part of nx-common
-#X11 Agent sources
-http://64.34.161.181/download/$pkgver/sources/nxagent-$pkgver-7.tar.gz
-http://64.34.161.181/download/$pkgver/sources/nxcompsh-$pkgver-1.tar.gz # needed to get X11 built - part of nx-common
-#Compression libs and proxy sources
-http://64.34.161.181/download/$pkgver/sources/nxproxy-$pkgver-1.tar.gz
-http://64.34.161.181/download/$pkgver/sources/nxcompext-$pkgver-1.tar.gz
-http://64.34.161.181/download/$pkgver/sources/nxcompshad-$pkgver-2.tar.gz
-# gcc 43 fix
-nxcompsh-gcc43.patch
-nx-3.5.0-libpng15.patch)
-options=(!libtool)
-md5sums=('12060433a74ac61a1c776d1d6d136117'
- '84c7f1575d9a1506370125ed050514ab'
- 'cf38ec1e5a5f6453946cd387c14f2684'
- 'ad8c0f133122c6d07732ca69c8759410'
- '0a36c7e6a86c6c741179464b8f79c487'
- '84ade443b79ea079380b754aba9d392e'
- '488bb4d9b8e9f82dc272b4e6e9c57d30'
- 'abde2ccc33e31fc695031c2cfb60f3dd'
- '90a762dd9eb19c8c97876ad837923857'
- 'b6c279654dac421fc3dd1a27d66ff53c'
- '2966353cabb96829eab291212ef078dc')
-
-build() {
- cd ${srcdir}
-
- # nxcomp
- cd ${srcdir}/nxcomp
- patch -Np1 -i ${srcdir}/nx-3.5.0-libpng15.patch
- ./configure --prefix=/opt/NX
- make
- # nxcompshad
- cd ${srcdir}/nxcompshad
- ./configure --prefix=/opt/NX
- make
- # nxcompsh
- cd ${srcdir}/nxcompsh
- patch -Np1 -i ${srcdir}/nxcompsh-gcc43.patch
- ./configure --prefix=/opt/NX
- make
- # nxproxy
- cd ${srcdir}/nxproxy
- ./configure --prefix=/opt/NX
- make
- # nx-X11
- cd ${srcdir}/nx-X11
- make World
- # nxcompext
- cd ${srcdir}/nxcompext
- ./configure --prefix=/opt/NX
- make
-}
-
-package() {
- mkdir -p ${pkgdir}/opt/NX/bin
- mkdir -p ${pkgdir}/opt/NX/lib
-
- # nxcompshad
- cd ${srcdir}/nxcompshad
- cp -a libXcompshad.so* ${pkgdir}/opt/NX/lib
- # nxproxy
- cd ${srcdir}/nxproxy
- make prefix=${pkgdir}/opt/NX install
- # nx-X11
- cd ${srcdir}/nx-X11
- cp -a lib/X11/libX11.so* ${pkgdir}/opt/NX/lib
- cp -a lib/Xext/libXext.so* ${pkgdir}/opt/NX/lib
- cp -a lib/Xrender/libXrender.so* ${pkgdir}/opt/NX/lib
- install -D -m755 programs/Xserver/nxagent ${pkgdir}/opt/NX/bin/nxagent
- install -D -m755 programs/nxauth/nxauth ${pkgdir}/opt/NX/bin/nxauth
- # nxcompext
- cd ${srcdir}/nxcompext
- cp -a libXcompext.so* ${pkgdir}/opt/NX/lib
-} \ No newline at end of file
diff --git a/extra/nxserver/nx-3.5.0-libpng15.patch b/extra/nxserver/nx-3.5.0-libpng15.patch
deleted file mode 100644
index c8f2a9559..000000000
--- a/extra/nxserver/nx-3.5.0-libpng15.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ur nxcomp.orig/Pgn.cpp nxcomp/Pgn.cpp
---- nxcomp.orig/Pgn.cpp 2010-03-01 19:18:59.000000000 +0200
-+++ nxcomp/Pgn.cpp 2011-09-13 16:35:12.000000000 +0300
-@@ -414,7 +414,7 @@
-
- png_read_info(pngPtr, infoPtr);
-
-- if (infoPtr -> color_type == PNG_COLOR_TYPE_PALETTE)
-+ if (png_get_color_type(pngPtr, infoPtr) == PNG_COLOR_TYPE_PALETTE)
- {
- png_set_expand(pngPtr);
- }
-@@ -565,7 +565,7 @@
-
- png_read_info( pngPtr, infoPtr ) ;
-
-- if (infoPtr -> color_type == PNG_COLOR_TYPE_PALETTE)
-+ if (png_get_color_type(pngPtr, infoPtr) == PNG_COLOR_TYPE_PALETTE)
- {
- png_set_expand(pngPtr);
- }
-@@ -709,7 +709,7 @@
- png_read_info(pngPtr, infoPtr) ;
-
-
-- if (infoPtr -> color_type == PNG_COLOR_TYPE_PALETTE)
-+ if (png_get_color_type(pngPtr, infoPtr) == PNG_COLOR_TYPE_PALETTE)
- {
- png_set_expand(pngPtr);
- }
diff --git a/extra/nxserver/nxcompsh-gcc43.patch b/extra/nxserver/nxcompsh-gcc43.patch
deleted file mode 100644
index 681a0dab5..000000000
--- a/extra/nxserver/nxcompsh-gcc43.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- nxcompsh/Misc.h~ 2007-06-04 13:39:49.000000000 +0200
-+++ nxcompsh/Misc.h 2008-04-12 12:46:24.000000000 +0200
-@@ -18,10 +18,12 @@
- #ifndef Misc_H
- #define Misc_H
-
--#include <iostream.h>
-+#include <iostream>
-
--#include <errno.h>
--#include <string.h>
-+#include <cerrno>
-+#include <cstring>
-+
-+using namespace std;
-
- //
- // Error handling macros.
-
diff --git a/extra/openmpi/openmpi-1.5.4-fix-fakeroot-execution.patch b/extra/openmpi/openmpi-1.5.4-fix-fakeroot-execution.patch
deleted file mode 100644
index dc9dcfeae..000000000
--- a/extra/openmpi/openmpi-1.5.4-fix-fakeroot-execution.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Description: If running under Debian fakeroot then its important
- that this hook is disabled; a new stat check was introduced in
- 1.5.x which preceeds the FAKEROOT check resulting in a SEGFAULT.
-Author: James Page <james.page@ubuntu.com>
-Origin: https://svn.open-mpi.org/trac/ompi/changeset/21489
-
-Index: openmpi-1.5.4/opal/mca/memory/linux/hooks.c
-===================================================================
---- openmpi-1.5.4.orig/opal/mca/memory/linux/hooks.c 2012-02-15 12:59:39.986314651 +0000
-+++ openmpi-1.5.4/opal/mca/memory/linux/hooks.c 2012-02-15 13:14:57.744722517 +0000
-@@ -738,15 +738,6 @@
- check_result_t r1, r2, lp, lpp;
- bool want_rcache = false, found_driver = false;
-
-- /* First, check if ummunotify is present on the system. If it is,
-- then we don't need to do the following ptmalloc2 hacks.
-- open/mmap on the device may fail during init, but if /dev/ummunotify
-- exists, we assume that the user/administrator *wants* to use
-- ummunotify. */
-- if (stat("/dev/ummunotify", &st) == 0) {
-- return;
-- }
--
- /* Yes, checking for an MPI MCA parameter here is an abstraction
- violation. Cope. Yes, even checking for *any* MCA parameter
- here (without going through the MCA param API) is an
-@@ -769,6 +760,15 @@
- return;
- }
-
-+ /* Next, check if ummunotify is present on the system. If it is,
-+ then we don't need to do the following ptmalloc2 hacks.
-+ open/mmap on the device may fail during init, but if /dev/ummunotify
-+ exists, we assume that the user/administrator *wants* to use
-+ ummunotify. */
-+ if (stat("/dev/ummunotify", &st) == 0) {
-+ return;
-+ }
-+
- /* Look for sentinel files (directories) to see if various network
- drivers are loaded (yes, I know, further abstraction
- violations...).
-
diff --git a/extra/php-suhosin/PKGBUILD b/extra/php-suhosin/PKGBUILD
deleted file mode 100644
index 45adeb4ee..000000000
--- a/extra/php-suhosin/PKGBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# $Id: PKGBUILD 146961 2012-01-19 17:54:16Z pierre $
-# Maintainer: Pierre Schmitz <pierre@archlinux.de>
-
-pkgname=php-suhosin
-pkgver=0.9.33
-pkgrel=1
-arch=('i686' 'x86_64')
-pkgdesc='An advanced protection system for PHP installations'
-url='http://www.hardened-php.net/suhosin/'
-license='PHP'
-source=("http://download.suhosin.org/suhosin-${pkgver}.tgz"
- "http://download.suhosin.org/suhosin-${pkgver}.tgz.sig")
-depends=('php')
-conflicts=('php-suhosin-extension')
-replaces=('php-suhosin-extension')
-backup=('etc/php/conf.d/suhosin.ini')
-md5sums=('0ce498a02a8281e4274ea8e390c2b487'
- '6e9536cc71342bab0efb1e9a84f688a6')
-
-build() {
- cd ${srcdir}/suhosin-${pkgver}
- phpize
- ./configure --prefix=/usr --enable-suhosin
- make
-}
-
-package() {
- cd ${srcdir}/suhosin-${pkgver}
- make INSTALL_ROOT=${pkgdir} install
- # disable by default
- sed -i 's|extension = suhosin.so|;extension=suhosin.so|g' suhosin.ini
- install -D -m644 suhosin.ini ${pkgdir}/etc/php/conf.d/suhosin.ini
-}
diff --git a/extra/php/suhosin.patch b/extra/php/suhosin.patch
deleted file mode 100644
index e5db52d40..000000000
--- a/extra/php/suhosin.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- suhosin-patch-5.3.9-0.9.10.patch 2012-04-01 11:55:46.699676255 +0200
-+++ suhosin-patch-5.3.9-0.9.10.patch 2012-04-01 11:56:19.322146479 +0200
-@@ -4515,8 +4515,8 @@
- +#define SUHOSIN_PATCH 1
- +EOF
-
-- echo $ac_n "checking for declared timezone""... $ac_c" 1>&6
-- echo "configure:19377: checking for declared timezone" >&5
-+ echo "$as_me:$LINENO: checking for declared timezone" >&5
-+ echo $ECHO_N "checking for declared timezone... $ECHO_C" >&6
- @@ -115830,7 +115833,7 @@
- php_ini.c SAPI.c rfc1867.c php_content_types.c strlcpy.c \
- strlcat.c mergesort.c reentrancy.c php_variables.c php_ticks.c \
diff --git a/extra/pidgin/port-to-farstream-v3.patch b/extra/pidgin/port-to-farstream-v3.patch
deleted file mode 100644
index 93e29af50..000000000
--- a/extra/pidgin/port-to-farstream-v3.patch
+++ /dev/null
@@ -1,447 +0,0 @@
-diff -upr pidgin-2.10.1.orig/configure.ac pidgin-2.10.1/configure.ac
---- pidgin-2.10.1.orig/configure.ac 2011-12-06 10:44:32.000000000 +0200
-+++ pidgin-2.10.1/configure.ac 2012-03-10 18:21:12.000000000 +0200
-@@ -780,18 +780,18 @@ else
- fi
-
- dnl #######################################################################
--dnl # Check for Farsight
-+dnl # Check for Farstream
- dnl #######################################################################
--AC_ARG_ENABLE(farsight,
-- [AC_HELP_STRING([--disable-farsight], [compile without farsight support])],
-- enable_farsight="$enableval", enable_farsight="yes")
--if test "x$enable_farsight" != "xno"; then
-- PKG_CHECK_MODULES(FARSIGHT, [farsight2-0.10 >= 0.0.9], [
-- AC_DEFINE(USE_FARSIGHT, 1, [Use Farsight for voice and video])
-- AC_SUBST(FARSIGHT_CFLAGS)
-- AC_SUBST(FARSIGHT_LIBS)
-+AC_ARG_ENABLE(farstream,
-+ [AC_HELP_STRING([--disable-farstream], [compile without farstream support])],
-+ enable_farstream="$enableval", enable_farstream="yes")
-+if test "x$enable_farstream" != "xno"; then
-+ PKG_CHECK_MODULES(FARSTREAM, [farstream-0.1], [
-+ AC_DEFINE(USE_FARSTREAM, 1, [Use Farstream for voice and video])
-+ AC_SUBST(FARSTREAM_CFLAGS)
-+ AC_SUBST(FARSTREAM_LIBS)
- ], [
-- enable_farsight="no"
-+ enable_farstream="no"
- ])
- fi
-
-@@ -802,20 +802,20 @@ AC_ARG_ENABLE(vv,
- [AC_HELP_STRING([--disable-vv], [compile without voice and video support])],
- enable_vv="$enableval", enable_vv="yes")
- if test "x$enable_vv" != "xno"; then
-- if test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farsight" != "xno"; then
-+ if test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farstream" != "xno"; then
- AC_DEFINE(USE_VV, 1, [Use voice and video])
- else
- enable_vv="no"
- if test "x$force_deps" = "xyes"; then
- AC_MSG_ERROR([
- Dependencies for voice/video were not met.
--Install the necessary gstreamer and farsight packages first.
-+Install the necessary gstreamer and farstream packages first.
- Or use --disable-vv if you do not need voice/video support.
- ])
- fi
- fi
- fi
--AM_CONDITIONAL(USE_VV, test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farsight" != "xno")
-+AM_CONDITIONAL(USE_VV, test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farstream" != "xno")
-
- dnl #######################################################################
- dnl # Check for Internationalized Domain Name support
-diff -upr pidgin-2.10.1.orig/libpurple/Makefile.am pidgin-2.10.1/libpurple/Makefile.am
---- pidgin-2.10.1.orig/libpurple/Makefile.am 2011-12-06 10:44:33.000000000 +0200
-+++ pidgin-2.10.1/libpurple/Makefile.am 2012-03-10 18:21:19.000000000 +0200
-@@ -306,7 +306,7 @@ libpurple_la_LIBADD = \
- $(LIBXML_LIBS) \
- $(NETWORKMANAGER_LIBS) \
- $(INTLLIBS) \
-- $(FARSIGHT_LIBS) \
-+ $(FARSTREAM_LIBS) \
- $(GSTREAMER_LIBS) \
- $(GSTINTERFACES_LIBS) \
- $(IDN_LIBS) \
-@@ -322,7 +322,7 @@ AM_CPPFLAGS = \
- $(DEBUG_CFLAGS) \
- $(DBUS_CFLAGS) \
- $(LIBXML_CFLAGS) \
-- $(FARSIGHT_CFLAGS) \
-+ $(FARSTREAM_CFLAGS) \
- $(GSTREAMER_CFLAGS) \
- $(GSTINTERFACES_CFLAGS) \
- $(IDN_CFLAGS) \
-diff -upr pidgin-2.10.1.orig/libpurple/media/backend-fs2.c pidgin-2.10.1/libpurple/media/backend-fs2.c
---- pidgin-2.10.1.orig/libpurple/media/backend-fs2.c 2011-12-06 10:44:33.000000000 +0200
-+++ pidgin-2.10.1/libpurple/media/backend-fs2.c 2012-03-10 18:21:19.000000000 +0200
-@@ -1,5 +1,5 @@
- /**
-- * @file backend-fs2.c Farsight 2 backend for media API
-+ * @file backend-fs2.c Farstream backend for media API
- * @ingroup core
- */
-
-@@ -34,8 +34,9 @@
- #include "network.h"
- #include "media-gst.h"
-
--#include <gst/farsight/fs-conference-iface.h>
--#include <gst/farsight/fs-element-added-notifier.h>
-+#include <farstream/fs-conference.h>
-+#include <farstream/fs-element-added-notifier.h>
-+#include <farstream/fs-utils.h>
-
- /** @copydoc _PurpleMediaBackendFs2Class */
- typedef struct _PurpleMediaBackendFs2Class PurpleMediaBackendFs2Class;
-@@ -112,6 +113,8 @@ struct _PurpleMediaBackendFs2Stream
- gchar *participant;
- FsStream *stream;
-
-+ gboolean supports_add;
-+
- GstElement *src;
- GstElement *tee;
- GstElement *volume;
-@@ -147,6 +150,8 @@ struct _PurpleMediaBackendFs2Private
- FsConference *conference;
- gchar *conference_type;
-
-+ FsElementAddedNotifier *notifier;
-+
- GHashTable *sessions;
- GHashTable *participants;
-
-@@ -212,6 +217,11 @@ purple_media_backend_fs2_dispose(GObject
-
- purple_debug_info("backend-fs2", "purple_media_backend_fs2_dispose\n");
-
-+ if (priv->notifier) {
-+ g_object_unref(priv->notifier);
-+ priv->notifier = NULL;
-+ }
-+
- if (priv->confbin) {
- GstElement *pipeline;
-
-@@ -846,7 +856,7 @@ gst_handle_message_element(GstBus *bus,
- priv->conference != FS_CONFERENCE(src))
- return;
-
-- if (gst_structure_has_name(msg->structure, "farsight-error")) {
-+ if (gst_structure_has_name(msg->structure, "farstream-error")) {
- FsError error_no;
- gst_structure_get_enum(msg->structure, "error-no",
- FS_TYPE_ERROR, (gint*)&error_no);
-@@ -867,16 +877,9 @@ gst_handle_message_element(GstBus *bus,
- " strict."));
- purple_media_end(priv->media, NULL, NULL);
- break;
-- case FS_ERROR_UNKNOWN_CNAME:
-- /*
-- * Unknown CName is only a problem for the
-- * multicast transmitter which isn't used.
-- * It is also deprecated.
-- */
-- break;
- default:
- purple_debug_error("backend-fs2",
-- "farsight-error: %i: %s\n",
-+ "farstream-error: %i: %s\n",
- error_no,
- gst_structure_get_string(
- msg->structure, "error-msg"));
-@@ -885,11 +888,11 @@ gst_handle_message_element(GstBus *bus,
-
- if (FS_ERROR_IS_FATAL(error_no)) {
- purple_media_error(priv->media, _("A non-recoverable "
-- "Farsight2 error has occurred."));
-+ "Farstream error has occurred."));
- purple_media_end(priv->media, NULL, NULL);
- }
- } else if (gst_structure_has_name(msg->structure,
-- "farsight-new-local-candidate")) {
-+ "farstream-new-local-candidate")) {
- const GValue *value;
- FsStream *stream;
- FsCandidate *local_candidate;
-@@ -924,7 +927,7 @@ gst_handle_message_element(GstBus *bus,
- session->id, name, candidate);
- g_object_unref(candidate);
- } else if (gst_structure_has_name(msg->structure,
-- "farsight-local-candidates-prepared")) {
-+ "farstream-local-candidates-prepared")) {
- const GValue *value;
- FsStream *stream;
- FsParticipant *participant;
-@@ -942,7 +945,7 @@ gst_handle_message_element(GstBus *bus,
- g_signal_emit_by_name(self, "candidates-prepared",
- session->id, name);
- } else if (gst_structure_has_name(msg->structure,
-- "farsight-new-active-candidate-pair")) {
-+ "farstream-new-active-candidate-pair")) {
- const GValue *value;
- FsStream *stream;
- FsCandidate *local_candidate;
-@@ -976,7 +979,7 @@ gst_handle_message_element(GstBus *bus,
- g_object_unref(lcandidate);
- g_object_unref(rcandidate);
- } else if (gst_structure_has_name(msg->structure,
-- "farsight-recv-codecs-changed")) {
-+ "farstream-recv-codecs-changed")) {
- const GValue *value;
- GList *codecs;
- FsCodec *codec;
-@@ -986,10 +989,10 @@ gst_handle_message_element(GstBus *bus,
- codec = codecs->data;
-
- purple_debug_info("backend-fs2",
-- "farsight-recv-codecs-changed: %s\n",
-+ "farstream-recv-codecs-changed: %s\n",
- codec->encoding_name);
- } else if (gst_structure_has_name(msg->structure,
-- "farsight-component-state-changed")) {
-+ "farstream-component-state-changed")) {
- const GValue *value;
- FsStreamState fsstate;
- guint component;
-@@ -1025,11 +1028,11 @@ gst_handle_message_element(GstBus *bus,
- }
-
- purple_debug_info("backend-fs2",
-- "farsight-component-state-changed: "
-+ "farstream-component-state-changed: "
- "component: %u state: %s\n",
- component, state);
- } else if (gst_structure_has_name(msg->structure,
-- "farsight-send-codec-changed")) {
-+ "farstream-send-codec-changed")) {
- const GValue *value;
- FsCodec *codec;
- gchar *codec_str;
-@@ -1039,12 +1042,12 @@ gst_handle_message_element(GstBus *bus,
- codec_str = fs_codec_to_string(codec);
-
- purple_debug_info("backend-fs2",
-- "farsight-send-codec-changed: codec: %s\n",
-+ "farstream-send-codec-changed: codec: %s\n",
- codec_str);
-
- g_free(codec_str);
- } else if (gst_structure_has_name(msg->structure,
-- "farsight-codecs-changed")) {
-+ "farstream-codecs-changed")) {
- const GValue *value;
- FsSession *fssession;
- GList *sessions;
-@@ -1220,8 +1223,12 @@ stream_info_cb(PurpleMedia *media, Purpl
- purple_media_is_initiator(media, sid, name))
- return;
-
-- fs_stream_set_remote_candidates(stream->stream,
-- stream->remote_candidates, &err);
-+ if (stream->supports_add)
-+ fs_stream_add_remote_candidates(stream->stream,
-+ stream->remote_candidates, &err);
-+ else
-+ fs_stream_force_remote_candidates(stream->stream,
-+ stream->remote_candidates, &err);
-
- if (err == NULL)
- return;
-@@ -1301,6 +1308,7 @@ init_conference(PurpleMediaBackendFs2 *s
- GstElement *pipeline;
- GstBus *bus;
- gchar *name;
-+ GKeyFile *default_props;
-
- priv->conference = FS_CONFERENCE(
- gst_element_factory_make(priv->conference_type, NULL));
-@@ -1343,6 +1351,14 @@ init_conference(PurpleMediaBackendFs2 *s
- return FALSE;
- }
-
-+ default_props = fs_utils_get_default_element_properties(GST_ELEMENT(priv->conference));
-+ if (default_props != NULL) {
-+ priv->notifier = fs_element_added_notifier_new();
-+ fs_element_added_notifier_add(priv->notifier,
-+ GST_BIN(priv->confbin));
-+ fs_element_added_notifier_set_properties_from_keyfile(priv->notifier, default_props);
-+ }
-+
- g_signal_connect(G_OBJECT(bus), "message",
- G_CALLBACK(gst_bus_cb), self);
- gst_object_unref(bus);
-@@ -1559,7 +1575,7 @@ create_session(PurpleMediaBackendFs2 *se
- * receiving the src-pad-added signal.
- * Only works for non-multicast FsRtpSessions.
- */
-- if (is_nice || !strcmp(transmitter, "rawudp"))
-+ if (!!strcmp(transmitter, "multicast"))
- g_object_set(G_OBJECT(session->session),
- "no-rtcp-timeout", 0, NULL);
-
-@@ -1612,7 +1628,7 @@ create_participant(PurpleMediaBackendFs2
- GError *err = NULL;
-
- participant = fs_conference_new_participant(
-- priv->conference, name, &err);
-+ priv->conference, &err);
-
- if (err) {
- purple_debug_error("backend-fs2",
-@@ -1622,6 +1638,12 @@ create_participant(PurpleMediaBackendFs2
- return FALSE;
- }
-
-+ if (g_object_class_find_property(G_OBJECT_GET_CLASS(participant),
-+ "cname")) {
-+ g_object_set(participant, "cname", name, NULL);
-+ }
-+
-+
- if (!priv->participants) {
- purple_debug_info("backend-fs2",
- "Creating hash table for participants\n");
-@@ -1786,6 +1808,40 @@ create_stream(PurpleMediaBackendFs2 *sel
- }
- }
-
-+
-+ session = get_session(self, sess_id);
-+
-+ if (session == NULL) {
-+ purple_debug_error("backend-fs2",
-+ "Couldn't find session to create stream.\n");
-+ return FALSE;
-+ }
-+
-+ participant = get_participant(self, who);
-+
-+ if (participant == NULL) {
-+ purple_debug_error("backend-fs2", "Couldn't find "
-+ "participant to create stream.\n");
-+ return FALSE;
-+ }
-+
-+ fsstream = fs_session_new_stream(session->session, participant,
-+ initiator == TRUE ? type_direction :
-+ (type_direction & FS_DIRECTION_RECV), &err);
-+
-+ if (fsstream == NULL) {
-+ if (err) {
-+ purple_debug_error("backend-fs2",
-+ "Error creating stream: %s\n",
-+ err && err->message ?
-+ err->message : "NULL");
-+ g_error_free(err);
-+ } else
-+ purple_debug_error("backend-fs2",
-+ "Error creating stream\n");
-+ return FALSE;
-+ }
-+
- memcpy(_params, params, sizeof(GParameter) * num_params);
-
- /* set the controlling mode parameter */
-@@ -1840,45 +1896,22 @@ create_stream(PurpleMediaBackendFs2 *sel
- _num_params++;
- }
-
-- session = get_session(self, sess_id);
-
-- if (session == NULL) {
-- purple_debug_error("backend-fs2",
-- "Couldn't find session to create stream.\n");
-- return FALSE;
-- }
--
-- participant = get_participant(self, who);
--
-- if (participant == NULL) {
-- purple_debug_error("backend-fs2", "Couldn't find "
-- "participant to create stream.\n");
-- return FALSE;
-+ if(!fs_stream_set_transmitter(fsstream, transmitter,
-+ _params, _num_params, &err)) {
-+ purple_debug_error("backend-fs2", "Could not set transmitter %s: %s.\n", transmitter, err->message);
-+ g_clear_error(&err);
-+ g_free(_params);
-+ return FALSE;
- }
--
-- fsstream = fs_session_new_stream(session->session, participant,
-- initiator == TRUE ? type_direction :
-- (type_direction & FS_DIRECTION_RECV), transmitter,
-- _num_params, _params, &err);
- g_free(_params);
-
-- if (fsstream == NULL) {
-- if (err) {
-- purple_debug_error("backend-fs2",
-- "Error creating stream: %s\n",
-- err && err->message ?
-- err->message : "NULL");
-- g_error_free(err);
-- } else
-- purple_debug_error("backend-fs2",
-- "Error creating stream\n");
-- return FALSE;
-- }
-
- stream = g_new0(PurpleMediaBackendFs2Stream, 1);
- stream->participant = g_strdup(who);
- stream->session = session;
- stream->stream = fsstream;
-+ stream->supports_add = !strcmp(transmitter, "nice");
-
- priv->streams = g_list_append(priv->streams, stream);
-
-@@ -1991,7 +2024,11 @@ purple_media_backend_fs2_add_remote_cand
- if (purple_media_is_initiator(priv->media, sess_id, participant) ||
- purple_media_accepted(
- priv->media, sess_id, participant)) {
-- fs_stream_set_remote_candidates(stream->stream,
-+ if (stream->supports_add)
-+ fs_stream_add_remote_candidates(stream->stream,
-+ stream->remote_candidates, &err);
-+ else
-+ fs_stream_force_remote_candidates(stream->stream,
- stream->remote_candidates, &err);
-
- if (err) {
-diff -upr pidgin-2.10.1.orig/libpurple/media.c pidgin-2.10.1/libpurple/media.c
---- pidgin-2.10.1.orig/libpurple/media.c 2011-12-06 10:44:33.000000000 +0200
-+++ pidgin-2.10.1/libpurple/media.c 2012-03-10 18:21:19.000000000 +0200
-@@ -1067,7 +1067,6 @@ purple_media_add_stream(PurpleMedia *med
- {
- #ifdef USE_VV
- PurpleMediaSession *session;
-- PurpleMediaStream *stream = NULL;
-
- g_return_val_if_fail(PURPLE_IS_MEDIA(media), FALSE);
-
-@@ -1103,7 +1102,7 @@ purple_media_add_stream(PurpleMedia *med
- }
-
- if (purple_media_get_stream(media, sess_id, who) == NULL) {
-- stream = purple_media_insert_stream(session, who, initiator);
-+ purple_media_insert_stream(session, who, initiator);
-
- g_signal_emit(media, purple_media_signals[STATE_CHANGED],
- 0, PURPLE_MEDIA_STATE_NEW,
-diff -upr pidgin-2.10.1.orig/libpurple/mediamanager.c pidgin-2.10.1/libpurple/mediamanager.c
---- pidgin-2.10.1.orig/libpurple/mediamanager.c 2011-12-06 10:44:33.000000000 +0200
-+++ pidgin-2.10.1/libpurple/mediamanager.c 2012-03-10 18:27:05.000000000 +0200
-@@ -39,7 +39,7 @@
- #ifdef USE_VV
- #include <media/backend-fs2.h>
-
--#include <gst/farsight/fs-element-added-notifier.h>
-+#include <farstream/fs-element-added-notifier.h>
- #include <gst/interfaces/xoverlay.h>
-
- /** @copydoc _PurpleMediaManagerPrivate */
diff --git a/extra/pm-utils/11netcfg b/extra/pm-utils/11netcfg
deleted file mode 100644
index 1b4d05ee7..000000000
--- a/extra/pm-utils/11netcfg
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash
-
-. /usr/lib/pm-utils/functions
-
-suspend_netcfg() {
- netcfg2 all-suspend
-}
-
-resume_netcfg() {
- netcfg2 all-resume
-}
-
-if [ -x /usr/bin/netcfg2 ]; then
- case "$1" in
- hibernate|suspend)
- suspend_netcfg
- ;;
- thaw|resume)
- resume_netcfg
- ;;
- *)
- ;;
- esac
-fi
-
-exit $?
diff --git a/extra/qt/fix-buffer-overflow.patch b/extra/qt/fix-buffer-overflow.patch
deleted file mode 100644
index f0334f247..000000000
--- a/extra/qt/fix-buffer-overflow.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 827e5c4c689d4ecb4f8c1ab48c9a7ab712fe2ca7 Mon Sep 17 00:00:00 2001
-From: John Tapsell <john.tapsell.ext@basyskom.com>
-Date: Mon, 12 Mar 2012 22:07:47 +0000
-Subject: [PATCH] Harfbuzz-thai - fix buffer overflow when setting item
- attributes
-
-Change-Id: I19eeb4ec25a7c6cb3f584e6290169f9f327b8713
-Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
----
- src/3rdparty/harfbuzz/src/harfbuzz-thai.c | 9 +++++-
- .../qtextscriptengine/tst_qtextscriptengine.cpp | 29 ++++++++++++++++++++
- 2 files changed, 36 insertions(+), 2 deletions(-)
-
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-thai.c b/src/3rdparty/harfbuzz/src/harfbuzz-thai.c
-index bf6c35b..3c0ffe8 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-thai.c
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-thai.c
-@@ -263,8 +263,13 @@ static HB_Bool HB_ThaiConvertStringToGlyphIndices (HB_ShaperItem *item)
- // The only glyphs that should be passed to this function that cannot be mapped to
- // tis620 are the ones of type Inherited class. Pass these glyphs untouched.
- glyphString[slen++] = string[i];
-- if (string[i] == 0x200D || string[i] == 0x200C)
-- item->attributes[slen-1].dontPrint = true; // Hide ZWJ and ZWNJ characters
-+ if (string[i] == 0x200D || string[i] == 0x200C) {
-+ // Check that we do not run out of bounds when setting item->attributes. If we do
-+ // run out of bounds then this function will return false, the necessary amount of
-+ // memory is reallocated, and this function will then be called again.
-+ if (slen <= item->num_glyphs)
-+ item->attributes[slen-1].dontPrint = true; // Hide ZWJ and ZWNJ characters
-+ }
- } else {
- glyphString[slen++] = (HB_UChar16) thai_get_glyph_index (font_type, rglyphs[lgi]);
- }
-
diff --git a/extra/qt/fix-cursortox-crash.patch b/extra/qt/fix-cursortox-crash.patch
deleted file mode 100644
index fbc9c1370..000000000
--- a/extra/qt/fix-cursortox-crash.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Index: fix-cursortox-crash.patch
-===================================================================
---- fix-cursortox-crash.patch (revision 0)
-+++ fix-cursortox-crash.patch (arbetskopia)
-#commit cac12f4592477d99ef6fffaad40345bf85ef53b5
-#Author: Jiang Jiang <jiang.jiang@nokia.com>
-#Date: Mon Apr 2 12:32:05 2012 +0200
-#
-# Fix a crash in cursorToX() when new block is added
-#
-# When an empty new block is being added, the layoutData->memory data
-# will be 0, thus QTextEngine::attributes() will return 0. We should
-# only access the attributes pointer when some text actually exist.
-#
-# Task-number: QTBUG-24718
-# Change-Id: I9ce9f7b57bccf24099a02832ce30fb6cebfaad33
-#
-diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp
-index ee658d9..16f7150 100644
---- a/src/gui/text/qtextlayout.cpp
-+++ b/src/gui/text/qtextlayout.cpp
-@@ -2508,6 +2508,10 @@ qreal QTextLine::cursorToX(int *cursorPos, Edge edge) const
- int pos = *cursorPos;
- int itm;
- const HB_CharAttributes *attributes = eng->attributes();
-+ if (!attributes) {
-+ *cursorPos = 0;
-+ return x.toReal();
-+ }
- while (pos < line.from + line.length && !attributes[pos].charStop)
- pos++;
- if (pos == line.from + (int)line.length) {
diff --git a/extra/qt/gcc47.patch b/extra/qt/gcc47.patch
deleted file mode 100644
index 62c436e6a..000000000
--- a/extra/qt/gcc47.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h.me qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h
---- qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h.me 2012-01-24 11:24:14.729942043 +0100
-+++ qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h 2012-01-24 14:28:39.848109534 +0100
-@@ -57,9 +57,7 @@ namespace JSC {
-
- class JSGlobalObject : public JSVariableObject {
- protected:
-- using JSVariableObject::JSVariableObjectData;
--
-- struct JSGlobalObjectData : public JSVariableObjectData {
-+ struct JSGlobalObjectData : public JSVariableObject::JSVariableObjectData {
- // We use an explicit destructor function pointer instead of a
- // virtual destructor because we want to avoid adding a vtable
- // pointer to this struct. Adding a vtable pointer would force the
-diff -up qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h.me qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h
---- qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h.me 2012-01-24 11:40:07.167856677 +0100
-+++ qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h 2012-01-24 14:28:34.640306629 +0100
-@@ -32,8 +32,7 @@ namespace JSC{
-
- class JSStaticScopeObject : public JSVariableObject {
- protected:
-- using JSVariableObject::JSVariableObjectData;
-- struct JSStaticScopeObjectData : public JSVariableObjectData {
-+ struct JSStaticScopeObjectData : public JSVariableObject::JSVariableObjectData {
- JSStaticScopeObjectData()
- : JSVariableObjectData(&symbolTable, &registerStore + 1)
- {
diff --git a/extra/qtwebkit/python2-path.patch b/extra/qtwebkit/python2-path.patch
deleted file mode 100644
index 2e270e6fc..000000000
--- a/extra/qtwebkit/python2-path.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- QtWebKit-2.2.0/Source/JavaScriptCore/DerivedSources.pro~ 2011-10-20 22:39:56.044519075 +0000
-+++ QtWebKit-2.2.0/Source/JavaScriptCore/DerivedSources.pro 2011-10-20 22:41:21.302047082 +0000
-@@ -88,5 +88,5 @@
- retgen.output = $$JSC_GENERATED_SOURCES_DIR/RegExpJitTables.h
- retgen.wkScript = $$PWD/create_regex_tables
- retgen.input = retgen.wkScript
--retgen.commands = python $$retgen.wkScript > ${QMAKE_FILE_OUT}
-+retgen.commands = python2 $$retgen.wkScript > ${QMAKE_FILE_OUT}
- addExtraCompiler(retgen)
---- QtWebKit-2.2.0/Source/WebCore/CodeGenerators.pri~ 2011-10-20 22:44:23.827225580 +0000
-+++ QtWebKit-2.2.0/Source/WebCore/CodeGenerators.pri 2011-10-20 22:44:38.550707819 +0000
-@@ -640,7 +640,7 @@
- inspectorJSON.output = $${WC_GENERATED_SOURCES_DIR}/Inspector.idl
- inspectorJSON.input = INSPECTOR_JSON
- inspectorJSON.wkScript = $$PWD/inspector/generate-inspector-idl
--inspectorJSON.commands = python $$inspectorJSON.wkScript -o $${WC_GENERATED_SOURCES_DIR}/Inspector.idl $$PWD/inspector/Inspector.json
-+inspectorJSON.commands = python2 $$inspectorJSON.wkScript -o $${WC_GENERATED_SOURCES_DIR}/Inspector.idl $$PWD/inspector/Inspector.json
- inspectorJSON.depends = $$PWD/inspector/generate-inspector-idl
- inspectorJSON.wkAddOutputToSources = false
- addExtraCompiler(inspectorJSON)
-@@ -723,7 +723,7 @@
- entities.output = $${WC_GENERATED_SOURCES_DIR}/HTMLEntityTable.cpp
- entities.input = HTML_ENTITIES
- entities.wkScript = $$PWD/html/parser/create-html-entity-table
--entities.commands = python $$entities.wkScript -o $${WC_GENERATED_SOURCES_DIR}/HTMLEntityTable.cpp $$HTML_ENTITIES
-+entities.commands = python2 $$entities.wkScript -o $${WC_GENERATED_SOURCES_DIR}/HTMLEntityTable.cpp $$HTML_ENTITIES
- entities.clean = ${QMAKE_FILE_OUT}
- entities.depends = $$PWD/html/parser/create-html-entity-table
- addExtraCompiler(entities)
diff --git a/extra/slim/no-host.patch b/extra/slim/no-host.patch
deleted file mode 100644
index c40f25bca..000000000
--- a/extra/slim/no-host.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Datum: Sun, 30 Jan 2011 12:49:00 +0200
-Von: Samuli Suominen <ssuominen@gentoo.org>
-An: jgc@archlinux.org, andyrtr@archlinux.org, thayer@archlinux.org
-Betreff: SLIM and ConsoleKit 0.4.2 (and up)
-
-People have been coming to #xfce after Arch's ConsoleKit 0.4.3 upgrade
-to ask for help why Suspend / Hibernate / and such doesn't work.
-
-It's because SLIM is using pam_ck_connector.so and SLIM sets Host to localhost
-and makes pam_ck_connector.so believe it's actually a *remote host* called
-localhost and will refuse access.
-
-http://bugs.gentoo.org/346037
-https://developer.berlios.de/bugs/?func=detailbug&bug_id=17757&group_id=2663
-http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-misc/slim/files/346037-stop_setting_host_for_pam_ck_connector_so.patch?view=log
-
-
-diff -aur old/app.cpp new/app.cpp
---- old/app.cpp 2011-01-30 12:39:34.033337944 +0100
-+++ new/app.cpp 2011-01-30 12:40:25.843337943 +0100
-@@ -228,8 +228,6 @@
- pam.start("slim");
- pam.set_item(PAM::Authenticator::TTY, DisplayName);
- pam.set_item(PAM::Authenticator::Requestor, "root");
-- pam.set_item(PAM::Authenticator::Host, "localhost");
--
- }
- catch(PAM::Exception& e){
- cerr << APPNAME << ": " << e << endl;
diff --git a/extra/slim/restart.patch b/extra/slim/restart.patch
deleted file mode 100644
index 4e5049000..000000000
--- a/extra/slim/restart.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-http://developer.berlios.de/patch/?func=detailpatch&patch_id=2378&group_id=2663
-
-
-diff -aur slim-1.3.2.b/app.cpp slim-1.3.2.c/app.cpp
---- slim-1.3.2.b/app.cpp 2010-08-21 15:10:48.579631179 +0200
-+++ slim-1.3.2.c/app.cpp 2010-08-21 15:11:03.946389843 +0200
-@@ -104,6 +104,11 @@
-
- extern App* LoginApp;
-
-+int xioerror(Display *disp) {
-+ LoginApp->RestartServer();
-+ return 0;
-+}
-+
- void CatchSignal(int sig) {
- cerr << APPNAME << ": unexpected signal " << sig << endl;
-
-@@ -114,19 +119,6 @@
- exit(ERR_EXIT);
- }
-
--
--void AlarmSignal(int sig) {
-- int pid = LoginApp->GetServerPID();
-- if(waitpid(pid, NULL, WNOHANG) == pid) {
-- LoginApp->StopServer();
-- LoginApp->RemoveLock();
-- exit(OK_EXIT);
-- }
-- signal(sig, AlarmSignal);
-- alarm(2);
--}
--
--
- void User1Signal(int sig) {
- signal(sig, User1Signal);
- }
-@@ -277,7 +269,6 @@
- signal(SIGHUP, CatchSignal);
- signal(SIGPIPE, CatchSignal);
- signal(SIGUSR1, User1Signal);
-- signal(SIGALRM, AlarmSignal);
-
- #ifndef XNEST_DEBUG
- if (!force_nodaemon && cfg->getOption("daemon") == "yes") {
-@@ -298,7 +289,6 @@
-
- CreateServerAuth();
- StartServer();
-- alarm(2);
- #endif
-
- }
-@@ -614,6 +604,8 @@
- int status;
- while (wpid != pid) {
- wpid = wait(&status);
-+ if (wpid == ServerPID)
-+ xioerror(Dpy); // Server died, simulate IO error
- }
- if (WIFEXITED(status) && WEXITSTATUS(status)) {
- LoginPanel->Message("Failed to execute login command");
-@@ -659,9 +651,6 @@
-
-
- void App::Reboot() {
-- // Stop alarm clock
-- alarm(0);
--
- #ifdef USE_PAM
- try{
- pam.end();
-@@ -684,9 +673,6 @@
-
-
- void App::Halt() {
-- // Stop alarm clock
-- alarm(0);
--
- #ifdef USE_PAM
- try{
- pam.end();
-@@ -772,6 +758,7 @@
-
- StopServer();
- RemoveLock();
-+ while (waitpid(-1, NULL, WNOHANG) > 0); // Collects all dead childrens
- Run();
- }
-
-@@ -842,6 +829,7 @@
-
- for(cycles = 0; cycles < ncycles; cycles++) {
- if((Dpy = XOpenDisplay(DisplayName))) {
-+ XSetIOErrorHandler(xioerror);
- return 1;
- } else {
- if(!ServerTimeout(1, (char *) "X server to begin accepting connections"))
-@@ -926,9 +914,6 @@
- ServerPID = -1;
- break;
- }
-- alarm(15);
-- pause();
-- alarm(0);
-
- // Wait for server to start up
- if(WaitForServer() == 0) {
-@@ -963,15 +948,12 @@
-
-
- void App::StopServer() {
-- // Stop alars clock and ignore signals
-- alarm(0);
- signal(SIGQUIT, SIG_IGN);
- signal(SIGINT, SIG_IGN);
- signal(SIGHUP, SIG_IGN);
- signal(SIGPIPE, SIG_IGN);
- signal(SIGTERM, SIG_DFL);
- signal(SIGKILL, SIG_DFL);
-- signal(SIGALRM, SIG_DFL);
-
- // Catch X error
- XSetIOErrorHandler(IgnoreXIO);
-diff -aur slim-1.3.2.b/app.h slim-1.3.2.c/app.h
---- slim-1.3.2.b/app.h 2010-08-21 15:10:40.499582804 +0200
-+++ slim-1.3.2.c/app.h 2010-08-21 15:11:03.946389843 +0200
-@@ -34,6 +34,7 @@
- ~App();
- void Run();
- int GetServerPID();
-+ void RestartServer();
- void StopServer();
-
- bool serverStarted;
-@@ -49,7 +50,6 @@
- void Console();
- void Exit();
- void KillAllClients(Bool top);
-- void RestartServer();
- void ReadConfig();
- void OpenLog();
- void CloseLog();
diff --git a/extra/slim/sigterm.patch b/extra/slim/sigterm.patch
deleted file mode 100644
index fbaeb7116..000000000
--- a/extra/slim/sigterm.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff -aur old/panel.cpp new/panel.cpp
---- old/panel.cpp 2011-04-29 15:15:57.210134850 +0200
-+++ new/panel.cpp 2011-04-29 15:16:17.260285407 +0200
-@@ -10,6 +10,7 @@
- */
-
- #include <sstream>
-+#include <poll.h>
- #include "panel.h"
-
- using namespace std;
-@@ -288,16 +289,24 @@
- field=curfield;
- bool loop = true;
- OnExpose();
-+
-+ struct pollfd x11_pfd = {0};
-+ x11_pfd.fd = ConnectionNumber(Dpy);
-+ x11_pfd.events = POLLIN;
- while(loop) {
-- XNextEvent(Dpy, &event);
-- switch(event.type) {
-- case Expose:
-- OnExpose();
-- break;
--
-- case KeyPress:
-- loop=OnKeyPress(event);
-- break;
-+ if(XPending(Dpy) || poll(&x11_pfd, 1, -1) > 0) {
-+ while(XPending(Dpy)) {
-+ XNextEvent(Dpy, &event);
-+ switch(event.type) {
-+ case Expose:
-+ OnExpose();
-+ break;
-+
-+ case KeyPress:
-+ loop=OnKeyPress(event);
-+ break;
-+ }
-+ }
- }
- }
-
diff --git a/extra/slim/slim-1.3.2-libpng15.patch b/extra/slim/slim-1.3.2-libpng15.patch
deleted file mode 100644
index 720608567..000000000
--- a/extra/slim/slim-1.3.2-libpng15.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- png.c
-+++ png.c
-@@ -57,7 +57,7 @@
- return(0);
- }
-
-- if (setjmp(png_ptr->jmpbuf))
-+ if (setjmp(png_jmpbuf(png_ptr)))
- {
- png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp) NULL);
- fclose(infile);
diff --git a/extra/streamtuner/PKGBUILD b/extra/streamtuner/PKGBUILD
deleted file mode 100644
index ea344e218..000000000
--- a/extra/streamtuner/PKGBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# $Id: PKGBUILD 148934 2012-02-05 11:56:39Z ibiru $
-# Contributor: Greg Grabinski <greg@grabinski.ch>
-# Maintainer: ndreas Radke <andyrtr@archlinux.org>
-
-pkgname=streamtuner
-pkgver=0.99.99
-pkgrel=12
-pkgdesc="A stream directory browser"
-arch=('i686' 'x86_64')
-url="http://www.nongnu.org/streamtuner/"
-license=('custom')
-depends=('taglib' 'libxml2' 'gtk2' 'curl>=7.16.2' 'pygtk>=2.13.0-2')
-conflicts=('streamtuner-live365')
-replaces=('streamtuner-live365')
-source=(http://savannah.nongnu.org/download/streamtuner/$pkgname-$pkgver.tar.gz \
- http://savannah.nongnu.org/download/streamtuner/streamtuner-0.99.99-live365.diff \
- http://savannah.nongnu.org/download/streamtuner/streamtuner-0.99.99-pygtk-2.6.diff
- streamtuner-0.99.99-shoutcast.diff
- shoutcast-redesign-patch.diff)
-options=('!libtool' '!emptydirs')
-md5sums=('2027b7c34e85b594524b0b4351c14362'
- '8aa1994a849b05d2b8fffbda702b8a25'
- '7aff45a41c60358cb2332c7ce644f661'
- '1eab6edce130e1a1e5f208cd3ed6766a'
- '8a3a17a1719a79353d6ad7ac8564947b')
-
-build() {
- cd ${srcdir}/${pkgname}-${pkgver}
- patch -p0 -i ${srcdir}/streamtuner-0.99.99-live365.diff
- patch -p0 -i ${srcdir}/streamtuner-0.99.99-pygtk-2.6.diff
- # fix http://bugs.archlinux.org/task/10308
- patch -p0 -i ${srcdir}/streamtuner-0.99.99-shoutcast.diff
- # fix http://bugs.archlinux.org/task/11463
- patch -p1 -i ${srcdir}/shoutcast-redesign-patch.diff
-
- # python2 fixes
- sed -i "s:^for ac_prog in python:for ac_prog in python2:" ${srcdir}/${pkgname}-${pkgver}/configure
-
- ./configure --prefix=/usr
- make
-}
-
-package() {
- cd ${srcdir}/${pkgname}-${pkgver}
- make prefix=${pkgdir}/usr install
-
- #Add license file
- install -Dm0644 ${srcdir}/${pkgname}-${pkgver}/COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING
-}
diff --git a/extra/streamtuner/shoutcast-redesign-patch.diff b/extra/streamtuner/shoutcast-redesign-patch.diff
deleted file mode 100644
index 644e2273e..000000000
--- a/extra/streamtuner/shoutcast-redesign-patch.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -uar streamtuner-0.99.99-orig/src/plugins/shoutcast/shoutcast.c streamtuner-0.99.99-patched/src/plugins/shoutcast/shoutcast.c
---- streamtuner-0.99.99-orig/src/plugins/shoutcast/shoutcast.c 2008-09-12 18:04:00.229785732 -0400
-+++ streamtuner-0.99.99-patched/src/plugins/shoutcast/shoutcast.c 2008-09-12 18:05:56.716440720 -0400
-@@ -37,7 +37,7 @@
-
- /*** cpp *********************************************************************/
-
--#define SHOUTCAST_ROOT "http://www.shoutcast.com/"
-+#define SHOUTCAST_ROOT "http://classic.shoutcast.com/"
-
- #define MAX_STREAMS_PER_PAGE 100 /* enforced by SHOUTcast */
-
diff --git a/extra/streamtuner/streamtuner-0.99.99-shoutcast.diff b/extra/streamtuner/streamtuner-0.99.99-shoutcast.diff
deleted file mode 100644
index e7fcbca94..000000000
--- a/extra/streamtuner/streamtuner-0.99.99-shoutcast.diff
+++ /dev/null
@@ -1,41 +0,0 @@
---- src/plugins/shoutcast/shoutcast.c.orig 2004-12-19 15:21:00.000000000 +0000
-+++ src/plugins/shoutcast/shoutcast.c 2008-03-16 10:39:24.000000000 +0000
-@@ -94,6 +94,8 @@
-
- GNode *parent_node;
- SHOUTcastStream *stream;
-+
-+ int parse_genres;
- } ReloadInfo;
-
- /*** variable declarations ***************************************************/
-@@ -518,6 +520,7 @@
- info.npages = 0;
- info.parent_node = NULL;
- info.stream = NULL;
-+ info.parse_genres = 0;
-
- status = st_transfer_session_get_by_line(session,
- url,
-@@ -565,10 +568,16 @@
- info->stream = stream_new_cb(NULL);
- info->stream->url_postfix = st_sgml_ref_expand_len(s1, s2 - s1);
- }
-- else if (info->page < 2
-- && (((s1 = st_str_has_prefix_span(line, "\t<OPTION VALUE=\""))
-- || (s1 = st_str_has_prefix_span(line, "\t\t<OPTION VALUE=\"")))
-- && (s2 = strstr(s1, "\">"))))
-+ else if (info->page < 2 && (s1 = st_strstr_span(line, "<OPTION VALUE=\"TopTen\">")))
-+ {
-+ info->parse_genres = 1;
-+ }
-+ else if (info->page < 2 && info->parse_genres == 1 && (s1 = st_strstr_span(line, "</SELECT>")))
-+ {
-+ info->parse_genres = 0;
-+ }
-+ else if (info->page < 2 && info->parse_genres == 1
-+ && ((s1 = st_strstr_span(line, "<OPTION VALUE=\"")) && (s2 = strstr(s1, "\">"))))
- {
- STCategory *category;
- GNode *node;
-
diff --git a/extra/sysklogd/sysklogd-debian.patch b/extra/sysklogd/sysklogd-debian.patch
deleted file mode 100644
index 0117af5f2..000000000
--- a/extra/sysklogd/sysklogd-debian.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- sysklogd-1.5.orig/syslogd.c
-+++ sysklogd-1.5/syslogd.c
-@@ -2392,7 +2392,7 @@
- if (*p == '\0' || *p == '#')
- continue;
- #if CONT_LINE
-- strcpy(cline, p);
-+ memmove(cline, p, strlen(p)+1);
- #endif
- for (p = strchr(cline, '\0'); isspace(*--p););
- #if CONT_LINE
---- sysklogd-1.5.orig/ksym_mod.c
-+++ sysklogd-1.5/ksym_mod.c
-@@ -189,7 +189,6 @@
- else
- Syslog(LOG_ERR, "Error loading kernel symbols " \
- "- %s\n", strerror(errno));
-- fclose(ksyms);
- return(0);
- }
-
diff --git a/extra/systemd/0001-check-for-proper-return-from-dirent_ensure_type.patch b/extra/systemd/0001-check-for-proper-return-from-dirent_ensure_type.patch
deleted file mode 100644
index f8f6d1fa5..000000000
--- a/extra/systemd/0001-check-for-proper-return-from-dirent_ensure_type.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 7e5d190ccce8dc064d5756225e306e65fa534ae9 Mon Sep 17 00:00:00 2001
-From: Dave Reisner <dreisner@archlinux.org>
-Date: Mon, 2 Apr 2012 08:20:34 -0400
-Subject: [PATCH] check for proper return from dirent_ensure_type
-
-Fixes 'systemctl list-unit-files', which previously returned only:
-
- Failed to issue method call: No such file or directory
----
- src/install.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/install.c b/src/install.c
-index 174d79b..9256116 100644
---- a/src/install.c
-+++ b/src/install.c
-@@ -1853,7 +1853,7 @@ int unit_file_get_list(
-
- r = dirent_ensure_type(d, de);
- if (r < 0) {
-- if (errno == ENOENT)
-+ if (r == -ENOENT)
- continue;
-
- goto finish;
---
-1.7.9.5
-
diff --git a/extra/systemd/0001-logind-close-FIFO-before-ending-sessions-cleanly.patch b/extra/systemd/0001-logind-close-FIFO-before-ending-sessions-cleanly.patch
deleted file mode 100644
index fa133ca3c..000000000
--- a/extra/systemd/0001-logind-close-FIFO-before-ending-sessions-cleanly.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-From 75c8e3cffd7da8eede614cf61384957af2c82a29 Mon Sep 17 00:00:00 2001
-From: Lennart Poettering <lennart@poettering.net>
-Date: Thu, 22 Mar 2012 02:06:40 +0100
-Subject: [PATCH] logind: close FIFO before ending sessions cleanly
-
-For clean session endings ask logind explicitly to get rid of the FIFO
-before closing it so that the FIFO logic doesn't result in su/sudo to be
-terminated immediately.
----
- src/login/logind-dbus.c | 30 ++++++++++++++++++++
- src/login/pam-module.c | 71 +++++++++++++++++++++++++++++++++++++++++++++--
- 2 files changed, 98 insertions(+), 3 deletions(-)
-
-diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c
-index d8f4d89..ea6b89f 100644
---- a/src/login/logind-dbus.c
-+++ b/src/login/logind-dbus.c
-@@ -80,6 +80,9 @@
- " <arg name=\"seat\" type=\"s\" direction=\"out\"/>\n" \
- " <arg name=\"vtnr\" type=\"u\" direction=\"out\"/>\n" \
- " </method>\n" \
-+ " <method name=\"ReleaseSession\">\n" \
-+ " <arg name=\"id\" type=\"s\" direction=\"in\"/>\n" \
-+ " </method>\n" \
- " <method name=\"ActivateSession\">\n" \
- " <arg name=\"id\" type=\"s\" direction=\"in\"/>\n" \
- " </method>\n" \
-@@ -1075,6 +1078,33 @@ static DBusHandlerResult manager_message_handler(
- if (r < 0)
- return bus_send_error_reply(connection, message, &error, r);
-
-+ } else if (dbus_message_is_method_call(message, "org.freedesktop.login1.Manager", "ReleaseSession")) {
-+ const char *name;
-+ Session *session;
-+
-+ if (!dbus_message_get_args(
-+ message,
-+ &error,
-+ DBUS_TYPE_STRING, &name,
-+ DBUS_TYPE_INVALID))
-+ return bus_send_error_reply(connection, message, &error, -EINVAL);
-+
-+ session = hashmap_get(m->sessions, name);
-+ if (!session)
-+ return bus_send_error_reply(connection, message, &error, -ENOENT);
-+
-+ /* We use the FIFO to detect stray sessions where the
-+ process invoking PAM dies abnormally. We need to make
-+ sure that that process is not killed if at the clean
-+ end of the session it closes the FIFO. Hence, with
-+ this call explicitly turn off the FIFO logic, so that
-+ the PAM code can finish clean up on its own */
-+ session_remove_fifo(session);
-+
-+ reply = dbus_message_new_method_return(message);
-+ if (!reply)
-+ goto oom;
-+
- } else if (dbus_message_is_method_call(message, "org.freedesktop.login1.Manager", "ActivateSession")) {
- const char *name;
- Session *session;
-diff --git a/src/login/pam-module.c b/src/login/pam-module.c
-index 8544413..4106d2b 100644
---- a/src/login/pam-module.c
-+++ b/src/login/pam-module.c
-@@ -414,7 +414,6 @@ _public_ PAM_EXTERN int pam_sm_open_session(
- "/org/freedesktop/login1",
- "org.freedesktop.login1.Manager",
- "CreateSession");
--
- if (!m) {
- pam_syslog(handle, LOG_ERR, "Could not allocate create session message.");
- r = PAM_BUF_ERR;
-@@ -620,11 +619,77 @@ _public_ PAM_EXTERN int pam_sm_close_session(
- int argc, const char **argv) {
-
- const void *p = NULL;
-+ const char *id;
-+ DBusConnection *bus = NULL;
-+ DBusMessage *m = NULL, *reply = NULL;
-+ DBusError error;
-+ int r;
-
-- pam_get_data(handle, "systemd.session-fd", &p);
-+ assert(handle);
-+
-+ dbus_error_init(&error);
-+
-+ id = pam_getenv(handle, "XDG_SESSION_ID");
-+ if (id) {
-+
-+ /* Before we go and close the FIFO we need to tell
-+ * logind that this is a clean session shutdown, so
-+ * that it doesn't just go and slaughter us
-+ * immediately after closing the fd */
-+
-+ bus = dbus_bus_get_private(DBUS_BUS_SYSTEM, &error);
-+ if (!bus) {
-+ pam_syslog(handle, LOG_ERR, "Failed to connect to system bus: %s", bus_error_message(&error));
-+ r = PAM_SESSION_ERR;
-+ goto finish;
-+ }
-+
-+ m = dbus_message_new_method_call(
-+ "org.freedesktop.login1",
-+ "/org/freedesktop/login1",
-+ "org.freedesktop.login1.Manager",
-+ "ReleaseSession");
-+ if (!m) {
-+ pam_syslog(handle, LOG_ERR, "Could not allocate release session message.");
-+ r = PAM_BUF_ERR;
-+ goto finish;
-+ }
-+
-+ if (!dbus_message_append_args(m,
-+ DBUS_TYPE_STRING, &id,
-+ DBUS_TYPE_INVALID)) {
-+ pam_syslog(handle, LOG_ERR, "Could not attach parameters to message.");
-+ r = PAM_BUF_ERR;
-+ goto finish;
-+ }
-
-+ reply = dbus_connection_send_with_reply_and_block(bus, m, -1, &error);
-+ if (!reply) {
-+ pam_syslog(handle, LOG_ERR, "Failed to release session: %s", bus_error_message(&error));
-+ r = PAM_SESSION_ERR;
-+ goto finish;
-+ }
-+ }
-+
-+ r = PAM_SUCCESS;
-+
-+finish:
-+ pam_get_data(handle, "systemd.session-fd", &p);
- if (p)
- close_nointr(PTR_TO_INT(p) - 1);
-
-- return PAM_SUCCESS;
-+ dbus_error_free(&error);
-+
-+ if (bus) {
-+ dbus_connection_close(bus);
-+ dbus_connection_unref(bus);
-+ }
-+
-+ if (m)
-+ dbus_message_unref(m);
-+
-+ if (reply)
-+ dbus_message_unref(reply);
-+
-+ return r;
- }
---
-1.7.9.5
-
diff --git a/extra/systemd/0001-util-never-follow-symlinks-in-rm_rf_children.patch b/extra/systemd/0001-util-never-follow-symlinks-in-rm_rf_children.patch
deleted file mode 100644
index 7ac9251b3..000000000
--- a/extra/systemd/0001-util-never-follow-symlinks-in-rm_rf_children.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 5ebff5337594d690b322078c512eb222d34aaa82 Mon Sep 17 00:00:00 2001
-From: Michal Schmidt <mschmidt@redhat.com>
-Date: Fri, 2 Mar 2012 10:39:10 +0100
-Subject: [PATCH] util: never follow symlinks in rm_rf_children()
-
-The function checks if the entry is a directory before recursing, but
-there is a window between the check and the open, during which the
-directory could be replaced with a symlink.
-
-CVE-2012-1174
-https://bugzilla.redhat.com/show_bug.cgi?id=803358
----
- src/util.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/util.c b/src/util.c
-index 20cbc2b..dfc1dc6 100644
---- a/src/util.c
-+++ b/src/util.c
-@@ -3593,7 +3593,8 @@ static int rm_rf_children(int fd, bool only_dirs, bool honour_sticky) {
- if (is_dir) {
- int subdir_fd;
-
-- if ((subdir_fd = openat(fd, de->d_name, O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC)) < 0) {
-+ subdir_fd = openat(fd, de->d_name, O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC|O_NOFOLLOW);
-+ if (subdir_fd < 0) {
- if (ret == 0 && errno != ENOENT)
- ret = -errno;
- continue;
---
-1.7.9.4
-
diff --git a/extra/systemd/PKGBUILD b/extra/systemd/PKGBUILD
deleted file mode 100644
index 3a62d466d..000000000
--- a/extra/systemd/PKGBUILD
+++ /dev/null
@@ -1,127 +0,0 @@
-# $Id: PKGBUILD 158570 2012-05-04 23:57:21Z allan $
-# Maintainer: Dave Reisner <dreisner@archlinux.org>
-
-pkgbase=systemd
-pkgname=('systemd' 'libsystemd')
-pkgver=44
-pkgrel=7
-arch=('i686' 'x86_64')
-url="http://www.freedesktop.org/wiki/Software/systemd"
-license=('GPL2' 'LGPL2.1' 'MIT')
-makedepends=('acl' 'cryptsetup' 'dbus-core' 'docbook-xsl' 'gperf' 'intltool'
- 'kmod' 'libcap' 'libxslt' 'linux-api-headers' 'pam' 'udev' 'xz')
-options=('!libtool')
-source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz"
- "os-release"
- 0001-util-never-follow-symlinks-in-rm_rf_children.patch
- 0001-logind-close-FIFO-before-ending-sessions-cleanly.patch
- 0001-check-for-proper-return-from-dirent_ensure_type.patch)
-md5sums=('11f44ff74c87850064e4351518bcff17'
- '752636def0db3c03f121f8b4f44a63cd'
- 'b5863d6d4b47e2b5bda8eb57bde0d327'
- 'd37833358ef6c23fad622ea4a0941d1f'
- '11f930fd0a3966abc794bf9127a7dde0')
-
-build() {
- cd "$pkgname-$pkgver"
-
- # https://bugzilla.redhat.com/show_bug.cgi?id=803358 (upstream 5ebff53375)
- patch -Np1 <"$srcdir/0001-util-never-follow-symlinks-in-rm_rf_children.patch"
-
- # https://bugs.archlinux.org/task/28386 (upstream 75c8e3cffd)
- patch -Np1 <"$srcdir/0001-logind-close-FIFO-before-ending-sessions-cleanly.patch"
-
- # Fix broken 'systemctl list-unit-files' (upstream fb5ef067c49)
- patch -Np1 <"$srcdir/0001-check-for-proper-return-from-dirent_ensure_type.patch"
-
- ./configure --sysconfdir=/etc \
- --libexecdir=/usr/lib \
- --with-pamlibdir=/usr/lib/security \
- --localstatedir=/var \
- --with-distro=arch \
- --enable-split-usr \
- --disable-ima
-
- make
-}
-
-package_systemd() {
- pkgdesc="system and service manager"
- depends=('acl' 'dbus-core' 'libsystemd' 'kbd' 'kmod' 'libcap' 'pam' 'util-linux' 'udev' 'xz')
- optdepends=('cryptsetup: required for encrypted block devices'
- 'dbus-python: systemd-analyze'
- 'initscripts: legacy support for hostname and vconsole setup'
- 'initscripts-systemd: native boot and initialization scripts'
- 'python2-cairo: systemd-analyze'
- 'systemd-arch-units: collection of native unit files for Arch daemon/init scripts'
- 'systemd-sysvcompat: symlink package to provide sysvinit binaries')
- backup=(etc/dbus-1/system.d/org.freedesktop.systemd1.conf
- etc/dbus-1/system.d/org.freedesktop.hostname1.conf
- etc/dbus-1/system.d/org.freedesktop.login1.conf
- etc/dbus-1/system.d/org.freedesktop.locale1.conf
- etc/dbus-1/system.d/org.freedesktop.timedate1.conf
- etc/systemd/system.conf
- etc/systemd/user.conf
- etc/systemd/systemd-logind.conf
- etc/systemd/systemd-journald.conf)
- install="$pkgname.install"
-
- cd "$pkgname-$pkgver"
-
- make DESTDIR="$pkgdir" install
-
- install -Dm644 "$srcdir/os-release" "$pkgdir/etc/os-release"
-
- printf "d /run/console 755 root root\n" >"$pkgdir/usr/lib/tmpfiles.d/console.conf"
- chmod 644 "$pkgdir/usr/lib/tmpfiles.d/console.conf"
-
- # symlink to /bin/systemd for compat and sanity
- install -dm755 "$pkgdir/bin"
- ln -s ../usr/lib/systemd/systemd "$pkgdir/bin/systemd"
-
- # use python2 for systemd-analyze
- sed -i '1s/python$/python2/' "$pkgdir/usr/bin/systemd-analyze"
-
- # didn't build this...
- rm -f "$pkgdir/usr/share/man/man1/systemadm.1"
-
- # fix .so links in manpage stubs
- find "$pkgdir/usr/share/man" -type f -name '*.[[:digit:]]' \
- -exec sed -i '1s|^\.so \(.*\)\.\([[:digit:]]\+\)|.so man\2/\1.\2|' {} +
-
- # rename man pages to avoid conflicts with sysvinit and initscripts
- manpages=(man8/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8
- man5/{hostname,{vconsole,locale}.conf}.5)
- cd "$pkgdir/usr/share/man"
- for manpage in "${manpages[@]}"; do
- IFS='/' read section page <<< "$manpage"
- mv "$manpage" "$section/systemd.$page"
- done
-
- # move bash-completion and symlink for loginctl
- install -Dm644 "$pkgdir/etc/bash_completion.d/systemd-bash-completion.sh" \
- "$pkgdir/usr/share/bash-completion/completions/systemctl"
- ln -s systemctl "$pkgdir/usr/share/bash-completion/completions/loginctl"
- rm -rf "$pkgdir/etc/bash_completion.d"
-
- # fix systemctl where
- find "$pkgdir" -type f -name '*.service' -exec \
- sed -i 's@\([=-]\)/bin/systemctl@\1/usr/bin/systemctl@g' {} +
-
- ### split off libsystemd (libs, includes, pkgconfig, man3)
- install -dm755 "$srcdir"/libsystemd/usr/{include,lib/pkgconfig}
-
- cd "$srcdir"/libsystemd
- mv "$pkgdir/usr/lib"/libsystemd-*.so* usr/lib
- mv "$pkgdir/usr/include/systemd" usr/include
- mv "$pkgdir/usr/lib/pkgconfig"/libsystemd-*.pc usr/lib/pkgconfig
-}
-
-package_libsystemd() {
- pkgdesc="systemd client libraries"
- depends=('libcap' 'xz')
-
- mv "$srcdir/libsystemd"/* "$pkgdir"
-}
-
-# vim: ft=sh syn=sh et
diff --git a/extra/systemd/os-release b/extra/systemd/os-release
deleted file mode 100644
index 5e24a6031..000000000
--- a/extra/systemd/os-release
+++ /dev/null
@@ -1,5 +0,0 @@
-NAME="Arch Linux"
-ID=arch
-PRETTY_NAME="Arch Linux"
-ANSI_COLOR="1;36"
-
diff --git a/extra/systemd/systemd.install b/extra/systemd/systemd.install
deleted file mode 100644
index 0c3e9abee..000000000
--- a/extra/systemd/systemd.install
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/sh
-
-checkgroups() {
- if ! getent group lock >/dev/null; then
- groupadd -g 54 lock
- fi
-}
-
-sd_booted() {
- [ -e sys/fs/cgroup/systemd ]
-}
-
-post_install() {
- checkgroups
-
- if [ ! -f etc/machine-id ]; then
- systemd-machine-id-setup
- fi
-
- echo "systemd has been installed to /bin/systemd. Please ensure you append"
- echo "init=/bin/systemd to your kernel command line in your bootloader."
-}
-
-post_upgrade() {
- checkgroups
-
- if [ ! -f etc/machine-id ]; then
- systemd-machine-id-setup
- fi
-
- if sd_booted; then
- # we moved the binary in 44-2 to /usr, so a reexec leads to a
- # coredump. refuse this reexec and warn the user that they should
- # reboot instead.
- if [ "$(vercmp 44-2 "$2")" -eq 1 ]; then
- echo "warning: refusing to reexec systemd. the system should be rebooted."
- else
- systemctl daemon-reload
- systemctl daemon-reexec
- fi
- fi
-}
-
-post_remove() {
- if getent group lock >/dev/null; then
- groupdel lock
- fi
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/extra/tunepimp/PKGBUILD b/extra/tunepimp/PKGBUILD
deleted file mode 100644
index c28df94a5..000000000
--- a/extra/tunepimp/PKGBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# $Id: PKGBUILD 149566 2012-02-08 14:42:07Z tpowa $
-# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
-
-pkgname=tunepimp
-pkgver=0.5.3
-pkgrel=9
-pkgdesc="A development library geared towards developers who wish to create MusicBrainz enabled tagging applications (aka libtunepimp)"
-url="http://www.musicbrainz.org/products/tunepimp/"
-arch=('i686' 'x86_64')
-license=('GPL')
-options=('!libtool' '!makeflags')
-makedepends=('python2')
-depends=('curl' 'musicbrainz' 'zlib' 'libmad' 'flac' 'libvorbis' 'readline' 'libmpcdec' 'libofa' 'taglib' 'libmp4v2')
-replaces=('trm')
-source=(ftp://ftp.musicbrainz.org/pub/musicbrainz/lib${pkgname}-${pkgver}.tar.gz
- tunepimp-gcc43.patch
- gcc4.4.patch
- mp4v2-1.9.patch
- tunepimp-curl-headers.patch)
-
- build() {
- cd ${srcdir}/lib${pkgname}-${pkgver}
- sed -i -e 's,-ltermcap,-lncurses,' configure
- sed -i -e 's:-lthr:-lpthread:g' lib/threads/posix/Makefile.in
- patch -Np0 -i ${srcdir}/tunepimp-gcc43.patch
- patch -Np1 -i ${srcdir}/gcc4.4.patch
- patch -Np1 -i ${srcdir}/mp4v2-1.9.patch
- patch -Np1 -i ${srcdir}/tunepimp-curl-headers.patch
- ./configure --prefix=/usr
- make
-}
-
-package() {
- cd ${srcdir}/lib${pkgname}-${pkgver}
- make DESTDIR=${pkgdir} install
-
- # install python bindings
- cd python
- python2 setup.py install --root=${pkgdir}
-
- # fix includes for kdemultimedia
- cd ${pkgdir}/usr/include
- ln -s tunepimp-0.5 tunepimp
-}
-md5sums=('09649f983acef679a548344ba7a9bb2f'
- '40f48ad658958b909909b204bf9b1367'
- 'b325bf8ed98bc008611ece0c418642f8'
- '9f41d473a07e13808762545772fe3435'
- '9cefd852995ebd2c4f733f2bef18c12a')
diff --git a/extra/tunepimp/gcc4.4.patch b/extra/tunepimp/gcc4.4.patch
deleted file mode 100644
index 2c5e4f9db..000000000
--- a/extra/tunepimp/gcc4.4.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ruN libtunepimp-0.5.3.orig/lib/fileio.cpp libtunepimp-0.5.3/lib/fileio.cpp
---- libtunepimp-0.5.3.orig/lib/fileio.cpp 2009-05-28 11:49:43.000000000 -0700
-+++ libtunepimp-0.5.3/lib/fileio.cpp 2009-05-28 11:59:05.000000000 -0700
-@@ -124,7 +124,8 @@
-
- void tmktempname(const char *path, char *newPath, int newPathLen)
- {
-- char *ptr, *temp;
-+ const char *ptr;
-+ char *temp;
-
- temp = (char *)malloc(strlen(path) + 32);
- ptr = strrchr(path, dirSepChar);
diff --git a/extra/tunepimp/mp4v2-1.9.patch b/extra/tunepimp/mp4v2-1.9.patch
deleted file mode 100644
index ec3ec7261..000000000
--- a/extra/tunepimp/mp4v2-1.9.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ur libtunepimp-0.5.3.orig/plugins/mp4/mp4.cpp libtunepimp-0.5.3/plugins/mp4/mp4.cpp
---- libtunepimp-0.5.3.orig/plugins/mp4/mp4.cpp 2009-07-10 15:50:20.000000000 +0300
-+++ libtunepimp-0.5.3/plugins/mp4/mp4.cpp 2009-07-10 15:51:18.000000000 +0300
-@@ -28,7 +28,7 @@
- #include <string.h>
- #include <stdio.h>
- #include <stdlib.h>
--#include <mp4.h>
-+#include <mp4v2/mp4v2.h>
- #include "metadata.h"
- #include "plugin.h"
- #ifndef WIN32
-@@ -232,7 +232,7 @@
-
- strcpy(mdata->fileFormat, fileName + strlen(fileName) - 3);
-
-- if (!MP4Close(mp4file))
-+ MP4Close(mp4file);
- return 0;
-
- return 1;
-@@ -316,7 +316,7 @@
- sprintf(temp, "%d", mdata->nonAlbum);
- MP4SetMetadataFreeForm(mp4file, "MusicBrainz Non-Album", (u_int8_t *)temp, strlen(temp) + 1);
-
-- if (!MP4Close(mp4file))
-+ MP4Close(mp4file);
- return 0;
-
- #ifndef WIN32
diff --git a/extra/tunepimp/tunepimp-curl-headers.patch b/extra/tunepimp/tunepimp-curl-headers.patch
deleted file mode 100644
index 15e059bfa..000000000
--- a/extra/tunepimp/tunepimp-curl-headers.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/lib/protocol.cpp b/lib/protocol.cpp
-index 3436f80..5adb2e5 100644
---- a/lib/protocol.cpp
-+++ b/lib/protocol.cpp
-@@ -13,7 +13,6 @@
- #include <map>
- #include <expat.h>
- #include <curl/curl.h>
--#include <curl/types.h>
- #include <curl/easy.h>
- using namespace std;
-
diff --git a/extra/tunepimp/tunepimp-gcc43.patch b/extra/tunepimp/tunepimp-gcc43.patch
deleted file mode 100644
index e6d2a83e8..000000000
--- a/extra/tunepimp/tunepimp-gcc43.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-diff -up lib/metadata.cpp.gcc43 lib/metadata.cpp
---- lib/metadata.cpp.gcc43 2006-11-18 04:52:33.000000000 -0600
-+++ lib/metadata.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -26,6 +26,7 @@
- ----------------------------------------------------------------------------*/
- #include <math.h>
- #include <stdio.h>
-+#include <stdlib.h>
- #include "metadata.h"
- #include "../config.h"
- using namespace std;
-diff -up lib/protocol.cpp.gcc43 lib/protocol.cpp
---- lib/protocol.cpp.gcc43 2006-11-28 14:25:04.000000000 -0600
-+++ lib/protocol.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -8,6 +8,7 @@
- -------------------------------------------------------------------*/
- #include <stdio.h>
- #include <stdlib.h>
-+#include <string.h>
- #include <string>
- #include <map>
- #include <expat.h>
-diff -up lib/utf8/utf8util.cpp.gcc43 lib/utf8/utf8util.cpp
---- lib/utf8/utf8util.cpp.gcc43 2006-11-18 04:52:26.000000000 -0600
-+++ lib/utf8/utf8util.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -26,6 +26,7 @@
- ----------------------------------------------------------------------------*/
-
- #include <stdio.h>
-+#include <stdlib.h>
- #include "utf8util.h"
- #include "utf8.h"
- #ifdef WIN32
-diff -up lib/tunepimp.cpp.gcc43 lib/tunepimp.cpp
---- lib/tunepimp.cpp.gcc43 2006-11-18 04:52:33.000000000 -0600
-+++ lib/tunepimp.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -30,7 +30,9 @@
- #endif
- #endif
-
-+#include <string.h>
- #include <stdio.h>
-+#include <stdlib.h>
- #include <map>
- using namespace std;
-
-diff -up lib/c_wrapper.cpp.gcc43 lib/c_wrapper.cpp
---- lib/c_wrapper.cpp.gcc43 2006-11-18 04:52:33.000000000 -0600
-+++ lib/c_wrapper.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -24,6 +24,7 @@
- $Id: tunepimp-0.5.3-gcc43.patch,v 1.1 2008/04/07 05:49:36 philantrop Exp $
-
- ----------------------------------------------------------------------------*/
-+#include <stdlib.h>
- #include "tunepimp.h"
- #include "mutex.h"
- #include "tp_c.h"
-diff -up lib/readmeta.cpp.gcc43 lib/readmeta.cpp
---- lib/readmeta.cpp.gcc43 2006-11-18 04:52:33.000000000 -0600
-+++ lib/readmeta.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -31,6 +31,7 @@
- #endif
-
- #include <stdio.h>
-+#include <stdlib.h>
- #ifndef WIN32
- #include <unistd.h>
- #endif
-diff -up lib/fileio.cpp.gcc43 lib/fileio.cpp
---- lib/fileio.cpp.gcc43 2006-11-18 04:52:33.000000000 -0600
-+++ lib/fileio.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -27,6 +27,8 @@
-
- #include <assert.h>
- #include <errno.h>
-+#include <stdlib.h>
-+#include <string.h>
- #include <string>
- #ifndef WIN32
- #include <unistd.h>
-diff -up plugins/mp4/mp4.cpp.gcc43 plugins/mp4/mp4.cpp
---- plugins/mp4/mp4.cpp.gcc43 2006-11-18 04:51:08.000000000 -0600
-+++ plugins/mp4/mp4.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -27,6 +27,7 @@
-
- #include <string.h>
- #include <stdio.h>
-+#include <stdlib.h>
- #include <mp4.h>
- #include "metadata.h"
- #include "plugin.h"
-diff -up plugins/mp3/id3_meta.cpp.gcc43 plugins/mp3/id3_meta.cpp
---- plugins/mp3/id3_meta.cpp.gcc43 2006-11-18 04:51:07.000000000 -0600
-+++ plugins/mp3/id3_meta.cpp 2008-02-21 20:41:35.000000000 -0600
-@@ -26,6 +26,7 @@
- ----------------------------------------------------------------------------*/
-
- #include <stdio.h>
-+#include <stdlib.h>
- #include <time.h>
- #include <ctype.h>
- #include <musicbrainz/mb_c.h>
-diff -up plugins/mp3/id3_2_3_meta.cpp.gcc43 plugins/mp3/id3_2_3_meta.cpp
---- plugins/mp3/id3_2_3_meta.cpp.gcc43 2006-11-18 04:51:07.000000000 -0600
-+++ plugins/mp3/id3_2_3_meta.cpp 2008-02-21 20:41:59.000000000 -0600
-@@ -26,6 +26,7 @@
- ----------------------------------------------------------------------------*/
-
- #include <stdio.h>
-+#include <stdlib.h>
- #include <assert.h>
- #include <ctype.h>
- #include <musicbrainz/mb_c.h>
-diff -up plugins/wma/wma.cpp.gcc43 plugins/wma/wma.cpp
---- plugins/wma/wma.cpp.gcc43 2006-11-18 04:51:28.000000000 -0600
-+++ plugins/wma/wma.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -27,6 +27,7 @@
-
- #include <string.h>
- #include <stdio.h>
-+#include <stdlib.h>
- #include <wmafile.h>
- #include "metadata.h"
- #include "plugin.h"
-diff -up plugins/wma/wmafile.cpp.gcc43 plugins/wma/wmafile.cpp
---- plugins/wma/wmafile.cpp.gcc43 2006-11-18 04:51:28.000000000 -0600
-+++ plugins/wma/wmafile.cpp 2008-02-21 20:39:10.000000000 -0600
-@@ -19,6 +19,7 @@
- * USA *
- ***************************************************************************/
-
-+#include <string.h>
- #include <tstring.h>
- #include <wmafile.h>
- #include <wmatag.h>
-diff -up include/tunepimp-0.5/metadata.h.gcc43 include/tunepimp-0.5/metadata.h
---- include/tunepimp-0.5/metadata.h.gcc43 2006-11-18 04:52:08.000000000 -0600
-+++ include/tunepimp-0.5/metadata.h 2008-02-21 20:39:10.000000000 -0600
-@@ -27,6 +27,7 @@
- #ifndef __METADATA_H__
- #define __METADATA_H__
-
-+#include <string.h>
- #include <string>
- #include <cstdio> \ No newline at end of file
diff --git a/extra/watchdog/watchdog-5.9-use-oom_score_adj.patch b/extra/watchdog/watchdog-5.9-use-oom_score_adj.patch
deleted file mode 100644
index 90508d777..000000000
--- a/extra/watchdog/watchdog-5.9-use-oom_score_adj.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-diff -ur watchdog-5.9.orig/src/watchdog.c watchdog-5.9/src/watchdog.c
---- watchdog-5.9.orig/src/watchdog.c 2010-06-16 15:45:51.000000000 +0200
-+++ watchdog-5.9/src/watchdog.c 2011-10-23 15:51:58.631689778 +0200
-@@ -636,7 +636,7 @@
-
- /* allocate some memory to store a filename, this is needed later on even
- * if the system runs out of memory */
-- filename_buf = (char*)malloc(max(strlen(logdir) + sizeof("/repair-bin.stdout") + 1, strlen("/proc//oom_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1));
-+ filename_buf = (char*)malloc(max(strlen(logdir) + sizeof("/repair-bin.stdout") + 1, strlen("/proc//oom_score_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1));
- if (!filename_buf) {
- error(progname);
- exit(1);
-@@ -886,11 +886,19 @@
- #endif
-
- /* tell oom killer to not kill this process */
-- sprintf(filename_buf, "/proc/%d/oom_adj", pid);
-+ sprintf(filename_buf, "/proc/%d/oom_score_adj", pid);
- fp = fopen(filename_buf, "w");
- if (fp != NULL) {
-- fprintf(fp, "-17\n");
-- (void) fclose(fp);
-+ fprintf(fp, "-1000\n");
-+ (void) fclose(fp);
-+ }
-+ else {
-+ sprintf(filename_buf, "/proc/%d/oom_adj", pid);
-+ fp = fopen(filename_buf, "w");
-+ if (fp != NULL) {
-+ fprintf(fp, "-17\n");
-+ (void) fclose(fp);
-+ }
- }
-
- /* main loop: update after <tint> seconds */
-diff -ur watchdog-5.9.orig/src/wd_keepalive.c watchdog-5.9/src/wd_keepalive.c
---- watchdog-5.9.orig/src/wd_keepalive.c 2010-06-16 15:45:49.000000000 +0200
-+++ watchdog-5.9/src/wd_keepalive.c 2011-10-23 15:50:43.061563281 +0200
-@@ -212,7 +212,7 @@
- FILE *fp;
- char *configfile = CONFIG_FILENAME;
- char *filename_buf;
-- pid_t child_pid;
-+ pid_t pid, child_pid;
- int count = 0;
- int c;
- /* allow all options watchdog understands too */
-@@ -284,7 +284,7 @@
-
- /* allocate some memory to store a filename, this is needed later on even
- * if the system runs out of memory */
-- filename_buf = (char*)malloc(strlen("/proc//oom_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1);
-+ filename_buf = (char*)malloc(strlen("/proc//oom_score_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1);
- if (!filename_buf) {
- error(progname);
- exit(1);
-@@ -363,9 +363,10 @@
- #endif
-
- /* tuck my process id away */
-+ pid = getpid();
- fp = fopen(KA_PIDFILE, "w");
- if ( fp != NULL ) {
-- fprintf(fp, "%d\n", getpid());
-+ fprintf(fp, "%d\n", pid);
- (void) fclose(fp);
- }
-
-@@ -403,12 +404,20 @@
- #endif
-
- /* tell oom killer to not kill this process */
-- sprintf(filename_buf, "/proc/%d/oom_adj", getpid());
-+ sprintf(filename_buf, "/proc/%d/oom_score_adj", pid);
- fp = fopen(filename_buf, "w");
- if (fp != NULL) {
-- fprintf(fp, "-17\n");
-+ fprintf(fp, "-1000\n");
- (void) fclose(fp);
- }
-+ else {
-+ sprintf(filename_buf, "/proc/%d/oom_adj", pid);
-+ fp = fopen(filename_buf, "w");
-+ if (fp != NULL) {
-+ fprintf(fp, "-17\n");
-+ (void) fclose(fp);
-+ }
-+ }
-
- /* main loop: update after <tint> seconds */
- while ( _running ) {
diff --git a/extra/xf86-video-intel/0001-uxa-gen3-Remove-special-casing-of-solid-pictures.patch b/extra/xf86-video-intel/0001-uxa-gen3-Remove-special-casing-of-solid-pictures.patch
deleted file mode 100644
index 5c3b1d7d6..000000000
--- a/extra/xf86-video-intel/0001-uxa-gen3-Remove-special-casing-of-solid-pictures.patch
+++ /dev/null
@@ -1,533 +0,0 @@
-From fbee314a4194671bfc6dfaa90141498a2f45de4e Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Mon, 27 Feb 2012 16:29:38 +0000
-Subject: [PATCH 1/5] uxa/gen3: Remove special casing of solid pictures
-
-Fixes use of alpha-groups and opacity masks in cairo.
-
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
----
- src/i915_render.c | 366 ++++++++++++++++++-----------------------------------
- 1 file changed, 122 insertions(+), 244 deletions(-)
-
-diff --git a/src/i915_render.c b/src/i915_render.c
-index 87d2336..6210035 100644
---- a/src/i915_render.c
-+++ b/src/i915_render.c
-@@ -257,11 +257,8 @@ i915_check_composite_texture(ScreenPtr screen, PicturePtr picture)
- return FALSE;
- }
-
-- if (picture->pSourcePict) {
-- SourcePict *source = picture->pSourcePict;
-- if (source->type == SourcePictTypeSolidFill)
-- return TRUE;
-- }
-+ if (picture->pSourcePict)
-+ return FALSE;
-
- if (picture->pDrawable) {
- int w, h, i;
-@@ -387,23 +384,6 @@ static Bool i915_texture_setup(PicturePtr picture, PixmapPtr pixmap, int unit)
- }
-
- static void
--i915_emit_composite_primitive_constant(intel_screen_private *intel,
-- int srcX, int srcY,
-- int maskX, int maskY,
-- int dstX, int dstY,
-- int w, int h)
--{
-- OUT_VERTEX(dstX + w);
-- OUT_VERTEX(dstY + h);
--
-- OUT_VERTEX(dstX);
-- OUT_VERTEX(dstY + h);
--
-- OUT_VERTEX(dstX);
-- OUT_VERTEX(dstY);
--}
--
--static void
- i915_emit_composite_primitive_identity_source(intel_screen_private *intel,
- int srcX, int srcY,
- int maskX, int maskY,
-@@ -470,29 +450,6 @@ i915_emit_composite_primitive_affine_source(intel_screen_private *intel,
- }
-
- static void
--i915_emit_composite_primitive_constant_identity_mask(intel_screen_private *intel,
-- int srcX, int srcY,
-- int maskX, int maskY,
-- int dstX, int dstY,
-- int w, int h)
--{
-- OUT_VERTEX(dstX + w);
-- OUT_VERTEX(dstY + h);
-- OUT_VERTEX((maskX + w) * intel->scale_units[0][0]);
-- OUT_VERTEX((maskY + h) * intel->scale_units[0][1]);
--
-- OUT_VERTEX(dstX);
-- OUT_VERTEX(dstY + h);
-- OUT_VERTEX(maskX * intel->scale_units[0][0]);
-- OUT_VERTEX((maskY + h) * intel->scale_units[0][1]);
--
-- OUT_VERTEX(dstX);
-- OUT_VERTEX(dstY);
-- OUT_VERTEX(maskX * intel->scale_units[0][0]);
-- OUT_VERTEX(maskY * intel->scale_units[0][1]);
--}
--
--static void
- i915_emit_composite_primitive_identity_source_mask(intel_screen_private *intel,
- int srcX, int srcY,
- int maskX, int maskY,
-@@ -536,63 +493,61 @@ i915_emit_composite_primitive(intel_screen_private *intel,
-
- per_vertex = 2; /* dest x/y */
-
-- if (! intel->render_source_is_solid) {
-- src_unit = tex_unit++;
--
-- is_affine_src = intel_transform_is_affine(intel->transform[src_unit]);
-- if (is_affine_src) {
-- if (!intel_get_transformed_coordinates(srcX, srcY,
-- intel->
-- transform[src_unit],
-- &src_x[0],
-- &src_y[0]))
-- return;
--
-- if (!intel_get_transformed_coordinates(srcX, srcY + h,
-- intel->
-- transform[src_unit],
-- &src_x[1],
-- &src_y[1]))
-- return;
--
-- if (!intel_get_transformed_coordinates(srcX + w, srcY + h,
-- intel->
-- transform[src_unit],
-- &src_x[2],
-- &src_y[2]))
-- return;
--
-- per_vertex += 2; /* src x/y */
-- } else {
-- if (!intel_get_transformed_coordinates_3d(srcX, srcY,
-- intel->
-- transform[src_unit],
-- &src_x[0],
-- &src_y[0],
-- &src_w[0]))
-- return;
--
-- if (!intel_get_transformed_coordinates_3d(srcX, srcY + h,
-- intel->
-- transform[src_unit],
-- &src_x[1],
-- &src_y[1],
-- &src_w[1]))
-- return;
--
-- if (!intel_get_transformed_coordinates_3d(srcX + w, srcY + h,
-- intel->
-- transform[src_unit],
-- &src_x[2],
-- &src_y[2],
-- &src_w[2]))
-- return;
--
-- per_vertex += 4; /* src x/y/z/w */
-- }
-+ src_unit = tex_unit++;
-+
-+ is_affine_src = intel_transform_is_affine(intel->transform[src_unit]);
-+ if (is_affine_src) {
-+ if (!intel_get_transformed_coordinates(srcX, srcY,
-+ intel->
-+ transform[src_unit],
-+ &src_x[0],
-+ &src_y[0]))
-+ return;
-+
-+ if (!intel_get_transformed_coordinates(srcX, srcY + h,
-+ intel->
-+ transform[src_unit],
-+ &src_x[1],
-+ &src_y[1]))
-+ return;
-+
-+ if (!intel_get_transformed_coordinates(srcX + w, srcY + h,
-+ intel->
-+ transform[src_unit],
-+ &src_x[2],
-+ &src_y[2]))
-+ return;
-+
-+ per_vertex += 2; /* src x/y */
-+ } else {
-+ if (!intel_get_transformed_coordinates_3d(srcX, srcY,
-+ intel->
-+ transform[src_unit],
-+ &src_x[0],
-+ &src_y[0],
-+ &src_w[0]))
-+ return;
-+
-+ if (!intel_get_transformed_coordinates_3d(srcX, srcY + h,
-+ intel->
-+ transform[src_unit],
-+ &src_x[1],
-+ &src_y[1],
-+ &src_w[1]))
-+ return;
-+
-+ if (!intel_get_transformed_coordinates_3d(srcX + w, srcY + h,
-+ intel->
-+ transform[src_unit],
-+ &src_x[2],
-+ &src_y[2],
-+ &src_w[2]))
-+ return;
-+
-+ per_vertex += 4; /* src x/y/z/w */
- }
-
-- if (intel->render_mask && ! intel->render_mask_is_solid) {
-+ if (intel->render_mask) {
- mask_unit = tex_unit++;
-
- is_affine_mask = intel_transform_is_affine(intel->transform[mask_unit]);
-@@ -650,15 +605,13 @@ i915_emit_composite_primitive(intel_screen_private *intel,
-
- OUT_VERTEX(dstX + w);
- OUT_VERTEX(dstY + h);
-- if (! intel->render_source_is_solid) {
-- OUT_VERTEX(src_x[2] * intel->scale_units[src_unit][0]);
-- OUT_VERTEX(src_y[2] * intel->scale_units[src_unit][1]);
-- if (!is_affine_src) {
-+ OUT_VERTEX(src_x[2] * intel->scale_units[src_unit][0]);
-+ OUT_VERTEX(src_y[2] * intel->scale_units[src_unit][1]);
-+ if (!is_affine_src) {
- OUT_VERTEX(0.0);
- OUT_VERTEX(src_w[2]);
-- }
- }
-- if (intel->render_mask && ! intel->render_mask_is_solid) {
-+ if (intel->render_mask) {
- OUT_VERTEX(mask_x[2] * intel->scale_units[mask_unit][0]);
- OUT_VERTEX(mask_y[2] * intel->scale_units[mask_unit][1]);
- if (!is_affine_mask) {
-@@ -669,15 +622,13 @@ i915_emit_composite_primitive(intel_screen_private *intel,
-
- OUT_VERTEX(dstX);
- OUT_VERTEX(dstY + h);
-- if (! intel->render_source_is_solid) {
-- OUT_VERTEX(src_x[1] * intel->scale_units[src_unit][0]);
-- OUT_VERTEX(src_y[1] * intel->scale_units[src_unit][1]);
-- if (!is_affine_src) {
-+ OUT_VERTEX(src_x[1] * intel->scale_units[src_unit][0]);
-+ OUT_VERTEX(src_y[1] * intel->scale_units[src_unit][1]);
-+ if (!is_affine_src) {
- OUT_VERTEX(0.0);
- OUT_VERTEX(src_w[1]);
-- }
- }
-- if (intel->render_mask && ! intel->render_mask_is_solid) {
-+ if (intel->render_mask) {
- OUT_VERTEX(mask_x[1] * intel->scale_units[mask_unit][0]);
- OUT_VERTEX(mask_y[1] * intel->scale_units[mask_unit][1]);
- if (!is_affine_mask) {
-@@ -688,15 +639,13 @@ i915_emit_composite_primitive(intel_screen_private *intel,
-
- OUT_VERTEX(dstX);
- OUT_VERTEX(dstY);
-- if (! intel->render_source_is_solid) {
-- OUT_VERTEX(src_x[0] * intel->scale_units[src_unit][0]);
-- OUT_VERTEX(src_y[0] * intel->scale_units[src_unit][1]);
-- if (!is_affine_src) {
-+ OUT_VERTEX(src_x[0] * intel->scale_units[src_unit][0]);
-+ OUT_VERTEX(src_y[0] * intel->scale_units[src_unit][1]);
-+ if (!is_affine_src) {
- OUT_VERTEX(0.0);
- OUT_VERTEX(src_w[0]);
-- }
- }
-- if (intel->render_mask && ! intel->render_mask_is_solid) {
-+ if (intel->render_mask) {
- OUT_VERTEX(mask_x[0] * intel->scale_units[mask_unit][0]);
- OUT_VERTEX(mask_y[0] * intel->scale_units[mask_unit][1]);
- if (!is_affine_mask) {
-@@ -729,29 +678,11 @@ i915_prepare_composite(int op, PicturePtr source_picture,
- intel->render_dest_picture = dest_picture;
- intel->render_dest = dest;
-
-- intel->render_source_is_solid = FALSE;
-- if (source_picture->pSourcePict) {
-- SourcePict *source = source_picture->pSourcePict;
-- if (source->type == SourcePictTypeSolidFill) {
-- intel->render_source_is_solid = TRUE;
-- intel->render_source_solid = source->solidFill.color;
-- }
-- }
-- if (!intel->render_source_is_solid && !intel_check_pitch_3d(source))
-+ if (!intel_check_pitch_3d(source))
- return FALSE;
-
-- intel->render_mask_is_solid = FALSE;
-- if (mask) {
-- if (mask_picture->pSourcePict) {
-- SourcePict *source = mask_picture->pSourcePict;
-- if (source->type == SourcePictTypeSolidFill) {
-- intel->render_mask_is_solid = TRUE;
-- intel->render_mask_solid = source->solidFill.color;
-- }
-- }
-- if (!intel->render_mask_is_solid && !intel_check_pitch_3d(mask))
-- return FALSE;
-- }
-+ if (mask && !intel_check_pitch_3d(mask))
-+ return FALSE;
-
- if (!intel_check_pitch_3d(dest))
- return FALSE;
-@@ -787,31 +718,27 @@ i915_prepare_composite(int op, PicturePtr source_picture,
- intel->scale_units[1][1] = -1;
-
- floats_per_vertex = 2; /* dest x/y */
-- if (! intel->render_source_is_solid) {
-- if (!i915_texture_setup(source_picture, source, tex_unit++)) {
-- intel_debug_fallback(scrn, "fail to setup src texture\n");
-- return FALSE;
-- }
--
-- if (intel_transform_is_affine(source_picture->transform))
-- floats_per_vertex += 2; /* src x/y */
-- else
-- floats_per_vertex += 4; /* src x/y/z/w */
-+ if (!i915_texture_setup(source_picture, source, tex_unit++)) {
-+ intel_debug_fallback(scrn, "fail to setup src texture\n");
-+ return FALSE;
- }
-
-- if (mask != NULL) {
-- if (! intel->render_mask_is_solid) {
-- if (!i915_texture_setup(mask_picture, mask, tex_unit++)) {
-- intel_debug_fallback(scrn,
-- "fail to setup mask texture\n");
-- return FALSE;
-- }
-+ if (intel_transform_is_affine(source_picture->transform))
-+ floats_per_vertex += 2; /* src x/y */
-+ else
-+ floats_per_vertex += 4; /* src x/y/z/w */
-
-- if (intel_transform_is_affine(mask_picture->transform))
-- floats_per_vertex += 2; /* mask x/y */
-- else
-- floats_per_vertex += 4; /* mask x/y/z/w */
-+ if (mask != NULL) {
-+ if (!i915_texture_setup(mask_picture, mask, tex_unit++)) {
-+ intel_debug_fallback(scrn,
-+ "fail to setup mask texture\n");
-+ return FALSE;
- }
-+
-+ if (intel_transform_is_affine(mask_picture->transform))
-+ floats_per_vertex += 2; /* mask x/y */
-+ else
-+ floats_per_vertex += 4; /* mask x/y/z/w */
- }
-
- intel->i915_render_state.op = op;
-@@ -827,17 +754,13 @@ i915_prepare_composite(int op, PicturePtr source_picture,
-
- intel->prim_emit = i915_emit_composite_primitive;
- if (!mask) {
-- if (intel->render_source_is_solid)
-- intel->prim_emit = i915_emit_composite_primitive_constant;
-- else if (intel->transform[0] == NULL)
-+ if (intel->transform[0] == NULL)
- intel->prim_emit = i915_emit_composite_primitive_identity_source;
- else if (intel_transform_is_affine(intel->transform[0]))
- intel->prim_emit = i915_emit_composite_primitive_affine_source;
- } else {
- if (intel->transform[0] == NULL) {
-- if (intel->render_source_is_solid)
-- intel->prim_emit = i915_emit_composite_primitive_constant_identity_mask;
-- else if (intel->transform[1] == NULL)
-+ if (intel->transform[1] == NULL)
- intel->prim_emit = i915_emit_composite_primitive_identity_source_mask;
- }
- }
-@@ -856,39 +779,25 @@ i915_composite_emit_shader(intel_screen_private *intel, CARD8 op)
- PicturePtr mask_picture = intel->render_mask_picture;
- PixmapPtr mask = intel->render_mask;
- int src_reg, mask_reg;
-- Bool is_solid_src, is_solid_mask;
- Bool dest_is_alpha = PIXMAN_FORMAT_RGB(intel->render_dest_picture->format) == 0;
-- int tex_unit, t;
- FS_LOCALS();
-
-- is_solid_src = intel->render_source_is_solid;
-- is_solid_mask = intel->render_mask_is_solid;
--
- FS_BEGIN();
-
- /* Declare the registers necessary for our program. */
-- t = 0;
-- if (is_solid_src) {
-- i915_fs_dcl(FS_T8);
-- src_reg = FS_T8;
-- } else {
-- i915_fs_dcl(FS_T0);
-- i915_fs_dcl(FS_S0);
-- t++;
-- }
-+ i915_fs_dcl(FS_T0);
-+ i915_fs_dcl(FS_S0);
- if (!mask) {
- /* No mask, so load directly to output color */
-- if (! is_solid_src) {
-- if (dest_is_alpha)
-- src_reg = FS_R0;
-- else
-- src_reg = FS_OC;
-+ if (dest_is_alpha)
-+ src_reg = FS_R0;
-+ else
-+ src_reg = FS_OC;
-
-- if (intel_transform_is_affine(intel->transform[0]))
-- i915_fs_texld(src_reg, FS_S0, FS_T0);
-- else
-- i915_fs_texldp(src_reg, FS_S0, FS_T0);
-- }
-+ if (intel_transform_is_affine(intel->transform[0]))
-+ i915_fs_texld(src_reg, FS_S0, FS_T0);
-+ else
-+ i915_fs_texldp(src_reg, FS_S0, FS_T0);
-
- if (src_reg != FS_OC) {
- if (dest_is_alpha)
-@@ -897,35 +806,24 @@ i915_composite_emit_shader(intel_screen_private *intel, CARD8 op)
- i915_fs_mov(FS_OC, i915_fs_operand_reg(src_reg));
- }
- } else {
-- if (is_solid_mask) {
-- i915_fs_dcl(FS_T9);
-- mask_reg = FS_T9;
-- } else {
-- i915_fs_dcl(FS_T0 + t);
-- i915_fs_dcl(FS_S0 + t);
-- }
-+ i915_fs_dcl(FS_T1);
-+ i915_fs_dcl(FS_S1);
-
-- tex_unit = 0;
-- if (! is_solid_src) {
-- /* Load the source_picture texel */
-- if (intel_transform_is_affine(intel->transform[tex_unit]))
-- i915_fs_texld(FS_R0, FS_S0, FS_T0);
-- else
-- i915_fs_texldp(FS_R0, FS_S0, FS_T0);
-+ /* Load the source_picture texel */
-+ if (intel_transform_is_affine(intel->transform[0]))
-+ i915_fs_texld(FS_R0, FS_S0, FS_T0);
-+ else
-+ i915_fs_texldp(FS_R0, FS_S0, FS_T0);
-
-- src_reg = FS_R0;
-- tex_unit++;
-- }
-+ src_reg = FS_R0;
-
-- if (! is_solid_mask) {
-- /* Load the mask_picture texel */
-- if (intel_transform_is_affine(intel->transform[tex_unit]))
-- i915_fs_texld(FS_R1, FS_S0 + t, FS_T0 + t);
-- else
-- i915_fs_texldp(FS_R1, FS_S0 + t, FS_T0 + t);
-+ /* Load the mask_picture texel */
-+ if (intel_transform_is_affine(intel->transform[1]))
-+ i915_fs_texld(FS_R1, FS_S1, FS_T1);
-+ else
-+ i915_fs_texldp(FS_R1, FS_S1, FS_T1);
-
-- mask_reg = FS_R1;
-- }
-+ mask_reg = FS_R1;
-
- if (dest_is_alpha) {
- i915_fs_mul(FS_OC,
-@@ -972,7 +870,6 @@ static void i915_emit_composite_setup(ScrnInfoPtr scrn)
- PicturePtr dest_picture = intel->render_dest_picture;
- PixmapPtr mask = intel->render_mask;
- PixmapPtr dest = intel->render_dest;
-- Bool is_solid_src, is_solid_mask;
- int tex_count, t;
-
- intel->needs_render_state_emit = FALSE;
-@@ -980,12 +877,7 @@ static void i915_emit_composite_setup(ScrnInfoPtr scrn)
- IntelEmitInvarientState(scrn);
- intel->last_3d = LAST_3D_RENDER;
-
-- is_solid_src = intel->render_source_is_solid;
-- is_solid_mask = intel->render_mask_is_solid;
--
-- tex_count = 0;
-- tex_count += ! is_solid_src;
-- tex_count += mask && ! is_solid_mask;
-+ tex_count = 1 + (mask != NULL);
-
- assert(intel->in_batch_atomic);
-
-@@ -1007,15 +899,6 @@ static void i915_emit_composite_setup(ScrnInfoPtr scrn)
- }
- }
-
-- if (is_solid_src) {
-- OUT_BATCH (_3DSTATE_DFLT_DIFFUSE_CMD);
-- OUT_BATCH (intel->render_source_solid);
-- }
-- if (mask && is_solid_mask) {
-- OUT_BATCH (_3DSTATE_DFLT_SPEC_CMD);
-- OUT_BATCH (intel->render_mask_solid);
-- }
--
- /* BUF_INFO is an implicit flush, so avoid if the target has not changed.
- * XXX However for reasons unfathomed, correct rendering in KDE requires
- * at least a MI_FLUSH | INHIBIT_RENDER_CACHE_FLUSH here.
-@@ -1058,20 +941,15 @@ static void i915_emit_composite_setup(ScrnInfoPtr scrn)
- uint32_t ss2;
-
- ss2 = ~0;
-- t = 0;
-- if (! is_solid_src) {
-- ss2 &= ~S2_TEXCOORD_FMT(t, TEXCOORDFMT_NOT_PRESENT);
-- ss2 |= S2_TEXCOORD_FMT(t,
-- intel_transform_is_affine(intel->transform[t]) ?
-- TEXCOORDFMT_2D : TEXCOORDFMT_4D);
-- t++;
-- }
-- if (mask && ! is_solid_mask) {
-- ss2 &= ~S2_TEXCOORD_FMT(t, TEXCOORDFMT_NOT_PRESENT);
-- ss2 |= S2_TEXCOORD_FMT(t,
-- intel_transform_is_affine(intel->transform[t]) ?
-+ ss2 &= ~S2_TEXCOORD_FMT(0, TEXCOORDFMT_NOT_PRESENT);
-+ ss2 |= S2_TEXCOORD_FMT(0,
-+ intel_transform_is_affine(intel->transform[0]) ?
-+ TEXCOORDFMT_2D : TEXCOORDFMT_4D);
-+ if (mask) {
-+ ss2 &= ~S2_TEXCOORD_FMT(1, TEXCOORDFMT_NOT_PRESENT);
-+ ss2 |= S2_TEXCOORD_FMT(1,
-+ intel_transform_is_affine(intel->transform[1]) ?
- TEXCOORDFMT_2D : TEXCOORDFMT_4D);
-- t++;
- }
-
- if (intel->needs_render_ca_pass) {
---
-1.7.10
-
diff --git a/extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch b/extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch
deleted file mode 100644
index 89f43459d..000000000
--- a/extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From fd25a4586b0667b1591d85b23daaa99464e9b0d8 Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Mon, 19 Mar 2012 15:51:43 +0000
-Subject: [PATCH 2/5] uxa: Defer the call to EnterVT till after outputs are
- initialised
-
-We need to do this apparently or else we never perform the VT switch.
-However, we can not do it too early, especially not before we have
-finished intialising the outputs.
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47395
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
----
- src/intel_driver.c | 13 +++++--------
- 1 file changed, 5 insertions(+), 8 deletions(-)
-
-diff --git a/src/intel_driver.c b/src/intel_driver.c
-index e2e43fa..ff29754 100644
---- a/src/intel_driver.c
-+++ b/src/intel_driver.c
-@@ -1013,13 +1013,6 @@ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
- "Hardware cursor initialization failed\n");
- }
-
-- /* Must force it before EnterVT, so we are in control of VT and
-- * later memory should be bound when allocating, e.g rotate_mem */
-- scrn->vtSema = TRUE;
--
-- if (!I830EnterVT(scrnIndex, 0))
-- return FALSE;
--
- intel->BlockHandler = screen->BlockHandler;
- screen->BlockHandler = I830BlockHandler;
-
-@@ -1092,7 +1085,11 @@ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
- I830UeventInit(scrn);
- #endif
-
-- return TRUE;
-+ /* Must force it before EnterVT, so we are in control of VT and
-+ * later memory should be bound when allocating, e.g rotate_mem */
-+ scrn->vtSema = TRUE;
-+
-+ return I830EnterVT(scrnIndex, 0);
- }
-
- static void i830AdjustFrame(int scrnIndex, int x, int y, int flags)
---
-1.7.10
-
diff --git a/extra/xf86-video-intel/0003-uxa-Remove-hook-for-CompositeRectangles.patch b/extra/xf86-video-intel/0003-uxa-Remove-hook-for-CompositeRectangles.patch
deleted file mode 100644
index c1c4d55e8..000000000
--- a/extra/xf86-video-intel/0003-uxa-Remove-hook-for-CompositeRectangles.patch
+++ /dev/null
@@ -1,255 +0,0 @@
-From b669f171adece9df7f0c340c664b70e94118a55e Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Fri, 23 Mar 2012 14:56:06 +0000
-Subject: [PATCH 3/5] uxa: Remove hook for CompositeRectangles
-
-It was broken and not flushing damage correctly. With the
-improvements made to the kernel, it is no longer a significant advantage
-per se and not worth its additional complexity.
-
-Reported-by: Tilman Sauerbeck <tilman@code-monkey.de>
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32547
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
----
- uxa/uxa-priv.h | 1 -
- uxa/uxa-render.c | 189 ------------------------------------------------------
- uxa/uxa.c | 4 --
- 3 files changed, 194 deletions(-)
-
-diff --git a/uxa/uxa-priv.h b/uxa/uxa-priv.h
-index 0de45f5..b24ec4f 100644
---- a/uxa/uxa-priv.h
-+++ b/uxa/uxa-priv.h
-@@ -123,7 +123,6 @@ typedef struct {
- BitmapToRegionProcPtr SavedBitmapToRegion;
- #ifdef RENDER
- CompositeProcPtr SavedComposite;
-- CompositeRectsProcPtr SavedCompositeRects;
- TrianglesProcPtr SavedTriangles;
- GlyphsProcPtr SavedGlyphs;
- TrapezoidsProcPtr SavedTrapezoids;
-diff --git a/uxa/uxa-render.c b/uxa/uxa-render.c
-index 877b286..1e88c5d 100644
---- a/uxa/uxa-render.c
-+++ b/uxa/uxa-render.c
-@@ -947,195 +947,6 @@ uxa_acquire_mask(ScreenPtr screen,
- out_x, out_y);
- }
-
--static Bool
--_pixman_region_init_rectangles(pixman_region16_t *region,
-- int num_rects,
-- xRectangle *rects,
-- int tx, int ty)
--{
-- pixman_box16_t stack_boxes[64], *boxes = stack_boxes;
-- pixman_bool_t ret;
-- int i;
--
-- if (num_rects > sizeof(stack_boxes) / sizeof(stack_boxes[0])) {
-- boxes = malloc(sizeof(pixman_box16_t) * num_rects);
-- if (boxes == NULL)
-- return FALSE;
-- }
--
-- for (i = 0; i < num_rects; i++) {
-- boxes[i].x1 = rects[i].x + tx;
-- boxes[i].y1 = rects[i].y + ty;
-- boxes[i].x2 = rects[i].x + tx + rects[i].width;
-- boxes[i].y2 = rects[i].y + ty + rects[i].height;
-- }
--
-- ret = pixman_region_init_rects(region, boxes, num_rects);
--
-- if (boxes != stack_boxes)
-- free(boxes);
--
-- return ret;
--}
--
--void
--uxa_solid_rects (CARD8 op,
-- PicturePtr dst,
-- xRenderColor *color,
-- int num_rects,
-- xRectangle *rects)
--{
-- ScreenPtr screen = dst->pDrawable->pScreen;
-- uxa_screen_t *uxa_screen = uxa_get_screen(screen);
-- PixmapPtr dst_pixmap, src_pixmap = NULL;
-- pixman_region16_t region;
-- pixman_box16_t *boxes, *extents;
-- PicturePtr src;
-- int dst_x, dst_y;
-- int num_boxes;
--
-- if (!pixman_region_not_empty(dst->pCompositeClip))
-- return;
--
-- if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
-- int ok;
--
-- uxa_picture_prepare_access(dst, UXA_GLAMOR_ACCESS_RW);
-- ok = glamor_composite_rects_nf(op, dst, color,
-- num_rects, rects);
-- uxa_picture_finish_access(dst, UXA_GLAMOR_ACCESS_RW);
--
-- if (!ok)
-- goto fallback;
--
-- return;
-- }
--
-- if (dst->alphaMap)
-- goto fallback;
--
-- dst_pixmap = uxa_get_offscreen_pixmap(dst->pDrawable, &dst_x, &dst_y);
-- if (!dst_pixmap)
-- goto fallback;
--
-- if (!_pixman_region_init_rectangles(&region,
-- num_rects, rects,
-- dst->pDrawable->x, dst->pDrawable->y))
-- goto fallback;
--
-- if (!pixman_region_intersect(&region, &region, dst->pCompositeClip)) {
-- pixman_region_fini(&region);
-- return;
-- }
--
-- pixman_region_translate(&region, dst_x, dst_y);
-- boxes = pixman_region_rectangles(&region, &num_boxes);
-- extents = pixman_region_extents (&region);
--
-- if (op == PictOpClear)
-- color->red = color->green = color->blue = color->alpha = 0;
-- if (color->alpha >= 0xff00 && op == PictOpOver) {
-- color->alpha = 0xffff;
-- op = PictOpSrc;
-- }
--
-- /* Using GEM, the relocation costs outweigh the advantages of the blitter */
-- if (num_boxes == 1 && (op == PictOpSrc || op == PictOpClear)) {
-- CARD32 pixel;
--
--try_solid:
-- if (uxa_screen->info->check_solid &&
-- !uxa_screen->info->check_solid(&dst_pixmap->drawable, GXcopy, FB_ALLONES))
-- goto err_region;
--
-- if (!uxa_get_pixel_from_rgba(&pixel,
-- color->red,
-- color->green,
-- color->blue,
-- color->alpha,
-- dst->format))
-- goto err_region;
--
-- if (!uxa_screen->info->prepare_solid(dst_pixmap, GXcopy, FB_ALLONES, pixel))
-- goto err_region;
--
-- while (num_boxes--) {
-- uxa_screen->info->solid(dst_pixmap,
-- boxes->x1, boxes->y1,
-- boxes->x2, boxes->y2);
-- boxes++;
-- }
--
-- uxa_screen->info->done_solid(dst_pixmap);
-- } else {
-- int error;
--
-- src = CreateSolidPicture(0, color, &error);
-- if (!src)
-- goto err_region;
--
-- if (!uxa_screen->info->check_composite(op, src, NULL, dst,
-- extents->x2 - extents->x1,
-- extents->y2 - extents->y1)) {
-- if (op == PictOpSrc || op == PictOpClear) {
-- FreePicture(src, 0);
-- goto try_solid;
-- }
--
-- goto err_src;
-- }
--
-- if (!uxa_screen->info->check_composite_texture ||
-- !uxa_screen->info->check_composite_texture(screen, src)) {
-- PicturePtr solid;
-- int src_off_x, src_off_y;
--
-- solid = uxa_acquire_solid(screen, src->pSourcePict);
-- if (!solid)
-- goto err_src;
-- FreePicture(src, 0);
--
-- src = solid;
-- src_pixmap = uxa_get_offscreen_pixmap(src->pDrawable,
-- &src_off_x, &src_off_y);
-- if (!src_pixmap)
-- goto err_src;
-- }
--
-- if (!uxa_screen->info->prepare_composite(op, src, NULL, dst, src_pixmap, NULL, dst_pixmap))
-- goto err_src;
--
-- while (num_boxes--) {
-- uxa_screen->info->composite(dst_pixmap,
-- 0, 0, 0, 0,
-- boxes->x1,
-- boxes->y1,
-- boxes->x2 - boxes->x1,
-- boxes->y2 - boxes->y1);
-- boxes++;
-- }
--
-- uxa_screen->info->done_composite(dst_pixmap);
-- FreePicture(src, 0);
-- }
--
-- /* XXX xserver-1.8: CompositeRects is not tracked by Damage, so we must
-- * manually append the damaged regions ourselves.
-- */
-- pixman_region_translate(&region, -dst_x, -dst_y);
-- DamageRegionAppend(dst->pDrawable, &region);
--
-- pixman_region_fini(&region);
-- return;
--
--err_src:
-- FreePicture(src, 0);
--err_region:
-- pixman_region_fini(&region);
--fallback:
-- uxa_screen->SavedCompositeRects(op, dst, color, num_rects, rects);
--}
--
- static int
- uxa_try_driver_composite(CARD8 op,
- PicturePtr pSrc,
-diff --git a/uxa/uxa.c b/uxa/uxa.c
-index eb2ae03..b4a1da6 100644
---- a/uxa/uxa.c
-+++ b/uxa/uxa.c
-@@ -407,7 +407,6 @@ static Bool uxa_close_screen(int i, ScreenPtr pScreen)
- #ifdef RENDER
- if (ps) {
- ps->Composite = uxa_screen->SavedComposite;
-- ps->CompositeRects = uxa_screen->SavedCompositeRects;
- ps->Glyphs = uxa_screen->SavedGlyphs;
- ps->Trapezoids = uxa_screen->SavedTrapezoids;
- ps->AddTraps = uxa_screen->SavedAddTraps;
-@@ -536,9 +535,6 @@ Bool uxa_driver_init(ScreenPtr screen, uxa_driver_t * uxa_driver)
- uxa_screen->SavedComposite = ps->Composite;
- ps->Composite = uxa_composite;
-
-- uxa_screen->SavedCompositeRects = ps->CompositeRects;
-- ps->CompositeRects = uxa_solid_rects;
--
- uxa_screen->SavedGlyphs = ps->Glyphs;
- ps->Glyphs = uxa_glyphs;
-
---
-1.7.10
-
diff --git a/extra/xf86-video-intel/0004-uxa-Remove-broken-render-glyphs-to-dst.patch b/extra/xf86-video-intel/0004-uxa-Remove-broken-render-glyphs-to-dst.patch
deleted file mode 100644
index 3bf15c1a1..000000000
--- a/extra/xf86-video-intel/0004-uxa-Remove-broken-render-glyphs-to-dst.patch
+++ /dev/null
@@ -1,391 +0,0 @@
-From 1aee0af6d8296c108b6b4eb1bcf583aae385d22d Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Fri, 30 Mar 2012 12:47:21 +0100
-Subject: [PATCH 4/5] uxa: Remove broken render glyphs-to-dst
-
-Reported-by: Vincent Untz <vuntz@gnome.org>
-Reported-by: Robert Bradford <robert.bradford@intel.com>
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48045
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
----
- uxa/uxa-glyphs.c | 330 +++---------------------------------------------------
- 1 file changed, 17 insertions(+), 313 deletions(-)
-
-diff --git a/uxa/uxa-glyphs.c b/uxa/uxa-glyphs.c
-index 6172f2f..b754f4e 100644
---- a/uxa/uxa-glyphs.c
-+++ b/uxa/uxa-glyphs.c
-@@ -663,190 +663,6 @@ uxa_glyph_cache(ScreenPtr screen, GlyphPtr glyph, int *out_x, int *out_y)
- return cache->picture;
- }
-
--static int
--uxa_glyphs_to_dst(CARD8 op,
-- PicturePtr pSrc,
-- PicturePtr pDst,
-- INT16 src_x, INT16 src_y,
-- INT16 xDst, INT16 yDst,
-- int nlist, GlyphListPtr list, GlyphPtr * glyphs,
-- BoxPtr extents)
--{
-- ScreenPtr screen = pDst->pDrawable->pScreen;
-- uxa_screen_t *uxa_screen = uxa_get_screen(screen);
-- PixmapPtr src_pixmap, dst_pixmap;
-- PicturePtr localSrc, glyph_atlas;
-- int x, y, n;
-- BoxRec box;
--
-- if (uxa_screen->info->check_composite_texture &&
-- uxa_screen->info->check_composite_texture(screen, pSrc)) {
-- if (pSrc->pDrawable) {
-- int src_off_x, src_off_y;
--
-- src_pixmap = uxa_get_offscreen_pixmap(pSrc->pDrawable, &src_off_x, &src_off_y);
-- if (src_pixmap == NULL)
-- return -1;
--
-- src_x += pSrc->pDrawable->x + src_off_x;
-- src_y += pSrc->pDrawable->y + src_off_y;
-- } else {
-- src_pixmap = NULL;
-- }
-- localSrc = pSrc;
-- } else {
-- int width, height;
--
-- if (extents == NULL) {
-- uxa_glyph_extents(nlist, list, glyphs, &box);
-- extents = &box;
-- }
--
-- width = extents->x2 - extents->x1;
-- height = extents->y2 - extents->y1;
-- if (width == 0 || height == 0)
-- return 0;
--
-- if (pSrc->pDrawable) {
-- int src_off_x, src_off_y;
--
-- src_off_x = extents->x1 - xDst;
-- src_off_y = extents->y1 - yDst;
-- localSrc = uxa_acquire_drawable(screen, pSrc,
-- src_x + src_off_x, src_y + src_off_y,
-- width, height,
-- &src_x, &src_y);
-- if (uxa_screen->info->check_composite_texture &&
-- !uxa_screen->info->check_composite_texture(screen, localSrc)) {
-- if (localSrc != pSrc)
-- FreePicture(localSrc, 0);
-- return -1;
-- }
--
-- src_pixmap = uxa_get_offscreen_pixmap(localSrc->pDrawable, &src_off_x, &src_off_y);
-- if (src_pixmap == NULL) {
-- if (localSrc != pSrc)
-- FreePicture(localSrc, 0);
-- return -1;
-- }
--
-- src_x += localSrc->pDrawable->x + src_off_x;
-- src_y += localSrc->pDrawable->y + src_off_y;
-- } else {
-- localSrc = uxa_acquire_pattern(screen, pSrc,
-- PICT_a8r8g8b8, x, y, width, height);
-- if (!localSrc)
-- return 1;
--
-- src_pixmap = uxa_get_drawable_pixmap(localSrc->pDrawable);
-- if (src_pixmap == NULL) {
-- FreePicture(localSrc, 0);
-- return -1;
-- }
--
-- src_x = src_y = 0;
-- }
-- }
--
-- dst_pixmap = uxa_get_offscreen_pixmap(pDst->pDrawable, &x, &y);
-- x += xDst + pDst->pDrawable->x - list->xOff;
-- y += yDst + pDst->pDrawable->y - list->yOff;
--
-- glyph_atlas = NULL;
-- while (nlist--) {
-- x += list->xOff;
-- y += list->yOff;
-- n = list->len;
-- while (n--) {
-- GlyphPtr glyph = *glyphs++;
-- PicturePtr this_atlas;
-- int mask_x, mask_y, nrect;
-- struct uxa_glyph *priv;
-- BoxPtr rects;
--
-- if (glyph->info.width == 0 || glyph->info.height == 0)
-- goto next_glyph;
--
-- priv = uxa_glyph_get_private(glyph);
-- if (priv != NULL) {
-- mask_x = priv->x;
-- mask_y = priv->y;
-- this_atlas = priv->cache->picture;
-- } else {
-- if (glyph_atlas) {
-- uxa_screen->info->done_composite(dst_pixmap);
-- glyph_atlas = NULL;
-- }
-- this_atlas = uxa_glyph_cache(screen, glyph, &mask_x, &mask_y);
-- if (this_atlas == NULL) {
-- /* no cache for this glyph */
-- this_atlas = GlyphPicture(glyph)[screen->myNum];
-- mask_x = mask_y = 0;
-- }
-- }
--
-- if (this_atlas != glyph_atlas) {
-- PixmapPtr mask_pixmap;
--
-- if (glyph_atlas)
-- uxa_screen->info->done_composite(dst_pixmap);
--
-- mask_pixmap =
-- uxa_get_drawable_pixmap(this_atlas->pDrawable);
-- if (!uxa_pixmap_is_offscreen(mask_pixmap) ||
-- !uxa_screen->info->prepare_composite(op,
-- localSrc, this_atlas, pDst,
-- src_pixmap, mask_pixmap, dst_pixmap))
-- return -1;
--
-- glyph_atlas = this_atlas;
-- }
--
-- rects = REGION_RECTS(pDst->pCompositeClip);
-- nrect = REGION_NUM_RECTS(pDst->pCompositeClip);
-- while (nrect--) {
-- int x1 = x - glyph->info.x, dx = 0;
-- int y1 = y - glyph->info.y, dy = 0;
-- int x2 = x1 + glyph->info.width;
-- int y2 = y1 + glyph->info.height;
--
-- if (rects->y1 >= y2)
-- break;
--
-- if (x1 < rects->x1)
-- dx = rects->x1 - x1, x1 = rects->x1;
-- if (x2 > rects->x2)
-- x2 = rects->x2;
-- if (y1 < rects->y1)
-- dy = rects->y1 - y1, y1 = rects->y1;
-- if (y2 > rects->y2)
-- y2 = rects->y2;
--
-- if (x1 < x2 && y1 < y2) {
-- uxa_screen->info->composite(dst_pixmap,
-- x1 + src_x, y1 + src_y,
-- dx + mask_x, dy + mask_y,
-- x1, y1,
-- x2 - x1, y2 - y1);
-- }
-- rects++;
-- }
--
--next_glyph:
-- x += glyph->info.xOff;
-- y += glyph->info.yOff;
-- }
-- list++;
-- }
-- if (glyph_atlas)
-- uxa_screen->info->done_composite(dst_pixmap);
--
-- if (localSrc != pSrc)
-- FreePicture(localSrc, 0);
--
-- return 0;
--}
--
- static void
- uxa_clear_pixmap(ScreenPtr screen,
- uxa_screen_t *uxa_screen,
-@@ -894,37 +710,30 @@ uxa_glyphs_via_mask(CARD8 op,
- PicturePtr pDst,
- PictFormatPtr maskFormat,
- INT16 xSrc, INT16 ySrc,
-- INT16 xDst, INT16 yDst,
-- int nlist, GlyphListPtr list, GlyphPtr * glyphs,
-- BoxPtr extents)
-+ int nlist, GlyphListPtr list, GlyphPtr * glyphs)
- {
- ScreenPtr screen = pDst->pDrawable->pScreen;
- uxa_screen_t *uxa_screen = uxa_get_screen(screen);
- CARD32 component_alpha;
- PixmapPtr pixmap;
- PicturePtr glyph_atlas, mask;
-+ int xDst = list->xOff, yDst = list->yOff;
- int x, y, width, height;
- int dst_off_x, dst_off_y;
- int n, error;
- BoxRec box;
-
-- if (!extents) {
-- uxa_glyph_extents(nlist, list, glyphs, &box);
-+ uxa_glyph_extents(nlist, list, glyphs, &box);
-+ if (box.x2 <= box.x1 || box.y2 <= box.y1)
-+ return 0;
-
-- if (box.x2 <= box.x1 || box.y2 <= box.y1)
-- return 0;
-+ dst_off_x = box.x1;
-+ dst_off_y = box.y1;
-
-- extents = &box;
-- dst_off_x = box.x1;
-- dst_off_y = box.y1;
-- } else {
-- dst_off_x = dst_off_y = 0;
-- }
--
-- width = extents->x2 - extents->x1;
-- height = extents->y2 - extents->y1;
-- x = -extents->x1;
-- y = -extents->y1;
-+ width = box.x2 - box.x1;
-+ height = box.y2 - box.y1;
-+ x = -box.x1;
-+ y = -box.y1;
-
- if (maskFormat->depth == 1) {
- PictFormatPtr a8Format =
-@@ -1061,11 +870,6 @@ uxa_glyphs(CARD8 op,
- {
- ScreenPtr screen = pDst->pDrawable->pScreen;
- uxa_screen_t *uxa_screen = uxa_get_screen(screen);
-- int xDst = list->xOff, yDst = list->yOff;
-- BoxRec extents = { 0, 0, 0, 0 };
-- Bool have_extents = FALSE;
-- int width, height, ret;
-- PicturePtr localDst = pDst;
-
- if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
- int ok;
-@@ -1128,112 +932,12 @@ fallback:
- }
- }
-
-- if (!maskFormat &&
-- uxa_screen->info->check_composite_target &&
-- !uxa_screen->info->check_composite_target(uxa_get_drawable_pixmap(pDst->pDrawable))) {
-- int depth = pDst->pDrawable->depth;
-- PixmapPtr pixmap;
-- int x, y, error;
-- GCPtr gc;
--
-- pixmap = uxa_get_drawable_pixmap(pDst->pDrawable);
-- if (uxa_screen->info->check_copy &&
-- !uxa_screen->info->check_copy(pixmap, pixmap, GXcopy, FB_ALLONES))
-- goto fallback;
--
-- uxa_glyph_extents(nlist, list, glyphs, &extents);
--
-- /* clip against dst bounds */
-- if (extents.x1 < 0)
-- extents.x1 = 0;
-- if (extents.y1 < 0)
-- extents.y1 = 0;
-- if (extents.x2 > pDst->pDrawable->width)
-- extents.x2 = pDst->pDrawable->width;
-- if (extents.y2 > pDst->pDrawable->height)
-- extents.y2 = pDst->pDrawable->height;
--
-- if (extents.x2 <= extents.x1 || extents.y2 <= extents.y1)
-- return;
-- width = extents.x2 - extents.x1;
-- height = extents.y2 - extents.y1;
-- x = -extents.x1;
-- y = -extents.y1;
-- have_extents = TRUE;
--
-- xDst += x;
-- yDst += y;
--
-- pixmap = screen->CreatePixmap(screen,
-- width, height, depth,
-- CREATE_PIXMAP_USAGE_SCRATCH);
-- if (!pixmap)
-- return;
--
-- if (!uxa_pixmap_is_offscreen(pixmap)) {
-- screen->DestroyPixmap(pixmap);
-- goto fallback;
-- }
--
-- gc = GetScratchGC(depth, screen);
-- if (!gc) {
-- screen->DestroyPixmap(pixmap);
-- return;
-- }
--
-- ValidateGC(&pixmap->drawable, gc);
-- gc->ops->CopyArea(pDst->pDrawable, &pixmap->drawable, gc,
-- extents.x1, extents.y1,
-- width, height,
-- 0, 0);
-- FreeScratchGC(gc);
--
-- localDst = CreatePicture(0, &pixmap->drawable,
-- PictureMatchFormat(screen, depth, pDst->format),
-- 0, 0, serverClient, &error);
-- screen->DestroyPixmap(pixmap);
--
-- if (!localDst)
-- return;
--
-- ValidatePicture(localDst);
-- }
--
-- if (maskFormat) {
-- ret = uxa_glyphs_via_mask(op,
-- pSrc, localDst, maskFormat,
-- xSrc, ySrc,
-- xDst, yDst,
-- nlist, list, glyphs,
-- have_extents ? &extents : NULL);
-- } else {
-- ret = uxa_glyphs_to_dst(op,
-- pSrc, localDst,
-- xSrc, ySrc,
-- xDst, yDst,
-- nlist, list, glyphs,
-- have_extents ? &extents : NULL);
-- }
-- if (ret) {
-- if (localDst != pDst)
-- FreePicture(localDst, 0);
--
-+ if (!maskFormat)
- goto fallback;
-- }
-
-- if (localDst != pDst) {
-- GCPtr gc;
--
-- gc = GetScratchGC(pDst->pDrawable->depth, screen);
-- if (gc) {
-- ValidateGC(pDst->pDrawable, gc);
-- gc->ops->CopyArea(localDst->pDrawable, pDst->pDrawable, gc,
-- 0, 0,
-- width, height,
-- extents.x1, extents.y1);
-- FreeScratchGC(gc);
-- }
--
-- FreePicture(localDst, 0);
-- }
-+ if (uxa_glyphs_via_mask(op,
-+ pSrc, pDst, maskFormat,
-+ xSrc, ySrc,
-+ nlist, list, glyphs))
-+ goto fallback;
- }
---
-1.7.10
-
diff --git a/extra/xf86-video-intel/0005-uxa-Fix-leak-of-glyph-mask-for-unhandled-glyph-compo.patch b/extra/xf86-video-intel/0005-uxa-Fix-leak-of-glyph-mask-for-unhandled-glyph-compo.patch
deleted file mode 100644
index 865679078..000000000
--- a/extra/xf86-video-intel/0005-uxa-Fix-leak-of-glyph-mask-for-unhandled-glyph-compo.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From af5c698fd43308c3b799783b662b9cd871f90a62 Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Sat, 14 Apr 2012 19:03:25 +0100
-Subject: [PATCH 5/5] uxa: Fix leak of glyph mask for unhandled glyph
- composition
-
-==1401== 7,344 bytes in 34 blocks are possibly lost in loss record 570 of 587
-==1401== at 0x4027034: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
-==1401== by 0x8BE5150: drm_intel_gem_bo_alloc_internal (intel_bufmgr_gem.c:689)
-==1401== by 0x899FC04: intel_uxa_create_pixmap (intel_uxa.c:1077)
-==1401== by 0x89C2C41: uxa_glyphs (uxa-glyphs.c:254)
-==1401== by 0x21F05E: damageGlyphs (damage.c:647)
-==1401== by 0x218E06: ProcRenderCompositeGlyphs (render.c:1434)
-==1401== by 0x15AA40: Dispatch (dispatch.c:439)
-==1401== by 0x1499E9: main (main.c:287)
-
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
----
- uxa/uxa-glyphs.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/uxa/uxa-glyphs.c b/uxa/uxa-glyphs.c
-index b754f4e..921b99c 100644
---- a/uxa/uxa-glyphs.c
-+++ b/uxa/uxa-glyphs.c
-@@ -812,8 +812,10 @@ uxa_glyphs_via_mask(CARD8 op,
- if (!uxa_pixmap_is_offscreen(src_pixmap) ||
- !uxa_screen->info->prepare_composite(PictOpAdd,
- this_atlas, NULL, mask,
-- src_pixmap, NULL, pixmap))
-+ src_pixmap, NULL, pixmap)) {
-+ FreePicture(mask, 0);
- return -1;
-+ }
-
- glyph_atlas = this_atlas;
- }
---
-1.7.10
-