From 622de23541903f9b6f85fe0a96d61de08372d23b Mon Sep 17 00:00:00 2001 From: root Date: Fri, 10 Jun 2011 17:00:28 +0000 Subject: Fri Jun 10 17:00:28 UTC 2011 --- extra/clamav/PKGBUILD | 35 +++++++++++++----------- extra/clamav/conf.d | 8 ++++++ extra/clamav/install | 14 ++++++++++ extra/clamav/logrotate | 8 ++++++ extra/clamav/rc.d | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 122 insertions(+), 15 deletions(-) create mode 100644 extra/clamav/conf.d create mode 100644 extra/clamav/install create mode 100644 extra/clamav/logrotate create mode 100644 extra/clamav/rc.d (limited to 'extra/clamav') diff --git a/extra/clamav/PKGBUILD b/extra/clamav/PKGBUILD index 983458e51..35dc54939 100644 --- a/extra/clamav/PKGBUILD +++ b/extra/clamav/PKGBUILD @@ -1,35 +1,40 @@ -# $Id: PKGBUILD 109346 2011-02-08 18:56:38Z bisson $ -# Maintainer: Dale Blount +# $Id: PKGBUILD 127029 2011-06-09 21:38:42Z bisson $ +# Contributor: Dale Blount # Contributor: Gregor Ibic +# Maintainer: Gaetan Bisson pkgname=clamav -pkgver=0.97 +pkgver=0.97.1 pkgrel=1 pkgdesc='Anti-virus toolkit for Unix' arch=('i686' 'x86_64') depends=('bzip2' 'zlib' 'libtool') options=('!libtool') -install="$pkgname.install" license=('GPL') backup=('etc/clamav/clamd.conf' 'etc/clamav/freshclam.conf' 'etc/conf.d/clamav') url='http://www.clamav.net/' source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz" - 'clamav' - 'clamav.confd' - 'clamav.logrotate' + 'rc.d' + 'conf.d' + 'logrotate' 'config.patch') - -sha1sums=('68f5a6736b3f67d608c4064ef839777877f09115' +sha1sums=('1b3a4667dcc278bc7eab38acbc0f35269aa05387' '7f15f0b13a1c11235bc99ef0add01efd8a442f07' 'cb116cdab49a810381a515cbcfb6a6c148547f07' 'be3310d2b41a68ce06e33c84ab68ffe59fdce104' '701a61571788d10ff7af01597785835c6bfea918') +install=install + build() { cd "$srcdir/$pkgname-$pkgver" patch -p1 < ../config.patch - ./configure --prefix=/usr --sysconfdir=/etc/clamav \ - --with-dbdir=/var/lib/clamav --disable-clamav + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc/clamav \ + --with-dbdir=/var/lib/clamav \ + --disable-clamav \ + make } @@ -37,14 +42,14 @@ package() { cd "$srcdir/$pkgname-$pkgver" make DESTDIR="$pkgdir" install - # make sure conf files get installed, cause make install + # make sure conf files get installed, because make install # doesn't do that if clamav is already installed upon building. install -D -m644 etc/clamd.conf "$pkgdir/etc/clamav/clamd.conf" install -D -m644 etc/freshclam.conf "$pkgdir/etc/clamav/freshclam.conf" - install -D -m644 ../clamav.logrotate "$pkgdir/etc/logrotate.d/clamav" - install -D -m644 ../clamav.confd "$pkgdir/etc/conf.d/clamav" - install -D -m755 ../clamav "$pkgdir/etc/rc.d/clamav" + install -D -m644 ../logrotate "$pkgdir/etc/logrotate.d/clamav" + install -D -m644 ../conf.d "$pkgdir/etc/conf.d/clamav" + install -D -m755 ../rc.d "$pkgdir/etc/rc.d/clamav" # un-distribute databases to require freshclam rm "$pkgdir"/var/lib/clamav/*.cvd diff --git a/extra/clamav/conf.d b/extra/clamav/conf.d new file mode 100644 index 000000000..9cd44d9f8 --- /dev/null +++ b/extra/clamav/conf.d @@ -0,0 +1,8 @@ +# clamav startup script config options + +# change these to "yes" to start +START_FRESHCLAM="no" +START_CLAMD="no" + +# Options to pass to freshclam (man freshclam for more info). +FRESHCLAM_OPTS="-c 12" diff --git a/extra/clamav/install b/extra/clamav/install new file mode 100644 index 000000000..9116dc394 --- /dev/null +++ b/extra/clamav/install @@ -0,0 +1,14 @@ +post_install() { + getent group clamav &>/dev/null || groupadd -r -g 64 clamav >/dev/null + getent passwd clamav &>/dev/null || useradd -r -u 64 -g clamav -d /dev/null -s /bin/false -c "Clam AntiVirus" clamav >/dev/null + + install -d /var/{log,run}/clamav + chown clamav:root /var/{log,run}/clamav + chown -R clamav:clamav /var/lib/clamav +} + +post_remove() { + getent passwd clamav &>/dev/null && userdel clamav >/dev/null + getent group clamav &>/dev/null && groupdel clamav >/dev/null + return 0 +} diff --git a/extra/clamav/logrotate b/extra/clamav/logrotate new file mode 100644 index 000000000..d1dc94dce --- /dev/null +++ b/extra/clamav/logrotate @@ -0,0 +1,8 @@ +/var/log/clamav/clamd.log /var/log/clamav/freshclam.log { + create 644 clamav clamav + sharedscripts + postrotate + /bin/kill -HUP `cat /var/run/clamav/clamd.pid 2>/dev/null` 2> /dev/null || true + /bin/kill -HUP `cat /var/run/clamav/freshclam.pid 2>/dev/null` 2> /dev/null || true + endscript +} diff --git a/extra/clamav/rc.d b/extra/clamav/rc.d new file mode 100644 index 000000000..8e9c6afa9 --- /dev/null +++ b/extra/clamav/rc.d @@ -0,0 +1,72 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +# source application-specific settings +[ -f /etc/conf.d/clamav ] && . /etc/conf.d/clamav + +PID_FC=`pidof -o %PPID /usr/bin/freshclam` +PID_CD=`pidof -o %PPID /usr/sbin/clamd` + +case "$1" in + start) + # if clamd isn't started first, notifyclamd fails at times + if [ "$START_CLAMD" == "yes" ]; then + stat_busy "Starting ClamD" + [ -z "$PID_CD" ] && /usr/sbin/clamd + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon clamav + stat_done + fi + fi + + # give clamd enough time to start + sleep 1 + + if [ "$START_FRESHCLAM" == "yes" ]; then + stat_busy "Starting FreshClam" + [ -z "$PID_FC" ] && /usr/bin/freshclam -p /var/run/clamav/freshclam.pid -d $FRESHCLAM_OPTS + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon clamav + stat_done + fi + fi + ;; + stop) + if [ "$START_CLAMD" == "yes" ]; then + stat_busy "Stopping ClamD" + [ -n "$PID_CD" ] && kill $PID_CD &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon clamav + stat_done + fi + fi + + if [ "$START_FRESHCLAM" == "yes" ]; then + stat_busy "Stopping FreshClam" + [ -n "$PID_FC" ] && kill $PID_FC &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon clamav + stat_done + fi + fi + ;; + restart) + $0 stop + # will not start if not fully stopped, so sleep + sleep 2 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 -- cgit v1.2.3-54-g00ecf From dd5222c4ae447eb7a6bda08ec5a3c2339852dc16 Mon Sep 17 00:00:00 2001 From: Parabola Date: Fri, 10 Jun 2011 17:30:25 +0000 Subject: Fri Jun 10 17:30:25 UTC 2011 --- community-staging/calibre/PKGBUILD | 67 - community-staging/calibre/calibre.install | 12 - .../calibre/desktop_integration.patch | 68 - community-staging/couchdb/PKGBUILD | 40 - community-staging/couchdb/couchdb.install | 22 - community-staging/couchdb/rc-script.patch | 90 - community-staging/dwdiff/PKGBUILD | 24 - community-staging/gnustep-base/ChangeLog | 6 - community-staging/gnustep-base/PKGBUILD | 34 - community-staging/goldendict/PKGBUILD | 37 - community-staging/goldendict/goldendict-paths.diff | 10 - community-staging/goldendict/goldendict.changelog | 8 - community-staging/ibus-qt/PKGBUILD | 31 - community-staging/libfbclient/ChangeLog | 26 - community-staging/libfbclient/LICENSE | 44 - community-staging/libfbclient/PKGBUILD | 40 - community-staging/libmicrohttpd/PKGBUILD | 37 - .../libmicrohttpd/libmicrohttpd.install | 20 - community-staging/mapnik/PKGBUILD | 52 - community-staging/mapnik/mapnik.install | 11 - community-staging/open-vm-tools/PKGBUILD | 68 - .../open-vm-tools/open-vm-tools-X11Bool.patch | 15 - .../open-vm-tools/open-vm-tools.conf.d | 6 - .../open-vm-tools/open-vm-tools.install | 10 - community-staging/open-vm-tools/open-vm-tools.rc.d | 101 -- .../open-vm-tools/scripts-network-FS19541.patch | 40 - .../open-vm-tools/scripts-network.patch | 63 - community-staging/open-vm-tools/tools.conf | 1 - community-staging/open-vm-tools/vmware-guestd | 6 - community-staging/open-vm-tools/xautostart.conf | 6 - community-staging/openttd/PKGBUILD | 38 - community-staging/openttd/openttd.install | 17 - community-staging/parrot/ChangeLog | 5 - community-staging/parrot/PKGBUILD | 44 - community-staging/sword/PKGBUILD | 26 - community-staging/tea/PKGBUILD | 35 - community-staging/tea/tea.desktop | 10 - community-staging/tea/tea.install | 4 - community-staging/tracker/PKGBUILD | 50 - community-staging/tracker/tracker.install | 11 - community-staging/xulrunner-oss/PKGBUILD | 70 - community-staging/xulrunner-oss/mozconfig | 56 - .../xulrunner-oss/mozilla-pkgconfig.patch | 60 - community-staging/xulrunner-oss/oss.patch | 31 - .../xulrunner-oss/port_gnomevfs_to_gio.patch | 1316 --------------- .../xulrunner-oss/xulrunner-omnijar.patch | 1737 -------------------- .../xulrunner-oss/xulrunner-version.patch | 12 - community-staging/yaz/PKGBUILD | 38 - community/hardinfo/ChangeLog | 20 - community/hardinfo/PKGBUILD | 36 - community/hardinfo/fixsensors.patch | 13 - community/hardinfo/hardinfo.distro | 1 - community/luxrender/libpng.patch | 21 - community/sword/curl_7.20.patch | 12 - community/zziplib/PKGBUILD | 36 - community/zziplib/zziplib-0.13.60-ldflags.patch | 14 - core/net-tools/nisdomainname.conf.d | 3 - core/rp-pppoe/PKGBUILD | 39 - core/rp-pppoe/adsl | 35 - core/rp-pppoe/rp-pppoe.install | 12 - core/udev/80-drivers.rules | 14 - core/udev/load-modules.sh | 80 - core/udev/static-audio-nodes-permissions.patch | 27 - extra/avahi/ChangeLog | 17 - extra/avidemux/2.5.4_audioDevice.patch | 12 - extra/avidemux/x264.patch | 21 - extra/clamav/clamav | 72 - extra/clamav/clamav.confd | 8 - extra/clamav/clamav.install | 14 - extra/clamav/clamav.logrotate | 8 - ...nly_draw_resize_grip_if_its_window_exists.patch | 28 - extra/hugin/hugin-gcc46.patch | 16 - extra/icedtea-web/fix-man-location.patch | 13 - extra/icon-naming-utils/PKGBUILD | 24 - .../0001-filename-with-spaces-not-supported.patch | 345 ---- extra/libfm/PKGBUILD | 30 - extra/libfm/libfm.install | 15 - extra/libwebkit/gcc46.patch | 11 - extra/lxde-common/PKGBUILD | 28 - extra/lxde-common/lxde-common-arch.patch | 186 --- .../lxde-common/lxde-common-invalid-distfile.patch | 10 - extra/lxde-common/lxde-common.install | 18 - extra/lxdm/PKGBUILD | 51 - extra/lxdm/Xsession.patch | 14 - extra/lxdm/lxdm-daemon | 36 - extra/lxdm/lxdm-pam.patch | 8 - extra/lxdm/lxdm.install | 59 - extra/lxdm/lxdm.patch | 26 - extra/lxmenu-data/PKGBUILD | 19 - ...ssue-with-symbol-alarm-showing-up-on-F14-.patch | 43 - ...-to-react-to-keyboard-map-changes-initiat.patch | 555 ------- extra/lxpanel/PKGBUILD | 25 - extra/lxsession-lite/PKGBUILD | 22 - extra/menu-cache/PKGBUILD | 27 - extra/nx-common/nx-gcc44.patch | 12 - extra/nxserver/nx-gcc44.patch | 12 - extra/nxserver/nxcompshad-gcc43.patch | 19 - extra/obconf/PKGBUILD | 35 - extra/obconf/obconf.install | 15 - extra/openbox/PKGBUILD | 47 - extra/openbox/openbox.install | 9 - extra/openbox/which-2.20.patch | 53 - extra/pcmanfm/PKGBUILD | 28 - extra/pcmanfm/pcmanfm.install | 14 - extra/pcmanfm/revert-new-IPC.patch | 432 ----- extra/phonon-xine/PKGBUILD | 30 - extra/pidgin/nm09-pidgin.patch | 38 - extra/wvdial/PKGBUILD | 30 - extra/wvstreams/PKGBUILD | 40 - extra/xbindkeys/PKGBUILD | 27 - extra/xplc/PKGBUILD | 28 - extra/zope-interface/PKGBUILD | 21 - kde-unstable/qt/PKGBUILD | 222 --- kde-unstable/qt/assistant.desktop | 9 - kde-unstable/qt/designer.desktop | 11 - kde-unstable/qt/linguist.desktop | 10 - kde-unstable/qt/qt.install | 12 - kde-unstable/qt/qtbug-16292.patch | 62 - kde-unstable/qt/qtconfig.desktop | 10 - social/bitcoin-daemon/makefile.archlinux | 72 - .../boost/4994-compile-fix-for-Python32-v2.patch | 16 - staging/boost/PKGBUILD | 112 -- staging/boost/boost-1.46.0-spirit.patch | 59 - staging/brltty/PKGBUILD | 49 - staging/brltty/brltty | 68 - staging/brltty/brltty-4.2-S_ISCHR.patch | 11 - staging/brltty/brltty.conf | 2 - staging/enchant/PKGBUILD | 30 - staging/gptfdisk/PKGBUILD | 35 - staging/hunspell/PKGBUILD | 28 - staging/icu/PKGBUILD | 35 - staging/icu/icu.8198.revert.icu5431.patch | 129 -- staging/libreoffice/PKGBUILD | 701 -------- .../libreoffice/buildfix_64bit_system_libjpeg.diff | 11 - staging/libreoffice/buildfix_bison25.diff | 23 - staging/libreoffice/buildfix_boost.diff | 40 - staging/libreoffice/buildfix_ct2n.diff | 17 - staging/libreoffice/buildfix_i116795.diff | 22 - staging/libreoffice/libreoffice.install | 25 - staging/libreoffice/vbahelper.visibility.patch | 33 - staging/libwebkit/PKGBUILD | 61 - staging/libwebkit/gcc46.patch | 11 - staging/libwebkit/libwebkit.install | 11 - .../libwebkit/replace-switch-with-given-when.patch | 45 - staging/php/PKGBUILD | 379 ----- staging/php/apache.conf | 13 - staging/php/logrotate.d.php-fpm | 6 - staging/php/php-fpm.conf.in.patch | 80 - staging/php/php.ini.patch | 126 -- staging/php/rc.d.php-fpm | 158 -- staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz | Bin 40881 -> 0 bytes staging/xulrunner/PKGBUILD | 63 - staging/xulrunner/mozconfig | 56 - staging/xulrunner/mozilla-pkgconfig.patch | 60 - staging/xulrunner/port_gnomevfs_to_gio.patch | 1316 --------------- staging/xulrunner/xulrunner-omnijar.patch | 1737 -------------------- staging/xulrunner/xulrunner-version.patch | 12 - testing/avahi/PKGBUILD | 75 - testing/avahi/avahi-daemon-dbus.patch | 11 - testing/avahi/avahi.install | 21 - testing/avahi/gnome-nettool.png | Bin 4509 -> 0 bytes testing/glib2/PKGBUILD | 48 - testing/glib2/glib2.csh | 1 - testing/glib2/glib2.sh | 1 - testing/gtk3/PKGBUILD | 36 - testing/gtk3/gtk3.install | 15 - testing/gtk3/settings.ini | 2 - testing/iproute2/PKGBUILD | 50 - testing/iproute2/iproute2-fhs.patch | 84 - testing/jfsutils/PKGBUILD | 24 - testing/man-db/1361_1360.diff | 25 - testing/man-db/PKGBUILD | 60 - testing/man-db/convert-mans | 11 - testing/man-db/man-db.cron.daily | 39 - testing/man-db/man-db.install | 22 - testing/nx-common/NXproto.h.64bit.diff | 66 - testing/nx-common/PKGBUILD | 54 - testing/nx-common/nxcompsh-gcc43.patch | 19 - testing/nxserver/NXproto.h.64bit.diff | 66 - testing/nxserver/PKGBUILD | 92 -- testing/nxserver/nxcompsh-gcc43.patch | 19 - testing/pidgin/nm09-pidgin.patch | 38 - testing/pixman/PKGBUILD | 33 - testing/udev/81-arch.rules | 83 - testing/udev/PKGBUILD | 101 -- testing/udev/static-audio-nodes-group.patch | 27 - testing/udev/static-nodes-permissions.patch | 57 - testing/udev/udev.install | 65 - testing/vigra/PKGBUILD | 36 - testing/vigra/vigra-1.7.1.gcc460.patch | 33 - testing/yp-tools/PKGBUILD | 26 - testing/ypbind-mt/PKGBUILD | 39 - testing/ypbind-mt/nisdomainname.conf | 4 - testing/ypbind-mt/ypbind | 35 - testing/ypbind-mt/ypbind.conf | 4 - 195 files changed, 14979 deletions(-) delete mode 100644 community-staging/calibre/PKGBUILD delete mode 100644 community-staging/calibre/calibre.install delete mode 100644 community-staging/calibre/desktop_integration.patch delete mode 100644 community-staging/couchdb/PKGBUILD delete mode 100644 community-staging/couchdb/couchdb.install delete mode 100644 community-staging/couchdb/rc-script.patch delete mode 100644 community-staging/dwdiff/PKGBUILD delete mode 100644 community-staging/gnustep-base/ChangeLog delete mode 100644 community-staging/gnustep-base/PKGBUILD delete mode 100644 community-staging/goldendict/PKGBUILD delete mode 100644 community-staging/goldendict/goldendict-paths.diff delete mode 100644 community-staging/goldendict/goldendict.changelog delete mode 100644 community-staging/ibus-qt/PKGBUILD delete mode 100644 community-staging/libfbclient/ChangeLog delete mode 100644 community-staging/libfbclient/LICENSE delete mode 100755 community-staging/libfbclient/PKGBUILD delete mode 100644 community-staging/libmicrohttpd/PKGBUILD delete mode 100644 community-staging/libmicrohttpd/libmicrohttpd.install delete mode 100644 community-staging/mapnik/PKGBUILD delete mode 100644 community-staging/mapnik/mapnik.install delete mode 100644 community-staging/open-vm-tools/PKGBUILD delete mode 100644 community-staging/open-vm-tools/open-vm-tools-X11Bool.patch delete mode 100644 community-staging/open-vm-tools/open-vm-tools.conf.d delete mode 100644 community-staging/open-vm-tools/open-vm-tools.install delete mode 100644 community-staging/open-vm-tools/open-vm-tools.rc.d delete mode 100644 community-staging/open-vm-tools/scripts-network-FS19541.patch delete mode 100644 community-staging/open-vm-tools/scripts-network.patch delete mode 100644 community-staging/open-vm-tools/tools.conf delete mode 100644 community-staging/open-vm-tools/vmware-guestd delete mode 100644 community-staging/open-vm-tools/xautostart.conf delete mode 100644 community-staging/openttd/PKGBUILD delete mode 100644 community-staging/openttd/openttd.install delete mode 100644 community-staging/parrot/ChangeLog delete mode 100644 community-staging/parrot/PKGBUILD delete mode 100644 community-staging/sword/PKGBUILD delete mode 100644 community-staging/tea/PKGBUILD delete mode 100644 community-staging/tea/tea.desktop delete mode 100644 community-staging/tea/tea.install delete mode 100644 community-staging/tracker/PKGBUILD delete mode 100644 community-staging/tracker/tracker.install delete mode 100644 community-staging/xulrunner-oss/PKGBUILD delete mode 100644 community-staging/xulrunner-oss/mozconfig delete mode 100644 community-staging/xulrunner-oss/mozilla-pkgconfig.patch delete mode 100644 community-staging/xulrunner-oss/oss.patch delete mode 100644 community-staging/xulrunner-oss/port_gnomevfs_to_gio.patch delete mode 100644 community-staging/xulrunner-oss/xulrunner-omnijar.patch delete mode 100644 community-staging/xulrunner-oss/xulrunner-version.patch delete mode 100644 community-staging/yaz/PKGBUILD delete mode 100644 community/hardinfo/ChangeLog delete mode 100644 community/hardinfo/PKGBUILD delete mode 100644 community/hardinfo/fixsensors.patch delete mode 100644 community/hardinfo/hardinfo.distro delete mode 100644 community/luxrender/libpng.patch delete mode 100644 community/sword/curl_7.20.patch delete mode 100644 community/zziplib/PKGBUILD delete mode 100644 community/zziplib/zziplib-0.13.60-ldflags.patch delete mode 100644 core/net-tools/nisdomainname.conf.d delete mode 100644 core/rp-pppoe/PKGBUILD delete mode 100755 core/rp-pppoe/adsl delete mode 100644 core/rp-pppoe/rp-pppoe.install delete mode 100644 core/udev/80-drivers.rules delete mode 100755 core/udev/load-modules.sh delete mode 100644 core/udev/static-audio-nodes-permissions.patch delete mode 100644 extra/avahi/ChangeLog delete mode 100644 extra/avidemux/2.5.4_audioDevice.patch delete mode 100644 extra/avidemux/x264.patch delete mode 100644 extra/clamav/clamav delete mode 100644 extra/clamav/clamav.confd delete mode 100644 extra/clamav/clamav.install delete mode 100644 extra/clamav/clamav.logrotate delete mode 100644 extra/gtk3/only_draw_resize_grip_if_its_window_exists.patch delete mode 100644 extra/hugin/hugin-gcc46.patch delete mode 100644 extra/icedtea-web/fix-man-location.patch delete mode 100644 extra/icon-naming-utils/PKGBUILD delete mode 100644 extra/libfm/0001-filename-with-spaces-not-supported.patch delete mode 100644 extra/libfm/PKGBUILD delete mode 100644 extra/libfm/libfm.install delete mode 100644 extra/libwebkit/gcc46.patch delete mode 100644 extra/lxde-common/PKGBUILD delete mode 100644 extra/lxde-common/lxde-common-arch.patch delete mode 100644 extra/lxde-common/lxde-common-invalid-distfile.patch delete mode 100644 extra/lxde-common/lxde-common.install delete mode 100644 extra/lxdm/PKGBUILD delete mode 100644 extra/lxdm/Xsession.patch delete mode 100644 extra/lxdm/lxdm-daemon delete mode 100644 extra/lxdm/lxdm-pam.patch delete mode 100644 extra/lxdm/lxdm.install delete mode 100644 extra/lxdm/lxdm.patch delete mode 100644 extra/lxmenu-data/PKGBUILD delete mode 100644 extra/lxpanel/Fix-build-issue-with-symbol-alarm-showing-up-on-F14-.patch delete mode 100644 extra/lxpanel/Fix-failure-to-react-to-keyboard-map-changes-initiat.patch delete mode 100644 extra/lxpanel/PKGBUILD delete mode 100644 extra/lxsession-lite/PKGBUILD delete mode 100644 extra/menu-cache/PKGBUILD delete mode 100644 extra/nx-common/nx-gcc44.patch delete mode 100644 extra/nxserver/nx-gcc44.patch delete mode 100644 extra/nxserver/nxcompshad-gcc43.patch delete mode 100644 extra/obconf/PKGBUILD delete mode 100644 extra/obconf/obconf.install delete mode 100644 extra/openbox/PKGBUILD delete mode 100644 extra/openbox/openbox.install delete mode 100644 extra/openbox/which-2.20.patch delete mode 100644 extra/pcmanfm/PKGBUILD delete mode 100644 extra/pcmanfm/pcmanfm.install delete mode 100644 extra/pcmanfm/revert-new-IPC.patch delete mode 100644 extra/phonon-xine/PKGBUILD delete mode 100644 extra/pidgin/nm09-pidgin.patch delete mode 100644 extra/wvdial/PKGBUILD delete mode 100644 extra/wvstreams/PKGBUILD delete mode 100644 extra/xbindkeys/PKGBUILD delete mode 100644 extra/xplc/PKGBUILD delete mode 100644 extra/zope-interface/PKGBUILD delete mode 100644 kde-unstable/qt/PKGBUILD delete mode 100644 kde-unstable/qt/assistant.desktop delete mode 100644 kde-unstable/qt/designer.desktop delete mode 100644 kde-unstable/qt/linguist.desktop delete mode 100644 kde-unstable/qt/qt.install delete mode 100644 kde-unstable/qt/qtbug-16292.patch delete mode 100644 kde-unstable/qt/qtconfig.desktop delete mode 100644 social/bitcoin-daemon/makefile.archlinux delete mode 100644 staging/boost/4994-compile-fix-for-Python32-v2.patch delete mode 100644 staging/boost/PKGBUILD delete mode 100644 staging/boost/boost-1.46.0-spirit.patch delete mode 100644 staging/brltty/PKGBUILD delete mode 100755 staging/brltty/brltty delete mode 100644 staging/brltty/brltty-4.2-S_ISCHR.patch delete mode 100644 staging/brltty/brltty.conf delete mode 100644 staging/enchant/PKGBUILD delete mode 100644 staging/gptfdisk/PKGBUILD delete mode 100644 staging/hunspell/PKGBUILD delete mode 100644 staging/icu/PKGBUILD delete mode 100644 staging/icu/icu.8198.revert.icu5431.patch delete mode 100644 staging/libreoffice/PKGBUILD delete mode 100644 staging/libreoffice/buildfix_64bit_system_libjpeg.diff delete mode 100644 staging/libreoffice/buildfix_bison25.diff delete mode 100644 staging/libreoffice/buildfix_boost.diff delete mode 100644 staging/libreoffice/buildfix_ct2n.diff delete mode 100644 staging/libreoffice/buildfix_i116795.diff delete mode 100644 staging/libreoffice/libreoffice.install delete mode 100644 staging/libreoffice/vbahelper.visibility.patch delete mode 100644 staging/libwebkit/PKGBUILD delete mode 100644 staging/libwebkit/gcc46.patch delete mode 100644 staging/libwebkit/libwebkit.install delete mode 100644 staging/libwebkit/replace-switch-with-given-when.patch delete mode 100644 staging/php/PKGBUILD delete mode 100644 staging/php/apache.conf delete mode 100644 staging/php/logrotate.d.php-fpm delete mode 100644 staging/php/php-fpm.conf.in.patch delete mode 100644 staging/php/php.ini.patch delete mode 100644 staging/php/rc.d.php-fpm delete mode 100644 staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz delete mode 100644 staging/xulrunner/PKGBUILD delete mode 100644 staging/xulrunner/mozconfig delete mode 100644 staging/xulrunner/mozilla-pkgconfig.patch delete mode 100644 staging/xulrunner/port_gnomevfs_to_gio.patch delete mode 100644 staging/xulrunner/xulrunner-omnijar.patch delete mode 100644 staging/xulrunner/xulrunner-version.patch delete mode 100644 testing/avahi/PKGBUILD delete mode 100644 testing/avahi/avahi-daemon-dbus.patch delete mode 100644 testing/avahi/avahi.install delete mode 100644 testing/avahi/gnome-nettool.png delete mode 100644 testing/glib2/PKGBUILD delete mode 100644 testing/glib2/glib2.csh delete mode 100644 testing/glib2/glib2.sh delete mode 100644 testing/gtk3/PKGBUILD delete mode 100644 testing/gtk3/gtk3.install delete mode 100644 testing/gtk3/settings.ini delete mode 100644 testing/iproute2/PKGBUILD delete mode 100644 testing/iproute2/iproute2-fhs.patch delete mode 100644 testing/jfsutils/PKGBUILD delete mode 100644 testing/man-db/1361_1360.diff delete mode 100644 testing/man-db/PKGBUILD delete mode 100644 testing/man-db/convert-mans delete mode 100755 testing/man-db/man-db.cron.daily delete mode 100644 testing/man-db/man-db.install delete mode 100644 testing/nx-common/NXproto.h.64bit.diff delete mode 100644 testing/nx-common/PKGBUILD delete mode 100644 testing/nx-common/nxcompsh-gcc43.patch delete mode 100644 testing/nxserver/NXproto.h.64bit.diff delete mode 100644 testing/nxserver/PKGBUILD delete mode 100644 testing/nxserver/nxcompsh-gcc43.patch delete mode 100644 testing/pidgin/nm09-pidgin.patch delete mode 100644 testing/pixman/PKGBUILD delete mode 100644 testing/udev/81-arch.rules delete mode 100644 testing/udev/PKGBUILD delete mode 100644 testing/udev/static-audio-nodes-group.patch delete mode 100644 testing/udev/static-nodes-permissions.patch delete mode 100644 testing/udev/udev.install delete mode 100644 testing/vigra/PKGBUILD delete mode 100644 testing/vigra/vigra-1.7.1.gcc460.patch delete mode 100644 testing/yp-tools/PKGBUILD delete mode 100644 testing/ypbind-mt/PKGBUILD delete mode 100644 testing/ypbind-mt/nisdomainname.conf delete mode 100755 testing/ypbind-mt/ypbind delete mode 100644 testing/ypbind-mt/ypbind.conf (limited to 'extra/clamav') diff --git a/community-staging/calibre/PKGBUILD b/community-staging/calibre/PKGBUILD deleted file mode 100644 index 5ad10d94b..000000000 --- a/community-staging/calibre/PKGBUILD +++ /dev/null @@ -1,67 +0,0 @@ -# $Id: PKGBUILD 48634 2011-06-03 16:47:30Z stephane $ -# Maintainer: Giovanni Scafora -# Contributor: Petrov Roman -# Contributor: Andrea Fagiani - -pkgname=calibre -pkgver=0.8.3 -pkgrel=2 -pkgdesc="Ebook management application" -arch=('i686' 'x86_64') -url="http://calibre-ebook.com/" -license=('GPL3') -depends=('python-dateutil' 'python2-cssutils' 'python2-cherrypy' - 'python-mechanize' 'podofo' 'libwmf' 'python-beautifulsoup' - 'imagemagick' 'poppler-qt' 'chmlib' 'python-lxml' 'libusb' - 'python-imaging' 'desktop-file-utils' 'shared-mime-info' - 'python-dnspython' 'unrar' 'python2-pyqt' 'icu') -makedepends=('python2-pycountry') -optdepends=('ipython: to use calibre-debug') -install=calibre.install -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz - desktop_integration.patch) -md5sums=('aee05cac444f68491f2a3d68b22da53e' - 'f4b80e3b34e34bce68b3f052ff52dee8') - -build() { - cd "${srcdir}/${pkgname}" - - #rm -rf src/{cherrypy,pyPdf} - rm -rf src/cherrypy - sed -i -e "s/ldflags = shlex.split(ldflags)/ldflags = shlex.split(ldflags) + ['-fPIC']/" setup/extensions.py - sed -i -e 's:\(#!/usr/bin/env[ ]\+python$\|#!/usr/bin/python$\):\12:g' \ - $(find . -regex ".*.py\|.*.recipe") - - python2 setup.py build - python2 setup.py resources - python2 setup.py translations -} - -package() { - cd "${srcdir}/${pkgname}" - - patch -Np1 -i "${srcdir}/desktop_integration.patch" - - # More on desktop integration (e.g. enforce arch defaults) - sed -i -e "/self.create_uninstaller()/,/os.rmdir(config_dir)/d" \ - -e "s|self.opts.staging_sharedir, 'man/man1'|self.opts.staging_root, 'usr/share/man/man1'|" \ - -e "s|manpath, prog+'.1'+__appname__+'.bz2'|manpath, prog+'.1'+'.bz2'|" \ - -e "s|old_udev = '/etc|old_udev = '${pkgdir}/etc|" \ - -e "s/^Name=calibre/Name=Calibre/g" src/calibre/linux.py - - # Fix the environment module location - sed -i -e "s|(prefix=.*)|(prefix='$pkgdir/usr')|g" setup/install.py - - install -d "${pkgdir}/usr/lib/python2.7/site-packages" - python2 setup.py install --root="${pkgdir}" --prefix=/usr \ - --staging-bindir="${pkgdir}/usr/bin" \ - --staging-libdir="${pkgdir}/usr/lib" \ - --staging-sharedir="${pkgdir}/usr/share" - - find "${pkgdir}" -type d -empty -delete - - # Decompress the man pages so makepkg will do it for us. - for decom in "${pkgdir}"/usr/share/man/man1/*.bz2; do - bzip2 -d "${decom}" - done -} diff --git a/community-staging/calibre/calibre.install b/community-staging/calibre/calibre.install deleted file mode 100644 index 6210bd0ab..000000000 --- a/community-staging/calibre/calibre.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - update-desktop-database -q - update-mime-database usr/share/mime &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/community-staging/calibre/desktop_integration.patch b/community-staging/calibre/desktop_integration.patch deleted file mode 100644 index 40d48c03e..000000000 --- a/community-staging/calibre/desktop_integration.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- a/src/calibre/linux.py 2011-05-27 18:42:14.000000000 +0200 -+++ b/src/calibre/linux.py 2011-05-29 14:57:49.000000000 +0200 -@@ -340,51 +340,39 @@ - - with TemporaryDirectory() as tdir: - with CurrentDir(tdir): -- render_img('mimetypes/lrf.png', 'calibre-lrf.png') -- check_call('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-lrf.png application-lrf', shell=True) -- self.icon_resources.append(('mimetypes', 'application-lrf', '128')) -- check_call('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-lrf.png text-lrs', shell=True) -- self.icon_resources.append(('mimetypes', 'application-lrs', -- '128')) -- render_img('lt.png', 'calibre-gui.png') -- check_call('xdg-icon-resource install --noupdate --size 128 calibre-gui.png calibre-gui', shell=True) -- self.icon_resources.append(('apps', 'calibre-gui', '128')) -- render_img('viewer.png', 'calibre-viewer.png') -- check_call('xdg-icon-resource install --size 128 calibre-viewer.png calibre-viewer', shell=True) -- self.icon_resources.append(('apps', 'calibre-viewer', '128')) -+ dir = os.path.join(self.opts.staging_sharedir,'../pixmaps') -+ os.mkdir(dir) -+ render_img('mimetypes/lrf.png', os.path.join(dir,'calibre-lrf.png')) -+ render_img('lt.png', os.path.join(dir, 'calibre-gui.png')) -+ render_img('viewer.png', os.path.join(dir, 'calibre-viewer.png')) - - mimetypes = set([]) - for x in all_input_formats(): - mt = guess_type('dummy.'+x)[0] -- if mt and 'chemical' not in mt and 'ctc-posml' not in mt: -+ if mt and 'chemical' not in mt and 'text' not in mt and 'pdf' not in mt and 'xhtml' not in mt: - mimetypes.add(mt) - - def write_mimetypes(f): - f.write('MimeType=%s;\n'%';'.join(mimetypes)) - -- f = open('calibre-lrfviewer.desktop', 'wb') -+ dir = os.path.join(self.opts.staging_sharedir,'../applications') -+ os.mkdir(dir) -+ f = open(os.path.join(dir, 'calibre-lrfviewer.desktop'), 'wb') - f.write(VIEWER) - f.close() -- f = open('calibre-ebook-viewer.desktop', 'wb') -+ f = open(os.path.join(dir, 'calibre-ebook-viewer.desktop'), 'wb') - f.write(EVIEWER) - write_mimetypes(f) - f.close() -- f = open('calibre-gui.desktop', 'wb') -+ f = open(os.path.join(dir, 'calibre-gui.desktop'), 'wb') - f.write(GUI) - write_mimetypes(f) - f.close() -- des = ('calibre-gui.desktop', 'calibre-lrfviewer.desktop', -- 'calibre-ebook-viewer.desktop') -- for x in des: -- cmd = ['xdg-desktop-menu', 'install', '--noupdate', './'+x] -- check_call(' '.join(cmd), shell=True) -- self.menu_resources.append(x) -- check_call(['xdg-desktop-menu', 'forceupdate']) -- f = open('calibre-mimetypes', 'wb') -+ dir = os.path.join(self.opts.staging_sharedir,'../mime/packages/') -+ os.makedirs(dir) -+ f = open(os.path.join(dir, 'calibre.xml'), 'wb') - f.write(MIME) - f.close() -- self.mime_resources.append('calibre-mimetypes') -- check_call('xdg-mime install ./calibre-mimetypes', shell=True) - except Exception: - if self.opts.fatal_errors: - raise diff --git a/community-staging/couchdb/PKGBUILD b/community-staging/couchdb/PKGBUILD deleted file mode 100644 index 4327a8094..000000000 --- a/community-staging/couchdb/PKGBUILD +++ /dev/null @@ -1,40 +0,0 @@ -# $Id: PKGBUILD 48637 2011-06-03 16:51:06Z stephane $ -# Maintainer: Sergej Pupykin -# Contributor: Vitaliy Berdinskikh ur6lad[at]i.ua -# Previous Contributor: Michael Fellinger - -pkgname=couchdb -pkgver=1.0.2 -pkgrel=3 -pkgdesc="A document-oriented database that can be queried and indexed in a MapReduce fashion using JSON" -arch=('i686' 'x86_64') -url="http://couchdb.apache.org" -license=('APACHE') -depends=('icu' 'erlang' 'spidermonkey' 'openssl' 'curl') -makedepends=('gcc') -install=couchdb.install -options=('!libtool') -backup=('etc/couchdb/local.ini' - 'etc/conf.d/couchdb' - 'etc/logrotate.d/couchdb') -source=("http://www.apache.org/dist/$pkgname/$pkgver/apache-$pkgname-$pkgver.tar.gz" - "rc-script.patch") -md5sums=('7ffbbe0f23f672181c89923c9f7a1de1' - 'e9b5595338efbdc1a5db13284a296612') - -build() { - cd "$srcdir/apache-$pkgname-$pkgver" - - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var - make - patch etc/init/couchdb <$srcdir/rc-script.patch - make DESTDIR="$pkgdir" install - - install -Dm755 etc/default/couchdb $pkgdir/etc/conf.d/couchdb - sed -i 's|\(CONFIGURATION_FILE=/etc/\)default\(/couchdb\)|\1conf.d\2|' $pkgdir/etc/rc.d/couchdb - sed -i 's|\(COUCHDB_OPTIONS=\)|\1"-p /var/run/couchdb/couchdb.pid"|' $pkgdir/etc/conf.d/couchdb - sed -i 's|$COUCHDB -s|$COUCHDB $COUCHDB_OPTIONS -s|' $pkgdir/etc/rc.d/couchdb - sed -i 's|su $COUCHDB_USER -c|su $COUCHDB_USER -s /bin/bash -c|' $pkgdir/etc/rc.d/couchdb - - rm -rf $pkgdir/etc/default/ $pkgdir/var/run -} diff --git a/community-staging/couchdb/couchdb.install b/community-staging/couchdb/couchdb.install deleted file mode 100644 index 5eff459c7..000000000 --- a/community-staging/couchdb/couchdb.install +++ /dev/null @@ -1,22 +0,0 @@ -post_install() { - id couchdb &>/dev/null || \ - useradd -r -c "CouchDB daemon" -g daemon -d /var/lib/couchdb -s /bin/false couchdb - mkdir -p /var/run/couchdb - chown -R couchdb.daemon /etc/couchdb - chown -R couchdb.daemon /var/{lib,log,run}/couchdb -} - -pre_upgrade() { - id couchdb &>/dev/null || \ - useradd -r -c "CouchDB daemon" -g daemon -d /var/lib/couchdb -s /bin/false couchdb -} - -post_upgrade() { - mkdir -p $pkgdir/var/run/couchdb - chown -R couchdb.daemon /etc/couchdb - chown -R couchdb.daemon /var/{lib,log,run}/couchdb -} - -post_remove() { - userdel couchdb &>/dev/null -} diff --git a/community-staging/couchdb/rc-script.patch b/community-staging/couchdb/rc-script.patch deleted file mode 100644 index d38f4dc6c..000000000 --- a/community-staging/couchdb/rc-script.patch +++ /dev/null @@ -1,90 +0,0 @@ ---- couchdb.org 2011-04-01 19:56:32.000000000 +0000 -+++ couchdb 2011-04-01 19:59:17.000000000 +0000 -@@ -1,4 +1,7 @@ --#!/bin/sh -e -+#!/bin/bash -+#general config -+. /etc/rc.conf -+. /etc/rc.d/functions - - # Licensed under the Apache License, Version 2.0 (the "License"); you may not - # use this file except in compliance with the License. You may obtain a copy of -@@ -29,7 +32,7 @@ - NAME=couchdb - SCRIPT_NAME=`basename $0` - COUCHDB=/usr/bin/couchdb --CONFIGURATION_FILE=/etc/default/couchdb -+CONFIGURATION_FILE=/etc/conf.d/couchdb - RUN_DIR=/var/run/couchdb - LSB_LIBRARY=/lib/lsb/init-functions - -@@ -61,8 +63,9 @@ - fi - - start_couchdb () { -- # Start Apache CouchDB as a background process. -+ stat_busy "Starting the CouchDB daemon" - -+ [ -d /var/run/couchdb ] || mkdir -p /var/run/couchdb - command="$COUCHDB -b" - if test -n "$COUCHDB_STDOUT_FILE"; then - command="$command -o $COUCHDB_STDOUT_FILE" -@@ -79,38 +82,38 @@ - mkdir -p "$RUN_DIR" - if test -n "$COUCHDB_USER"; then - chown $COUCHDB_USER "$RUN_DIR" -- if su $COUCHDB_USER -c "$command" > /dev/null; then -- return $SCRIPT_OK -+ if su $COUCHDB_USER -s /bin/bash -c "$command" > /dev/null; then -+ stat_done - else -- return $SCRIPT_ERROR -+ stat_fail - fi - else - if $command > /dev/null; then -- return $SCRIPT_OK -+ stat_done - else -- return $SCRIPT_ERROR -+ stat_fail - fi - fi - } - - stop_couchdb () { -- # Stop the running Apache CouchDB process. -+ stat_busy "Stopping the CouchDB daemon" - - command="$COUCHDB -d" - if test -n "$COUCHDB_OPTIONS"; then - command="$command $COUCHDB_OPTIONS" - fi - if test -n "$COUCHDB_USER"; then -- if su $COUCHDB_USER -c "$command" > /dev/null; then -- return $SCRIPT_OK -+ if su $COUCHDB_USER -s /bin/bash -c "$command" > /dev/null; then -+ stat_done - else -- return $SCRIPT_ERROR -+ stat_fail - fi - else - if $command > /dev/null; then -- return $SCRIPT_OK -+ stat_done - else -- return $SCRIPT_ERROR -+ stat_fail - fi - fi - } -@@ -118,7 +121,7 @@ - display_status () { - # Display the status of the running Apache CouchDB process. - -- $COUCHDB -s -+ $COUCHDB $COUCHDB_OPTIONS -s - } - - parse_script_option_list () { diff --git a/community-staging/dwdiff/PKGBUILD b/community-staging/dwdiff/PKGBUILD deleted file mode 100644 index 4585b2ae9..000000000 --- a/community-staging/dwdiff/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 48640 2011-06-03 16:55:04Z stephane $ -# Maintainer: Sergej Pupykin - -pkgname=dwdiff -pkgver=1.9 -pkgrel=2 -pkgdesc="a front-end for the diff program that operates at the word level instead of the line level" -arch=('i686' 'x86_64') -url="http://os.ghalkes.nl/dwdiff.html" -depends=('diffutils' 'icu') -license=('GPL') -source=(http://os.ghalkes.nl/dist/$pkgname-$pkgver.tgz) -md5sums=('f483d8d8dab7a972ef21d5096e07fd47') - -build() { - cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make prefix="$pkgdir"/usr install -} diff --git a/community-staging/gnustep-base/ChangeLog b/community-staging/gnustep-base/ChangeLog deleted file mode 100644 index 590f23f5e..000000000 --- a/community-staging/gnustep-base/ChangeLog +++ /dev/null @@ -1,6 +0,0 @@ -2007-07-24 Snowman - * rebuilt against toolchain in current - * fixed SMP build - * fixed file ownership -2007-06-26 tardo -* Built for x86_64 diff --git a/community-staging/gnustep-base/PKGBUILD b/community-staging/gnustep-base/PKGBUILD deleted file mode 100644 index a2a05176b..000000000 --- a/community-staging/gnustep-base/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# $Id: PKGBUILD 48665 2011-06-03 22:32:57Z stephane $ -# Maintainer: Sergej Pupykin -# Maintainer: Vesa Kaihlavirta -# Contributor: Sebastian Sareyko - -pkgname=gnustep-base -pkgver=1.22.0 -pkgrel=2 -pkgdesc="The GNUstep base package" -arch=('i686' 'x86_64') -url="http://www.gnustep.org/" -license=("GPL" "LGPL") -depends=(libxslt avahi gmp gcc-libs openssl libffi gnustep-make gnutls) -makedepends=(gcc-objc) -conflicts=('gnustep-base-svn') -groups=('gnustep-core') -options=('!emptydirs' '!makeflags') -source=(ftp://ftp.gnustep.org/pub/gnustep/core/$pkgname-$pkgver.tar.gz) -md5sums=('7faab4891ae6c1e7a6c806d6da368410') - -build() { - cd "$srcdir/$pkgname-$pkgver" - source /etc/profile.d/GNUstep.sh - ./configure --prefix=/usr --sysconfdir=/etc/GNUstep --with-ffi-include=/usr/lib/libffi-3.0.9/include/ - # fix file ownership - sed -i 's/tar -xf $(TIMEZONE_ARCHIVE);/tar -xf $(TIMEZONE_ARCHIVE);chown -R root:root * ;/' NSTimeZones/Makefile.postamble - make VERBOSE=1 -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install - chown -R root.root "$pkgdir/" -} diff --git a/community-staging/goldendict/PKGBUILD b/community-staging/goldendict/PKGBUILD deleted file mode 100644 index 237e20083..000000000 --- a/community-staging/goldendict/PKGBUILD +++ /dev/null @@ -1,37 +0,0 @@ -# $Id: PKGBUILD 48628 2011-06-03 15:58:27Z stephane $ -# Maintainer: Jaroslav Lichtblau -# Contributor: m0rph - -pkgname=goldendict -pkgver=1.0.1 -pkgrel=3 -pkgdesc="Feature-rich dictionary lookup program" -arch=('i686' 'x86_64') -url="http://goldendict.berlios.de/" -license=('GPL3') -depends=('hunspell' 'libvorbis' 'libxtst' 'libzip' 'openssl' 'phonon') -makedepends=('patch') -changelog=$pkgname.changelog -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver-src.tar.bz2 \ - $pkgname-paths.diff) -md5sums=('d56bb854936015104029d1f0b98b61bb' - '4488d4353e5522796c00785f0ce265e1') - -build(){ - cd ${srcdir} - - patch -Np0 -i ${srcdir}/$pkgname-paths.diff - - qmake - make - qmake -} - -package() { - cd ${srcdir} - - make INSTALL_ROOT=${pkgdir} install - -#removing unneeded - rm -rf ${pkgdir}/usr/share/app-install -} diff --git a/community-staging/goldendict/goldendict-paths.diff b/community-staging/goldendict/goldendict-paths.diff deleted file mode 100644 index 812dfdb97..000000000 --- a/community-staging/goldendict/goldendict-paths.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- goldendict.pro~ 2010-12-27 22:52:21.000000000 +0100 -+++ goldendict.pro 2010-12-27 22:52:21.000000000 +0100 -@@ -63,2 +63,2 @@ -- isEmpty( PREFIX ):PREFIX = /usr/local -- DEFINES += PROGRAM_DATA_DIR=\\\"$$PREFIX/share/apps/goldendict/\\\" -+ isEmpty( PREFIX ):PREFIX = /usr -+ DEFINES += PROGRAM_DATA_DIR=\\\"$$PREFIX/share/goldendict/\\\" -@@ -66 +66 @@ -- locale.path = $$PREFIX/share/apps/goldendict/locale/ -+ locale.path = $$PREFIX/share/goldendict/locale/ diff --git a/community-staging/goldendict/goldendict.changelog b/community-staging/goldendict/goldendict.changelog deleted file mode 100644 index 8ec311fe1..000000000 --- a/community-staging/goldendict/goldendict.changelog +++ /dev/null @@ -1,8 +0,0 @@ -2010-12-27 Jaroslav Lichtblau - * Update to major release 1.0.1 - -2010-02-16 Jaroslav Lichtblau - * FS#18350 fixed in 0.9.0-5 - -2009-06-21 Jaroslav Lichtblau - * Package moved to [community] in v0.9.0 diff --git a/community-staging/ibus-qt/PKGBUILD b/community-staging/ibus-qt/PKGBUILD deleted file mode 100644 index 51d3beb3d..000000000 --- a/community-staging/ibus-qt/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 48593 2011-06-03 07:34:58Z andrea $ -# Maintainer: Thomas Dziedzic < gostrc at gmail > -# Contributor: garion < garion @ mailoo.org > -# Contributor: leemars - -pkgname=ibus-qt -pkgver=1.3.1 -pkgrel=3 -pkgdesc='IBus qt library and IBus qt input method plugin' -arch=('i686' 'x86_64') -license=('LGPL') -url='http://ibus.googlecode.com' -depends=('qt' 'ibus' 'icu') -makedepends=('cmake' 'automoc4' 'doxygen') -source=("http://ibus.googlecode.com/files/${pkgname}-${pkgver}-Source.tar.gz") -md5sums=('769e8872ca8a59327b2073ce2f142589') - -build() { - cd "${srcdir}" - mkdir build - cd build - - cmake ../${pkgname}-${pkgver}-Source \ - -DCMAKE_INSTALL_PREFIX=/usr - make -} - -package() { - cd "${srcdir}"/build - make DESTDIR="${pkgdir}" install -} diff --git a/community-staging/libfbclient/ChangeLog b/community-staging/libfbclient/ChangeLog deleted file mode 100644 index f02bd5ff5..000000000 --- a/community-staging/libfbclient/ChangeLog +++ /dev/null @@ -1,26 +0,0 @@ - -2009-06-08 Douglas Soares de Andrade - - * Rebuilt for the new icu - -2009-04-09 Douglas Soares de Andrade - - * Updated for i686: 2.1.2 - -2008-08-10 Douglas Soares de Andrade - - * Updated for i686: 2.1.1 - -2008-05-10 Mateusz Herych - - * Updated for x86_64 - 2.1.0 - -2008-04-28 Douglas Soares de Andrade - - * Updated for i686 - 2.1.0 - * Sure, firebird is the hell to build. Waiting contributions ;-) - -2007-07-06 tardo - - * Built for x86_64 - * This is the most fucked up pkg evar. diff --git a/community-staging/libfbclient/LICENSE b/community-staging/libfbclient/LICENSE deleted file mode 100644 index e735b0cc1..000000000 --- a/community-staging/libfbclient/LICENSE +++ /dev/null @@ -1,44 +0,0 @@ - -LICENSES --------- - -The applicable and approved licenses for the source files -of the Firebird RDBMS project are: - - 1) InterBase Public License (IPL), version 1.0 - http://bdn.borland.com/article/0,1410,30198,00.html - - 2) Initial Developer's Public License (IDPL), version 1.0 - http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl - -The IPL is copyright of Borland Corp., the other licenses are copyright -by the source code authors and contributors. - - -USAGE RULES ------------ - -1) The source code which was released under the IPL must keep this license. - All modifications / adaptations of this code are still subjects of the IPL. - -2) The files that are derived from the IPL covered code, must also keep - this license. It means that if any new file contains some code covered by - the IPL, then this file should be released under the IPL too. - -3) The new files developed by the members of the Firebird project should - be released under the IDPL. - -4) The new files contributed by people who are not members of the Firebird - project should follow the rule #3. If an author (initial developer) doesn't - specify the license to be used, the person who applies the contributed code - to the CVS tree (a committer) becomes responsible for the license assigned - to the contributed code. - -5) Every non-binary file that exists in the CVS tree, should have a header - section which describes the license this code is released under. If a file - contains no header, it means that this code is freeware and nobody owns the - appropriate copyrights. - - -You may find the exhibits for the approved licenses in /doc/license directory -of the CVS tree. diff --git a/community-staging/libfbclient/PKGBUILD b/community-staging/libfbclient/PKGBUILD deleted file mode 100755 index 26409e5a0..000000000 --- a/community-staging/libfbclient/PKGBUILD +++ /dev/null @@ -1,40 +0,0 @@ -# $Id: PKGBUILD 48689 2011-06-04 20:28:04Z lcarlier $ -# Maintainer: Carlier Laurent -# Contributor: Douglas Soares de Andrade - -pkgname=libfbclient -pkgver=2.5.0.26074 -pkgrel=3 -pkgdesc="Client library for Firebird." -arch=('i686' 'x86_64') -url="http://www.firebirdsql.org/" -license=('custom') -depends=('gcc-libs' 'icu') -source=(http://downloads.sourceforge.net/firebird/Firebird-$pkgver-0.tar.bz2 - LICENSE) -md5sums=('780f162ee71f087fc277adf09f966529' - '0d61798861e159c85dbdf0f30fe2f2ce') - -build() { - cd $srcdir/Firebird-$pkgver-0 - - ./configure --prefix=/usr --with-system-icu --without-fbudf \ - --without-fbsbin --without-fbconf --without-fbdoc --without-fbsample \ - --without-fbsample-db --without-fbintl --without-fbmisc --without-fbhelp \ - --without-fbsecure-db --with-fbmsg=/usr/share/firebird --without-fblog \ - --without-fbglock --without-fbplugins - - make -} - -package() { - cd $srcdir/Firebird-$pkgver-0 - - mkdir -p $pkgdir/usr/{bin,share/firebird} - cp -R gen/firebird/{lib,include} $pkgdir/usr - rm -f $pkgdir/usr/lib/libedit.a - install -m644 gen/firebird/*.msg $pkgdir/usr/share/firebird - install -m755 gen/firebird/bin/fb_config $pkgdir/usr/bin - mkdir -p $srcdir/usr/share/licenses/$pkgname/ - install -D -m644 ${srcdir}/LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE -} diff --git a/community-staging/libmicrohttpd/PKGBUILD b/community-staging/libmicrohttpd/PKGBUILD deleted file mode 100644 index c942a6761..000000000 --- a/community-staging/libmicrohttpd/PKGBUILD +++ /dev/null @@ -1,37 +0,0 @@ -# $Id: PKGBUILD 47393 2011-05-22 11:59:43Z jelle $ -# Maintainer: Sergej Pupykin -# Maintainer: Norberto Lopes -# Contributor: Kao Dome -# Contributor: Dmitrij D. Czarkoff -# Contributor: Mathias Rohnstock - -pkgname=libmicrohttpd -pkgver=0.9.11 -pkgrel=1 -pkgdesc="a small C library that is supposed to make it easy to run an HTTP server as part of another application." -arch=('i686' 'x86_64') -url="http://www.gnu.org/software/libmicrohttpd/" -license=('LGPL') -options=('!libtool') -depends=('gnutls') -install=libmicrohttpd.install -source=(ftp://ftp.gnu.org/gnu/libmicrohttpd/$pkgname-$pkgver.tar.gz) -md5sums=('69b97b11437e53863e92d5f0221f339b') - -build() { - cd ${pkgname}-${pkgver} - ./configure --prefix=/usr --disable-dependency-tracking --enable-largefile \ - --enable-curl --enable-messages --with-pic - make -} - -package() { - cd ${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -Dm644 ${srcdir}/${pkgname}-${pkgver}/src/include/platform.h \ - ${pkgdir}/usr/include/$pkgname/platform.h - install -Dm644 ${srcdir}/${pkgname}-${pkgver}/src/include/plibc/plibc.h \ - ${pkgdir}/usr/include/$pkgname/plibc.h - sed -i 's#Cflags: -I${includedir}#Cflags: -I${includedir} -I{includedir}/libmicrohttpd#' \ - $pkgdir/usr/lib/pkgconfig/libmicrohttpd.pc -} diff --git a/community-staging/libmicrohttpd/libmicrohttpd.install b/community-staging/libmicrohttpd/libmicrohttpd.install deleted file mode 100644 index dc0d2b996..000000000 --- a/community-staging/libmicrohttpd/libmicrohttpd.install +++ /dev/null @@ -1,20 +0,0 @@ -infodir=usr/share/info -filelist=(microhttpd.info microhttpd-tutorial.info) - -post_install() { - [ -x usr/bin/install-info ] || return 0 - for file in ${filelist[@]}; do - install-info $infodir/$file.gz $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - [ -x usr/bin/install-info ] || return 0 - for file in ${filelist[@]}; do - install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null - done -} diff --git a/community-staging/mapnik/PKGBUILD b/community-staging/mapnik/PKGBUILD deleted file mode 100644 index a008e5c60..000000000 --- a/community-staging/mapnik/PKGBUILD +++ /dev/null @@ -1,52 +0,0 @@ -# $Id: PKGBUILD 48662 2011-06-03 19:43:21Z stephane $ -# Maintainer: Sergej Pupykin -# Contributor: David Dent -# Contributor: orbisvicis - -pkgname=mapnik -pkgver=0.7.1 -pkgrel=10 -pkgdesc="Free Toolkit for developing mapping applications. Above all Mapnik is about rendering beautiful maps." -arch=('i686' 'x86_64') -url="http://mapnik.org/" -license=('LGPL') -depends=('boost-libs' 'icu' 'libpng' 'libjpeg' 'libtiff' 'freetype2' - 'libxml2' 'python2' 'proj' 'cairo' 'cairomm' 'pycairo' - 'postgresql-libs' 'postgis' 'gdal' 'curl' 'libtool') - # already in core ('zlib' 'sqlite3') -optdepends=('libxslt: Web Map Service' - 'python-lxml: Web Map Service' - 'python-imaging: Web Map Service' - 'python-nose: Web Map Service' - 'apache: Web Map Service' - 'mod_fastcgi: Web Map Service - or:' - 'mod_fcgid: Web Map Service - or:' - 'mod_wsgi: Web Map Service' - ) -makedepends=('scons' 'boost') # already in core ('pkg-config') -conflicts=('mapnik-svn') -install="mapnik.install" -source=("http://download.berlios.de/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -md5sums=('8f65fda2a792518d6f6be8a85f62fc73') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - #patch SConstruct so libs end up in /usr/lib not /usr/lib64 on X86_64 - sed -i -e "/LIBDIR_SCHEMA=/s/lib64/lib/" SConstruct - - sed -i 's/-ansi -Wall/-ansi -DBOOST_FILESYSTEM_VERSION=2 -Wall/' SConstruct - - scons configure \ - PREFIX="/usr" \ - INPUT_PLUGINS=all \ - DESTDIR="$pkgdir" - scons -} -package(){ - cd "$srcdir/$pkgname-$pkgver" - scons install - - # fix permissions on SCons-autogenerated files - chmod 644 "${pkgdir}/usr/lib/python2.7/site-packages/mapnik/paths.py" -} diff --git a/community-staging/mapnik/mapnik.install b/community-staging/mapnik/mapnik.install deleted file mode 100644 index 46f265d5b..000000000 --- a/community-staging/mapnik/mapnik.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - /sbin/ldconfig -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/community-staging/open-vm-tools/PKGBUILD b/community-staging/open-vm-tools/PKGBUILD deleted file mode 100644 index 9a97df2e4..000000000 --- a/community-staging/open-vm-tools/PKGBUILD +++ /dev/null @@ -1,68 +0,0 @@ -# $Id: PKGBUILD 48659 2011-06-03 19:34:11Z stephane $ -# Maintainer: Sergej Pupykin -# Contributor: Krzysztof Raczkowski - -pkgname=open-vm-tools -pkgver=2011.03.28 -_pkgsubver=387002 -pkgrel=4 -pkgdesc="The Open Virtual Machine Tools (open-vm-tools) are the open source implementation of VMware Tools." -arch=('i686' 'x86_64') -url="http://open-vm-tools.sourceforge.net/" -license=('LGPL') -depends=('open-vm-tools-modules' 'libdnet' 'icu' 'procps' 'glib2' 'uriparser' 'libsigc++' 'libxss') -makedepends=('chrpath' 'doxygen' 'gtkmm' 'fuse' 'libxtst') -optdepends=('gtkmm' 'libnotify' 'libxtst' 'fuse' 'libsm') -options=('docs' '!libtool') -install=$pkgname.install -source=(http://switch.dl.sourceforge.net/$pkgname/$pkgname-$pkgver-${_pkgsubver}.tar.gz - scripts-network.patch - scripts-network-FS19541.patch - open-vm-tools-X11Bool.patch - open-vm-tools.conf.d - open-vm-tools.rc.d - tools.conf - vmware-guestd - xautostart.conf) -md5sums=('a9c72ab0b8f7778d444e69e9d3b95527' - '06f7448e274db2a911f582e276088fc9' - 'b183ec265200d68431a5e4eb1b0c8cf5' - '8c333a979578bdc0c3134c1dd6bb7353' - '79b0a14d86191fee70a4639da8bd7785' - '67cb83a9e5a4dd016c1a1da2863ca36d' - 'b55d15e2c4be396aad709aeca91033d3' - '73cc1a2665b0dd62427733d62ead8b9a' - '75a25d83417e683957321f97a00f8465') - -build() { - cd "$srcdir/$pkgname-${pkgver}-${_pkgsubver}" - [ $NOEXTRACT -eq 1 ] || { - sed -i 's#3.2.7#3.2.8#' configure configure.ac - sed -i 's#CFLAGS="$CFLAGS -Werror"##' configure configure.ac - } - [ -f Makefile ] || ./configure --prefix=/usr --without-kernel-modules - make -} - -package() { - cd "$srcdir/$pkgname-${pkgver}-${_pkgsubver}" - - make install DESTDIR=$pkgdir - install -D -m 755 scripts/common/vmware-xdg-detect-de $pkgdir/usr/bin/vmware-xdg-detect-de - chmod 07755 $pkgdir/usr/bin/vmware-user-suid-wrapper - - cd $pkgdir - patch -Np1 -i $srcdir/scripts-network.patch etc/vmware-tools/scripts/vmware/network - patch -Np1 -i $srcdir/scripts-network-FS19541.patch etc/vmware-tools/scripts/vmware/network - - install -D -m 755 $srcdir/open-vm-tools.rc.d $pkgdir/etc/rc.d/open-vm-tools - install -D -m 644 $srcdir/open-vm-tools.conf.d $pkgdir/etc/conf.d/open-vm-tools - install -D -m 644 $srcdir/tools.conf $pkgdir/etc/vmware-tools/tools.conf - install -D -m 644 $srcdir/xautostart.conf $pkgdir/etc/vmware-tools/xautostart.conf - install -D -m 644 $srcdir/vmware-guestd $pkgdir/etc/pam.d/vmware-guestd - rm -rf $pkgdir/usr/etc - - ln -fs /usr/sbin/mount.vmhgfs $pkgdir/sbin/mount.vmhgfs - - cd $pkgdir && find -type f -exec sh -c "file {} | grep ELF >/dev/null && echo {} && chrpath -d {}" \; -} diff --git a/community-staging/open-vm-tools/open-vm-tools-X11Bool.patch b/community-staging/open-vm-tools/open-vm-tools-X11Bool.patch deleted file mode 100644 index f12581807..000000000 --- a/community-staging/open-vm-tools/open-vm-tools-X11Bool.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -wbBur open-vm-tools-2010.08.24-292196.org/lib/include/vm_basic_types.h open-vm-tools-2010.08.24-292196/lib/include/vm_basic_types.h ---- open-vm-tools-2010.08.24-292196.org/lib/include/vm_basic_types.h 2010-08-24 19:59:22.000000000 +0000 -+++ open-vm-tools-2010.08.24-292196/lib/include/vm_basic_types.h 2010-08-30 09:38:48.000000000 +0000 -@@ -83,8 +83,11 @@ - - /* STRICT ANSI means the Xserver build and X defines Bool differently. */ - #if !defined(__STRICT_ANSI__) || defined(__FreeBSD__) || defined(__MINGW32__) -+# ifndef _XTYPEDEF_BOOL -+# define _XTYPEDEF_BOOL - typedef char Bool; - #endif -+#endif - - #ifndef FALSE - #define FALSE 0 diff --git a/community-staging/open-vm-tools/open-vm-tools.conf.d b/community-staging/open-vm-tools/open-vm-tools.conf.d deleted file mode 100644 index 83f7864e8..000000000 --- a/community-staging/open-vm-tools/open-vm-tools.conf.d +++ /dev/null @@ -1,6 +0,0 @@ -# Enable support for Drag'n'Drop -VM_DRAG_AND_DROP="yes" - -# vmware-guestd settings -GUESTD_BIN="/usr/sbin/vmware-guestd" -PIDFILE="/var/run/vmware-guestd.pid" diff --git a/community-staging/open-vm-tools/open-vm-tools.install b/community-staging/open-vm-tools/open-vm-tools.install deleted file mode 100644 index 88d9b88e6..000000000 --- a/community-staging/open-vm-tools/open-vm-tools.install +++ /dev/null @@ -1,10 +0,0 @@ -post_install() { - [ ! -d "/mnt/hgfs" ] && mkdir /mnt/hgfs - echo ">>>" - echo ">>> You can mount VMware Shared Folders via:" - echo ">>> mount -t vmhgfs .host:/ /mnt/hgfs" - echo ">>>" - echo ">>> or by adding this line to /etc/fstab:" - echo ">>> .host:/ /mnt/hgfs vmhgfs defaults 0 0" - echo ">>>" -} diff --git a/community-staging/open-vm-tools/open-vm-tools.rc.d b/community-staging/open-vm-tools/open-vm-tools.rc.d deleted file mode 100644 index 0c9221489..000000000 --- a/community-staging/open-vm-tools/open-vm-tools.rc.d +++ /dev/null @@ -1,101 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -# source application-specific settings -[ -f /etc/conf.d/open-vm-tools ] && . /etc/conf.d/open-vm-tools - -PID=`pidof -o %PPID /usr/bin/vmtoolsd` -case "$1" in - start) - stat_busy "Starting Open Virtual Machine Tools" - - if [ "$VM_DRAG_AND_DROP" == "yes" ]; then - VMBLOCK=`grep -w vmblock /proc/modules` - [ -z "$VMBLOCK" ] && modprobe vmblock - if [ $? -gt 0 ]; then - stat_fail - exit 1 - fi - - DND_TMPDIR="/tmp/VMwareDnD" - if [ ! -d "$DND_TMPDIR" ]; then - mkdir $DND_TMPDIR - chmod 1777 $DND_TMPDIR - fi - - mount -t vmblock none /proc/fs/vmblock/mountPoint - if [ $? -gt 0 ]; then - stat_fail - exit 1 - fi - fi - - - for m in vmhgfs vmsync; do - VMMOD=`grep -w $m /proc/modules` - [ -z "$VMMOD" ] && \ - { modprobe $m - if [ $? -gt 0 ]; then - stat_fail - exit 1 - fi; } - done - - - [ -z "$PID" ] && /usr/bin/vmtoolsd --background $PIDFILE - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon open-vm-tools - stat_done - fi - ;; - stop) - stat_busy "Stopping Open Virtual Machine Tools" - [ ! -z "$PID" ] && kill $PID &>/dev/null -# if [ $? -gt 0 ]; then -# stat_fail -# exit 1 -# fi - - for m in vmhgfs vmsync vmci; do - VMMOD=`grep -w $m /proc/modules` - [ ! -z "$VMMOD" ] && rmmod $m - if [ $? -gt 0 ]; then - stat_fail - exit 4 - fi - done - - if [ "$VM_DRAG_AND_DROP" == "yes" ]; then - MOUNTPOINT=`grep -w "none /proc/fs/vmblock/mountPoint vmblock" /proc/modules` - [ -z "$MOUNTPOINT" ] && umount /proc/fs/vmblock/mountPoint - if [ $? -gt 0 ]; then - stat_fail - exit 5 - fi - - DND_TMPDIR="/tmp/VMwareDnD" - rm -r $DND_TMPDIR - - VMBLOCK=`grep -w vmblock /proc/modules` - [ ! -z "$VMBLOCK" ] && rmmod vmblock - if [ $? -gt 0 ]; then - stat_fail - exit 6 - fi - fi - - rm_daemon open-vm-tools - stat_done - ;; - restart) - $0 stop - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/community-staging/open-vm-tools/scripts-network-FS19541.patch b/community-staging/open-vm-tools/scripts-network-FS19541.patch deleted file mode 100644 index 1f65b9824..000000000 --- a/community-staging/open-vm-tools/scripts-network-FS19541.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- network 2010-04-28 12:30:51.000000000 +0200 -+++ network.bak 2010-05-20 12:12:50.000000000 +0200 -@@ -76,7 +76,7 @@ - else - echo `date` "[rescue_nic] activating $nic ..." - -- ifup $nic -+ ifconfig $nic up - exitCode=`expr $exitCode \| $?` - fi - done < $activeList -@@ -103,7 +103,7 @@ - TranquilizeNetworkManager() { - # `which' may be a bit noisy, so we'll shush it. - dbusSend=`which dbus-send 2>/dev/null` -- if [ $? -eq 0 ]; then -+ if [ $? -eq 0 ] && [ `pidof dbus-daemon` ]; then - # NetworkManager 0.6 - $dbusSend --system --dest=org.freedesktop.NetworkManager \ - /org/freedesktop/NetworkManager \ -@@ -133,7 +133,7 @@ - WakeNetworkManager() { - # `which' may be a bit noisy, so we'll shush it. - dbusSend=`which dbus-send 2>/dev/null` -- if [ $? -eq 0 ]; then -+ if [ $? -eq 0 ] && [ `pidof dbus-daemon` ]; then - # NetworkManager 0.6 - $dbusSend --system --dest=org.freedesktop.NetworkManager \ - /org/freedesktop/NetworkManager \ -@@ -165,8 +165,8 @@ - - # XXX Are these really necessary? If so, we should have seen customer - # complaints by now. -- which ifup >/dev/null 2>&1 || Panic "ifup not in search path." -- which ifconfig >/dev/null 2>&1 || Panic "ifconfig not in search path." -+# which ifup >/dev/null 2>&1 || Panic "ifup not in search path." -+ which ifconfig >/dev/null 2>&1 || Panic "ifconfig not in search path." - - case "$1" in - poweron-vm) diff --git a/community-staging/open-vm-tools/scripts-network.patch b/community-staging/open-vm-tools/scripts-network.patch deleted file mode 100644 index 13ea7f565..000000000 --- a/community-staging/open-vm-tools/scripts-network.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- network.org 2010-04-28 10:21:14.000000000 +0000 -+++ network 2010-04-28 10:24:00.000000000 +0000 -@@ -34,51 +34,6 @@ - - - # --# find_networking_script -- --# --# Searches common Linux distro init/rc paths to find a singular network --# services script. --# --# Result: --# Returns a valid networking script path on success or "error" on failure. --# --# Side effects: --# None. --# -- --find_networking_script() { -- local script="error" -- for dir in "/etc/init.d" "/sbin/init.d" "/etc" "/etc/rc.d" ; do -- if [ -d "$dir/rc0.d" ] && -- [ -d "$dir/rc1.d" ] && -- [ -d "$dir/rc2.d" ] && -- [ -d "$dir/rc3.d" ] && -- [ -d "$dir/rc4.d" ] && -- [ -d "$dir/rc5.d" ] && -- [ -d "$dir/rc6.d" ]; then -- -- # Now find the appropriate networking script. -- if [ -d "$dir/init.d" ]; then -- if [ -x "$dir/init.d/network" ]; then -- script="$dir/init.d/network" -- elif [ -x "$dir/init.d/networking" ]; then -- script="$dir/init.d/networking" -- fi -- else -- if [ -x "$dir/network" ]; then -- script="$dir/network" -- elif [ -x "$dir/networking" ]; then -- script="$dir/networking" -- fi -- fi -- fi -- done -- -- echo "$script" --} -- -- --# - # save_active_NIC_list -- - # - # Records a list of every active NIC to /var/run/vmware-active-nics. -@@ -205,7 +160,7 @@ - exitCode=0 - activeList=/var/run/vmware-active-nics - -- networkScript=`find_networking_script` -+ networkScript=/etc/rc.d/network - [ "$networkScript" != "error" ] || Panic "Cannot find system networking script." - - # XXX Are these really necessary? If so, we should have seen customer diff --git a/community-staging/open-vm-tools/tools.conf b/community-staging/open-vm-tools/tools.conf deleted file mode 100644 index 0bb2681b1..000000000 --- a/community-staging/open-vm-tools/tools.conf +++ /dev/null @@ -1 +0,0 @@ -bindir = "/usr/bin" diff --git a/community-staging/open-vm-tools/vmware-guestd b/community-staging/open-vm-tools/vmware-guestd deleted file mode 100644 index ac80c0385..000000000 --- a/community-staging/open-vm-tools/vmware-guestd +++ /dev/null @@ -1,6 +0,0 @@ -#%PAM-1.0 - -auth sufficient /lib/security/pam_unix2.so shadow nullok -auth required /lib/security/pam_unix_auth.so shadow nullok -account sufficient /lib/security/pam_unix2.so -account required /lib/security/pam_unix_acct.so diff --git a/community-staging/open-vm-tools/xautostart.conf b/community-staging/open-vm-tools/xautostart.conf deleted file mode 100644 index 829f379ce..000000000 --- a/community-staging/open-vm-tools/xautostart.conf +++ /dev/null @@ -1,6 +0,0 @@ -gnome-panel -ksmserver -startkde -kwrapper -panel -xfce4-panel diff --git a/community-staging/openttd/PKGBUILD b/community-staging/openttd/PKGBUILD deleted file mode 100644 index 5a2aedccc..000000000 --- a/community-staging/openttd/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# $Id: PKGBUILD 48655 2011-06-03 19:25:38Z stephane $ -# Maintainer: Vesa Kaihlavirta - -pkgname=openttd -pkgver=1.1.0 -pkgrel=2 -pkgdesc='An engine for running Transport Tycoon Deluxe.' -arch=('i686' 'x86_64') -url='http://www.openttd.org' -license=('GPL') -depends=('libpng' 'sdl' 'icu' 'fontconfig' 'lzo2' 'hicolor-icon-theme' 'desktop-file-utils') -install=openttd.install -optdepends=('openttd-opengfx: free graphics' - 'openttd-opensfx: free soundset') -source=("http://binaries.openttd.org/releases/${pkgver}/${pkgname}-${pkgver}-source.tar.xz") -md5sums=('b5b1f2ecc7327505e360047236b09d06') - -build() { - cd ${pkgname}-${pkgver} - - ./configure \ - --prefix-dir=/usr \ - --binary-name=${pkgname} \ - --binary-dir=bin \ - --data-dir=share/${pkgname} \ - --install-dir=${pkgdir} \ - --doc-dir=share/doc/${pkgname} \ - --menu-name="OpenTTD" \ - --personal-dir=.${pkgname} - - make -} - -package() { - cd ${pkgname}-${pkgver} - - make install -} diff --git a/community-staging/openttd/openttd.install b/community-staging/openttd/openttd.install deleted file mode 100644 index 85b22a1c5..000000000 --- a/community-staging/openttd/openttd.install +++ /dev/null @@ -1,17 +0,0 @@ -post_install() { - gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor > /dev/null 2>&1 - update-desktop-database > /dev/null 2>&1 -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - update-desktop-database > /dev/null 2>&1 -} - -post_remove() { - gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor > /dev/null 2>&1 - update-desktop-database > /dev/null 2>&1 -} diff --git a/community-staging/parrot/ChangeLog b/community-staging/parrot/ChangeLog deleted file mode 100644 index 725287638..000000000 --- a/community-staging/parrot/ChangeLog +++ /dev/null @@ -1,5 +0,0 @@ - -2008-01-06 Douglas Soares de Andrade - - * Added for x86_64 - diff --git a/community-staging/parrot/PKGBUILD b/community-staging/parrot/PKGBUILD deleted file mode 100644 index eb5f198b7..000000000 --- a/community-staging/parrot/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# $Id: PKGBUILD 48652 2011-06-03 17:21:22Z stephane $ -# Maintainer: Sergej Pupykin -# Contributer: mpie - -pkgname=parrot -pkgver=3.3.0 -#_rel=devel -_rel=stable -pkgrel=2 -pkgdesc="standalone virtual machine that can be used to execute bytecode compiled dynamic languages" -arch=(i686 x86_64) -url="http://www.parrotcode.org/" -license=('GPL') -depends=('gmp' 'gdbm' 'readline' 'icu' 'openssl' 'libffi') -makedepends=('perl-json') -optdepends=('freeglut') -options=(!emptydirs !makeflags) -source=(ftp://ftp.parrot.org/pub/parrot/releases/${_rel}/$pkgver/parrot-$pkgver.tar.gz) -md5sums=('335d50fbef245bfe6d0bb277e224c728') - -build() { - cd $srcdir/$pkgname-$pkgver - - sed -i 's#auto::sha1##' lib/Parrot/Configure/Step/List.pm - sed -i 's#auto::git_describe##' lib/Parrot/Configure/Step/List.pm - - [ $NOEXTRACT -eq 1 ] || perl Configure.pl --prefix=/usr --parrot_is_shared - - find -type f -name Makefile | while read F; do - grep "$srcdir" $F && sed -i "s#-Wl,-rpath=$srcdir/parrot-$pkgver/blib/lib##" $F || true - grep "$srcdir" $F && sed -i "s#-rpath=$srcdir/parrot-$pkgver/blib/lib##" $F || true - done - - OLD_LIB_PATH=$LD_LIBRARY_PATH - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$srcdir/parrot-$pkgver/blib/lib - make -j1 all parrot_utils docs html RPATH_BLIB= - - export LD_LIBRARY_PATH=`pwd`/blib/lib - make -j1 DESTDIR=$pkgdir install-dev - - sed -i "s#$srcdir#/usr/src#" $pkgdir/usr/lib/parrot/$pkgver/tools/lib/Parrot/Config/Generated.pm - - export LD_LIBRARY_PATH=$OLD_LIB_PATH -} diff --git a/community-staging/sword/PKGBUILD b/community-staging/sword/PKGBUILD deleted file mode 100644 index 0ad02180e..000000000 --- a/community-staging/sword/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# Maintainer: Stefan Husmann -# Contributor: TripleE - -pkgname=sword -pkgver=1.6.2 -pkgrel=3 -pkgdesc="SWORD libraries for Bible programs" -arch=('i686' 'x86_64') -url="http://www.crosswire.org/sword/index.jsp" -license=('GPL') -depends=('curl' 'icu' 'clucene') -source=(http://www.crosswire.org/ftpmirror/pub/${pkgname}/source/v1.6/${pkgname}-${pkgver}.tar.gz) -md5sums=('a7dc4456e20e915fec46d774b690e305') -backup=('etc/sword.conf') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --with-icu - make -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - make DESTDIR="${pkgdir}" install_config -} - diff --git a/community-staging/tea/PKGBUILD b/community-staging/tea/PKGBUILD deleted file mode 100644 index 4ab5fde5d..000000000 --- a/community-staging/tea/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 48620 2011-06-03 13:51:59Z ibiru $ -# Maintainer: Sergej Pupykin -# Maintainer: Andrea Scarpino -# Contributor: Roman Kyrylych -# Contributor: Michal Kaliszka -# Contributor: Zsolt Varadi - -pkgname=tea -pkgver=29.0.3 -pkgrel=2 -pkgdesc="A QT-based text editor for Linux and *BSD. With an ultimate small size TEA provides you hundreds of functions." -arch=('i686' 'x86_64') -url="http://tea-editor.sourceforge.net/" -license=('GPL') -depends=('qt' 'aspell' 'hunspell') -install=tea.install -source=(http://downloads.sourceforge.net/tea-editor/${pkgname}-${pkgver}.tar.bz2 - tea.desktop) -md5sums=('1c900e7f57a0fe72fb4cc481450a5b32' - '377ace3363124f4c086de0babb820761') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - qmake PREFIX=/usr/bin - make -} - -package(){ - cd "${srcdir}/${pkgname}-${pkgver}" - make INSTALL_ROOT="${pkgdir}" install - - install -Dm644 "${srcdir}/tea.desktop" "${pkgdir}/usr/share/applications/tea.desktop" - install -Dm644 icons/tea_icon_v2.png "${pkgdir}/usr/share/pixmaps/tea.png" -} diff --git a/community-staging/tea/tea.desktop b/community-staging/tea/tea.desktop deleted file mode 100644 index 818704a26..000000000 --- a/community-staging/tea/tea.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Name=Tea -Comment=A small programmer's QT editor -Exec=tea %U -Terminal=false -Type=Application -StartupNotify=true -Icon=tea.png -Categories=Application;Utility;TextEditor; diff --git a/community-staging/tea/tea.install b/community-staging/tea/tea.install deleted file mode 100644 index d7904254b..000000000 --- a/community-staging/tea/tea.install +++ /dev/null @@ -1,4 +0,0 @@ -post_upgrade() { - echo "############################################" - echo "for the old GTK branch of TEA install teagtk" -} diff --git a/community-staging/tracker/PKGBUILD b/community-staging/tracker/PKGBUILD deleted file mode 100644 index f6ec9331b..000000000 --- a/community-staging/tracker/PKGBUILD +++ /dev/null @@ -1,50 +0,0 @@ -# $Id: PKGBUILD 48646 2011-06-03 17:05:43Z stephane $ -# Maintainer: Sergej Pupykin -# Maintainer: Alexander Fehr - -pkgname=tracker -pkgver=0.10.15 -pkgrel=2 -pkgdesc="Powerful object database, tag/metadata database, search tool and indexer" -arch=('i686' 'x86_64') -url="http://www.gnome.org/projects/tracker/" -license=('GPL') -depends=('upower' 'poppler-glib' 'gstreamer0.10-base' 'libgee' 'gnome-desktop' 'libnotify' 'xdg-utils' 'gtkhtml' - 'libgsf' 'gnome-panel-bonobo' 'exempi' 'networkmanager') -makedepends=('intltool' 'gnome-panel' 'nautilus' 'evolution' 'totem-plparser' 'icu') -optdepends=('nautilus' - 'enca' - 'gtkhtml' - 'gnome-panel' - 'totem-plparser' - 'icu' - 'taglib' - 'giflib') -options=('!libtool') -conflicts=('libtracker') -provides=("libtracker") -install=tracker.install -source=(http://ftp.gnome.org/pub/GNOME/sources/tracker/0.10/tracker-$pkgver.tar.bz2) -md5sums=('c948ef3988b08e81cad3ff980b17a0fd') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - # python2 fix - export PYTHON=`which python2` - for file in tests/functional-tests/*.py; do - sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' $file - sed -i 's_#!/usr/bin/python_#!/usr/bin/python2_' $file - done - - ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/$pkgname \ - --enable-video-extractor=gstreamer --disable-unac --disable-hal \ - --disable-devkit-power --disable-miner-evolution - touch docs/manpages/tracker-search-bar.1 - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/community-staging/tracker/tracker.install b/community-staging/tracker/tracker.install deleted file mode 100644 index b95cc069d..000000000 --- a/community-staging/tracker/tracker.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - which xdg-icon-resource 1>/dev/null 2>/dev/null && xdg-icon-resource forceupdate || true -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - which xdg-icon-resource 1>/dev/null 2>/dev/null && xdg-icon-resource forceupdate || true -} diff --git a/community-staging/xulrunner-oss/PKGBUILD b/community-staging/xulrunner-oss/PKGBUILD deleted file mode 100644 index 613d9f41b..000000000 --- a/community-staging/xulrunner-oss/PKGBUILD +++ /dev/null @@ -1,70 +0,0 @@ -# $Id: PKGBUILD 114705 2011-03-15 15:11:28Z ibiru $ -# Maintainer: Jan de Groot -# Contributor: Alexander Baldeck -pkgname=xulrunner-oss -pkgver=2.0.1 -_ffoxver=4.0.1 -pkgrel=2 -pkgdesc="Mozilla Runtime Environment compiled with OSS support" -arch=('i686' 'x86_64') -license=('MPL' 'GPL' 'LGPL') -depends=('gtk2' 'gcc-libs' 'libidl2' 'mozilla-common' 'nss' 'libxt' 'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'libevent' 'sqlite3>=3.7.4' 'libnotify') -makedepends=('zip' 'pkg-config' 'diffutils' 'python2' 'wireless_tools' 'yasm' 'mesa' 'autoconf2.13') -url="http://wiki.mozilla.org/XUL:Xul_Runner" -source=(http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${_ffoxver}/source/firefox-${_ffoxver}.source.tar.bz2 - mozconfig - mozilla-pkgconfig.patch - xulrunner-version.patch - xulrunner-omnijar.patch - port_gnomevfs_to_gio.patch - oss.patch) -options=('!emptydirs') -conflicts=('xulrunner') -provides=("xulrunner=${pkgver}") -md5sums=('9abda7d23151e97913c8555a64c13f34' - '2358a2ddd35bcdd62ff42442dfe548d9' - '639ea80e823543dd415b90c0ee804186' - 'a0236f6c3e55f60b7888d8cf137ff209' - '0bf82bc6677e3ce57fd20a147fe8d7b1' - '42f83468b296452fb754a81a4317ca64' - '81032ce49c2a5ac15d62155bcc42d3ed') - -build() { - cd "${srcdir}/mozilla-2.0" - cp "${srcdir}/mozconfig" .mozconfig - - #fix libdir/sdkdir - fedora - patch -Np1 -i "${srcdir}/mozilla-pkgconfig.patch" - - #Force installation to the same path for every version - patch -Np1 -i "${srcdir}/xulrunner-version.patch" - - patch -Np1 -i "${srcdir}/xulrunner-omnijar.patch" - - patch -Np1 -i "${srcdir}/port_gnomevfs_to_gio.patch" - - patch -Np0 -i "${srcdir}/oss.patch" - sed -i 's/sydney_audio_alsa/sydney_audio_oss/' media/libsydneyaudio/src/Makefile.in - sed -i '/EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)/d' layout/build/Makefile.in - sed -i '/EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS)/d' toolkit/library/libxul-config.mk - - unset CFLAGS - unset CXXFLAGS - export CXXFLAGS="-fpermissive" - - make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS" -} - -package() { - cd "${srcdir}/mozilla-2.0" - make -j1 -f client.mk DESTDIR="${pkgdir}" install - - #Remove included dictionaries, add symlink to system myspell path. - #Note: this will cause file conflicts when users have installed dictionaries in the old location - rm -rf "${pkgdir}/usr/lib/xulrunner-2.0/dictionaries" - ln -sf /usr/share/myspell/dicts "${pkgdir}/usr/lib/xulrunner-2.0/dictionaries" - - # add xulrunner library path to ld.so.conf - install -d ${pkgdir}/etc/ld.so.conf.d - echo "/usr/lib/xulrunner-2.0" > ${pkgdir}/etc/ld.so.conf.d/xulrunner.conf -} diff --git a/community-staging/xulrunner-oss/mozconfig b/community-staging/xulrunner-oss/mozconfig deleted file mode 100644 index 03a352920..000000000 --- a/community-staging/xulrunner-oss/mozconfig +++ /dev/null @@ -1,56 +0,0 @@ -. $topsrcdir/xulrunner/config/mozconfig - -ac_add_options --prefix=/usr -ac_add_options --libdir=/usr/lib -ac_add_options --with-system-nspr -ac_add_options --with-system-nss -ac_add_options --with-system-jpeg -ac_add_options --with-system-zlib -ac_add_options --with-system-bz2 -ac_add_options --with-system-png -ac_add_options --with-system-libevent -ac_add_options --enable-system-hunspell -ac_add_options --enable-system-sqlite -ac_add_options --enable-system-cairo -ac_add_options --with-pthreads - -ac_add_options --enable-default-toolkit=cairo-gtk2 -ac_add_options --enable-safe-browsing -ac_add_options --enable-extensions=default -ac_add_options --enable-startup-notification -ac_add_options --enable-pango -ac_add_options --enable-svg -ac_add_options --enable-canvas -ac_add_options --enable-smil -ac_add_options --enable-canvas3d -ac_add_options --enable-places -ac_add_options --enable-shared-js -ac_add_options --enable-url-classifier - -ac_add_options --enable-optimize -ac_add_options --enable-strip -ac_add_options --enable-install-strip -ac_add_options --enable-jemalloc -ac_add_options --enable-xterm-updates -ac_add_options --enable-printing -ac_add_options --enable-xinerama - -ac_add_options --disable-javaxpcom -ac_add_options --disable-crashreporter -ac_add_options --disable-updater -ac_add_options --disable-tests -ac_add_options --disable-xprint -ac_add_options --disable-mochitest -ac_add_options --disable-debug -ac_add_options --disable-installer -ac_add_options --disable-pedantic - -ac_add_options --enable-gio -ac_add_options --disable-gnomevfs -ac_add_options --enable-gconf -ac_add_options --enable-libnotify - -export BUILD_OFFICIAL=1 -export MOZILLA_OFFICIAL=1 -mk_add_options BUILD_OFFICIAL=1 -mk_add_options MOZILLA_OFFICIAL=1 diff --git a/community-staging/xulrunner-oss/mozilla-pkgconfig.patch b/community-staging/xulrunner-oss/mozilla-pkgconfig.patch deleted file mode 100644 index 2203efcde..000000000 --- a/community-staging/xulrunner-oss/mozilla-pkgconfig.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -Nur mozilla-2.0.orig/xulrunner/installer/libxul-embedding.pc.in mozilla-2.0/xulrunner/installer/libxul-embedding.pc.in ---- mozilla-2.0.orig/xulrunner/installer/libxul-embedding.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/libxul-embedding.pc.in 2011-03-13 03:25:12.350027359 -0700 -@@ -6,5 +6,6 @@ - Name: libxul-embedding - Description: Static library for version-independent embedding of the Mozilla runtime - Version: %MOZILLA_VERSION% -+Requires: %NSPR_NAME% >= %NSPR_VERSION% - Libs: -L${sdkdir}/lib -lxpcomglue -ldl - Cflags: -DXPCOM_GLUE -I${includedir} %WCHAR_CFLAGS% -diff -Nur mozilla-2.0.orig/xulrunner/installer/libxul.pc.in mozilla-2.0/xulrunner/installer/libxul.pc.in ---- mozilla-2.0.orig/xulrunner/installer/libxul.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/libxul.pc.in 2011-03-13 03:25:28.010027359 -0700 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - idldir=%idldir% - -diff -Nur mozilla-2.0.orig/xulrunner/installer/Makefile.in mozilla-2.0/xulrunner/installer/Makefile.in ---- mozilla-2.0.orig/xulrunner/installer/Makefile.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/Makefile.in 2011-03-13 03:25:55.570027359 -0700 -@@ -121,6 +121,7 @@ - -e "s|%includedir%|$(includedir)|" \ - -e "s|%idldir%|$(idldir)|" \ - -e "s|%sdkdir%|$(sdkdir)|" \ -+ -e "s|%libdir%|$(installdir)|" \ - -e "s|%MOZ_APP_NAME%|$(MOZ_APP_NAME)|" \ - -e "s|%MOZILLA_VERSION%|$(MOZ_APP_VERSION)|" \ - -e "s|%WCHAR_CFLAGS%|$(WCHAR_CFLAGS)|" \ -diff -Nur mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in ---- mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2011-03-13 03:26:18.676694023 -0700 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - - Name: mozilla-gtkembedmoz -diff -Nur mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed.pc.in ---- mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed.pc.in 2011-03-13 03:26:41.566694025 -0700 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - - Name: mozilla-gtkembedmoz -diff -Nur mozilla-2.0.orig/xulrunner/installer/mozilla-js.pc.in mozilla-2.0/xulrunner/installer/mozilla-js.pc.in ---- mozilla-2.0.orig/xulrunner/installer/mozilla-js.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/mozilla-js.pc.in 2011-03-13 03:27:19.680027357 -0700 -@@ -7,4 +7,4 @@ - Version: %MOZILLA_VERSION% - Requires: %NSPR_NAME% >= %NSPR_VERSION% - Libs: -L${sdkdir}/lib %MOZ_JS_LINK% --Cflags: -I${includedir} -DXP_UNIX -DJS_THREADSAFE -+Cflags: -I${includedir} -I${includedir}/js -DXP_UNIX -DJS_THREADSAFE diff --git a/community-staging/xulrunner-oss/oss.patch b/community-staging/xulrunner-oss/oss.patch deleted file mode 100644 index ca79879fd..000000000 --- a/community-staging/xulrunner-oss/oss.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- configure.in 2011-03-16 04:58:10.640027357 -0700 -+++ configure.in.orig 2011-03-16 04:58:39.313360691 -0700 -@@ -6266,20 +6266,6 @@ - AC_DEFINE(MOZ_TREMOR) - fi - --dnl ======================================================== --dnl = Check alsa availability on Linux if using sydneyaudio --dnl ======================================================== -- --dnl If using sydneyaudio with Linux, ensure that the alsa library is available --if test -n "$MOZ_SYDNEYAUDIO"; then -- case "$target_os" in --linux*) -- PKG_CHECK_MODULES(MOZ_ALSA, alsa, , -- [echo "$MOZ_ALSA_PKG_ERRORS" -- AC_MSG_ERROR([Need alsa for Ogg, Wave or WebM decoding on Linux. Disable with --disable-ogg --disable-wave --disable-webm. (On Ubuntu, you might try installing the package libasound2-dev.)])]) -- ;; -- esac --fi - - dnl ======================================================== - dnl Splashscreen -@@ -9294,7 +9280,6 @@ - AC_SUBST(MOZ_TREMOR) - AC_SUBST(MOZ_WEBM) - AC_SUBST(MOZ_OGG) --AC_SUBST(MOZ_ALSA_LIBS) - AC_SUBST(VPX_AS) - AC_SUBST(VPX_ASFLAGS) - AC_SUBST(VPX_DASH_C_FLAG) diff --git a/community-staging/xulrunner-oss/port_gnomevfs_to_gio.patch b/community-staging/xulrunner-oss/port_gnomevfs_to_gio.patch deleted file mode 100644 index 797baff42..000000000 --- a/community-staging/xulrunner-oss/port_gnomevfs_to_gio.patch +++ /dev/null @@ -1,1316 +0,0 @@ -diff -r 49a1b2aa43c5 extensions/gio/Makefile.in ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/extensions/gio/Makefile.in Tue Jan 11 11:17:52 2011 +0100 -@@ -0,0 +1,69 @@ -+# vim:set ts=8 sw=8 sts=8 noet: -+# ***** BEGIN LICENSE BLOCK ***** -+# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+# -+# The contents of this file are subject to the Mozilla Public License Version -+# 1.1 (the "License"); you may not use this file except in compliance with -+# the License. You may obtain a copy of the License at -+# http://www.mozilla.org/MPL/ -+# -+# Software distributed under the License is distributed on an "AS IS" basis, -+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+# for the specific language governing rights and limitations under the -+# License. -+# -+# The Original Code is the Mozilla gnome-vfs extension. -+# -+# The Initial Developer of the Original Code is IBM Corporation. -+# -+# Portions created by IBM Corporation are Copyright (C) 2004 -+# IBM Corporation. All Rights Reserved. -+# -+# Contributor(s): -+# Darin Fisher -+# Jan Horak -+# -+# Alternatively, the contents of this file may be used under the terms of -+# either the GNU General Public License Version 2 or later (the "GPL"), or -+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+# in which case the provisions of the GPL or the LGPL are applicable instead -+# of those above. If you wish to allow use of your version of this file only -+# under the terms of either the GPL or the LGPL, and not to allow others to -+# use your version of this file under the terms of the MPL, indicate your -+# decision by deleting the provisions above and replace them with the notice -+# and other provisions required by the GPL or the LGPL. If you do not delete -+# the provisions above, a recipient may use your version of this file under -+# the terms of any one of the MPL, the GPL or the LGPL. -+# -+# ***** END LICENSE BLOCK ***** -+ -+DEPTH = ../.. -+topsrcdir = @top_srcdir@ -+srcdir = @srcdir@ -+VPATH = @srcdir@ -+ -+include $(DEPTH)/config/autoconf.mk -+ -+MODULE = nkgio -+LIBRARY_NAME = nkgio -+SHORT_LIBNAME = nkgio -+IS_COMPONENT = 1 -+ -+CPPSRCS = \ -+ nsGIOProtocolHandler.cpp \ -+ $(NULL) -+ -+LOCAL_INCLUDES = $(MOZ_GIO_CFLAGS) -+ -+EXTRA_DSO_LDOPTS = \ -+ $(XPCOM_GLUE_LDOPTS) \ -+ $(NSPR_LIBS) \ -+ $(MOZ_GIO_LIBS) \ -+ $(NULL) -+ -+# make sure this component is never statically linked into the main -+# application. this is necessary since we don't want to force users -+# to install gio in order to use the rest of mozilla ;-) -+FORCE_SHARED_LIB= 1 -+ -+include $(topsrcdir)/config/rules.mk -diff -r 49a1b2aa43c5 extensions/gio/makefiles.sh ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/extensions/gio/makefiles.sh Tue Jan 11 11:17:52 2011 +0100 -@@ -0,0 +1,41 @@ -+#! /bin/sh -+# ***** BEGIN LICENSE BLOCK ***** -+# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+# -+# The contents of this file are subject to the Mozilla Public License Version -+# 1.1 (the "License"); you may not use this file except in compliance with -+# the License. You may obtain a copy of the License at -+# http://www.mozilla.org/MPL/ -+# -+# Software distributed under the License is distributed on an "AS IS" basis, -+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+# for the specific language governing rights and limitations under the -+# License. -+# -+# The Original Code is Mozilla Build System -+# -+# The Initial Developer of the Original Code is -+# Ben Turner -+# -+# Portions created by the Initial Developer are Copyright (C) 2007 -+# the Initial Developer. All Rights Reserved. -+# -+# Contributor(s): -+# -+# Alternatively, the contents of this file may be used under the terms of -+# either the GNU General Public License Version 2 or later (the "GPL"), or -+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+# in which case the provisions of the GPL or the LGPL are applicable instead -+# of those above. If you wish to allow use of your version of this file only -+# under the terms of either the GPL or the LGPL, and not to allow others to -+# use your version of this file under the terms of the MPL, indicate your -+# decision by deleting the provisions above and replace them with the notice -+# and other provisions required by the GPL or the LGPL. If you do not delete -+# the provisions above, a recipient may use your version of this file under -+# the terms of any one of the MPL, the GPL or the LGPL. -+# -+# ***** END LICENSE BLOCK ***** -+ -+add_makefiles " -+ extensions/gio/Makefile -+" -diff -r 49a1b2aa43c5 extensions/gio/nsGIOProtocolHandler.cpp ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/extensions/gio/nsGIOProtocolHandler.cpp Tue Jan 11 11:17:52 2011 +0100 -@@ -0,0 +1,1163 @@ -+/* vim:set ts=2 sw=2 et cindent: */ -+/* ***** BEGIN LICENSE BLOCK ***** -+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+ * -+ * The contents of this file are subject to the Mozilla Public License Version -+ * 1.1 (the "License"); you may not use this file except in compliance with -+ * the License. You may obtain a copy of the License at -+ * http://www.mozilla.org/MPL/ -+ * -+ * Software distributed under the License is distributed on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+ * for the specific language governing rights and limitations under the -+ * License. -+ * -+ * The Original Code is the Mozilla gnome-vfs extension. -+ * -+ * The Initial Developer of the Original Code is IBM Corporation. -+ * -+ * Portions created by IBM Corporation are Copyright (C) 2004 -+ * IBM Corporation. All Rights Reserved. -+ * -+ * Contributor(s): -+ * Darin Fisher -+ * Jan Horak -+ * -+ * Alternatively, the contents of this file may be used under the terms of -+ * either the GNU General Public License Version 2 or later (the "GPL"), or -+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+ * in which case the provisions of the GPL or the LGPL are applicable instead -+ * of those above. If you wish to allow use of your version of this file only -+ * under the terms of either the GPL or the LGPL, and not to allow others to -+ * use your version of this file under the terms of the MPL, indicate your -+ * decision by deleting the provisions above and replace them with the notice -+ * and other provisions required by the GPL or the LGPL. If you do not delete -+ * the provisions above, a recipient may use your version of this file under -+ * the terms of any one of the MPL, the GPL or the LGPL. -+ * -+ * ***** END LICENSE BLOCK ***** */ -+ -+/* -+ * This code is based on original Mozilla gnome-vfs extension. It implements -+ * input stream provided by GVFS/GIO. -+*/ -+#include "mozilla/ModuleUtils.h" -+#include "nsIPrefService.h" -+#include "nsIPrefBranch2.h" -+#include "nsIObserver.h" -+#include "nsThreadUtils.h" -+#include "nsProxyRelease.h" -+#include "nsIStringBundle.h" -+#include "nsIStandardURL.h" -+#include "nsMimeTypes.h" -+#include "nsNetUtil.h" -+#include "mozilla/Monitor.h" -+#include -+ -+#define MOZ_GIO_SCHEME "moz-gio" -+#define MOZ_GIO_SUPPORTED_PROTOCOLS "network.gio.supported-protocols" -+ -+//----------------------------------------------------------------------------- -+ -+// NSPR_LOG_MODULES=gio:5 -+#ifdef PR_LOGGING -+static PRLogModuleInfo *sGIOLog; -+#define LOG(args) PR_LOG(sGIOLog, PR_LOG_DEBUG, args) -+#else -+#define LOG(args) -+#endif -+ -+ -+//----------------------------------------------------------------------------- -+static nsresult -+MapGIOResult(gint code) -+{ -+ switch (code) -+ { -+ case G_IO_ERROR_NOT_FOUND: return NS_ERROR_FILE_NOT_FOUND; // shows error -+ case G_IO_ERROR_INVALID_ARGUMENT: return NS_ERROR_INVALID_ARG; -+ case G_IO_ERROR_NOT_SUPPORTED: return NS_ERROR_NOT_AVAILABLE; -+ case G_IO_ERROR_NO_SPACE: return NS_ERROR_FILE_NO_DEVICE_SPACE; -+ case G_IO_ERROR_READ_ONLY: return NS_ERROR_FILE_READ_ONLY; -+ case G_IO_ERROR_PERMISSION_DENIED: return NS_ERROR_FILE_ACCESS_DENIED; // wrong password/login -+ case G_IO_ERROR_CLOSED: return NS_BASE_STREAM_CLOSED; // was EOF -+ case G_IO_ERROR_NOT_DIRECTORY: return NS_ERROR_FILE_NOT_DIRECTORY; -+ case G_IO_ERROR_PENDING: return NS_ERROR_IN_PROGRESS; -+ case G_IO_ERROR_EXISTS: return NS_ERROR_FILE_ALREADY_EXISTS; -+ case G_IO_ERROR_IS_DIRECTORY: return NS_ERROR_FILE_IS_DIRECTORY; -+ case G_IO_ERROR_NOT_MOUNTED: return NS_ERROR_NOT_CONNECTED; // shows error -+ case G_IO_ERROR_HOST_NOT_FOUND: return NS_ERROR_UNKNOWN_HOST; // shows error -+ case G_IO_ERROR_CANCELLED: return NS_ERROR_ABORT; -+ case G_IO_ERROR_NOT_EMPTY: return NS_ERROR_FILE_DIR_NOT_EMPTY; -+ case G_IO_ERROR_FILENAME_TOO_LONG: return NS_ERROR_FILE_NAME_TOO_LONG; -+ case G_IO_ERROR_INVALID_FILENAME: return NS_ERROR_FILE_INVALID_PATH; -+ case G_IO_ERROR_TIMED_OUT: return NS_ERROR_NET_TIMEOUT; // shows error -+ case G_IO_ERROR_WOULD_BLOCK: return NS_BASE_STREAM_WOULD_BLOCK; -+ case G_IO_ERROR_FAILED_HANDLED: return NS_ERROR_ABORT; // Cancel on login dialog -+ -+/* unhandled: -+ G_IO_ERROR_NOT_REGULAR_FILE, -+ G_IO_ERROR_NOT_SYMBOLIC_LINK, -+ G_IO_ERROR_NOT_MOUNTABLE_FILE, -+ G_IO_ERROR_TOO_MANY_LINKS, -+ G_IO_ERROR_ALREADY_MOUNTED, -+ G_IO_ERROR_CANT_CREATE_BACKUP, -+ G_IO_ERROR_WRONG_ETAG, -+ G_IO_ERROR_WOULD_RECURSE, -+ G_IO_ERROR_BUSY, -+ G_IO_ERROR_WOULD_MERGE, -+ G_IO_ERROR_TOO_MANY_OPEN_FILES -+*/ -+ // Make GCC happy -+ default: -+ return NS_ERROR_FAILURE; -+ } -+ -+ return NS_ERROR_FAILURE; -+} -+ -+static nsresult -+MapGIOResult(GError *result) -+{ -+ if (!result) -+ return NS_OK; -+ else -+ return MapGIOResult(result->code); -+} -+/** Return values for mount operation. -+ * These enums are used as mount operation return values. -+ */ -+typedef enum { -+ MOUNT_OPERATION_IN_PROGRESS, /** \enum operation in progress */ -+ MOUNT_OPERATION_SUCCESS, /** \enum operation successful */ -+ MOUNT_OPERATION_FAILED /** \enum operation not successful */ -+} MountOperationResult; -+//----------------------------------------------------------------------------- -+/** -+ * Sort function compares according to file type (directory/file) -+ * and alphabethical order -+ * @param a pointer to GFileInfo object to compare -+ * @param b pointer to GFileInfo object to compare -+ * @return -1 when first object should be before the second, 0 when equal, -+ * +1 when second object should be before the first -+ */ -+static gint -+FileInfoComparator(gconstpointer a, gconstpointer b) -+{ -+ GFileInfo *ia = ( GFileInfo *) a; -+ GFileInfo *ib = ( GFileInfo *) b; -+ if (g_file_info_get_file_type(ia) == G_FILE_TYPE_DIRECTORY -+ && g_file_info_get_file_type(ib) != G_FILE_TYPE_DIRECTORY) -+ return -1; -+ if (g_file_info_get_file_type(ib) == G_FILE_TYPE_DIRECTORY -+ && g_file_info_get_file_type(ia) != G_FILE_TYPE_DIRECTORY) -+ return 1; -+ -+ return strcasecmp(g_file_info_get_name(ia), g_file_info_get_name(ib)); -+} -+ -+/* Declaration of mount callback functions */ -+static void mount_enclosing_volume_finished (GObject *source_object, -+ GAsyncResult *res, -+ gpointer user_data); -+static void mount_operation_ask_password (GMountOperation *mount_op, -+ const char *message, -+ const char *default_user, -+ const char *default_domain, -+ GAskPasswordFlags flags, -+ gpointer user_data); -+//----------------------------------------------------------------------------- -+ -+class nsGIOInputStream : public nsIInputStream -+{ -+ public: -+ NS_DECL_ISUPPORTS -+ NS_DECL_NSIINPUTSTREAM -+ -+ nsGIOInputStream(const nsCString &uriSpec) -+ : mSpec(uriSpec) -+ , mChannel(nsnull) -+ , mHandle(nsnull) -+ , mStream(nsnull) -+ , mBytesRemaining(PR_UINT32_MAX) -+ , mStatus(NS_OK) -+ , mDirList(nsnull) -+ , mDirListPtr(nsnull) -+ , mDirBufCursor(0) -+ , mDirOpen(PR_FALSE) -+ , mMonitorMountInProgress("GIOInputStream::MountFinished") { } -+ -+ ~nsGIOInputStream() { Close(); } -+ -+ void SetChannel(nsIChannel *channel) -+ { -+ // We need to hold an owning reference to our channel. This is done -+ // so we can access the channel's notification callbacks to acquire -+ // a reference to a nsIAuthPrompt if we need to handle an interactive -+ // mount operation. -+ // -+ // However, the channel can only be accessed on the main thread, so -+ // we have to be very careful with ownership. Moreover, it doesn't -+ // support threadsafe addref/release, so proxying is the answer. -+ // -+ // Also, it's important to note that this likely creates a reference -+ // cycle since the channel likely owns this stream. This reference -+ // cycle is broken in our Close method. -+ -+ NS_ADDREF(mChannel = channel); -+ } -+ void SetMountResult(MountOperationResult result, gint error_code); -+ private: -+ nsresult DoOpen(); -+ nsresult DoRead(char *aBuf, PRUint32 aCount, PRUint32 *aCountRead); -+ nsresult SetContentTypeOfChannel(const char *contentType); -+ nsresult MountVolume(); -+ nsresult DoOpenDirectory(); -+ nsresult DoOpenFile(GFileInfo *info); -+ nsCString mSpec; -+ nsIChannel *mChannel; // manually refcounted -+ GFile *mHandle; -+ GFileInputStream *mStream; -+ PRUint64 mBytesRemaining; -+ nsresult mStatus; -+ GList *mDirList; -+ GList *mDirListPtr; -+ nsCString mDirBuf; -+ PRUint32 mDirBufCursor; -+ PRPackedBool mDirOpen; -+ MountOperationResult mMountRes; -+ mozilla::Monitor mMonitorMountInProgress; -+ gint mMountErrorCode; -+}; -+/** -+ * Set result of mount operation and notify monitor waiting for results. -+ * This method is called in main thread as long as it is used only -+ * in mount_enclosing_volume_finished function. -+ * @param result Result of mount operation -+ */ -+void -+nsGIOInputStream::SetMountResult(MountOperationResult result, gint error_code) -+{ -+ mozilla::MonitorAutoEnter mon(mMonitorMountInProgress); -+ mMountRes = result; -+ mMountErrorCode = error_code; -+ mon.Notify(); -+} -+ -+/** -+ * Start mount operation and wait in loop until it is finished. This method is -+ * called from thread which is trying to read from location. -+ */ -+nsresult -+nsGIOInputStream::MountVolume() { -+ GMountOperation* mount_op = g_mount_operation_new(); -+ g_signal_connect (mount_op, "ask-password", -+ G_CALLBACK (mount_operation_ask_password), mChannel); -+ mMountRes = MOUNT_OPERATION_IN_PROGRESS; -+ /* g_file_mount_enclosing_volume uses a dbus request to mount the volume. -+ Callback mount_enclosing_volume_finished is called in main thread -+ (not this thread on which this method is called). */ -+ g_file_mount_enclosing_volume(mHandle, -+ G_MOUNT_MOUNT_NONE, -+ mount_op, -+ NULL, -+ mount_enclosing_volume_finished, -+ this); -+ mozilla::MonitorAutoEnter mon(mMonitorMountInProgress); -+ /* Waiting for finish of mount operation thread */ -+ while (mMountRes == MOUNT_OPERATION_IN_PROGRESS) -+ mon.Wait(); -+ -+ g_object_unref(mount_op); -+ -+ if (mMountRes == MOUNT_OPERATION_FAILED) { -+ return MapGIOResult(mMountErrorCode); -+ } else { -+ return NS_OK; -+ } -+} -+ -+/** -+ * Create list of infos about objects in opened directory -+ * Return: NS_OK when list obtained, otherwise error code according -+ * to failed operation. -+ */ -+nsresult -+nsGIOInputStream::DoOpenDirectory() -+{ -+ GError *error = NULL; -+ -+ GFileEnumerator *f_enum = g_file_enumerate_children(mHandle, -+ "standard::*,time::*", -+ G_FILE_QUERY_INFO_NONE, -+ NULL, -+ &error); -+ if (!f_enum) { -+ nsresult rv = MapGIOResult(error); -+ g_warning("Cannot read from directory: %s", error->message); -+ g_error_free(error); -+ return rv; -+ } -+ // fill list of file infos -+ GFileInfo *info = g_file_enumerator_next_file(f_enum, NULL, &error); -+ while (info) { -+ mDirList = g_list_append(mDirList, info); -+ info = g_file_enumerator_next_file(f_enum, NULL, &error); -+ } -+ g_object_unref(f_enum); -+ if (error) { -+ g_warning("Error reading directory content: %s", error->message); -+ nsresult rv = MapGIOResult(error); -+ g_error_free(error); -+ return rv; -+ } -+ mDirOpen = PR_TRUE; -+ -+ // Sort list of file infos by using FileInfoComparator function -+ mDirList = g_list_sort(mDirList, FileInfoComparator); -+ mDirListPtr = mDirList; -+ -+ // Write base URL (make sure it ends with a '/') -+ mDirBuf.Append("300: "); -+ mDirBuf.Append(mSpec); -+ if (mSpec.get()[mSpec.Length() - 1] != '/') -+ mDirBuf.Append('/'); -+ mDirBuf.Append('\n'); -+ -+ // Write column names -+ mDirBuf.Append("200: filename content-length last-modified file-type\n"); -+ -+ // Write charset (assume UTF-8) -+ // XXX is this correct? -+ mDirBuf.Append("301: UTF-8\n"); -+ SetContentTypeOfChannel(APPLICATION_HTTP_INDEX_FORMAT); -+ return NS_OK; -+} -+ -+/** -+ * Create file stream and set mime type for channel -+ * @param info file info used to determine mime type -+ * @return NS_OK when file stream created successfuly, error code otherwise -+ */ -+nsresult -+nsGIOInputStream::DoOpenFile(GFileInfo *info) -+{ -+ GError *error = NULL; -+ -+ mStream = g_file_read(mHandle, NULL, &error); -+ if (!mStream) { -+ nsresult rv = MapGIOResult(error); -+ g_warning("Cannot read from file: %s", error->message); -+ g_error_free(error); -+ return rv; -+ } -+ -+ const char * content_type = g_file_info_get_content_type(info); -+ if (content_type) { -+ char *mime_type = g_content_type_get_mime_type(content_type); -+ if (mime_type) { -+ if (strcmp(mime_type, APPLICATION_OCTET_STREAM) != 0) { -+ SetContentTypeOfChannel(mime_type); -+ } -+ g_free(mime_type); -+ } -+ } else { -+ g_warning("Missing content type."); -+ } -+ -+ mBytesRemaining = g_file_info_get_size(info); -+ // Update the content length attribute on the channel. We do this -+ // synchronously without proxying. This hack is not as bad as it looks! -+ mChannel->SetContentLength(mBytesRemaining); -+ -+ return NS_OK; -+} -+ -+/** -+ * Start file open operation, mount volume when needed and according to file type -+ * create file output stream or read directory content. -+ * @return NS_OK when file or directory opened successfully, error code otherwise -+ */ -+nsresult -+nsGIOInputStream::DoOpen() -+{ -+ nsresult rv; -+ GError *error = NULL; -+ -+ NS_ASSERTION(mHandle == nsnull, "already open"); -+ -+ mHandle = g_file_new_for_uri( mSpec.get() ); -+ -+ GFileInfo *info = g_file_query_info(mHandle, -+ "standard::*", -+ G_FILE_QUERY_INFO_NONE, -+ NULL, -+ &error); -+ -+ if (error) { -+ if (error->domain == G_IO_ERROR && error->code == G_IO_ERROR_NOT_MOUNTED) { -+ // location is not yet mounted, try to mount -+ g_error_free(error); -+ if (NS_IsMainThread()) -+ return NS_ERROR_NOT_CONNECTED; -+ error = NULL; -+ rv = MountVolume(); -+ if (rv != NS_OK) { -+ return rv; -+ } -+ // get info again -+ info = g_file_query_info(mHandle, -+ "standard::*", -+ G_FILE_QUERY_INFO_NONE, -+ NULL, -+ &error); -+ // second try to get file info from remote files after media mount -+ if (!info) { -+ g_warning("Unable to get file info: %s", error->message); -+ rv = MapGIOResult(error); -+ g_error_free(error); -+ return rv; -+ } -+ } else { -+ g_warning("Unable to get file info: %s", error->message); -+ rv = MapGIOResult(error); -+ g_error_free(error); -+ return rv; -+ } -+ } -+ // Get file type to handle directories and file differently -+ GFileType f_type = g_file_info_get_file_type(info); -+ if (f_type == G_FILE_TYPE_DIRECTORY) { -+ // directory -+ rv = DoOpenDirectory(); -+ } else if (f_type != G_FILE_TYPE_UNKNOWN) { -+ // file -+ rv = DoOpenFile(info); -+ } else { -+ g_warning("Unable to get file type."); -+ rv = NS_ERROR_FILE_NOT_FOUND; -+ } -+ if (info) -+ g_object_unref(info); -+ return rv; -+} -+ -+/** -+ * Read content of file or create file list from directory -+ * @param aBuf read destination buffer -+ * @param aCount length of destination buffer -+ * @param aCountRead number of read characters -+ * @return NS_OK when read successfully, NS_BASE_STREAM_CLOSED when end of file, -+ * error code otherwise -+ */ -+nsresult -+nsGIOInputStream::DoRead(char *aBuf, PRUint32 aCount, PRUint32 *aCountRead) -+{ -+ nsresult rv = NS_ERROR_NOT_AVAILABLE; -+ if (mStream) { -+ // file read -+ GError *error = NULL; -+ PRUint32 bytes_read = g_input_stream_read(G_INPUT_STREAM(mStream), -+ aBuf, -+ aCount, -+ NULL, -+ &error); -+ if (error) { -+ rv = MapGIOResult(error); -+ *aCountRead = 0; -+ g_warning("Cannot read from file: %s", error->message); -+ g_error_free(error); -+ return rv; -+ } -+ *aCountRead = bytes_read; -+ mBytesRemaining -= *aCountRead; -+ return NS_OK; -+ } -+ else if (mDirOpen) { -+ // directory read -+ while (aCount && rv != NS_BASE_STREAM_CLOSED) -+ { -+ // Copy data out of our buffer -+ PRUint32 bufLen = mDirBuf.Length() - mDirBufCursor; -+ if (bufLen) -+ { -+ PRUint32 n = PR_MIN(bufLen, aCount); -+ memcpy(aBuf, mDirBuf.get() + mDirBufCursor, n); -+ *aCountRead += n; -+ aBuf += n; -+ aCount -= n; -+ mDirBufCursor += n; -+ } -+ -+ if (!mDirListPtr) // Are we at the end of the directory list? -+ { -+ rv = NS_BASE_STREAM_CLOSED; -+ } -+ else if (aCount) // Do we need more data? -+ { -+ GFileInfo *info = (GFileInfo *) mDirListPtr->data; -+ -+ // Prune '.' and '..' from directory listing. -+ const char * fname = g_file_info_get_name(info); -+ if (fname && fname[0] == '.' && -+ (fname[1] == '\0' || (fname[1] == '.' && fname[2] == '\0'))) -+ { -+ mDirListPtr = mDirListPtr->next; -+ continue; -+ } -+ -+ mDirBuf.Assign("201: "); -+ -+ // The "filename" field -+ nsCString escName; -+ nsCOMPtr nu = do_GetService(NS_NETUTIL_CONTRACTID); -+ if (nu && fname) { -+ nu->EscapeString(nsDependentCString(fname), -+ nsINetUtil::ESCAPE_URL_PATH, escName); -+ -+ mDirBuf.Append(escName); -+ mDirBuf.Append(' '); -+ } -+ -+ // The "content-length" field -+ // XXX truncates size from 64-bit to 32-bit -+ mDirBuf.AppendInt(PRInt32(g_file_info_get_size(info))); -+ mDirBuf.Append(' '); -+ -+ // The "last-modified" field -+ // -+ // NSPR promises: PRTime is compatible with time_t -+ // we just need to convert from seconds to microseconds -+ GTimeVal gtime; -+ g_file_info_get_modification_time(info, >ime); -+ -+ PRExplodedTime tm; -+ PRTime pt = ((PRTime) gtime.tv_sec) * 1000000; -+ PR_ExplodeTime(pt, PR_GMTParameters, &tm); -+ { -+ char buf[64]; -+ PR_FormatTimeUSEnglish(buf, sizeof(buf), -+ "%a,%%20%d%%20%b%%20%Y%%20%H:%M:%S%%20GMT ", &tm); -+ mDirBuf.Append(buf); -+ } -+ -+ // The "file-type" field -+ switch (g_file_info_get_file_type(info)) -+ { -+ case G_FILE_TYPE_REGULAR: -+ mDirBuf.Append("FILE "); -+ break; -+ case G_FILE_TYPE_DIRECTORY: -+ mDirBuf.Append("DIRECTORY "); -+ break; -+ case G_FILE_TYPE_SYMBOLIC_LINK: -+ mDirBuf.Append("SYMBOLIC-LINK "); -+ break; -+ default: -+ break; -+ } -+ mDirBuf.Append('\n'); -+ -+ mDirBufCursor = 0; -+ mDirListPtr = mDirListPtr->next; -+ } -+ } -+ } -+ return rv; -+} -+ -+/** -+ * This class is used to implement SetContentTypeOfChannel. -+ */ -+class nsGIOSetContentTypeEvent : public nsRunnable -+{ -+ public: -+ nsGIOSetContentTypeEvent(nsIChannel *channel, const char *contentType) -+ : mChannel(channel), mContentType(contentType) -+ { -+ // stash channel reference in mChannel. no AddRef here! see note -+ // in SetContentTypeOfchannel. -+ } -+ -+ NS_IMETHOD Run() -+ { -+ mChannel->SetContentType(mContentType); -+ return NS_OK; -+ } -+ -+ private: -+ nsIChannel *mChannel; -+ nsCString mContentType; -+}; -+ -+nsresult -+nsGIOInputStream::SetContentTypeOfChannel(const char *contentType) -+{ -+ // We need to proxy this call over to the main thread. We post an -+ // asynchronous event in this case so that we don't delay reading data, and -+ // we know that this is safe to do since the channel's reference will be -+ // released asynchronously as well. We trust the ordering of the main -+ // thread's event queue to protect us against memory corruption. -+ -+ nsresult rv; -+ nsCOMPtr ev = -+ new nsGIOSetContentTypeEvent(mChannel, contentType); -+ if (!ev) -+ { -+ rv = NS_ERROR_OUT_OF_MEMORY; -+ } -+ else -+ { -+ rv = NS_DispatchToMainThread(ev); -+ } -+ return rv; -+} -+ -+NS_IMPL_THREADSAFE_ISUPPORTS1(nsGIOInputStream, nsIInputStream) -+ -+/** -+ * Free all used memory and close stream. -+ */ -+NS_IMETHODIMP -+nsGIOInputStream::Close() -+{ -+ if (mStream) -+ { -+ g_object_unref(mStream); -+ mStream = nsnull; -+ } -+ -+ if (mHandle) -+ { -+ g_object_unref(mHandle); -+ mHandle = nsnull; -+ } -+ -+ if (mDirList) -+ { -+ // Destroy the list of GIOFileInfo objects... -+ g_list_foreach(mDirList, (GFunc) g_object_unref, nsnull); -+ g_list_free(mDirList); -+ mDirList = nsnull; -+ mDirListPtr = nsnull; -+ } -+ -+ if (mChannel) -+ { -+ nsresult rv = NS_OK; -+ -+ nsCOMPtr thread = do_GetMainThread(); -+ if (thread) -+ rv = NS_ProxyRelease(thread, mChannel); -+ -+ NS_ASSERTION(thread && NS_SUCCEEDED(rv), "leaking channel reference"); -+ mChannel = nsnull; -+ } -+ -+ mSpec.Truncate(); // free memory -+ -+ // Prevent future reads from re-opening the handle. -+ if (NS_SUCCEEDED(mStatus)) -+ mStatus = NS_BASE_STREAM_CLOSED; -+ -+ return NS_OK; -+} -+ -+/** -+ * Return number of remaining bytes available on input -+ * @param aResult remaining bytes -+ */ -+NS_IMETHODIMP -+nsGIOInputStream::Available(PRUint32 *aResult) -+{ -+ if (NS_FAILED(mStatus)) -+ return mStatus; -+ -+ /* When remaining bytes are bigger than max PRUint32 value an aResult must -+ be set to PRUint32 maximum */ -+ if (mBytesRemaining > PR_UINT32_MAX) -+ *aResult = PR_UINT32_MAX; -+ else -+ *aResult = mBytesRemaining; -+ -+ return NS_OK; -+} -+ -+/** -+ * Trying to read from stream. When location is not available it tries to mount it. -+ * @param aBuf buffer to put read data -+ * @param aCount length of aBuf -+ * @param aCountRead number of bytes actually read -+ */ -+NS_IMETHODIMP -+nsGIOInputStream::Read(char *aBuf, -+ PRUint32 aCount, -+ PRUint32 *aCountRead) -+{ -+ *aCountRead = 0; -+ // Check if file is already opened, otherwise open it -+ if (!mStream && !mDirOpen && mStatus == NS_OK) { -+ mStatus = DoOpen(); -+ if (NS_FAILED(mStatus)) { -+ return mStatus; -+ } -+ } -+ -+ mStatus = DoRead(aBuf, aCount, aCountRead); -+ // Check if all data has been read -+ if (mStatus == NS_BASE_STREAM_CLOSED) -+ return NS_OK; -+ -+ // Check whenever any error appears while reading -+ return mStatus; -+} -+ -+NS_IMETHODIMP -+nsGIOInputStream::ReadSegments(nsWriteSegmentFun aWriter, -+ void *aClosure, -+ PRUint32 aCount, -+ PRUint32 *aResult) -+{ -+ // There is no way to implement this using GnomeVFS, but fortunately -+ // that doesn't matter. Because we are a blocking input stream, Necko -+ // isn't going to call our ReadSegments method. -+ NS_NOTREACHED("nsGIOInputStream::ReadSegments"); -+ return NS_ERROR_NOT_IMPLEMENTED; -+} -+ -+NS_IMETHODIMP -+nsGIOInputStream::IsNonBlocking(PRBool *aResult) -+{ -+ *aResult = PR_FALSE; -+ return NS_OK; -+} -+ -+//----------------------------------------------------------------------------- -+ -+/** -+ * Called when finishing mount operation. Result of operation is set in -+ * nsGIOInputStream. This function is called in main thread as an async request -+ * typically from dbus. -+ * @param source_object GFile object which requested the mount -+ * @param res result object -+ * @param user_data pointer to nsGIOInputStream -+ */ -+static void -+mount_enclosing_volume_finished (GObject *source_object, -+ GAsyncResult *res, -+ gpointer user_data) -+{ -+ GError *error = NULL; -+ -+ nsGIOInputStream* istream = static_cast(user_data); -+ -+ g_file_mount_enclosing_volume_finish(G_FILE (source_object), res, &error); -+ -+ if (error) { -+ g_warning("Mount failed: %s %d", error->message, error->code); -+ istream->SetMountResult(MOUNT_OPERATION_FAILED, error->code); -+ g_error_free(error); -+ } else { -+ istream->SetMountResult(MOUNT_OPERATION_SUCCESS, 0); -+ } -+} -+ -+/** -+ * This function is called when username or password are requested from user. -+ * This function is called in main thread as async request from dbus. -+ * @param mount_op mount operation -+ * @param message message to show to user -+ * @param default_user preffered user -+ * @param default_domain domain name -+ * @param flags what type of information is required -+ * @param user_data nsIChannel -+ */ -+static void -+mount_operation_ask_password (GMountOperation *mount_op, -+ const char *message, -+ const char *default_user, -+ const char *default_domain, -+ GAskPasswordFlags flags, -+ gpointer user_data) -+{ -+ nsIChannel *channel = (nsIChannel *) user_data; -+ if (!channel) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // We can't handle request for domain -+ if (flags & G_ASK_PASSWORD_NEED_DOMAIN) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ -+ nsCOMPtr prompt; -+ NS_QueryNotificationCallbacks(channel, prompt); -+ -+ // If no auth prompt, then give up. We could failover to using the -+ // WindowWatcher service, but that might defeat a consumer's purposeful -+ // attempt to disable authentication (for whatever reason). -+ if (!prompt) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // Parse out the host and port... -+ nsCOMPtr uri; -+ channel->GetURI(getter_AddRefs(uri)); -+ if (!uri) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ -+ nsCAutoString scheme, hostPort; -+ uri->GetScheme(scheme); -+ uri->GetHostPort(hostPort); -+ -+ // It doesn't make sense for either of these strings to be empty. What kind -+ // of funky URI is this? -+ if (scheme.IsEmpty() || hostPort.IsEmpty()) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // Construct the single signon key. Altering the value of this key will -+ // cause people's remembered passwords to be forgotten. Think carefully -+ // before changing the way this key is constructed. -+ nsAutoString key, realm; -+ -+ NS_ConvertUTF8toUTF16 dispHost(scheme); -+ dispHost.Append(NS_LITERAL_STRING("://")); -+ dispHost.Append(NS_ConvertUTF8toUTF16(hostPort)); -+ -+ key = dispHost; -+ if (*default_domain != '\0') -+ { -+ // We assume the realm string is ASCII. That might be a bogus assumption, -+ // but we have no idea what encoding GnomeVFS is using, so for now we'll -+ // limit ourselves to ISO-Latin-1. XXX What is a better solution? -+ realm.Append('"'); -+ realm.Append(NS_ConvertASCIItoUTF16(default_domain)); -+ realm.Append('"'); -+ key.Append(' '); -+ key.Append(realm); -+ } -+ // Construct the message string... -+ // -+ // We use Necko's string bundle here. This code really should be encapsulated -+ // behind some Necko API, after all this code is based closely on the code in -+ // nsHttpChannel.cpp. -+ nsCOMPtr bundleSvc = -+ do_GetService(NS_STRINGBUNDLE_CONTRACTID); -+ if (!bundleSvc) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ nsCOMPtr bundle; -+ bundleSvc->CreateBundle("chrome://global/locale/commonDialogs.properties", -+ getter_AddRefs(bundle)); -+ if (!bundle) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ nsAutoString nsmessage; -+ -+ if (flags & G_ASK_PASSWORD_NEED_PASSWORD) { -+ if (flags & G_ASK_PASSWORD_NEED_USERNAME) { -+ if (!realm.IsEmpty()) { -+ const PRUnichar *strings[] = { realm.get(), dispHost.get() }; -+ bundle->FormatStringFromName(NS_LITERAL_STRING("EnterLoginForRealm").get(), -+ strings, 2, getter_Copies(nsmessage)); -+ } else { -+ const PRUnichar *strings[] = { dispHost.get() }; -+ bundle->FormatStringFromName(NS_LITERAL_STRING("EnterUserPasswordFor").get(), -+ strings, 1, getter_Copies(nsmessage)); -+ } -+ } else { -+ NS_ConvertUTF8toUTF16 userName(default_user); -+ const PRUnichar *strings[] = { userName.get(), dispHost.get() }; -+ bundle->FormatStringFromName(NS_LITERAL_STRING("EnterPasswordFor").get(), -+ strings, 2, getter_Copies(nsmessage)); -+ } -+ } else { -+ g_warning("Unknown mount operation request (flags: %x)", flags); -+ } -+ -+ if (nsmessage.IsEmpty()) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // Prompt the user... -+ nsresult rv; -+ PRBool retval = PR_FALSE; -+ PRUnichar *user = nsnull, *pass = nsnull; -+ if (default_user) { -+ // user will be freed by PromptUsernameAndPassword -+ user = ToNewUnicode(NS_ConvertUTF8toUTF16(default_user)); -+ } -+ if (flags & G_ASK_PASSWORD_NEED_USERNAME) { -+ rv = prompt->PromptUsernameAndPassword(nsnull, nsmessage.get(), -+ key.get(), -+ nsIAuthPrompt::SAVE_PASSWORD_PERMANENTLY, -+ &user, &pass, &retval); -+ } else { -+ rv = prompt->PromptPassword(nsnull, nsmessage.get(), -+ key.get(), -+ nsIAuthPrompt::SAVE_PASSWORD_PERMANENTLY, -+ &pass, &retval); -+ } -+ if (NS_FAILED(rv) || !retval) { // was || user == '\0' || pass == '\0' -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ /* GIO should accept UTF8 */ -+ g_mount_operation_set_username(mount_op, NS_ConvertUTF16toUTF8(user).get()); -+ g_mount_operation_set_password(mount_op, NS_ConvertUTF16toUTF8(pass).get()); -+ nsMemory::Free(user); -+ nsMemory::Free(pass); -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_HANDLED); -+} -+ -+//----------------------------------------------------------------------------- -+ -+class nsGIOProtocolHandler : public nsIProtocolHandler -+ , public nsIObserver -+{ -+ public: -+ NS_DECL_ISUPPORTS -+ NS_DECL_NSIPROTOCOLHANDLER -+ NS_DECL_NSIOBSERVER -+ -+ nsresult Init(); -+ -+ private: -+ void InitSupportedProtocolsPref(nsIPrefBranch *prefs); -+ PRBool IsSupportedProtocol(const nsCString &spec); -+ -+ nsCString mSupportedProtocols; -+}; -+ -+NS_IMPL_ISUPPORTS2(nsGIOProtocolHandler, nsIProtocolHandler, nsIObserver) -+ -+nsresult -+nsGIOProtocolHandler::Init() -+{ -+#ifdef PR_LOGGING -+ sGIOLog = PR_NewLogModule("gio"); -+#endif -+ -+ nsCOMPtr prefs = do_GetService(NS_PREFSERVICE_CONTRACTID); -+ if (prefs) -+ { -+ InitSupportedProtocolsPref(prefs); -+ prefs->AddObserver(MOZ_GIO_SUPPORTED_PROTOCOLS, this, PR_FALSE); -+ } -+ -+ return NS_OK; -+} -+ -+void -+nsGIOProtocolHandler::InitSupportedProtocolsPref(nsIPrefBranch *prefs) -+{ -+ // Get user preferences to determine which protocol is supported. -+ // Gvfs/GIO has a set of supported protocols like obex, network, archive, -+ // computer, dav, cdda, gphoto2, trash, etc. Some of these seems to be -+ // irrelevant to process by browser. By default accept only smb and sftp -+ // protocols so far. -+ nsresult rv = prefs->GetCharPref(MOZ_GIO_SUPPORTED_PROTOCOLS, -+ getter_Copies(mSupportedProtocols)); -+ if (NS_SUCCEEDED(rv)) { -+ mSupportedProtocols.StripWhitespace(); -+ ToLowerCase(mSupportedProtocols); -+ } -+ else -+ mSupportedProtocols.Assign("smb:,sftp:"); // use defaults -+ -+ LOG(("gio: supported protocols \"%s\"\n", mSupportedProtocols.get())); -+} -+ -+PRBool -+nsGIOProtocolHandler::IsSupportedProtocol(const nsCString &aSpec) -+{ -+ const char *specString = aSpec.get(); -+ const char *colon = strchr(specString, ':'); -+ if (!colon) -+ return PR_FALSE; -+ -+ PRUint32 length = colon - specString + 1; -+ -+ // + ':' -+ nsCString scheme(specString, length); -+ -+ char *found = PL_strcasestr(mSupportedProtocols.get(), scheme.get()); -+ if (!found) -+ return PR_FALSE; -+ -+ if (found[length] != ',' && found[length] != '\0') -+ return PR_FALSE; -+ -+ return PR_TRUE; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::GetScheme(nsACString &aScheme) -+{ -+ aScheme.Assign(MOZ_GIO_SCHEME); -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::GetDefaultPort(PRInt32 *aDefaultPort) -+{ -+ *aDefaultPort = -1; -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::GetProtocolFlags(PRUint32 *aProtocolFlags) -+{ -+ // Is URI_STD true of all GnomeVFS URI types? -+ *aProtocolFlags = URI_STD | URI_DANGEROUS_TO_LOAD; -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::NewURI(const nsACString &aSpec, -+ const char *aOriginCharset, -+ nsIURI *aBaseURI, -+ nsIURI **aResult) -+{ -+ const nsCString flatSpec(aSpec); -+ LOG(("gio: NewURI [spec=%s]\n", flatSpec.get())); -+ -+ if (!aBaseURI) -+ { -+ // XXX Is it good to support all GIO protocols? -+ if (!IsSupportedProtocol(flatSpec)) -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ -+ PRInt32 colon_location = flatSpec.FindChar(':'); -+ if (colon_location <= 0) -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ -+ // Verify that GIO supports this URI scheme. -+ PRBool uri_scheme_supported = PR_FALSE; -+ -+ GVfs *gvfs = g_vfs_get_default(); -+ -+ if (!gvfs) { -+ g_warning("Cannot get GVfs object."); -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ } -+ -+ const gchar* const * uri_schemes = g_vfs_get_supported_uri_schemes(gvfs); -+ -+ while (*uri_schemes != NULL) { -+ // While flatSpec ends with ':' the uri_scheme does not. Therefore do not -+ // compare last character. -+ if (StringHead(flatSpec, colon_location).Equals(*uri_schemes)) { -+ uri_scheme_supported = PR_TRUE; -+ break; -+ } -+ uri_schemes++; -+ } -+ -+ if (!uri_scheme_supported) { -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ } -+ } -+ -+ nsresult rv; -+ nsCOMPtr url = -+ do_CreateInstance(NS_STANDARDURL_CONTRACTID, &rv); -+ if (NS_FAILED(rv)) -+ return rv; -+ -+ rv = url->Init(nsIStandardURL::URLTYPE_STANDARD, -1, flatSpec, -+ aOriginCharset, aBaseURI); -+ if (NS_SUCCEEDED(rv)) -+ rv = CallQueryInterface(url, aResult); -+ return rv; -+ -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::NewChannel(nsIURI *aURI, nsIChannel **aResult) -+{ -+ NS_ENSURE_ARG_POINTER(aURI); -+ nsresult rv; -+ -+ nsCAutoString spec; -+ rv = aURI->GetSpec(spec); -+ if (NS_FAILED(rv)) -+ return rv; -+ -+ nsRefPtr stream = new nsGIOInputStream(spec); -+ if (!stream) -+ { -+ rv = NS_ERROR_OUT_OF_MEMORY; -+ } -+ else -+ { -+ // start out assuming an unknown content-type. we'll set the content-type -+ // to something better once we open the URI. -+ rv = NS_NewInputStreamChannel(aResult, -+ aURI, -+ stream, -+ NS_LITERAL_CSTRING(UNKNOWN_CONTENT_TYPE)); -+ if (NS_SUCCEEDED(rv)) -+ stream->SetChannel(*aResult); -+ } -+ return rv; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::AllowPort(PRInt32 aPort, -+ const char *aScheme, -+ PRBool *aResult) -+{ -+ // Don't override anything. -+ *aResult = PR_FALSE; -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::Observe(nsISupports *aSubject, -+ const char *aTopic, -+ const PRUnichar *aData) -+{ -+ if (strcmp(aTopic, NS_PREFBRANCH_PREFCHANGE_TOPIC_ID) == 0) { -+ nsCOMPtr prefs = do_QueryInterface(aSubject); -+ InitSupportedProtocolsPref(prefs); -+ } -+ return NS_OK; -+} -+ -+//----------------------------------------------------------------------------- -+ -+#define NS_GIOPROTOCOLHANDLER_CID \ -+{ /* ee706783-3af8-4d19-9e84-e2ebfe213480 */ \ -+ 0xee706783, \ -+ 0x3af8, \ -+ 0x4d19, \ -+ {0x9e, 0x84, 0xe2, 0xeb, 0xfe, 0x21, 0x34, 0x80} \ -+} -+ -+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGIOProtocolHandler, Init) -+NS_DEFINE_NAMED_CID(NS_GIOPROTOCOLHANDLER_CID); -+ -+static const mozilla::Module::CIDEntry kVFSCIDs[] = { -+ { &kNS_GIOPROTOCOLHANDLER_CID, false, NULL, nsGIOProtocolHandlerConstructor }, -+ { NULL } -+}; -+ -+static const mozilla::Module::ContractIDEntry kVFSContracts[] = { -+ { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX MOZ_GIO_SCHEME, &kNS_GIOPROTOCOLHANDLER_CID }, -+ { NULL } -+}; -+ -+static const mozilla::Module kVFSModule = { -+ mozilla::Module::kVersion, -+ kVFSCIDs, -+ kVFSContracts -+}; -+ -+NSMODULE_DEFN(nsGIOModule) = &kVFSModule; -diff -r 49a1b2aa43c5 netwerk/base/src/nsIOService.cpp ---- a/netwerk/base/src/nsIOService.cpp Tue Dec 21 12:42:59 2010 +0100 -+++ b/netwerk/base/src/nsIOService.cpp Tue Jan 11 11:17:52 2011 +0100 -@@ -454,6 +454,27 @@ - } - - #ifdef MOZ_X11 -+ // check to see whether GVFS can handle this URI scheme. if it can -+ // create a nsIURI for the "scheme:", then we assume it has support for -+ // the requested protocol. otherwise, we failover to using the default -+ // protocol handler. -+ -+ rv = CallGetService(NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX"moz-gio", -+ result); -+ if (NS_SUCCEEDED(rv)) { -+ nsCAutoString spec(scheme); -+ spec.Append(':'); -+ -+ nsIURI *uri; -+ rv = (*result)->NewURI(spec, nsnull, nsnull, &uri); -+ if (NS_SUCCEEDED(rv)) { -+ NS_RELEASE(uri); -+ return rv; -+ } -+ -+ NS_RELEASE(*result); -+ } -+ - // check to see whether GnomeVFS can handle this URI scheme. if it can - // create a nsIURI for the "scheme:", then we assume it has support for - // the requested protocol. otherwise, we failover to using the default diff --git a/community-staging/xulrunner-oss/xulrunner-omnijar.patch b/community-staging/xulrunner-oss/xulrunner-omnijar.patch deleted file mode 100644 index 66ec5206c..000000000 --- a/community-staging/xulrunner-oss/xulrunner-omnijar.patch +++ /dev/null @@ -1,1737 +0,0 @@ -# HG changeset patch -# Parent a7dea879b4b445a23186f438900562155bb39e99 -Bug 620931 part 1 - Use chrome manifest to register resource://gre-resources/ - -diff --git a/layout/style/jar.mn b/layout/style/jar.mn ---- a/layout/style/jar.mn -+++ b/layout/style/jar.mn -@@ -1,8 +1,10 @@ - toolkit.jar: - * res/ua.css (ua.css) - res/html.css (html.css) - res/quirk.css (quirk.css) - res/viewsource.css (viewsource.css) - * res/forms.css (forms.css) - res/arrow.gif (arrow.gif) - res/arrowd.gif (arrowd.gif) -+ -+% resource gre-resources %res/ -diff --git a/netwerk/protocol/res/nsResProtocolHandler.cpp b/netwerk/protocol/res/nsResProtocolHandler.cpp ---- a/netwerk/protocol/res/nsResProtocolHandler.cpp -+++ b/netwerk/protocol/res/nsResProtocolHandler.cpp -@@ -75,17 +75,16 @@ static nsResProtocolHandler *gResHandler - // - // this enables PR_LOG_ALWAYS level information and places all output in - // the file log.txt - // - static PRLogModuleInfo *gResLog; - #endif - - #define kGRE NS_LITERAL_CSTRING("gre") --#define kGRE_RESOURCES NS_LITERAL_CSTRING("gre-resources") - - //---------------------------------------------------------------------------- - // nsResURL : overrides nsStandardURL::GetFile to provide nsIFile resolution - //---------------------------------------------------------------------------- - - nsresult - nsResURL::EnsureFile() - { -@@ -197,28 +196,16 @@ nsResProtocolHandler::Init() - NS_ENSURE_SUCCESS(rv, rv); - - // - // make resource://gre/ point to the GRE directory - // - rv = AddSpecialDir(NS_GRE_DIR, kGRE); - NS_ENSURE_SUCCESS(rv, rv); - -- // make resource://gre-resources/ point to gre toolkit[.jar]/res -- nsCOMPtr greURI; -- nsCOMPtr greResURI; -- GetSubstitution(kGRE, getter_AddRefs(greURI)); --#ifdef MOZ_CHROME_FILE_FORMAT_JAR -- NS_NAMED_LITERAL_CSTRING(strGRE_RES_URL, "jar:chrome/toolkit.jar!/res/"); --#else -- NS_NAMED_LITERAL_CSTRING(strGRE_RES_URL, "chrome/toolkit/res/"); --#endif -- rv = mIOService->NewURI(strGRE_RES_URL, nsnull, greURI, -- getter_AddRefs(greResURI)); -- SetSubstitution(kGRE_RESOURCES, greResURI); - //XXXbsmedberg Neil wants a resource://pchrome/ for the profile chrome dir... - // but once I finish multiple chrome registration I'm not sure that it is needed - - // XXX dveditz: resource://pchrome/ defeats profile directory salting - // if web content can load it. Tread carefully. - - return rv; - } -@@ -242,22 +229,16 @@ nsResProtocolHandler::Init(nsIFile *aOmn - // these entries should be kept in sync with the normal Init function - - // resource:/// points to jar:omni.jar!/ - SetSubstitution(EmptyCString(), uri); - - // resource://gre/ points to jar:omni.jar!/ - SetSubstitution(kGRE, uri); - -- urlStr += "chrome/toolkit/res/"; -- rv = mIOService->NewURI(urlStr, nsnull, nsnull, getter_AddRefs(uri)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- // resource://gre-resources/ points to jar:omni.jar!/chrome/toolkit/res/ -- SetSubstitution(kGRE_RESOURCES, uri); - return NS_OK; - } - #endif - - #ifdef MOZ_IPC - static PLDHashOperator - EnumerateSubstitution(const nsACString& aKey, - nsIURI* aURI, -# HG changeset patch -# Parent 3038cccba1a071d6b418e15442d0f2d9f3dcb11d -Bug 620931 part 2 - When building --with-libxul-sdk, use the right preferences directory - -diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in ---- a/browser/locales/Makefile.in -+++ b/browser/locales/Makefile.in -@@ -183,17 +183,17 @@ install:: $(addsuffix .xml,$(SEARCH_PLUG - $(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/searchplugins - - - libs-%: - $(NSINSTALL) -D $(DIST)/install - @$(MAKE) -C ../../toolkit/locales libs-$* BOTH_MANIFESTS=1 - @$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 - @$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 -- @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref BOTH_MANIFESTS=1 -+ @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR) BOTH_MANIFESTS=1 - @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 - - - repackage-win32-installer: WIN32_INSTALLER_OUT="$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe" - repackage-win32-installer: $(WIN32_INSTALLER_IN) $(SUBMAKEFILES) - @echo "Repackaging $(WIN32_INSTALLER_IN) into $(WIN32_INSTALLER_OUT)." - $(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY) export - $(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen l10ngen/setup.exe l10ngen/7zSD.sfx -diff --git a/toolkit/mozapps/installer/packager.mk b/toolkit/mozapps/installer/packager.mk ---- a/toolkit/mozapps/installer/packager.mk -+++ b/toolkit/mozapps/installer/packager.mk -@@ -307,17 +307,17 @@ OMNIJAR_FILES = \ - res \ - defaults \ - greprefs.js \ - jsloader \ - $(NULL) - - NON_OMNIJAR_FILES += \ - chrome/icons/\* \ -- defaults/pref/channel-prefs.js \ -+ $(PREF_DIR)/channel-prefs.js \ - res/cursors/\* \ - res/MainMenu.nib/\* \ - $(NULL) - - PACK_OMNIJAR = \ - rm -f omni.jar components/binary.manifest && \ - grep -h '^binary-component' components/*.manifest > binary.manifest ; \ - sed -e 's/^binary-component/\#binary-component/' components/components.manifest > components.manifest && \ -# HG changeset patch -# Parent cd8df8030f7ad7530692bd7c4391a8009df56a02 -Bug 620931 part 3 - Allow GRE and XUL application to use omni.jar independently - -We now store two independent locations for an omni.jar, allowing GRE/XRE and -XUL application to each have their own omni.jar. And since xulrunner setups -are very independent from the XUL applications, we implement support for both -omni.jar and non omni.jar cases in the same runtime, with the side effect of -allowing to switch from one to the other manually without rebuilding the -binaries. - -We let the mozilla::Omnijar API handle both cases, so that callers don't need -too much work to support them. - -We also make the preferences service load the same set of preferences in all -the various cases (unified vs. separate, omni.jar vs. no omni.jar). - -The child process launcher for IPC is modified to pass the base directories -needed for the mozilla::Omnijar API initialization in the child process. - -Finally, the startupcache file name canonicalization is modified to separate -APP and GRE resources. - -diff --git a/ipc/glue/GeckoChildProcessHost.cpp b/ipc/glue/GeckoChildProcessHost.cpp ---- a/ipc/glue/GeckoChildProcessHost.cpp -+++ b/ipc/glue/GeckoChildProcessHost.cpp -@@ -440,26 +440,29 @@ GeckoChildProcessHost::PerformAsyncLaunc - // other end of the socketpair() from us - - std::vector childArgv; - - childArgv.push_back(exePath.value()); - - childArgv.insert(childArgv.end(), aExtraOpts.begin(), aExtraOpts.end()); - --#ifdef MOZ_OMNIJAR - // Make sure the child process can find the omnijar - // See XRE_InitCommandLine in nsAppRunner.cpp -- nsCAutoString omnijarPath; -- if (mozilla::OmnijarPath()) { -- mozilla::OmnijarPath()->GetNativePath(omnijarPath); -- childArgv.push_back("-omnijar"); -- childArgv.push_back(omnijarPath.get()); -+ nsCAutoString path; -+ nsCOMPtr file = mozilla::Omnijar::GetBase(mozilla::Omnijar::GRE); -+ if (file && NS_SUCCEEDED(file->GetNativePath(path))) { -+ childArgv.push_back("-grebase"); -+ childArgv.push_back(path.get()); - } --#endif -+ file = mozilla::Omnijar::GetBase(mozilla::Omnijar::APP); -+ if (file && NS_SUCCEEDED(file->GetNativePath(path))) { -+ childArgv.push_back("-appbase"); -+ childArgv.push_back(path.get()); -+ } - - childArgv.push_back(pidstring); - - #if defined(MOZ_CRASHREPORTER) - # if defined(OS_LINUX) - int childCrashFd, childCrashRemapFd; - if (!CrashReporter::CreateNotificationPipeForChild( - &childCrashFd, &childCrashRemapFd)) -@@ -552,26 +555,29 @@ GeckoChildProcessHost::PerformAsyncLaunc - for (std::vector::iterator it = aExtraOpts.begin(); - it != aExtraOpts.end(); - ++it) { - cmdLine.AppendLooseValue(UTF8ToWide(*it)); - } - - cmdLine.AppendLooseValue(std::wstring(mGroupId.get())); - --#ifdef MOZ_OMNIJAR - // Make sure the child process can find the omnijar - // See XRE_InitCommandLine in nsAppRunner.cpp -- nsAutoString omnijarPath; -- if (mozilla::OmnijarPath()) { -- mozilla::OmnijarPath()->GetPath(omnijarPath); -- cmdLine.AppendLooseValue(UTF8ToWide("-omnijar")); -- cmdLine.AppendLooseValue(omnijarPath.get()); -+ nsAutoString path; -+ nsCOMPtr file = mozilla::Omnijar::GetBase(mozilla::Omnijar::GRE); -+ if (file && NS_SUCCEEDED(file->GetPath(path))) { -+ cmdLine.AppendLooseValue(UTF8ToWide("-grebase")); -+ cmdLine.AppendLooseValue(path.get()); - } --#endif -+ file = mozilla::Omnijar::GetBase(mozilla::Omnijar::APP); -+ if (file && NS_SUCCEEDED(file->GetPath(path))) { -+ cmdLine.AppendLooseValue(UTF8ToWide("-appbase")); -+ cmdLine.AppendLooseValue(path.get()); -+ } - - cmdLine.AppendLooseValue(UTF8ToWide(pidstring)); - - #if defined(MOZ_CRASHREPORTER) - cmdLine.AppendLooseValue( - UTF8ToWide(CrashReporter::GetChildNotificationPipe())); - #endif - -diff --git a/js/src/xpconnect/loader/mozJSComponentLoader.cpp b/js/src/xpconnect/loader/mozJSComponentLoader.cpp ---- a/js/src/xpconnect/loader/mozJSComponentLoader.cpp -+++ b/js/src/xpconnect/loader/mozJSComponentLoader.cpp -@@ -81,16 +81,17 @@ - #include "nsIConsoleService.h" - #include "nsIStorageStream.h" - #include "nsIStringStream.h" - #include "prmem.h" - #if defined(XP_WIN) - #include "nsILocalFileWin.h" - #endif - #include "xpcprivate.h" -+#include "nsIResProtocolHandler.h" - - #ifdef MOZ_ENABLE_LIBXUL - #include "mozilla/scache/StartupCache.h" - #include "mozilla/scache/StartupCacheUtils.h" - #endif - #include "mozilla/Omnijar.h" - - #include "jsdbgapi.h" -@@ -621,34 +622,21 @@ mozJSComponentLoader::LoadModule(nsILoca - - const mozilla::Module* - mozJSComponentLoader::LoadModuleFromJAR(nsILocalFile *aJarFile, - const nsACString &aComponentPath) - { - #if !defined(XPCONNECT_STANDALONE) - nsresult rv; - -- nsCAutoString fullSpec; -- --#ifdef MOZ_OMNIJAR -- PRBool equal; -- rv = aJarFile->Equals(mozilla::OmnijarPath(), &equal); -- if (NS_SUCCEEDED(rv) && equal) { -- fullSpec = "resource://gre/"; -- } else { --#endif -- nsCAutoString fileSpec; -- NS_GetURLSpecFromActualFile(aJarFile, fileSpec); -- fullSpec = "jar:"; -- fullSpec += fileSpec; -- fullSpec += "!/"; --#ifdef MOZ_OMNIJAR -- } --#endif -- -+ nsCAutoString fullSpec, fileSpec; -+ NS_GetURLSpecFromActualFile(aJarFile, fileSpec); -+ fullSpec = "jar:"; -+ fullSpec += fileSpec; -+ fullSpec += "!/"; - fullSpec += aComponentPath; - - nsCOMPtr uri; - rv = NS_NewURI(getter_AddRefs(uri), fullSpec); - if (NS_FAILED(rv)) - return NULL; - - nsAutoString hashstring; -@@ -833,57 +821,138 @@ class JSScriptHolder - JSScriptHolder(JSContext *cx, JSScript *script) - : mCx(cx), mScript(script) {} - ~JSScriptHolder() { ::JS_DestroyScript(mCx, mScript); } - private: - JSContext *mCx; - JSScript *mScript; - }; - -+static const char baseName[2][5] = { "gre/", "app/" }; -+ -+static inline PRBool -+canonicalizeBase(nsCAutoString &spec, nsACString &out, mozilla::Omnijar::Type aType) -+{ -+ nsCAutoString base; -+ nsresult rv = mozilla::Omnijar::GetURIString(aType, base); -+ -+ if (NS_FAILED(rv) || !base.Length()) -+ return PR_FALSE; -+ -+ if (base.Compare(spec.get(), PR_FALSE, base.Length())) -+ return PR_FALSE; -+ -+ out.Append("/resource/"); -+ out.Append(baseName[aType]); -+ out.Append(Substring(spec, base.Length())); -+ return PR_TRUE; -+} - /** - * PathifyURI transforms mozilla .js uris into useful zip paths - * to make it makes it easier to manipulate startup cache entries - * using standard zip tools. - * Transformations applied: -- * * jsloader/ prefix is used to group mozJSComponentLoader cache entries in -+ * * jsloader/ prefix is used to group mozJSComponentLoader cache entries in - * a top-level zip directory. -- * * In MOZ_OMNIJAR case resource:/// and resource://gre/ URIs refer to the same path -- * so treat both of them as resource://gre/ -+ * * resource:// URIs are resolved to their corresponding file/jar URI to -+ * canonicalize resources URIs other than gre and app. -+ * * Paths under GRE or APP directory have their base path replaced with -+ * resource/gre or resource/app to avoid depending on install location. -+ * * jar:file:///path/to/file.jar!/sub/path urls are replaced with -+ * /path/to/file.jar/sub/path - * * .bin suffix is added to the end of the path to indicate that jsloader/ entries - * are binary representations of JS source. - * For example: -- * resource://gre/modules/XPCOMUtils.jsm becomes -- * jsloader/resource/gre/modules/XPCOMUtils.jsm.bin -+ * resource://gre/modules/XPCOMUtils.jsm or -+ * file://$GRE_DIR/modules/XPCOMUtils.jsm or -+ * jar:file://$GRE_DIR/omni.jar!/modules/XPCOMUtils.jsm become -+ * jsloader/resource/gre/modules/XPCOMUtils.jsm.bin -+ * file://$PROFILE_DIR/extensions/{uuid}/components/component.js becomes -+ * jsloader/$PROFILE_DIR/extensions/%7Buuid%7D/components/component.js.bin -+ * jar:file://$PROFILE_DIR/extensions/some.xpi!/components/component.js becomes -+ * jsloader/$PROFILE_DIR/extensions/some.xpi/components/component.js.bin - */ - static nsresult - PathifyURI(nsIURI *in, nsACString &out) - { -- out = "jsloader/"; -- nsCAutoString scheme; -- nsresult rv = in->GetScheme(scheme); -- NS_ENSURE_SUCCESS(rv, rv); -- out.Append(scheme); -- nsCAutoString host; -- // OK for GetHost to fail since it's not implemented sometimes -- in->GetHost(host); --#ifdef MOZ_OMNIJAR -- if (scheme.Equals("resource") && host.Length() == 0){ -- host = "gre"; -- } --#endif -- if (host.Length()) { -- out.Append("/"); -- out.Append(host); -- } -- nsCAutoString path; -- rv = in->GetPath(path); -- NS_ENSURE_SUCCESS(rv, rv); -- out.Append(path); -- out.Append(".bin"); -- return NS_OK; -+ PRBool equals; -+ nsresult rv; -+ nsCOMPtr uri = in; -+ nsCAutoString spec; -+ -+ out = "jsloader"; -+ -+ // Resolve resource:// URIs. At the end of this if/else block, we -+ // have both spec and uri variables identifying the same URI. -+ if (NS_SUCCEEDED(in->SchemeIs("resource", &equals)) && equals) { -+ nsCOMPtr ioService = do_GetIOService(&rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr ph; -+ rv = ioService->GetProtocolHandler("resource", getter_AddRefs(ph)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr irph(do_QueryInterface(ph, &rv)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = irph->ResolveURI(in, spec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = ioService->NewURI(spec, nsnull, nsnull, getter_AddRefs(uri)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } else { -+ rv = in->GetSpec(spec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } -+ -+ if (!canonicalizeBase(spec, out, mozilla::Omnijar::GRE) && -+ !canonicalizeBase(spec, out, mozilla::Omnijar::APP)) { -+ if (NS_SUCCEEDED(uri->SchemeIs("file", &equals)) && equals) { -+ nsCOMPtr baseFileURL; -+ baseFileURL = do_QueryInterface(uri, &rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCAutoString path; -+ rv = baseFileURL->GetPath(path); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ out.Append(path); -+ } else if (NS_SUCCEEDED(uri->SchemeIs("jar", &equals)) && equals) { -+ nsCOMPtr jarURI = do_QueryInterface(uri, &rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr jarFileURI; -+ rv = jarURI->GetJARFile(getter_AddRefs(jarFileURI)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr jarFileURL; -+ jarFileURL = do_QueryInterface(jarFileURI, &rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCAutoString path; -+ rv = jarFileURL->GetPath(path); -+ NS_ENSURE_SUCCESS(rv, rv); -+ out.Append(path); -+ -+ rv = jarURI->GetJAREntry(path); -+ NS_ENSURE_SUCCESS(rv, rv); -+ out.Append("/"); -+ out.Append(path); -+ } else { // Very unlikely -+ nsCAutoString spec; -+ rv = uri->GetSpec(spec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ out.Append("/"); -+ out.Append(spec); -+ } -+ } -+ -+ out.Append(".bin"); -+ return NS_OK; - } - - /* static */ - #ifdef MOZ_ENABLE_LIBXUL - nsresult - mozJSComponentLoader::ReadScript(StartupCache* cache, nsIURI *uri, - JSContext *cx, JSScript **script) - { -diff --git a/modules/libjar/nsJAR.cpp b/modules/libjar/nsJAR.cpp ---- a/modules/libjar/nsJAR.cpp -+++ b/modules/libjar/nsJAR.cpp -@@ -171,26 +171,23 @@ nsJAR::Open(nsIFile* zipFile) - if (mLock) return NS_ERROR_FAILURE; // Already open! - - mZipFile = zipFile; - mOuterZipEntry.Truncate(); - - mLock = PR_NewLock(); - NS_ENSURE_TRUE(mLock, NS_ERROR_OUT_OF_MEMORY); - --#ifdef MOZ_OMNIJAR - // The omnijar is special, it is opened early on and closed late - // this avoids reopening it -- PRBool equals; -- nsresult rv = zipFile->Equals(mozilla::OmnijarPath(), &equals); -- if (NS_SUCCEEDED(rv) && equals) { -- mZip = mozilla::OmnijarReader(); -+ nsZipArchive *zip = mozilla::Omnijar::GetReader(zipFile); -+ if (zip) { -+ mZip = zip; - return NS_OK; - } --#endif - return mZip->OpenArchive(zipFile); - } - - NS_IMETHODIMP - nsJAR::OpenInner(nsIZipReader *aZipReader, const char *aZipEntry) - { - NS_ENSURE_ARG_POINTER(aZipReader); - NS_ENSURE_ARG_POINTER(aZipEntry); -@@ -234,23 +231,22 @@ nsJAR::Close() - mLock = nsnull; - } - - mParsedManifest = PR_FALSE; - mManifestData.Reset(); - mGlobalStatus = JAR_MANIFEST_NOT_PARSED; - mTotalItemsInManifest = 0; - --#ifdef MOZ_OMNIJAR -- if (mZip == mozilla::OmnijarReader()) { -+ if ((mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE)) || -+ (mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::APP))) { - mZip.forget(); - mZip = new nsZipArchive(); - return NS_OK; - } --#endif - return mZip->CloseArchive(); - } - - NS_IMETHODIMP - nsJAR::Test(const char *aEntryName) - { - return mZip->Test(aEntryName); - } -@@ -391,22 +387,21 @@ nsJAR::GetInputStreamWithSpec(const nsAC - NS_IMETHODIMP - nsJAR::GetCertificatePrincipal(const char* aFilename, nsIPrincipal** aPrincipal) - { - //-- Parameter check - if (!aPrincipal) - return NS_ERROR_NULL_POINTER; - *aPrincipal = nsnull; - --#ifdef MOZ_OMNIJAR - // Don't check signatures in the omnijar - this is only - // interesting for extensions/XPIs. -- if (mZip == mozilla::OmnijarReader()) -+ if ((mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE)) || -+ (mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::APP))) - return NS_OK; --#endif - - //-- Parse the manifest - nsresult rv = ParseManifest(); - if (NS_FAILED(rv)) return rv; - if (mGlobalStatus == JAR_NO_MANIFEST) - return NS_OK; - - PRInt16 requestedStatus; -diff --git a/modules/libpref/src/nsPrefService.cpp b/modules/libpref/src/nsPrefService.cpp ---- a/modules/libpref/src/nsPrefService.cpp -+++ b/modules/libpref/src/nsPrefService.cpp -@@ -67,20 +67,18 @@ - - #include "prefapi.h" - #include "prefread.h" - #include "prefapi_private_data.h" - #include "PrefTuple.h" - - #include "nsITimelineService.h" - --#ifdef MOZ_OMNIJAR - #include "mozilla/Omnijar.h" - #include "nsZipArchive.h" --#endif - - // Definitions - #define INITIAL_PREF_FILES 10 - static NS_DEFINE_CID(kZipReaderCID, NS_ZIPREADER_CID); - - // Prototypes - static nsresult openPrefFile(nsIFile* aFile); - static nsresult pref_InitInitialObjects(void); -@@ -793,124 +791,144 @@ static nsresult pref_LoadPrefsInDirList( - pref_LoadPrefsInDir(dir, nsnull, 0); - } - } - } - } - return NS_OK; - } - --//---------------------------------------------------------------------------------------- --// Initialize default preference JavaScript buffers from --// appropriate TEXT resources --//---------------------------------------------------------------------------------------- --static nsresult pref_InitDefaults() --{ -- nsCOMPtr greprefsFile; -- nsresult rv; -- -- rv = NS_GetSpecialDirectory(NS_GRE_DIR, getter_AddRefs(greprefsFile)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- rv = greprefsFile->AppendNative(NS_LITERAL_CSTRING("greprefs.js")); -- NS_ENSURE_SUCCESS(rv, rv); -- -- rv = openPrefFile(greprefsFile); -- if (NS_FAILED(rv)) { -- NS_WARNING("Error parsing GRE default preferences. Is this an old-style embedding app?"); -- } -- -- return NS_OK; --} -- --#ifdef MOZ_OMNIJAR - static nsresult pref_ReadPrefFromJar(nsZipArchive* jarReader, const char *name) - { - nsZipItemPtr manifest(jarReader, name, true); - NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE); - - PrefParseState ps; - PREF_InitParseState(&ps, PREF_ReaderCallback, NULL); - nsresult rv = PREF_ParseBuf(&ps, manifest, manifest.Length()); - PREF_FinalizeParseState(&ps); - - return rv; - } - --static nsresult pref_InitAppDefaultsFromOmnijar() --{ -- nsresult rv; -- -- nsZipArchive* jarReader = mozilla::OmnijarReader(); -- if (!jarReader) -- return pref_InitDefaults(); -- -- rv = pref_ReadPrefFromJar(jarReader, "greprefs.js"); -- NS_ENSURE_SUCCESS(rv, rv); -- -- nsZipFind *findPtr; -- rv = jarReader->FindInit("defaults/pref/*.js$", &findPtr); -- NS_ENSURE_SUCCESS(rv, rv); -- -- nsAutoPtr find(findPtr); -- -- nsTArray prefEntries; -- const char *entryName; -- PRUint16 entryNameLen; -- while (NS_SUCCEEDED(find->FindNext(&entryName, &entryNameLen))) { -- prefEntries.AppendElement(Substring(entryName, entryName + entryNameLen)); -- } -- -- prefEntries.Sort(); -- for (PRUint32 i = prefEntries.Length(); i--; ) { -- rv = pref_ReadPrefFromJar(jarReader, prefEntries[i].get()); -- if (NS_FAILED(rv)) -- NS_WARNING("Error parsing preferences."); -- } -- -- return NS_OK; --} --#endif -- -+//---------------------------------------------------------------------------------------- -+// Initialize default preference JavaScript buffers from -+// appropriate TEXT resources -+//---------------------------------------------------------------------------------------- - static nsresult pref_InitInitialObjects() - { - nsresult rv; - -- // first we parse the GRE default prefs. This also works if we're not using a GRE, --#ifdef MOZ_OMNIJAR -- rv = pref_InitAppDefaultsFromOmnijar(); --#else -- rv = pref_InitDefaults(); --#endif -- NS_ENSURE_SUCCESS(rv, rv); -+ // In omni.jar case, we load the following prefs: -+ // - jar:$gre/omni.jar!/greprefs.js -+ // - jar:$gre/omni.jar!/defaults/pref/*.js -+ // In non omni.jar case, we load: -+ // - $gre/greprefs.js -+ // -+ // When $app == $gre, we additionally load, in all cases: -+ // - $gre/defaults/pref/*.js -+ // This is kept for bug 591866 (channel-prefs.js should not be in omni.jar). -+ // We load all files instead of channel-prefs.js only to have the same -+ // behaviour as $app != $gre. -+ // -+ // When $app != $gre, we additionally load, in omni.jar case: -+ // - jar:$app/omni.jar!/defaults/preferences/*.js -+ // - $app/defaults/preferences/*.js -+ // and in non omni.jar case: -+ // - $app/defaults/preferences/*.js - -- nsCOMPtr defaultPrefDir; -- // now parse the "application" default preferences -- rv = NS_GetSpecialDirectory(NS_APP_PREF_DEFAULTS_50_DIR, getter_AddRefs(defaultPrefDir)); -- NS_ENSURE_SUCCESS(rv, rv); -+ nsZipFind *findPtr; -+ nsAutoPtr find; -+ nsTArray prefEntries; -+ const char *entryName; -+ PRUint16 entryNameLen; - -- /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */ -- static const char* specialFiles[] = { -+ nsZipArchive* jarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE); -+ if (jarReader) { -+ // Load jar:$gre/omni.jar!/greprefs.js -+ rv = pref_ReadPrefFromJar(jarReader, "greprefs.js"); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ // Load jar:$gre/omni.jar!/defaults/pref/*.js -+ rv = jarReader->FindInit("defaults/pref/*.js$", &findPtr); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ find = findPtr; -+ while (NS_SUCCEEDED(find->FindNext(&entryName, &entryNameLen))) { -+ prefEntries.AppendElement(Substring(entryName, entryName + entryNameLen)); -+ } -+ -+ prefEntries.Sort(); -+ for (PRUint32 i = prefEntries.Length(); i--; ) { -+ rv = pref_ReadPrefFromJar(jarReader, prefEntries[i].get()); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing preferences."); -+ } -+ } else { -+ // Load $gre/greprefs.js -+ nsCOMPtr greprefsFile; -+ rv = NS_GetSpecialDirectory(NS_GRE_DIR, getter_AddRefs(greprefsFile)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = greprefsFile->AppendNative(NS_LITERAL_CSTRING("greprefs.js")); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = openPrefFile(greprefsFile); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing GRE default preferences. Is this an old-style embedding app?"); -+ } -+ -+ if (!mozilla::Omnijar::HasOmnijar(mozilla::Omnijar::APP)) { -+ // Load $gre/defaults/pref/*.js -+ nsCOMPtr defaultPrefDir; -+ -+ rv = NS_GetSpecialDirectory(NS_APP_PREF_DEFAULTS_50_DIR, getter_AddRefs(defaultPrefDir)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */ -+ static const char* specialFiles[] = { - #if defined(XP_MAC) || defined(XP_MACOSX) - "macprefs.js" - #elif defined(XP_WIN) - "winpref.js" - #elif defined(XP_UNIX) - "unix.js" --#if defined(_AIX) -+#if defined(VMS) -+ , "openvms.js" -+#elif defined(_AIX) - , "aix.js" - #endif - #elif defined(XP_OS2) - "os2pref.js" -+#elif defined(XP_BEOS) -+ "beos.js" - #endif -- }; -+ }; - -- rv = pref_LoadPrefsInDir(defaultPrefDir, specialFiles, NS_ARRAY_LENGTH(specialFiles)); -- if (NS_FAILED(rv)) { -- NS_WARNING("Error parsing application default preferences."); -+ rv = pref_LoadPrefsInDir(defaultPrefDir, specialFiles, NS_ARRAY_LENGTH(specialFiles)); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing application default preferences."); -+ } -+ -+ // Load jar:$app/omni.jar!/defaults/preferences/*.js -+ nsZipArchive *appJarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::APP); -+ if (appJarReader) { -+ rv = appJarReader->FindInit("defaults/preferences/*.js$", &findPtr); -+ NS_ENSURE_SUCCESS(rv, rv); -+ find = findPtr; -+ prefEntries.Clear(); -+ while (NS_SUCCEEDED(find->FindNext(&entryName, &entryNameLen))) { -+ prefEntries.AppendElement(Substring(entryName, entryName + entryNameLen)); -+ } -+ prefEntries.Sort(); -+ for (PRUint32 i = prefEntries.Length(); i--; ) { -+ rv = pref_ReadPrefFromJar(appJarReader, prefEntries[i].get()); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing preferences."); -+ } - } - - rv = pref_LoadPrefsInDirList(NS_APP_PREFS_DEFAULTS_DIR_LIST); - NS_ENSURE_SUCCESS(rv, rv); - - NS_CreateServicesFromCategory(NS_PREFSERVICE_APPDEFAULTS_TOPIC_ID, - nsnull, NS_PREFSERVICE_APPDEFAULTS_TOPIC_ID); - -diff --git a/netwerk/protocol/res/nsResProtocolHandler.cpp b/netwerk/protocol/res/nsResProtocolHandler.cpp ---- a/netwerk/protocol/res/nsResProtocolHandler.cpp -+++ b/netwerk/protocol/res/nsResProtocolHandler.cpp -@@ -152,97 +152,62 @@ nsResProtocolHandler::nsResProtocolHandl - } - - nsResProtocolHandler::~nsResProtocolHandler() - { - gResHandler = nsnull; - } - - nsresult --nsResProtocolHandler::AddSpecialDir(const char* aSpecialDir, const nsACString& aSubstitution) --{ -- nsCOMPtr file; -- nsresult rv = NS_GetSpecialDirectory(aSpecialDir, getter_AddRefs(file)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- nsCOMPtr uri; -- rv = mIOService->NewFileURI(file, getter_AddRefs(uri)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- return SetSubstitution(aSubstitution, uri); --} -- --nsresult - nsResProtocolHandler::Init() - { - if (!mSubstitutions.Init(32)) - return NS_ERROR_UNEXPECTED; - - nsresult rv; - - mIOService = do_GetIOService(&rv); - NS_ENSURE_SUCCESS(rv, rv); - --#ifdef MOZ_OMNIJAR -- nsCOMPtr omniJar(mozilla::OmnijarPath()); -- if (omniJar) -- return Init(omniJar); --#endif -- -- // these entries should be kept in sync with the omnijar Init function -+ nsCAutoString appURI, greURI; -+ rv = mozilla::Omnijar::GetURIString(mozilla::Omnijar::APP, appURI); -+ NS_ENSURE_SUCCESS(rv, rv); -+ rv = mozilla::Omnijar::GetURIString(mozilla::Omnijar::GRE, greURI); -+ NS_ENSURE_SUCCESS(rv, rv); - - // -- // make resource:/// point to the application directory -+ // make resource:/// point to the application directory or omnijar - // -- rv = AddSpecialDir(NS_OS_CURRENT_PROCESS_DIR, EmptyCString()); -+ nsCOMPtr uri; -+ rv = NS_NewURI(getter_AddRefs(uri), appURI.Length() ? appURI : greURI); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = SetSubstitution(EmptyCString(), uri); - NS_ENSURE_SUCCESS(rv, rv); - - // - // make resource://gre/ point to the GRE directory - // -- rv = AddSpecialDir(NS_GRE_DIR, kGRE); -+ if (appURI.Length()) { // We already have greURI in uri if appURI.Length() is 0. -+ rv = NS_NewURI(getter_AddRefs(uri), greURI); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } -+ -+ rv = SetSubstitution(kGRE, uri); - NS_ENSURE_SUCCESS(rv, rv); - - //XXXbsmedberg Neil wants a resource://pchrome/ for the profile chrome dir... - // but once I finish multiple chrome registration I'm not sure that it is needed - - // XXX dveditz: resource://pchrome/ defeats profile directory salting - // if web content can load it. Tread carefully. - - return rv; - } - --#ifdef MOZ_OMNIJAR --nsresult --nsResProtocolHandler::Init(nsIFile *aOmniJar) --{ -- nsresult rv; -- nsCOMPtr uri; -- nsCAutoString omniJarSpec; -- NS_GetURLSpecFromActualFile(aOmniJar, omniJarSpec, mIOService); -- -- nsCAutoString urlStr("jar:"); -- urlStr += omniJarSpec; -- urlStr += "!/"; -- -- rv = mIOService->NewURI(urlStr, nsnull, nsnull, getter_AddRefs(uri)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- // these entries should be kept in sync with the normal Init function -- -- // resource:/// points to jar:omni.jar!/ -- SetSubstitution(EmptyCString(), uri); -- -- // resource://gre/ points to jar:omni.jar!/ -- SetSubstitution(kGRE, uri); -- -- return NS_OK; --} --#endif -- - #ifdef MOZ_IPC - static PLDHashOperator - EnumerateSubstitution(const nsACString& aKey, - nsIURI* aURI, - void* aArg) - { - nsTArray* resources = - static_cast*>(aArg); -diff --git a/startupcache/StartupCache.cpp b/startupcache/StartupCache.cpp ---- a/startupcache/StartupCache.cpp -+++ b/startupcache/StartupCache.cpp -@@ -237,27 +237,36 @@ StartupCache::GetBuffer(const char* id, - nsZipItemPtr zipItem(mArchive, id, true); - if (zipItem) { - *outbuf = zipItem.Forget(); - *length = zipItem.Length(); - return NS_OK; - } - } - --#ifdef MOZ_OMNIJAR -- if (mozilla::OmnijarReader()) { -+ if (mozilla::Omnijar::GetReader(mozilla::Omnijar::APP)) { - // no need to checksum omnijarred entries -- nsZipItemPtr zipItem(mozilla::OmnijarReader(), id); -+ nsZipItemPtr zipItem(mozilla::Omnijar::GetReader(mozilla::Omnijar::APP), id); - if (zipItem) { - *outbuf = zipItem.Forget(); - *length = zipItem.Length(); - return NS_OK; - } - } --#endif -+ -+ if (mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE)) { -+ // no need to checksum omnijarred entries -+ nsZipItemPtr zipItem(mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE), id); -+ if (zipItem) { -+ *outbuf = zipItem.Forget(); -+ *length = zipItem.Length(); -+ return NS_OK; -+ } -+ } -+ - return NS_ERROR_NOT_AVAILABLE; - } - - // Makes a copy of the buffer, client retains ownership of inbuf. - nsresult - StartupCache::PutBuffer(const char* id, const char* inbuf, PRUint32 len) - { - WaitOnWriteThread(); -diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp ---- a/toolkit/xre/nsAppRunner.cpp -+++ b/toolkit/xre/nsAppRunner.cpp -@@ -3897,35 +3897,45 @@ XRE_InitCommandLine(int aArgc, char* aAr - CommandLine::Init(aArgc, canonArgs); - - for (int i = 0; i < aArgc; ++i) - free(canonArgs[i]); - delete[] canonArgs; - #endif - #endif - --#ifdef MOZ_OMNIJAR -- const char *omnijarPath = nsnull; -- ArgResult ar = CheckArg("omnijar", PR_FALSE, &omnijarPath); -+ const char *path = nsnull; -+ ArgResult ar = CheckArg("grebase", PR_FALSE, &path); - if (ar == ARG_BAD) { -- PR_fprintf(PR_STDERR, "Error: argument -omnijar requires an omnijar path\n"); -+ PR_fprintf(PR_STDERR, "Error: argument -grebase requires a path argument\n"); - return NS_ERROR_FAILURE; - } - -- if (!omnijarPath) -+ if (!path) - return rv; - -- nsCOMPtr omnijar; -- rv = NS_NewNativeLocalFile(nsDependentCString(omnijarPath), PR_TRUE, -- getter_AddRefs(omnijar)); -- if (NS_SUCCEEDED(rv)) -- mozilla::SetOmnijar(omnijar); --#endif -- -- return rv; -+ nsCOMPtr greBase; -+ rv = XRE_GetFileFromPath(path, getter_AddRefs(greBase)); -+ if (NS_FAILED(rv)) -+ return rv; -+ -+ ar = CheckArg("appbase", PR_FALSE, &path); -+ if (ar == ARG_BAD) { -+ PR_fprintf(PR_STDERR, "Error: argument -appbase requires a path argument\n"); -+ return NS_ERROR_FAILURE; -+ } -+ -+ nsCOMPtr appBase; -+ if (path) { -+ rv = XRE_GetFileFromPath(path, getter_AddRefs(appBase)); -+ if (NS_FAILED(rv)) -+ return rv; -+ } -+ -+ return mozilla::Omnijar::SetBase(greBase, appBase); - } - - nsresult - XRE_DeinitCommandLine() - { - nsresult rv = NS_OK; - - #if defined(MOZ_IPC) -diff --git a/toolkit/xre/nsEmbedFunctions.cpp b/toolkit/xre/nsEmbedFunctions.cpp ---- a/toolkit/xre/nsEmbedFunctions.cpp -+++ b/toolkit/xre/nsEmbedFunctions.cpp -@@ -512,19 +512,17 @@ XRE_InitChildProcess(int aArgc, - } - - // Run the UI event loop on the main thread. - uiMessageLoop.MessageLoop::Run(); - - // Allow ProcessChild to clean up after itself before going out of - // scope and being deleted - process->CleanUp(); --#ifdef MOZ_OMNIJAR -- mozilla::SetOmnijar(nsnull); --#endif -+ mozilla::Omnijar::SetBase(nsnull, nsnull); - } - } - - NS_LogTerm(); - return XRE_DeinitCommandLine(); - } - - MessageLoop* -diff --git a/xpcom/build/Makefile.in b/xpcom/build/Makefile.in ---- a/xpcom/build/Makefile.in -+++ b/xpcom/build/Makefile.in -@@ -64,28 +64,25 @@ CSRCS = \ - $(NULL) - - CPPSRCS = \ - $(XPCOM_GLUE_SRC_LCPPSRCS) \ - $(XPCOM_GLUENS_SRC_LCPPSRCS) \ - nsXPComInit.cpp \ - nsXPCOMStrings.cpp \ - Services.cpp \ -+ Omnijar.cpp \ - $(NULL) - - ifndef MOZ_ENABLE_LIBXUL - ifeq (,$(filter-out WINNT WINCE OS2,$(OS_ARCH))) - CPPSRCS += dlldeps.cpp - endif - endif - --ifdef MOZ_OMNIJAR --CPPSRCS += Omnijar.cpp --endif -- - SHARED_LIBRARY_LIBS = \ - $(DEPTH)/chrome/src/$(LIB_PREFIX)chrome_s.$(LIB_SUFFIX) \ - ../ds/$(LIB_PREFIX)xpcomds_s.$(LIB_SUFFIX) \ - ../io/$(LIB_PREFIX)xpcomio_s.$(LIB_SUFFIX) \ - ../components/$(LIB_PREFIX)xpcomcomponents_s.$(LIB_SUFFIX) \ - ../threads/$(LIB_PREFIX)xpcomthreads_s.$(LIB_SUFFIX) \ - ../proxy/src/$(LIB_PREFIX)xpcomproxy_s.$(LIB_SUFFIX) \ - ../base/$(LIB_PREFIX)xpcombase_s.$(LIB_SUFFIX) \ -diff --git a/xpcom/build/Omnijar.cpp b/xpcom/build/Omnijar.cpp ---- a/xpcom/build/Omnijar.cpp -+++ b/xpcom/build/Omnijar.cpp -@@ -16,16 +16,17 @@ - * - * The Initial Developer of the Original Code is - * Mozilla Foundation. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Michael Wu -+ * Mike Hommey - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your -@@ -33,69 +34,175 @@ - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - - #include "Omnijar.h" - --#include "nsILocalFile.h" --#include "nsXULAppAPI.h" -+#include "nsIFile.h" - #include "nsZipArchive.h" -+#include "nsNetUtil.h" - --static nsILocalFile* sOmnijarPath = nsnull; --static nsZipArchive* sOmnijarReader = nsnull; -+namespace mozilla { - --static void --SetupReader() -+nsIFile *Omnijar::sPath[2] = { nsnull, nsnull }; -+PRBool Omnijar::sIsOmnijar[2] = { PR_FALSE, PR_FALSE }; -+ -+#ifdef MOZ_ENABLE_LIBXUL -+nsZipArchive *Omnijar::sReader[2] = { nsnull, nsnull }; -+#endif -+ -+static already_AddRefed -+ComputePath(nsIFile *aPath, PRBool &aIsOmnijar) - { -- if (!sOmnijarPath) { -- return; -+ PRBool isDir; -+ aIsOmnijar = PR_FALSE; -+ if (!aPath || NS_FAILED(aPath->IsDirectory(&isDir)) || !isDir) -+ return nsnull; -+ -+ nsCOMPtr path; -+#ifdef MOZ_ENABLE_LIBXUL -+ // Search for omni.jar in the given directory -+ if (!isDir || NS_FAILED(aPath->Clone(getter_AddRefs(path)))) -+ return nsnull; -+ -+ if (NS_FAILED(path->AppendNative(NS_LITERAL_CSTRING("omni.jar")))) -+ return nsnull; -+ -+ if (NS_FAILED(path->Exists(&aIsOmnijar))) -+ return nsnull; -+#endif -+ -+ if (!aIsOmnijar && NS_FAILED(aPath->Clone(getter_AddRefs(path)))) -+ return nsnull; -+ -+ return path.forget(); -+} -+ -+nsresult -+Omnijar::SetBase(nsIFile *aGrePath, nsIFile *aAppPath) -+{ -+ NS_ABORT_IF_FALSE(aGrePath || !aAppPath, "Omnijar::SetBase(NULL, something) call forbidden"); -+ -+#ifdef MOZ_ENABLE_LIBXUL -+ if (sReader[GRE]) { -+ sReader[GRE]->CloseArchive(); -+ delete sReader[GRE]; -+ } -+ if (sReader[APP]) { -+ sReader[APP]->CloseArchive(); -+ delete sReader[APP]; -+ } -+ sReader[APP] = sReader[GRE] = nsnull; -+#endif -+ -+ nsresult rv; -+ PRBool equals; -+ if (aAppPath) { -+ rv = aAppPath->Equals(aGrePath, &equals); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } else { -+ equals = PR_TRUE; - } - -- nsZipArchive* zipReader = new nsZipArchive(); -- if (!zipReader) { -- NS_IF_RELEASE(sOmnijarPath); -- return; -+ nsCOMPtr grePath = ComputePath(aGrePath, sIsOmnijar[GRE]); -+ nsCOMPtr appPath = ComputePath(equals ? nsnull : aAppPath, sIsOmnijar[APP]); -+ -+ NS_IF_RELEASE(sPath[GRE]); -+ sPath[GRE] = grePath; -+ NS_IF_ADDREF(sPath[GRE]); -+ -+ NS_IF_RELEASE(sPath[APP]); -+ sPath[APP] = appPath; -+ NS_IF_ADDREF(sPath[APP]); -+ -+ return NS_OK; -+} -+ -+already_AddRefed -+Omnijar::GetBase(Type aType) -+{ -+ NS_ABORT_IF_FALSE(sPath[0], "Omnijar not initialized"); -+ -+ if (!sIsOmnijar[aType]) { -+ NS_IF_ADDREF(sPath[aType]); -+ return sPath[aType]; - } - -- if (NS_FAILED(zipReader->OpenArchive(sOmnijarPath))) { -+ nsCOMPtr file, path; -+ if (NS_FAILED(sPath[aType]->Clone(getter_AddRefs(file)))) -+ return nsnull; -+ -+ if (NS_FAILED(file->GetParent(getter_AddRefs(path)))) -+ return nsnull; -+ return path.forget(); -+} -+ -+#ifdef MOZ_ENABLE_LIBXUL -+nsZipArchive * -+Omnijar::GetReader(Type aType) -+{ -+ if (!sIsOmnijar[aType]) -+ return nsnull; -+ -+ if (sReader[aType]) -+ return sReader[aType]; -+ -+ nsZipArchive* zipReader = new nsZipArchive(); -+ if (!zipReader) -+ return nsnull; -+ -+ if (NS_FAILED(zipReader->OpenArchive(sPath[aType]))) { - delete zipReader; -- NS_IF_RELEASE(sOmnijarPath); -- return; -+ return nsnull; - } - -- sOmnijarReader = zipReader; -+ return (sReader[aType] = zipReader); - } - --nsILocalFile* --mozilla::OmnijarPath() -+nsZipArchive * -+Omnijar::GetReader(nsIFile *aPath) - { -- if (!sOmnijarReader) -- SetupReader(); -+ PRBool equals; -+ nsresult rv; - -- return sOmnijarPath; -+ if (sIsOmnijar[GRE]) { -+ rv = sPath[GRE]->Equals(aPath, &equals); -+ if (NS_SUCCEEDED(rv) && equals) -+ return GetReader(GRE); -+ } -+ if (sIsOmnijar[APP]) { -+ rv = sPath[APP]->Equals(aPath, &equals); -+ if (NS_SUCCEEDED(rv) && equals) -+ return GetReader(APP); -+ } -+ return nsnull; -+} -+#endif -+ -+nsresult -+Omnijar::GetURIString(Type aType, nsCString &result) -+{ -+ NS_ABORT_IF_FALSE(sPath[0], "Omnijar not initialized"); -+ -+ result = ""; -+ -+ if ((aType == APP) && (!sPath[APP])) -+ return NS_OK; -+ -+ nsCAutoString omniJarSpec; -+ nsresult rv = NS_GetURLSpecFromActualFile(sPath[aType], omniJarSpec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ if (sIsOmnijar[aType]) { -+ result = "jar:"; -+ result += omniJarSpec; -+ result += "!"; -+ } else { -+ result = omniJarSpec; -+ } -+ result += "/"; -+ return NS_OK; - } - --nsZipArchive* --mozilla::OmnijarReader() --{ -- if (!sOmnijarReader) -- SetupReader(); -- -- return sOmnijarReader; --} -- --void --mozilla::SetOmnijar(nsILocalFile* aPath) --{ -- NS_IF_RELEASE(sOmnijarPath); -- if (sOmnijarReader) { -- sOmnijarReader->CloseArchive(); -- delete sOmnijarReader; -- sOmnijarReader = nsnull; -- } -- -- sOmnijarPath = aPath; -- NS_IF_ADDREF(sOmnijarPath); --} -- -+} /* namespace mozilla */ -diff --git a/xpcom/build/Omnijar.h b/xpcom/build/Omnijar.h ---- a/xpcom/build/Omnijar.h -+++ b/xpcom/build/Omnijar.h -@@ -16,16 +16,17 @@ - * - * The Initial Developer of the Original Code is - * Mozilla Foundation. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Michael Wu -+ * Mike Hommey - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your -@@ -34,29 +35,137 @@ - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - - #ifndef mozilla_Omnijar_h - #define mozilla_Omnijar_h - --class nsILocalFile; -+#include "nscore.h" -+#include "nsTArray.h" -+#include "nsCOMPtr.h" -+#include "nsString.h" -+ -+class nsIFile; - class nsZipArchive; -- --#ifdef MOZ_OMNIJAR -+class nsIURI; - - namespace mozilla { - -+#ifdef MOZ_ENABLE_LIBXUL -+#define OMNIJAR_EXPORT -+#else -+#define OMNIJAR_EXPORT NS_EXPORT -+#endif -+ -+class OMNIJAR_EXPORT Omnijar { -+private: - /** -- * This returns the path to the omnijar. -- * If the omnijar isn't available, this function will return null. -- * Callers should fallback to flat packaging if null. -+ * Store an nsIFile for either a base directory when there is no omni.jar, -+ * or omni.jar itself. We can store two paths here, one for GRE -+ * (corresponding to resource://gre/) and one for APP -+ * (corresponding to resource:/// and resource://app/), but only -+ * store one when both point to the same location (unified). - */ --nsILocalFile *OmnijarPath(); --nsZipArchive *OmnijarReader(); --void SetOmnijar(nsILocalFile* aPath); -+static nsIFile *sPath[2]; -+/** -+ * Store whether the corresponding sPath is an omni.jar or a directory -+ */ -+static PRBool sIsOmnijar[2]; -+ -+#ifdef MOZ_ENABLE_LIBXUL -+/** -+ * Cached nsZipArchives for the corresponding sPath -+ */ -+static nsZipArchive *sReader[2]; -+#endif -+ -+public: -+enum Type { -+ GRE = 0, -+ APP = 1 -+}; -+ -+/** -+ * Returns whether SetBase has been called at least once with -+ * a valid nsIFile -+ */ -+static PRBool -+IsInitialized() -+{ -+ // GRE path is always set after initialization. -+ return sPath[0] != nsnull; -+} -+ -+/** -+ * Sets the base directories for GRE and APP. APP base directory -+ * may be nsnull, in case the APP and GRE directories are the same. -+ */ -+static nsresult SetBase(nsIFile *aGrePath, nsIFile *aAppPath); -+ -+/** -+ * Returns an nsIFile pointing to the omni.jar file for GRE or APP. -+ * Returns nsnull when there is no corresponding omni.jar. -+ * Also returns nsnull for APP in the unified case. -+ */ -+static already_AddRefed -+GetPath(Type aType) -+{ -+ NS_ABORT_IF_FALSE(sPath[0], "Omnijar not initialized"); -+ -+ if (sIsOmnijar[aType]) { -+ NS_IF_ADDREF(sPath[aType]); -+ return sPath[aType]; -+ } -+ return nsnull; -+} -+ -+/** -+ * Returns whether GRE or APP use an omni.jar. Returns PR_False when -+ * using an omni.jar in the unified case. -+ */ -+static PRBool -+HasOmnijar(Type aType) -+{ -+ return sIsOmnijar[aType]; -+} -+ -+/** -+ * Returns the base directory for GRE or APP. In the unified case, -+ * returns nsnull for APP. -+ */ -+static already_AddRefed GetBase(Type aType); -+ -+/** -+ * Returns a nsZipArchive pointer for the omni.jar file for GRE or -+ * APP. Returns nsnull in the same cases GetPath() would. -+ */ -+#ifdef MOZ_ENABLE_LIBXUL -+static nsZipArchive *GetReader(Type aType); -+#else -+static nsZipArchive *GetReader(Type aType) { return nsnull; } -+#endif -+ -+/** -+ * Returns a nsZipArchive pointer for the given path IAOI the given -+ * path is the omni.jar for either GRE or APP. -+ */ -+#ifdef MOZ_ENABLE_LIBXUL -+static nsZipArchive *GetReader(nsIFile *aPath); -+#else -+static nsZipArchive *GetReader(nsIFile *aPath) { return nsnull; } -+#endif -+ -+/** -+ * Returns the URI string corresponding to the omni.jar or directory -+ * for GRE or APP. i.e. jar:/path/to/omni.jar!/ for omni.jar and -+ * /path/to/base/dir/ otherwise. Returns an empty string for APP in -+ * the unified case. -+ * The returned URI is guaranteed to end with a slash. -+ */ -+static nsresult GetURIString(Type aType, nsCString &result); -+ -+}; /* class Omnijar */ - - } /* namespace mozilla */ - --#endif /* MOZ_OMNIJAR */ -- - #endif /* mozilla_Omnijar_h */ -diff --git a/xpcom/build/nsXPComInit.cpp b/xpcom/build/nsXPComInit.cpp ---- a/xpcom/build/nsXPComInit.cpp -+++ b/xpcom/build/nsXPComInit.cpp -@@ -462,35 +462,35 @@ NS_InitXPCOM2(nsIServiceManager* *result - nsDirectoryService::gService->Set(NS_XPCOM_LIBRARY_FILE, xpcomLib); - } - - if (appFileLocationProvider) { - rv = nsDirectoryService::gService->RegisterProvider(appFileLocationProvider); - if (NS_FAILED(rv)) return rv; - } - --#ifdef MOZ_OMNIJAR - NS_TIME_FUNCTION_MARK("Next: Omnijar init"); - -- if (!mozilla::OmnijarPath()) { -- nsCOMPtr omnijar; -+ if (!mozilla::Omnijar::IsInitialized()) { -+ nsCOMPtr greDir, appDir; - nsCOMPtr file; - -- rv = NS_ERROR_FAILURE; - nsDirectoryService::gService->Get(NS_GRE_DIR, - NS_GET_IID(nsIFile), - getter_AddRefs(file)); -- if (file) -- rv = file->Append(NS_LITERAL_STRING("omni.jar")); -- if (NS_SUCCEEDED(rv)) -- omnijar = do_QueryInterface(file); -- if (NS_SUCCEEDED(rv)) -- mozilla::SetOmnijar(omnijar); -+ greDir = do_QueryInterface(file); -+ -+ nsDirectoryService::gService->Get(NS_XPCOM_CURRENT_PROCESS_DIR, -+ NS_GET_IID(nsIFile), -+ getter_AddRefs(file)); -+ appDir = do_QueryInterface(file); -+ -+ rv = mozilla::Omnijar::SetBase(greDir, appDir); -+ NS_ENSURE_SUCCESS(rv, rv); - } --#endif - - #ifdef MOZ_IPC - if ((sCommandLineWasInitialized = !CommandLine::IsInitialized())) { - NS_TIME_FUNCTION_MARK("Next: IPC command line init"); - - #ifdef OS_WIN - CommandLine::Init(0, nsnull); - #else -@@ -769,18 +769,16 @@ ShutdownXPCOM(nsIServiceManager* servMgr - sCommandLineWasInitialized = false; - } - if (sExitManager) { - delete sExitManager; - sExitManager = nsnull; - } - #endif - --#ifdef MOZ_OMNIJAR -- mozilla::SetOmnijar(nsnull); --#endif -+ mozilla::Omnijar::SetBase(nsnull, nsnull); - - NS_LogTerm(); - - return NS_OK; - } - - } // namespace mozilla -diff --git a/xpcom/components/nsComponentManager.cpp b/xpcom/components/nsComponentManager.cpp ---- a/xpcom/components/nsComponentManager.cpp -+++ b/xpcom/components/nsComponentManager.cpp -@@ -175,18 +175,16 @@ NS_DEFINE_CID(kCategoryManagerCID, NS_CA - #define COMPMGR_TIME_FUNCTION_CONTRACTID(cid) \ - NS_TIME_FUNCTION_MIN_FMT(5, "%s (line %d) (contractid: %s)", MOZ_FUNCTION_NAME, \ - __LINE__, (cid)) - #else - #define COMPMGR_TIME_FUNCTION_CID(cid) do {} while (0) - #define COMPMGR_TIME_FUNCTION_CONTRACTID(cid) do {} while (0) - #endif - --#define kOMNIJAR_PREFIX NS_LITERAL_CSTRING("resource:///") -- - nsresult - nsGetServiceFromCategory::operator()(const nsIID& aIID, void** aInstancePtr) const - { - nsresult rv; - nsXPIDLCString value; - nsCOMPtr catman; - nsComponentManagerImpl *compMgr = nsComponentManagerImpl::gComponentManager; - if (!compMgr) { -@@ -390,47 +388,44 @@ nsresult nsComponentManagerImpl::Init() - - nsCategoryManager::GetSingleton()->SuppressNotifications(true); - - RegisterModule(&kXPCOMModule, NULL); - - for (PRUint32 i = 0; i < sStaticModules->Length(); ++i) - RegisterModule((*sStaticModules)[i], NULL); - --#ifdef MOZ_OMNIJAR -- if (mozilla::OmnijarPath()) { -- nsCOMPtr omnijarReader = new nsJAR(); -- rv = omnijarReader->Open(mozilla::OmnijarPath()); -- if (NS_SUCCEEDED(rv)) -- RegisterJarManifest(omnijarReader, "chrome.manifest", false); -+ nsCOMPtr appOmnijar = mozilla::Omnijar::GetPath(mozilla::Omnijar::APP); -+ if (appOmnijar) { -+ cl = sModuleLocations->InsertElementAt(1); // Insert after greDir -+ cl->type = NS_COMPONENT_LOCATION; -+ cl->location = do_QueryInterface(appOmnijar); -+ cl->jar = true; - } --#endif -+ nsCOMPtr greOmnijar = mozilla::Omnijar::GetPath(mozilla::Omnijar::GRE); -+ if (greOmnijar) { -+ cl = sModuleLocations->InsertElementAt(0); -+ cl->type = NS_COMPONENT_LOCATION; -+ cl->location = do_QueryInterface(greOmnijar); -+ cl->jar = true; -+ } - - for (PRUint32 i = 0; i < sModuleLocations->Length(); ++i) { - ComponentLocation& l = sModuleLocations->ElementAt(i); - if (!l.jar) { - RegisterManifestFile(l.type, l.location, false); - continue; - } - - nsCOMPtr reader = do_CreateInstance(kZipReaderCID, &rv); - rv = reader->Open(l.location); - if (NS_SUCCEEDED(rv)) - RegisterJarManifest(reader, "chrome.manifest", false); - } - --#ifdef MOZ_OMNIJAR -- if (mozilla::OmnijarPath()) { -- cl = sModuleLocations->InsertElementAt(0); -- cl->type = NS_COMPONENT_LOCATION; -- cl->location = mozilla::OmnijarPath(); -- cl->jar = true; -- } --#endif -- - nsCategoryManager::GetSingleton()->SuppressNotifications(false); - - mStatus = NORMAL; - - return NS_OK; - } - - void -# HG changeset patch -# Parent ff1b810f78226d7f4010909d3cde05a57fdcf20c -Bug 620931 part 4 - Fix resource://app/ to always point to the same as resource:/// - -diff --git a/netwerk/protocol/res/nsResProtocolHandler.cpp b/netwerk/protocol/res/nsResProtocolHandler.cpp ---- a/netwerk/protocol/res/nsResProtocolHandler.cpp -+++ b/netwerk/protocol/res/nsResProtocolHandler.cpp -@@ -74,16 +74,17 @@ static nsResProtocolHandler *gResHandler - // set NSPR_LOG_FILE=log.txt - // - // this enables PR_LOG_ALWAYS level information and places all output in - // the file log.txt - // - static PRLogModuleInfo *gResLog; - #endif - -+#define kAPP NS_LITERAL_CSTRING("app") - #define kGRE NS_LITERAL_CSTRING("gre") - - //---------------------------------------------------------------------------- - // nsResURL : overrides nsStandardURL::GetFile to provide nsIFile resolution - //---------------------------------------------------------------------------- - - nsresult - nsResURL::EnsureFile() -@@ -179,16 +180,22 @@ nsResProtocolHandler::Init() - nsCOMPtr uri; - rv = NS_NewURI(getter_AddRefs(uri), appURI.Length() ? appURI : greURI); - NS_ENSURE_SUCCESS(rv, rv); - - rv = SetSubstitution(EmptyCString(), uri); - NS_ENSURE_SUCCESS(rv, rv); - - // -+ // make resource://app/ point to the application directory or omnijar -+ // -+ rv = SetSubstitution(kAPP, uri); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ // - // make resource://gre/ point to the GRE directory - // - if (appURI.Length()) { // We already have greURI in uri if appURI.Length() is 0. - rv = NS_NewURI(getter_AddRefs(uri), greURI); - NS_ENSURE_SUCCESS(rv, rv); - } - - rv = SetSubstitution(kGRE, uri); -diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp ---- a/toolkit/xre/nsXREDirProvider.cpp -+++ b/toolkit/xre/nsXREDirProvider.cpp -@@ -300,19 +300,16 @@ nsXREDirProvider::GetFile(const char* aP - } - } - else if (!strcmp(aProperty, XRE_EXECUTABLE_FILE) && gArgv[0]) { - nsCOMPtr lf; - rv = XRE_GetBinaryPath(gArgv[0], getter_AddRefs(lf)); - if (NS_SUCCEEDED(rv)) - file = lf; - } -- else if (!strcmp(aProperty, "resource:app")) { -- rv = GetAppDir()->Clone(getter_AddRefs(file)); -- } - - else if (!strcmp(aProperty, NS_APP_PROFILE_DIR_STARTUP) && mProfileDir) { - return mProfileDir->Clone(aFile); - } - else if (!strcmp(aProperty, NS_APP_PROFILE_LOCAL_DIR_STARTUP)) { - if (mProfileLocalDir) - return mProfileLocalDir->Clone(aFile); - -# HG changeset patch -# Parent 7d2228db71a299afca60babff632a967d2d6c456 -Bug 620931 part 5 - Enable omni.jar by default on xulrunner - -diff --git a/xulrunner/confvars.sh b/xulrunner/confvars.sh ---- a/xulrunner/confvars.sh -+++ b/xulrunner/confvars.sh -@@ -36,15 +36,16 @@ - # - # ***** END LICENSE BLOCK ***** - - MOZ_APP_NAME=xulrunner - MOZ_APP_DISPLAYNAME=XULRunner - MOZ_UPDATER=1 - MOZ_XULRUNNER=1 - MOZ_ENABLE_LIBXUL=1 -+MOZ_CHROME_FILE_FORMAT=omni - MOZ_STATIC_BUILD_UNSUPPORTED=1 - MOZ_APP_VERSION=$MOZILLA_VERSION - if test "$MOZ_STORAGE"; then - MOZ_PLACES=1 - fi - MOZ_EXTENSIONS_DEFAULT=" gnomevfs" - MOZ_URL_CLASSIFIER=1 diff --git a/community-staging/xulrunner-oss/xulrunner-version.patch b/community-staging/xulrunner-oss/xulrunner-version.patch deleted file mode 100644 index 8e81b23ea..000000000 --- a/community-staging/xulrunner-oss/xulrunner-version.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur mozilla-2.0.orig/xulrunner/installer/Makefile.in mozilla-2.0/xulrunner/installer/Makefile.in ---- mozilla-2.0.orig/xulrunner/installer/Makefile.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/Makefile.in 2011-03-13 01:58:19.663360705 -0800 -@@ -44,6 +44,8 @@ - - include $(DEPTH)/config/autoconf.mk - -+MOZ_APP_VERSION="2.0" -+ - NO_PKG_FILES = \ - xulrunner-config \ - regchrome* \ diff --git a/community-staging/yaz/PKGBUILD b/community-staging/yaz/PKGBUILD deleted file mode 100644 index bf42c005f..000000000 --- a/community-staging/yaz/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# $Id: PKGBUILD 48643 2011-06-03 16:57:46Z stephane $ -# Maintainer: Ray Rashif -# Contributor: Andrea Scarpino -# Contributor: Stefan Husmann -# Contributor: William Rea -# Contributor: Robert Emil Berge - -pkgname=yaz -pkgver=4.1.7 -pkgrel=2 -pkgdesc="A toolkit supporting the development of Z39.50/SRW/SRU clients and servers" -arch=('i686' 'x86_64') -license=('BSD') -url="http://www.indexdata.dk/yaz" -depends=('openssl' 'libxslt' 'icu') -options=('!libtool') -source=("http://ftp.indexdata.dk/pub/$pkgname/$pkgname-$pkgver.tar.gz") -md5sums=('d4b94fc70bfc105fc034c4b51b7b5cae') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - ./configure --prefix=/usr \ - --enable-shared=yaz \ - --with-openssl=/usr - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - - make DESTDIR="$pkgdir/" install - - install -Dm644 LICENSE \ - "$pkgdir/usr/share/licenses/$pkgname/LICENSE" -} - -# vim:set ts=2 sw=2 et: diff --git a/community/hardinfo/ChangeLog b/community/hardinfo/ChangeLog deleted file mode 100644 index faf242a7b..000000000 --- a/community/hardinfo/ChangeLog +++ /dev/null @@ -1,20 +0,0 @@ -2009-04-06 Eric Belanger - - * hardinfo 0.5.1-1 - * Upstream update - -2009-03-29 Eric Belanger - - * hardinfo 0.5c-1 - * Upstream update - -2008-08-13 Eric Belanger - - * hardinfo 0.4.2.3-3 - * Rebuilt against gnutls 2.4.1 - -2008-04-06 Eric Belanger - - * hardinfo 0.4.2.3-2 - * Rebuilt against libsoup 2.4 - * Added ChangeLog diff --git a/community/hardinfo/PKGBUILD b/community/hardinfo/PKGBUILD deleted file mode 100644 index 36795a8c1..000000000 --- a/community/hardinfo/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 17993 2010-05-29 04:49:43Z ebelanger $ -# Maintainer: Eric Belanger - -pkgname=hardinfo -pkgver=0.5.1 -pkgrel=2 -pkgdesc="A system information and benchmark tool." -arch=('i686' 'x86_64') -url="http://hardinfo.berlios.de/wiki/index.php/Main_Page" -license=('GPL2') -depends=('gtk2' 'libsoup' 'gnutls') -options=('!emptydirs') -source=(http://download.berlios.de/hardinfo/${pkgname}-${pkgver}.tar.bz2 \ - fixsensors.patch hardinfo.distro) -md5sums=('6fb38992e140f2fab16518ae1f38e188' '05c212db07b9f152cdea052ff7bb28fa'\ - 'ab8a557d10f74bec5c94ed6cae34729c') -sha1sums=('983f0445aa60e02156bc5a5eaedeffb30b8e4d64' 'd2151dce76dca238102937d0e15541f172bca530'\ - '4c31cbbfbdeb48593641ff600c8d4fb7bda2b01c') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 < ../fixsensors.patch || return 1 - sed -i 's|/usr/lib64|/usr/lib|' configure || return 1 - ./configure --prefix=/usr || return 1 - sed -i 's|lib64|lib|' binreloc.c || return 1 - sed -i 's|/sbin/lsmod|/bin/lsmod|g' arch/linux/{parisc,ppc,m68k,x86,common,mips,sparc,x86_64}/modules.h || return 1 - sed -i 's|/sbin/lsmod|/bin/lsmod|g' arch/this/modules.h || return 1 - sed -i 's|{ DB_PREFIX "debian_version", "deb" },|{ DB_PREFIX "hardinfo.distro", "arch" },{ DB_PREFIX "debian_version", "deb" },|' computer.h || return 1 - make || return 1 -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 - install -D -m644 ../hardinfo.distro "${pkgdir}/etc/hardinfo.distro" || return 1 -} diff --git a/community/hardinfo/fixsensors.patch b/community/hardinfo/fixsensors.patch deleted file mode 100644 index 812c29458..000000000 --- a/community/hardinfo/fixsensors.patch +++ /dev/null @@ -1,13 +0,0 @@ - diff -upNr hardinfo-0.4.2.2.orign/util.c hardinfo-0.4.2.2/util.c ---- hardinfo-0.4.2.2.orign/util.c 2007-07-20 16:45:08.000000000 +0200 -+++ hardinfo-0.4.2.2/util.c 2007-07-26 10:15:32.000000000 +0200 -@@ -996,7 +996,8 @@ gchar *h_strdup_cprintf(const gchar * fo - if (source) { - retn = g_strconcat(source, buffer, NULL); - g_free(buffer); -- g_free(source); -+ if(strlen(source)) -+ g_free(source); - } else { - retn = buffer; - } diff --git a/community/hardinfo/hardinfo.distro b/community/hardinfo/hardinfo.distro deleted file mode 100644 index 850183eeb..000000000 --- a/community/hardinfo/hardinfo.distro +++ /dev/null @@ -1 +0,0 @@ -Arch Linux diff --git a/community/luxrender/libpng.patch b/community/luxrender/libpng.patch deleted file mode 100644 index 71700a7d2..000000000 --- a/community/luxrender/libpng.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -rupN lux-36533b0843bd/core/cimg.h lux-fixed/core/cimg.h ---- lux-36533b0843bd/core/external/cimg.h 2009-12-19 10:39:59.000000000 +0100 -+++ lux-fixed/core/external/cimg.h 2010-01-22 11:38:06.651814854 +0100 -@@ -25679,7 +25679,7 @@ namespace cimg_library { - png_read_info(png_ptr,info_ptr); - png_uint_32 W, H; - int bit_depth, color_type, interlace_type; -- png_get_IHDR(png_ptr,info_ptr,&W,&H,&bit_depth,&color_type,&interlace_type,int_p_NULL,int_p_NULL); -+ png_get_IHDR(png_ptr,info_ptr,&W,&H,&bit_depth,&color_type,&interlace_type,(int *) NULL,(int *) NULL); - int new_bit_depth = bit_depth; - int new_color_type = color_type; - -@@ -25690,7 +25690,7 @@ namespace cimg_library { - new_bit_depth = 8; - } - if (new_color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8){ -- png_set_gray_1_2_4_to_8(png_ptr); -+ png_set_expand_gray_1_2_4_to_8(png_ptr); - new_bit_depth = 8; - } - if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) diff --git a/community/sword/curl_7.20.patch b/community/sword/curl_7.20.patch deleted file mode 100644 index 88763188d..000000000 --- a/community/sword/curl_7.20.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- src/mgr/curlftpt.cpp (revision 2505) -+++ src/mgr/curlftpt.cpp (revision 2506) -@@ -177,6 +177,9 @@ - res = curl_easy_perform(session); - SWLog::getSystemLog()->logDebug("***** Finished performing curl easy action. \n"); - -+ // it seems CURL tries to use this option data later for some reason, so we unset here -+ curl_easy_setopt(session, CURLOPT_PROGRESSDATA, (void*)NULL); -+ - if(CURLE_OK != res) { - retVal = -1; - } diff --git a/community/zziplib/PKGBUILD b/community/zziplib/PKGBUILD deleted file mode 100644 index 70821a8c0..000000000 --- a/community/zziplib/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 46490 2011-05-07 21:04:10Z ebelanger $ -# Maintainer: -# Contributor: Daniel J Griffiths -# Contributor: Roman Kyrylych - -pkgname=zziplib -pkgver=0.13.60 -pkgrel=1 -pkgdesc="A lightweight library that offers the ability to easily extract data from files archived in a single zip file" -arch=('i686' 'x86_64') -url="http://zziplib.sourceforge.net" -license=('LGPL' 'MPL') -depends=('zlib') -makedepends=('python2') -options=('!libtool') -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2 zziplib-0.13.60-ldflags.patch) -md5sums=('54a6aa53262483a4d54f7c59f0a7258b' - 'e585052f884525a338ca341b5d2957dc') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - export PYTHON=/usr/bin/python2 - patch -p1 -i ../zziplib-0.13.60-ldflags.patch - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - -#fix permission - chmod -s "${pkgdir}/usr/share/man/man3" - chmod 644 "${pkgdir}"/usr/share/man/man3/* - chown -R root:root "${pkgdir}/usr/share/man/man3" -} diff --git a/community/zziplib/zziplib-0.13.60-ldflags.patch b/community/zziplib/zziplib-0.13.60-ldflags.patch deleted file mode 100644 index 3c95ff465..000000000 --- a/community/zziplib/zziplib-0.13.60-ldflags.patch +++ /dev/null @@ -1,14 +0,0 @@ -https://sourceforge.net/tracker/?func=detail&aid=3175466&group_id=6389&atid=306389 -https://bugs.gentoo.org/354051 - ---- a/configure -+++ b/configure -@@ -292,7 +292,7 @@ - # --------------------------------------------------------------- - AC_MSG_CHECKING([link options]) - ZZIPLIB_LDFLAGS="" --test ".$can_build_shared" != ".no" && ZZIPLIB_LDFLAGS="--export-dynamic" -+test ".$can_build_shared" != ".no" && ZZIPLIB_LDFLAGS="-export-dynamic" - RESOLVES=" # " - case "$host_os" in mingw*) - ZZIPLIB_LDFLAGS="-no-undefined -export-all-symbols -mconsole" diff --git a/core/net-tools/nisdomainname.conf.d b/core/net-tools/nisdomainname.conf.d deleted file mode 100644 index 6033ecf1c..000000000 --- a/core/net-tools/nisdomainname.conf.d +++ /dev/null @@ -1,3 +0,0 @@ -# Set your NIS domain name here -NISDOMAINNAME="" - diff --git a/core/rp-pppoe/PKGBUILD b/core/rp-pppoe/PKGBUILD deleted file mode 100644 index 3a23870da..000000000 --- a/core/rp-pppoe/PKGBUILD +++ /dev/null @@ -1,39 +0,0 @@ -# $Id: PKGBUILD 119995 2011-04-18 07:09:47Z daniel $ -# Maintainer: Daniel Isenmann -# Contributor: orelien - -pkgname=rp-pppoe -pkgver=3.10 -pkgrel=6 -pkgdesc="Roaring Penguin's Point-to-Point Protocol over Ethernet client" -arch=('i686' 'x86_64') -url="http://www.roaringpenguin.com/pppoe/" -license=('GPL') -depends=('ppp>=2.4.5' 'sh') -options=('!makeflags') -backup=(etc/ppp/pppoe.conf etc/ppp/firewall-standalone etc/ppp/firewall-masq etc/ppp/pppoe-server-options) -source=(http://www.roaringpenguin.com/files/download/rp-pppoe-$pkgver.tar.gz adsl) -install=rp-pppoe.install -md5sums=('d58a13cc4185bca6121a606ff456dec0' - 'adace1ad441aa88dcb3db52fb7f9c97f') - -build() { - cd $srcdir/$pkgname-$pkgver/src - ./configure --prefix=/usr --enable-plugin - make PLUGIN_DIR="/usr/lib/rp-pppoe" || return 1 -} - -package() { - cd $srcdir/$pkgname-$pkgver/src - make DESTDIR=$pkgdir install - - #moving .so files to /usr/lib according to FS#13876 - mkdir -p ${pkgdir}/usr/lib/rp-pppoe - mv ${pkgdir}/etc/ppp/plugins/rp-pppoe.so ${pkgdir}/usr/lib/rp-pppoe/ - #not necessary after moving the plugin - rm -rf ${pkgdir}/etc/ppp/plugins - #changing config to the new path - #sed -i 's/LINUX_PLUGIN=/LINUX_PLUGIN=\/usr\/lib\/rp-pppoe\/rp-pppoe.so/g' ${pkgdir}/etc/ppp/pppoe.conf - - install -Dm755 $srcdir/adsl $pkgdir/etc/rc.d/adsl -} diff --git a/core/rp-pppoe/adsl b/core/rp-pppoe/adsl deleted file mode 100755 index 33bd91839..000000000 --- a/core/rp-pppoe/adsl +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -case "$1" in - start) - stat_busy "Starting ADSL Connection" - /usr/sbin/pppoe-start &>/dev/null - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon adsl - stat_done - fi - ;; - stop) - stat_busy "Stopping ADSL Connection" - /usr/sbin/pppoe-stop &>/dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon adsl - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/core/rp-pppoe/rp-pppoe.install b/core/rp-pppoe/rp-pppoe.install deleted file mode 100644 index 1d4bccce2..000000000 --- a/core/rp-pppoe/rp-pppoe.install +++ /dev/null @@ -1,12 +0,0 @@ -#arg 1: the new package version -post_install() { -echo ">>> The kernel-mode plugin has a new place." -echo ">>> It's now located under /usr/lib/rp-pppoe/rp-pppoe.so" -echo ">>> Change LINUX_PLUGIN to the new path in your /etc/ppp/pppoe.conf" -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} diff --git a/core/udev/80-drivers.rules b/core/udev/80-drivers.rules deleted file mode 100644 index 56ac06cb4..000000000 --- a/core/udev/80-drivers.rules +++ /dev/null @@ -1,14 +0,0 @@ -# do not edit this file, it will be overwritten on update - -ACTION=="remove", GOTO="drivers_end" - -DRIVER!="?*", ENV{MODALIAS}=="?*", RUN+="/lib/udev/load-modules.sh $env{MODALIAS}" -SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="SD", RUN+="/lib/udev/load-modules.sh tifm_sd" -SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="MS", RUN+="/lib/udev/load-modules.sh tifm_ms" -SUBSYSTEM=="memstick", RUN+="/lib/udev/load-modules.sh ms_block" -SUBSYSTEM=="memstick", RUN+="/lib/udev/load-modules.sh mspro_block" -SUBSYSTEM=="i2o", RUN+="/lib/udev/load-modules.sh i2o_block" -SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST!="[module/sg]", RUN+="/lib/udev/load-modules.sh sg" -SUBSYSTEM=="module", KERNEL=="parport_pc", RUN+="/lib/udev/load-modules.sh ppdev" - -LABEL="drivers_end" diff --git a/core/udev/load-modules.sh b/core/udev/load-modules.sh deleted file mode 100755 index 1e2af913e..000000000 --- a/core/udev/load-modules.sh +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/bash -# Implement blacklisting for udev-loaded modules - -[ $# -ne 1 ] && exit 1 - -. /etc/rc.conf - -# grab modules from rc.conf -BLACKLIST="${MOD_BLACKLIST[@]}" -MODPROBE="/sbin/modprobe" -LOGGER="/usr/bin/logger" -RESOLVEALIAS="${MODPROBE} --resolve-alias" -USEBLACKLIST="--use-blacklist" - -if [ -f /proc/cmdline ]; then - for cmd in $(cat /proc/cmdline); do - case $cmd in - disablemodules=*) eval $cmd ;; - load_modules=off) exit ;; - esac - done - #parse cmdline entries of the form "disablemodules=x,y,z" - if [ -n "$disablemodules" ]; then - BLACKLIST="$BLACKLIST $(echo $disablemodules | sed 's|,| |g')" - fi -fi - -#MODULES entries in rc.conf that begin with ! are blacklisted -for mod in ${MODULES[@]}; do - if [ "${mod}" != "${mod#!}" ]; then - BLACKLIST="$BLACKLIST ${mod#!}" - fi -done - -if [ "$MOD_AUTOLOAD" = "yes" -o "$MOD_AUTOLOAD" = "YES" ]; then - if [ -n "${BLACKLIST}" ]; then - # If an alias name is on the blacklist, load no modules for this device - if echo "${BLACKLIST}" | /bin/grep -q -e " $1 " -e "^$1 " -e " $1\$"; then - $LOGGER -p info -t "$(basename $0)" "Not loading module alias '$1' because it is blacklisted" - exit - fi - #sanitize the blacklist - BLACKLIST="$(echo "$BLACKLIST" | sed -e 's|-|_|g')" - # Try to find all modules for the alias - mods=$($RESOLVEALIAS $1) - # If no modules could be found, try if the alias name is a module name - # In that case, omit the --use-blacklist parameter to imitate normal modprobe behaviour - [ -z "${mods}" ] && $MODPROBE -qni $1 && mods="$1" && USEBLACKLIST="" - [ -z "${mods}" ] && $LOGGER -p local0.debug -t "$(basename $0)" "'$1' is not a valid module or alias name" - for mod in ${mods}; do - # Find the module and all its dependencies - deps="$($MODPROBE -i --show-depends ${mod})" - [ $? -ne 0 ] && continue - - #sanitize the module names - deps="$(echo "$deps" | sed \ - -e "s#^insmod /lib.*/\(.*\)\.ko.*#\1#g" \ - -e 's|-|_|g')" - - # If the module or any of its dependencies is blacklisted, don't load it - for dep in $deps; do - if echo "${BLACKLIST}" | /bin/grep -q -e " ${dep} " -e "^${dep} " -e " ${dep}\$"; then - if [ "${dep}" = "${mod}" ]; then - $LOGGER -p local0.info -t "$(basename $0)" "Not loading module '${mod}' for alias '$1' because it is blacklisted" - else - $LOGGER -p local0.info -t "$(basename $0)" "Not loading module '${mod}' for alias '$1' because its dependency '${dep}' is blacklisted" - fi - continue 2 - fi - done - # modprobe usually uses the "blacklist" statements from modprobe.conf only to blacklist all aliases - # of a module, but not the module itself. We use --use-blacklist here so that modprobe also blacklists - # module names if we resolved alias names manually above - $MODPROBE $USEBLACKLIST ${mod} - done - else - $MODPROBE $USEBLACKLIST $1 - fi -fi -# vim: set et ts=4: diff --git a/core/udev/static-audio-nodes-permissions.patch b/core/udev/static-audio-nodes-permissions.patch deleted file mode 100644 index b1fc4f935..000000000 --- a/core/udev/static-audio-nodes-permissions.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 3e227830ad6494700e18ae03297e8fb833ff26bf Mon Sep 17 00:00:00 2001 -From: Kay Sievers -Date: Fri, 27 May 2011 02:50:29 +0200 -Subject: [PATCH] rules: apply 'audio' group of the static snd/{seq,timer} - nodes - ---- - rules/rules.d/50-udev-default.rules | 3 ++- - 1 files changed, 2 insertions(+), 1 deletions(-) - -diff --git a/rules/rules.d/50-udev-default.rules b/rules/rules.d/50-udev-default.rules -index cd745ef..cacb533 100644 ---- a/rules/rules.d/50-udev-default.rules -+++ b/rules/rules.d/50-udev-default.rules -@@ -38,7 +38,8 @@ SUBSYSTEM=="graphics", GROUP="video" - SUBSYSTEM=="drm", GROUP="video" - - # sound --SUBSYSTEM=="sound", GROUP="audio" -+SUBSYSTEM=="sound", GROUP="audio", \ -+ OPTIONS+="static_node=snd/seq", OPTIONS+="static_node=snd/timer" - - # DVB (video) - SUBSYSTEM=="dvb", GROUP="video" --- -1.7.5.3 - diff --git a/extra/avahi/ChangeLog b/extra/avahi/ChangeLog deleted file mode 100644 index 57984a3b2..000000000 --- a/extra/avahi/ChangeLog +++ /dev/null @@ -1,17 +0,0 @@ - -2009-04-23 Douglas Soares de Andrade - - * Updated for i686: 0.6.25 - -2009-03-21 Eric Belanger - - * Added optdepends for avahi-discover (close FS#11250) - -2009-01-04 Douglas Soares de Andrade - - * Updated for i686: 0.6.24 - -2008-07-22 Douglas Soares de Andrade - - * Updated for i686: 0.6.23 - diff --git a/extra/avidemux/2.5.4_audioDevice.patch b/extra/avidemux/2.5.4_audioDevice.patch deleted file mode 100644 index 9f1dd1e84..000000000 --- a/extra/avidemux/2.5.4_audioDevice.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- cmake/config.h.cmake.orig 2010-10-29 12:51:05.000000000 -0400 -+++ cmake/config.h.cmake 2010-10-29 12:51:48.000000000 -0400 -@@ -76,9 +76,7 @@ - /* use Nvwa memory leak detector */ - #cmakedefine FIND_LEAKS - --#if defined(OSS_SUPPORT) || defined (USE_ARTS) || defined(USE_SDL) || defined(__APPLE__) || defined(__WIN32) || defined(ALSA_SUPPORT) - #define HAVE_AUDIO --#endif - - #define HAVE_ENCODER - diff --git a/extra/avidemux/x264.patch b/extra/avidemux/x264.patch deleted file mode 100644 index 7200153d1..000000000 --- a/extra/avidemux/x264.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Nur avidemux_2.5.4.orig/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp avidemux_2.5.4/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp ---- avidemux_2.5.4.orig/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp 2010-10-10 06:45:42.000000000 -0700 -+++ avidemux_2.5.4/plugins/ADM_videoEncoder/ADM_vidEnc_x264/x264Options.cpp 2011-01-16 07:16:48.283341102 -0800 -@@ -1386,7 +1386,7 @@ - case X264_WEIGHTP_NONE: - strcpy((char*)xmlBuffer, "none"); - break; -- case X264_WEIGHTP_BLIND: -+ case X264_WEIGHTP_SIMPLE: - strcpy((char*)xmlBuffer, "blind"); - break; - case X264_WEIGHTP_SMART: -@@ -1896,7 +1896,7 @@ - int weightedPredPFrames = X264_WEIGHTP_NONE; - - if (strcmp(content, "blind") == 0) -- weightedPredPFrames = X264_WEIGHTP_BLIND; -+ weightedPredPFrames = X264_WEIGHTP_SIMPLE; - else if (strcmp(content, "smart") == 0) - weightedPredPFrames = X264_WEIGHTP_SMART; - diff --git a/extra/clamav/clamav b/extra/clamav/clamav deleted file mode 100644 index 8e9c6afa9..000000000 --- a/extra/clamav/clamav +++ /dev/null @@ -1,72 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -# source application-specific settings -[ -f /etc/conf.d/clamav ] && . /etc/conf.d/clamav - -PID_FC=`pidof -o %PPID /usr/bin/freshclam` -PID_CD=`pidof -o %PPID /usr/sbin/clamd` - -case "$1" in - start) - # if clamd isn't started first, notifyclamd fails at times - if [ "$START_CLAMD" == "yes" ]; then - stat_busy "Starting ClamD" - [ -z "$PID_CD" ] && /usr/sbin/clamd - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon clamav - stat_done - fi - fi - - # give clamd enough time to start - sleep 1 - - if [ "$START_FRESHCLAM" == "yes" ]; then - stat_busy "Starting FreshClam" - [ -z "$PID_FC" ] && /usr/bin/freshclam -p /var/run/clamav/freshclam.pid -d $FRESHCLAM_OPTS - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon clamav - stat_done - fi - fi - ;; - stop) - if [ "$START_CLAMD" == "yes" ]; then - stat_busy "Stopping ClamD" - [ -n "$PID_CD" ] && kill $PID_CD &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon clamav - stat_done - fi - fi - - if [ "$START_FRESHCLAM" == "yes" ]; then - stat_busy "Stopping FreshClam" - [ -n "$PID_FC" ] && kill $PID_FC &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon clamav - stat_done - fi - fi - ;; - restart) - $0 stop - # will not start if not fully stopped, so sleep - sleep 2 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/extra/clamav/clamav.confd b/extra/clamav/clamav.confd deleted file mode 100644 index 9cd44d9f8..000000000 --- a/extra/clamav/clamav.confd +++ /dev/null @@ -1,8 +0,0 @@ -# clamav startup script config options - -# change these to "yes" to start -START_FRESHCLAM="no" -START_CLAMD="no" - -# Options to pass to freshclam (man freshclam for more info). -FRESHCLAM_OPTS="-c 12" diff --git a/extra/clamav/clamav.install b/extra/clamav/clamav.install deleted file mode 100644 index 9116dc394..000000000 --- a/extra/clamav/clamav.install +++ /dev/null @@ -1,14 +0,0 @@ -post_install() { - getent group clamav &>/dev/null || groupadd -r -g 64 clamav >/dev/null - getent passwd clamav &>/dev/null || useradd -r -u 64 -g clamav -d /dev/null -s /bin/false -c "Clam AntiVirus" clamav >/dev/null - - install -d /var/{log,run}/clamav - chown clamav:root /var/{log,run}/clamav - chown -R clamav:clamav /var/lib/clamav -} - -post_remove() { - getent passwd clamav &>/dev/null && userdel clamav >/dev/null - getent group clamav &>/dev/null && groupdel clamav >/dev/null - return 0 -} diff --git a/extra/clamav/clamav.logrotate b/extra/clamav/clamav.logrotate deleted file mode 100644 index d1dc94dce..000000000 --- a/extra/clamav/clamav.logrotate +++ /dev/null @@ -1,8 +0,0 @@ -/var/log/clamav/clamd.log /var/log/clamav/freshclam.log { - create 644 clamav clamav - sharedscripts - postrotate - /bin/kill -HUP `cat /var/run/clamav/clamd.pid 2>/dev/null` 2> /dev/null || true - /bin/kill -HUP `cat /var/run/clamav/freshclam.pid 2>/dev/null` 2> /dev/null || true - endscript -} diff --git a/extra/gtk3/only_draw_resize_grip_if_its_window_exists.patch b/extra/gtk3/only_draw_resize_grip_if_its_window_exists.patch deleted file mode 100644 index a6514b550..000000000 --- a/extra/gtk3/only_draw_resize_grip_if_its_window_exists.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 847df205ede7f624c2bc4c4498495352cc865423 Mon Sep 17 00:00:00 2001 -From: Benjamin Otte -Date: Mon, 23 May 2011 13:46:59 +0000 -Subject: window: Only draw resize grip if its window exists - -Don't rely on priv->resize_grip_visible as the code comment in the -variable declaration indicates. -This fixes warnings with GtkPlug, which can cause resize_grip_visible to -be TRUE but grid_window to be NULL - running tests/teststatusicon -reproduces this. - -This broke with 0cf31b35eb10cb5bc08048ecdc141c949efec4cc ---- -diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c -index b97418a..b1caa9b 100644 ---- a/gtk/gtkwindow.c -+++ b/gtk/gtkwindow.c -@@ -7304,7 +7304,7 @@ gtk_window_draw (GtkWidget *widget, - if (GTK_WIDGET_CLASS (gtk_window_parent_class)->draw) - ret = GTK_WIDGET_CLASS (gtk_window_parent_class)->draw (widget, cr); - -- if (priv->resize_grip_visible && -+ if (priv->grip_window && - gtk_cairo_should_draw_window (cr, priv->grip_window)) - { - GdkRectangle rect; --- -cgit v0.9 diff --git a/extra/hugin/hugin-gcc46.patch b/extra/hugin/hugin-gcc46.patch deleted file mode 100644 index 98a70ad50..000000000 --- a/extra/hugin/hugin-gcc46.patch +++ /dev/null @@ -1,16 +0,0 @@ - -diff -r 0377a1af6110 -r 1fc6ad6e7c7a src/foreign/vigra/vigra/multi_iterator.hxx ---- a/src/foreign/vigra/vigra/multi_iterator.hxx Mon Jun 25 16:36:21 2007 +0000 -+++ b/src/foreign/vigra/vigra/multi_iterator.hxx Tue Jan 25 21:14:13 2011 +0000 -@@ -41,6 +41,7 @@ - #define VIGRA_MULTI_ITERATOR_HXX - - #include -+#include - #include "tinyvector.hxx" - #include "iteratortags.hxx" - - - - - diff --git a/extra/icedtea-web/fix-man-location.patch b/extra/icedtea-web/fix-man-location.patch deleted file mode 100644 index 8108c7182..000000000 --- a/extra/icedtea-web/fix-man-location.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- Makefile.am 2011-02-02 03:43:25.000000000 +0100 -+++ Makefile.am.new 2011-02-03 14:37:55.556053388 +0100 -@@ -130,8 +130,8 @@ - endif - - install-data-local: -- ${mkinstalldirs} -d $(DESTDIR)$(prefix)/man/man1 -- ${INSTALL_DATA} $(NETX_SRCDIR)/javaws.1 $(DESTDIR)$(prefix)/man/man1 -+ ${mkinstalldirs} -d $(DESTDIR)$(mandir)/man1 -+ ${INSTALL_DATA} $(NETX_SRCDIR)/javaws.1 $(DESTDIR)$(mandir)/man1 - ${INSTALL_DATA} $(NETX_RESOURCE_DIR)/about.jnlp $(DESTDIR)$(prefix)$(JRE_DIR_PREFIX)/lib - if ENABLE_DOCS - ${mkinstalldirs} $(DESTDIR)$(htmldir) diff --git a/extra/icon-naming-utils/PKGBUILD b/extra/icon-naming-utils/PKGBUILD deleted file mode 100644 index 0fcffc493..000000000 --- a/extra/icon-naming-utils/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 33029 2009-04-03 21:35:27Z jgc $ -# Maintainer: Jan de Groot -# Contributor: William Rea - -pkgname=icon-naming-utils -pkgver=0.8.90 -pkgrel=1 -pkgdesc="Maps the new names of icons for Tango to the legacy names used by the GNOME and KDE desktops." -arch=(i686 x86_64) -license=('GPL') -url="http://tango.freedesktop.org/" -depends=('perl-xml-simple') -source=(http://tango.freedesktop.org/releases/${pkgname}-${pkgver}.tar.bz2) -md5sums=('dd8108b56130b9eedc4042df634efa66') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --libexecdir=/usr/lib/icon-naming-utils \ - --localstatedir=/var || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - mv "${pkgdir}/usr/share/pkgconfig" "${pkgdir}/usr/lib/pkgconfig" || return 1 -} diff --git a/extra/libfm/0001-filename-with-spaces-not-supported.patch b/extra/libfm/0001-filename-with-spaces-not-supported.patch deleted file mode 100644 index 568f6dc38..000000000 --- a/extra/libfm/0001-filename-with-spaces-not-supported.patch +++ /dev/null @@ -1,345 +0,0 @@ -From 96fa31c757189c7c5f60d4de4c2df236d2cba0ea Mon Sep 17 00:00:00 2001 -From: Hong Jen Yee (PCMan) -Date: Wed, 20 Oct 2010 06:40:51 +0800 -Subject: [PATCH] Fix #3089625 - Filenames with spaces not supported in copy/paste. - ---- - src/base/fm-file-launcher.c | 2 +- - src/base/fm-folder.c | 6 +- - src/base/fm-path.c | 2 +- - src/gtk/fm-folder-view.c | 130 +++++++++++++++++++++--------------------- - src/gtk/fm-gtk-utils.c | 10 +-- - src/gtk/fm-path-entry.c | 2 +- - 6 files changed, 75 insertions(+), 77 deletions(-) - -diff --git a/src/base/fm-file-launcher.c b/src/base/fm-file-launcher.c -index 3857c33..c356249 100644 ---- a/src/base/fm-file-launcher.c -+++ b/src/base/fm-file-launcher.c -@@ -91,7 +91,7 @@ gboolean fm_launch_desktop_entry(GAppLaunchContext* ctx, const char* file_or_id, - * e.g: If this URL points to the another desktop entry file, and it - * points to yet another desktop entry file, this can create a - * infinite loop. This is a extremely rare case. */ -- FmPath* path = fm_path_new(url); -+ FmPath* path = fm_path_new_for_uri(url); - _uris = g_list_prepend(_uris, path); - ret = fm_launch_paths(ctx, _uris, launcher, user_data); - g_list_free(_uris); -diff --git a/src/base/fm-folder.c b/src/base/fm-folder.c -index ccbb3cc..3474937 100644 ---- a/src/base/fm-folder.c -+++ b/src/base/fm-folder.c -@@ -334,8 +334,8 @@ static void on_job_finished(FmDirListJob* job, FmFolder* folder) - - static FmJobErrorAction on_job_err(FmDirListJob* job, GError* err, FmJobErrorSeverity severity, FmFolder* folder) - { -- FmJobErrorAction ret; -- g_signal_emit(folder, signals[ERROR], 0, err, severity, &ret); -+ FmJobErrorAction ret; -+ g_signal_emit(folder, signals[ERROR], 0, err, severity, &ret); - return ret; - } - -@@ -470,7 +470,7 @@ FmFolder* fm_folder_get_for_path(FmPath* path) - - FmFolder* fm_folder_get_for_path_name(const char* path) - { -- FmPath* fm_path = fm_path_new(path); -+ FmPath* fm_path = fm_path_new_for_str(path); - FmFolder* folder = fm_folder_get_internal(fm_path, NULL); - fm_path_unref(fm_path); - return folder; -diff --git a/src/base/fm-path.c b/src/base/fm-path.c -index ca62256..8b31de2 100644 ---- a/src/base/fm-path.c -+++ b/src/base/fm-path.c -@@ -926,7 +926,7 @@ FmPathList* fm_path_list_new_from_uris(const char** uris) - FmPathList* pl = fm_path_list_new(); - for(uri = uris; *uri; ++uri) - { -- FmPath* path = fm_path_new(*uri); -+ FmPath* path = fm_path_new_for_uri(*uri); - fm_list_push_tail_noref(pl, path); - } - return pl; -diff --git a/src/gtk/fm-folder-view.c b/src/gtk/fm-folder-view.c -index fab88c0..9943015 100644 ---- a/src/gtk/fm-folder-view.c -+++ b/src/gtk/fm-folder-view.c -@@ -41,8 +41,8 @@ - - enum{ - CHDIR, -- LOADED, -- STATUS, -+ LOADED, -+ STATUS, - CLICKED, - SEL_CHANGED, - SORT_CHANGED, -@@ -82,7 +82,7 @@ static void fm_folder_view_class_init(FmFolderViewClass *klass) - { - GObjectClass *g_object_class; - GtkWidgetClass *widget_class; -- FmFolderViewClass *fv_class; -+ FmFolderViewClass *fv_class; - g_object_class = G_OBJECT_CLASS(klass); - g_object_class->finalize = fm_folder_view_finalize; - widget_class = GTK_WIDGET_CLASS(klass); -@@ -165,19 +165,19 @@ gboolean on_folder_view_focus_in(GtkWidget* widget, GdkEventFocus* evt) - - void on_chdir(FmFolderView* fv, FmPath* dir_path) - { -- GtkWidget* toplevel = gtk_widget_get_toplevel((GtkWidget*)fv); -- if(GTK_WIDGET_REALIZED(toplevel)) -- { -- GdkCursor* cursor = gdk_cursor_new(GDK_WATCH); -- gdk_window_set_cursor(toplevel->window, cursor); -- } -+ GtkWidget* toplevel = gtk_widget_get_toplevel((GtkWidget*)fv); -+ if(GTK_WIDGET_REALIZED(toplevel)) -+ { -+ GdkCursor* cursor = gdk_cursor_new(GDK_WATCH); -+ gdk_window_set_cursor(toplevel->window, cursor); -+ } - } - - void on_loaded(FmFolderView* fv, FmPath* dir_path) - { -- GtkWidget* toplevel = gtk_widget_get_toplevel((GtkWidget*)fv); -- if(GTK_WIDGET_REALIZED(toplevel)) -- gdk_window_set_cursor(toplevel->window, NULL); -+ GtkWidget* toplevel = gtk_widget_get_toplevel((GtkWidget*)fv); -+ if(GTK_WIDGET_REALIZED(toplevel)) -+ gdk_window_set_cursor(toplevel->window, NULL); - } - - void on_status(FmFolderView* fv, const char* msg) -@@ -187,15 +187,15 @@ void on_status(FmFolderView* fv, const char* msg) - - void on_model_loaded(FmFolderModel* model, FmFolderView* fv) - { -- FmFolder* folder = model->dir; -- char* msg; -- /* FIXME: prevent direct access to data members */ -- g_signal_emit(fv, signals[LOADED], 0, folder->dir_path); -+ FmFolder* folder = model->dir; -+ char* msg; -+ /* FIXME: prevent direct access to data members */ -+ g_signal_emit(fv, signals[LOADED], 0, folder->dir_path); - - /* FIXME: show number of hidden files and available disk spaces. */ -- msg = g_strdup_printf("%d files are listed.", fm_list_get_length(folder->files) ); -- g_signal_emit(fv, signals[STATUS], 0, msg); -- g_free(msg); -+ msg = g_strdup_printf("%d files are listed.", fm_list_get_length(folder->files) ); -+ g_signal_emit(fv, signals[STATUS], 0, msg); -+ g_free(msg); - } - - FmJobErrorAction on_folder_err(FmFolder* folder, GError* err, FmJobErrorSeverity severity, FmFolderView* fv) -@@ -326,8 +326,8 @@ static void fm_folder_view_finalize(GObject *object) - if( self->model ) - g_object_unref(self->model); - } -- g_object_unref(self->dnd_src); -- g_object_unref(self->dnd_dest); -+ g_object_unref(self->dnd_src); -+ g_object_unref(self->dnd_dest); - - if(self->cwd) - fm_path_unref(self->cwd); -@@ -715,15 +715,15 @@ void fm_folder_view_set_mode(FmFolderView* fv, FmFolderViewMode mode) - - /* FIXME: maybe calling set_icon_size here is a good idea */ - -- gtk_drag_source_set(fv->view, GDK_BUTTON1_MASK, -- fm_default_dnd_src_targets, N_FM_DND_SRC_DEFAULT_TARGETS, -- GDK_ACTION_COPY|GDK_ACTION_MOVE|GDK_ACTION_LINK|GDK_ACTION_ASK); -+ gtk_drag_source_set(fv->view, GDK_BUTTON1_MASK, -+ fm_default_dnd_src_targets, N_FM_DND_SRC_DEFAULT_TARGETS, -+ GDK_ACTION_COPY|GDK_ACTION_MOVE|GDK_ACTION_LINK|GDK_ACTION_ASK); - fm_dnd_src_set_widget(fv->dnd_src, fv->view); - -- gtk_drag_dest_set(fv->view, 0, -- fm_default_dnd_dest_targets, N_FM_DND_DEST_DEFAULT_TARGETS, -- GDK_ACTION_COPY|GDK_ACTION_MOVE|GDK_ACTION_LINK|GDK_ACTION_ASK); -- fm_dnd_dest_set_widget(fv->dnd_dest, fv->view); -+ gtk_drag_dest_set(fv->view, 0, -+ fm_default_dnd_dest_targets, N_FM_DND_DEST_DEFAULT_TARGETS, -+ GDK_ACTION_COPY|GDK_ACTION_MOVE|GDK_ACTION_LINK|GDK_ACTION_ASK); -+ fm_dnd_dest_set_widget(fv->dnd_dest, fv->view); - g_signal_connect_after(fv->view, "drag-motion", G_CALLBACK(on_drag_motion), fv); - g_signal_connect(fv->view, "drag-leave", G_CALLBACK(on_drag_leave), fv); - g_signal_connect(fv->view, "drag-drop", G_CALLBACK(on_drag_drop), fv); -@@ -739,9 +739,9 @@ void fm_folder_view_set_mode(FmFolderView* fv, FmFolderViewMode mode) - gtk_widget_grab_focus(fv->view); - } - else -- { -+ { - /* g_debug("same mode"); */ -- } -+ } - } - - FmFolderViewMode fm_folder_view_get_mode(FmFolderView* fv) -@@ -785,7 +785,7 @@ void fm_folder_view_sort(FmFolderView* fv, GtkSortType type, int by) - fv->sort_by = by; - if(fv->model) - gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(fv->model), -- fv->sort_by, fv->sort_type); -+ fv->sort_by, fv->sort_type); - } - - GtkSortType fm_folder_view_get_sort_type(FmFolderView* fv) -@@ -815,18 +815,18 @@ gboolean fm_folder_view_get_show_hidden(FmFolderView* fv) - - gboolean fm_folder_view_chdir_by_name(FmFolderView* fv, const char* path_str) - { -- gboolean ret; -- FmPath* path; -+ gboolean ret; -+ FmPath* path; - - if( G_UNLIKELY( !path_str ) ) - return FALSE; - -- path = fm_path_new(path_str); -- if(!path) /* might be a malformed path */ -- return FALSE; -- ret = fm_folder_view_chdir(fv, path); -- fm_path_unref(path); -- return ret; -+ path = fm_path_new_for_str(path_str); -+ if(!path) /* might be a malformed path */ -+ return FALSE; -+ ret = fm_folder_view_chdir(fv, path); -+ fm_path_unref(path); -+ return ret; - } - - static void on_folder_unmounted(FmFolder* folder, FmFolderView* fv) -@@ -912,10 +912,10 @@ gboolean fm_folder_view_chdir(FmFolderView* fv, FmPath* path) - } - } - -- /* FIXME: the signal handler should be able to cancel the loading. */ -- g_signal_emit(fv, signals[CHDIR], 0, path); -- if(fv->cwd) -- fm_path_unref(fv->cwd); -+ /* FIXME: the signal handler should be able to cancel the loading. */ -+ g_signal_emit(fv, signals[CHDIR], 0, path); -+ if(fv->cwd) -+ fm_path_unref(fv->cwd); - fv->cwd = fm_path_ref(path); - - fv->folder = folder = fm_folder_get_for_path(path); -@@ -1041,12 +1041,12 @@ gboolean on_btn_pressed(GtkWidget* view, GdkEventButton* evt, FmFolderView* fv) - if(!fv->model) - return FALSE; - -- /* FIXME: handle single click activation */ -+ /* FIXME: handle single click activation */ - if( evt->type == GDK_BUTTON_PRESS ) - { -- /* special handling for ExoIconView */ -- if(evt->button != 1) -- { -+ /* special handling for ExoIconView */ -+ if(evt->button != 1) -+ { - if(fv->mode==FM_FV_ICON_VIEW || fv->mode==FM_FV_COMPACT_VIEW || fv->mode==FM_FV_THUMBNAIL_VIEW) - { - /* select the item on right click for ExoIconView */ -@@ -1089,27 +1089,27 @@ gboolean on_btn_pressed(GtkWidget* view, GdkEventButton* evt, FmFolderView* fv) - gtk_tree_path_free(tp); - } - } -- } -+ } - -- if(evt->button == 2) /* middle click */ -- type = FM_FV_MIDDLE_CLICK; -- else if(evt->button == 3) /* right click */ -- type = FM_FV_CONTEXT_MENU; -+ if(evt->button == 2) /* middle click */ -+ type = FM_FV_MIDDLE_CLICK; -+ else if(evt->button == 3) /* right click */ -+ type = FM_FV_CONTEXT_MENU; - } - -- if( type != FM_FV_CLICK_NONE ) -- { -- sels = fm_folder_view_get_selected_tree_paths(fv); -- if( sels || type == FM_FV_CONTEXT_MENU ) -- { -- item_clicked(fv, sels ? sels->data : NULL, type); -- if(sels) -- { -- g_list_foreach(sels, (GFunc)gtk_tree_path_free, NULL); -- g_list_free(sels); -- } -- } -- } -+ if( type != FM_FV_CLICK_NONE ) -+ { -+ sels = fm_folder_view_get_selected_tree_paths(fv); -+ if( sels || type == FM_FV_CONTEXT_MENU ) -+ { -+ item_clicked(fv, sels ? sels->data : NULL, type); -+ if(sels) -+ { -+ g_list_foreach(sels, (GFunc)gtk_tree_path_free, NULL); -+ g_list_free(sels); -+ } -+ } -+ } - return FALSE; - } - -diff --git a/src/gtk/fm-gtk-utils.c b/src/gtk/fm-gtk-utils.c -index 23b6f33..07df7d5 100644 ---- a/src/gtk/fm-gtk-utils.c -+++ b/src/gtk/fm-gtk-utils.c -@@ -149,7 +149,7 @@ FmPath* fm_get_user_input_path(GtkWindow* parent, const char* title, const char* - } - - str = _fm_user_input_dialog_run( dlg, GTK_ENTRY( entry ) ); -- path = fm_path_new(str); -+ path = fm_path_new_for_str(str); - - g_free(path_str); - g_free(str); -@@ -261,11 +261,9 @@ FmPath* fm_select_folder(GtkWindow* parent) - GTK_RESPONSE_OK, NULL); - if( gtk_dialog_run((GtkDialog*)chooser) == GTK_RESPONSE_OK ) - { -- char* file = gtk_file_chooser_get_filename(chooser); -- if(!file) -- file = gtk_file_chooser_get_uri(chooser); -- path = fm_path_new(file); -- g_free(file); -+ GFile* file = gtk_file_chooser_get_file(chooser); -+ path = fm_path_new_for_gfile(file); -+ g_object_unref(file); - } - else - path = NULL; -diff --git a/src/gtk/fm-path-entry.c b/src/gtk/fm-path-entry.c -index a57b58d..af60d03 100644 ---- a/src/gtk/fm-path-entry.c -+++ b/src/gtk/fm-path-entry.c -@@ -163,7 +163,7 @@ static void fm_path_entry_changed(GtkEditable *editable) - if( !fm_path_equal_str(priv->path, original_key, key_dir_len) ) - { - gchar* new_path = g_path_get_dirname(original_key); -- FmPath *new_fm_path = fm_path_new(new_path); -+ FmPath *new_fm_path = fm_path_new_for_str(new_path); - g_free(new_path); - if( new_fm_path != NULL ) - { --- -1.7.0.1 - - diff --git a/extra/libfm/PKGBUILD b/extra/libfm/PKGBUILD deleted file mode 100644 index ea61503c9..000000000 --- a/extra/libfm/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 119892 2011-04-16 12:10:54Z angvp $ -# Maintainer: Angel Velasquez -# Maintainer: Juergen Hoetzel -pkgname=libfm -pkgver=0.1.14 -pkgrel=5 -pkgdesc="the core of next generation file manager PCManFM" -url="http://pcmanfm.sourceforge.net/" -arch=('i686' 'x86_64') -license=('GPL') -groups=('lxde') -options=('!libtool') -install=libfm.install -depends=('gtk2' 'menu-cache' 'shared-mime-info' 'udisks') -source=(http://downloads.sourceforge.net/pcmanfm/$pkgname-$pkgver.tar.gz - 0001-filename-with-spaces-not-supported.patch) -md5sums=('d55e51dced6bb9ef46665243b079761f' - '22bf07665db6eb82989cc8111ef5c3bf') - -build() { - cd $srcdir/$pkgname-$pkgver - patch -p1 -i $srcdir/0001-filename-with-spaces-not-supported.patch - ./configure --prefix=/usr --sysconfdir=/etc --enable-udisks --with-gnu-ld - make -} - -package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install -} diff --git a/extra/libfm/libfm.install b/extra/libfm/libfm.install deleted file mode 100644 index 076da308e..000000000 --- a/extra/libfm/libfm.install +++ /dev/null @@ -1,15 +0,0 @@ -post_install() { - usr/bin/update-mime-database usr/share/mime > /dev/null - usr/bin/update-desktop-database -q - usr/bin/gio-querymodules usr/lib/gio/modules -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} - - diff --git a/extra/libwebkit/gcc46.patch b/extra/libwebkit/gcc46.patch deleted file mode 100644 index befd892d4..000000000 --- a/extra/libwebkit/gcc46.patch +++ /dev/null @@ -1,11 +0,0 @@ -Index: trunk/Source/WebCore/dom/make_names.pl -=================================================================== ---- trunk/Source/WebCore/dom/make_names.pl (revision 73989) -+++ trunk/Source/WebCore/dom/make_names.pl (revision 84123) -@@ -66,5 +66,5 @@ - $gccLocation = "/usr/bin/gcc"; - } --my $preprocessor = $gccLocation . " -E -P -x c++"; -+my $preprocessor = $gccLocation . " -E -x c++"; - - GetOptions( diff --git a/extra/lxde-common/PKGBUILD b/extra/lxde-common/PKGBUILD deleted file mode 100644 index 761841bb7..000000000 --- a/extra/lxde-common/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# Maintainer: Juergen Hoetzel -pkgname=lxde-common -pkgver=0.5.0 -pkgrel=3 -pkgdesc="Common files of the LXDE Desktop" -arch=('i686' 'x86_64') -license=('GPL2') -groups=('lxde') -depends=('libx11' 'glib2' 'lxde-icon-theme') -url="http://lxde.org/" -# startlxde is useless without lxsession -makedepends=(automake) -optdepends=(lxsession-lite) -backup=(etc/xdg/lxsession/LXDE/{desktop.conf,autostart}) -source=("http://downloads.sourceforge.net/project/lxde/${pkgname}%20%28default%20config%29/${pkgname}%200.5.0/${pkgname}-0.5.0.tar.gz" "${pkgname}-arch.patch" ${pkgname}-invalid-distfile.patch) -md5sums=('23606ab3d6e1039386d62a4b68b4ffc6' '21657157d9ab377de55deb19a42d68e8'\ - '24938631783683fd98dfd533023e6d4e') - - -build() { - cd "$srcdir/$pkgname-$pkgver" - patch -p1 -i ${srcdir}/${pkgname}-arch.patch - autoreconf - ./configure --sysconfdir=/etc --prefix=/usr - make DESTDIR="$pkgdir" install - install -Dm644 lxde-logout.desktop ${pkgdir}/usr/share/applications/lxde-logout.desktop -} - diff --git a/extra/lxde-common/lxde-common-arch.patch b/extra/lxde-common/lxde-common-arch.patch deleted file mode 100644 index 3aa1a8992..000000000 --- a/extra/lxde-common/lxde-common-arch.patch +++ /dev/null @@ -1,186 +0,0 @@ -diff --git a/Makefile.am b/Makefile.am -index ba4149c..61cf4c5 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -31,9 +31,9 @@ openbox_DATA= \ - openbox/rc.xml \ - openbox/menu.xml - --pcmanfmdir=$(datadir)/lxde/pcmanfm -+pcmanfmdir=$(sysconfdir)/xdg/pcmanfm - pcmanfm_DATA= \ -- pcmanfm/main.lxde -+ pcmanfm/lxde.conf - - EXTRA_DIST = \ - autostart \ -@@ -45,7 +45,7 @@ EXTRA_DIST = \ - openbox/rc.xml.in \ - openbox/menu.xml \ - openbox-lxde.in \ -- pcmanfm/main.lxde.in \ -+ pcmanfm/lxde.conf.in \ - $(lxpanel_DATA) \ - lxpanel/panel.in - -diff --git a/autostart b/autostart -index 17d7b58..d5b6514 100644 ---- a/autostart -+++ b/autostart -@@ -1,3 +1,3 @@ --@xscreensaver -no-splash - @lxpanel --profile LXDE --@pcmanfm -d -+@pcmanfm --desktop --profile lxde -+@xscreensaver -no-splash -diff --git a/configure.ac b/configure.ac -index 3b62903..f90b4c5 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1,5 +1,5 @@ - AC_PREREQ([2.57]) --AC_INIT(lxde-common,[0.5.0], [],lxde-common) -+AC_INIT(lxde-common,[0.5.5], [],lxde-common) - AM_INIT_AUTOMAKE() - dnl AC_PROG_INTLTOOL(, [no-xml]) - dnl AM_MAINTAINER_MODE -@@ -48,7 +48,16 @@ AC_OUTPUT([ - lxpanel/panel - openbox/rc.xml - openbox-lxde -- pcmanfm/main.lxde -+ pcmanfm/lxde.conf - man/Makefile - ]) - -+if test x"$sysconfdir" != x'/etc'; then -+ echo -+ echo -+ echo 'Error: sysconfdir is not /etc.' -+ echo 'Please consider passing --sysconfdir=/etc to configure.'; -+ echo 'Otherwise default config files will be installed to wrong place.' -+ echo -+ echo -+fi -diff --git a/lxpanel/config b/lxpanel/config -index 1911551..cb7f06d 100644 ---- a/lxpanel/config -+++ b/lxpanel/config -@@ -1,4 +1,4 @@ - [Command] - FileManager=pcmanfm %s --Terminal=xterm -e -+Terminal=lxterminal - Logout=lxde-logout -diff --git a/openbox-lxde b/openbox-lxde -old mode 100755 -new mode 100644 -diff --git a/openbox/menu.xml b/openbox/menu.xml -index 78099e6..a7768a5 100644 ---- a/openbox/menu.xml -+++ b/openbox/menu.xml -@@ -25,7 +25,7 @@ - - - yes -- pcmanfm --show-pref 2 -+ pcmanfm --desktop-pref - - - -@@ -43,4 +43,4 @@ - - - -- -\ No newline at end of file -+ -diff --git a/pcmanfm/lxde.conf.in b/pcmanfm/lxde.conf.in -new file mode 100644 -index 0000000..6799e1f ---- /dev/null -+++ b/pcmanfm/lxde.conf.in -@@ -0,0 +1,20 @@ -+[config] -+bm_open_method=0 -+su_cmd=xdg-su -c '%s' -+ -+[desktop] -+wallpaper_mode=1 -+wallpaper=@prefix@/share/lxde/wallpapers/lxde_blue.jpg -+desktop_bg=#000000 -+desktop_fg=#ffffff -+desktop_shadow=#000000 -+ -+[ui] -+always_show_tabs=0 -+hide_close_btn=0 -+win_width=640 -+win_height=480 -+view_mode=0 -+show_hidden=0 -+sort_type=0 -+sort_by=0 -diff --git a/pcmanfm/main.lxde.in b/pcmanfm/main.lxde.in -deleted file mode 100644 -index a619852..0000000 ---- a/pcmanfm/main.lxde.in -+++ /dev/null -@@ -1,3 +0,0 @@ --[Desktop] --show_wallpaper=1 --wallpaper=@prefix@/share/lxde/wallpapers/lxde_blue.jpg -diff --git a/startlxde.in b/startlxde.in -index 8372d3a..f493e28 100755 ---- a/startlxde.in -+++ b/startlxde.in -@@ -1,28 +1,43 @@ - #!/bin/sh - - if [ -z "$XDG_CONFIG_HOME" ]; then -- export XDG_CONFIG_HOME="$HOME/.config" -+ export XDG_CONFIG_HOME="$HOME/.config" - fi - - # Ensure the existance of pcmanfm config file - PCMANFM_CONF_DIR="$XDG_CONFIG_HOME/pcmanfm" --if [ ! -f "$PCMANFM_CONF_DIR/main.lxde" ]; then -- mkdir -p "$PCMANFM_CONF_DIR" -- cp @prefix@/share/lxde/pcmanfm/main.lxde "$PCMANFM_CONF_DIR/main.lxde" -+if [ ! -f "$PCMANFM_CONF_DIR/pcmanfm.conf" ]; then -+ mkdir -p "$PCMANFM_CONF_DIR" -+ cp @prefix@/share/lxde/pcmanfm/pcmanfm.conf "$PCMANFM_CONF_DIR/pcmanfm.conf" - fi - - # Ensure the existance of openbox config file - OPENBOX_CONF_DIR="$XDG_CONFIG_HOME/openbox" - if [ ! -f "$OPENBOX_CONF_DIR/lxde-rc.xml" ]; then -- mkdir -p "$OPENBOX_CONF_DIR" -- cp @prefix@/share/lxde/openbox/rc.xml "$OPENBOX_CONF_DIR/lxde-rc.xml" -+ mkdir -p "$OPENBOX_CONF_DIR" -+ cp @prefix@/share/lxde/openbox/rc.xml "$OPENBOX_CONF_DIR/lxde-rc.xml" - fi - -+# Ensure the existance of the 'Desktop' folder -+if [ -e "$XDG_CONFIG_HOME/user-dirs.dirs" ]; then -+ . "$XDG_CONFIG_HOME/user-dirs.dirs" -+else -+ XDG_DESKTOP_DIR="$HOME/Desktop" -+fi -+mkdir -p "$XDG_DESKTOP_DIR" -+ - # Clean up after GDM (GDM sets the number of desktops to one) - xprop -root -remove _NET_NUMBER_OF_DESKTOPS -remove _NET_DESKTOP_NAMES -remove _NET_CURRENT_DESKTOP 2> /dev/null - - # Enable GTK+2 integration for OpenOffice.org, if available. - export SAL_USE_VCLPLUGIN=gtk - -+# Launch DBus if needed -+if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then -+ eval "$(dbus-launch --sh-syntax --exit-with-session)" -+fi -+ -+export XDG_MENU_PREFIX="lxde-" -+ - # Start the LXDE session - exec @prefix@/bin/lxsession -s LXDE -e LXDE diff --git a/extra/lxde-common/lxde-common-invalid-distfile.patch b/extra/lxde-common/lxde-common-invalid-distfile.patch deleted file mode 100644 index df5d68084..000000000 --- a/extra/lxde-common/lxde-common-invalid-distfile.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -ub lxde-common-0.5.0.dist/startlxde.in lxde-common-0.5.0/startlxde.in ---- lxde-common-0.5.0.dist/startlxde.in 2009-09-04 11:46:53.000000000 +0200 -+++ lxde-common-0.5.0./startlxde.in 2010-01-18 21:47:18.000000000 +0100 -@@ -25,4 +25,4 @@ - export SAL_USE_VCLPLUGIN=gtk - - # Start the LXDE session --exec @prefix@/bin/lxsession -s LXDE -+exec @prefix@/bin/lxsession -s LXDE -e LXDE - diff --git a/extra/lxde-common/lxde-common.install b/extra/lxde-common/lxde-common.install deleted file mode 100644 index 86a366848..000000000 --- a/extra/lxde-common/lxde-common.install +++ /dev/null @@ -1,18 +0,0 @@ -ICON_PATH=usr/share/icons/nuoveXT2 - -post_install() { - gtk-update-icon-cache -q -t -f ${ICON_PATH} -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - gtk-update-icon-cache -q -t -f ${ICON_PATH} -} - -op=$1 -shift - -$op $* diff --git a/extra/lxdm/PKGBUILD b/extra/lxdm/PKGBUILD deleted file mode 100644 index a0b1d9628..000000000 --- a/extra/lxdm/PKGBUILD +++ /dev/null @@ -1,51 +0,0 @@ -# Maintainer: AndyRTR -#Contributor: kiefer -#Based on lxdm-git by phillipe - -pkgname=lxdm -pkgver=0.3.0 -pkgrel=1 -pkgdesc="Lightweight Display Manager (part of LXDE)" -arch=('i686' 'x86_64') -url="http://sourceforge.net/projects/lxdm/" -license=('GPL') -groups=('lxde') -conflicts=('lxdm-git') -depends=('gtk2' 'xorg-server' 'consolekit') -makedepends=('intltool') -install=${pkgname}.install -backup=('etc/lxdm/lxdm.conf') # 'etc/lxdm/xinitrc') -source=(http://downloads.sourceforge.net/project/lxdm/lxdm%20${pkgver}/$pkgname-$pkgver.tar.gz - Xsession.patch lxdm.patch lxdm-pam.patch lxdm-daemon) -md5sums=('1d0688e088edab7c3c563263eb2f9654' - '9bdf95adb74d81d4b6b6176fb1142090' - 'baed9055e8825a5511712bc095197519' - 'b20fe3c8487a039050986d60e45233a9' - '705f394052fdd0dec22e95321d170de0') - -build() { - cd $srcdir/$pkgname-$pkgver - ./configure --sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib/lxdm - make - - patch -Np0 < ../lxdm.patch - patch -Np0 < ../Xsession.patch -} - - -package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR="${pkgdir}" install || return 1 - - install -m644 ${srcdir}/lxdm-pam.patch ${pkgdir}/etc/pam.d/lxdm || return 1 - install -Dm755 ${srcdir}/lxdm-daemon ${pkgdir}/etc/rc.d/lxdm || return 1 - - # these files are not in the package, but should be owned by lxdm - taken from Fedora pkg -# touch ${pkgdir}/etc/lxdm/xinitrc - mkdir -p ${pkgdir}/var/run/lxdm - mkdir -p ${pkgdir}/var/lib/lxdm -# touch ${pkgdir}/var/lib/lxdm/lxdm.conf - - # fix the greeter location - sed -i -e "s/libexec/lib\/lxdm/" ${pkgdir}/etc/lxdm/lxdm.conf -} diff --git a/extra/lxdm/Xsession.patch b/extra/lxdm/Xsession.patch deleted file mode 100644 index a9ba63233..000000000 --- a/extra/lxdm/Xsession.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- data/Xsession.orig 2010-01-31 20:48:08.695677408 -0200 -+++ data/Xsession 2010-01-31 20:47:48.260223292 -0200 -@@ -2,6 +2,11 @@ - - # use bash for "exec -l", howto run login shell by /bin/sh ? - -+[[ -f /etc/profile ]] && . /etc/profile -+[[ -f "$HOME/.profile" ]] && . "$HOME/.profile" -+[[ -f /etc/xprofile ]] && . /etc/xprofile -+[[ -f "$HOME/.xprofile" ]] && . "$HOME/.xprofile" -+ - if [ $# -eq 1 -a -n "$1" ]; then - LXSESSION=$1 - else diff --git a/extra/lxdm/lxdm-daemon b/extra/lxdm/lxdm-daemon deleted file mode 100644 index 68eb6225d..000000000 --- a/extra/lxdm/lxdm-daemon +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -PID=$(pidof -o %PPID `which lxdm-binary`) -case "$1" in - start) - stat_busy "Starting LXDM Display Manager" - [ -z "$PID" ] && /usr/sbin/lxdm -d &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon lxdm - stat_done - fi - ;; - stop) - stat_busy "Stopping LXDM Display Manager" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon lxdm - stat_done - fi - ;; - restart) - $0 stop - sleep 3 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/extra/lxdm/lxdm-pam.patch b/extra/lxdm/lxdm-pam.patch deleted file mode 100644 index 3f5df04a7..000000000 --- a/extra/lxdm/lxdm-pam.patch +++ /dev/null @@ -1,8 +0,0 @@ -#%PAM-1.0 -auth requisite pam_nologin.so -auth required pam_env.so -auth required pam_unix.so -account required pam_unix.so -session required pam_limits.so -session required pam_unix.so -password required pam_unix.so diff --git a/extra/lxdm/lxdm.install b/extra/lxdm/lxdm.install deleted file mode 100644 index 8d42de90f..000000000 --- a/extra/lxdm/lxdm.install +++ /dev/null @@ -1,59 +0,0 @@ -pkgname=lxdm - -post_install() { - # make sure the group and user "lxdm" exist on this system and have the correct values - if grep -q "^lxdm:" /etc/group &> /dev/null ; then - groupmod -g 121 -n lxdm lxdm &> /dev/null - else - groupadd -g 121 lxdm &> /dev/null - fi - - if grep -q "^lxdm:" /etc/passwd 2> /dev/null ; then - usermod -s /sbin/nologin -c "LXDE Display Manager user" -d /var/lib/lxdm -u 121 -g lxdm lxdm &> /dev/null - else - useradd -s /sbin/nologin -c "LXDE Display Manager user" -d /var/lib/lxdm -u 121 -g lxdm -m -r lxdm &> /dev/null - fi - passwd -l lxdm > /dev/null - -# chown root:lxdm /etc/lxdm/{lxdm.conf,xinitrc} > /dev/null - chown root:lxdm /etc/lxdm/lxdm.conf > /dev/null - chown -R root:lxdm /var/lib/lxdm > /dev/null - chown -R root:lxdm /var/run/lxdm > /dev/null - -cat << EOF ->>> To make the LXDM as your default DM, ->>> put, 'lxdm' or '@lxdm' (without quotes) on DAEMONS in /etc/rc.conf ->>> ->>> You can also use /etc/inittab, ->>> just add 'x:5:respawn:/usr/sbin/lxdm >& /dev/null' (without quotes) ->>> in the end of the file /etc/inittab ->>> and uncoment the line on the top 'id:5:initdefault:'. -EOF -} - -post_upgrade() { - # make sure the group and user "lxdm" exist on this system and have the correct values - if grep -q "^lxdm:" /etc/group &> /dev/null ; then - groupmod -g 121 -n lxdm lxdm &> /dev/null - else - groupadd -g 121 lxdm &> /dev/null - fi - - if grep -q "^lxdm:" /etc/passwd 2> /dev/null ; then - usermod -s /sbin/nologin -c "LXDE Display Manager user" -d /var/lib/lxdm -u 121 -g lxdm lxdm &> /dev/null - else - useradd -s /sbin/nologin -c "LXDE Display Manager user" -d /var/lib/lxdm -u 121 -g lxdm -m -r lxdm &> /dev/null - fi - passwd -l lxdm > /dev/null - -# chown root:lxdm /etc/lxdm/{lxdm.conf,xinitrc} > /dev/null - chown root:lxdm /etc/lxdm/lxdm.conf > /dev/null - chown -R root:lxdm /var/lib/lxdm > /dev/null - chown -R root:lxdm /var/run/lxdm > /dev/null -} - -post_remove() { - # Removing lxdm group+user - getent passwd lxdm >/dev/null 2>&1 && userdel lxdm #|| /bin/true - getent group lxdm >/dev/null 2>&1 && groupdel lxdm #|| /bin/true -} diff --git a/extra/lxdm/lxdm.patch b/extra/lxdm/lxdm.patch deleted file mode 100644 index a703a386d..000000000 --- a/extra/lxdm/lxdm.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- data/lxdm.orig 2010-01-24 16:58:42.262866825 -0200 -+++ data/lxdm 2010-01-19 11:56:34.308668692 -0200 -@@ -1,21 +1,13 @@ - #!/bin/sh - --[ -f /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n -- --if [ -z "$LANG" -a -e /etc/sysconfig/language ]; then -- . /etc/sysconfig/language -- if [ -n "$RC_LANG"]; then -- LANG=$RC_LANG -- fi -+if [ -r /etc/profile.d/locale.sh ]; then -+ . /etc/profile.d/locale.sh - fi - - if [ -n "$LANG" ]; then - export LANG - fi - --[ -f /etc/sysconfig/desktop ] && . /etc/sysconfig/desktop --[ -f /etc/sysconfig/windowmanager ] && . /etc/sysconfig/windowmanager -- - if [ -n "$DEFAULT_WM" ]; then - PREFERRED=$DEFAULT_WM - fi diff --git a/extra/lxmenu-data/PKGBUILD b/extra/lxmenu-data/PKGBUILD deleted file mode 100644 index eff65fe89..000000000 --- a/extra/lxmenu-data/PKGBUILD +++ /dev/null @@ -1,19 +0,0 @@ -# Maintainer: Juergen Hoetzel -pkgname=lxmenu-data -pkgver=0.1.1 -pkgrel=1 -pkgdesc="freedesktop.org desktop menus for LXDE" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://lxde.org/" -groups=('lxde') -source=(http://downloads.sourceforge.net/sourceforge/lxde/$pkgname-$pkgver.tar.gz) -md5sums=('cee3181dd22088f3db0e99ffbedc986d') - -build() { -cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr --sysconfdir=/etc || return 1 - make || return 1 - make DESTDIR="$pkgdir" install || return 1 -} - diff --git a/extra/lxpanel/Fix-build-issue-with-symbol-alarm-showing-up-on-F14-.patch b/extra/lxpanel/Fix-build-issue-with-symbol-alarm-showing-up-on-F14-.patch deleted file mode 100644 index e3da3d897..000000000 --- a/extra/lxpanel/Fix-build-issue-with-symbol-alarm-showing-up-on-F14-.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 4a974f2686d2fafdcda4a180b0483a7b17fd2d71 Mon Sep 17 00:00:00 2001 -From: Marty Jack -Date: Thu, 22 Jul 2010 19:46:13 -0400 -Subject: [PATCH 3/3] Fix build issue with symbol "alarm" showing up on F14 (Bug3033293) - ---- - src/plugins/batt/batt.c | 6 +++--- - 1 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/plugins/batt/batt.c b/src/plugins/batt/batt.c -index 288231f..05c0deb 100644 ---- a/src/plugins/batt/batt.c -+++ b/src/plugins/batt/batt.c -@@ -95,7 +95,7 @@ typedef struct { - typedef struct { - char *command; - sem_t *lock; --} alarm; -+} Alarm; - - static void destructor(Plugin *p); - static void update_display(lx_battery *lx_b, gboolean repaint); -@@ -103,7 +103,7 @@ static void update_display(lx_battery *lx_b, gboolean repaint); - /* alarmProcess takes the address of a dynamically allocated alarm struct (which - it must free). It ensures that alarm commands do not run concurrently. */ - static void * alarmProcess(void *arg) { -- alarm *a = (alarm *) arg; -+ Alarm *a = (Alarm *) arg; - - sem_wait(a->lock); - system(a->command); -@@ -157,7 +157,7 @@ void update_display(lx_battery *lx_b, gboolean repaint) { - /* Run the alarm command if it isn't already running */ - if (alarmCanRun) { - -- alarm *a = (alarm *) malloc(sizeof(alarm)); -+ Alarm *a = (Alarm *) malloc(sizeof(Alarm)); - a->command = lx_b->alarmCommand; - a->lock = &(lx_b->alarmProcessLock); - --- -1.7.1.1 - diff --git a/extra/lxpanel/Fix-failure-to-react-to-keyboard-map-changes-initiat.patch b/extra/lxpanel/Fix-failure-to-react-to-keyboard-map-changes-initiat.patch deleted file mode 100644 index b5483e7b0..000000000 --- a/extra/lxpanel/Fix-failure-to-react-to-keyboard-map-changes-initiat.patch +++ /dev/null @@ -1,555 +0,0 @@ -From 438d9fdbd3e0be04de933705917d508a02b7c04b Mon Sep 17 00:00:00 2001 -From: Marty Jack -Date: Sat, 20 Feb 2010 16:23:57 -0500 -Subject: [PATCH 4/5] Fix failure to react to keyboard map changes initiated outside the plugin - - Occurred when setxkbmap was run, or when HAL configured the keyboard at X startup - - Caused by failure to process the NewKeyboard event - - Caused by dropping events due to faulty code to read them - - Cosmetic change, the tooltip now the Xkb Group name rather than Xkb Symbol name - ---- - src/plugins/xkb/xkb-plugin.c | 92 +++++++++-------- - src/plugins/xkb/xkb.c | 236 +++++++++++++++++++++-------------------- - src/plugins/xkb/xkb.h | 7 +- - 3 files changed, 173 insertions(+), 162 deletions(-) - -diff --git a/src/plugins/xkb/xkb-plugin.c b/src/plugins/xkb/xkb-plugin.c -index f49a77d..80a14ba 100644 ---- a/src/plugins/xkb/xkb-plugin.c -+++ b/src/plugins/xkb/xkb-plugin.c -@@ -1,18 +1,23 @@ --/* --//==================================================================== --// xfce4-xkb-plugin - XFCE4 Xkb Layout Indicator panel plugin --// ------------------------------------------------------------------- --// Alexander Iliev --// 20-Feb-04 --// ------------------------------------------------------------------- --// Parts of this code belong to Michael Glickman --// and his program wmxkb. --// WARNING: DO NOT BOTHER Michael Glickman WITH QUESTIONS ABOUT THIS --// PROGRAM!!! SEND INSTEAD EMAILS TO --//==================================================================== --*/ -- --/* Modified by Hong Jen Yee (PCMan) on 2008-04-06 for lxpanel */ -+/** -+ * Copyright (c) 2010 LxDE Developers, see the file AUTHORS for details. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -+ */ -+ -+/* Originally derived from xfce4-xkb-plugin, Copyright 2004 Alexander Iliev, -+ * which credits Michael Glickman. */ - - #ifdef HAVE_CONFIG_H - #include -@@ -49,38 +54,45 @@ void xkb_redraw(XkbPlugin * xkb) - if (xkb->display_type == IMAGE) - { - int size = xkb->plugin->panel->icon_size; -- char * group_name = (char *) xkb_get_current_group_name_lowercase(xkb); -- char * filename = g_strdup_printf("%s/%s.png", FLAGSDIR, group_name); -- GdkPixbuf * unscaled_pixbuf = gdk_pixbuf_new_from_file(filename, NULL); -- g_free(filename); -- g_free(group_name); -- -- if (unscaled_pixbuf != NULL) -+ char * group_name = (char *) xkb_get_current_symbol_name_lowercase(xkb); -+ if (group_name != NULL) - { -- /* Loaded successfully. */ -- int width = gdk_pixbuf_get_width(unscaled_pixbuf); -- int height = gdk_pixbuf_get_height(unscaled_pixbuf); -- GdkPixbuf * pixbuf = gdk_pixbuf_scale_simple(unscaled_pixbuf, size * width / height, size, GDK_INTERP_BILINEAR); -- if (pixbuf != NULL) -+ char * filename = g_strdup_printf("%s/%s.png", FLAGSDIR, group_name); -+ GdkPixbuf * unscaled_pixbuf = gdk_pixbuf_new_from_file(filename, NULL); -+ g_free(filename); -+ g_free(group_name); -+ -+ if (unscaled_pixbuf != NULL) - { -- gtk_image_set_from_pixbuf(GTK_IMAGE(xkb->image), pixbuf); -- g_object_unref(G_OBJECT(pixbuf)); -- gtk_widget_hide(xkb->label); -- gtk_widget_show(xkb->image); -- gtk_widget_set_tooltip_text(xkb->btn, xkb_get_current_group_name(xkb)); -- valid_image = TRUE; -+ /* Loaded successfully. */ -+ int width = gdk_pixbuf_get_width(unscaled_pixbuf); -+ int height = gdk_pixbuf_get_height(unscaled_pixbuf); -+ GdkPixbuf * pixbuf = gdk_pixbuf_scale_simple(unscaled_pixbuf, size * width / height, size, GDK_INTERP_BILINEAR); -+ if (pixbuf != NULL) -+ { -+ gtk_image_set_from_pixbuf(GTK_IMAGE(xkb->image), pixbuf); -+ g_object_unref(G_OBJECT(pixbuf)); -+ gtk_widget_hide(xkb->label); -+ gtk_widget_show(xkb->image); -+ gtk_widget_set_tooltip_text(xkb->btn, xkb_get_current_group_name(xkb)); -+ valid_image = TRUE; -+ } -+ g_object_unref(unscaled_pixbuf); - } -- g_object_unref(unscaled_pixbuf); - } - } - - /* Set the label. */ - if ((xkb->display_type == TEXT) || ( ! valid_image)) - { -- panel_draw_label_text(xkb->plugin->panel, xkb->label, (char *) xkb_get_current_group_name(xkb), TRUE, TRUE); -- gtk_widget_hide(xkb->image); -- gtk_widget_show(xkb->label); -- gtk_widget_set_tooltip_text(xkb->btn, NULL); -+ char * group_name = (char *) xkb_get_current_symbol_name(xkb); -+ if (group_name != NULL) -+ { -+ panel_draw_label_text(xkb->plugin->panel, xkb->label, (char *) group_name, TRUE, TRUE); -+ gtk_widget_hide(xkb->image); -+ gtk_widget_show(xkb->label); -+ gtk_widget_set_tooltip_text(xkb->btn, xkb_get_current_group_name(xkb)); -+ } - } - } - -@@ -196,10 +208,6 @@ static int xkb_constructor(Plugin * plugin, char ** fp) - /* Initialize the XKB interface. */ - xkb_mechanism_constructor(xkb); - -- /* Initialize a channel to listen for XKB events. */ -- GIOChannel * channel = g_io_channel_unix_new(xkb_get_connection_number(xkb)); -- xkb->source_id = g_io_add_watch(channel, G_IO_IN | G_IO_PRI, (GIOFunc) xkb_gio_callback, (gpointer) xkb); -- - /* Connect signals. */ - g_signal_connect(xkb->btn, "button-press-event", G_CALLBACK(xkb_button_press_event), xkb); - g_signal_connect(xkb->btn, "scroll-event", G_CALLBACK(xkb_scroll_event), xkb); -diff --git a/src/plugins/xkb/xkb.c b/src/plugins/xkb/xkb.c -index 5bb0c39..898a931 100644 ---- a/src/plugins/xkb/xkb.c -+++ b/src/plugins/xkb/xkb.c -@@ -1,18 +1,23 @@ --/* --// ==================================================================== --// xfce4-xkb-plugin - XFCE4 Xkb Layout Indicator panel plugin --// ------------------------------------------------------------------- --// Alexander Iliev --// 20-Feb-04 --// ------------------------------------------------------------------- --// Parts of this code belong to Michael Glickman --// and his program wmxkb. --// WARNING: DO NOT BOTHER Michael Glickman WITH QUESTIONS ABOUT THIS --// PROGRAM!!! SEND INSTEAD EMAILS TO --//==================================================================== --*/ -- --/* Modified by Hong Jen Yee (PCMan) on 2008-04-06 for lxpanel */ -+/** -+ * Copyright (c) 2010 LxDE Developers, see the file AUTHORS for details. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -+ */ -+ -+/* Originally derived from xfce4-xkb-plugin, Copyright 2004 Alexander Iliev, -+ * which credits Michael Glickman. */ - - #include "xkb.h" - -@@ -26,9 +31,13 @@ - #include - #include - -+/* The X Keyboard Extension: Library Specification -+ * http://www.xfree86.org/current/XKBlib.pdf */ -+ - static void xkb_enter_locale_by_process(XkbPlugin * xkb); - static void refresh_group_xkb(XkbPlugin * xkb); --static int do_init_xkb(XkbPlugin * xkb); -+static int initialize_keyboard_description(XkbPlugin * xkb); -+static GdkFilterReturn xkb_event_filter(GdkXEvent * xevent, GdkEvent * event, XkbPlugin * xkb); - - /* Insert a process and its layout into the hash table. */ - static void xkb_enter_locale_by_process(XkbPlugin * xkb) -@@ -56,60 +65,65 @@ int xkb_get_group_count(XkbPlugin * xkb) - return xkb->group_count; - } - -+/* Get the current group name. */ -+const char * xkb_get_current_group_name(XkbPlugin * xkb) -+{ -+ return xkb->group_names[xkb->current_group_xkb_no]; -+} -+ - /* Convert a group number to a symbol name. */ - const char * xkb_get_symbol_name_by_res_no(XkbPlugin * xkb, int n) - { - return xkb->symbol_names[n]; - } - --/* Get the current group name. */ --const char * xkb_get_current_group_name(XkbPlugin * xkb) -+/* Get the current symbol name. */ -+const char * xkb_get_current_symbol_name(XkbPlugin * xkb) - { - return xkb_get_symbol_name_by_res_no(xkb, xkb->current_group_xkb_no); - } - --/* Get the current group name converted to lowercase. */ --const char * xkb_get_current_group_name_lowercase(XkbPlugin * xkb) -+/* Get the current symbol name converted to lowercase. */ -+const char * xkb_get_current_symbol_name_lowercase(XkbPlugin * xkb) - { -- const char * tmp = xkb_get_current_group_name(xkb); -- return g_utf8_strdown(tmp, -1); -+ const char * tmp = xkb_get_current_symbol_name(xkb); -+ return ((tmp != NULL) ? g_utf8_strdown(tmp, -1) : NULL); - } - - /* Refresh current group number from Xkb state. */ - static void refresh_group_xkb(XkbPlugin * xkb) - { - XkbStateRec xkb_state; -- XkbGetState(xkb->dsp, xkb->device_id, &xkb_state); -+ XkbGetState(GDK_DISPLAY(), XkbUseCoreKbd, &xkb_state); - xkb->current_group_xkb_no = xkb_state.group; - } - --/* Initialize the Xkb structures. */ --static int do_init_xkb(XkbPlugin * xkb) -+/* Initialize the keyboard description initially or after a NewKeyboard event. */ -+static int initialize_keyboard_description(XkbPlugin * xkb) - { -- /* Create hash table. */ -- xkb->group_hash_table = g_hash_table_new(g_direct_hash, NULL); -- -- /* Initialize the Xkb extension. */ -- int major, minor, opcode; -- Bool status = XkbQueryExtension(xkb->dsp, &opcode, -- &xkb->base_event_code, &xkb->base_error_code, &major, &minor); -- -- /* Use the core keyboard. */ -- xkb->device_id = XkbUseCoreKbd; -+ /* Free the strings. */ -+ int i; -+ for (i = 0; i < XkbNumKbdGroups; i += 1) -+ { -+ g_free(xkb->group_names[i]); -+ g_free(xkb->symbol_names[i]); -+ xkb->group_names[i] = NULL; -+ xkb->symbol_names[i] = NULL; -+ } - - /* Allocate a keyboard description structure. */ -+ int status = False; - XkbDescRec * kbd_desc_ptr = XkbAllocKeyboard(); - if (kbd_desc_ptr == NULL) - { - ERR("Failed to get keyboard description\n"); - goto HastaLaVista; - } -- kbd_desc_ptr->dpy = xkb->dsp; - - /* Fetch information into the keyboard description. */ -- XkbGetControls(xkb->dsp, XkbAllControlsMask, kbd_desc_ptr); -- XkbGetNames(xkb->dsp, XkbSymbolsNameMask, kbd_desc_ptr); -- XkbGetNames(xkb->dsp, XkbGroupNamesMask, kbd_desc_ptr); -+ XkbGetControls(GDK_DISPLAY(), XkbAllControlsMask, kbd_desc_ptr); -+ XkbGetNames(GDK_DISPLAY(), XkbSymbolsNameMask, kbd_desc_ptr); -+ XkbGetNames(GDK_DISPLAY(), XkbGroupNamesMask, kbd_desc_ptr); - - if (kbd_desc_ptr->names == NULL) - { -@@ -137,12 +151,11 @@ static int do_init_xkb(XkbPlugin * xkb) - - /* Determine the group names. Trim off text beginning at a '('. */ - const Atom * tmp_group_source = kbd_desc_ptr->names->groups; -- int i; - for (i = 0; i < xkb->group_count; i++) - { - if (tmp_group_source[i] != None) - { -- char * ptr = XGetAtomName(xkb->dsp, tmp_group_source[i]); -+ char * ptr = XGetAtomName(GDK_DISPLAY(), tmp_group_source[i]); - xkb->group_names[i] = ptr; - if ((ptr != NULL) && ((ptr = strchr(ptr, '('))) != NULL) - *ptr = '\0'; -@@ -153,7 +166,7 @@ static int do_init_xkb(XkbPlugin * xkb) - Atom sym_name_atom = kbd_desc_ptr->names->symbols; - char * sym_name; - if ((sym_name_atom == None) -- || ((sym_name = XGetAtomName(xkb->dsp, sym_name_atom)) == NULL)) -+ || ((sym_name = XGetAtomName(GDK_DISPLAY(), sym_name_atom)) == NULL)) - goto HastaLaVista; - - /* Parse and store symbol names. */ -@@ -190,83 +203,106 @@ static int do_init_xkb(XkbPlugin * xkb) - { - xkb->group_count = 2; - xkb->symbol_names[1] = xkb->symbol_names[0]; -- xkb->symbol_names[0] = strdup("us"); -- xkb->group_names[0] = strdup("US/ASCII"); -- xkb->group_names[1] = strdup("Japanese"); -+ xkb->symbol_names[0] = g_strdup("us"); -+ xkb->group_names[0] = g_strdup("US/ASCII"); -+ xkb->group_names[1] = g_strdup("Japanese"); - } - else if (count < xkb->group_count) - { - /* Ensure that the names are fully initialized. */ - int j = count, k = xkb->group_count; - while(--j >= 0) xkb->symbol_names[--k] = xkb->symbol_names[j]; -- while(--k >= 0) xkb->symbol_names[k] = strdup("en_US"); -+ while(--k >= 0) xkb->symbol_names[k] = g_strdup("en_US"); - } - -- /* Enxure that the names are fully initialized. */ -+ /* Ensure that the names are fully initialized. */ - for (i = 0; i < xkb->group_count; i++) - { - if (xkb->symbol_names[i] == NULL) - { - ERR("\nGroup Symbol %i is undefined, set to 'U/A' !\n", i+1); -- xkb->symbol_names[i] = strdup("U/A"); -+ xkb->symbol_names[i] = g_strdup("U/A"); - } - } - -+ /* Create or recreate hash table. -+ * The layout that was associated to the windows may or may not be at the same group number, -+ * and worse, may no longer exist, which there is no meaningful way to deal with. */ -+ if (xkb->group_hash_table != NULL) -+ g_hash_table_destroy(xkb->group_hash_table); -+ xkb->group_hash_table = g_hash_table_new(g_direct_hash, NULL); -+ - status = True; - - HastaLaVista: - if (kbd_desc_ptr != NULL) - XkbFreeKeyboard(kbd_desc_ptr, 0, True); -+ - return status; - } - -+/* GDK event filter that receives events from all windows and the Xkb extension. */ -+static GdkFilterReturn xkb_event_filter(GdkXEvent * xevent, GdkEvent * event, XkbPlugin * xkb) -+{ -+ XEvent * ev = (XEvent *) xevent; -+ -+ if (ev->xany.type == xkb->base_event_code + XkbEventCode) -+ { -+ /* Xkb event. */ -+ XkbEvent * xkbev = (XkbEvent *) ev; -+ if (xkbev->any.xkb_type == XkbNewKeyboardNotify) -+ { -+ initialize_keyboard_description(xkb); -+ refresh_group_xkb(xkb); -+ xkb_redraw(xkb); -+ xkb_enter_locale_by_process(xkb); -+ } -+ else if (xkbev->any.xkb_type == XkbStateNotify) -+ { -+ if (xkbev->state.group != xkb->current_group_xkb_no) -+ { -+ /* Switch to the new group and redraw the display. */ -+ xkb->current_group_xkb_no = xkbev->state.group; -+ refresh_group_xkb(xkb); -+ xkb_redraw(xkb); -+ xkb_enter_locale_by_process(xkb); -+ } -+ } -+ } -+ return GDK_FILTER_CONTINUE; -+} -+ - /* Initialize the Xkb interface. */ - void xkb_mechanism_constructor(XkbPlugin * xkb) - { -- /* Enable the Xkb extension on all clients. */ -- XkbIgnoreExtension(False); -- -- /* Open the display. */ -- int major = XkbMajorVersion; -- int minor = XkbMinorVersion; -- char * display_name = ""; -- int event_code; -- int error_rtrn; -- int reason_rtrn; -- xkb->dsp = XkbOpenDisplay(display_name, &event_code, &error_rtrn, &major, &minor, &reason_rtrn); -- -- switch (reason_rtrn) -+ /* Initialize Xkb extension. */ -+ int opcode; -+ int maj = XkbMajorVersion; -+ int min = XkbMinorVersion; -+ if ((XkbLibraryVersion(&maj, &min)) -+ && (XkbQueryExtension(GDK_DISPLAY(), &opcode, &xkb->base_event_code, &xkb->base_error_code, &maj, &min))) - { -- case XkbOD_BadLibraryVersion: -- ERR("Bad XKB library version.\n"); -- return; -- case XkbOD_ConnectionRefused: -- ERR("Connection to X server refused.\n"); -- return; -- case XkbOD_BadServerVersion: -- ERR("Bad X server version.\n"); -- return; -- case XkbOD_NonXkbServer: -- ERR("XKB not present.\n"); -- return; -- case XkbOD_Success: -- break; -- } -+ /* Read the keyboard description. */ -+ initialize_keyboard_description(xkb); - -- /* Initialize our mechanism. */ -- if (do_init_xkb(xkb) != True) -- return; -+ /* Establish GDK event filter. */ -+ gdk_window_add_filter(NULL, (GdkFilterFunc) xkb_event_filter, (gpointer) xkb); - -- /* Specify events we will receive. */ -- XkbSelectEventDetails(xkb->dsp, xkb->device_id, XkbStateNotify, XkbAllStateComponentsMask, XkbGroupStateMask); -+ /* Specify events we will receive. */ -+ XkbSelectEvents(GDK_DISPLAY(), XkbUseCoreKbd, XkbNewKeyboardNotifyMask, XkbNewKeyboardNotifyMask); -+ XkbSelectEventDetails(GDK_DISPLAY(), XkbUseCoreKbd, XkbStateNotify, XkbAllStateComponentsMask, XkbGroupStateMask); - -- /* Get current state. */ -- refresh_group_xkb(xkb); -+ /* Get current state. */ -+ refresh_group_xkb(xkb); -+ } - } - - /* Deallocate resources associated with Xkb interface. */ - void xkb_mechanism_destructor(XkbPlugin * xkb) - { -+ /* Remove event filter. */ -+ gdk_window_remove_filter(NULL, (GdkFilterFunc) xkb_event_filter, xkb); -+ - /* Free group and symbol name memory. */ - int i; - for (i = 0; i < xkb->group_count; i++) -@@ -283,21 +319,11 @@ void xkb_mechanism_destructor(XkbPlugin * xkb) - } - } - -- /* Close the display. */ -- XCloseDisplay(xkb->dsp); -- xkb->dsp = NULL; -- - /* Destroy the hash table. */ - g_hash_table_destroy(xkb->group_hash_table); - xkb->group_hash_table = NULL; - } - --/* Return the connection number for the display. */ --int xkb_get_connection_number(XkbPlugin * xkb) --{ -- return ConnectionNumber(xkb->dsp); --} -- - /* Set the layout to the next layout. */ - int xkb_change_group(XkbPlugin * xkb, int increment) - { -@@ -307,33 +333,13 @@ int xkb_change_group(XkbPlugin * xkb, int increment) - if (next_group >= xkb->group_count) next_group = 0; - - /* Execute the change. */ -- XkbLockGroup(xkb->dsp, xkb->device_id, next_group); -+ XkbLockGroup(GDK_DISPLAY(), XkbUseCoreKbd, next_group); - refresh_group_xkb(xkb); - xkb_redraw(xkb); - xkb_enter_locale_by_process(xkb); - return 1; - } - --/* Callback when activity detected on the Xkb channel. */ --gboolean xkb_gio_callback(GIOChannel * source, GIOCondition condition, gpointer data) --{ -- XkbPlugin * xkb = (XkbPlugin *) data; -- -- XkbEvent evnt; -- XNextEvent(xkb->dsp, &evnt.core); -- if ((evnt.type == xkb->base_event_code) -- && (evnt.any.xkb_type == XkbStateNotify) -- && (evnt.state.group != xkb->current_group_xkb_no)) -- { -- /* Switch to the new group and redraw the display. */ -- xkb->current_group_xkb_no = evnt.state.group; -- refresh_group_xkb(xkb); -- xkb_redraw(xkb); -- xkb_enter_locale_by_process(xkb); -- } -- return TRUE; --} -- - /* React to change of focus by switching to the application's layout or the default layout. */ - void xkb_active_window_changed(XkbPlugin * xkb, gint pid) - { -@@ -345,7 +351,7 @@ void xkb_active_window_changed(XkbPlugin * xkb, gint pid) - - if (new_group_xkb_no < xkb->group_count) - { -- XkbLockGroup(xkb->dsp, xkb->device_id, new_group_xkb_no); -+ XkbLockGroup(GDK_DISPLAY(), XkbUseCoreKbd, new_group_xkb_no); - refresh_group_xkb(xkb); - } - } -diff --git a/src/plugins/xkb/xkb.h b/src/plugins/xkb/xkb.h -index 9265198..20c7ed3 100644 ---- a/src/plugins/xkb/xkb.h -+++ b/src/plugins/xkb/xkb.h -@@ -49,10 +49,8 @@ typedef struct { - GtkWidget * per_app_default_layout_menu; /* Combo box of all available layouts */ - - /* Mechanism. */ -- Display * dsp; /* Handle to X display */ - int base_event_code; /* Result of initializing Xkb extension */ - int base_error_code; -- int device_id; /* Keyboard device ID (always "core keyboard") */ - int current_group_xkb_no; /* Current layout */ - int group_count; /* Count of groups as returned by Xkb */ - char * group_names[XkbNumKbdGroups]; /* Group names as returned by Xkb */ -@@ -67,12 +65,11 @@ extern int xkb_get_current_group_xkb_no(XkbPlugin * xkb); - extern int xkb_get_group_count(XkbPlugin * xkb); - extern const char * xkb_get_symbol_name_by_res_no(XkbPlugin * xkb, int group_res_no); - extern const char * xkb_get_current_group_name(XkbPlugin * xkb); --extern const char * xkb_get_current_group_name_lowercase(XkbPlugin * xkb); -+extern const char * xkb_get_current_symbol_name(XkbPlugin * xkb); -+extern const char * xkb_get_current_symbol_name_lowercase(XkbPlugin * xkb); - extern void xkb_mechanism_constructor(XkbPlugin * xkb); - extern void xkb_mechanism_destructor(XkbPlugin * xkb); --extern int xkb_get_connection_number(XkbPlugin * xkb); - extern int xkb_change_group(XkbPlugin * xkb, int increment); --extern gboolean xkb_gio_callback(GIOChannel * source, GIOCondition condition, gpointer data); - extern void xkb_active_window_changed(XkbPlugin * xkb, GPid pid); - - #endif --- -1.7.0 - diff --git a/extra/lxpanel/PKGBUILD b/extra/lxpanel/PKGBUILD deleted file mode 100644 index 9ad1d1774..000000000 --- a/extra/lxpanel/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -$Id: PKGBUILD 94639 2010-10-08 22:08:39Z angvp $ -# Maintainer: Angel Velasquez -# Maintainer: Juergen Hoetzel -pkgname=lxpanel -pkgver=0.5.6 -pkgrel=1 -pkgdesc="Panel of the LXDE Desktop" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://lxde.org/" -groups=('lxde') -depends=('gtk2' 'alsa-lib' 'menu-cache' 'lxmenu-data') -source=(http://downloads.sourceforge.net/sourceforge/lxde/${pkgname}-${pkgver}.tar.gz - Fix-build-issue-with-symbol-alarm-showing-up-on-F14-.patch) -optdepends=(pcmanfm) -md5sums=('3c6b5498b5f4109c3913b10a66809fe6' - 'afe03191cbeccfc702f9a04bffd62dbf') - -build() { - cd "$srcdir/$pkgname-$pkgver" - patch -p1 -i $srcdir/Fix-build-issue-with-symbol-alarm-showing-up-on-F14-.patch - ./configure --sysconfdir=/etc --prefix=/usr - make - make DESTDIR="$pkgdir" install -} diff --git a/extra/lxsession-lite/PKGBUILD b/extra/lxsession-lite/PKGBUILD deleted file mode 100644 index cc60a844b..000000000 --- a/extra/lxsession-lite/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# Maintainer: Juergen Hoetzel -pkgname=lxsession-lite -pkgver=0.4.5 -pkgrel=1 -pkgdesc="Session manager of the LXDE Desktop (light version)" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://lxde.org/" -groups=('lxde') -depends=('gtk2' 'dbus') -makedepends=('pkgconfig' 'intltool') -replaces=("lxde-settings-daemon") -conflicts=('lxsession' 'lxde-settings-daemon') -source=(http://downloads.sourceforge.net/sourceforge/lxde/lxsession-${pkgver}.tar.gz) -md5sums=('d5cd0cb733748191b2c7371c9efda155') - -build() { - cd "$srcdir/lxsession-$pkgver" - ./configure --sysconfdir=/etc --prefix=/usr - make - make DESTDIR="$pkgdir" install -} diff --git a/extra/menu-cache/PKGBUILD b/extra/menu-cache/PKGBUILD deleted file mode 100644 index 29e0a408d..000000000 --- a/extra/menu-cache/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# Maintainer: Juergen Hoetzel - -pkgname=menu-cache -pkgver=0.3.2 -pkgrel=1 -pkgdesc="Caches to speed up freedesktop.org's application menus use." -arch=('i686' 'x86_64') -license=('GPL2') -url="http://lxde.org/" -groups=('lxde') -depends=('intltool' 'glib2') -options=('!libtool') -makedepends=('pkgconfig') -source=(http://downloads.sourceforge.net/sourceforge/lxde/${pkgname}-${pkgver}.tar.gz) -md5sums=('ac4a9ea77db68d3db3f9f53cc75af66a') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --libexecdir=/usr/lib/menu-cache --disable-static || return 1 - make || return 1 -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/extra/nx-common/nx-gcc44.patch b/extra/nx-common/nx-gcc44.patch deleted file mode 100644 index 5b7b7e1f6..000000000 --- a/extra/nx-common/nx-gcc44.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- nx-3.3.0/nxcomp/Loop.cpp.orig 2009-05-17 12:22:19.000000000 +0200 -+++ nx-3.3.0/nxcomp/Loop.cpp 2009-05-17 12:22:43.000000000 +0200 -@@ -10979,7 +10979,7 @@ - packMethod == PACK_LOSSLESS || - packMethod == PACK_ADAPTIVE) - { -- char *dash = rindex(opt, '-'); -+ const char *dash = rindex(opt, '-'); - - if (dash != NULL && strlen(dash) == 2 && - *(dash + 1) >= '0' && *(dash + 1) <= '9') - diff --git a/extra/nxserver/nx-gcc44.patch b/extra/nxserver/nx-gcc44.patch deleted file mode 100644 index 5b7b7e1f6..000000000 --- a/extra/nxserver/nx-gcc44.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- nx-3.3.0/nxcomp/Loop.cpp.orig 2009-05-17 12:22:19.000000000 +0200 -+++ nx-3.3.0/nxcomp/Loop.cpp 2009-05-17 12:22:43.000000000 +0200 -@@ -10979,7 +10979,7 @@ - packMethod == PACK_LOSSLESS || - packMethod == PACK_ADAPTIVE) - { -- char *dash = rindex(opt, '-'); -+ const char *dash = rindex(opt, '-'); - - if (dash != NULL && strlen(dash) == 2 && - *(dash + 1) >= '0' && *(dash + 1) <= '9') - diff --git a/extra/nxserver/nxcompshad-gcc43.patch b/extra/nxserver/nxcompshad-gcc43.patch deleted file mode 100644 index 274c36635..000000000 --- a/extra/nxserver/nxcompshad-gcc43.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- nxcompshad/Misc.h~ 2007-06-04 13:39:49.000000000 +0200 -+++ nxcompshad/Misc.h 2008-04-12 12:46:24.000000000 +0200 -@@ -18,10 +18,12 @@ - #ifndef Misc_H - #define Misc_H - --#include -+#include - --#include --#include -+#include -+#include -+ -+using namespace std; - - // - // Error handling macros. - diff --git a/extra/obconf/PKGBUILD b/extra/obconf/PKGBUILD deleted file mode 100644 index 0fa8c420e..000000000 --- a/extra/obconf/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 123764 2011-05-12 21:09:06Z andrea $ -# Maintainer: -# Contributor: Andrea Scarpino -# Contributor: Tobias Kieslich -# Contributor: Daniel J Griffiths - -pkgname=obconf -pkgver=2.0.3 -pkgrel=4 -pkgdesc="A GTK2 based configuration tool for the Openbox windowmanager" -arch=('i686' 'x86_64') -url="http://icculus.org/openbox/index.php/ObConf:About" -license=('GPL') -depends=('openbox' 'gtk2' 'libglade' 'desktop-file-utils' 'libsm') -install=${pkgname}.install -source=("http://icculus.org/openbox/${pkgname}/${pkgname}-${pkgver}.tar.gz" - 'http://icculus.org/openbox/mw/images/8/80/Obconf-72.png') -md5sums=('b22e273721851dedad72acbc77eefb68' - '340ae4732e76731d2838473541eb8d4e') - -build() { - cd "${srcdir}"/${pkgname}-${pkgver} - - ./configure --prefix=/usr - make - sed -i 's/=openbox/=obconf/' obconf.desktop -} - -package() { - cd "${srcdir}"/${pkgname}-${pkgver} - - make DESTDIR="${pkgdir}" install - install -Dm644 ../Obconf-72.png \ - "${pkgdir}"/usr/share/pixmaps/obconf.png -} diff --git a/extra/obconf/obconf.install b/extra/obconf/obconf.install deleted file mode 100644 index 5264d8979..000000000 --- a/extra/obconf/obconf.install +++ /dev/null @@ -1,15 +0,0 @@ -# arg 1: the new package version -post_install() { - update-desktop-database -q /usr/share/applications - update-mime-database /usr/share/mime 1> /dev/null -} - -post_upgrade() { - post_install $1 -} - -# arg 1: the old package version -post_remove() { - update-desktop-database -q - update-mime-database /usr/share/mime 1> /dev/null -} diff --git a/extra/openbox/PKGBUILD b/extra/openbox/PKGBUILD deleted file mode 100644 index a71e0b16a..000000000 --- a/extra/openbox/PKGBUILD +++ /dev/null @@ -1,47 +0,0 @@ -# $Id: PKGBUILD 89725 2010-09-03 12:51:52Z remy $ -# Contributor: Andrea Scarpino -# Contributor: tobias -# Contributor: Sarah Hay - -pkgname=openbox -pkgver=3.4.11.2 -pkgrel=2 -pkgdesc="A window manager for the X11 windowing system" -arch=('i686' 'x86_64') -url="http://openbox.org" -license=('GPL') -depends=('startup-notification' 'libxml2' 'libxinerama' 'libxrandr' - 'libxcursor' 'pango') -optdepends=('pyxdg: for the xdg-autostart script') -groups=('lxde') -install=${pkgname}.install -options=('!libtool' 'force') -backup=('etc/xdg/openbox/menu.xml' 'etc/xdg/openbox/rc.xml') -source=(http://www.icculus.org/openbox/releases/${pkgname}-${pkgver}.tar.gz - 'which-2.20.patch') -md5sums=('30e669134fa81df810fe7d1dc59cd931' - 'ec5e3d4d74779b0ca576a053ae54124d') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - # FS#11455 - patch -Np1 -i ${srcdir}/which-2.20.patch || return 1 - sed -i 's#python#python2#' tools/xdg-autostart/xdg-autostart - ./configure --prefix=/usr \ - --with-x \ - --enable-startup-notification \ - --sysconfdir=/etc - make || return 1 -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - - make DESTDIR=${pkgdir} install - - sed -i "s:startkde:/usr/bin/\0:" \ - ${pkgdir}/usr/share/xsessions/openbox-kde.desktop - sed -i "s:=gnome-session:=/usr/bin/gnome-session:" \ - ${pkgdir}/usr/share/xsessions/openbox-gnome.desktop -} diff --git a/extra/openbox/openbox.install b/extra/openbox/openbox.install deleted file mode 100644 index 301c22127..000000000 --- a/extra/openbox/openbox.install +++ /dev/null @@ -1,9 +0,0 @@ -post_install() { - echo "Place menu.xml, rc.xml and autostart.sh in ~/.config/openbox" - echo "They can be found in /etc/xdg/openbox" -} - -post_upgrade() { - post_install -} - diff --git a/extra/openbox/which-2.20.patch b/extra/openbox/which-2.20.patch deleted file mode 100644 index 7f663ae49..000000000 --- a/extra/openbox/which-2.20.patch +++ /dev/null @@ -1,53 +0,0 @@ ---- openbox-3.4.11.1/data/autostart.sh.in 2010-03-14 09:40:37.000000000 -0500 -+++ openbox-3.4.11.1/data/autostart.sh.in 2010-03-26 14:44:36.000000000 -0500 -@@ -3,13 +3,13 @@ - - # Set a background color - BG="" --if which hsetroot >/dev/null; then -+if which hsetroot >/dev/null 2>&1; then - BG=hsetroot - else -- if which esetroot >/dev/null; then -+ if which esetroot >/dev/null 2>&1; then - BG=esetroot - else -- if which xsetroot >/dev/null; then -+ if which xsetroot >/dev/null 2>&1; then - BG=xsetroot - fi - fi -@@ -17,28 +17,28 @@ - test -z $BG || $BG -solid "#303030" - - # D-bus --if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then -+if which dbus-launch >/dev/null 2>&1 && test -z "$DBUS_SESSION_BUS_ADDRESS"; then - eval `dbus-launch --sh-syntax --exit-with-session` - fi - - # Make GTK apps look and behave how they were set up in the gnome config tools - if test -x @libexecdir@/gnome-settings-daemon >/dev/null; then - @libexecdir@/gnome-settings-daemon & --elif which gnome-settings-daemon >/dev/null; then -+elif which gnome-settings-daemon >/dev/null 2>&1; then - gnome-settings-daemon & - # Make GTK apps look and behave how they were set up in the XFCE config tools --elif which xfce-mcs-manager >/dev/null; then -+elif which xfce-mcs-manager >/dev/null 2>&1; then - xfce-mcs-manager n & - fi - - # Preload stuff for KDE apps --if which start_kdeinit >/dev/null; then -+if which start_kdeinit >/dev/null 2>&1; then - LD_BIND_NOW=true start_kdeinit --new-startup +kcminit_startup & - fi - - # Run XDG autostart things. By default don't run anything desktop-specific - # See xdg-autostart --help more info - DESKTOP_ENV="OPENBOX" --if which @secretbindir@/xdg-autostart >/dev/null; then -+if which @secretbindir@/xdg-autostart >/dev/null 2>&1; then - @secretbindir@/xdg-autostart $DESKTOP_ENV - fi diff --git a/extra/pcmanfm/PKGBUILD b/extra/pcmanfm/PKGBUILD deleted file mode 100644 index f08c841c7..000000000 --- a/extra/pcmanfm/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 110558 2011-02-19 22:38:04Z angvp $ -# Maintainer: Angel Velasquez -# Maintainer: Juergen Hoetzel -pkgname=pcmanfm -pkgver=0.9.8 -pkgrel=5 -pkgdesc="File manager of the LXDE Desktop" -arch=('i686' 'x86_64') -url="http://pcmanfm.sourceforge.net/" -license=('GPL') -groups=('lxde') -depends=('gtk2' 'desktop-file-utils' 'libfm') -makedepends=('intltool' 'pkgconfig') -source=(http://downloads.sourceforge.net/pcmanfm/pcmanfm-$pkgver.tar.gz - revert-new-IPC.patch) -md5sums=('4a7fdc0526ed14e3293d784c0ce27dea' '4bedb071a83ba5a7af1aa43b71a262a9') - -build() { - cd "$srcdir/$pkgname-$pkgver" - patch -Np1 -i $srcdir/revert-new-IPC.patch - ./configure --sysconfdir=/etc --prefix=/usr - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/extra/pcmanfm/pcmanfm.install b/extra/pcmanfm/pcmanfm.install deleted file mode 100644 index 98965c989..000000000 --- a/extra/pcmanfm/pcmanfm.install +++ /dev/null @@ -1,14 +0,0 @@ -post_install() { - update-mime-database usr/share/mime > /dev/null - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} - - diff --git a/extra/pcmanfm/revert-new-IPC.patch b/extra/pcmanfm/revert-new-IPC.patch deleted file mode 100644 index fa64fde42..000000000 --- a/extra/pcmanfm/revert-new-IPC.patch +++ /dev/null @@ -1,432 +0,0 @@ -diff -Naur pcmanfm-20101030_10ae31a.orig/src/Makefile.am pcmanfm-20101030_10ae31a/src/Makefile.am ---- pcmanfm-20101030_10ae31a.orig/src/Makefile.am 2010-10-30 20:36:02.000000000 +0200 -+++ pcmanfm-20101030_10ae31a/src/Makefile.am 2010-10-31 09:13:48.000000000 +0100 -@@ -16,7 +16,6 @@ - pref.c pref.h \ - utils.c utils.h \ - gseal-gtk-compat.h \ -- single-inst.c single-inst.h \ - $(NULL) - - EXTRA_DIST= \ -diff -Naur pcmanfm-20101030_10ae31a.orig/src/pcmanfm.c pcmanfm-20101030_10ae31a/src/pcmanfm.c ---- pcmanfm-20101030_10ae31a.orig/src/pcmanfm.c 2010-10-30 20:36:02.000000000 +0200 -+++ pcmanfm-20101030_10ae31a/src/pcmanfm.c 2010-10-31 09:25:45.000000000 +0100 -@@ -31,6 +31,8 @@ - #include - /* socket is used to keep single instance */ - #include -+#include -+#include - #include - #include /* for getcwd */ - -@@ -41,13 +43,14 @@ - #include "volume-manager.h" - #include "pref.h" - #include "pcmanfm.h" --#include "single-inst.h" -+ -+static int sock; -+GIOChannel* io_channel = NULL; - - static int signal_pipe[2] = {-1, -1}; - gboolean daemon_mode = FALSE; - - static char** files_to_open = NULL; --static int n_files_to_open = 0; - static char* profile = NULL; - static gboolean no_desktop = FALSE; - static gboolean show_desktop = FALSE; -@@ -80,25 +83,13 @@ - { NULL } - }; - --/* single instance command id */ --enum { -- CMD_INVALID, -- CMD_CWD, -- CMD_PROFILE, -- CMD_DESKTOP, -- CMD_DESKTOP_OFF, -- CMD_DAEMON_MODE, -- CMD_DESKTOP_PREF, -- CMD_SET_WALLPAPER, -- CMD_WALLPAPER_MODE, -- CMD_SHOW_PREF, -- CMD_FILES_TO_OPEN, -- CMD_EOF --}; -- - static const char* valid_wallpaper_modes[] = {"color", "stretch", "fit", "center", "tile"}; - -+static gboolean single_instance_check(); -+static void single_instance_finalize(); -+static void get_socket_name(char* buf, int len); - static gboolean pcmanfm_run(); -+static gboolean on_socket_event(GIOChannel* ioc, GIOCondition cond, gpointer data); - - /* it's not safe to call gtk+ functions in unix signal handler - * since the process is interrupted here and the state of gtk+ is unpredictable. */ -@@ -121,97 +112,6 @@ - return TRUE; - } - --static gboolean on_single_inst_command(int cmd, SingleInstCmdData* data) --{ -- switch(cmd) -- { -- case CMD_CWD: -- g_free(ipc_cwd); -- ipc_cwd = single_inst_get_str(data, NULL); -- break; -- case CMD_PROFILE: -- /* Not supported */ -- break; -- case CMD_DESKTOP: -- single_inst_get_bool(data, &show_desktop); -- break; -- case CMD_DESKTOP_OFF: -- single_inst_get_bool(data, &desktop_off); -- break; -- case CMD_DAEMON_MODE: -- /* Not supported */ -- break; -- case CMD_DESKTOP_PREF: -- single_inst_get_bool(data, &desktop_pref); -- break; -- case CMD_SET_WALLPAPER: -- g_free(set_wallpaper); -- set_wallpaper = single_inst_get_str(data, NULL); -- break; -- case CMD_WALLPAPER_MODE: -- g_free(wallpaper_mode); -- wallpaper_mode = single_inst_get_str(data, NULL); -- break; -- case CMD_SHOW_PREF: -- single_inst_get_int(data, &show_pref); -- break; -- case CMD_FILES_TO_OPEN: -- { -- g_strfreev(files_to_open); -- n_files_to_open = 0; -- files_to_open = single_inst_get_strv(data, &n_files_to_open); -- } -- break; -- case CMD_EOF: -- { -- int i; -- /* canonicalize filename if needed. */ -- for(i = 0; i < n_files_to_open; ++i) -- { -- char* file = files_to_open[i]; -- char* scheme = g_uri_parse_scheme(file); -- if(scheme) /* a valid URI */ -- { -- /* FIXME: should we canonicalize URIs? and how about file:///? */ -- g_free(scheme); -- } -- else /* a file path */ -- { -- files_to_open[i] = fm_canonicalize_filename(file, ipc_cwd); -- g_free(file); -- } -- } -- -- /* handle the parsed result and run the main program */ -- pcmanfm_run(); -- } -- break; -- } -- return TRUE; --} -- --/* we're not the first instance. pass the argv to the existing one. */ --static void pass_args_to_existing_instance() --{ -- /* send our current working dir to existing instance via IPC. */ -- ipc_cwd = g_get_current_dir(); -- single_inst_send_str(CMD_CWD, ipc_cwd); -- g_free(ipc_cwd); -- -- single_inst_send_bool(CMD_DESKTOP, show_desktop); -- single_inst_send_bool(CMD_DESKTOP_OFF, desktop_off); -- single_inst_send_bool(CMD_DESKTOP_PREF, desktop_pref); -- single_inst_send_str(CMD_SET_WALLPAPER, set_wallpaper); -- single_inst_send_str(CMD_WALLPAPER_MODE, wallpaper_mode); -- single_inst_send_int(CMD_SHOW_PREF, show_pref); -- /* single_inst_send_bool(CMD_FIND_FILES, find_files); */ -- -- single_inst_send_strv(CMD_FILES_TO_OPEN, files_to_open); -- single_inst_send_bool(CMD_EOF, TRUE); /* all args have been sent. */ -- -- single_inst_finalize(); --} -- - int main(int argc, char** argv) - { - FmConfig* config; -@@ -230,17 +130,10 @@ - return 1; - } - -- /* ensure that there is only one instance of pcmanfm. */ -- switch(single_inst_init("pcmanfm", on_single_inst_command)) -- { -- case SINGLE_INST_CLIENT: /* we're not the first instance. */ -- pass_args_to_existing_instance(); -- gdk_notify_startup_complete(); -- return 0; -- case SINGLE_INST_ERROR: /* error happened. */ -- single_inst_finalize(); -- return 1; -- } -+ /* ensure that there is only one instance of pcmanfm. -+ if there is an existing instance, command line arguments -+ will be passed to the existing instance, and exit() will be called here. */ -+ single_instance_check(); - - if(pipe(signal_pipe) == 0) - { -@@ -274,13 +167,240 @@ - fm_volume_manager_finalize(); - } - -- single_inst_finalize(); -+ single_instance_finalize(); -+ - fm_gtk_finalize(); - - g_object_unref(config); - return 0; - } - -+inline static void buf_append_str(GByteArray* buf, const char* str) -+{ -+ int len; -+ if(G_LIKELY(str)) -+ { -+ len = strlen(str) + 1; -+ g_byte_array_append(buf, (guint8*)&len, sizeof(len)); -+ g_byte_array_append(buf, (guint8*)str, len); -+ } -+ else -+ { -+ len = 0; -+ g_byte_array_append(buf, (guint8*)&len, sizeof(len)); -+ } -+} -+ -+inline static GByteArray* args_to_ipc_buf() -+{ -+ int i, len; -+ GByteArray* buf = g_byte_array_sized_new(4096); -+ /* send our current working dir to existing instance via IPC. */ -+ ipc_cwd = g_get_current_dir(); -+ buf_append_str(buf, ipc_cwd); -+ g_free(ipc_cwd); -+ -+ /* g_byte_array_append(buf, (guint8*)&new_tab, sizeof(new_tab)); */ -+ g_byte_array_append(buf, (guint8*)&show_desktop, sizeof(show_desktop)); -+ g_byte_array_append(buf, (guint8*)&desktop_off, sizeof(desktop_off)); -+ g_byte_array_append(buf, (guint8*)&desktop_pref, sizeof(desktop_pref)); -+ buf_append_str(buf, set_wallpaper); -+ buf_append_str(buf, wallpaper_mode); -+ g_byte_array_append(buf, (guint8*)&show_pref, sizeof(show_pref)); -+ g_byte_array_append(buf, (guint8*)&find_files, sizeof(find_files)); -+ g_byte_array_append(buf, (guint8*)&no_desktop, sizeof(no_desktop)); -+ -+ len = files_to_open ? g_strv_length(files_to_open) : 0; -+ g_byte_array_append(buf, (guint8*)&len, sizeof(len)); -+ for(i = 0; i < len; ++i) -+ buf_append_str(buf, files_to_open[i]); -+ -+ return buf; -+} -+ -+inline static gboolean buf_read_bool(const char**p) -+{ -+ gboolean ret; -+ memcpy(&ret, *p, sizeof(ret)); -+ *p += sizeof(ret); -+ return ret; -+} -+ -+inline static int buf_read_int(const char**p) -+{ -+ int ret; -+ memcpy(&ret, *p, sizeof(ret)); -+ *p += sizeof(ret); -+ return ret; -+} -+ -+inline static char* buf_read_str(const char**p) -+{ -+ char* ret; -+ int len = buf_read_int(p); -+ if(len > 0) -+ { -+ ret = g_malloc(len); -+ memcpy(ret, *p, len); -+ *p += len; -+ } -+ else -+ ret = NULL; -+ return ret; -+} -+ -+inline static void ipc_buf_to_args(GByteArray* buf) -+{ -+ int i, len; -+ char* p = buf->data; -+ char* cwd = buf_read_str(&p); -+ /* new_tab = buf_read_bool(&p); */ -+ show_desktop = buf_read_bool(&p); -+ desktop_off = buf_read_bool(&p); -+ desktop_pref = buf_read_bool(&p); -+ g_free(set_wallpaper); -+ set_wallpaper = buf_read_str(&p); -+ g_free(wallpaper_mode); -+ wallpaper_mode = buf_read_str(&p); -+ show_pref = buf_read_int(&p); -+ find_files = buf_read_bool(&p); -+ no_desktop = buf_read_bool(&p); -+ -+ len = buf_read_int(&p); -+ /* g_debug("len = %d", len); */ -+ if(len > 0) -+ { -+ files_to_open = g_new(char*, len + 1); -+ for(i = 0; i < len; ++i) -+ { -+ char* file = buf_read_str(&p); -+ char* scheme = g_uri_parse_scheme(file); -+ if(scheme) /* a valid URI */ -+ { -+ /* FIXME: should we canonicalize URIs? and how about file:///? */ -+ files_to_open[i] = file; -+ g_free(scheme); -+ } -+ else /* a file path */ -+ { -+ files_to_open[i] = fm_canonicalize_filename(file, cwd); -+ g_free(file); -+ } -+ } -+ files_to_open[i] = NULL; -+ } -+ else -+ files_to_open = NULL; -+ g_free(cwd); -+} -+ -+gboolean on_socket_event( GIOChannel* ioc, GIOCondition cond, gpointer data ) -+{ -+ int client, r; -+ socklen_t addr_len = 0; -+ struct sockaddr_un client_addr ={ 0 }; -+ static char buf[ 1024 ]; -+ GByteArray* args; -+ -+ if ( cond & G_IO_IN ) -+ { -+ client = accept( g_io_channel_unix_get_fd( ioc ), (struct sockaddr *)&client_addr, &addr_len ); -+ if ( client != -1 ) -+ { -+ args = g_byte_array_sized_new(4096); -+ while( (r = read( client, buf, sizeof(buf) )) > 0 ) -+ g_byte_array_append( args, (guint8*)buf, r); -+ shutdown( client, 2 ); -+ close( client ); -+ ipc_buf_to_args(args); -+ g_byte_array_free( args, TRUE ); -+ pcmanfm_run(); -+ } -+ } -+ return TRUE; -+} -+ -+void get_socket_name( char* buf, int len ) -+{ -+ char* dpy = gdk_get_display(); -+ g_snprintf( buf, len, "/tmp/.pcmanfm-socket%s-%s", dpy, g_get_user_name() ); -+ g_free( dpy ); -+} -+ -+gboolean single_instance_check() -+{ -+ struct sockaddr_un addr; -+ int addr_len; -+ int ret; -+ int reuse; -+ -+ if((sock = socket(AF_UNIX, SOCK_STREAM, 0)) == -1) -+ { -+ ret = 1; -+ goto _exit; -+ } -+ -+ /* FIXME: use abstract socket */ -+ addr.sun_family = AF_UNIX; -+ get_socket_name(addr.sun_path, sizeof( addr.sun_path )); -+#ifdef SUN_LEN -+ addr_len = SUN_LEN(&addr); -+#else -+ addr_len = strlen( addr.sun_path ) + sizeof( addr.sun_family ); -+#endif -+ -+ /* try to connect to existing instance */ -+ if(connect(sock, (struct sockaddr*)&addr, addr_len) == 0) -+ { -+ /* connected successfully */ -+ GByteArray* buf = args_to_ipc_buf(); -+ write(sock, buf->data, buf->len); -+ g_byte_array_free(buf, TRUE); -+ -+ shutdown( sock, 2 ); -+ close( sock ); -+ ret = 0; -+ goto _exit; -+ } -+ -+ /* There is no existing server, and we are in the first instance. */ -+ unlink( addr.sun_path ); /* delete old socket file if it exists. */ -+ reuse = 1; -+ ret = setsockopt( sock, SOL_SOCKET, SO_REUSEADDR, &reuse, sizeof(reuse) ); -+ if(bind(sock, (struct sockaddr*)&addr, addr_len) == -1) -+ { -+ ret = 1; -+ goto _exit; -+ } -+ -+ io_channel = g_io_channel_unix_new(sock); -+ g_io_channel_set_encoding(io_channel, NULL, NULL); -+ g_io_channel_set_buffered(io_channel, FALSE); -+ g_io_add_watch(io_channel, G_IO_IN, -+ (GIOFunc)on_socket_event, NULL); -+ if(listen(sock, 5) == -1) -+ { -+ ret = 1; -+ goto _exit; -+ } -+ return TRUE; -+ -+_exit: -+ -+ gdk_notify_startup_complete(); -+ exit( ret ); -+} -+ -+void single_instance_finalize() -+{ -+ char lock_file[256]; -+ shutdown(sock, 2); -+ g_io_channel_unref(io_channel); -+ close(sock); -+ get_socket_name(lock_file, sizeof( lock_file )); -+ unlink(lock_file); -+} -+ - static FmJobErrorAction on_file_info_job_error(FmFileInfoJob* job, GError* err, FmJobErrorSeverity severity, gpointer user_data) - { - if(err->domain == G_IO_ERROR) diff --git a/extra/phonon-xine/PKGBUILD b/extra/phonon-xine/PKGBUILD deleted file mode 100644 index 2d4dccfb1..000000000 --- a/extra/phonon-xine/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id$ -# Maintainer: Andrea Scarpino - -pkgname=phonon-xine -pkgver=4.4.4 -pkgrel=1 -arch=('i686' 'x86_64') -url="http://phonon.kde.org" -pkgdesc="Phonon Xine backend" -license=('LGPL') -depends=('xine-lib') -makedepends=('cmake' 'automoc4' 'phonon') -provides=('phonon-backend') -source=("http://download.kde.org/stable/phonon/phonon-backend-xine/${pkgver}/src/phonon-backend-xine-${pkgver}.tar.bz2") -md5sums=('b127104e67538e573adeed3b2fb3bf55') - -build() { - cd ${srcdir} - mkdir build - cd build - cmake ../phonon-backend-xine-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr - make -} - -package() { - cd ${srcdir}/build - make DESTDIR=${pkgdir} install -} diff --git a/extra/pidgin/nm09-pidgin.patch b/extra/pidgin/nm09-pidgin.patch deleted file mode 100644 index 1c2471d1f..000000000 --- a/extra/pidgin/nm09-pidgin.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -up pidgin-2.7.10/libpurple/network.c.foo pidgin-2.7.10/libpurple/network.c ---- pidgin-2.7.10/libpurple/network.c.foo 2011-03-10 02:21:43.920933267 -0600 -+++ pidgin-2.7.10/libpurple/network.c 2011-03-10 02:23:11.466838793 -0600 -@@ -71,6 +71,10 @@ - #include - #include - -+#if !defined(NM_CHECK_VERSION) -+#define NM_CHECK_VERSION(x,y,z) 0 -+#endif -+ - static DBusGConnection *nm_conn = NULL; - static DBusGProxy *nm_proxy = NULL; - static DBusGProxy *dbus_proxy = NULL; -@@ -863,7 +867,13 @@ nm_update_state(NMState state) - - switch(state) - { -+#if NM_CHECK_VERSION(0,8,992) -+ case NM_STATE_CONNECTED_LOCAL: -+ case NM_STATE_CONNECTED_SITE: -+ case NM_STATE_CONNECTED_GLOBAL: -+#else - case NM_STATE_CONNECTED: -+#endif - /* Call res_init in case DNS servers have changed */ - res_init(); - /* update STUN IP in case we it changed (theoretically we could -@@ -880,6 +890,9 @@ nm_update_state(NMState state) - case NM_STATE_ASLEEP: - case NM_STATE_CONNECTING: - case NM_STATE_DISCONNECTED: -+#if NM_CHECK_VERSION(0,8,992) -+ case NM_STATE_DISCONNECTING: -+#endif - if (prev != NM_STATE_CONNECTED && prev != NM_STATE_UNKNOWN) - break; - if (ui_ops != NULL && ui_ops->network_disconnected != NULL) diff --git a/extra/wvdial/PKGBUILD b/extra/wvdial/PKGBUILD deleted file mode 100644 index 916a2c514..000000000 --- a/extra/wvdial/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 123798 2011-05-13 06:53:04Z andrea $ -# Maintainer: -# Contributor: Andrea Scarpino -# Contributor: dorphell -# Contributor: Judd Vinet - -pkgname=wvdial -pkgver=1.61 -pkgrel=3 -pkgdesc="A dialer program to connect to the Internet" -url="http://alumnit.ca/wiki/index.php?page=WvDial" -arch=('i686' 'x86_64') -license=('custom') -depends=('wvstreams' 'ppp' 'gcc-libs') -makedepends=('lockdev') -options=('!makeflags' '!buildflags') -source=("http://wvstreams.googlecode.com/files/${pkgname}-${pkgver}.tar.gz") -md5sums=('acd3b2050c9b65fff2aecda6576ee7bc') - -build() { - cd "${srcdir}"/${pkgname}-${pkgver} - ./configure - make LOCKDEV="-llockdev" -} - -package() { - cd "${srcdir}"/${pkgname}-${pkgver} - make prefix="${pkgdir}"/usr PPPDIR="${pkgdir}"/etc/ppp/peers install - install -Dm644 COPYING.LIB "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/extra/wvstreams/PKGBUILD b/extra/wvstreams/PKGBUILD deleted file mode 100644 index 3abe73609..000000000 --- a/extra/wvstreams/PKGBUILD +++ /dev/null @@ -1,40 +0,0 @@ -# $Id: PKGBUILD 75519 2010-04-01 18:49:52Z andrea $ -# Maintainer: -# Contributor: Andrea Scarpino -# Contributor: dorphell - -pkgname=wvstreams -pkgver=4.6.1 -pkgrel=2 -pkgdesc="A network programming library written in C++" -arch=('i686' 'x86_64') -url="http://alumnit.ca/wiki/?page=WvStreams" -license=('LGPL') -depends=('zlib' 'pam' 'xplc' "openssl" 'readline') -source=(http://wvstreams.googlecode.com/files/${pkgname}-${pkgver}.tar.gz) -md5sums=('2760dac31a43d452a19a3147bfde571c') -options=('!makeflags') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --without-dbus \ - --with-pam \ - --with-openssl \ - --without-tcl \ - --without-qt || return 1 - make COPTS="$CFLAGS -fPIC" CXXOPTS="$CXXFLAGS -fPIC -fpermissive" VERBOSE=1 || return 1 -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install || return 1 - - # FS#15974 - # --without-dbus still installs the pkg-config file - rm ${pkgdir}/usr/lib/pkgconfig/libwvdbus.pc - # --without-qt still installs the pkg-config file - rm ${pkgdir}/usr/lib/pkgconfig/libwvqt.pc -} diff --git a/extra/xbindkeys/PKGBUILD b/extra/xbindkeys/PKGBUILD deleted file mode 100644 index 9d2e6f0e8..000000000 --- a/extra/xbindkeys/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 114461 2011-03-14 01:44:22Z eric $ -# Contributor: Thayer Williams -# Contributor: damir -# Maintainer: Daniel J Griffiths - -pkgname=xbindkeys -pkgver=1.8.5 -pkgrel=1 -pkgdesc="Launch shell commands with your keyboard or your mouse under X" -arch=('i686' 'x86_64') -url="http://www.nongnu.org/xbindkeys/xbindkeys.html" -license=('GPL') -depends=('libx11' 'guile>=1.8.1' 'tk') -source=(http://www.nongnu.org/xbindkeys/${pkgname}-${pkgver}.tar.gz) -md5sums=('4b66a05594dbc6888c0a6439351aa66d') -sha1sums=('a597cfecce65dd47595510edb8f7eaa094c4b34b') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/extra/xplc/PKGBUILD b/extra/xplc/PKGBUILD deleted file mode 100644 index 402abc2ca..000000000 --- a/extra/xplc/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 97257 2010-10-28 04:11:13Z allan $ -# Maintainer: dorphell -pkgname=xplc -pkgver=0.3.13 -pkgrel=3 -pkgdesc="Cross-Platform Lightweight Components" -arch=(i686 x86_64) -url="http://xplc.sourceforge.net" -license=('LGPL') -depends=('gcc-libs') -source=(http://downloads.sourceforge.net/sourceforge/xplc/$pkgname-$pkgver.tar.gz) -md5sums=('39da3270527c8712b8e8fcf03768d29f') - -build() { - cd $srcdir/$pkgname-$pkgver - - export LDFLAGS="${LDFLAGS//-Wl,--as-needed}" - - ./configure --prefix=/usr --mandir=/usr/share/man --without-libuuid - make -} - -package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install - mv $pkgdir/usr/share/man/man1/{uuidgen.1,uuidcdef.1} - rm -f $pkgdir/usr/bin/uuidgen -} diff --git a/extra/zope-interface/PKGBUILD b/extra/zope-interface/PKGBUILD deleted file mode 100644 index e584a84c1..000000000 --- a/extra/zope-interface/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# $Id: PKGBUILD 113445 2011-03-08 17:33:50Z ibiru $ -# Maintainer : Ionut Biru -# Contributor: Douglas Soares de Andrade - -pkgname=zope-interface -pkgver=3.6.1 -pkgrel=1 -pkgdesc="Separate distribution of the zope.interface package used in Zope 3." -license=('ZPL') -arch=('i686' 'x86_64') -url="http://pypi.python.org/pypi/zope.interface" -depends=('python2') -source=(http://pypi.python.org/packages/source/z/zope.interface/zope.interface-${pkgver}.tar.gz) -md5sums=('7a895181b8d10be4a7e9a3afa13cd3be') - -build() { - cd ${srcdir}/zope.interface-${pkgver} - python2 setup.py install --prefix=/usr --root=${pkgdir} --optimize=1 - # Blabla. - rm $pkgdir/usr/lib/python2.7/site-packages/zope/interface/README*.txt -} diff --git a/kde-unstable/qt/PKGBUILD b/kde-unstable/qt/PKGBUILD deleted file mode 100644 index 89e96034f..000000000 --- a/kde-unstable/qt/PKGBUILD +++ /dev/null @@ -1,222 +0,0 @@ -# $Id: PKGBUILD 125344 2011-05-26 00:12:04Z andrea $ -# Maintainer: Andrea Scarpino -# Contributor: Pierre Schmitz - -pkgbase=qt -pkgname=('qt' 'qt-private-headers') -pkgver=4.7.3 -pkgrel=2 -arch=('i686' 'x86_64') -url='http://qt.nokia.com/' -license=('GPL3' 'LGPL') -makedepends=('libtiff' 'libpng' 'libmng' 'sqlite3' 'ca-certificates' 'glib2' 'dbus' - 'fontconfig' 'libgl' 'libsm' 'libxrandr' 'libxv' 'libxi' 'alsa-lib' - 'xdg-utils' 'hicolor-icon-theme' 'desktop-file-utils' 'mesa' 'postgresql-libs' - 'mysql' 'unixodbc' 'cups' 'gtk2') -options=('!libtool') -_pkgfqn="qt-everywhere-opensource-src-${pkgver}" -source=("ftp://ftp.qt.nokia.com/qt/source/${_pkgfqn}.tar.gz" - 'assistant.desktop' 'designer.desktop' 'linguist.desktop' - 'qtconfig.desktop' - 'qtbug-16292.patch') -md5sums=('49b96eefb1224cc529af6fe5608654fe' - 'fc211414130ab2764132e7370f8e5caa' - '85179f5e0437514f8639957e1d8baf62' - 'f11852b97583610f3dbb669ebc3e21bc' - '6b771c8a81dd90b45e8a79afa0e5bbfd' - 'dc7ed8c2e8c68a175f7f05a34dccc937') - -build() { - unset QMAKESPEC - export QT4DIR=$srcdir/$_pkgfqn - export PATH=${QT4DIR}/bin:${PATH} - export LD_LIBRARY_PATH=${QT4DIR}/lib:${LD_LIBRARY_PATH} - - cd $srcdir/$_pkgfqn - - # Already fixed upstream - patch -p1 -i "${srcdir}"/qtbug-16292.patch - - sed -i "s|-O2|$CXXFLAGS|" mkspecs/common/g++.conf - sed -i "/^QMAKE_RPATH/s| -Wl,-rpath,||g" mkspecs/common/g++.conf - sed -i "/^QMAKE_LFLAGS\s/s|+=|+= $LDFLAGS|g" mkspecs/common/g++.conf - - ./configure -confirm-license -opensource \ - -prefix /usr \ - -docdir /usr/share/doc/qt \ - -plugindir /usr/lib/qt/plugins \ - -importdir /usr/lib/qt/imports \ - -datadir /usr/share/qt \ - -translationdir /usr/share/qt/translations \ - -sysconfdir /etc \ - -examplesdir /usr/share/doc/qt/examples \ - -demosdir /usr/share/doc/qt/demos \ - -largefile \ - -plugin-sql-{psql,mysql,sqlite,odbc} \ - -system-sqlite \ - -xmlpatterns \ - -no-phonon \ - -no-phonon-backend \ - -svg \ - -webkit \ - -script \ - -scripttools \ - -system-zlib \ - -system-libtiff \ - -system-libpng \ - -system-libmng \ - -system-libjpeg \ - -nomake demos \ - -nomake examples \ - -nomake docs \ - -no-rpath \ - -openssl-linked \ - -silent \ - -optimized-qmake \ - -dbus \ - -reduce-relocations \ - -no-separate-debug-info \ - -gtkstyle \ - -opengl \ - -no-openvg \ - -glib - make -} - -package_qt() { - pkgdesc='A cross-platform application and UI framework' - depends=('libtiff' 'libpng' 'libmng' 'sqlite3' 'ca-certificates' 'glib2' 'dbus' - 'fontconfig' 'libgl' 'libsm' 'libxrandr' 'libxv' 'libxi' 'alsa-lib' - 'xdg-utils' 'hicolor-icon-theme' 'desktop-file-utils') - optdepends=('postgresql-libs: PostgreSQL driver' - 'libmysqlclient: MySQL driver' - 'unixodbc: ODBC driver' - 'libxinerama: Xinerama support' - 'libxcursor: Xcursor support' - 'libxfixes: Xfixes support') - install='qt.install' - - cd $srcdir/$_pkgfqn - make INSTALL_ROOT=$pkgdir install - - # install missing icons and desktop files - for icon in tools/linguist/linguist/images/icons/linguist-*-32.png ; do - size=$(echo $(basename ${icon}) | cut -d- -f2) - install -p -D -m644 ${icon} ${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/linguist.png - done - install -p -D -m644 src/gui/dialogs/images/qtlogo-64.png ${pkgdir}/usr/share/icons/hicolor/64x64/apps/qtlogo.png - install -p -D -m644 tools/assistant/tools/assistant/images/assistant.png ${pkgdir}/usr/share/icons/hicolor/32x32/apps/assistant.png - install -p -D -m644 tools/designer/src/designer/images/designer.png ${pkgdir}/usr/share/icons/hicolor/128x128/apps/designer.png - install -d ${pkgdir}/usr/share/applications - install -m644 ${srcdir}/{linguist,designer,assistant,qtconfig}.desktop ${pkgdir}/usr/share/applications/ - - # install license addition - install -D -m644 LGPL_EXCEPTION.txt ${pkgdir}/usr/share/licenses/qt/LGPL_EXCEPTION.txt - - # Fix wrong path in pkgconfig files - find ${pkgdir}/usr/lib/pkgconfig -type f -name '*.pc' \ - -exec perl -pi -e "s, -L${srcdir}/?\S+,,g" {} \; - # Fix wrong path in prl files - find ${pkgdir}/usr/lib -type f -name '*.prl' \ - -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \; -} - -package_qt-private-headers(){ - pkgdesc="Qt private headers for development" - depends=("qt=${pkgver}") - - install -d ${pkgdir}/usr/include/phonon/private - cd ${srcdir}/$_pkgfqn/src/3rdparty/phonon/phonon/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/phonon/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/Qt3Support/private - cd ${srcdir}/$_pkgfqn/src/qt3support/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/Qt3Support/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtCore/private - cd ${srcdir}/$_pkgfqn/src/corelib/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtCore/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtDBus/private - cd ${srcdir}/$_pkgfqn/src/dbus/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtDBus/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtDeclarative/private - cd ${srcdir}/$_pkgfqn/src/declarative/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtDeclarative/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtDesigner/private - cd ${srcdir}/$_pkgfqn/tools/designer/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtDesigner/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtGui/private - cd ${srcdir}/$_pkgfqn/src/gui/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtGui/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtHelp/private - cd ${srcdir}/$_pkgfqn/tools/assistant/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtHelp/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtMultimedia/private - cd ${srcdir}/$_pkgfqn/src/multimedia/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtMultimedia/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtNetwork/private - cd ${srcdir}/$_pkgfqn/src/network/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtNetwork/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtOpenGL/private - cd ${srcdir}/$_pkgfqn/src/opengl/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtOpenGL/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtScript/private - cd ${srcdir}/$_pkgfqn/src/script/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtScript/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtScriptTools/private - cd ${srcdir}/$_pkgfqn/src/scripttools/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtScriptTools/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtSql/private - cd ${srcdir}/$_pkgfqn/src/sql/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtSql/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtSvg/private - cd ${srcdir}/$_pkgfqn/src/svg/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtSvg/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtTest/private - cd ${srcdir}/$_pkgfqn/src/testlib/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtTest/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtUiTools/private - cd ${srcdir}/$_pkgfqn/tools/designer/src/uitools - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtUiTools/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtWebKit/private - cd ${srcdir}/$_pkgfqn/src/3rdparty/webkit - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtWebKit/private/ \; &> /dev/null - - install -d ${pkgdir}/usr/include/QtXmlPatterns/private - cd ${srcdir}/$_pkgfqn/src/xmlpatterns/ - find . -name "*_p.h" -exec install -m644 {} \ - ${pkgdir}/usr/include/QtXmlPatterns/private/ \; &> /dev/null -} diff --git a/kde-unstable/qt/assistant.desktop b/kde-unstable/qt/assistant.desktop deleted file mode 100644 index a9e98c44b..000000000 --- a/kde-unstable/qt/assistant.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Name=Qt Assistant -Comment=Shows Qt documentation and examples -Exec=/usr/bin/assistant -Icon=assistant -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Development;Documentation; diff --git a/kde-unstable/qt/designer.desktop b/kde-unstable/qt/designer.desktop deleted file mode 100644 index 9b7b6e9aa..000000000 --- a/kde-unstable/qt/designer.desktop +++ /dev/null @@ -1,11 +0,0 @@ -[Desktop Entry] -Name=Qt Designer -GenericName=Interface Designer -Comment=Design GUIs for Qt applications -Exec=/usr/bin/designer -Icon=designer -MimeType=application/x-designer; -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Development; diff --git a/kde-unstable/qt/linguist.desktop b/kde-unstable/qt/linguist.desktop deleted file mode 100644 index 8cbe86599..000000000 --- a/kde-unstable/qt/linguist.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Name=Qt Linguist -Comment=Add translations to Qt applications -Exec=/usr/bin/linguist -Icon=linguist -MimeType=text/vnd.trolltech.linguist;application/x-linguist; -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Development; diff --git a/kde-unstable/qt/qt.install b/kde-unstable/qt/qt.install deleted file mode 100644 index 81ce5c4b0..000000000 --- a/kde-unstable/qt/qt.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/kde-unstable/qt/qtbug-16292.patch b/kde-unstable/qt/qtbug-16292.patch deleted file mode 100644 index 9728e28f5..000000000 --- a/kde-unstable/qt/qtbug-16292.patch +++ /dev/null @@ -1,62 +0,0 @@ -From e340844bd614add505a39a3a6b915632476f6305 Mon Sep 17 00:00:00 2001 -From: Gabriel de Dietrich -Date: Tue, 15 Feb 2011 11:19:26 +0100 -Subject: [PATCH] Fix crash in KPackageKit - -QTreeViewPrivate::itemHeight() may refer to an invalid QModelIndex -after calling QTreeView::indexRowSizeHint(). - -Same thing inside QTreeView::indexRowSizeHint(), since -QHeaderView::count() will call -QAbstractItemViewPrivate::executePostedLayout() which may invalidate -all the QModelIndex. - -Reviewed-by: Olivier -Task-number: QTBUG-16292 ---- - src/gui/itemviews/qtreeview.cpp | 11 ++++++----- - 1 files changed, 6 insertions(+), 5 deletions(-) - -diff --git a/src/gui/itemviews/qtreeview.cpp b/src/gui/itemviews/qtreeview.cpp -index f1f3236..c0573bb 100644 ---- a/src/gui/itemviews/qtreeview.cpp -+++ b/src/gui/itemviews/qtreeview.cpp -@@ -2753,6 +2753,7 @@ int QTreeView::indexRowSizeHint(const QModelIndex &index) const - - int start = -1; - int end = -1; -+ int indexRow = index.row(); - int count = d->header->count(); - bool emptyHeader = (count == 0); - QModelIndex parent = index.parent(); -@@ -2789,7 +2790,7 @@ int QTreeView::indexRowSizeHint(const QModelIndex &index) const - int logicalColumn = emptyHeader ? column : d->header->logicalIndex(column); - if (d->header->isSectionHidden(logicalColumn)) - continue; -- QModelIndex idx = d->model->index(index.row(), logicalColumn, parent); -+ QModelIndex idx = d->model->index(indexRow, logicalColumn, parent); - if (idx.isValid()) { - QWidget *editor = d->editorForIndex(idx).editor; - if (editor && d->persistent.contains(editor)) { -@@ -3224,14 +3225,14 @@ int QTreeViewPrivate::itemHeight(int item) const - if (viewItems.isEmpty()) - return 0; - const QModelIndex &index = viewItems.at(item).index; -+ if (!index.isValid()) -+ return 0; - int height = viewItems.at(item).height; -- if (height <= 0 && index.isValid()) { -+ if (height <= 0) { - height = q_func()->indexRowSizeHint(index); - viewItems[item].height = height; - } -- if (!index.isValid() || height < 0) -- return 0; -- return height; -+ return qMax(height, 0); - } - - --- -1.6.1 - diff --git a/kde-unstable/qt/qtconfig.desktop b/kde-unstable/qt/qtconfig.desktop deleted file mode 100644 index 46dcf9e3d..000000000 --- a/kde-unstable/qt/qtconfig.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Name=Qt Config -Comment=Configure Qt behavior, styles, fonts -Exec=/usr/bin/qtconfig -Icon=qtlogo -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Settings; -NoDisplay=true diff --git a/social/bitcoin-daemon/makefile.archlinux b/social/bitcoin-daemon/makefile.archlinux deleted file mode 100644 index 062a29d82..000000000 --- a/social/bitcoin-daemon/makefile.archlinux +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright (c) 2009-2010 Satoshi Nakamoto -# Rewritten for Archlinux by shahid -# Distributed under the MIT/X11 software license, see the accompanying -# file license.txt or http://www.opensource.org/licenses/mit-license.php. - - -INCLUDEPATHS= \ - -I"/usr/include" \ - -LIBPATHS= \ - -L"/usr/lib" \ - -L"/usr/local/lib" - -LIBS= \ - -Wl,-Bstatic \ - -l boost_system \ - -l boost_filesystem \ - -l boost_program_options \ - -l boost_thread \ - -l db_cxx \ - -l crypto \ - -Wl,-Bdynamic \ - -l gthread-2.0 \ - ${LDFLAGS} - -DEBUGFLAGS=-g -D__WXDEBUG__ -CCFLAGS=${CXXFLAGS} -Wno-invalid-offsetof -Wformat $(WXDEFS) $(INCLUDEPATHS) -HEADERS=headers.h strlcpy.h serialize.h uint256.h util.h key.h bignum.h base58.h \ - script.h db.h net.h irc.h main.h rpc.h uibase.h ui.h noui.h init.h - -OBJS= \ - obj/util.o \ - obj/script.o \ - obj/db.o \ - obj/net.o \ - obj/irc.o \ - obj/main.o \ - obj/rpc.o \ - obj/init.o \ - cryptopp/obj/sha.o \ - cryptopp/obj/cpu.o - - -all: bitcoin - - -headers.h.gch: headers.h $(HEADERS) - g++ -c $(CCFLAGS) -DGUI -o $@ $< - -obj/%.o: %.cpp $(HEADERS) headers.h.gch - g++ -c $(CCFLAGS) -DGUI -o $@ $< - -# -DCRYPTOPP_DISABLE_SSE2 -cryptopp/obj/%.o: cryptopp/%.cpp - g++ -c $(CCFLAGS) -O3 -o $@ $< - -bitcoin: $(OBJS) obj/ui.o obj/uibase.o - g++ $(CCFLAGS) -o $@ $(LIBPATHS) $^ $(WXLIBS) $(LIBS) - - -obj/nogui/%.o: %.cpp $(HEADERS) - g++ -c $(CCFLAGS) -o $@ $< - -bitcoind: $(OBJS:obj/%=obj/nogui/%) - g++ $(CCFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS) -ldl -lz - - -clean: - -rm -f obj/*.o - -rm -f obj/nogui/*.o - -rm -f cryptopp/obj/*.o - -rm -f headers.h.gch diff --git a/staging/boost/4994-compile-fix-for-Python32-v2.patch b/staging/boost/4994-compile-fix-for-Python32-v2.patch deleted file mode 100644 index 22613b3f2..000000000 --- a/staging/boost/4994-compile-fix-for-Python32-v2.patch +++ /dev/null @@ -1,16 +0,0 @@ -Index: libs/python/src/converter/builtin_converters.cpp -=================================================================== ---- libs/python/src/converter/builtin_converters.cpp (revision 67279) -+++ libs/python/src/converter/builtin_converters.cpp (working copy) -@@ -431,7 +431,11 @@ - if (!result.empty()) - { - int err = PyUnicode_AsWideChar( -+#if PY_VERSION_HEX >= 0x03020000 -+ intermediate -+#else - (PyUnicodeObject *)intermediate -+#endif - , &result[0] - , result.size()); - diff --git a/staging/boost/PKGBUILD b/staging/boost/PKGBUILD deleted file mode 100644 index 9329f188a..000000000 --- a/staging/boost/PKGBUILD +++ /dev/null @@ -1,112 +0,0 @@ -# $Id: PKGBUILD 126149 2011-06-01 20:01:54Z ibiru $ -# Maintainer: kevin -# Contributor: Giovanni Scafora -# Contributor: Kritoke -# Contributor: Luca Roccia - -pkgbase=boost -pkgname=('boost-libs' 'boost') -pkgver=1.46.1 -_boostver=${pkgver//./_} -pkgrel=2 -arch=('i686' 'x86_64') -url="http://www.boost.org/" -makedepends=('icu' 'python' 'python2' 'bzip2' 'zlib' 'openmpi') -source=(http://downloads.sourceforge.net/sourceforge/${pkgbase}/${pkgbase}_${_boostver}.tar.gz - 4994-compile-fix-for-Python32-v2.patch - boost-1.46.0-spirit.patch) -license=('custom') -md5sums=('341e5d993b19d099bf1a548495ea91ec' - 'cb59e8adbf2a45ef9264a2f4ab92b849' - '9d6e2f13fef23bf27d7bdddc104e182a') - -_stagedir="${srcdir}/stagedir" - -build() { - # set python path for bjam - cd "${srcdir}/${pkgbase}_${_boostver}/tools" - echo "using python : 2.7 : /usr/bin/python2 ;" >> build/v2/user-config.jam - echo "using python : 3.2 : /usr/bin/python : /usr/include/python3.2mu : /usr/lib ;" >> build/v2/user-config.jam - echo "using mpi ;" >> build/v2/user-config.jam - - # build bjam - cd "${srcdir}/${pkgbase}_${_boostver}/tools/build/v2/engine/src" - ./build.sh cc - - _bindir="bin.linuxx86" - [ "${CARCH}" = "x86_64" ] && _bindir="bin.linuxx86_64" - - install -d "${_stagedir}"/usr/bin - install ${_bindir}/bjam "${_stagedir}"/usr/bin/bjam - - # build bcp - cd "${srcdir}/${pkgbase}_${_boostver}/tools/bcp" - ../build/v2/engine/src/${_bindir}/bjam --toolset=gcc - install -m755 "${srcdir}/${pkgbase}_${_boostver}/dist/bin/bcp" \ - ${_stagedir}/usr/bin/bcp - - # build libs - cd "${srcdir}/${pkgbase}_${_boostver}" - #python 3.2 support - #https://svn.boost.org/trac/boost/ticket/4994 - patch -Np0 -i "${srcdir}/4994-compile-fix-for-Python32-v2.patch" - patch -Np0 -i "${srcdir}/boost-1.46.0-spirit.patch" - - # default "minimal" install: "release link=shared,static - # runtime-link=shared threading=single,multi" - # --layout=tagged will add the "-mt" suffix for multithreaded libraries - # and installs includes in /usr/include/boost. - # --layout=system no longer adds the -mt suffix for multi-threaded libs. - # install to ${_stagedir} in preparation for split packaging - - ./tools/build/v2/engine/src/${_bindir}/bjam \ - release debug-symbols=off threading=multi \ - runtime-link=shared link=shared,static \ - cflags=-fno-strict-aliasing \ - toolset=gcc \ - --prefix="${_stagedir}" \ - -sTOOLS=gcc \ - --layout=system \ - ${MAKEFLAGS} \ - install - - # pyste is unmaintained: http://www.boost.org/doc/libs/1_46_0/libs/python/doc/index.html - # build pyste - #cd "${srcdir}/${pkgbase}_${_boostver}/libs/python/pyste/install" - #python2 setup.py install --root=${_stagedir} --optimize=1 -} - -package_boost() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Development" - depends=("boost-libs=${pkgver}") - optdepends=('python: for python bindings' - 'python2: for python2 bindings') - - install -d "${pkgdir}"/usr/{include,lib} - # headers/source files - cp -r "${_stagedir}"/include/ "${pkgdir}"/usr/ - - # static libs - cp -r "${_stagedir}"/lib/*.a "${pkgdir}"/usr/lib/ - - # utilities (bjam, bcp, pyste) - cp -r "${_stagedir}"/usr/* "${pkgdir}"/usr/ - - # license - install -D -m644 "${srcdir}/${pkgbase}_${_boostver}/LICENSE_1_0.txt" \ - "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt -} - -package_boost-libs() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Runtime" - depends=('gcc-libs' 'bzip2' 'zlib' 'icu') - optdepends=('openmpi: for mpi support') - - install -d "${pkgdir}/usr/lib" - #shared libs - cp -r "${_stagedir}"/lib/*.so{,.*} "${pkgdir}/usr/lib/" - - # license - install -D -m644 "${srcdir}/${pkgbase}_${_boostver}/LICENSE_1_0.txt" \ - "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt -} diff --git a/staging/boost/boost-1.46.0-spirit.patch b/staging/boost/boost-1.46.0-spirit.patch deleted file mode 100644 index 6fae331ee..000000000 --- a/staging/boost/boost-1.46.0-spirit.patch +++ /dev/null @@ -1,59 +0,0 @@ -Index: boost/spirit/home/qi/nonterminal/detail/parameterized.hpp -=================================================================== ---- boost/spirit/home/qi/nonterminal/detail/parameterized.hpp (revision 68724) -+++ boost/spirit/home/qi/nonterminal/detail/parameterized.hpp (revision 68725) -@@ -14,6 +14,7 @@ - - #include - -+#include - #include - - namespace boost { namespace spirit { namespace qi -@@ -59,4 +60,16 @@ namespace boost { namespace spirit { nam - }; - }}} - -+namespace boost { namespace spirit { namespace traits -+{ -+ /////////////////////////////////////////////////////////////////////////// -+ template -+ struct handles_container -+ , Attribute, Context, Iterator> -+ : handles_container::type -+ , Attribute, Context, Iterator> -+ {}; -+}}} -+ - #endif -Index: boost/spirit/home/karma/nonterminal/detail/parameterized.hpp -=================================================================== ---- boost/spirit/home/karma/nonterminal/detail/parameterized.hpp (revision 68724) -+++ boost/spirit/home/karma/nonterminal/detail/parameterized.hpp (revision 68725) -@@ -14,6 +14,7 @@ - - #include - -+#include - #include - - namespace boost { namespace spirit { namespace karma -@@ -60,4 +61,17 @@ namespace boost { namespace spirit { nam - }; - }}} - -+ -+namespace boost { namespace spirit { namespace traits -+{ -+ /////////////////////////////////////////////////////////////////////////// -+ template -+ struct handles_container -+ , Attribute, Context, Iterator> -+ : handles_container::type -+ , Attribute, Context, Iterator> -+ {}; -+}}} -+ - #endif diff --git a/staging/brltty/PKGBUILD b/staging/brltty/PKGBUILD deleted file mode 100644 index e173c7e6c..000000000 --- a/staging/brltty/PKGBUILD +++ /dev/null @@ -1,49 +0,0 @@ -# $Id: PKGBUILD 126155 2011-06-01 20:36:52Z andyrtr $ -# Maintainer: -# Contributor: Jan de Groot -# Contributor: Giovanni Scafora - -pkgname=brltty -pkgver=4.2 -pkgrel=4 -pkgdesc="Braille display driver for Linux/Unix" -arch=('i686' 'x86_64') -url="http://mielke.cc/brltty" -license=('GPL' 'LGPL') -depends=('libxaw' 'at-spi' 'gpm' 'icu' 'python2' 'tcl' 'atk' 'libxtst') -makedepends=('pyrex' 'bluez') -optdepends=('bluez: bluetooth support') -backup=(etc/brltty.conf etc/conf.d/brltty.conf) -options=('!makeflags' '!emptydirs') -source=(http://mielke.cc/${pkgname}/releases/${pkgname}-${pkgver}.tar.gz - 'brltty-4.2-S_ISCHR.patch' - 'brltty' - 'brltty.conf') -md5sums=('192af5e634210616928496645e392097' - '5954b289efaf2ff17676d06de9a88854' - '831ebaf0c56091702929c68805d20c4f' - 'a8ab8b3dd059e96e1734bc9cdcf844fc') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - CFLAGS+="${CFLAGS} -D_GNU_SOURCE" \ - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --localstatedir=/var \ - --enable-gpm \ - --disable-java-bindings \ - --disable-caml-bindings \ - PYTHON=/usr/bin/python2 - - patch -Np1 -i ${srcdir}/brltty-4.2-S_ISCHR.patch - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make INSTALL_ROOT="${pkgdir}" install - install -D -m755 ${srcdir}/brltty ${pkgdir}/etc/rc.d/brltty - install -D -m644 ${srcdir}/brltty.conf ${pkgdir}/etc/conf.d/brltty.conf - install -D -m644 Documents/brltty.conf ${pkgdir}/etc/brltty.conf -} diff --git a/staging/brltty/brltty b/staging/brltty/brltty deleted file mode 100755 index 5ed21a52d..000000000 --- a/staging/brltty/brltty +++ /dev/null @@ -1,68 +0,0 @@ -#!/bin/bash - -daemon_name=brltty - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/$daemon_name.conf - -get_pid() { - pidof -o %PPID $daemon_name -} - -case "$1" in - start) - stat_busy "Starting $daemon_name daemon" - - PID=$(get_pid) - if [ -z "$PID" ]; then - [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid - # RUN - $daemon_name $brltty_args - # - if [ $? -gt 0 ]; then - stat_fail - exit 1 - else - echo $(get_pid) > /var/run/$daemon_name.pid - add_daemon $daemon_name - stat_done - fi - else - stat_fail - exit 1 - fi - ;; - - stop) - stat_busy "Stopping $daemon_name daemon" - PID=$(get_pid) - # KILL - [ ! -z "$PID" ] && kill $PID &> /dev/null - # - if [ $? -gt 0 ]; then - stat_fail - exit 1 - else - rm -f /var/run/$daemon_name.pid &> /dev/null - rm_daemon $daemon_name - stat_done - fi - ;; - - restart) - $0 stop - sleep 3 - $0 start - ;; - - status) - stat_busy "Checking $daemon_name status"; - ck_status $daemon_name - ;; - - *) - echo "usage: $0 {start|stop|restart|status}" -esac - -exit 0 diff --git a/staging/brltty/brltty-4.2-S_ISCHR.patch b/staging/brltty/brltty-4.2-S_ISCHR.patch deleted file mode 100644 index eddac9616..000000000 --- a/staging/brltty/brltty-4.2-S_ISCHR.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up brltty-4.2/Programs/sys_linux.c.BAD brltty-4.2/Programs/sys_linux.c ---- brltty-4.2/Programs/sys_linux.c.BAD 2010-05-21 09:04:10.003122084 -0400 -+++ brltty-4.2/Programs/sys_linux.c 2010-05-21 09:04:19.376198268 -0400 -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - #include - - #ifdef HAVE_LINUX_INPUT_H diff --git a/staging/brltty/brltty.conf b/staging/brltty/brltty.conf deleted file mode 100644 index 94115e1d5..000000000 --- a/staging/brltty/brltty.conf +++ /dev/null @@ -1,2 +0,0 @@ -# Specify any arguments to pass to brltty here. -brltty_args="" \ No newline at end of file diff --git a/staging/enchant/PKGBUILD b/staging/enchant/PKGBUILD deleted file mode 100644 index 1f95981e7..000000000 --- a/staging/enchant/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 126152 2011-06-01 20:31:07Z andyrtr $ -# Maintainer: Andrea Scarpino -# Contributor: dorphell - -pkgname=enchant -pkgver=1.6.0 -pkgrel=2 -pkgdesc="A wrapper library for generic spell checking" -arch=('i686' 'x86_64') -url="http://www.abisource.com/enchant/" -license=('LGPL') -depends=('aspell' 'dbus-glib' 'hunspell') -makedepends=('hspell') -options=('!libtool') -source=("http://www.abisource.com/downloads/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz") -md5sums=('de11011aff801dc61042828041fb59c7') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr \ - --disable-static \ - --disable-ispell \ - --with-myspell-dir=/usr/share/myspell - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/staging/gptfdisk/PKGBUILD b/staging/gptfdisk/PKGBUILD deleted file mode 100644 index c3e5215e6..000000000 --- a/staging/gptfdisk/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 126131 2011-06-01 17:33:51Z foutrelis $ -# Maintainer: Evangelos Foutras -# Contributor: Tobias Powalowski -# Contributor: Hokum - -pkgname=gptfdisk -pkgver=0.7.1 -pkgrel=3 -pkgdesc="A text-mode partitioning tool that works on Globally Unique Identifier (GUID) Partition Table (GPT) disks" -arch=('i686' 'x86_64') -url="http://www.rodsbooks.com/gdisk/" -license=('GPL2') -depends=('gcc-libs' 'util-linux' 'popt' 'icu') -provides=('gdisk') -conflicts=('gdisk') -replaces=('gdisk') -source=(http://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tgz) -md5sums=('7c8d810df61e81c821bef399b832e89e') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - make -} - -package () { - cd "$srcdir/$pkgname-$pkgver" - - install -d "$pkgdir"/{sbin,usr/share/{man/man8,gdisk}} - install -t "$pkgdir/sbin" gdisk sgdisk fixparts - install -m644 -t "$pkgdir/usr/share/man/man8" {gdisk,sgdisk}.8 - install -m644 -t "$pkgdir/usr/share/gdisk" README NEWS -} - -# vim:set ts=2 sw=2 et: diff --git a/staging/hunspell/PKGBUILD b/staging/hunspell/PKGBUILD deleted file mode 100644 index fefa04db4..000000000 --- a/staging/hunspell/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 125861 2011-05-30 15:55:43Z andyrtr $ -# Maintainer: Andreas Radke -# Contributor: Hussam Al-Tayeb - -pkgname=hunspell -pkgver=1.3.2 -pkgrel=1 -pkgdesc="Spell checker and morphological analyzer library and program" -arch=('i686' 'x86_64') -url="http://hunspell.sourceforge.net/" -license=('GPL' 'LGPL' 'MPL') -depends=('gcc-libs' 'readline') -optdepends=('perl: for ispellaff2myspell') -options=('!libtool') -source=(http://downloads.sourceforge.net/hunspell/hunspell-$pkgver.tar.gz) -md5sums=('3121aaf3e13e5d88dfff13fb4a5f1ab8') - -build() { - cd "$srcdir/hunspell-$pkgver" - ./configure --prefix=/usr --disable-static \ - --with-ui --with-readline --with-experimental - make -} - -package() { - cd "$srcdir/hunspell-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/staging/icu/PKGBUILD b/staging/icu/PKGBUILD deleted file mode 100644 index 8321c3e82..000000000 --- a/staging/icu/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 125862 2011-05-30 16:53:31Z andyrtr $ -# Maintainer: Andreas Radke -# Contributor: Art Gramlich - -pkgname=icu -pkgver=4.8 -pkgrel=1 -pkgdesc="International Components for Unicode library" -arch=(i686 x86_64) -url="http://www.icu-project.org/" -license=('custom:"icu"') -depends=('gcc-libs' 'sh') -source=(http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver/./_}-src.tgz - #http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver//./_}-src.tgz - icu.8198.revert.icu5431.patch) -md5sums=('e78194c49d7fd8131353aa180d11b789' - 'ebd5470fc969c75e52baf4af94a9ee82') - -build() { - cd ${srcdir}/icu/source - # fix Malayalam encoding https://bugzilla.redhat.com/show_bug.cgi?id=654200 - patch -Rp3 -i ${srcdir}/icu.8198.revert.icu5431.patch - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man - make -} - -package() { - cd ${srcdir}/icu/source - make -j1 DESTDIR=${pkgdir} install - - # Install license - install -Dm644 ${srcdir}/icu/license.html ${pkgdir}/usr/share/licenses/icu/license.html -} diff --git a/staging/icu/icu.8198.revert.icu5431.patch b/staging/icu/icu.8198.revert.icu5431.patch deleted file mode 100644 index 4c3e78b8e..000000000 --- a/staging/icu/icu.8198.revert.icu5431.patch +++ /dev/null @@ -1,129 +0,0 @@ -Index: icu/trunk/source/layout/IndicReordering.cpp -=================================================================== ---- icu/trunk/source/layout/IndicReordering.cpp (revision 25772) -+++ icu/trunk/source/layout/IndicReordering.cpp (revision 26090) -@@ -126,4 +126,8 @@ - FeatureMask fSMFeatures; - -+ LEUnicode fPreBaseConsonant; -+ LEUnicode fPreBaseVirama; -+ le_int32 fPBCIndex; -+ FeatureMask fPBCFeatures; - - void saveMatra(LEUnicode matra, le_int32 matraIndex, IndicClassTable::CharClass matraClass) -@@ -172,5 +176,6 @@ - fMatraFeatures(0), fMPreOutIndex(-1), fMPreFixups(mpreFixups), - fVMabove(0), fVMpost(0), fVMIndex(0), fVMFeatures(0), -- fSMabove(0), fSMbelow(0), fSMIndex(0), fSMFeatures(0) -+ fSMabove(0), fSMbelow(0), fSMIndex(0), fSMFeatures(0), -+ fPreBaseConsonant(0), fPreBaseVirama(0), fPBCIndex(0), fPBCFeatures(0) - { - // nothing else to do... -@@ -191,4 +196,6 @@ - fVMabove = fVMpost = 0; - fSMabove = fSMbelow = 0; -+ -+ fPreBaseConsonant = fPreBaseVirama = 0; - } - -@@ -386,4 +393,12 @@ - } - -+ void notePreBaseConsonant(le_uint32 index,LEUnicode PBConsonant, LEUnicode PBVirama, FeatureMask features) -+ { -+ fPBCIndex = index; -+ fPreBaseConsonant = PBConsonant; -+ fPreBaseVirama = PBVirama; -+ fPBCFeatures = features; -+ } -+ - void noteBaseConsonant() - { -@@ -465,4 +480,20 @@ - } - -+ void writePreBaseConsonant() -+ { -+ // The TDIL spec says that consonant + virama + RRA should produce a rakar in Malayalam. However, -+ // it seems that almost none of the fonts for Malayalam are set up to handle this. -+ // So, we're going to force the issue here by using the rakar as defined with RA in most fonts. -+ -+ if (fPreBaseConsonant == 0x0d31) { // RRA -+ fPreBaseConsonant = 0x0d30; // RA -+ } -+ -+ if (fPreBaseConsonant != 0) { -+ writeChar(fPreBaseConsonant, fPBCIndex, fPBCFeatures); -+ writeChar(fPreBaseVirama,fPBCIndex-1,fPBCFeatures); -+ } -+ } -+ - le_int32 getOutputIndex() - { -@@ -723,4 +754,5 @@ - } - -+ - IndicClassTable::CharClass charClass = CC_RESERVED; - IndicClassTable::CharClass nextClass = CC_RESERVED; -@@ -730,7 +762,9 @@ - le_bool seenVattu = FALSE; - le_bool seenBelowBaseForm = FALSE; -+ le_bool seenPreBaseForm = FALSE; - le_bool hasNukta = FALSE; - le_bool hasBelowBaseForm = FALSE; - le_bool hasPostBaseForm = FALSE; -+ le_bool hasPreBaseForm = FALSE; - - if (postBase < markStart && classTable->isNukta(chars[postBase])) { -@@ -746,12 +780,20 @@ - hasBelowBaseForm = IndicClassTable::hasBelowBaseForm(charClass) && !hasNukta; - hasPostBaseForm = IndicClassTable::hasPostBaseForm(charClass) && !hasNukta; -+ hasPreBaseForm = IndicClassTable::hasPreBaseForm(charClass) && !hasNukta; - - if (IndicClassTable::isConsonant(charClass)) { - if (postBaseLimit == 0 || seenVattu || - (baseConsonant > baseLimit && !classTable->isVirama(chars[baseConsonant - 1])) || -- !(hasBelowBaseForm || hasPostBaseForm)) { -+ !(hasBelowBaseForm || hasPostBaseForm || hasPreBaseForm)) { - break; - } - -+ // Note any pre-base consonants -+ if ( baseConsonant == lastConsonant && lastConsonant > 0 && -+ hasPreBaseForm && classTable->isVirama(chars[baseConsonant - 1])) { -+ output.notePreBaseConsonant(lastConsonant,chars[lastConsonant],chars[lastConsonant-1],tagArray2); -+ seenPreBaseForm = TRUE; -+ -+ } - // consonants with nuktas are never vattus - seenVattu = IndicClassTable::isVattu(charClass) && !hasNukta; -@@ -786,10 +828,12 @@ - - // write any pre-base consonants -+ output.writePreBaseConsonant(); -+ - le_bool supressVattu = TRUE; - - for (i = baseLimit; i < baseConsonant; i += 1) { - LEUnicode ch = chars[i]; -- // Don't put 'blwf' on first consonant. -- FeatureMask features = (i == baseLimit? tagArray2 : tagArray1); -+ // Don't put 'pstf' or 'blwf' on anything before the base consonant. -+ FeatureMask features = tagArray1 & ~( pstfFeatureMask | blwfFeatureMask ); - - charClass = classTable->getCharClass(ch); -@@ -842,5 +886,5 @@ - - // write below-base consonants -- if (baseConsonant != lastConsonant) { -+ if (baseConsonant != lastConsonant && !seenPreBaseForm) { - for (i = bcSpan + 1; i < postBase; i += 1) { - output.writeChar(chars[i], i, tagArray1); -@@ -872,5 +916,5 @@ - // write post-base consonants - // FIXME: does this put the right tags on post-base consonants? -- if (baseConsonant != lastConsonant) { -+ if (baseConsonant != lastConsonant && !seenPreBaseForm) { - if (postBase <= lastConsonant) { - for (i = postBase; i <= lastConsonant; i += 1) { diff --git a/staging/libreoffice/PKGBUILD b/staging/libreoffice/PKGBUILD deleted file mode 100644 index 4fd0cf1a8..000000000 --- a/staging/libreoffice/PKGBUILD +++ /dev/null @@ -1,701 +0,0 @@ -# $Id: PKGBUILD 126270 2011-06-03 14:47:40Z stephane $ -# Maintainer: AndyRTR - -pkgbase="libreoffice" -pkgname=('libreoffice' 'libreoffice-sdk' - #'libreoffice-extension-barcode' # - 'libreoffice-extension-diagram' - 'libreoffice-extension-google-docs' - 'libreoffice-extension-hunart' - #'libreoffice-extension-lightproof' # no source integration - #'libreoffice-extension-mysql-connector' # missing libmysqlcppconn-dev configure: error: mysql_driver.h not found. install MySQL C++ Connectivity - 'libreoffice-extension-nlpsolver' - 'libreoffice-extension-ct2n' - 'libreoffice-extension-numbertext' - 'libreoffice-extension-oooblogger' - 'libreoffice-extension-pdfimport' - 'libreoffice-extension-presenter-screen' - 'libreoffice-extension-presentation-minimizer' - 'libreoffice-extension-report-builder' - 'libreoffice-extension-scripting-beanshell' - 'libreoffice-extension-scripting-javascript' - 'libreoffice-extension-scripting-python' - 'libreoffice-extension-typo' - 'libreoffice-extension-validator' - 'libreoffice-extension-watch-window' - 'libreoffice-extension-wiki-publisher') -_LOver=3.4.0.2 -pkgver=3.4.0 -pkgrel=2 -arch=('i686' 'x86_64') -#_LO_tree="3.4" -_OFFICEUPD="340" -license=('LGPL3') -url="http://www.libreoffice.org/" -makedepends=( # makedepends - 'sane' 'perl-archive-zip' 'zip' 'unzip' 'xulrunner' 'unixodbc' 'hsqldb-java' #'boost' - we use internal one for now that has some gcc4.6 fixes. - 'apache-ant' 'gperf' 'poppler' 'kdelibs' 'gconf' 'cppunit' #'libmysqlclient' - 'beanshell' 'vigra' 'libldap' 'lucene' 'libmythes' 'junit' 'libwpg' 'imagemagick' - 'mesa' 'gstreamer0.10-base' 'java-runtime' - #'saxon' - currently broken - # the depends from libreoffice main pkg - "curl>=7.20.0" "hunspell>=1.2.8" "python2>=2.7" 'libwpd>=0.9.2' 'libwps' 'libxaw' "neon>=0.28.6" - 'pango' 'nspr' 'libjpeg' 'libxrandr' 'libgl' 'dbus-glib' "icu>=4.6" 'libxslt' - 'redland' 'libgraphite' 'hyphen' 'lpsolve' 'gcc-libs' 'sh' 'libtextcat' - 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'gtk2' # keep gtk2 for install script - 'ttf-dejavu') # to satisfy regression tests - # translate-toolkit - todo move them to extra to allow --with-system-foo builds -# http://download.documentfoundation.org/mirrors/all.html -# http://wiki.documentfoundation.org/Mirrors -_mirror="http://download.documentfoundation.org/libreoffice/src" -#_mirror="http://dev-builds.libreoffice.org/pre-releases/src/" -_additional_source_url="http://hg.services.openoffice.org/binaries" -source=(${_mirror}/${pkgbase}-{artwork,base,bootstrap,calc,components,extensions,extras,filters,help,impress,libs-core,libs-extern,libs-extern-sys,libs-gui,postprocess,sdk,testing,ure,writer}-${_LOver}.tar.bz2 #,translations - ${_additional_source_url}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz - ${_additional_source_url}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip - ${_additional_source_url}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip - ${_additional_source_url}/fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz - ${_additional_source_url}/ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip - ${_additional_source_url}/2a177023f9ea8ec8bd00837605c5df1b-jakarta-tomcat-5.0.30-src.tar.gz - ${_additional_source_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip - ${_additional_source_url}/3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz - ${_additional_source_url}/2ae988b339daec234019a7066f96733e-commons-lang-2.3-src.tar.gz - ${_additional_source_url}/2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz - ${_additional_source_url}/af3c3acf618de6108d65fcdc92b492e1-commons-codec-1.3-src.tar.gz - ${_additional_source_url}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip - ${_additional_source_url}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip - ${_additional_source_url}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip - ${_additional_source_url}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip - ${_additional_source_url}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - ${_additional_source_url}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip - ${_additional_source_url}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip - ${_additional_source_url}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip - ${_additional_source_url}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip - ${_additional_source_url}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip - ${_additional_source_url}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip - ${_additional_source_url}/18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz - http://download.go-oo.org/src/7a0dcb3fe1e8c7229ab4fb868b7325e6-mdds_0.5.2.tar.bz2 - http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll - http://download.go-oo.org/extern/b4cae0700aa1c2aef7eb7f345365e6f1-translate-toolkit-1.8.1.tar.bz2 - http://download.go-oo.org/src/451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt - http://download.go-oo.org/src/90401bca927835b6fbae4a707ed187c8-nlpsolver-0.9.tar.bz2 - http://download.go-oo.org/src/f02578f5218f217a9f20e9c30e119c6a-boost_1_44_0.tar.bz2 - http://ooo.itc.hu/oxygenoffice/download/libreoffice/7e7efc5d4a03126bb9ae3ae9aa2c4e87-Barcode_1.3.1.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/41c9b65ad60af4b3255bbecdfef11736-Diagram_1.1.0.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/bbdd5639ada63e3130761daaecae1a10-Validator_1.1.0.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/23bd75552206dfcd8fd4e29137dcac84-WatchWindow_1.2.0.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/b8cbca7b3363e6ca2d02bc0ba2b63904-numbertext_0.9.4.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/b632bdd25649cc4067bcb410bae23d2b-hunart_0.3.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/9d60b6cfa3ef1926848710bbcd11115b-typo_0.4.2.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/dbaafd21de055e582d92d7d32fe9da13-gdocs_2.3.1.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt - buildfix_i116795.diff - buildfix_boost.diff - buildfix_ct2n.diff - vbahelper.visibility.patch - buildfix_bison25.diff) -noextract=(185d60944ea767075d27247c3162b3bc-unowinreg.dll - b4cae0700aa1c2aef7eb7f345365e6f1-translate-toolkit-1.8.1.tar.bz2 - 7a0dcb3fe1e8c7229ab4fb868b7325e6-mdds_0.5.2.tar.bz2 - ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip - 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip - 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz - fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz - 35c94d2df8893241173de1d16b6034c0-swingExSrc.zip - 2a177023f9ea8ec8bd00837605c5df1b-jakarta-tomcat-5.0.30-src.tar.gz - a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip - 3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz - 2ae988b339daec234019a7066f96733e-commons-lang-2.3-src.tar.gz - 2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz - af3c3acf618de6108d65fcdc92b492e1-commons-codec-1.3-src.tar.gz - eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip - 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip - 3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip - 97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip - f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - 8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip - d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip - 3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip - ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip - db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip - ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip - 18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz - 7e7efc5d4a03126bb9ae3ae9aa2c4e87-Barcode_1.3.1.0.oxt - 41c9b65ad60af4b3255bbecdfef11736-Diagram_1.1.0.0.oxt - 451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt - bbdd5639ada63e3130761daaecae1a10-Validator_1.1.0.0.oxt - 23bd75552206dfcd8fd4e29137dcac84-WatchWindow_1.2.0.0.oxt - b8cbca7b3363e6ca2d02bc0ba2b63904-numbertext_0.9.4.oxt - b632bdd25649cc4067bcb410bae23d2b-hunart_0.3.oxt - 9d60b6cfa3ef1926848710bbcd11115b-typo_0.4.2.oxt - dbaafd21de055e582d92d7d32fe9da13-gdocs_2.3.1.oxt - b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt - 90401bca927835b6fbae4a707ed187c8-nlpsolver-0.9.tar.bz2 - f02578f5218f217a9f20e9c30e119c6a-boost_1_44_0.tar.bz2) -md5sums=('7427ddd5ae63b6ee7aa868201dfbccaa' - 'a78a8e08731213da02c65060cedc5589' - '596da255e2728faccc8f2361171270ec' - '8ed9803a34d13da1764e7523d550d6b0' - '9be46d7c4bf3a60ee8dd0a5ef3638f82' - 'b60db802866ab71c485de42e6382d1bb' - '09e374cf3bd8f07a043883393012d69b' - 'af9f25aa04dc4ef7b797f7bcc743877c' - 'ad29de786d76d67759f9d2dd574b29be' - 'ff13a8ac0ea324122b75773fd80a9245' - '6eb8f53e01da7a945ee4cd42b7297732' - '90df27d4cbf490668ce4f03ff7dba521' - 'c0ea197183564c49306a1c79ca571e51' - '91e69ed3c0be542fa7f69ca3da2d7808' - 'a81c787b2e5469c2acc9f335b2c9e52f' - 'ee1c78af6553657614b1a43adf4750ac' - 'c970d6212618fc9b34526907eb030ce6' - '6d25488c81af09d87015bf487243042f' - '9a39234a49516b7035309e28dd4f0784' - '1f24ab1d39f4a51faf22244c94a6203f' - '35c94d2df8893241173de1d16b6034c0' - '798b2ffdc8bcfe7bca2cf92b62caf685' - 'fdb27bfe2dbe2e7b57ae194d9bf36bab' - 'ada24d37d8d638b3d8a9985e80bc2978' - '2a177023f9ea8ec8bd00837605c5df1b' - 'a7983f859eafb2677d7ff386a023bc40' - '3c219630e4302863a9a83d0efde889db' - '2ae988b339daec234019a7066f96733e' - '2c9b0f83ed5890af02c0df1c1776f39b' - 'af3c3acf618de6108d65fcdc92b492e1' - 'eeb2c7ddf0d302fba4bfc6e97eac9624' - '39bb3fcea1514f1369fcfc87542390fd' - '3404ab6b1792ae5f16bbd603bd1e1d03' - '97b2d4dba862397f446b217e2b623e71' - 'f94d9870737518e3b597f9265f4e9803' - '8ce2fcd72becf06c41f7201d15373ed9' - 'd8bd5eed178db6e2b18eeed243f85aa8' - '3bdf40c0d199af31923e900d082ca2dd' - 'ace6ab49184e329db254e454a010f56d' - 'db60e4fde8dd6d6807523deb71ee34dc' - 'ba2930200c9f019c2d93a8c88c651a0f' - '18f577b374d60b3c760a3a3350407632' - '7a0dcb3fe1e8c7229ab4fb868b7325e6' - '185d60944ea767075d27247c3162b3bc' - 'b4cae0700aa1c2aef7eb7f345365e6f1' - '451ccf439a36a568653b024534669971' - '90401bca927835b6fbae4a707ed187c8' - 'f02578f5218f217a9f20e9c30e119c6a' - '7e7efc5d4a03126bb9ae3ae9aa2c4e87' - '41c9b65ad60af4b3255bbecdfef11736' - '451ccf439a36a568653b024534669971' - 'bbdd5639ada63e3130761daaecae1a10' - '23bd75552206dfcd8fd4e29137dcac84' - 'b8cbca7b3363e6ca2d02bc0ba2b63904' - 'b632bdd25649cc4067bcb410bae23d2b' - '9d60b6cfa3ef1926848710bbcd11115b' - 'dbaafd21de055e582d92d7d32fe9da13' - 'b7b2d0e04e142f26dd96119c80757d1f' - '0520d63c946e272ed3bdfc863fbdc42e' - 'bc228237108cab7745897a9f466b6d39' - 'eee273f501ff45dc5f1365e78c6d57c0' - '43b145db28e6c0d73578ae6fd35e510d' - '4fa96e04b41a6e86774e74a972024b3e') - -build() { - - unset J2REDIR; unset J2SDKDIR; unset JAVA_HOME; unset CLASSPATH; unset EXTRAOPTS - [ -z "${JAVA_HOME}" ] && . /etc/profile.d/openjdk6.sh - [ -z "${MOZ_PLUGIN_PATH}" ] && . /etc/profile.d/mozilla-common.sh - [ -z "${ANT_HOME}" ] && . /etc/profile.d/apache-ant.sh - - # move all LibO sources into one build directory - mkdir ${srcdir}/build && cd ${srcdir}/build - for i in libreoffice-{artwork,base,bootstrap,calc,components,extensions,extras,filters,help,impress,libs-core,libs-extern,libs-extern-sys,libs-gui,postprocess,sdk,testing,ure,writer}-${_LOver}; do #,translations - mv ${srcdir}/$i/* . - done - - # move external sources into place - mkdir ${srcdir}/ext_sources && cd ${srcdir}/ext_sources - for source in "${noextract[@]}"; do - ln -s ${srcdir}/$source . - done - - cd ${srcdir}/build - - # buildfixes & bugfixes - patch -Np1 -i ${srcdir}/buildfix_i116795.diff - patch -Np1 -i ${srcdir}/buildfix_boost.diff - patch -Np1 -i ${srcdir}/buildfix_ct2n.diff - patch -Np0 -i ${srcdir}/vbahelper.visibility.patch - patch -Np0 -i ${srcdir}/buildfix_bison25.diff - - # unset C(XX)FLAGS - # http://www.openoffice.org/issues/show_bug.cgi?id=103205 -# unset CFLAGS -# unset CXXFLAGS - - #use the CFLAGS but remove the LibO overridden ones - for i in $CFLAGS; do - case "$i" in - -O?|-pipe|-Wall|-g|-fexceptions) continue;; - esac - ARCH_FLAGS="$ARCH_FLAGS $i" - done - - # python2 fix - export PYTHON=python2 - - # http://wiki.documentfoundation.org/Development/How_to_build/Configure_options - -# if [ "$CARCH" = "x86_64" ]; then -# EXTRAOPTS="--without-stlport" -# else -# EXTRAOPTS="--with-stlport" # --without-system-boost" -# # # avoid problems with ixion for now -# sed -i '/fields-table-formula.diff/d' patches/dev300/apply || return 1 -# fi - -# autoconf -v -f - - # non-SMP test build -# export MAKEFLAGS="-j1" - ./configure --with-build-version="${_LOver} ArchLinux build-${pkgrel}" --with-vendor="ArchLinux" \ - --with-unix-wrapper="libreoffice" \ - --with-max-jobs=${MAKEFLAGS/-j/} --with-num-cpus=${MAKEFLAGS/-j/} \ - --with-external-tar="${srcdir}/ext_sources" \ - --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc \ - --with-install-dirname="${pkgbase}" --libdir=/usr/lib --mandir=/usr/share/man \ - --with-lang="" \ - --disable-verbose \ - --enable-cairo\ - --enable-crashdump \ - --enable-dbus \ - --enable-evolution2\ - --disable-graphite\ - --enable-gio\ - --disable-gnome-vfs\ - --disable-kde\ - --enable-kde4\ - --enable-ldap \ - --enable-lockdown\ - --enable-opengl \ - --enable-odk\ - --enable-opengl\ - --enable-ext-barcode \ - --enable-ext-diagram \ - --enable-ext-google-docs \ - --enable-ext-hunart \ - --disable-ext-lightproof \ - --disable-ext-mysql-connector \ - --with-system-mysql \ - --enable-ext-nlpsolver \ - --enable-ext-ct2n \ - --enable-ext-numbertext \ - --enable-ext-oooblogger \ - --enable-ext-pdfimport \ - --enable-ext-presenter-console \ - --enable-ext-presenter-minimizer \ - --enable-ext-report-builder \ - --enable-ext-scripting-beanshell \ - --enable-ext-scripting-javascript \ - --enable-ext-scripting-python \ - --enable-ext-typo \ - --enable-ext-validator \ - --enable-ext-watch-window \ - --enable-ext-wiki-publisher \ - --without-fonts\ - --without-afms\ - --without-ppds\ - --without-system-libwps\ - --without-system-mdds\ - --without-myspell-dicts \ - --with-system-dicts \ - --with-external-dict-dir=/usr/share/hunspell \ - --with-external-hyph-dir=/usr/share/hyphen \ - --with-external-thes-dir=/usr/share/mythes \ - --with-system-cppunit\ - --with-system-libwpg \ - --with-system-libwps \ - --with-system-redland\ - --without-system-saxon\ - --with-system-libtextcat \ - --with-external-libtextcat-data \ - --with-openldap\ - --with-ant-home="/usr/share/java/apache-ant"\ - --without-system-boost\ - --with-system-cairo\ - --with-system-libs\ - --with-system-mozilla\ - --with-system-mythes\ - --with-system-xrender-headers\ - --with-system-headers\ - --with-alloc=system\ - --with-system-lucene\ - --with-lucene-core-jar=/usr/share/java/lucene-core.jar\ - --with-lucene-analyzers-jar=/usr/share/java/lucene-analyzers.jar\ - $EXTRAOPTS || return 1 - -#--with-system-graphite --enable-graohite ? -#--with-servlet-api-jar=JARFILE -# see http://qa.openoffice.org/issues/show_bug.cgi?id=110136 -# --with-system-saxon\ -# --with-saxon-jar=/usr/share/java/saxon/saxon9he.jar\ - - touch src.downloaded - #./download - unset MAKEFLAGS - ./bootstrap - make -} - -#check() { -# cd ${srcdir}/build -# make check -#} - -package_libreoffice() { - - pkgdesc="a productivity suite that is compatible with other major office suites" - install=${pkgbase}.install - depends=("curl>=7.20.0" "hunspell>=1.2.8" "python2>=2.7" 'libwpd>=0.9.2' 'libwps' 'libxaw' "neon>=0.28.6" - 'pango' 'nspr' 'libjpeg' 'libxrandr' 'libgl' 'dbus-glib' "icu>=4.6" 'libxslt' - 'redland' 'libgraphite' 'hyphen' 'lpsolve' 'gcc-libs' 'sh' 'libtextcat' - 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'gtk2') # keep gtk2 for install script - #'java-runtime' - #'saxon' - optdepends=('java-runtime: adds java support' - 'libcups: adds printing support' - 'gconf: adds additional gnome support' - 'nss: adds support for signed files/macros' - 'pstoedit: translates PostScript and PDF graphics into other vector formats' - 'poppler: for shipped pdfimport extension' - 'kdelibs: for kde integration' - 'libmythes: for use in thesaurus' - 'hsqldb-java: default database format for OpenOffice.org' - 'beanshell: interactive java -- good for prototyping /macros' - 'vigra: C++ computer vision library, usable in Basebmp' - 'libmspack: library for Microsoft compression formats for use in FontOOo' - 'libwpg: library for importing and converting Corel WordPerfect(tm) Graphics images' - 'libldap: to get profiles via ldap' - 'lucene: full-text search engine library for Java needed in the help section' - 'sane: for scanner access' - 'unixodbc: adds ODBC database support' - 'mesa: for the OGLTrans extension' - 'gstreamer0.10-base: + some gstr-plugins to support multimedia content, e.g. in impress') - backup=(etc/libreoffice/sofficerc - etc/libreoffice/bootstraprc - etc/libreoffice/psprint.conf) - provides=('go-openoffice') - conflicts=('go-openoffice') - replaces=('go-openoffice' 'openoffice-base' ) - - cd ${srcdir}/build - make DESTDIR=${pkgdir} install - - # fix missing desktop integration - install -dm755 ${pkgdir}/usr/bin - pushd ${pkgdir}/usr/bin - ln -vs /usr/lib/libreoffice/program/soffice ./libreoffice - ln -vs /usr/lib/libreoffice/program/soffice ./soffice - ln -vs /usr/lib/libreoffice/program/sbase ./lobase - ln -vs /usr/lib/libreoffice/program/scalc ./localc - ln -vs /usr/lib/libreoffice/program/sdraw ./lodraw - ln -vs /usr/lib/libreoffice/program/simpress ./loimpress - ln -vs /usr/lib/libreoffice/program/smath ./lomath - ln -vs /usr/lib/libreoffice/program/swriter ./lowriter - ln -vs /usr/lib/libreoffice/program/unopkg ./unopkg - popd - - # move sysui desktop files into place we want to use - javafilter and qstarter, but not unneeded printeradmin - install -dm755 ${pkgdir}/usr/share/{applications,icons,mime/packages,pixmaps} - rm ${pkgdir}/usr/lib/libreoffice/share/xdg/printeradmin.desktop - for i in base calc draw impress javafilter math qstart startcenter writer; do - cp ${pkgdir}/usr/lib/libreoffice/share/xdg/$i.desktop ${pkgdir}/usr/share/applications/libreoffice-$i.desktop - done - # remove version in menu entry and make it visible - sed -i -e "s/3.4//g" ${pkgdir}/usr/share/applications/*.desktop - sed -i -e "s/Icon=libreoffice34-/Icon=/g" ${pkgdir}/usr/share/applications/*.desktop - sed -i -e "/NoDisplay=true/d" ${pkgdir}/usr/share/applications/libreoffice-qstart.desktop - echo "Icon=startcenter" >> ${pkgdir}/usr/share/applications/libreoffice-qstart.desktop - # remove unneeded .desktop files - rm -rf ${pkgdir}/usr/lib/libreoffice/share/xdg - - # add missing icon files - cp -R ${srcdir}/build/sysui/desktop/icons/{hi,lo}color ${pkgdir}/usr/share/icons/ - pushd ${pkgdir}/usr/share/pixmaps - for i in base calc draw impress main math printeradmin startcenter writer; do - ln -vs /usr/share/icons/hicolor/48x48/apps/$i.png . - done - popd - sed -i -e 's/Icon=libreoffice-/Icon=/' ${pkgdir}/usr/share/applications/*.desktop - - # add missing mimetype file - install -m644 ${srcdir}/build/sysui/unxlng*/misc/libreoffice/openoffice.org.xml ${pkgdir}/usr/share/mime/packages/libreoffice.xml - - # put configuration files into place - install -dm755 ${pkgdir}/etc/libreoffice - install -m644 ${pkgdir}/usr/lib/libreoffice/program/{bootstraprc,sofficerc} ${pkgdir}/etc/libreoffice/ - install -m644 ${pkgdir}/usr/lib/libreoffice/basis3.4/share/psprint/psprint.conf ${pkgdir}/etc/libreoffice/ - # install dummy links to make them found by LibO - cd ${pkgdir}/usr/lib/libreoffice/program/ - ln -vsf /etc/libreoffice/{bootstraprc,sofficerc} . - cd ${pkgdir}/usr/lib/libreoffice/basis3.4/share/psprint/ - ln -vsf /etc/libreoffice/psprint.conf . - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; - - # split out extensions - mv ${pkgdir}/usr/lib/libreoffice/share/extensions ${srcdir}/extensions-install - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - install -m644 ${srcdir}/extensions-install/package.txt ${pkgdir}/usr/lib/libreoffice/share/extensions/ - - # move SDK to separated package - mkdir -p ${srcdir}/sdk-install/usr/lib/libreoffice/basis3.4/sdk - mv ${pkgdir}/usr/lib/libreoffice/basis3.4/sdk ${srcdir}/sdk-install/usr/lib/libreoffice/basis3.4/ - - # cleanup gid_Module files - mkdir ${srcdir}/splitlist - mv -f ${pkgdir}/gid_Module* ${srcdir}/splitlist/ -} - -package_libreoffice-sdk() { - - pkgdesc="Software development kit for LibreOffice" - depends=('libreoffice' 'gcc-libs' 'sh') - - cd ${srcdir}/sdk-install - cp -r * ${pkgdir} - - cd ${pkgdir}/usr/lib/libreoffice/basis3.4/sdk - mv setsdkenv_unix setsdkenv_unix.sh && chmod 755 setsdkenv_unix.sh - rm -f ${pkgdir}/usr/lib/libreoffice/basis3.4/sdk/setsdkenv_unix.{csh,sh}.in - #fix permissions - find examples -type f -exec chmod -x {} \; -} - -package_libreoffice-extension-barcode() { - - pkgdesc="This extension generates UPC-A, EAN-13, ISBN and JAN barcodes in Draw " - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/7e7efc5d4a03126bb9ae3ae9aa2c4e87-Barcode_1.3.1.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/Barcode - chmod o-w -R ${pkgdir}/usr/lib/libreoffice/share/extensions/Barcode -} - -package_libreoffice-extension-diagram() { - - pkgdesc="An OOo Draw and Impress extension that creates your favorite diagrams with a few clicks" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/41c9b65ad60af4b3255bbecdfef11736-Diagram_1.1.0.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/diagram -} - -package_libreoffice-extension-google-docs() { - - pkgdesc="Google Documents extension for LibreOffice" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/dbaafd21de055e582d92d7d32fe9da13-gdocs_2.3.1.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/google-docs -} - -package_libreoffice-extension-hunart() { - - pkgdesc="Hungarian cross-reference toolbar extension" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/b632bdd25649cc4067bcb410bae23d2b-hunart_0.3.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/hunart -} - -#package_libreoffice-extension-lightproof() { - -# pkgdesc="Lightproof extension for LibreOffice" - #arch=('any') -# depends=('libreoffice') -# groups=('libreoffice-extensions') - -# install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions -# unzip -q ${srcdir}/${pkgbase}-build-${_LOver}/build/libreoffice-${_LOver}/solver/${_OFFICEUPD}/unxlng*/bin/Lightproof.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/lightproof -#} - -#package_libreoffice-extension-mysql-connector() { - -# pkgdesc="MySQL Connector extension for LibreOffice" - #arch=('any') -# depends=('libreoffice') -# groups=('libreoffice-extensions') - -# install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions -# unzip -q ${srcdir}/${pkgbase}-build-${_LOver}/build/libreoffice-${_LOver}/solver/${_OFFICEUPD}/unxlng*/bin/Mysql-connector.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/mysql-connector -#} - -package_libreoffice-extension-nlpsolver() { - - pkgdesc="This extension integrates into Calc and offers new Solver engines to use for optimizing nonlinear programming models" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/NLPSolver.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/nlpsolver -} - -package_libreoffice-extension-ct2n() { - - pkgdesc="This extension enables you to convert text-cells in Calc with numbers and dates, to real numbers and dates." - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/ConvertTextToNumber.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/ct2n -} - -package_libreoffice-extension-numbertext() { - - pkgdesc="NUMBERTEXT/MONEYTEXT extensions" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/b8cbca7b3363e6ca2d02bc0ba2b63904-numbertext_0.9.4.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/numbertext -} - -package_libreoffice-extension-oooblogger() { - - pkgdesc="An extensions for blogging" - #arch=('any') - depends=('libreoffice' 'coreutils') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/oooblogger -} - -package_libreoffice-extension-pdfimport() { - - pkgdesc="This extension allows you to import and modify PDF documents" - depends=('libreoffice' 'poppler') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/pdfimport/pdfimport.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/pdfimport -} - -package_libreoffice-extension-presenter-screen() { - - pkgdesc="This extension provides more control over your slide show presentation, such as the ability to see the upcoming slide, the slide notes, and a presentation timer whereas the audience see only the current slide" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/presenter-screen.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/presenter-screen -} - -package_libreoffice-extension-presentation-minimizer() { - - pkgdesc="This extension reduce the file size of the current presentation" - depends=('libreoffice' 'gcc-libs') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/presentation-minimizer.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/presentation-minimizer -} - -package_libreoffice-extension-report-builder() { - - pkgdesc="This extension creates smart-looking database reports" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/report-builder.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/report-builder -} - -package_libreoffice-extension-scripting-beanshell() { - - pkgdesc="LibreOffice extension - Enables support for scripts in BeanShell" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/script-provider-for-beanshell.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/script-provider-for-beanshell -} - -package_libreoffice-extension-scripting-javascript() { - - pkgdesc="LibreOffice extension - Enables support for scripts in JavaScript" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/script-provider-for-javascript.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/script-provider-for-javascript -} - -package_libreoffice-extension-scripting-python() { - - pkgdesc="LibreOffice extension - Enables support for scripts in Python" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/script-provider-for-python.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/script-provider-for-python -} - -package_libreoffice-extension-typo() { - - pkgdesc="Typography toolbar extension" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/9d60b6cfa3ef1926848710bbcd11115b-typo_0.4.2.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/typo - chmod o+r -R ${pkgdir}/usr/lib/libreoffice/share/extensions/typo -} - -package_libreoffice-extension-validator() { - - pkgdesc="Validator extension for LibreOffice" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/bbdd5639ada63e3130761daaecae1a10-Validator_1.1.0.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/validator -} - -package_libreoffice-extension-wiki-publisher() { - - pkgdesc="This extension enables you to create Wiki articles on MediaWiki servers without having to know the syntax of the MediaWiki markup language" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/wiki-publisher.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/wiki-publisher -} - -package_libreoffice-extension-watch-window() { - - pkgdesc="A OOo Calc extension to add a Watch Window, which keeps the value of the monitored cell on the screen." - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/23bd75552206dfcd8fd4e29137dcac84-WatchWindow_1.2.0.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/watch-window -} diff --git a/staging/libreoffice/buildfix_64bit_system_libjpeg.diff b/staging/libreoffice/buildfix_64bit_system_libjpeg.diff deleted file mode 100644 index 1f4eb110f..000000000 --- a/staging/libreoffice/buildfix_64bit_system_libjpeg.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- solenv/inc/libs.mk 2009-07-02 09:44:33.084467312 +0000 -+++ solenv/inc/libs.mk.new 2009-07-02 10:44:03.420819776 +0000 -@@ -211,7 +211,7 @@ - .IF "$(OS)" == "FREEBSD" - JPEG3RDLIB=/usr/local/lib/libjpeg.so - .ELIF "$(CPUNAME)" == "X86_64" || "$(CPUNAME)" == "S390X" || "$(CPUNAME)" == "POWERPC64" --JPEG3RDLIB=/usr/lib64/libjpeg.so -+JPEG3RDLIB=/usr/lib/libjpeg.so - .ELSE - JPEG3RDLIB=/usr/lib/libjpeg.so - .ENDIF diff --git a/staging/libreoffice/buildfix_bison25.diff b/staging/libreoffice/buildfix_bison25.diff deleted file mode 100644 index 869b6c81e..000000000 --- a/staging/libreoffice/buildfix_bison25.diff +++ /dev/null @@ -1,23 +0,0 @@ ---- connectivity/source/parse/sqlbison.y 2011-05-20 13:21:02.000000000 -0600 -+++ connectivity/source/parse/sqlbison.y 2011-05-20 13:22:11.000000000 -0600 -@@ -4338,7 +4338,7 @@ - } - - // ------------------------------------------------------------------------- --void OSQLParser::error(sal_Char *fmt) -+void OSQLParser::error(const sal_Char *fmt) - { - if(!m_sErrorMessage.getLength()) - { ---- connectivity/inc/connectivity/sqlparse.hxx 2011-05-20 13:23:58.000000000 -0600 -+++ connectivity/inc/connectivity/sqlparse.hxx 2011-05-20 13:23:46.000000000 -0600 -@@ -233,7 +233,7 @@ - // returns the type for a parameter in a given function name - static sal_Int32 getFunctionParameterType(sal_uInt32 _nTokenId,sal_uInt32 _nPos); - -- void error(sal_Char *fmt); -+ void error(const sal_Char *fmt); - int SQLlex(); - #ifdef YYBISON - void setParseTree(OSQLParseNode * pNewParseTree); - diff --git a/staging/libreoffice/buildfix_boost.diff b/staging/libreoffice/buildfix_boost.diff deleted file mode 100644 index d8608d0d4..000000000 --- a/staging/libreoffice/buildfix_boost.diff +++ /dev/null @@ -1,40 +0,0 @@ -From bae4fdbd105142cd3f317445eddc826da529a732 Mon Sep 17 00:00:00 2001 -From: Caolán McNamara -Date: Tue, 05 Apr 2011 14:07:02 +0000 -Subject: silence some more of that annoying gcc#47679 - ---- -diff --git a/boost/boost.gcc47679.patch b/boost/boost.gcc47679.patch -index 1c804aa..9b33a5f 100644 ---- a/boost/boost.gcc47679.patch -+++ b/boost/boost.gcc47679.patch -@@ -36,3 +36,26 @@ - template - inline bool allow_more_digits(std::size_t i) - { -+--- misc/boost_1_44_0/boost/optional/optional.hpp 2011-04-05 13:19:01.223587256 +0100 -++++ misc/build/boost_1_44_0/boost/optional/optional.hpp 2011-04-05 13:19:01.223587256 +0100 -+@@ -31,6 +31,8 @@ -+ -+ #include "boost/optional/optional_fwd.hpp" -+ -++#include -++ -+ #if BOOST_WORKAROUND(BOOST_MSVC, == 1200) -+ // VC6.0 has the following bug: -+ // When a templated assignment operator exist, an implicit conversion -+@@ -114,6 +116,11 @@ -+ -+ public: -+ -++ aligned_storage() -++ { -++ memset(&dummy_, 0, sizeof(dummy_)); -++ } -++ -+ void const* address() const { return &dummy_.data[0]; } -+ void * address() { return &dummy_.data[0]; } -+ } ; --- -cgit v0.8.3-6-g21f6 - diff --git a/staging/libreoffice/buildfix_ct2n.diff b/staging/libreoffice/buildfix_ct2n.diff deleted file mode 100644 index 979587f79..000000000 --- a/staging/libreoffice/buildfix_ct2n.diff +++ /dev/null @@ -1,17 +0,0 @@ -From 90de903b28cb1884042be0eae3f8a55458c5bc29 Mon Sep 17 00:00:00 2001 -From: Caolán McNamara -Date: Tue, 12 Apr 2011 19:35:51 +0000 -Subject: duplicate NULLs - ---- -diff --git a/ct2n/prj/build.lst b/ct2n/prj/build.lst -index 91f44b7..714d926 100644 ---- a/ct2n/prj/build.lst -+++ b/ct2n/prj/build.lst -@@ -1,3 +1,3 @@ --ct2n ct2n : solenv NULL NULL -+ct2n ct2n : solenv NULL - ct2n ct2n usr1 - all ct2n_mkout NULL - ct2n ct2n nmake - all ct2n_ct2n NULL --- -cgit v0.8.3-6-g21f6 diff --git a/staging/libreoffice/buildfix_i116795.diff b/staging/libreoffice/buildfix_i116795.diff deleted file mode 100644 index 8601bc164..000000000 --- a/staging/libreoffice/buildfix_i116795.diff +++ /dev/null @@ -1,22 +0,0 @@ -diff -r 4ab9e11cb892 connectivity/qa/makefile.mk ---- a/connectivity/qa/makefile.mk Thu Mar 03 15:22:23 2011 +0100 -+++ b/connectivity/qa/makefile.mk Fri Mar 04 09:51:48 2011 +0100 -@@ -35,9 +35,16 @@ - - #----- compile .java files ----------------------------------------- - --JARFILES = ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar OOoRunner.jar hsqldb.jar - JAVAFILES := $(shell @$(FIND) complex -name "*.java") - -+JARFILES = ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar OOoRunner.jar -+ -+.IF "$(SYSTEM_HSQLDB)" == "YES" -+EXTRAJARFILES = $(HSQLDB_JAR) -+.ELSE -+JARFILES += hsqldb.jar -+.ENDIF -+ - #----- make a jar from compiled files ------------------------------ - - JARCLASSDIRS = $(PACKAGE) - diff --git a/staging/libreoffice/libreoffice.install b/staging/libreoffice/libreoffice.install deleted file mode 100644 index 27f3173ae..000000000 --- a/staging/libreoffice/libreoffice.install +++ /dev/null @@ -1,25 +0,0 @@ -post_install() { - -gtk-update-icon-cache -f -q /usr/share/icons/hicolor -update-desktop-database -q -update-mime-database usr/share/mime > /dev/null 2>&1 - -echo " * see http://wiki.archlinux.org/index.php/Openoffice" -echo " * you may want to pacman -Ss libreoffice-extensions" -echo " to see what 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 -gtk-update-icon-cache -f -q /usr/share/icons/hicolor -update-desktop-database -q -update-mime-database usr/share/mime > /dev/null 2>&1 -} - -post_remove() { -update-desktop-database -q -gtk-update-icon-cache -f -q /usr/share/icons/hicolor -update-mime-database usr/share/mime > /dev/null 2>&1 -} diff --git a/staging/libreoffice/vbahelper.visibility.patch b/staging/libreoffice/vbahelper.visibility.patch deleted file mode 100644 index 5739100d0..000000000 --- a/staging/libreoffice/vbahelper.visibility.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- vbahelper/inc/vbahelper/vbacollectionimpl.hxx 2011-01-28 20:27:51.507604173 +0000 -+++ vbahelper/inc/vbahelper/vbacollectionimpl.hxx 2011-01-28 20:28:26.230045727 +0000 -@@ -238,7 +238,7 @@ - - // including a HelperInterface implementation - template< typename Ifc1 > --class ScVbaCollectionBase : public InheritedHelperInterfaceImpl< Ifc1 > -+class VBAHELPER_DLLPUBLIC ScVbaCollectionBase : public InheritedHelperInterfaceImpl< Ifc1 > - { - typedef InheritedHelperInterfaceImpl< Ifc1 > BaseColBase; - protected: ---- sc/Library_vbaobj.mk -+++ sc/Library_vbaobj.mk -@@ -118,7 +118,6 @@ $(eval $(call gb_Library_add_exception_objects,vbaobj,\ - sc/source/ui/vba/vbaquerytable \ - sc/source/ui/vba/vbarange \ - sc/source/ui/vba/vbasheetobject \ -- sc/source/ui/vba/vbasheetobjects \ - sc/source/ui/vba/vbastyle \ - sc/source/ui/vba/vbastyles \ - sc/source/ui/vba/vbatextboxshape \ -@@ -133,6 +132,11 @@ $(eval $(call gb_Library_add_exception_objects,vbaobj,\ - sc/source/ui/vba/vbawsfunction \ - )) - -+$(eval $(call gb_Library_add_cxxobjects,vbaobj,\ -+ sc/source/ui/vba/vbasheetobjects \ -+ , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \ -+)) -+ - ifneq (,$(filter LINUX DRAGONFLY OPENBSD FREEBSD NETBSD, $(OS))) - $(eval $(call gb_Library_set_ldflags,vbaobj,\ - $$(LDFLAGS) \ diff --git a/staging/libwebkit/PKGBUILD b/staging/libwebkit/PKGBUILD deleted file mode 100644 index 032056ae3..000000000 --- a/staging/libwebkit/PKGBUILD +++ /dev/null @@ -1,61 +0,0 @@ -# $Id: PKGBUILD 126165 2011-06-01 22:31:25Z andyrtr $ -# Maintainer: Andreas Radke - -pkgbase=libwebkit -pkgname=(libwebkit libwebkit3) -pkgver=1.4.0 -pkgrel=2 -pkgdesc="An opensource web content engine" -arch=('i686' 'x86_64') -url="http://webkitgtk.org/" -license=('custom') -depends=('libxt' 'libxslt' 'sqlite3' 'icu' 'gstreamer0.10-base' 'libsoup' 'enchant') -makedepends=('gperf' 'gtk-doc' 'gobject-introspection' 'python2' 'gtk2' 'gtk3') -options=('!libtool') -install=libwebkit.install -source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz - gcc46.patch - replace-switch-with-given-when.patch) -md5sums=('10c969db3b5484c71df1aa9a338377ff' - '970a2fa91b9827dff8e9b9edb4867701' - '3ba708a26b7af0e1e853867966fe14f7') - -build() { - cd "${srcdir}/webkit-${pkgver}" - patch -Np1 -i "${srcdir}/gcc46.patch" - patch -Np1 -i "${srcdir}/replace-switch-with-given-when.patch" - mkdir build-gtk{2,3} - - ( cd build-gtk2 && _build --with-gtk=2.0 ) - ( cd build-gtk3 && _build --with-gtk=3.0 ) -} - -_build() { - PYTHON=/usr/bin/python2 ../configure --prefix=/usr \ - --enable-introspection \ - --with-font-backend=freetype --enable-gtk-doc \ - --with-unicode-backend=icu \ - --enable-spellcheck "$@" - make all stamp-po -} - -package_libwebkit() { - pkgdesc+=" (for GTK2)" - depends+=(gtk2) - provides=('webkitgtk-svn') - conflicts=('webkitgtk-svn') - replaces=('webkitgtk-svn') - - cd "$srcdir/webkit-$pkgver/build-gtk2" - make DESTDIR="${pkgdir}" install - install -Dm644 ../Source/WebKit/LICENSE "${pkgdir}/usr/share/licenses/libwebkit/LICENSE" -} - -package_libwebkit3() { - pkgdesc+=" (for GTK3)" - depends+=(gtk3) - - cd "${srcdir}/webkit-${pkgver}/build-gtk3" - make DESTDIR="${pkgdir}" install - install -Dm644 ../Source/WebKit/LICENSE "${pkgdir}/usr/share/licenses/libwebkit3/LICENSE" -} diff --git a/staging/libwebkit/gcc46.patch b/staging/libwebkit/gcc46.patch deleted file mode 100644 index befd892d4..000000000 --- a/staging/libwebkit/gcc46.patch +++ /dev/null @@ -1,11 +0,0 @@ -Index: trunk/Source/WebCore/dom/make_names.pl -=================================================================== ---- trunk/Source/WebCore/dom/make_names.pl (revision 73989) -+++ trunk/Source/WebCore/dom/make_names.pl (revision 84123) -@@ -66,5 +66,5 @@ - $gccLocation = "/usr/bin/gcc"; - } --my $preprocessor = $gccLocation . " -E -P -x c++"; -+my $preprocessor = $gccLocation . " -E -x c++"; - - GetOptions( diff --git a/staging/libwebkit/libwebkit.install b/staging/libwebkit/libwebkit.install deleted file mode 100644 index 24072f316..000000000 --- a/staging/libwebkit/libwebkit.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/staging/libwebkit/replace-switch-with-given-when.patch b/staging/libwebkit/replace-switch-with-given-when.patch deleted file mode 100644 index 4e64610bb..000000000 --- a/staging/libwebkit/replace-switch-with-given-when.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -upr webkit-1.4.0.orig/Source/WebCore/make-hash-tools.pl webkit-1.4.0/Source/WebCore/make-hash-tools.pl ---- webkit-1.4.0.orig/Source/WebCore/make-hash-tools.pl 2011-04-25 22:27:15.000000000 +0300 -+++ webkit-1.4.0/Source/WebCore/make-hash-tools.pl 2011-06-02 00:41:26.000000000 +0300 -@@ -20,7 +20,7 @@ - # Boston, MA 02110-1301, USA. - - use strict; --use Switch; -+use feature 'switch'; - use File::Basename; - - my $outdir = $ARGV[0]; -@@ -28,9 +28,9 @@ shift; - my $option = basename($ARGV[0],".gperf"); - - --switch ($option) { -+given ($option) { - --case "DocTypeStrings" { -+when ("DocTypeStrings") { - - my $docTypeStringsGenerated = "$outdir/DocTypeStrings.cpp"; - my $docTypeStringsGperf = $ARGV[0]; -@@ -38,9 +38,9 @@ case "DocTypeStrings" { - - system("gperf --key-positions=\"*\" -s 2 $docTypeStringsGperf > $docTypeStringsGenerated") == 0 || die "calling gperf failed: $?"; - --} # case "DocTypeStrings" -+} # when ("DocTypeStrings") - --case "ColorData" { -+when ("ColorData") { - - my $colorDataGenerated = "$outdir/ColorData.cpp"; - my $colorDataGperf = $ARGV[0]; -@@ -48,6 +48,6 @@ case "ColorData" { - - system("gperf --key-positions=\"*\" -D -s 2 $colorDataGperf > $colorDataGenerated") == 0 || die "calling gperf failed: $?"; - --} # case "ColorData" -+} # when ("ColorData") - --} # switch ($option) -+} # given ($option) diff --git a/staging/php/PKGBUILD b/staging/php/PKGBUILD deleted file mode 100644 index ccbaae0cd..000000000 --- a/staging/php/PKGBUILD +++ /dev/null @@ -1,379 +0,0 @@ -# $Id: PKGBUILD 126095 2011-06-01 12:12:00Z pierre $ -# Maintainer: Pierre Schmitz - -pkgbase=php -pkgname=('php' - 'php-cgi' - 'php-apache' - 'php-fpm' - 'php-embed' - 'php-pear' - 'php-curl' - 'php-enchant' - 'php-gd' - 'php-gmp' - 'php-intl' - 'php-ldap' - 'php-mcrypt' - 'php-mssql' - 'php-odbc' - 'php-pgsql' - 'php-pspell' - 'php-snmp' - 'php-sqlite' - 'php-tidy' - 'php-xsl') -pkgver=5.3.6 -pkgrel=4 -_suhosinver=${pkgver}-0.9.10 -arch=('i686' 'x86_64') -license=('PHP') -url='http://www.php.net' -makedepends=('apache' 'imap' 'postgresql-libs' 'mysql' 'libldap' 'postfix' - 'sqlite3' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' 'freetds' - 'libmcrypt' 'tidyhtml' 'aspell' 'libtool' 'libpng' 'libjpeg' 'icu' - 'curl' 'libxslt' 'openssl' 'bzip2' 'db' 'gmp' 'freetype2') -source=("http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.bz2" - "suhosin-patch-${_suhosinver}.patch.gz" - 'php.ini.patch' 'apache.conf' 'rc.d.php-fpm' 'php-fpm.conf.in.patch' - 'logrotate.d.php-fpm') -md5sums=('2286f5a82a6e8397955a0025c1c2ad98' - 'fff1a38877142f3ae6036dbe5a85d0a6' - '39eaa70d276fc3d45d6bcf6cd5ae1106' - 'dec2cbaad64e3abf4f0ec70e1de4e8e9' - 'b01be5f816988fcee7e78225836e5e27' - 'd50ff349da08110a7cc8c691ce2d0423' - '07c4e412909ac65a44ec90e7a2c4bade') - -build() { - # ldap-sasl does not compile with --as-needed - export LDFLAGS="${LDFLAGS//-Wl,--as-needed}" - export LDFLAGS="${LDFLAGS//,--as-needed}" - - phpconfig="--srcdir=../${pkgbase}-${pkgver} \ - --prefix=/usr \ - --sysconfdir=/etc/php \ - --localstatedir=/var \ - --with-layout=GNU \ - --with-config-file-path=/etc/php \ - --with-config-file-scan-dir=/etc/php/conf.d \ - --enable-inline-optimization \ - --disable-debug \ - --disable-rpath \ - --disable-static \ - --enable-shared \ - --mandir=/usr/share/man \ - --without-pear \ - " - - phpextensions="--enable-bcmath=shared \ - --enable-calendar=shared \ - --enable-dba=shared \ - --enable-exif=shared \ - --enable-ftp=shared \ - --enable-gd-native-ttf \ - --enable-intl=shared \ - --enable-json=shared \ - --enable-mbregex \ - --enable-mbstring \ - --enable-pdo \ - --enable-phar=shared \ - --enable-posix=shared \ - --enable-session \ - --enable-shmop=shared \ - --enable-soap=shared \ - --enable-sockets=shared \ - --enable-sqlite-utf8 \ - --enable-sysvmsg=shared \ - --enable-sysvsem=shared \ - --enable-sysvshm=shared \ - --enable-xml \ - --enable-zip=shared \ - --with-bz2=shared \ - --with-curl=shared \ - --with-db4=/usr \ - --with-enchant=shared,/usr \ - --with-freetype-dir=shared,/usr \ - --with-gd=shared \ - --with-gdbm=shared \ - --with-gettext=shared \ - --with-gmp=shared \ - --with-iconv=shared \ - --with-icu-dir=/usr \ - --with-imap-ssl=shared \ - --with-imap=shared \ - --with-jpeg-dir=shared,/usr \ - --with-ldap=shared \ - --with-ldap-sasl \ - --with-mcrypt=shared \ - --with-mhash \ - --with-mssql=shared \ - --with-mysql-sock=/var/run/mysqld/mysqld.sock \ - --with-mysql=shared,mysqlnd \ - --with-mysqli=shared,mysqlnd \ - --with-openssl=shared \ - --with-pcre-regex=/usr \ - --with-pdo-mysql=shared,mysqlnd \ - --with-pdo-odbc=shared,unixODBC,/usr \ - --with-pdo-pgsql=shared \ - --with-pdo-sqlite=shared,/usr \ - --with-pgsql=shared \ - --with-png-dir=shared,/usr \ - --with-pspell=shared \ - --with-regex=php \ - --with-snmp=shared \ - --with-sqlite3=shared,/usr \ - --with-sqlite=shared \ - --with-tidy=shared \ - --with-unixODBC=shared,/usr \ - --with-xmlrpc=shared \ - --with-xsl=shared \ - --with-zlib \ - --without-db2 \ - --without-db3 \ - " - - EXTENSION_DIR=/usr/lib/php/modules - export EXTENSION_DIR - PEAR_INSTALLDIR=/usr/share/pear - export PEAR_INSTALLDIR - - cd ${srcdir}/${pkgbase}-${pkgver} - - # apply suhosin patch - patch -p1 -i ${srcdir}/suhosin-patch-${_suhosinver}.patch - - # adjust paths - patch -p0 -i ${srcdir}/php.ini.patch - patch -p0 -i ${srcdir}/php-fpm.conf.in.patch - - # php - mkdir ${srcdir}/build-php - cd ${srcdir}/build-php - ln -s ../${pkgbase}-${pkgver}/configure - ./configure ${phpconfig} \ - --disable-cgi \ - --with-readline \ - --enable-pcntl \ - ${phpextensions} - make - - # cgi and fcgi - # reuse the previous run; this will save us a lot of time - cp -a ${srcdir}/build-php ${srcdir}/build-cgi - cd ${srcdir}/build-cgi - ./configure ${phpconfig} \ - --disable-cli \ - --enable-cgi \ - ${phpextensions} - make - - # apache - cp -a ${srcdir}/build-php ${srcdir}/build-apache - cd ${srcdir}/build-apache - ./configure ${phpconfig} \ - --disable-cli \ - --with-apxs2 \ - ${phpextensions} - make - - # fpm - cp -a ${srcdir}/build-php ${srcdir}/build-fpm - cd ${srcdir}/build-fpm - ./configure ${phpconfig} \ - --disable-cli \ - --enable-fpm \ - --with-fpm-user=http \ - --with-fpm-group=http \ - ${phpextensions} - make - - # embed - cp -a ${srcdir}/build-php ${srcdir}/build-embed - cd ${srcdir}/build-embed - ./configure ${phpconfig} \ - --disable-cli \ - --enable-embed=shared \ - ${phpextensions} - make - - # pear - cp -a ${srcdir}/build-php ${srcdir}/build-pear - cd ${srcdir}/build-pear - ./configure ${phpconfig} \ - --disable-cgi \ - --with-readline \ - --enable-pcntl \ - --with-pear \ - ${phpextensions} - make -} - -# check() { -# cd ${srcdir}/build-php -# make test -# } - -package_php() { - pkgdesc='An HTML-embedded scripting language' - depends=('pcre' 'libxml2' 'bzip2' 'openssl') - replaces=('php-fileinfo') - provides=('php-fileinfo') - conflicts=('php-fileinfo') - backup=('etc/php/php.ini') - - cd ${srcdir}/build-php - make -j1 INSTALL_ROOT=${pkgdir} install - install -d -m755 ${pkgdir}/usr/share/pear - # install php.ini - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/php/php.ini - install -d -m755 ${pkgdir}/etc/php/conf.d/ - - # remove static modules - rm -f ${pkgdir}/usr/lib/php/modules/*.a - # remove modules provided by sub packages - rm -f ${pkgdir}/usr/lib/php/modules/{curl,enchant,gd,gmp,intl,ldap,mcrypt,mssql,odbc,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so -} - -package_php-cgi() { - pkgdesc='CGI and FCGI SAPI for PHP' - depends=('php' 'pcre' 'libxml2') - - install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/php-cgi -} - -package_php-apache() { - pkgdesc='Apache SAPI for PHP' - depends=('php' 'apache' 'pcre' 'libxml2') - backup=('etc/httpd/conf/extra/php5_module.conf') - - install -D -m755 ${srcdir}/build-apache/libs/libphp5.so ${pkgdir}/usr/lib/httpd/modules/libphp5.so - install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/php5_module.conf -} - -package_php-fpm() { - pkgdesc='FastCGI Process Manager for PHP' - depends=('php') - backup=('etc/php/php-fpm.conf') - - install -D -m755 ${srcdir}/build-fpm/sapi/fpm/php-fpm ${pkgdir}/usr/sbin/php-fpm - install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.8 ${pkgdir}/usr/share/man/man8/php-fpm.8 - install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.conf ${pkgdir}/etc/php/php-fpm.conf - install -D -m755 ${srcdir}/rc.d.php-fpm ${pkgdir}/etc/rc.d/php-fpm - install -D -m644 ${srcdir}/logrotate.d.php-fpm ${pkgdir}/etc/logrotate.d/php-fpm - install -d -m755 ${pkgdir}/etc/php/fpm.d -} - -package_php-embed() { - pkgdesc='Embed SAPI for PHP' - depends=('php' 'pcre' 'libxml2') - - install -D -m755 ${srcdir}/build-embed/libs/libphp5.so ${pkgdir}/usr/lib/libphp5.so - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/sapi/embed/php_embed.h ${pkgdir}/usr/include/php/sapi/embed/php_embed.h -} - -package_php-pear() { - pkgdesc='PHP Extension and Application Repository' - depends=('php' 'bash') - backup=('etc/php/pear.conf') - - cd ${srcdir}/build-pear - make -j1 install-pear INSTALL_ROOT=${pkgdir} - local i - while read i; do - [ ! -e "$i" ] || rm -rf "$i" - done < <(find ${pkgdir} -name '.*') -} - -package_php-curl() { - depends=('php' 'curl') - pkgdesc='curl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/curl.so ${pkgdir}/usr/lib/php/modules/curl.so -} - -package_php-enchant() { - depends=('php' 'enchant') - pkgdesc='enchant module for PHP' - install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/php/modules/enchant.so -} - -package_php-gd() { - depends=('php' 'libpng' 'libjpeg' 'freetype2') - pkgdesc='gd module for PHP' - install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/php/modules/gd.so -} - -package_php-gmp() { - depends=('php' 'gmp') - pkgdesc='gmp module for PHP' - install -D -m755 ${srcdir}/build-php/modules/gmp.so ${pkgdir}/usr/lib/php/modules/gmp.so -} - -package_php-intl() { - depends=('php' 'icu') - pkgdesc='intl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/php/modules/intl.so -} - -package_php-ldap() { - depends=('php' 'libldap') - pkgdesc='ldap module for PHP' - install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/php/modules/ldap.so -} - -package_php-mcrypt() { - depends=('php' 'libmcrypt' 'libtool') - pkgdesc='mcrypt module for PHP' - install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/php/modules/mcrypt.so -} - -package_php-mssql() { - depends=('php' 'freetds') - pkgdesc='mssql module for PHP' - install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/php/modules/mssql.so -} - -package_php-odbc() { - depends=('php' 'unixodbc') - pkgdesc='ODBC modules for PHP' - install -D -m755 ${srcdir}/build-php/modules/odbc.so ${pkgdir}/usr/lib/php/modules/odbc.so - install -D -m755 ${srcdir}/build-php/modules/pdo_odbc.so ${pkgdir}/usr/lib/php/modules/pdo_odbc.so -} - -package_php-pgsql() { - depends=('php' 'postgresql-libs') - pkgdesc='PostgreSQL modules for PHP' - install -D -m755 ${srcdir}/build-php/modules/pgsql.so ${pkgdir}/usr/lib/php/modules/pgsql.so - install -D -m755 ${srcdir}/build-php/modules/pdo_pgsql.so ${pkgdir}/usr/lib/php/modules/pdo_pgsql.so -} - -package_php-pspell() { - depends=('php' 'aspell') - pkgdesc='pspell module for PHP' - install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/php/modules/pspell.so -} - -package_php-snmp() { - depends=('php' 'net-snmp') - pkgdesc='snmp module for PHP' - install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/php/modules/snmp.so -} - -package_php-sqlite() { - depends=('php' 'sqlite3') - pkgdesc='sqlite3 module for PHP' - install -D -m755 ${srcdir}/build-php/modules/sqlite3.so ${pkgdir}/usr/lib/php/modules/sqlite3.so - install -D -m755 ${srcdir}/build-php/modules/pdo_sqlite.so ${pkgdir}/usr/lib/php/modules/pdo_sqlite.so -} - -package_php-tidy() { - depends=('php' 'tidyhtml') - pkgdesc='tidy module for PHP' - install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/php/modules/tidy.so -} - -package_php-xsl() { - depends=('php' 'libxslt') - pkgdesc='xsl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/php/modules/xsl.so -} diff --git a/staging/php/apache.conf b/staging/php/apache.conf deleted file mode 100644 index c3ca0aad5..000000000 --- a/staging/php/apache.conf +++ /dev/null @@ -1,13 +0,0 @@ -# Required modules: dir_module, php5_module - - - - DirectoryIndex index.php index.html - - SetHandler application/x-httpd-php - - - SetHandler application/x-httpd-php-source - - - diff --git a/staging/php/logrotate.d.php-fpm b/staging/php/logrotate.d.php-fpm deleted file mode 100644 index 7a1ba2597..000000000 --- a/staging/php/logrotate.d.php-fpm +++ /dev/null @@ -1,6 +0,0 @@ -/var/log/php-fpm.log { - missingok - postrotate - /etc/rc.d/php-fpm logrotate >/dev/null || true - endscript -} diff --git a/staging/php/php-fpm.conf.in.patch b/staging/php/php-fpm.conf.in.patch deleted file mode 100644 index 93c62430a..000000000 --- a/staging/php/php-fpm.conf.in.patch +++ /dev/null @@ -1,80 +0,0 @@ ---- sapi/fpm/php-fpm.conf.in 2010-12-11 08:31:47.695294987 +0100 -+++ sapi/fpm/php-fpm.conf.in 2010-12-11 08:31:55.907812237 +0100 -@@ -12,7 +12,7 @@ - ; Relative path can also be used. They will be prefixed by: - ; - the global prefix if it's been set (-p arguement) - ; - @prefix@ otherwise --;include=etc/fpm.d/*.conf -+;include=/etc/php/fpm.d/*.conf - - ;;;;;;;;;;;;;;;;;; - ; Global Options ; -@@ -22,7 +22,7 @@ - ; Pid file - ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ - ; Default Value: none --;pid = run/php-fpm.pid -+pid = run/php-fpm/php-fpm.pid - - ; Error log file - ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ -@@ -93,7 +93,8 @@ - ; specific port; - ; '/path/to/unix/socket' - to listen on a unix socket. - ; Note: This value is mandatory. --listen = 127.0.0.1:9000 -+;listen = 127.0.0.1:9000 -+listen = /var/run/php-fpm/php-fpm.sock - - ; Set listen(2) backlog. A value of '-1' means unlimited. - ; Default Value: 128 (-1 on FreeBSD and OpenBSD) -@@ -112,9 +113,9 @@ - ; BSD-derived systems allow connections regardless of permissions. - ; Default Values: user and group are set as the running user - ; mode is set to 0666 --;listen.owner = @php_fpm_user@ --;listen.group = @php_fpm_group@ --;listen.mode = 0666 -+listen.owner = @php_fpm_user@ -+listen.group = @php_fpm_group@ -+listen.mode = 0660 - - ; Unix user/group of processes - ; Note: The user is mandatory. If the group is not set, the default user's group -@@ -154,23 +155,23 @@ - ; The number of child processes created on startup. - ; Note: Used only when pm is set to 'dynamic' - ; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 --;pm.start_servers = 20 -+pm.start_servers = 20 - - ; The desired minimum number of idle server processes. - ; Note: Used only when pm is set to 'dynamic' - ; Note: Mandatory when pm is set to 'dynamic' --;pm.min_spare_servers = 5 -+pm.min_spare_servers = 5 - - ; The desired maximum number of idle server processes. - ; Note: Used only when pm is set to 'dynamic' - ; Note: Mandatory when pm is set to 'dynamic' --;pm.max_spare_servers = 35 -+pm.max_spare_servers = 35 - - ; The number of requests each child process should execute before respawning. - ; This can be useful to work around memory leaks in 3rd party libraries. For - ; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. - ; Default Value: 0 --;pm.max_requests = 500 -+pm.max_requests = 500 - - ; The URI to view the FPM status page. If this value is not set, no URI will be - ; recognized as a status page. By default, the status page shows the following -@@ -264,7 +265,7 @@ - ; Chdir to this directory at the start. - ; Note: relative path can be used. - ; Default Value: current directory or / when chroot --;chdir = /var/www -+;chdir = /srv/http - - ; Redirect worker stdout and stderr into main error log. If not set, stdout and - ; stderr will be redirected to /dev/null according to FastCGI specs. diff --git a/staging/php/php.ini.patch b/staging/php/php.ini.patch deleted file mode 100644 index 356e190b4..000000000 --- a/staging/php/php.ini.patch +++ /dev/null @@ -1,126 +0,0 @@ ---- php.ini-production 2011-02-09 01:25:44.000000000 +0100 -+++ php.ini-production 2011-03-19 11:11:44.496987763 +0100 -@@ -376,7 +376,7 @@ - ; or per-virtualhost web server configuration file. This directive is - ; *NOT* affected by whether Safe Mode is turned On or Off. - ; http://php.net/open-basedir --;open_basedir = -+open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/ - - ; This directive allows you to disable certain functions for security reasons. - ; It receives a comma-delimited list of function names. This directive is -@@ -781,7 +781,7 @@ - ;;;;;;;;;;;;;;;;;;;;;;;;; - - ; UNIX: "/path1:/path2" --;include_path = ".:/php/includes" -+include_path = ".:/usr/share/pear" - ; - ; Windows: "\path1;\path2" - ;include_path = ".;c:\php\includes" -@@ -804,7 +804,7 @@ - - ; Directory in which the loadable extensions (modules) reside. - ; http://php.net/extension-dir --; extension_dir = "./" -+extension_dir = "/usr/lib/php/modules/" - ; On windows: - ; extension_dir = "ext" - -@@ -938,53 +938,49 @@ - ; If you only provide the name of the extension, PHP will look for it in its - ; default extension directory. - ; --; Windows Extensions --; Note that ODBC support is built in, so no dll is needed for it. --; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5) --; extension folders as well as the separate PECL DLL download (PHP 5). --; Be sure to appropriately set the extension_dir directive. --; --;extension=php_bz2.dll --;extension=php_curl.dll --;extension=php_fileinfo.dll --;extension=php_gd2.dll --;extension=php_gettext.dll --;extension=php_gmp.dll --;extension=php_intl.dll --;extension=php_imap.dll --;extension=php_interbase.dll --;extension=php_ldap.dll --;extension=php_mbstring.dll --;extension=php_exif.dll ; Must be after mbstring as it depends on it --;extension=php_mysql.dll --;extension=php_mysqli.dll --;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client --;extension=php_oci8_11g.dll ; Use with Oracle 11g Instant Client --;extension=php_openssl.dll --;extension=php_pdo_firebird.dll --;extension=php_pdo_mssql.dll --;extension=php_pdo_mysql.dll --;extension=php_pdo_oci.dll --;extension=php_pdo_odbc.dll --;extension=php_pdo_pgsql.dll --;extension=php_pdo_sqlite.dll --;extension=php_pgsql.dll --;extension=php_pspell.dll --;extension=php_shmop.dll -- --; The MIBS data available in the PHP distribution must be installed. --; See http://www.php.net/manual/en/snmp.installation.php --;extension=php_snmp.dll -- --;extension=php_soap.dll --;extension=php_sockets.dll --;extension=php_sqlite.dll --;extension=php_sqlite3.dll --;extension=php_sybase_ct.dll --;extension=php_tidy.dll --;extension=php_xmlrpc.dll --;extension=php_xsl.dll --;extension=php_zip.dll -+;extension=bcmath.so -+;extension=bz2.so -+;extension=calendar.so -+;extension=curl.so -+;extension=dba.so -+;extension=enchant.so -+;extension=exif.so -+;extension=ftp.so -+;extension=gd.so -+extension=gettext.so -+;extension=gmp.so -+;extension=iconv.so -+;extension=imap.so -+;extension=intl.so -+;extension=json.so -+;extension=ldap.so -+;extension=mcrypt.so -+;extension=mssql.so -+;extension=mysqli.so -+;extension=mysql.so -+;extension=odbc.so -+;extension=openssl.so -+;extension=pdo_mysql.so -+;extension=pdo_odbc.so -+;extension=pdo_pgsql.so -+;extension=pdo_sqlite.so -+;extension=pgsql.so -+;extension=phar.so -+;extension=posix.so -+;extension=pspell.so -+;extension=shmop.so -+;extension=snmp.so -+;extension=soap.so -+;extension=sockets.so -+;extension=sqlite3.so -+;extension=sqlite.so -+;extension=sysvmsg.so -+;extension=sysvsem.so -+;extension=sysvshm.so -+;extension=tidy.so -+;extension=xmlrpc.so -+;extension=xsl.so -+;extension=zip.so - - ;;;;;;;;;;;;;;;;;;; - ; Module Settings ; diff --git a/staging/php/rc.d.php-fpm b/staging/php/rc.d.php-fpm deleted file mode 100644 index 54bcf4d5b..000000000 --- a/staging/php/rc.d.php-fpm +++ /dev/null @@ -1,158 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - - -wait_for_pid () { - try=0 - while test $try -lt 35 ; do - case "$1" in - 'created') - if [ -f "$2" ] ; then - try='' - break - fi - ;; - 'removed') - if [ ! -f "$2" ] ; then - try='' - break - fi - ;; - esac - - stat_append '.' - try=`expr $try + 1` - sleep 1 - done -} - -test_config() { - stat_busy 'Checking configuration' - if [ $(id -u) -ne 0 ]; then - stat_append '(This script must be run as root)' - stat_die - fi - - if [ ! -r /etc/php/php-fpm.conf ]; then - stat_append '(/etc/php/php-fpm.conf not found)' - stat_die - fi - - local test=$(/usr/sbin/php-fpm -t 2>&1) - if [ $? -gt 0 ]; then - stat_append '(error in /etc/php/php-fpm.conf)' - stat_die - elif echo $test | grep -qi 'error'; then - stat_append '(error in /etc/php/php.ini)' - stat_die - fi - - [ -d /var/run/php-fpm ] || install -d -m755 /var/run/php-fpm - - stat_done -} - -case "$1" in - start) - test_config - stat_busy 'Starting php-fpm' - - /usr/sbin/php-fpm - - if [ "$?" != 0 ] ; then - stat_fail - exit 1 - fi - - wait_for_pid created /var/run/php-fpm/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - add_daemon php-fpm - stat_done - fi - ;; - - stop) - test_config - stat_busy 'Gracefully shutting down php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -QUIT `cat /var/run/php-fpm/php-fpm.pid` - - wait_for_pid removed /var/run/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - rm_daemon php-fpm - stat_done - fi - ;; - - force-quit) - stat_busy 'Terminating php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -TERM `cat /var/run/php-fpm/php-fpm.pid` - - wait_for_pid removed /var/run/php-fpm/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - rm_daemon php-fpm - stat_done - fi - ;; - - restart) - $0 stop - $0 start - ;; - - reload) - test_config - stat_busy 'Reload service php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -USR2 `cat /var/run/php-fpm/php-fpm.pid` - stat_done - ;; - - logrotate) - stat_busy 'Reopen php-fpm log' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -USR1 `cat /var/run/php-fpm/php-fpm.pid` - stat_done - ;; - - *) - echo "usage: $0 {start|stop|force-quit|restart|reload|logrotate}" - exit 1 - ;; - -esac diff --git a/staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz b/staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz deleted file mode 100644 index 7167ce2d0..000000000 Binary files a/staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz and /dev/null differ diff --git a/staging/xulrunner/PKGBUILD b/staging/xulrunner/PKGBUILD deleted file mode 100644 index d9ad07e87..000000000 --- a/staging/xulrunner/PKGBUILD +++ /dev/null @@ -1,63 +0,0 @@ -# $Id: PKGBUILD 126161 2011-06-01 20:45:14Z ibiru $ -# Maintainer: Jan de Groot -# Contributor: Alexander Baldeck -pkgname=xulrunner -pkgver=2.0.1 -_ffoxver=4.0.1 -pkgrel=2 -pkgdesc="Mozilla Runtime Environment" -arch=('i686' 'x86_64') -license=('MPL' 'GPL' 'LGPL') -depends=('gtk2' 'gcc-libs' 'libidl2' 'mozilla-common' 'nss' 'libxt' 'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'sqlite3>=3.7.4' 'libnotify') -makedepends=('zip' 'pkg-config' 'diffutils' 'python2' 'wireless_tools' 'yasm' 'mesa') -url="http://wiki.mozilla.org/XUL:Xul_Runner" -source=(http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${_ffoxver}/source/firefox-${_ffoxver}.source.tar.bz2 - mozconfig - mozilla-pkgconfig.patch - xulrunner-version.patch - xulrunner-omnijar.patch - port_gnomevfs_to_gio.patch) -options=('!emptydirs') -md5sums=('9abda7d23151e97913c8555a64c13f34' - '2358a2ddd35bcdd62ff42442dfe548d9' - '639ea80e823543dd415b90c0ee804186' - 'a0236f6c3e55f60b7888d8cf137ff209' - '0bf82bc6677e3ce57fd20a147fe8d7b1' - '42f83468b296452fb754a81a4317ca64') -build() { - cd "${srcdir}/mozilla-2.0" - cp "${srcdir}/mozconfig" .mozconfig - - #fix libdir/sdkdir - fedora - patch -Np1 -i "${srcdir}/mozilla-pkgconfig.patch" - - #Force installation to the same path for every version - patch -Np1 -i "${srcdir}/xulrunner-version.patch" - - #https://bugzilla.mozilla.org/show_bug.cgi?id=620931 - patch -Np1 -i "${srcdir}/xulrunner-omnijar.patch" - - #https://bugzilla.mozilla.org/show_bug.cgi?id=494163 - patch -Np1 -i "${srcdir}/port_gnomevfs_to_gio.patch" - - unset CFLAGS - unset CXXFLAGS - - export CXXFLAGS="-fpermissive" - - make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS" -} - -package() { - cd "${srcdir}/mozilla-2.0" - make -j1 -f client.mk DESTDIR="${pkgdir}" install - - #Remove included dictionaries, add symlink to system myspell path. - #Note: this will cause file conflicts when users have installed dictionaries in the old location - rm -rf "${pkgdir}/usr/lib/xulrunner-2.0/dictionaries" - ln -sf /usr/share/myspell/dicts "${pkgdir}/usr/lib/xulrunner-2.0/dictionaries" - - # add xulrunner library path to ld.so.conf - install -d ${pkgdir}/etc/ld.so.conf.d - echo "/usr/lib/xulrunner-2.0" > ${pkgdir}/etc/ld.so.conf.d/xulrunner.conf -} diff --git a/staging/xulrunner/mozconfig b/staging/xulrunner/mozconfig deleted file mode 100644 index 03a352920..000000000 --- a/staging/xulrunner/mozconfig +++ /dev/null @@ -1,56 +0,0 @@ -. $topsrcdir/xulrunner/config/mozconfig - -ac_add_options --prefix=/usr -ac_add_options --libdir=/usr/lib -ac_add_options --with-system-nspr -ac_add_options --with-system-nss -ac_add_options --with-system-jpeg -ac_add_options --with-system-zlib -ac_add_options --with-system-bz2 -ac_add_options --with-system-png -ac_add_options --with-system-libevent -ac_add_options --enable-system-hunspell -ac_add_options --enable-system-sqlite -ac_add_options --enable-system-cairo -ac_add_options --with-pthreads - -ac_add_options --enable-default-toolkit=cairo-gtk2 -ac_add_options --enable-safe-browsing -ac_add_options --enable-extensions=default -ac_add_options --enable-startup-notification -ac_add_options --enable-pango -ac_add_options --enable-svg -ac_add_options --enable-canvas -ac_add_options --enable-smil -ac_add_options --enable-canvas3d -ac_add_options --enable-places -ac_add_options --enable-shared-js -ac_add_options --enable-url-classifier - -ac_add_options --enable-optimize -ac_add_options --enable-strip -ac_add_options --enable-install-strip -ac_add_options --enable-jemalloc -ac_add_options --enable-xterm-updates -ac_add_options --enable-printing -ac_add_options --enable-xinerama - -ac_add_options --disable-javaxpcom -ac_add_options --disable-crashreporter -ac_add_options --disable-updater -ac_add_options --disable-tests -ac_add_options --disable-xprint -ac_add_options --disable-mochitest -ac_add_options --disable-debug -ac_add_options --disable-installer -ac_add_options --disable-pedantic - -ac_add_options --enable-gio -ac_add_options --disable-gnomevfs -ac_add_options --enable-gconf -ac_add_options --enable-libnotify - -export BUILD_OFFICIAL=1 -export MOZILLA_OFFICIAL=1 -mk_add_options BUILD_OFFICIAL=1 -mk_add_options MOZILLA_OFFICIAL=1 diff --git a/staging/xulrunner/mozilla-pkgconfig.patch b/staging/xulrunner/mozilla-pkgconfig.patch deleted file mode 100644 index 2203efcde..000000000 --- a/staging/xulrunner/mozilla-pkgconfig.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -Nur mozilla-2.0.orig/xulrunner/installer/libxul-embedding.pc.in mozilla-2.0/xulrunner/installer/libxul-embedding.pc.in ---- mozilla-2.0.orig/xulrunner/installer/libxul-embedding.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/libxul-embedding.pc.in 2011-03-13 03:25:12.350027359 -0700 -@@ -6,5 +6,6 @@ - Name: libxul-embedding - Description: Static library for version-independent embedding of the Mozilla runtime - Version: %MOZILLA_VERSION% -+Requires: %NSPR_NAME% >= %NSPR_VERSION% - Libs: -L${sdkdir}/lib -lxpcomglue -ldl - Cflags: -DXPCOM_GLUE -I${includedir} %WCHAR_CFLAGS% -diff -Nur mozilla-2.0.orig/xulrunner/installer/libxul.pc.in mozilla-2.0/xulrunner/installer/libxul.pc.in ---- mozilla-2.0.orig/xulrunner/installer/libxul.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/libxul.pc.in 2011-03-13 03:25:28.010027359 -0700 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - idldir=%idldir% - -diff -Nur mozilla-2.0.orig/xulrunner/installer/Makefile.in mozilla-2.0/xulrunner/installer/Makefile.in ---- mozilla-2.0.orig/xulrunner/installer/Makefile.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/Makefile.in 2011-03-13 03:25:55.570027359 -0700 -@@ -121,6 +121,7 @@ - -e "s|%includedir%|$(includedir)|" \ - -e "s|%idldir%|$(idldir)|" \ - -e "s|%sdkdir%|$(sdkdir)|" \ -+ -e "s|%libdir%|$(installdir)|" \ - -e "s|%MOZ_APP_NAME%|$(MOZ_APP_NAME)|" \ - -e "s|%MOZILLA_VERSION%|$(MOZ_APP_VERSION)|" \ - -e "s|%WCHAR_CFLAGS%|$(WCHAR_CFLAGS)|" \ -diff -Nur mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in ---- mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2011-03-13 03:26:18.676694023 -0700 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - - Name: mozilla-gtkembedmoz -diff -Nur mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed.pc.in ---- mozilla-2.0.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/mozilla-gtkmozembed.pc.in 2011-03-13 03:26:41.566694025 -0700 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - - Name: mozilla-gtkembedmoz -diff -Nur mozilla-2.0.orig/xulrunner/installer/mozilla-js.pc.in mozilla-2.0/xulrunner/installer/mozilla-js.pc.in ---- mozilla-2.0.orig/xulrunner/installer/mozilla-js.pc.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/mozilla-js.pc.in 2011-03-13 03:27:19.680027357 -0700 -@@ -7,4 +7,4 @@ - Version: %MOZILLA_VERSION% - Requires: %NSPR_NAME% >= %NSPR_VERSION% - Libs: -L${sdkdir}/lib %MOZ_JS_LINK% --Cflags: -I${includedir} -DXP_UNIX -DJS_THREADSAFE -+Cflags: -I${includedir} -I${includedir}/js -DXP_UNIX -DJS_THREADSAFE diff --git a/staging/xulrunner/port_gnomevfs_to_gio.patch b/staging/xulrunner/port_gnomevfs_to_gio.patch deleted file mode 100644 index 797baff42..000000000 --- a/staging/xulrunner/port_gnomevfs_to_gio.patch +++ /dev/null @@ -1,1316 +0,0 @@ -diff -r 49a1b2aa43c5 extensions/gio/Makefile.in ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/extensions/gio/Makefile.in Tue Jan 11 11:17:52 2011 +0100 -@@ -0,0 +1,69 @@ -+# vim:set ts=8 sw=8 sts=8 noet: -+# ***** BEGIN LICENSE BLOCK ***** -+# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+# -+# The contents of this file are subject to the Mozilla Public License Version -+# 1.1 (the "License"); you may not use this file except in compliance with -+# the License. You may obtain a copy of the License at -+# http://www.mozilla.org/MPL/ -+# -+# Software distributed under the License is distributed on an "AS IS" basis, -+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+# for the specific language governing rights and limitations under the -+# License. -+# -+# The Original Code is the Mozilla gnome-vfs extension. -+# -+# The Initial Developer of the Original Code is IBM Corporation. -+# -+# Portions created by IBM Corporation are Copyright (C) 2004 -+# IBM Corporation. All Rights Reserved. -+# -+# Contributor(s): -+# Darin Fisher -+# Jan Horak -+# -+# Alternatively, the contents of this file may be used under the terms of -+# either the GNU General Public License Version 2 or later (the "GPL"), or -+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+# in which case the provisions of the GPL or the LGPL are applicable instead -+# of those above. If you wish to allow use of your version of this file only -+# under the terms of either the GPL or the LGPL, and not to allow others to -+# use your version of this file under the terms of the MPL, indicate your -+# decision by deleting the provisions above and replace them with the notice -+# and other provisions required by the GPL or the LGPL. If you do not delete -+# the provisions above, a recipient may use your version of this file under -+# the terms of any one of the MPL, the GPL or the LGPL. -+# -+# ***** END LICENSE BLOCK ***** -+ -+DEPTH = ../.. -+topsrcdir = @top_srcdir@ -+srcdir = @srcdir@ -+VPATH = @srcdir@ -+ -+include $(DEPTH)/config/autoconf.mk -+ -+MODULE = nkgio -+LIBRARY_NAME = nkgio -+SHORT_LIBNAME = nkgio -+IS_COMPONENT = 1 -+ -+CPPSRCS = \ -+ nsGIOProtocolHandler.cpp \ -+ $(NULL) -+ -+LOCAL_INCLUDES = $(MOZ_GIO_CFLAGS) -+ -+EXTRA_DSO_LDOPTS = \ -+ $(XPCOM_GLUE_LDOPTS) \ -+ $(NSPR_LIBS) \ -+ $(MOZ_GIO_LIBS) \ -+ $(NULL) -+ -+# make sure this component is never statically linked into the main -+# application. this is necessary since we don't want to force users -+# to install gio in order to use the rest of mozilla ;-) -+FORCE_SHARED_LIB= 1 -+ -+include $(topsrcdir)/config/rules.mk -diff -r 49a1b2aa43c5 extensions/gio/makefiles.sh ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/extensions/gio/makefiles.sh Tue Jan 11 11:17:52 2011 +0100 -@@ -0,0 +1,41 @@ -+#! /bin/sh -+# ***** BEGIN LICENSE BLOCK ***** -+# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+# -+# The contents of this file are subject to the Mozilla Public License Version -+# 1.1 (the "License"); you may not use this file except in compliance with -+# the License. You may obtain a copy of the License at -+# http://www.mozilla.org/MPL/ -+# -+# Software distributed under the License is distributed on an "AS IS" basis, -+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+# for the specific language governing rights and limitations under the -+# License. -+# -+# The Original Code is Mozilla Build System -+# -+# The Initial Developer of the Original Code is -+# Ben Turner -+# -+# Portions created by the Initial Developer are Copyright (C) 2007 -+# the Initial Developer. All Rights Reserved. -+# -+# Contributor(s): -+# -+# Alternatively, the contents of this file may be used under the terms of -+# either the GNU General Public License Version 2 or later (the "GPL"), or -+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+# in which case the provisions of the GPL or the LGPL are applicable instead -+# of those above. If you wish to allow use of your version of this file only -+# under the terms of either the GPL or the LGPL, and not to allow others to -+# use your version of this file under the terms of the MPL, indicate your -+# decision by deleting the provisions above and replace them with the notice -+# and other provisions required by the GPL or the LGPL. If you do not delete -+# the provisions above, a recipient may use your version of this file under -+# the terms of any one of the MPL, the GPL or the LGPL. -+# -+# ***** END LICENSE BLOCK ***** -+ -+add_makefiles " -+ extensions/gio/Makefile -+" -diff -r 49a1b2aa43c5 extensions/gio/nsGIOProtocolHandler.cpp ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/extensions/gio/nsGIOProtocolHandler.cpp Tue Jan 11 11:17:52 2011 +0100 -@@ -0,0 +1,1163 @@ -+/* vim:set ts=2 sw=2 et cindent: */ -+/* ***** BEGIN LICENSE BLOCK ***** -+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+ * -+ * The contents of this file are subject to the Mozilla Public License Version -+ * 1.1 (the "License"); you may not use this file except in compliance with -+ * the License. You may obtain a copy of the License at -+ * http://www.mozilla.org/MPL/ -+ * -+ * Software distributed under the License is distributed on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+ * for the specific language governing rights and limitations under the -+ * License. -+ * -+ * The Original Code is the Mozilla gnome-vfs extension. -+ * -+ * The Initial Developer of the Original Code is IBM Corporation. -+ * -+ * Portions created by IBM Corporation are Copyright (C) 2004 -+ * IBM Corporation. All Rights Reserved. -+ * -+ * Contributor(s): -+ * Darin Fisher -+ * Jan Horak -+ * -+ * Alternatively, the contents of this file may be used under the terms of -+ * either the GNU General Public License Version 2 or later (the "GPL"), or -+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+ * in which case the provisions of the GPL or the LGPL are applicable instead -+ * of those above. If you wish to allow use of your version of this file only -+ * under the terms of either the GPL or the LGPL, and not to allow others to -+ * use your version of this file under the terms of the MPL, indicate your -+ * decision by deleting the provisions above and replace them with the notice -+ * and other provisions required by the GPL or the LGPL. If you do not delete -+ * the provisions above, a recipient may use your version of this file under -+ * the terms of any one of the MPL, the GPL or the LGPL. -+ * -+ * ***** END LICENSE BLOCK ***** */ -+ -+/* -+ * This code is based on original Mozilla gnome-vfs extension. It implements -+ * input stream provided by GVFS/GIO. -+*/ -+#include "mozilla/ModuleUtils.h" -+#include "nsIPrefService.h" -+#include "nsIPrefBranch2.h" -+#include "nsIObserver.h" -+#include "nsThreadUtils.h" -+#include "nsProxyRelease.h" -+#include "nsIStringBundle.h" -+#include "nsIStandardURL.h" -+#include "nsMimeTypes.h" -+#include "nsNetUtil.h" -+#include "mozilla/Monitor.h" -+#include -+ -+#define MOZ_GIO_SCHEME "moz-gio" -+#define MOZ_GIO_SUPPORTED_PROTOCOLS "network.gio.supported-protocols" -+ -+//----------------------------------------------------------------------------- -+ -+// NSPR_LOG_MODULES=gio:5 -+#ifdef PR_LOGGING -+static PRLogModuleInfo *sGIOLog; -+#define LOG(args) PR_LOG(sGIOLog, PR_LOG_DEBUG, args) -+#else -+#define LOG(args) -+#endif -+ -+ -+//----------------------------------------------------------------------------- -+static nsresult -+MapGIOResult(gint code) -+{ -+ switch (code) -+ { -+ case G_IO_ERROR_NOT_FOUND: return NS_ERROR_FILE_NOT_FOUND; // shows error -+ case G_IO_ERROR_INVALID_ARGUMENT: return NS_ERROR_INVALID_ARG; -+ case G_IO_ERROR_NOT_SUPPORTED: return NS_ERROR_NOT_AVAILABLE; -+ case G_IO_ERROR_NO_SPACE: return NS_ERROR_FILE_NO_DEVICE_SPACE; -+ case G_IO_ERROR_READ_ONLY: return NS_ERROR_FILE_READ_ONLY; -+ case G_IO_ERROR_PERMISSION_DENIED: return NS_ERROR_FILE_ACCESS_DENIED; // wrong password/login -+ case G_IO_ERROR_CLOSED: return NS_BASE_STREAM_CLOSED; // was EOF -+ case G_IO_ERROR_NOT_DIRECTORY: return NS_ERROR_FILE_NOT_DIRECTORY; -+ case G_IO_ERROR_PENDING: return NS_ERROR_IN_PROGRESS; -+ case G_IO_ERROR_EXISTS: return NS_ERROR_FILE_ALREADY_EXISTS; -+ case G_IO_ERROR_IS_DIRECTORY: return NS_ERROR_FILE_IS_DIRECTORY; -+ case G_IO_ERROR_NOT_MOUNTED: return NS_ERROR_NOT_CONNECTED; // shows error -+ case G_IO_ERROR_HOST_NOT_FOUND: return NS_ERROR_UNKNOWN_HOST; // shows error -+ case G_IO_ERROR_CANCELLED: return NS_ERROR_ABORT; -+ case G_IO_ERROR_NOT_EMPTY: return NS_ERROR_FILE_DIR_NOT_EMPTY; -+ case G_IO_ERROR_FILENAME_TOO_LONG: return NS_ERROR_FILE_NAME_TOO_LONG; -+ case G_IO_ERROR_INVALID_FILENAME: return NS_ERROR_FILE_INVALID_PATH; -+ case G_IO_ERROR_TIMED_OUT: return NS_ERROR_NET_TIMEOUT; // shows error -+ case G_IO_ERROR_WOULD_BLOCK: return NS_BASE_STREAM_WOULD_BLOCK; -+ case G_IO_ERROR_FAILED_HANDLED: return NS_ERROR_ABORT; // Cancel on login dialog -+ -+/* unhandled: -+ G_IO_ERROR_NOT_REGULAR_FILE, -+ G_IO_ERROR_NOT_SYMBOLIC_LINK, -+ G_IO_ERROR_NOT_MOUNTABLE_FILE, -+ G_IO_ERROR_TOO_MANY_LINKS, -+ G_IO_ERROR_ALREADY_MOUNTED, -+ G_IO_ERROR_CANT_CREATE_BACKUP, -+ G_IO_ERROR_WRONG_ETAG, -+ G_IO_ERROR_WOULD_RECURSE, -+ G_IO_ERROR_BUSY, -+ G_IO_ERROR_WOULD_MERGE, -+ G_IO_ERROR_TOO_MANY_OPEN_FILES -+*/ -+ // Make GCC happy -+ default: -+ return NS_ERROR_FAILURE; -+ } -+ -+ return NS_ERROR_FAILURE; -+} -+ -+static nsresult -+MapGIOResult(GError *result) -+{ -+ if (!result) -+ return NS_OK; -+ else -+ return MapGIOResult(result->code); -+} -+/** Return values for mount operation. -+ * These enums are used as mount operation return values. -+ */ -+typedef enum { -+ MOUNT_OPERATION_IN_PROGRESS, /** \enum operation in progress */ -+ MOUNT_OPERATION_SUCCESS, /** \enum operation successful */ -+ MOUNT_OPERATION_FAILED /** \enum operation not successful */ -+} MountOperationResult; -+//----------------------------------------------------------------------------- -+/** -+ * Sort function compares according to file type (directory/file) -+ * and alphabethical order -+ * @param a pointer to GFileInfo object to compare -+ * @param b pointer to GFileInfo object to compare -+ * @return -1 when first object should be before the second, 0 when equal, -+ * +1 when second object should be before the first -+ */ -+static gint -+FileInfoComparator(gconstpointer a, gconstpointer b) -+{ -+ GFileInfo *ia = ( GFileInfo *) a; -+ GFileInfo *ib = ( GFileInfo *) b; -+ if (g_file_info_get_file_type(ia) == G_FILE_TYPE_DIRECTORY -+ && g_file_info_get_file_type(ib) != G_FILE_TYPE_DIRECTORY) -+ return -1; -+ if (g_file_info_get_file_type(ib) == G_FILE_TYPE_DIRECTORY -+ && g_file_info_get_file_type(ia) != G_FILE_TYPE_DIRECTORY) -+ return 1; -+ -+ return strcasecmp(g_file_info_get_name(ia), g_file_info_get_name(ib)); -+} -+ -+/* Declaration of mount callback functions */ -+static void mount_enclosing_volume_finished (GObject *source_object, -+ GAsyncResult *res, -+ gpointer user_data); -+static void mount_operation_ask_password (GMountOperation *mount_op, -+ const char *message, -+ const char *default_user, -+ const char *default_domain, -+ GAskPasswordFlags flags, -+ gpointer user_data); -+//----------------------------------------------------------------------------- -+ -+class nsGIOInputStream : public nsIInputStream -+{ -+ public: -+ NS_DECL_ISUPPORTS -+ NS_DECL_NSIINPUTSTREAM -+ -+ nsGIOInputStream(const nsCString &uriSpec) -+ : mSpec(uriSpec) -+ , mChannel(nsnull) -+ , mHandle(nsnull) -+ , mStream(nsnull) -+ , mBytesRemaining(PR_UINT32_MAX) -+ , mStatus(NS_OK) -+ , mDirList(nsnull) -+ , mDirListPtr(nsnull) -+ , mDirBufCursor(0) -+ , mDirOpen(PR_FALSE) -+ , mMonitorMountInProgress("GIOInputStream::MountFinished") { } -+ -+ ~nsGIOInputStream() { Close(); } -+ -+ void SetChannel(nsIChannel *channel) -+ { -+ // We need to hold an owning reference to our channel. This is done -+ // so we can access the channel's notification callbacks to acquire -+ // a reference to a nsIAuthPrompt if we need to handle an interactive -+ // mount operation. -+ // -+ // However, the channel can only be accessed on the main thread, so -+ // we have to be very careful with ownership. Moreover, it doesn't -+ // support threadsafe addref/release, so proxying is the answer. -+ // -+ // Also, it's important to note that this likely creates a reference -+ // cycle since the channel likely owns this stream. This reference -+ // cycle is broken in our Close method. -+ -+ NS_ADDREF(mChannel = channel); -+ } -+ void SetMountResult(MountOperationResult result, gint error_code); -+ private: -+ nsresult DoOpen(); -+ nsresult DoRead(char *aBuf, PRUint32 aCount, PRUint32 *aCountRead); -+ nsresult SetContentTypeOfChannel(const char *contentType); -+ nsresult MountVolume(); -+ nsresult DoOpenDirectory(); -+ nsresult DoOpenFile(GFileInfo *info); -+ nsCString mSpec; -+ nsIChannel *mChannel; // manually refcounted -+ GFile *mHandle; -+ GFileInputStream *mStream; -+ PRUint64 mBytesRemaining; -+ nsresult mStatus; -+ GList *mDirList; -+ GList *mDirListPtr; -+ nsCString mDirBuf; -+ PRUint32 mDirBufCursor; -+ PRPackedBool mDirOpen; -+ MountOperationResult mMountRes; -+ mozilla::Monitor mMonitorMountInProgress; -+ gint mMountErrorCode; -+}; -+/** -+ * Set result of mount operation and notify monitor waiting for results. -+ * This method is called in main thread as long as it is used only -+ * in mount_enclosing_volume_finished function. -+ * @param result Result of mount operation -+ */ -+void -+nsGIOInputStream::SetMountResult(MountOperationResult result, gint error_code) -+{ -+ mozilla::MonitorAutoEnter mon(mMonitorMountInProgress); -+ mMountRes = result; -+ mMountErrorCode = error_code; -+ mon.Notify(); -+} -+ -+/** -+ * Start mount operation and wait in loop until it is finished. This method is -+ * called from thread which is trying to read from location. -+ */ -+nsresult -+nsGIOInputStream::MountVolume() { -+ GMountOperation* mount_op = g_mount_operation_new(); -+ g_signal_connect (mount_op, "ask-password", -+ G_CALLBACK (mount_operation_ask_password), mChannel); -+ mMountRes = MOUNT_OPERATION_IN_PROGRESS; -+ /* g_file_mount_enclosing_volume uses a dbus request to mount the volume. -+ Callback mount_enclosing_volume_finished is called in main thread -+ (not this thread on which this method is called). */ -+ g_file_mount_enclosing_volume(mHandle, -+ G_MOUNT_MOUNT_NONE, -+ mount_op, -+ NULL, -+ mount_enclosing_volume_finished, -+ this); -+ mozilla::MonitorAutoEnter mon(mMonitorMountInProgress); -+ /* Waiting for finish of mount operation thread */ -+ while (mMountRes == MOUNT_OPERATION_IN_PROGRESS) -+ mon.Wait(); -+ -+ g_object_unref(mount_op); -+ -+ if (mMountRes == MOUNT_OPERATION_FAILED) { -+ return MapGIOResult(mMountErrorCode); -+ } else { -+ return NS_OK; -+ } -+} -+ -+/** -+ * Create list of infos about objects in opened directory -+ * Return: NS_OK when list obtained, otherwise error code according -+ * to failed operation. -+ */ -+nsresult -+nsGIOInputStream::DoOpenDirectory() -+{ -+ GError *error = NULL; -+ -+ GFileEnumerator *f_enum = g_file_enumerate_children(mHandle, -+ "standard::*,time::*", -+ G_FILE_QUERY_INFO_NONE, -+ NULL, -+ &error); -+ if (!f_enum) { -+ nsresult rv = MapGIOResult(error); -+ g_warning("Cannot read from directory: %s", error->message); -+ g_error_free(error); -+ return rv; -+ } -+ // fill list of file infos -+ GFileInfo *info = g_file_enumerator_next_file(f_enum, NULL, &error); -+ while (info) { -+ mDirList = g_list_append(mDirList, info); -+ info = g_file_enumerator_next_file(f_enum, NULL, &error); -+ } -+ g_object_unref(f_enum); -+ if (error) { -+ g_warning("Error reading directory content: %s", error->message); -+ nsresult rv = MapGIOResult(error); -+ g_error_free(error); -+ return rv; -+ } -+ mDirOpen = PR_TRUE; -+ -+ // Sort list of file infos by using FileInfoComparator function -+ mDirList = g_list_sort(mDirList, FileInfoComparator); -+ mDirListPtr = mDirList; -+ -+ // Write base URL (make sure it ends with a '/') -+ mDirBuf.Append("300: "); -+ mDirBuf.Append(mSpec); -+ if (mSpec.get()[mSpec.Length() - 1] != '/') -+ mDirBuf.Append('/'); -+ mDirBuf.Append('\n'); -+ -+ // Write column names -+ mDirBuf.Append("200: filename content-length last-modified file-type\n"); -+ -+ // Write charset (assume UTF-8) -+ // XXX is this correct? -+ mDirBuf.Append("301: UTF-8\n"); -+ SetContentTypeOfChannel(APPLICATION_HTTP_INDEX_FORMAT); -+ return NS_OK; -+} -+ -+/** -+ * Create file stream and set mime type for channel -+ * @param info file info used to determine mime type -+ * @return NS_OK when file stream created successfuly, error code otherwise -+ */ -+nsresult -+nsGIOInputStream::DoOpenFile(GFileInfo *info) -+{ -+ GError *error = NULL; -+ -+ mStream = g_file_read(mHandle, NULL, &error); -+ if (!mStream) { -+ nsresult rv = MapGIOResult(error); -+ g_warning("Cannot read from file: %s", error->message); -+ g_error_free(error); -+ return rv; -+ } -+ -+ const char * content_type = g_file_info_get_content_type(info); -+ if (content_type) { -+ char *mime_type = g_content_type_get_mime_type(content_type); -+ if (mime_type) { -+ if (strcmp(mime_type, APPLICATION_OCTET_STREAM) != 0) { -+ SetContentTypeOfChannel(mime_type); -+ } -+ g_free(mime_type); -+ } -+ } else { -+ g_warning("Missing content type."); -+ } -+ -+ mBytesRemaining = g_file_info_get_size(info); -+ // Update the content length attribute on the channel. We do this -+ // synchronously without proxying. This hack is not as bad as it looks! -+ mChannel->SetContentLength(mBytesRemaining); -+ -+ return NS_OK; -+} -+ -+/** -+ * Start file open operation, mount volume when needed and according to file type -+ * create file output stream or read directory content. -+ * @return NS_OK when file or directory opened successfully, error code otherwise -+ */ -+nsresult -+nsGIOInputStream::DoOpen() -+{ -+ nsresult rv; -+ GError *error = NULL; -+ -+ NS_ASSERTION(mHandle == nsnull, "already open"); -+ -+ mHandle = g_file_new_for_uri( mSpec.get() ); -+ -+ GFileInfo *info = g_file_query_info(mHandle, -+ "standard::*", -+ G_FILE_QUERY_INFO_NONE, -+ NULL, -+ &error); -+ -+ if (error) { -+ if (error->domain == G_IO_ERROR && error->code == G_IO_ERROR_NOT_MOUNTED) { -+ // location is not yet mounted, try to mount -+ g_error_free(error); -+ if (NS_IsMainThread()) -+ return NS_ERROR_NOT_CONNECTED; -+ error = NULL; -+ rv = MountVolume(); -+ if (rv != NS_OK) { -+ return rv; -+ } -+ // get info again -+ info = g_file_query_info(mHandle, -+ "standard::*", -+ G_FILE_QUERY_INFO_NONE, -+ NULL, -+ &error); -+ // second try to get file info from remote files after media mount -+ if (!info) { -+ g_warning("Unable to get file info: %s", error->message); -+ rv = MapGIOResult(error); -+ g_error_free(error); -+ return rv; -+ } -+ } else { -+ g_warning("Unable to get file info: %s", error->message); -+ rv = MapGIOResult(error); -+ g_error_free(error); -+ return rv; -+ } -+ } -+ // Get file type to handle directories and file differently -+ GFileType f_type = g_file_info_get_file_type(info); -+ if (f_type == G_FILE_TYPE_DIRECTORY) { -+ // directory -+ rv = DoOpenDirectory(); -+ } else if (f_type != G_FILE_TYPE_UNKNOWN) { -+ // file -+ rv = DoOpenFile(info); -+ } else { -+ g_warning("Unable to get file type."); -+ rv = NS_ERROR_FILE_NOT_FOUND; -+ } -+ if (info) -+ g_object_unref(info); -+ return rv; -+} -+ -+/** -+ * Read content of file or create file list from directory -+ * @param aBuf read destination buffer -+ * @param aCount length of destination buffer -+ * @param aCountRead number of read characters -+ * @return NS_OK when read successfully, NS_BASE_STREAM_CLOSED when end of file, -+ * error code otherwise -+ */ -+nsresult -+nsGIOInputStream::DoRead(char *aBuf, PRUint32 aCount, PRUint32 *aCountRead) -+{ -+ nsresult rv = NS_ERROR_NOT_AVAILABLE; -+ if (mStream) { -+ // file read -+ GError *error = NULL; -+ PRUint32 bytes_read = g_input_stream_read(G_INPUT_STREAM(mStream), -+ aBuf, -+ aCount, -+ NULL, -+ &error); -+ if (error) { -+ rv = MapGIOResult(error); -+ *aCountRead = 0; -+ g_warning("Cannot read from file: %s", error->message); -+ g_error_free(error); -+ return rv; -+ } -+ *aCountRead = bytes_read; -+ mBytesRemaining -= *aCountRead; -+ return NS_OK; -+ } -+ else if (mDirOpen) { -+ // directory read -+ while (aCount && rv != NS_BASE_STREAM_CLOSED) -+ { -+ // Copy data out of our buffer -+ PRUint32 bufLen = mDirBuf.Length() - mDirBufCursor; -+ if (bufLen) -+ { -+ PRUint32 n = PR_MIN(bufLen, aCount); -+ memcpy(aBuf, mDirBuf.get() + mDirBufCursor, n); -+ *aCountRead += n; -+ aBuf += n; -+ aCount -= n; -+ mDirBufCursor += n; -+ } -+ -+ if (!mDirListPtr) // Are we at the end of the directory list? -+ { -+ rv = NS_BASE_STREAM_CLOSED; -+ } -+ else if (aCount) // Do we need more data? -+ { -+ GFileInfo *info = (GFileInfo *) mDirListPtr->data; -+ -+ // Prune '.' and '..' from directory listing. -+ const char * fname = g_file_info_get_name(info); -+ if (fname && fname[0] == '.' && -+ (fname[1] == '\0' || (fname[1] == '.' && fname[2] == '\0'))) -+ { -+ mDirListPtr = mDirListPtr->next; -+ continue; -+ } -+ -+ mDirBuf.Assign("201: "); -+ -+ // The "filename" field -+ nsCString escName; -+ nsCOMPtr nu = do_GetService(NS_NETUTIL_CONTRACTID); -+ if (nu && fname) { -+ nu->EscapeString(nsDependentCString(fname), -+ nsINetUtil::ESCAPE_URL_PATH, escName); -+ -+ mDirBuf.Append(escName); -+ mDirBuf.Append(' '); -+ } -+ -+ // The "content-length" field -+ // XXX truncates size from 64-bit to 32-bit -+ mDirBuf.AppendInt(PRInt32(g_file_info_get_size(info))); -+ mDirBuf.Append(' '); -+ -+ // The "last-modified" field -+ // -+ // NSPR promises: PRTime is compatible with time_t -+ // we just need to convert from seconds to microseconds -+ GTimeVal gtime; -+ g_file_info_get_modification_time(info, >ime); -+ -+ PRExplodedTime tm; -+ PRTime pt = ((PRTime) gtime.tv_sec) * 1000000; -+ PR_ExplodeTime(pt, PR_GMTParameters, &tm); -+ { -+ char buf[64]; -+ PR_FormatTimeUSEnglish(buf, sizeof(buf), -+ "%a,%%20%d%%20%b%%20%Y%%20%H:%M:%S%%20GMT ", &tm); -+ mDirBuf.Append(buf); -+ } -+ -+ // The "file-type" field -+ switch (g_file_info_get_file_type(info)) -+ { -+ case G_FILE_TYPE_REGULAR: -+ mDirBuf.Append("FILE "); -+ break; -+ case G_FILE_TYPE_DIRECTORY: -+ mDirBuf.Append("DIRECTORY "); -+ break; -+ case G_FILE_TYPE_SYMBOLIC_LINK: -+ mDirBuf.Append("SYMBOLIC-LINK "); -+ break; -+ default: -+ break; -+ } -+ mDirBuf.Append('\n'); -+ -+ mDirBufCursor = 0; -+ mDirListPtr = mDirListPtr->next; -+ } -+ } -+ } -+ return rv; -+} -+ -+/** -+ * This class is used to implement SetContentTypeOfChannel. -+ */ -+class nsGIOSetContentTypeEvent : public nsRunnable -+{ -+ public: -+ nsGIOSetContentTypeEvent(nsIChannel *channel, const char *contentType) -+ : mChannel(channel), mContentType(contentType) -+ { -+ // stash channel reference in mChannel. no AddRef here! see note -+ // in SetContentTypeOfchannel. -+ } -+ -+ NS_IMETHOD Run() -+ { -+ mChannel->SetContentType(mContentType); -+ return NS_OK; -+ } -+ -+ private: -+ nsIChannel *mChannel; -+ nsCString mContentType; -+}; -+ -+nsresult -+nsGIOInputStream::SetContentTypeOfChannel(const char *contentType) -+{ -+ // We need to proxy this call over to the main thread. We post an -+ // asynchronous event in this case so that we don't delay reading data, and -+ // we know that this is safe to do since the channel's reference will be -+ // released asynchronously as well. We trust the ordering of the main -+ // thread's event queue to protect us against memory corruption. -+ -+ nsresult rv; -+ nsCOMPtr ev = -+ new nsGIOSetContentTypeEvent(mChannel, contentType); -+ if (!ev) -+ { -+ rv = NS_ERROR_OUT_OF_MEMORY; -+ } -+ else -+ { -+ rv = NS_DispatchToMainThread(ev); -+ } -+ return rv; -+} -+ -+NS_IMPL_THREADSAFE_ISUPPORTS1(nsGIOInputStream, nsIInputStream) -+ -+/** -+ * Free all used memory and close stream. -+ */ -+NS_IMETHODIMP -+nsGIOInputStream::Close() -+{ -+ if (mStream) -+ { -+ g_object_unref(mStream); -+ mStream = nsnull; -+ } -+ -+ if (mHandle) -+ { -+ g_object_unref(mHandle); -+ mHandle = nsnull; -+ } -+ -+ if (mDirList) -+ { -+ // Destroy the list of GIOFileInfo objects... -+ g_list_foreach(mDirList, (GFunc) g_object_unref, nsnull); -+ g_list_free(mDirList); -+ mDirList = nsnull; -+ mDirListPtr = nsnull; -+ } -+ -+ if (mChannel) -+ { -+ nsresult rv = NS_OK; -+ -+ nsCOMPtr thread = do_GetMainThread(); -+ if (thread) -+ rv = NS_ProxyRelease(thread, mChannel); -+ -+ NS_ASSERTION(thread && NS_SUCCEEDED(rv), "leaking channel reference"); -+ mChannel = nsnull; -+ } -+ -+ mSpec.Truncate(); // free memory -+ -+ // Prevent future reads from re-opening the handle. -+ if (NS_SUCCEEDED(mStatus)) -+ mStatus = NS_BASE_STREAM_CLOSED; -+ -+ return NS_OK; -+} -+ -+/** -+ * Return number of remaining bytes available on input -+ * @param aResult remaining bytes -+ */ -+NS_IMETHODIMP -+nsGIOInputStream::Available(PRUint32 *aResult) -+{ -+ if (NS_FAILED(mStatus)) -+ return mStatus; -+ -+ /* When remaining bytes are bigger than max PRUint32 value an aResult must -+ be set to PRUint32 maximum */ -+ if (mBytesRemaining > PR_UINT32_MAX) -+ *aResult = PR_UINT32_MAX; -+ else -+ *aResult = mBytesRemaining; -+ -+ return NS_OK; -+} -+ -+/** -+ * Trying to read from stream. When location is not available it tries to mount it. -+ * @param aBuf buffer to put read data -+ * @param aCount length of aBuf -+ * @param aCountRead number of bytes actually read -+ */ -+NS_IMETHODIMP -+nsGIOInputStream::Read(char *aBuf, -+ PRUint32 aCount, -+ PRUint32 *aCountRead) -+{ -+ *aCountRead = 0; -+ // Check if file is already opened, otherwise open it -+ if (!mStream && !mDirOpen && mStatus == NS_OK) { -+ mStatus = DoOpen(); -+ if (NS_FAILED(mStatus)) { -+ return mStatus; -+ } -+ } -+ -+ mStatus = DoRead(aBuf, aCount, aCountRead); -+ // Check if all data has been read -+ if (mStatus == NS_BASE_STREAM_CLOSED) -+ return NS_OK; -+ -+ // Check whenever any error appears while reading -+ return mStatus; -+} -+ -+NS_IMETHODIMP -+nsGIOInputStream::ReadSegments(nsWriteSegmentFun aWriter, -+ void *aClosure, -+ PRUint32 aCount, -+ PRUint32 *aResult) -+{ -+ // There is no way to implement this using GnomeVFS, but fortunately -+ // that doesn't matter. Because we are a blocking input stream, Necko -+ // isn't going to call our ReadSegments method. -+ NS_NOTREACHED("nsGIOInputStream::ReadSegments"); -+ return NS_ERROR_NOT_IMPLEMENTED; -+} -+ -+NS_IMETHODIMP -+nsGIOInputStream::IsNonBlocking(PRBool *aResult) -+{ -+ *aResult = PR_FALSE; -+ return NS_OK; -+} -+ -+//----------------------------------------------------------------------------- -+ -+/** -+ * Called when finishing mount operation. Result of operation is set in -+ * nsGIOInputStream. This function is called in main thread as an async request -+ * typically from dbus. -+ * @param source_object GFile object which requested the mount -+ * @param res result object -+ * @param user_data pointer to nsGIOInputStream -+ */ -+static void -+mount_enclosing_volume_finished (GObject *source_object, -+ GAsyncResult *res, -+ gpointer user_data) -+{ -+ GError *error = NULL; -+ -+ nsGIOInputStream* istream = static_cast(user_data); -+ -+ g_file_mount_enclosing_volume_finish(G_FILE (source_object), res, &error); -+ -+ if (error) { -+ g_warning("Mount failed: %s %d", error->message, error->code); -+ istream->SetMountResult(MOUNT_OPERATION_FAILED, error->code); -+ g_error_free(error); -+ } else { -+ istream->SetMountResult(MOUNT_OPERATION_SUCCESS, 0); -+ } -+} -+ -+/** -+ * This function is called when username or password are requested from user. -+ * This function is called in main thread as async request from dbus. -+ * @param mount_op mount operation -+ * @param message message to show to user -+ * @param default_user preffered user -+ * @param default_domain domain name -+ * @param flags what type of information is required -+ * @param user_data nsIChannel -+ */ -+static void -+mount_operation_ask_password (GMountOperation *mount_op, -+ const char *message, -+ const char *default_user, -+ const char *default_domain, -+ GAskPasswordFlags flags, -+ gpointer user_data) -+{ -+ nsIChannel *channel = (nsIChannel *) user_data; -+ if (!channel) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // We can't handle request for domain -+ if (flags & G_ASK_PASSWORD_NEED_DOMAIN) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ -+ nsCOMPtr prompt; -+ NS_QueryNotificationCallbacks(channel, prompt); -+ -+ // If no auth prompt, then give up. We could failover to using the -+ // WindowWatcher service, but that might defeat a consumer's purposeful -+ // attempt to disable authentication (for whatever reason). -+ if (!prompt) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // Parse out the host and port... -+ nsCOMPtr uri; -+ channel->GetURI(getter_AddRefs(uri)); -+ if (!uri) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ -+ nsCAutoString scheme, hostPort; -+ uri->GetScheme(scheme); -+ uri->GetHostPort(hostPort); -+ -+ // It doesn't make sense for either of these strings to be empty. What kind -+ // of funky URI is this? -+ if (scheme.IsEmpty() || hostPort.IsEmpty()) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // Construct the single signon key. Altering the value of this key will -+ // cause people's remembered passwords to be forgotten. Think carefully -+ // before changing the way this key is constructed. -+ nsAutoString key, realm; -+ -+ NS_ConvertUTF8toUTF16 dispHost(scheme); -+ dispHost.Append(NS_LITERAL_STRING("://")); -+ dispHost.Append(NS_ConvertUTF8toUTF16(hostPort)); -+ -+ key = dispHost; -+ if (*default_domain != '\0') -+ { -+ // We assume the realm string is ASCII. That might be a bogus assumption, -+ // but we have no idea what encoding GnomeVFS is using, so for now we'll -+ // limit ourselves to ISO-Latin-1. XXX What is a better solution? -+ realm.Append('"'); -+ realm.Append(NS_ConvertASCIItoUTF16(default_domain)); -+ realm.Append('"'); -+ key.Append(' '); -+ key.Append(realm); -+ } -+ // Construct the message string... -+ // -+ // We use Necko's string bundle here. This code really should be encapsulated -+ // behind some Necko API, after all this code is based closely on the code in -+ // nsHttpChannel.cpp. -+ nsCOMPtr bundleSvc = -+ do_GetService(NS_STRINGBUNDLE_CONTRACTID); -+ if (!bundleSvc) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ nsCOMPtr bundle; -+ bundleSvc->CreateBundle("chrome://global/locale/commonDialogs.properties", -+ getter_AddRefs(bundle)); -+ if (!bundle) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ nsAutoString nsmessage; -+ -+ if (flags & G_ASK_PASSWORD_NEED_PASSWORD) { -+ if (flags & G_ASK_PASSWORD_NEED_USERNAME) { -+ if (!realm.IsEmpty()) { -+ const PRUnichar *strings[] = { realm.get(), dispHost.get() }; -+ bundle->FormatStringFromName(NS_LITERAL_STRING("EnterLoginForRealm").get(), -+ strings, 2, getter_Copies(nsmessage)); -+ } else { -+ const PRUnichar *strings[] = { dispHost.get() }; -+ bundle->FormatStringFromName(NS_LITERAL_STRING("EnterUserPasswordFor").get(), -+ strings, 1, getter_Copies(nsmessage)); -+ } -+ } else { -+ NS_ConvertUTF8toUTF16 userName(default_user); -+ const PRUnichar *strings[] = { userName.get(), dispHost.get() }; -+ bundle->FormatStringFromName(NS_LITERAL_STRING("EnterPasswordFor").get(), -+ strings, 2, getter_Copies(nsmessage)); -+ } -+ } else { -+ g_warning("Unknown mount operation request (flags: %x)", flags); -+ } -+ -+ if (nsmessage.IsEmpty()) { -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ // Prompt the user... -+ nsresult rv; -+ PRBool retval = PR_FALSE; -+ PRUnichar *user = nsnull, *pass = nsnull; -+ if (default_user) { -+ // user will be freed by PromptUsernameAndPassword -+ user = ToNewUnicode(NS_ConvertUTF8toUTF16(default_user)); -+ } -+ if (flags & G_ASK_PASSWORD_NEED_USERNAME) { -+ rv = prompt->PromptUsernameAndPassword(nsnull, nsmessage.get(), -+ key.get(), -+ nsIAuthPrompt::SAVE_PASSWORD_PERMANENTLY, -+ &user, &pass, &retval); -+ } else { -+ rv = prompt->PromptPassword(nsnull, nsmessage.get(), -+ key.get(), -+ nsIAuthPrompt::SAVE_PASSWORD_PERMANENTLY, -+ &pass, &retval); -+ } -+ if (NS_FAILED(rv) || !retval) { // was || user == '\0' || pass == '\0' -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_ABORTED); -+ return; -+ } -+ /* GIO should accept UTF8 */ -+ g_mount_operation_set_username(mount_op, NS_ConvertUTF16toUTF8(user).get()); -+ g_mount_operation_set_password(mount_op, NS_ConvertUTF16toUTF8(pass).get()); -+ nsMemory::Free(user); -+ nsMemory::Free(pass); -+ g_mount_operation_reply(mount_op, G_MOUNT_OPERATION_HANDLED); -+} -+ -+//----------------------------------------------------------------------------- -+ -+class nsGIOProtocolHandler : public nsIProtocolHandler -+ , public nsIObserver -+{ -+ public: -+ NS_DECL_ISUPPORTS -+ NS_DECL_NSIPROTOCOLHANDLER -+ NS_DECL_NSIOBSERVER -+ -+ nsresult Init(); -+ -+ private: -+ void InitSupportedProtocolsPref(nsIPrefBranch *prefs); -+ PRBool IsSupportedProtocol(const nsCString &spec); -+ -+ nsCString mSupportedProtocols; -+}; -+ -+NS_IMPL_ISUPPORTS2(nsGIOProtocolHandler, nsIProtocolHandler, nsIObserver) -+ -+nsresult -+nsGIOProtocolHandler::Init() -+{ -+#ifdef PR_LOGGING -+ sGIOLog = PR_NewLogModule("gio"); -+#endif -+ -+ nsCOMPtr prefs = do_GetService(NS_PREFSERVICE_CONTRACTID); -+ if (prefs) -+ { -+ InitSupportedProtocolsPref(prefs); -+ prefs->AddObserver(MOZ_GIO_SUPPORTED_PROTOCOLS, this, PR_FALSE); -+ } -+ -+ return NS_OK; -+} -+ -+void -+nsGIOProtocolHandler::InitSupportedProtocolsPref(nsIPrefBranch *prefs) -+{ -+ // Get user preferences to determine which protocol is supported. -+ // Gvfs/GIO has a set of supported protocols like obex, network, archive, -+ // computer, dav, cdda, gphoto2, trash, etc. Some of these seems to be -+ // irrelevant to process by browser. By default accept only smb and sftp -+ // protocols so far. -+ nsresult rv = prefs->GetCharPref(MOZ_GIO_SUPPORTED_PROTOCOLS, -+ getter_Copies(mSupportedProtocols)); -+ if (NS_SUCCEEDED(rv)) { -+ mSupportedProtocols.StripWhitespace(); -+ ToLowerCase(mSupportedProtocols); -+ } -+ else -+ mSupportedProtocols.Assign("smb:,sftp:"); // use defaults -+ -+ LOG(("gio: supported protocols \"%s\"\n", mSupportedProtocols.get())); -+} -+ -+PRBool -+nsGIOProtocolHandler::IsSupportedProtocol(const nsCString &aSpec) -+{ -+ const char *specString = aSpec.get(); -+ const char *colon = strchr(specString, ':'); -+ if (!colon) -+ return PR_FALSE; -+ -+ PRUint32 length = colon - specString + 1; -+ -+ // + ':' -+ nsCString scheme(specString, length); -+ -+ char *found = PL_strcasestr(mSupportedProtocols.get(), scheme.get()); -+ if (!found) -+ return PR_FALSE; -+ -+ if (found[length] != ',' && found[length] != '\0') -+ return PR_FALSE; -+ -+ return PR_TRUE; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::GetScheme(nsACString &aScheme) -+{ -+ aScheme.Assign(MOZ_GIO_SCHEME); -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::GetDefaultPort(PRInt32 *aDefaultPort) -+{ -+ *aDefaultPort = -1; -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::GetProtocolFlags(PRUint32 *aProtocolFlags) -+{ -+ // Is URI_STD true of all GnomeVFS URI types? -+ *aProtocolFlags = URI_STD | URI_DANGEROUS_TO_LOAD; -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::NewURI(const nsACString &aSpec, -+ const char *aOriginCharset, -+ nsIURI *aBaseURI, -+ nsIURI **aResult) -+{ -+ const nsCString flatSpec(aSpec); -+ LOG(("gio: NewURI [spec=%s]\n", flatSpec.get())); -+ -+ if (!aBaseURI) -+ { -+ // XXX Is it good to support all GIO protocols? -+ if (!IsSupportedProtocol(flatSpec)) -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ -+ PRInt32 colon_location = flatSpec.FindChar(':'); -+ if (colon_location <= 0) -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ -+ // Verify that GIO supports this URI scheme. -+ PRBool uri_scheme_supported = PR_FALSE; -+ -+ GVfs *gvfs = g_vfs_get_default(); -+ -+ if (!gvfs) { -+ g_warning("Cannot get GVfs object."); -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ } -+ -+ const gchar* const * uri_schemes = g_vfs_get_supported_uri_schemes(gvfs); -+ -+ while (*uri_schemes != NULL) { -+ // While flatSpec ends with ':' the uri_scheme does not. Therefore do not -+ // compare last character. -+ if (StringHead(flatSpec, colon_location).Equals(*uri_schemes)) { -+ uri_scheme_supported = PR_TRUE; -+ break; -+ } -+ uri_schemes++; -+ } -+ -+ if (!uri_scheme_supported) { -+ return NS_ERROR_UNKNOWN_PROTOCOL; -+ } -+ } -+ -+ nsresult rv; -+ nsCOMPtr url = -+ do_CreateInstance(NS_STANDARDURL_CONTRACTID, &rv); -+ if (NS_FAILED(rv)) -+ return rv; -+ -+ rv = url->Init(nsIStandardURL::URLTYPE_STANDARD, -1, flatSpec, -+ aOriginCharset, aBaseURI); -+ if (NS_SUCCEEDED(rv)) -+ rv = CallQueryInterface(url, aResult); -+ return rv; -+ -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::NewChannel(nsIURI *aURI, nsIChannel **aResult) -+{ -+ NS_ENSURE_ARG_POINTER(aURI); -+ nsresult rv; -+ -+ nsCAutoString spec; -+ rv = aURI->GetSpec(spec); -+ if (NS_FAILED(rv)) -+ return rv; -+ -+ nsRefPtr stream = new nsGIOInputStream(spec); -+ if (!stream) -+ { -+ rv = NS_ERROR_OUT_OF_MEMORY; -+ } -+ else -+ { -+ // start out assuming an unknown content-type. we'll set the content-type -+ // to something better once we open the URI. -+ rv = NS_NewInputStreamChannel(aResult, -+ aURI, -+ stream, -+ NS_LITERAL_CSTRING(UNKNOWN_CONTENT_TYPE)); -+ if (NS_SUCCEEDED(rv)) -+ stream->SetChannel(*aResult); -+ } -+ return rv; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::AllowPort(PRInt32 aPort, -+ const char *aScheme, -+ PRBool *aResult) -+{ -+ // Don't override anything. -+ *aResult = PR_FALSE; -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsGIOProtocolHandler::Observe(nsISupports *aSubject, -+ const char *aTopic, -+ const PRUnichar *aData) -+{ -+ if (strcmp(aTopic, NS_PREFBRANCH_PREFCHANGE_TOPIC_ID) == 0) { -+ nsCOMPtr prefs = do_QueryInterface(aSubject); -+ InitSupportedProtocolsPref(prefs); -+ } -+ return NS_OK; -+} -+ -+//----------------------------------------------------------------------------- -+ -+#define NS_GIOPROTOCOLHANDLER_CID \ -+{ /* ee706783-3af8-4d19-9e84-e2ebfe213480 */ \ -+ 0xee706783, \ -+ 0x3af8, \ -+ 0x4d19, \ -+ {0x9e, 0x84, 0xe2, 0xeb, 0xfe, 0x21, 0x34, 0x80} \ -+} -+ -+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGIOProtocolHandler, Init) -+NS_DEFINE_NAMED_CID(NS_GIOPROTOCOLHANDLER_CID); -+ -+static const mozilla::Module::CIDEntry kVFSCIDs[] = { -+ { &kNS_GIOPROTOCOLHANDLER_CID, false, NULL, nsGIOProtocolHandlerConstructor }, -+ { NULL } -+}; -+ -+static const mozilla::Module::ContractIDEntry kVFSContracts[] = { -+ { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX MOZ_GIO_SCHEME, &kNS_GIOPROTOCOLHANDLER_CID }, -+ { NULL } -+}; -+ -+static const mozilla::Module kVFSModule = { -+ mozilla::Module::kVersion, -+ kVFSCIDs, -+ kVFSContracts -+}; -+ -+NSMODULE_DEFN(nsGIOModule) = &kVFSModule; -diff -r 49a1b2aa43c5 netwerk/base/src/nsIOService.cpp ---- a/netwerk/base/src/nsIOService.cpp Tue Dec 21 12:42:59 2010 +0100 -+++ b/netwerk/base/src/nsIOService.cpp Tue Jan 11 11:17:52 2011 +0100 -@@ -454,6 +454,27 @@ - } - - #ifdef MOZ_X11 -+ // check to see whether GVFS can handle this URI scheme. if it can -+ // create a nsIURI for the "scheme:", then we assume it has support for -+ // the requested protocol. otherwise, we failover to using the default -+ // protocol handler. -+ -+ rv = CallGetService(NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX"moz-gio", -+ result); -+ if (NS_SUCCEEDED(rv)) { -+ nsCAutoString spec(scheme); -+ spec.Append(':'); -+ -+ nsIURI *uri; -+ rv = (*result)->NewURI(spec, nsnull, nsnull, &uri); -+ if (NS_SUCCEEDED(rv)) { -+ NS_RELEASE(uri); -+ return rv; -+ } -+ -+ NS_RELEASE(*result); -+ } -+ - // check to see whether GnomeVFS can handle this URI scheme. if it can - // create a nsIURI for the "scheme:", then we assume it has support for - // the requested protocol. otherwise, we failover to using the default diff --git a/staging/xulrunner/xulrunner-omnijar.patch b/staging/xulrunner/xulrunner-omnijar.patch deleted file mode 100644 index 66ec5206c..000000000 --- a/staging/xulrunner/xulrunner-omnijar.patch +++ /dev/null @@ -1,1737 +0,0 @@ -# HG changeset patch -# Parent a7dea879b4b445a23186f438900562155bb39e99 -Bug 620931 part 1 - Use chrome manifest to register resource://gre-resources/ - -diff --git a/layout/style/jar.mn b/layout/style/jar.mn ---- a/layout/style/jar.mn -+++ b/layout/style/jar.mn -@@ -1,8 +1,10 @@ - toolkit.jar: - * res/ua.css (ua.css) - res/html.css (html.css) - res/quirk.css (quirk.css) - res/viewsource.css (viewsource.css) - * res/forms.css (forms.css) - res/arrow.gif (arrow.gif) - res/arrowd.gif (arrowd.gif) -+ -+% resource gre-resources %res/ -diff --git a/netwerk/protocol/res/nsResProtocolHandler.cpp b/netwerk/protocol/res/nsResProtocolHandler.cpp ---- a/netwerk/protocol/res/nsResProtocolHandler.cpp -+++ b/netwerk/protocol/res/nsResProtocolHandler.cpp -@@ -75,17 +75,16 @@ static nsResProtocolHandler *gResHandler - // - // this enables PR_LOG_ALWAYS level information and places all output in - // the file log.txt - // - static PRLogModuleInfo *gResLog; - #endif - - #define kGRE NS_LITERAL_CSTRING("gre") --#define kGRE_RESOURCES NS_LITERAL_CSTRING("gre-resources") - - //---------------------------------------------------------------------------- - // nsResURL : overrides nsStandardURL::GetFile to provide nsIFile resolution - //---------------------------------------------------------------------------- - - nsresult - nsResURL::EnsureFile() - { -@@ -197,28 +196,16 @@ nsResProtocolHandler::Init() - NS_ENSURE_SUCCESS(rv, rv); - - // - // make resource://gre/ point to the GRE directory - // - rv = AddSpecialDir(NS_GRE_DIR, kGRE); - NS_ENSURE_SUCCESS(rv, rv); - -- // make resource://gre-resources/ point to gre toolkit[.jar]/res -- nsCOMPtr greURI; -- nsCOMPtr greResURI; -- GetSubstitution(kGRE, getter_AddRefs(greURI)); --#ifdef MOZ_CHROME_FILE_FORMAT_JAR -- NS_NAMED_LITERAL_CSTRING(strGRE_RES_URL, "jar:chrome/toolkit.jar!/res/"); --#else -- NS_NAMED_LITERAL_CSTRING(strGRE_RES_URL, "chrome/toolkit/res/"); --#endif -- rv = mIOService->NewURI(strGRE_RES_URL, nsnull, greURI, -- getter_AddRefs(greResURI)); -- SetSubstitution(kGRE_RESOURCES, greResURI); - //XXXbsmedberg Neil wants a resource://pchrome/ for the profile chrome dir... - // but once I finish multiple chrome registration I'm not sure that it is needed - - // XXX dveditz: resource://pchrome/ defeats profile directory salting - // if web content can load it. Tread carefully. - - return rv; - } -@@ -242,22 +229,16 @@ nsResProtocolHandler::Init(nsIFile *aOmn - // these entries should be kept in sync with the normal Init function - - // resource:/// points to jar:omni.jar!/ - SetSubstitution(EmptyCString(), uri); - - // resource://gre/ points to jar:omni.jar!/ - SetSubstitution(kGRE, uri); - -- urlStr += "chrome/toolkit/res/"; -- rv = mIOService->NewURI(urlStr, nsnull, nsnull, getter_AddRefs(uri)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- // resource://gre-resources/ points to jar:omni.jar!/chrome/toolkit/res/ -- SetSubstitution(kGRE_RESOURCES, uri); - return NS_OK; - } - #endif - - #ifdef MOZ_IPC - static PLDHashOperator - EnumerateSubstitution(const nsACString& aKey, - nsIURI* aURI, -# HG changeset patch -# Parent 3038cccba1a071d6b418e15442d0f2d9f3dcb11d -Bug 620931 part 2 - When building --with-libxul-sdk, use the right preferences directory - -diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in ---- a/browser/locales/Makefile.in -+++ b/browser/locales/Makefile.in -@@ -183,17 +183,17 @@ install:: $(addsuffix .xml,$(SEARCH_PLUG - $(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/searchplugins - - - libs-%: - $(NSINSTALL) -D $(DIST)/install - @$(MAKE) -C ../../toolkit/locales libs-$* BOTH_MANIFESTS=1 - @$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 - @$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 -- @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref BOTH_MANIFESTS=1 -+ @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR) BOTH_MANIFESTS=1 - @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 - - - repackage-win32-installer: WIN32_INSTALLER_OUT="$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe" - repackage-win32-installer: $(WIN32_INSTALLER_IN) $(SUBMAKEFILES) - @echo "Repackaging $(WIN32_INSTALLER_IN) into $(WIN32_INSTALLER_OUT)." - $(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY) export - $(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen l10ngen/setup.exe l10ngen/7zSD.sfx -diff --git a/toolkit/mozapps/installer/packager.mk b/toolkit/mozapps/installer/packager.mk ---- a/toolkit/mozapps/installer/packager.mk -+++ b/toolkit/mozapps/installer/packager.mk -@@ -307,17 +307,17 @@ OMNIJAR_FILES = \ - res \ - defaults \ - greprefs.js \ - jsloader \ - $(NULL) - - NON_OMNIJAR_FILES += \ - chrome/icons/\* \ -- defaults/pref/channel-prefs.js \ -+ $(PREF_DIR)/channel-prefs.js \ - res/cursors/\* \ - res/MainMenu.nib/\* \ - $(NULL) - - PACK_OMNIJAR = \ - rm -f omni.jar components/binary.manifest && \ - grep -h '^binary-component' components/*.manifest > binary.manifest ; \ - sed -e 's/^binary-component/\#binary-component/' components/components.manifest > components.manifest && \ -# HG changeset patch -# Parent cd8df8030f7ad7530692bd7c4391a8009df56a02 -Bug 620931 part 3 - Allow GRE and XUL application to use omni.jar independently - -We now store two independent locations for an omni.jar, allowing GRE/XRE and -XUL application to each have their own omni.jar. And since xulrunner setups -are very independent from the XUL applications, we implement support for both -omni.jar and non omni.jar cases in the same runtime, with the side effect of -allowing to switch from one to the other manually without rebuilding the -binaries. - -We let the mozilla::Omnijar API handle both cases, so that callers don't need -too much work to support them. - -We also make the preferences service load the same set of preferences in all -the various cases (unified vs. separate, omni.jar vs. no omni.jar). - -The child process launcher for IPC is modified to pass the base directories -needed for the mozilla::Omnijar API initialization in the child process. - -Finally, the startupcache file name canonicalization is modified to separate -APP and GRE resources. - -diff --git a/ipc/glue/GeckoChildProcessHost.cpp b/ipc/glue/GeckoChildProcessHost.cpp ---- a/ipc/glue/GeckoChildProcessHost.cpp -+++ b/ipc/glue/GeckoChildProcessHost.cpp -@@ -440,26 +440,29 @@ GeckoChildProcessHost::PerformAsyncLaunc - // other end of the socketpair() from us - - std::vector childArgv; - - childArgv.push_back(exePath.value()); - - childArgv.insert(childArgv.end(), aExtraOpts.begin(), aExtraOpts.end()); - --#ifdef MOZ_OMNIJAR - // Make sure the child process can find the omnijar - // See XRE_InitCommandLine in nsAppRunner.cpp -- nsCAutoString omnijarPath; -- if (mozilla::OmnijarPath()) { -- mozilla::OmnijarPath()->GetNativePath(omnijarPath); -- childArgv.push_back("-omnijar"); -- childArgv.push_back(omnijarPath.get()); -+ nsCAutoString path; -+ nsCOMPtr file = mozilla::Omnijar::GetBase(mozilla::Omnijar::GRE); -+ if (file && NS_SUCCEEDED(file->GetNativePath(path))) { -+ childArgv.push_back("-grebase"); -+ childArgv.push_back(path.get()); - } --#endif -+ file = mozilla::Omnijar::GetBase(mozilla::Omnijar::APP); -+ if (file && NS_SUCCEEDED(file->GetNativePath(path))) { -+ childArgv.push_back("-appbase"); -+ childArgv.push_back(path.get()); -+ } - - childArgv.push_back(pidstring); - - #if defined(MOZ_CRASHREPORTER) - # if defined(OS_LINUX) - int childCrashFd, childCrashRemapFd; - if (!CrashReporter::CreateNotificationPipeForChild( - &childCrashFd, &childCrashRemapFd)) -@@ -552,26 +555,29 @@ GeckoChildProcessHost::PerformAsyncLaunc - for (std::vector::iterator it = aExtraOpts.begin(); - it != aExtraOpts.end(); - ++it) { - cmdLine.AppendLooseValue(UTF8ToWide(*it)); - } - - cmdLine.AppendLooseValue(std::wstring(mGroupId.get())); - --#ifdef MOZ_OMNIJAR - // Make sure the child process can find the omnijar - // See XRE_InitCommandLine in nsAppRunner.cpp -- nsAutoString omnijarPath; -- if (mozilla::OmnijarPath()) { -- mozilla::OmnijarPath()->GetPath(omnijarPath); -- cmdLine.AppendLooseValue(UTF8ToWide("-omnijar")); -- cmdLine.AppendLooseValue(omnijarPath.get()); -+ nsAutoString path; -+ nsCOMPtr file = mozilla::Omnijar::GetBase(mozilla::Omnijar::GRE); -+ if (file && NS_SUCCEEDED(file->GetPath(path))) { -+ cmdLine.AppendLooseValue(UTF8ToWide("-grebase")); -+ cmdLine.AppendLooseValue(path.get()); - } --#endif -+ file = mozilla::Omnijar::GetBase(mozilla::Omnijar::APP); -+ if (file && NS_SUCCEEDED(file->GetPath(path))) { -+ cmdLine.AppendLooseValue(UTF8ToWide("-appbase")); -+ cmdLine.AppendLooseValue(path.get()); -+ } - - cmdLine.AppendLooseValue(UTF8ToWide(pidstring)); - - #if defined(MOZ_CRASHREPORTER) - cmdLine.AppendLooseValue( - UTF8ToWide(CrashReporter::GetChildNotificationPipe())); - #endif - -diff --git a/js/src/xpconnect/loader/mozJSComponentLoader.cpp b/js/src/xpconnect/loader/mozJSComponentLoader.cpp ---- a/js/src/xpconnect/loader/mozJSComponentLoader.cpp -+++ b/js/src/xpconnect/loader/mozJSComponentLoader.cpp -@@ -81,16 +81,17 @@ - #include "nsIConsoleService.h" - #include "nsIStorageStream.h" - #include "nsIStringStream.h" - #include "prmem.h" - #if defined(XP_WIN) - #include "nsILocalFileWin.h" - #endif - #include "xpcprivate.h" -+#include "nsIResProtocolHandler.h" - - #ifdef MOZ_ENABLE_LIBXUL - #include "mozilla/scache/StartupCache.h" - #include "mozilla/scache/StartupCacheUtils.h" - #endif - #include "mozilla/Omnijar.h" - - #include "jsdbgapi.h" -@@ -621,34 +622,21 @@ mozJSComponentLoader::LoadModule(nsILoca - - const mozilla::Module* - mozJSComponentLoader::LoadModuleFromJAR(nsILocalFile *aJarFile, - const nsACString &aComponentPath) - { - #if !defined(XPCONNECT_STANDALONE) - nsresult rv; - -- nsCAutoString fullSpec; -- --#ifdef MOZ_OMNIJAR -- PRBool equal; -- rv = aJarFile->Equals(mozilla::OmnijarPath(), &equal); -- if (NS_SUCCEEDED(rv) && equal) { -- fullSpec = "resource://gre/"; -- } else { --#endif -- nsCAutoString fileSpec; -- NS_GetURLSpecFromActualFile(aJarFile, fileSpec); -- fullSpec = "jar:"; -- fullSpec += fileSpec; -- fullSpec += "!/"; --#ifdef MOZ_OMNIJAR -- } --#endif -- -+ nsCAutoString fullSpec, fileSpec; -+ NS_GetURLSpecFromActualFile(aJarFile, fileSpec); -+ fullSpec = "jar:"; -+ fullSpec += fileSpec; -+ fullSpec += "!/"; - fullSpec += aComponentPath; - - nsCOMPtr uri; - rv = NS_NewURI(getter_AddRefs(uri), fullSpec); - if (NS_FAILED(rv)) - return NULL; - - nsAutoString hashstring; -@@ -833,57 +821,138 @@ class JSScriptHolder - JSScriptHolder(JSContext *cx, JSScript *script) - : mCx(cx), mScript(script) {} - ~JSScriptHolder() { ::JS_DestroyScript(mCx, mScript); } - private: - JSContext *mCx; - JSScript *mScript; - }; - -+static const char baseName[2][5] = { "gre/", "app/" }; -+ -+static inline PRBool -+canonicalizeBase(nsCAutoString &spec, nsACString &out, mozilla::Omnijar::Type aType) -+{ -+ nsCAutoString base; -+ nsresult rv = mozilla::Omnijar::GetURIString(aType, base); -+ -+ if (NS_FAILED(rv) || !base.Length()) -+ return PR_FALSE; -+ -+ if (base.Compare(spec.get(), PR_FALSE, base.Length())) -+ return PR_FALSE; -+ -+ out.Append("/resource/"); -+ out.Append(baseName[aType]); -+ out.Append(Substring(spec, base.Length())); -+ return PR_TRUE; -+} - /** - * PathifyURI transforms mozilla .js uris into useful zip paths - * to make it makes it easier to manipulate startup cache entries - * using standard zip tools. - * Transformations applied: -- * * jsloader/ prefix is used to group mozJSComponentLoader cache entries in -+ * * jsloader/ prefix is used to group mozJSComponentLoader cache entries in - * a top-level zip directory. -- * * In MOZ_OMNIJAR case resource:/// and resource://gre/ URIs refer to the same path -- * so treat both of them as resource://gre/ -+ * * resource:// URIs are resolved to their corresponding file/jar URI to -+ * canonicalize resources URIs other than gre and app. -+ * * Paths under GRE or APP directory have their base path replaced with -+ * resource/gre or resource/app to avoid depending on install location. -+ * * jar:file:///path/to/file.jar!/sub/path urls are replaced with -+ * /path/to/file.jar/sub/path - * * .bin suffix is added to the end of the path to indicate that jsloader/ entries - * are binary representations of JS source. - * For example: -- * resource://gre/modules/XPCOMUtils.jsm becomes -- * jsloader/resource/gre/modules/XPCOMUtils.jsm.bin -+ * resource://gre/modules/XPCOMUtils.jsm or -+ * file://$GRE_DIR/modules/XPCOMUtils.jsm or -+ * jar:file://$GRE_DIR/omni.jar!/modules/XPCOMUtils.jsm become -+ * jsloader/resource/gre/modules/XPCOMUtils.jsm.bin -+ * file://$PROFILE_DIR/extensions/{uuid}/components/component.js becomes -+ * jsloader/$PROFILE_DIR/extensions/%7Buuid%7D/components/component.js.bin -+ * jar:file://$PROFILE_DIR/extensions/some.xpi!/components/component.js becomes -+ * jsloader/$PROFILE_DIR/extensions/some.xpi/components/component.js.bin - */ - static nsresult - PathifyURI(nsIURI *in, nsACString &out) - { -- out = "jsloader/"; -- nsCAutoString scheme; -- nsresult rv = in->GetScheme(scheme); -- NS_ENSURE_SUCCESS(rv, rv); -- out.Append(scheme); -- nsCAutoString host; -- // OK for GetHost to fail since it's not implemented sometimes -- in->GetHost(host); --#ifdef MOZ_OMNIJAR -- if (scheme.Equals("resource") && host.Length() == 0){ -- host = "gre"; -- } --#endif -- if (host.Length()) { -- out.Append("/"); -- out.Append(host); -- } -- nsCAutoString path; -- rv = in->GetPath(path); -- NS_ENSURE_SUCCESS(rv, rv); -- out.Append(path); -- out.Append(".bin"); -- return NS_OK; -+ PRBool equals; -+ nsresult rv; -+ nsCOMPtr uri = in; -+ nsCAutoString spec; -+ -+ out = "jsloader"; -+ -+ // Resolve resource:// URIs. At the end of this if/else block, we -+ // have both spec and uri variables identifying the same URI. -+ if (NS_SUCCEEDED(in->SchemeIs("resource", &equals)) && equals) { -+ nsCOMPtr ioService = do_GetIOService(&rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr ph; -+ rv = ioService->GetProtocolHandler("resource", getter_AddRefs(ph)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr irph(do_QueryInterface(ph, &rv)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = irph->ResolveURI(in, spec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = ioService->NewURI(spec, nsnull, nsnull, getter_AddRefs(uri)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } else { -+ rv = in->GetSpec(spec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } -+ -+ if (!canonicalizeBase(spec, out, mozilla::Omnijar::GRE) && -+ !canonicalizeBase(spec, out, mozilla::Omnijar::APP)) { -+ if (NS_SUCCEEDED(uri->SchemeIs("file", &equals)) && equals) { -+ nsCOMPtr baseFileURL; -+ baseFileURL = do_QueryInterface(uri, &rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCAutoString path; -+ rv = baseFileURL->GetPath(path); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ out.Append(path); -+ } else if (NS_SUCCEEDED(uri->SchemeIs("jar", &equals)) && equals) { -+ nsCOMPtr jarURI = do_QueryInterface(uri, &rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr jarFileURI; -+ rv = jarURI->GetJARFile(getter_AddRefs(jarFileURI)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCOMPtr jarFileURL; -+ jarFileURL = do_QueryInterface(jarFileURI, &rv); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ nsCAutoString path; -+ rv = jarFileURL->GetPath(path); -+ NS_ENSURE_SUCCESS(rv, rv); -+ out.Append(path); -+ -+ rv = jarURI->GetJAREntry(path); -+ NS_ENSURE_SUCCESS(rv, rv); -+ out.Append("/"); -+ out.Append(path); -+ } else { // Very unlikely -+ nsCAutoString spec; -+ rv = uri->GetSpec(spec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ out.Append("/"); -+ out.Append(spec); -+ } -+ } -+ -+ out.Append(".bin"); -+ return NS_OK; - } - - /* static */ - #ifdef MOZ_ENABLE_LIBXUL - nsresult - mozJSComponentLoader::ReadScript(StartupCache* cache, nsIURI *uri, - JSContext *cx, JSScript **script) - { -diff --git a/modules/libjar/nsJAR.cpp b/modules/libjar/nsJAR.cpp ---- a/modules/libjar/nsJAR.cpp -+++ b/modules/libjar/nsJAR.cpp -@@ -171,26 +171,23 @@ nsJAR::Open(nsIFile* zipFile) - if (mLock) return NS_ERROR_FAILURE; // Already open! - - mZipFile = zipFile; - mOuterZipEntry.Truncate(); - - mLock = PR_NewLock(); - NS_ENSURE_TRUE(mLock, NS_ERROR_OUT_OF_MEMORY); - --#ifdef MOZ_OMNIJAR - // The omnijar is special, it is opened early on and closed late - // this avoids reopening it -- PRBool equals; -- nsresult rv = zipFile->Equals(mozilla::OmnijarPath(), &equals); -- if (NS_SUCCEEDED(rv) && equals) { -- mZip = mozilla::OmnijarReader(); -+ nsZipArchive *zip = mozilla::Omnijar::GetReader(zipFile); -+ if (zip) { -+ mZip = zip; - return NS_OK; - } --#endif - return mZip->OpenArchive(zipFile); - } - - NS_IMETHODIMP - nsJAR::OpenInner(nsIZipReader *aZipReader, const char *aZipEntry) - { - NS_ENSURE_ARG_POINTER(aZipReader); - NS_ENSURE_ARG_POINTER(aZipEntry); -@@ -234,23 +231,22 @@ nsJAR::Close() - mLock = nsnull; - } - - mParsedManifest = PR_FALSE; - mManifestData.Reset(); - mGlobalStatus = JAR_MANIFEST_NOT_PARSED; - mTotalItemsInManifest = 0; - --#ifdef MOZ_OMNIJAR -- if (mZip == mozilla::OmnijarReader()) { -+ if ((mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE)) || -+ (mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::APP))) { - mZip.forget(); - mZip = new nsZipArchive(); - return NS_OK; - } --#endif - return mZip->CloseArchive(); - } - - NS_IMETHODIMP - nsJAR::Test(const char *aEntryName) - { - return mZip->Test(aEntryName); - } -@@ -391,22 +387,21 @@ nsJAR::GetInputStreamWithSpec(const nsAC - NS_IMETHODIMP - nsJAR::GetCertificatePrincipal(const char* aFilename, nsIPrincipal** aPrincipal) - { - //-- Parameter check - if (!aPrincipal) - return NS_ERROR_NULL_POINTER; - *aPrincipal = nsnull; - --#ifdef MOZ_OMNIJAR - // Don't check signatures in the omnijar - this is only - // interesting for extensions/XPIs. -- if (mZip == mozilla::OmnijarReader()) -+ if ((mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE)) || -+ (mZip == mozilla::Omnijar::GetReader(mozilla::Omnijar::APP))) - return NS_OK; --#endif - - //-- Parse the manifest - nsresult rv = ParseManifest(); - if (NS_FAILED(rv)) return rv; - if (mGlobalStatus == JAR_NO_MANIFEST) - return NS_OK; - - PRInt16 requestedStatus; -diff --git a/modules/libpref/src/nsPrefService.cpp b/modules/libpref/src/nsPrefService.cpp ---- a/modules/libpref/src/nsPrefService.cpp -+++ b/modules/libpref/src/nsPrefService.cpp -@@ -67,20 +67,18 @@ - - #include "prefapi.h" - #include "prefread.h" - #include "prefapi_private_data.h" - #include "PrefTuple.h" - - #include "nsITimelineService.h" - --#ifdef MOZ_OMNIJAR - #include "mozilla/Omnijar.h" - #include "nsZipArchive.h" --#endif - - // Definitions - #define INITIAL_PREF_FILES 10 - static NS_DEFINE_CID(kZipReaderCID, NS_ZIPREADER_CID); - - // Prototypes - static nsresult openPrefFile(nsIFile* aFile); - static nsresult pref_InitInitialObjects(void); -@@ -793,124 +791,144 @@ static nsresult pref_LoadPrefsInDirList( - pref_LoadPrefsInDir(dir, nsnull, 0); - } - } - } - } - return NS_OK; - } - --//---------------------------------------------------------------------------------------- --// Initialize default preference JavaScript buffers from --// appropriate TEXT resources --//---------------------------------------------------------------------------------------- --static nsresult pref_InitDefaults() --{ -- nsCOMPtr greprefsFile; -- nsresult rv; -- -- rv = NS_GetSpecialDirectory(NS_GRE_DIR, getter_AddRefs(greprefsFile)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- rv = greprefsFile->AppendNative(NS_LITERAL_CSTRING("greprefs.js")); -- NS_ENSURE_SUCCESS(rv, rv); -- -- rv = openPrefFile(greprefsFile); -- if (NS_FAILED(rv)) { -- NS_WARNING("Error parsing GRE default preferences. Is this an old-style embedding app?"); -- } -- -- return NS_OK; --} -- --#ifdef MOZ_OMNIJAR - static nsresult pref_ReadPrefFromJar(nsZipArchive* jarReader, const char *name) - { - nsZipItemPtr manifest(jarReader, name, true); - NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE); - - PrefParseState ps; - PREF_InitParseState(&ps, PREF_ReaderCallback, NULL); - nsresult rv = PREF_ParseBuf(&ps, manifest, manifest.Length()); - PREF_FinalizeParseState(&ps); - - return rv; - } - --static nsresult pref_InitAppDefaultsFromOmnijar() --{ -- nsresult rv; -- -- nsZipArchive* jarReader = mozilla::OmnijarReader(); -- if (!jarReader) -- return pref_InitDefaults(); -- -- rv = pref_ReadPrefFromJar(jarReader, "greprefs.js"); -- NS_ENSURE_SUCCESS(rv, rv); -- -- nsZipFind *findPtr; -- rv = jarReader->FindInit("defaults/pref/*.js$", &findPtr); -- NS_ENSURE_SUCCESS(rv, rv); -- -- nsAutoPtr find(findPtr); -- -- nsTArray prefEntries; -- const char *entryName; -- PRUint16 entryNameLen; -- while (NS_SUCCEEDED(find->FindNext(&entryName, &entryNameLen))) { -- prefEntries.AppendElement(Substring(entryName, entryName + entryNameLen)); -- } -- -- prefEntries.Sort(); -- for (PRUint32 i = prefEntries.Length(); i--; ) { -- rv = pref_ReadPrefFromJar(jarReader, prefEntries[i].get()); -- if (NS_FAILED(rv)) -- NS_WARNING("Error parsing preferences."); -- } -- -- return NS_OK; --} --#endif -- -+//---------------------------------------------------------------------------------------- -+// Initialize default preference JavaScript buffers from -+// appropriate TEXT resources -+//---------------------------------------------------------------------------------------- - static nsresult pref_InitInitialObjects() - { - nsresult rv; - -- // first we parse the GRE default prefs. This also works if we're not using a GRE, --#ifdef MOZ_OMNIJAR -- rv = pref_InitAppDefaultsFromOmnijar(); --#else -- rv = pref_InitDefaults(); --#endif -- NS_ENSURE_SUCCESS(rv, rv); -+ // In omni.jar case, we load the following prefs: -+ // - jar:$gre/omni.jar!/greprefs.js -+ // - jar:$gre/omni.jar!/defaults/pref/*.js -+ // In non omni.jar case, we load: -+ // - $gre/greprefs.js -+ // -+ // When $app == $gre, we additionally load, in all cases: -+ // - $gre/defaults/pref/*.js -+ // This is kept for bug 591866 (channel-prefs.js should not be in omni.jar). -+ // We load all files instead of channel-prefs.js only to have the same -+ // behaviour as $app != $gre. -+ // -+ // When $app != $gre, we additionally load, in omni.jar case: -+ // - jar:$app/omni.jar!/defaults/preferences/*.js -+ // - $app/defaults/preferences/*.js -+ // and in non omni.jar case: -+ // - $app/defaults/preferences/*.js - -- nsCOMPtr defaultPrefDir; -- // now parse the "application" default preferences -- rv = NS_GetSpecialDirectory(NS_APP_PREF_DEFAULTS_50_DIR, getter_AddRefs(defaultPrefDir)); -- NS_ENSURE_SUCCESS(rv, rv); -+ nsZipFind *findPtr; -+ nsAutoPtr find; -+ nsTArray prefEntries; -+ const char *entryName; -+ PRUint16 entryNameLen; - -- /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */ -- static const char* specialFiles[] = { -+ nsZipArchive* jarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE); -+ if (jarReader) { -+ // Load jar:$gre/omni.jar!/greprefs.js -+ rv = pref_ReadPrefFromJar(jarReader, "greprefs.js"); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ // Load jar:$gre/omni.jar!/defaults/pref/*.js -+ rv = jarReader->FindInit("defaults/pref/*.js$", &findPtr); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ find = findPtr; -+ while (NS_SUCCEEDED(find->FindNext(&entryName, &entryNameLen))) { -+ prefEntries.AppendElement(Substring(entryName, entryName + entryNameLen)); -+ } -+ -+ prefEntries.Sort(); -+ for (PRUint32 i = prefEntries.Length(); i--; ) { -+ rv = pref_ReadPrefFromJar(jarReader, prefEntries[i].get()); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing preferences."); -+ } -+ } else { -+ // Load $gre/greprefs.js -+ nsCOMPtr greprefsFile; -+ rv = NS_GetSpecialDirectory(NS_GRE_DIR, getter_AddRefs(greprefsFile)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = greprefsFile->AppendNative(NS_LITERAL_CSTRING("greprefs.js")); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = openPrefFile(greprefsFile); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing GRE default preferences. Is this an old-style embedding app?"); -+ } -+ -+ if (!mozilla::Omnijar::HasOmnijar(mozilla::Omnijar::APP)) { -+ // Load $gre/defaults/pref/*.js -+ nsCOMPtr defaultPrefDir; -+ -+ rv = NS_GetSpecialDirectory(NS_APP_PREF_DEFAULTS_50_DIR, getter_AddRefs(defaultPrefDir)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */ -+ static const char* specialFiles[] = { - #if defined(XP_MAC) || defined(XP_MACOSX) - "macprefs.js" - #elif defined(XP_WIN) - "winpref.js" - #elif defined(XP_UNIX) - "unix.js" --#if defined(_AIX) -+#if defined(VMS) -+ , "openvms.js" -+#elif defined(_AIX) - , "aix.js" - #endif - #elif defined(XP_OS2) - "os2pref.js" -+#elif defined(XP_BEOS) -+ "beos.js" - #endif -- }; -+ }; - -- rv = pref_LoadPrefsInDir(defaultPrefDir, specialFiles, NS_ARRAY_LENGTH(specialFiles)); -- if (NS_FAILED(rv)) { -- NS_WARNING("Error parsing application default preferences."); -+ rv = pref_LoadPrefsInDir(defaultPrefDir, specialFiles, NS_ARRAY_LENGTH(specialFiles)); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing application default preferences."); -+ } -+ -+ // Load jar:$app/omni.jar!/defaults/preferences/*.js -+ nsZipArchive *appJarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::APP); -+ if (appJarReader) { -+ rv = appJarReader->FindInit("defaults/preferences/*.js$", &findPtr); -+ NS_ENSURE_SUCCESS(rv, rv); -+ find = findPtr; -+ prefEntries.Clear(); -+ while (NS_SUCCEEDED(find->FindNext(&entryName, &entryNameLen))) { -+ prefEntries.AppendElement(Substring(entryName, entryName + entryNameLen)); -+ } -+ prefEntries.Sort(); -+ for (PRUint32 i = prefEntries.Length(); i--; ) { -+ rv = pref_ReadPrefFromJar(appJarReader, prefEntries[i].get()); -+ if (NS_FAILED(rv)) -+ NS_WARNING("Error parsing preferences."); -+ } - } - - rv = pref_LoadPrefsInDirList(NS_APP_PREFS_DEFAULTS_DIR_LIST); - NS_ENSURE_SUCCESS(rv, rv); - - NS_CreateServicesFromCategory(NS_PREFSERVICE_APPDEFAULTS_TOPIC_ID, - nsnull, NS_PREFSERVICE_APPDEFAULTS_TOPIC_ID); - -diff --git a/netwerk/protocol/res/nsResProtocolHandler.cpp b/netwerk/protocol/res/nsResProtocolHandler.cpp ---- a/netwerk/protocol/res/nsResProtocolHandler.cpp -+++ b/netwerk/protocol/res/nsResProtocolHandler.cpp -@@ -152,97 +152,62 @@ nsResProtocolHandler::nsResProtocolHandl - } - - nsResProtocolHandler::~nsResProtocolHandler() - { - gResHandler = nsnull; - } - - nsresult --nsResProtocolHandler::AddSpecialDir(const char* aSpecialDir, const nsACString& aSubstitution) --{ -- nsCOMPtr file; -- nsresult rv = NS_GetSpecialDirectory(aSpecialDir, getter_AddRefs(file)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- nsCOMPtr uri; -- rv = mIOService->NewFileURI(file, getter_AddRefs(uri)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- return SetSubstitution(aSubstitution, uri); --} -- --nsresult - nsResProtocolHandler::Init() - { - if (!mSubstitutions.Init(32)) - return NS_ERROR_UNEXPECTED; - - nsresult rv; - - mIOService = do_GetIOService(&rv); - NS_ENSURE_SUCCESS(rv, rv); - --#ifdef MOZ_OMNIJAR -- nsCOMPtr omniJar(mozilla::OmnijarPath()); -- if (omniJar) -- return Init(omniJar); --#endif -- -- // these entries should be kept in sync with the omnijar Init function -+ nsCAutoString appURI, greURI; -+ rv = mozilla::Omnijar::GetURIString(mozilla::Omnijar::APP, appURI); -+ NS_ENSURE_SUCCESS(rv, rv); -+ rv = mozilla::Omnijar::GetURIString(mozilla::Omnijar::GRE, greURI); -+ NS_ENSURE_SUCCESS(rv, rv); - - // -- // make resource:/// point to the application directory -+ // make resource:/// point to the application directory or omnijar - // -- rv = AddSpecialDir(NS_OS_CURRENT_PROCESS_DIR, EmptyCString()); -+ nsCOMPtr uri; -+ rv = NS_NewURI(getter_AddRefs(uri), appURI.Length() ? appURI : greURI); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ rv = SetSubstitution(EmptyCString(), uri); - NS_ENSURE_SUCCESS(rv, rv); - - // - // make resource://gre/ point to the GRE directory - // -- rv = AddSpecialDir(NS_GRE_DIR, kGRE); -+ if (appURI.Length()) { // We already have greURI in uri if appURI.Length() is 0. -+ rv = NS_NewURI(getter_AddRefs(uri), greURI); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } -+ -+ rv = SetSubstitution(kGRE, uri); - NS_ENSURE_SUCCESS(rv, rv); - - //XXXbsmedberg Neil wants a resource://pchrome/ for the profile chrome dir... - // but once I finish multiple chrome registration I'm not sure that it is needed - - // XXX dveditz: resource://pchrome/ defeats profile directory salting - // if web content can load it. Tread carefully. - - return rv; - } - --#ifdef MOZ_OMNIJAR --nsresult --nsResProtocolHandler::Init(nsIFile *aOmniJar) --{ -- nsresult rv; -- nsCOMPtr uri; -- nsCAutoString omniJarSpec; -- NS_GetURLSpecFromActualFile(aOmniJar, omniJarSpec, mIOService); -- -- nsCAutoString urlStr("jar:"); -- urlStr += omniJarSpec; -- urlStr += "!/"; -- -- rv = mIOService->NewURI(urlStr, nsnull, nsnull, getter_AddRefs(uri)); -- NS_ENSURE_SUCCESS(rv, rv); -- -- // these entries should be kept in sync with the normal Init function -- -- // resource:/// points to jar:omni.jar!/ -- SetSubstitution(EmptyCString(), uri); -- -- // resource://gre/ points to jar:omni.jar!/ -- SetSubstitution(kGRE, uri); -- -- return NS_OK; --} --#endif -- - #ifdef MOZ_IPC - static PLDHashOperator - EnumerateSubstitution(const nsACString& aKey, - nsIURI* aURI, - void* aArg) - { - nsTArray* resources = - static_cast*>(aArg); -diff --git a/startupcache/StartupCache.cpp b/startupcache/StartupCache.cpp ---- a/startupcache/StartupCache.cpp -+++ b/startupcache/StartupCache.cpp -@@ -237,27 +237,36 @@ StartupCache::GetBuffer(const char* id, - nsZipItemPtr zipItem(mArchive, id, true); - if (zipItem) { - *outbuf = zipItem.Forget(); - *length = zipItem.Length(); - return NS_OK; - } - } - --#ifdef MOZ_OMNIJAR -- if (mozilla::OmnijarReader()) { -+ if (mozilla::Omnijar::GetReader(mozilla::Omnijar::APP)) { - // no need to checksum omnijarred entries -- nsZipItemPtr zipItem(mozilla::OmnijarReader(), id); -+ nsZipItemPtr zipItem(mozilla::Omnijar::GetReader(mozilla::Omnijar::APP), id); - if (zipItem) { - *outbuf = zipItem.Forget(); - *length = zipItem.Length(); - return NS_OK; - } - } --#endif -+ -+ if (mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE)) { -+ // no need to checksum omnijarred entries -+ nsZipItemPtr zipItem(mozilla::Omnijar::GetReader(mozilla::Omnijar::GRE), id); -+ if (zipItem) { -+ *outbuf = zipItem.Forget(); -+ *length = zipItem.Length(); -+ return NS_OK; -+ } -+ } -+ - return NS_ERROR_NOT_AVAILABLE; - } - - // Makes a copy of the buffer, client retains ownership of inbuf. - nsresult - StartupCache::PutBuffer(const char* id, const char* inbuf, PRUint32 len) - { - WaitOnWriteThread(); -diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp ---- a/toolkit/xre/nsAppRunner.cpp -+++ b/toolkit/xre/nsAppRunner.cpp -@@ -3897,35 +3897,45 @@ XRE_InitCommandLine(int aArgc, char* aAr - CommandLine::Init(aArgc, canonArgs); - - for (int i = 0; i < aArgc; ++i) - free(canonArgs[i]); - delete[] canonArgs; - #endif - #endif - --#ifdef MOZ_OMNIJAR -- const char *omnijarPath = nsnull; -- ArgResult ar = CheckArg("omnijar", PR_FALSE, &omnijarPath); -+ const char *path = nsnull; -+ ArgResult ar = CheckArg("grebase", PR_FALSE, &path); - if (ar == ARG_BAD) { -- PR_fprintf(PR_STDERR, "Error: argument -omnijar requires an omnijar path\n"); -+ PR_fprintf(PR_STDERR, "Error: argument -grebase requires a path argument\n"); - return NS_ERROR_FAILURE; - } - -- if (!omnijarPath) -+ if (!path) - return rv; - -- nsCOMPtr omnijar; -- rv = NS_NewNativeLocalFile(nsDependentCString(omnijarPath), PR_TRUE, -- getter_AddRefs(omnijar)); -- if (NS_SUCCEEDED(rv)) -- mozilla::SetOmnijar(omnijar); --#endif -- -- return rv; -+ nsCOMPtr greBase; -+ rv = XRE_GetFileFromPath(path, getter_AddRefs(greBase)); -+ if (NS_FAILED(rv)) -+ return rv; -+ -+ ar = CheckArg("appbase", PR_FALSE, &path); -+ if (ar == ARG_BAD) { -+ PR_fprintf(PR_STDERR, "Error: argument -appbase requires a path argument\n"); -+ return NS_ERROR_FAILURE; -+ } -+ -+ nsCOMPtr appBase; -+ if (path) { -+ rv = XRE_GetFileFromPath(path, getter_AddRefs(appBase)); -+ if (NS_FAILED(rv)) -+ return rv; -+ } -+ -+ return mozilla::Omnijar::SetBase(greBase, appBase); - } - - nsresult - XRE_DeinitCommandLine() - { - nsresult rv = NS_OK; - - #if defined(MOZ_IPC) -diff --git a/toolkit/xre/nsEmbedFunctions.cpp b/toolkit/xre/nsEmbedFunctions.cpp ---- a/toolkit/xre/nsEmbedFunctions.cpp -+++ b/toolkit/xre/nsEmbedFunctions.cpp -@@ -512,19 +512,17 @@ XRE_InitChildProcess(int aArgc, - } - - // Run the UI event loop on the main thread. - uiMessageLoop.MessageLoop::Run(); - - // Allow ProcessChild to clean up after itself before going out of - // scope and being deleted - process->CleanUp(); --#ifdef MOZ_OMNIJAR -- mozilla::SetOmnijar(nsnull); --#endif -+ mozilla::Omnijar::SetBase(nsnull, nsnull); - } - } - - NS_LogTerm(); - return XRE_DeinitCommandLine(); - } - - MessageLoop* -diff --git a/xpcom/build/Makefile.in b/xpcom/build/Makefile.in ---- a/xpcom/build/Makefile.in -+++ b/xpcom/build/Makefile.in -@@ -64,28 +64,25 @@ CSRCS = \ - $(NULL) - - CPPSRCS = \ - $(XPCOM_GLUE_SRC_LCPPSRCS) \ - $(XPCOM_GLUENS_SRC_LCPPSRCS) \ - nsXPComInit.cpp \ - nsXPCOMStrings.cpp \ - Services.cpp \ -+ Omnijar.cpp \ - $(NULL) - - ifndef MOZ_ENABLE_LIBXUL - ifeq (,$(filter-out WINNT WINCE OS2,$(OS_ARCH))) - CPPSRCS += dlldeps.cpp - endif - endif - --ifdef MOZ_OMNIJAR --CPPSRCS += Omnijar.cpp --endif -- - SHARED_LIBRARY_LIBS = \ - $(DEPTH)/chrome/src/$(LIB_PREFIX)chrome_s.$(LIB_SUFFIX) \ - ../ds/$(LIB_PREFIX)xpcomds_s.$(LIB_SUFFIX) \ - ../io/$(LIB_PREFIX)xpcomio_s.$(LIB_SUFFIX) \ - ../components/$(LIB_PREFIX)xpcomcomponents_s.$(LIB_SUFFIX) \ - ../threads/$(LIB_PREFIX)xpcomthreads_s.$(LIB_SUFFIX) \ - ../proxy/src/$(LIB_PREFIX)xpcomproxy_s.$(LIB_SUFFIX) \ - ../base/$(LIB_PREFIX)xpcombase_s.$(LIB_SUFFIX) \ -diff --git a/xpcom/build/Omnijar.cpp b/xpcom/build/Omnijar.cpp ---- a/xpcom/build/Omnijar.cpp -+++ b/xpcom/build/Omnijar.cpp -@@ -16,16 +16,17 @@ - * - * The Initial Developer of the Original Code is - * Mozilla Foundation. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Michael Wu -+ * Mike Hommey - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your -@@ -33,69 +34,175 @@ - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - - #include "Omnijar.h" - --#include "nsILocalFile.h" --#include "nsXULAppAPI.h" -+#include "nsIFile.h" - #include "nsZipArchive.h" -+#include "nsNetUtil.h" - --static nsILocalFile* sOmnijarPath = nsnull; --static nsZipArchive* sOmnijarReader = nsnull; -+namespace mozilla { - --static void --SetupReader() -+nsIFile *Omnijar::sPath[2] = { nsnull, nsnull }; -+PRBool Omnijar::sIsOmnijar[2] = { PR_FALSE, PR_FALSE }; -+ -+#ifdef MOZ_ENABLE_LIBXUL -+nsZipArchive *Omnijar::sReader[2] = { nsnull, nsnull }; -+#endif -+ -+static already_AddRefed -+ComputePath(nsIFile *aPath, PRBool &aIsOmnijar) - { -- if (!sOmnijarPath) { -- return; -+ PRBool isDir; -+ aIsOmnijar = PR_FALSE; -+ if (!aPath || NS_FAILED(aPath->IsDirectory(&isDir)) || !isDir) -+ return nsnull; -+ -+ nsCOMPtr path; -+#ifdef MOZ_ENABLE_LIBXUL -+ // Search for omni.jar in the given directory -+ if (!isDir || NS_FAILED(aPath->Clone(getter_AddRefs(path)))) -+ return nsnull; -+ -+ if (NS_FAILED(path->AppendNative(NS_LITERAL_CSTRING("omni.jar")))) -+ return nsnull; -+ -+ if (NS_FAILED(path->Exists(&aIsOmnijar))) -+ return nsnull; -+#endif -+ -+ if (!aIsOmnijar && NS_FAILED(aPath->Clone(getter_AddRefs(path)))) -+ return nsnull; -+ -+ return path.forget(); -+} -+ -+nsresult -+Omnijar::SetBase(nsIFile *aGrePath, nsIFile *aAppPath) -+{ -+ NS_ABORT_IF_FALSE(aGrePath || !aAppPath, "Omnijar::SetBase(NULL, something) call forbidden"); -+ -+#ifdef MOZ_ENABLE_LIBXUL -+ if (sReader[GRE]) { -+ sReader[GRE]->CloseArchive(); -+ delete sReader[GRE]; -+ } -+ if (sReader[APP]) { -+ sReader[APP]->CloseArchive(); -+ delete sReader[APP]; -+ } -+ sReader[APP] = sReader[GRE] = nsnull; -+#endif -+ -+ nsresult rv; -+ PRBool equals; -+ if (aAppPath) { -+ rv = aAppPath->Equals(aGrePath, &equals); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } else { -+ equals = PR_TRUE; - } - -- nsZipArchive* zipReader = new nsZipArchive(); -- if (!zipReader) { -- NS_IF_RELEASE(sOmnijarPath); -- return; -+ nsCOMPtr grePath = ComputePath(aGrePath, sIsOmnijar[GRE]); -+ nsCOMPtr appPath = ComputePath(equals ? nsnull : aAppPath, sIsOmnijar[APP]); -+ -+ NS_IF_RELEASE(sPath[GRE]); -+ sPath[GRE] = grePath; -+ NS_IF_ADDREF(sPath[GRE]); -+ -+ NS_IF_RELEASE(sPath[APP]); -+ sPath[APP] = appPath; -+ NS_IF_ADDREF(sPath[APP]); -+ -+ return NS_OK; -+} -+ -+already_AddRefed -+Omnijar::GetBase(Type aType) -+{ -+ NS_ABORT_IF_FALSE(sPath[0], "Omnijar not initialized"); -+ -+ if (!sIsOmnijar[aType]) { -+ NS_IF_ADDREF(sPath[aType]); -+ return sPath[aType]; - } - -- if (NS_FAILED(zipReader->OpenArchive(sOmnijarPath))) { -+ nsCOMPtr file, path; -+ if (NS_FAILED(sPath[aType]->Clone(getter_AddRefs(file)))) -+ return nsnull; -+ -+ if (NS_FAILED(file->GetParent(getter_AddRefs(path)))) -+ return nsnull; -+ return path.forget(); -+} -+ -+#ifdef MOZ_ENABLE_LIBXUL -+nsZipArchive * -+Omnijar::GetReader(Type aType) -+{ -+ if (!sIsOmnijar[aType]) -+ return nsnull; -+ -+ if (sReader[aType]) -+ return sReader[aType]; -+ -+ nsZipArchive* zipReader = new nsZipArchive(); -+ if (!zipReader) -+ return nsnull; -+ -+ if (NS_FAILED(zipReader->OpenArchive(sPath[aType]))) { - delete zipReader; -- NS_IF_RELEASE(sOmnijarPath); -- return; -+ return nsnull; - } - -- sOmnijarReader = zipReader; -+ return (sReader[aType] = zipReader); - } - --nsILocalFile* --mozilla::OmnijarPath() -+nsZipArchive * -+Omnijar::GetReader(nsIFile *aPath) - { -- if (!sOmnijarReader) -- SetupReader(); -+ PRBool equals; -+ nsresult rv; - -- return sOmnijarPath; -+ if (sIsOmnijar[GRE]) { -+ rv = sPath[GRE]->Equals(aPath, &equals); -+ if (NS_SUCCEEDED(rv) && equals) -+ return GetReader(GRE); -+ } -+ if (sIsOmnijar[APP]) { -+ rv = sPath[APP]->Equals(aPath, &equals); -+ if (NS_SUCCEEDED(rv) && equals) -+ return GetReader(APP); -+ } -+ return nsnull; -+} -+#endif -+ -+nsresult -+Omnijar::GetURIString(Type aType, nsCString &result) -+{ -+ NS_ABORT_IF_FALSE(sPath[0], "Omnijar not initialized"); -+ -+ result = ""; -+ -+ if ((aType == APP) && (!sPath[APP])) -+ return NS_OK; -+ -+ nsCAutoString omniJarSpec; -+ nsresult rv = NS_GetURLSpecFromActualFile(sPath[aType], omniJarSpec); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ if (sIsOmnijar[aType]) { -+ result = "jar:"; -+ result += omniJarSpec; -+ result += "!"; -+ } else { -+ result = omniJarSpec; -+ } -+ result += "/"; -+ return NS_OK; - } - --nsZipArchive* --mozilla::OmnijarReader() --{ -- if (!sOmnijarReader) -- SetupReader(); -- -- return sOmnijarReader; --} -- --void --mozilla::SetOmnijar(nsILocalFile* aPath) --{ -- NS_IF_RELEASE(sOmnijarPath); -- if (sOmnijarReader) { -- sOmnijarReader->CloseArchive(); -- delete sOmnijarReader; -- sOmnijarReader = nsnull; -- } -- -- sOmnijarPath = aPath; -- NS_IF_ADDREF(sOmnijarPath); --} -- -+} /* namespace mozilla */ -diff --git a/xpcom/build/Omnijar.h b/xpcom/build/Omnijar.h ---- a/xpcom/build/Omnijar.h -+++ b/xpcom/build/Omnijar.h -@@ -16,16 +16,17 @@ - * - * The Initial Developer of the Original Code is - * Mozilla Foundation. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Michael Wu -+ * Mike Hommey - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your -@@ -34,29 +35,137 @@ - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - - #ifndef mozilla_Omnijar_h - #define mozilla_Omnijar_h - --class nsILocalFile; -+#include "nscore.h" -+#include "nsTArray.h" -+#include "nsCOMPtr.h" -+#include "nsString.h" -+ -+class nsIFile; - class nsZipArchive; -- --#ifdef MOZ_OMNIJAR -+class nsIURI; - - namespace mozilla { - -+#ifdef MOZ_ENABLE_LIBXUL -+#define OMNIJAR_EXPORT -+#else -+#define OMNIJAR_EXPORT NS_EXPORT -+#endif -+ -+class OMNIJAR_EXPORT Omnijar { -+private: - /** -- * This returns the path to the omnijar. -- * If the omnijar isn't available, this function will return null. -- * Callers should fallback to flat packaging if null. -+ * Store an nsIFile for either a base directory when there is no omni.jar, -+ * or omni.jar itself. We can store two paths here, one for GRE -+ * (corresponding to resource://gre/) and one for APP -+ * (corresponding to resource:/// and resource://app/), but only -+ * store one when both point to the same location (unified). - */ --nsILocalFile *OmnijarPath(); --nsZipArchive *OmnijarReader(); --void SetOmnijar(nsILocalFile* aPath); -+static nsIFile *sPath[2]; -+/** -+ * Store whether the corresponding sPath is an omni.jar or a directory -+ */ -+static PRBool sIsOmnijar[2]; -+ -+#ifdef MOZ_ENABLE_LIBXUL -+/** -+ * Cached nsZipArchives for the corresponding sPath -+ */ -+static nsZipArchive *sReader[2]; -+#endif -+ -+public: -+enum Type { -+ GRE = 0, -+ APP = 1 -+}; -+ -+/** -+ * Returns whether SetBase has been called at least once with -+ * a valid nsIFile -+ */ -+static PRBool -+IsInitialized() -+{ -+ // GRE path is always set after initialization. -+ return sPath[0] != nsnull; -+} -+ -+/** -+ * Sets the base directories for GRE and APP. APP base directory -+ * may be nsnull, in case the APP and GRE directories are the same. -+ */ -+static nsresult SetBase(nsIFile *aGrePath, nsIFile *aAppPath); -+ -+/** -+ * Returns an nsIFile pointing to the omni.jar file for GRE or APP. -+ * Returns nsnull when there is no corresponding omni.jar. -+ * Also returns nsnull for APP in the unified case. -+ */ -+static already_AddRefed -+GetPath(Type aType) -+{ -+ NS_ABORT_IF_FALSE(sPath[0], "Omnijar not initialized"); -+ -+ if (sIsOmnijar[aType]) { -+ NS_IF_ADDREF(sPath[aType]); -+ return sPath[aType]; -+ } -+ return nsnull; -+} -+ -+/** -+ * Returns whether GRE or APP use an omni.jar. Returns PR_False when -+ * using an omni.jar in the unified case. -+ */ -+static PRBool -+HasOmnijar(Type aType) -+{ -+ return sIsOmnijar[aType]; -+} -+ -+/** -+ * Returns the base directory for GRE or APP. In the unified case, -+ * returns nsnull for APP. -+ */ -+static already_AddRefed GetBase(Type aType); -+ -+/** -+ * Returns a nsZipArchive pointer for the omni.jar file for GRE or -+ * APP. Returns nsnull in the same cases GetPath() would. -+ */ -+#ifdef MOZ_ENABLE_LIBXUL -+static nsZipArchive *GetReader(Type aType); -+#else -+static nsZipArchive *GetReader(Type aType) { return nsnull; } -+#endif -+ -+/** -+ * Returns a nsZipArchive pointer for the given path IAOI the given -+ * path is the omni.jar for either GRE or APP. -+ */ -+#ifdef MOZ_ENABLE_LIBXUL -+static nsZipArchive *GetReader(nsIFile *aPath); -+#else -+static nsZipArchive *GetReader(nsIFile *aPath) { return nsnull; } -+#endif -+ -+/** -+ * Returns the URI string corresponding to the omni.jar or directory -+ * for GRE or APP. i.e. jar:/path/to/omni.jar!/ for omni.jar and -+ * /path/to/base/dir/ otherwise. Returns an empty string for APP in -+ * the unified case. -+ * The returned URI is guaranteed to end with a slash. -+ */ -+static nsresult GetURIString(Type aType, nsCString &result); -+ -+}; /* class Omnijar */ - - } /* namespace mozilla */ - --#endif /* MOZ_OMNIJAR */ -- - #endif /* mozilla_Omnijar_h */ -diff --git a/xpcom/build/nsXPComInit.cpp b/xpcom/build/nsXPComInit.cpp ---- a/xpcom/build/nsXPComInit.cpp -+++ b/xpcom/build/nsXPComInit.cpp -@@ -462,35 +462,35 @@ NS_InitXPCOM2(nsIServiceManager* *result - nsDirectoryService::gService->Set(NS_XPCOM_LIBRARY_FILE, xpcomLib); - } - - if (appFileLocationProvider) { - rv = nsDirectoryService::gService->RegisterProvider(appFileLocationProvider); - if (NS_FAILED(rv)) return rv; - } - --#ifdef MOZ_OMNIJAR - NS_TIME_FUNCTION_MARK("Next: Omnijar init"); - -- if (!mozilla::OmnijarPath()) { -- nsCOMPtr omnijar; -+ if (!mozilla::Omnijar::IsInitialized()) { -+ nsCOMPtr greDir, appDir; - nsCOMPtr file; - -- rv = NS_ERROR_FAILURE; - nsDirectoryService::gService->Get(NS_GRE_DIR, - NS_GET_IID(nsIFile), - getter_AddRefs(file)); -- if (file) -- rv = file->Append(NS_LITERAL_STRING("omni.jar")); -- if (NS_SUCCEEDED(rv)) -- omnijar = do_QueryInterface(file); -- if (NS_SUCCEEDED(rv)) -- mozilla::SetOmnijar(omnijar); -+ greDir = do_QueryInterface(file); -+ -+ nsDirectoryService::gService->Get(NS_XPCOM_CURRENT_PROCESS_DIR, -+ NS_GET_IID(nsIFile), -+ getter_AddRefs(file)); -+ appDir = do_QueryInterface(file); -+ -+ rv = mozilla::Omnijar::SetBase(greDir, appDir); -+ NS_ENSURE_SUCCESS(rv, rv); - } --#endif - - #ifdef MOZ_IPC - if ((sCommandLineWasInitialized = !CommandLine::IsInitialized())) { - NS_TIME_FUNCTION_MARK("Next: IPC command line init"); - - #ifdef OS_WIN - CommandLine::Init(0, nsnull); - #else -@@ -769,18 +769,16 @@ ShutdownXPCOM(nsIServiceManager* servMgr - sCommandLineWasInitialized = false; - } - if (sExitManager) { - delete sExitManager; - sExitManager = nsnull; - } - #endif - --#ifdef MOZ_OMNIJAR -- mozilla::SetOmnijar(nsnull); --#endif -+ mozilla::Omnijar::SetBase(nsnull, nsnull); - - NS_LogTerm(); - - return NS_OK; - } - - } // namespace mozilla -diff --git a/xpcom/components/nsComponentManager.cpp b/xpcom/components/nsComponentManager.cpp ---- a/xpcom/components/nsComponentManager.cpp -+++ b/xpcom/components/nsComponentManager.cpp -@@ -175,18 +175,16 @@ NS_DEFINE_CID(kCategoryManagerCID, NS_CA - #define COMPMGR_TIME_FUNCTION_CONTRACTID(cid) \ - NS_TIME_FUNCTION_MIN_FMT(5, "%s (line %d) (contractid: %s)", MOZ_FUNCTION_NAME, \ - __LINE__, (cid)) - #else - #define COMPMGR_TIME_FUNCTION_CID(cid) do {} while (0) - #define COMPMGR_TIME_FUNCTION_CONTRACTID(cid) do {} while (0) - #endif - --#define kOMNIJAR_PREFIX NS_LITERAL_CSTRING("resource:///") -- - nsresult - nsGetServiceFromCategory::operator()(const nsIID& aIID, void** aInstancePtr) const - { - nsresult rv; - nsXPIDLCString value; - nsCOMPtr catman; - nsComponentManagerImpl *compMgr = nsComponentManagerImpl::gComponentManager; - if (!compMgr) { -@@ -390,47 +388,44 @@ nsresult nsComponentManagerImpl::Init() - - nsCategoryManager::GetSingleton()->SuppressNotifications(true); - - RegisterModule(&kXPCOMModule, NULL); - - for (PRUint32 i = 0; i < sStaticModules->Length(); ++i) - RegisterModule((*sStaticModules)[i], NULL); - --#ifdef MOZ_OMNIJAR -- if (mozilla::OmnijarPath()) { -- nsCOMPtr omnijarReader = new nsJAR(); -- rv = omnijarReader->Open(mozilla::OmnijarPath()); -- if (NS_SUCCEEDED(rv)) -- RegisterJarManifest(omnijarReader, "chrome.manifest", false); -+ nsCOMPtr appOmnijar = mozilla::Omnijar::GetPath(mozilla::Omnijar::APP); -+ if (appOmnijar) { -+ cl = sModuleLocations->InsertElementAt(1); // Insert after greDir -+ cl->type = NS_COMPONENT_LOCATION; -+ cl->location = do_QueryInterface(appOmnijar); -+ cl->jar = true; - } --#endif -+ nsCOMPtr greOmnijar = mozilla::Omnijar::GetPath(mozilla::Omnijar::GRE); -+ if (greOmnijar) { -+ cl = sModuleLocations->InsertElementAt(0); -+ cl->type = NS_COMPONENT_LOCATION; -+ cl->location = do_QueryInterface(greOmnijar); -+ cl->jar = true; -+ } - - for (PRUint32 i = 0; i < sModuleLocations->Length(); ++i) { - ComponentLocation& l = sModuleLocations->ElementAt(i); - if (!l.jar) { - RegisterManifestFile(l.type, l.location, false); - continue; - } - - nsCOMPtr reader = do_CreateInstance(kZipReaderCID, &rv); - rv = reader->Open(l.location); - if (NS_SUCCEEDED(rv)) - RegisterJarManifest(reader, "chrome.manifest", false); - } - --#ifdef MOZ_OMNIJAR -- if (mozilla::OmnijarPath()) { -- cl = sModuleLocations->InsertElementAt(0); -- cl->type = NS_COMPONENT_LOCATION; -- cl->location = mozilla::OmnijarPath(); -- cl->jar = true; -- } --#endif -- - nsCategoryManager::GetSingleton()->SuppressNotifications(false); - - mStatus = NORMAL; - - return NS_OK; - } - - void -# HG changeset patch -# Parent ff1b810f78226d7f4010909d3cde05a57fdcf20c -Bug 620931 part 4 - Fix resource://app/ to always point to the same as resource:/// - -diff --git a/netwerk/protocol/res/nsResProtocolHandler.cpp b/netwerk/protocol/res/nsResProtocolHandler.cpp ---- a/netwerk/protocol/res/nsResProtocolHandler.cpp -+++ b/netwerk/protocol/res/nsResProtocolHandler.cpp -@@ -74,16 +74,17 @@ static nsResProtocolHandler *gResHandler - // set NSPR_LOG_FILE=log.txt - // - // this enables PR_LOG_ALWAYS level information and places all output in - // the file log.txt - // - static PRLogModuleInfo *gResLog; - #endif - -+#define kAPP NS_LITERAL_CSTRING("app") - #define kGRE NS_LITERAL_CSTRING("gre") - - //---------------------------------------------------------------------------- - // nsResURL : overrides nsStandardURL::GetFile to provide nsIFile resolution - //---------------------------------------------------------------------------- - - nsresult - nsResURL::EnsureFile() -@@ -179,16 +180,22 @@ nsResProtocolHandler::Init() - nsCOMPtr uri; - rv = NS_NewURI(getter_AddRefs(uri), appURI.Length() ? appURI : greURI); - NS_ENSURE_SUCCESS(rv, rv); - - rv = SetSubstitution(EmptyCString(), uri); - NS_ENSURE_SUCCESS(rv, rv); - - // -+ // make resource://app/ point to the application directory or omnijar -+ // -+ rv = SetSubstitution(kAPP, uri); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ // - // make resource://gre/ point to the GRE directory - // - if (appURI.Length()) { // We already have greURI in uri if appURI.Length() is 0. - rv = NS_NewURI(getter_AddRefs(uri), greURI); - NS_ENSURE_SUCCESS(rv, rv); - } - - rv = SetSubstitution(kGRE, uri); -diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp ---- a/toolkit/xre/nsXREDirProvider.cpp -+++ b/toolkit/xre/nsXREDirProvider.cpp -@@ -300,19 +300,16 @@ nsXREDirProvider::GetFile(const char* aP - } - } - else if (!strcmp(aProperty, XRE_EXECUTABLE_FILE) && gArgv[0]) { - nsCOMPtr lf; - rv = XRE_GetBinaryPath(gArgv[0], getter_AddRefs(lf)); - if (NS_SUCCEEDED(rv)) - file = lf; - } -- else if (!strcmp(aProperty, "resource:app")) { -- rv = GetAppDir()->Clone(getter_AddRefs(file)); -- } - - else if (!strcmp(aProperty, NS_APP_PROFILE_DIR_STARTUP) && mProfileDir) { - return mProfileDir->Clone(aFile); - } - else if (!strcmp(aProperty, NS_APP_PROFILE_LOCAL_DIR_STARTUP)) { - if (mProfileLocalDir) - return mProfileLocalDir->Clone(aFile); - -# HG changeset patch -# Parent 7d2228db71a299afca60babff632a967d2d6c456 -Bug 620931 part 5 - Enable omni.jar by default on xulrunner - -diff --git a/xulrunner/confvars.sh b/xulrunner/confvars.sh ---- a/xulrunner/confvars.sh -+++ b/xulrunner/confvars.sh -@@ -36,15 +36,16 @@ - # - # ***** END LICENSE BLOCK ***** - - MOZ_APP_NAME=xulrunner - MOZ_APP_DISPLAYNAME=XULRunner - MOZ_UPDATER=1 - MOZ_XULRUNNER=1 - MOZ_ENABLE_LIBXUL=1 -+MOZ_CHROME_FILE_FORMAT=omni - MOZ_STATIC_BUILD_UNSUPPORTED=1 - MOZ_APP_VERSION=$MOZILLA_VERSION - if test "$MOZ_STORAGE"; then - MOZ_PLACES=1 - fi - MOZ_EXTENSIONS_DEFAULT=" gnomevfs" - MOZ_URL_CLASSIFIER=1 diff --git a/staging/xulrunner/xulrunner-version.patch b/staging/xulrunner/xulrunner-version.patch deleted file mode 100644 index 8e81b23ea..000000000 --- a/staging/xulrunner/xulrunner-version.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur mozilla-2.0.orig/xulrunner/installer/Makefile.in mozilla-2.0/xulrunner/installer/Makefile.in ---- mozilla-2.0.orig/xulrunner/installer/Makefile.in 2011-03-03 14:12:04.000000000 -0800 -+++ mozilla-2.0/xulrunner/installer/Makefile.in 2011-03-13 01:58:19.663360705 -0800 -@@ -44,6 +44,8 @@ - - include $(DEPTH)/config/autoconf.mk - -+MOZ_APP_VERSION="2.0" -+ - NO_PKG_FILES = \ - xulrunner-config \ - regchrome* \ diff --git a/testing/avahi/PKGBUILD b/testing/avahi/PKGBUILD deleted file mode 100644 index 63f079778..000000000 --- a/testing/avahi/PKGBUILD +++ /dev/null @@ -1,75 +0,0 @@ -# $Id: PKGBUILD 126809 2011-06-07 12:12:31Z bisson $ -# Contributor: Douglas Soares de Andrade -# Maintainer: Gaetan Bisson - -pkgname=avahi -pkgver=0.6.30 -pkgrel=3 -pkgdesc='A multicast/unicast DNS-SD framework' -arch=('i686' 'x86_64') -url='http://www.avahi.org/' -license=('LGPL') -depends=('expat' 'libdaemon' 'glib2' 'dbus' 'libcap' 'gdbm') -optdepends=('gtk3: avahi-discover-standalone, bshell, bssh, bvnc' - 'gtk2: gtk2 bindings' - 'qt3: qt3 bindings' - 'qt: qt bindings' - 'pygtk: avahi-bookmarks, avahi-discover' - 'twisted: avahi-bookmarks' - 'mono: mono bindings' - 'dbus-python: avahi-discover' - 'nss-mdns: NSS support for mDNS') -makedepends=('qt' 'qt3' 'pygtk' 'mono' 'intltool' 'dbus-python' - 'gtk-sharp-2' 'gobject-introspection' 'gtk3') -backup=(etc/avahi/avahi-daemon.conf etc/avahi/services/{sftp-,}ssh.service) -install=avahi.install -conflicts=('howl' 'mdnsresponder') -provides=('howl' 'mdnsresponder') -replaces=('howl' 'mdnsresponder') -options=('!libtool') -source=("http://www.avahi.org/download/avahi-${pkgver}.tar.gz" - 'avahi-daemon-dbus.patch' - 'gnome-nettool.png') -sha1sums=('5b77443537600a00770e4c77e3c443eeb5861d06' - '36735096a6eeb3a4012fe14f875259ee8558e220' - 'cf56387c88aed246b9f435efc182ef44de4d52f3') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - sed -i 's/netdev/network/g' avahi-daemon/avahi-dbus.conf - patch -p1 -i "../avahi-daemon-dbus.patch" - - # pygtk requires python2; make it explicit in case other python are installed: FS#21865 - PYTHON=python2 \ - PKG_CONFIG_PATH=/opt/qt/lib/pkgconfig \ - ./configure \ - --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --disable-static \ - --disable-monodoc \ - --disable-doxygen-doc \ - --disable-xmltoman \ - --enable-compat-libdns_sd \ - --enable-compat-howl \ - --with-distro=archlinux \ - --with-avahi-priv-access-group=network \ - --with-autoipd-user=avahi \ - --with-autoipd-group=avahi \ - --with-systemdsystemunitdir=/lib/systemd/system # See FS#20999 - - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -D -m 644 ../gnome-nettool.png "${pkgdir}"/usr/share/pixmaps/gnome-nettool.png - - cd "${pkgdir}" - sed -i '1c #!/usr/bin/python2' usr/bin/avahi-{bookmarks,discover} - # howl and mdnsresponder compatability - (cd usr/include; ln -s avahi-compat-libdns_sd/dns_sd.h dns_sd.h; ln -s avahi-compat-howl howl) - (cd usr/lib/pkgconfig; ln -s avahi-compat-howl.pc howl.pc) -} diff --git a/testing/avahi/avahi-daemon-dbus.patch b/testing/avahi/avahi-daemon-dbus.patch deleted file mode 100644 index ef7272082..000000000 --- a/testing/avahi/avahi-daemon-dbus.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -aur old/initscript/archlinux/avahi-daemon.in new/initscript/archlinux/avahi-daemon.in ---- old/initscript/archlinux/avahi-daemon.in 2010-06-29 05:30:35.000000000 +0200 -+++ new/initscript/archlinux/avahi-daemon.in 2011-06-07 12:20:03.237701492 +0200 -@@ -33,6 +33,7 @@ - - case "$1" in - start) -+ ck_daemon dbus && /etc/rc.d/dbus start - stat_busy "Starting $DESC" - $DAEMON -D > /dev/null 2>&1 - if [ $? -gt 0 ]; then diff --git a/testing/avahi/avahi.install b/testing/avahi/avahi.install deleted file mode 100644 index 7c75c3dd4..000000000 --- a/testing/avahi/avahi.install +++ /dev/null @@ -1,21 +0,0 @@ -post_install() { - getent group avahi &>/dev/null || groupadd -r -g 84 avahi >/dev/null - getent passwd avahi &>/dev/null || useradd -r -u 84 -g avahi -d / -s /bin/false -c avahi avahi >/dev/null - - cat < The following daemons may be added to DAEMONS in /etc/rc.conf: -==> avahi-daemon: the mdns responder, you probably want this. -==> dbus needs to be running when you start it. -==> avahi-dnsconfd: daemon used for peer-to-peer automatic dns -==> configuration on dhcp-less networks. - -==> To use some of the client applications you will have to install python. -==> In addition, pygtk is required for the graphical ones and -==> twisted for avahi-bookmarks. -EOF -} - -post_remove() { - getent passwd avahi &>/dev/null && userdel avahi >/dev/null - getent group avahi &>/dev/null && groupdel avahi >/dev/null -} diff --git a/testing/avahi/gnome-nettool.png b/testing/avahi/gnome-nettool.png deleted file mode 100644 index 227d0678a..000000000 Binary files a/testing/avahi/gnome-nettool.png and /dev/null differ diff --git a/testing/glib2/PKGBUILD b/testing/glib2/PKGBUILD deleted file mode 100644 index 93729d3a3..000000000 --- a/testing/glib2/PKGBUILD +++ /dev/null @@ -1,48 +0,0 @@ -# $Id: PKGBUILD 126555 2011-06-06 09:24:36Z ibiru $ -# Maintainer: Jan de Groot - -pkgname=glib2 -pkgver=2.28.8 -pkgrel=1 -pkgdesc="Common C routines used by GTK+ and other libs" -url="http://www.gtk.org/" -arch=(i686 x86_64) -license=('LGPL') -depends=('pcre>=8.12') -makedepends=('pkgconfig' 'python2') -checkdepends=('pygobject' 'dbus-python') -options=('!libtool' '!docs') -source=(http://ftp.gnome.org/pub/GNOME/sources/glib/2.28/glib-${pkgver}.tar.xz - glib2.sh - glib2.csh) -sha256sums=('4d7ca95dbde8e8f60ab428c765b0dbb8a44be9eb9316491803ce5ee7b4748353' - '9456872cdedcc639fb679448d74b85b0facf81033e27157d2861b991823b5a2a' - '8d5626ffa361304ad3696493c0ef041d0ab10c857f6ef32116b3e2878ecf89e3') - -build() { - cd "${srcdir}/glib-${pkgver}" - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --with-pcre=system \ - --disable-fam - make -} - -package() { - cd "${srcdir}/glib-${pkgver}" - make DESTDIR="${pkgdir}" install - - install -d "${pkgdir}/etc/profile.d" - install -m755 "${srcdir}/glib2.sh" "${pkgdir}/etc/profile.d/" - install -m755 "${srcdir}/glib2.csh" "${pkgdir}/etc/profile.d/" - - for _i in "${pkgdir}/etc/bash_completion.d/"*; do - chmod -x "${_i}" - done -} - -check() { - cd "${srcdir}/glib-${pkgver}" - sed -i 's|!/usr/bin/env python|!/usr/bin/env python2|' gio/tests/gdbus-testserver.py - make -k check || true -} diff --git a/testing/glib2/glib2.csh b/testing/glib2/glib2.csh deleted file mode 100644 index 7aa3a2ffa..000000000 --- a/testing/glib2/glib2.csh +++ /dev/null @@ -1 +0,0 @@ -setenv G_BROKEN_FILENAMES 1 diff --git a/testing/glib2/glib2.sh b/testing/glib2/glib2.sh deleted file mode 100644 index 96a056e1e..000000000 --- a/testing/glib2/glib2.sh +++ /dev/null @@ -1 +0,0 @@ -export G_BROKEN_FILENAMES=1 diff --git a/testing/gtk3/PKGBUILD b/testing/gtk3/PKGBUILD deleted file mode 100644 index bd05b7cdd..000000000 --- a/testing/gtk3/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 126728 2011-06-06 21:19:26Z ibiru $ -# Maintainer: Ionut Biru - -pkgname=gtk3 -pkgver=3.0.11 -pkgrel=1 -pkgdesc="The GTK+ Toolkit (v3)" -arch=('i686' 'x86_64') -url="http://www.gtk.org/" -install=gtk3.install -depends=('atk' 'cairo' 'gtk-update-icon-cache' 'gnutls' 'krb5' 'libcups' 'libxcursor' 'libxinerama' 'libxrandr' 'libxi' 'libxcomposite' 'libxdamage' 'pango' 'shared-mime-info') -makedepends=('gobject-introspection') -options=('!libtool' '!docs') -backup=(etc/gtk-3.0/settings.ini) -license=('LGPL') -source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/3.0/gtk+-${pkgver}.tar.xz - settings.ini) -sha256sums=('e2e38b316c4657df0cf376c3b6aad63158a9068c557ad41033a677f29967001b' - 'c214d3dcdcadda3d642112287524ab3e526ad592b70895c9f3e3733c23701621') - -build() { - cd "${srcdir}/gtk+-${pkgver}" - CXX=/bin/false ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --enable-gtk2-dependency \ - --disable-schemas-compile - make -} - -package() { - cd "${srcdir}/gtk+-${pkgver}" - make DESTDIR="${pkgdir}" install - - install -Dm644 "${srcdir}/settings.ini" "${pkgdir}/etc/gtk-3.0/settings.ini" -} diff --git a/testing/gtk3/gtk3.install b/testing/gtk3/gtk3.install deleted file mode 100644 index cd8965d1f..000000000 --- a/testing/gtk3/gtk3.install +++ /dev/null @@ -1,15 +0,0 @@ -post_install() { - usr/bin/gtk-query-immodules-3.0 --update-cache - usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas -} - -post_upgrade() { - post_install -} - -pre_remove() { - rm -f usr/lib/gtk-3.0/3.0.0/immodules.cache -} -post_remove() { - usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas -} diff --git a/testing/gtk3/settings.ini b/testing/gtk3/settings.ini deleted file mode 100644 index 039000d38..000000000 --- a/testing/gtk3/settings.ini +++ /dev/null @@ -1,2 +0,0 @@ -[Settings] -gtk-fallback-icon-theme = gnome diff --git a/testing/iproute2/PKGBUILD b/testing/iproute2/PKGBUILD deleted file mode 100644 index f9479bd84..000000000 --- a/testing/iproute2/PKGBUILD +++ /dev/null @@ -1,50 +0,0 @@ -# $Id: PKGBUILD 126335 2011-06-04 22:38:16Z tomegun $ -# Maintainer: Ronald van Haren -# Contributor: Judd Vinet - -pkgname=iproute2 -pkgver=2.6.38 -pkgrel=3 -pkgdesc="IP Routing Utilities" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://www.linux-foundation.org/en/Net:Iproute2" -depends=('perl') -makedepends=('linux-atm') -optdepends=('linux-atm: ATM support') -provides=('iproute') -conflicts=('iproute') -replaces=('iproute') -options=('!makeflags') -backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_protos' \ - 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables') -source=(http://devresources.linux-foundation.org/dev/iproute2/download/iproute2-${pkgver}.tar.bz2 - 'iproute2-fhs.patch') -sha1sums=('e9f6d457a06866a2a20a6cba6b3a039b2ec3e14a' - '2416b11252364d7a6c742eabb4a6924a75637a46') - -build() { - cd $srcdir/iproute2-${pkgver} - - # set correct fhs structure - patch -Np1 -i ${srcdir}/iproute2-fhs.patch - - ./configure - - make -} - -package() { - cd $srcdir/iproute2-${pkgver} - - make DESTDIR=$pkgdir install - - # allow loopback to be started before /usr is mounted, this may not be supported in the future - mkdir -p ${pkgdir}/sbin - mv ${pkgdir}/usr/sbin/ip ${pkgdir}/sbin/ip - ln -s /sbin/ip ${pkgdir}/usr/sbin/ip - - # libnetlink isn't installed, install it FS#19385 - install -Dm644 include/libnetlink.h ${pkgdir}/usr/include/libnetlink.h - install -Dm644 lib/libnetlink.a ${pkgdir}/usr/lib/libnetlink.a -} diff --git a/testing/iproute2/iproute2-fhs.patch b/testing/iproute2/iproute2-fhs.patch deleted file mode 100644 index 2608414db..000000000 --- a/testing/iproute2/iproute2-fhs.patch +++ /dev/null @@ -1,84 +0,0 @@ -diff -Naur iproute2.old/Makefile iproute2-2.6.29/Makefile ---- iproute2.old/Makefile 2009-11-11 22:05:21.251407668 +0100 -+++ iproute2-2.6.29/Makefile 2009-11-11 22:07:09.891833516 +0100 -@@ -1,11 +1,12 @@ - DESTDIR=/usr/ - ROOTDIR=$(DESTDIR) - LIBDIR=/usr/lib/ --SBINDIR=/sbin -+SBINDIR=/usr/sbin - CONFDIR=/etc/iproute2 --DOCDIR=/share/doc/iproute2 --MANDIR=/share/man -+DOCDIR=/usr/share/doc/iproute2 -+MANDIR=/usr/share/man - ARPDDIR=/var/lib/arpd -+SHAREDIR=/usr/share - - # Path to db_185.h include - DBM_INCLUDE:=$(ROOTDIR)/usr/include -diff -Naur iproute2.old/tc/tc_util.c iproute2-2.6.29/tc/tc_util.c ---- iproute2.old/tc/tc_util.c 2009-11-11 22:05:21.298076943 +0100 -+++ iproute2-2.6.29/tc/tc_util.c 2009-11-11 22:09:32.865152646 +0100 -@@ -24,8 +24,8 @@ - #include "utils.h" - #include "tc_util.h" - --#ifndef LIBDIR --#define LIBDIR "/usr/lib/" -+#ifndef SHAREDIR -+#define SHAREDIR "/usr/share" - #endif - - const char *get_tc_lib(void) -@@ -34,7 +34,7 @@ - - lib_dir = getenv("TC_LIB_DIR"); - if (!lib_dir) -- lib_dir = LIBDIR "/tc/"; -+ lib_dir = SHAREDIR "/tc/"; - - return lib_dir; - } -diff -Naur iproute2.old/netem/Makefile iproute2-2.6.35/netem/Makefile ---- iproute2.old/netem/Makefile 2010-08-06 11:30:48.640940183 +0200 -+++ iproute2-2.6.35/netem/Makefile 2010-08-06 11:32:34.210908892 +0200 -@@ -20,9 +20,9 @@ - $(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm - - install: all -- mkdir -p $(DESTDIR)$(LIBDIR)/tc -+ mkdir -p $(DESTDIR)$(SHAREDIR)/tc - for i in $(DISTDATA); \ -- do install -m 644 $$i $(DESTDIR)$(LIBDIR)/tc; \ -+ do install -m 644 $$i $(DESTDIR)$(SHAREDIR)/tc; \ - done - - clean: -diff -Naur iproute2.old/tc/Makefile iproute2-2.6.35/tc/Makefile ---- iproute2.old/tc/Makefile 2010-08-06 11:48:35.607472252 +0200 -+++ iproute2-2.6.35/tc/Makefile 2010-08-06 11:49:36.977473380 +0200 -@@ -99,18 +99,11 @@ - $(AR) rcs $@ $(TCLIB) - - install: all -- mkdir -p $(MODDESTDIR) -- install -m 0755 tc $(DESTDIR)$(SBINDIR) -- for i in $(TCSO); \ -- do install -m 755 $$i $(MODDESTDIR); \ -- done -- if [ ! -f $(MODDESTDIR)/m_ipt.so ]; then \ -- if [ -f $(MODDESTDIR)/m_xt.so ]; \ -- then ln -s m_xt.so $(MODDESTDIR)/m_ipt.so ; \ -- elif [ -f $(MODDESTDIR)/m_xt_old.so ]; \ -- then ln -s m_xt_old.so $(MODDESTDIR)/m_ipt.so ; \ -- fi; \ -- fi -+ mkdir -p $(DESTDIR)$(LIBDIR)/tc -+ install -m 0755 tc $(DESTDIR)$(SBINDIR) -+ for i in $(TCSO); \ -+ do install -m 755 $$i $(DESTDIR)$(LIBDIR)/tc; \ -+ done - - clean: - rm -f $(TCOBJ) $(TCLIB) libtc.a tc *.so emp_ematch.yacc.h; \ diff --git a/testing/jfsutils/PKGBUILD b/testing/jfsutils/PKGBUILD deleted file mode 100644 index f0342bad0..000000000 --- a/testing/jfsutils/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 126948 2011-06-08 20:07:37Z tpowa $ -# Maintainer: Tobias Powalowski -pkgname=jfsutils -pkgver=1.1.15 -pkgrel=2 -pkgdesc="JFS filesystem utilities" -arch=(i686 x86_64) -url="http://jfs.sourceforge.net" -license=('GPL') -groups=('base') -depends=('util-linux-ng') -source=(http://jfs.sourceforge.net/project/pub/${pkgname}-${pkgver}.tar.gz) -md5sums=('8809465cd48a202895bc2a12e1923b5d') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --sbindir=/sbin - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR=${pkgdir} install -} diff --git a/testing/man-db/1361_1360.diff b/testing/man-db/1361_1360.diff deleted file mode 100644 index c93856980..000000000 --- a/testing/man-db/1361_1360.diff +++ /dev/null @@ -1,25 +0,0 @@ -=== modified file 'src/straycats.c' ---- src/straycats.c 2011-01-10 20:08:22 +0000 -+++ src/straycats.c 2011-06-04 06:34:51 +0000 -@@ -177,6 +177,7 @@ - char *lang, *page_encoding; - char *mandir_base; - pipecmd *col_cmd; -+ char *col_locale; - char *fullpath; - - /* we have a straycat. Need to filter it and get -@@ -226,6 +227,12 @@ - col_cmd = pipecmd_new_argstr - (get_def_user ("col", COL)); - pipecmd_arg (col_cmd, "-bx"); -+ col_locale = find_charset_locale ("UTF-8"); -+ if (col_locale) { -+ pipecmd_setenv (col_cmd, "LC_CTYPE", -+ col_locale); -+ free (col_locale); -+ } - pipeline_command (decomp, col_cmd); - - fullpath = canonicalize_file_name (catdir); - diff --git a/testing/man-db/PKGBUILD b/testing/man-db/PKGBUILD deleted file mode 100644 index 25675079f..000000000 --- a/testing/man-db/PKGBUILD +++ /dev/null @@ -1,60 +0,0 @@ -# $Id: PKGBUILD 126294 2011-06-04 09:41:54Z andyrtr $ -# Maintainer: Andreas Radke -# Contributor: Sergej Pupykin - -pkgname=man-db -pkgver=2.6.0.2 -pkgrel=2 -pkgdesc="A utility for reading man pages" -arch=('i686' 'x86_64') -url="http://www.nongnu.org/man-db/" -license=('GPL' 'LGPL') -groups=('base') -depends=( 'bash' 'gdbm' 'zlib' 'groff' 'libpipeline') -optdepends=('less' 'gzip') -backup=('etc/man_db.conf' - 'etc/cron.daily/man-db') -conflicts=('man') -provides=('man') -replaces=('man') -install=${pkgname}.install -source=(http://savannah.nongnu.org/download/man-db/$pkgname-$pkgver.tar.gz - 1361_1360.diff - #http://launchpad.net/man-db/main/${pkgver}/+download/${pkgname}-${pkgver}.tar.gz - convert-mans man-db.cron.daily) -options=('!libtool') -md5sums=('2b41c96efec032d2b74ccbf2e401f93e' - '08b76b1f924c5493a280b79fc0aebde4' - '2b7662a7d5b33fe91f9f3e034361a2f6' - 'd30c39ae47560304471b5461719e0f03') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - # https://bugs.archlinux.org/task/18722 - patch -Np0 -i $srcdir/1361_1360.diff - ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib \ - --with-db=gdbm --disable-setuid --enable-mandirs=GNU \ - --with-sections="1 n l 8 3 0 2 5 4 9 6 7" - make -} - -check() { - cd ${srcdir}/${pkgname}-${pkgver} - make check -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - - # part of groff pkg - rm -f ${pkgdir}/usr/bin/zsoelim - - # script from LFS to convert manpages, see - # http://www.linuxfromscratch.org/lfs/view/6.4/chapter06/man-db.html - install -D -m755 ${srcdir}/convert-mans ${pkgdir}/usr/bin/convert-mans - - #install whatis cron script - install -D -m744 ${srcdir}/man-db.cron.daily ${pkgdir}/etc/cron.daily/man-db -} - diff --git a/testing/man-db/convert-mans b/testing/man-db/convert-mans deleted file mode 100644 index 58a0224b0..000000000 --- a/testing/man-db/convert-mans +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -e -FROM="$1" -TO="$2" -shift ; shift -while [ $# -gt 0 ] -do - FILE="$1" - shift - iconv -f "$FROM" -t "$TO" "$FILE" >.tmp.iconv - mv .tmp.iconv "$FILE" -done diff --git a/testing/man-db/man-db.cron.daily b/testing/man-db/man-db.cron.daily deleted file mode 100755 index 53e66e1e9..000000000 --- a/testing/man-db/man-db.cron.daily +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh - -# nicenesses range from -20 (most favorable scheduling) to 19 (least favorable) -NICE=19 - -# 0 for none, 1 for real time, 2 for best-effort, 3 for idle -IONICE_CLASS=2 - -# 0-7 (for IONICE_CLASS 1 and 2 only), 0=highest, 7=lowest -IONICE_PRIORITY=7 - -UPDATEMANDB="/usr/bin/mandb --quiet" - -# Update the "whatis" database -#/usr/sbin/makewhatis -u -w - -# taken from Debian -# man-db cron daily -set -e - -if ! [ -d /var/cache/man ]; then - # Recover from deletion, per FHS. - mkdir -p /var/cache/man - chmod 755 /var/cache/man -fi - -# regenerate man database - -if [ -x /usr/bin/nice ]; then - UPDATEMANDB="/usr/bin/nice -n ${NICE:-19} ${UPDATEMANDB}" -fi - -if [ -x /usr/bin/ionice ]; then - UPDATEMANDB="/usr/bin/ionice -c ${IONICE_CLASS:-2} -n ${IONICE_PRIORITY:-7} ${UPDATEMANDB}" -fi - -${UPDATEMANDB} - -exit 0 diff --git a/testing/man-db/man-db.install b/testing/man-db/man-db.install deleted file mode 100644 index f6f0f27a6..000000000 --- a/testing/man-db/man-db.install +++ /dev/null @@ -1,22 +0,0 @@ -post_install() { - echo "it's recommended to create an initial" - echo "database running as root:" - echo "\"/usr/bin/mandb --quiet\"" -} - -post_upgrade() { - if [ "`vercmp $2 2.5.3-2`" -lt 0 ]; then - echo "systemuser \"man\" is no more required" - echo "run \"userdel man\". please also" - echo "chown root:root /var/cache/man" - fi - # force database rebuild to get rid off badly imported pages - if [ "`vercmp $2 2.6.0.2`" -lt 0 ]; then - echo "(re)building database..." - mandb -c --quiet - fi -} - -post_remove() { - rm -rf /var/cache/man -} diff --git a/testing/nx-common/NXproto.h.64bit.diff b/testing/nx-common/NXproto.h.64bit.diff deleted file mode 100644 index ac326ebcd..000000000 --- a/testing/nx-common/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 - #include - -+/* -+ 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/testing/nx-common/PKGBUILD b/testing/nx-common/PKGBUILD deleted file mode 100644 index 85fc78ce6..000000000 --- a/testing/nx-common/PKGBUILD +++ /dev/null @@ -1,54 +0,0 @@ -# $Id: PKGBUILD 126698 2011-06-06 18:56:52Z andyrtr $ -# Maintainer: Tobias Powalowski -# Contributed: eliott , Andre Naumann - -pkgname=nx-common -pkgver=3.5.0 -pkgrel=1 -pkgdesc="NoMachine NX common package for client and server" -arch=('i686' 'x86_64') -license=('GPL') -url="http://nomachine.com/" -depends=('libjpeg-turbo>=1.1.1' 'libpng>=1.4.5' 'openssl>=1.0.0' 'gcc-libs' 'bash') -makedepends=('xorg-server-devel') -source=( #Compression libs and proxy sources - http://64.34.161.181/download/$pkgver/sources/nxcomp-$pkgver-1.tar.gz - http://64.34.161.181/download/$pkgver/sources/nxcompsh-$pkgver-1.tar.gz - http://64.34.161.181/download/$pkgver/sources/nxssh-$pkgver-1.tar.gz - nxcompsh-gcc43.patch) -options=(!libtool) -md5sums=('30a182146479004ec63b8a1b9adccfcf' - '84ade443b79ea079380b754aba9d392e' - '9f13262bc0bf5187fcc7e22924955bc7' - 'b6c279654dac421fc3dd1a27d66ff53c') - -build() { - # nxcomp - cd ${srcdir}/nxcomp - ./configure --prefix=/opt/NX - make - # nxcompsh - cd ${srcdir}/nxcompsh - patch -Np1 -i ${srcdir}/nxcompsh-gcc43.patch - ./configure --prefix=/opt/NX - make - # nxssh - cd ${srcdir}/nxssh - ./configure --prefix=/opt/NX - make -} - -package() { - mkdir -p ${pkgdir}/opt/NX/bin - mkdir -p ${pkgdir}/opt/NX/lib - - # nxcomp - cd ${srcdir}/nxcomp - cp -a libXcomp.so* ${pkgdir}/opt/NX/lib - # nxcompsh - cd ${srcdir}/nxcompsh - cp -a libXcompsh.so* ${pkgdir}/opt/NX/lib - # nxssh - cd ${srcdir}/nxssh - install -D -m755 nxssh ${pkgdir}/opt/NX/bin/nxssh -} diff --git a/testing/nx-common/nxcompsh-gcc43.patch b/testing/nx-common/nxcompsh-gcc43.patch deleted file mode 100644 index 681a0dab5..000000000 --- a/testing/nx-common/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 -+#include - --#include --#include -+#include -+#include -+ -+using namespace std; - - // - // Error handling macros. - diff --git a/testing/nxserver/NXproto.h.64bit.diff b/testing/nxserver/NXproto.h.64bit.diff deleted file mode 100644 index ac326ebcd..000000000 --- a/testing/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 - #include - -+/* -+ 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/testing/nxserver/PKGBUILD b/testing/nxserver/PKGBUILD deleted file mode 100644 index 99b5bc2aa..000000000 --- a/testing/nxserver/PKGBUILD +++ /dev/null @@ -1,92 +0,0 @@ -# $Id: PKGBUILD 126704 2011-06-06 19:21:37Z andyrtr $ -# Maintainer: Tobias Powalowski -# Contributed: eliott , Andre Naumann - -pkgname=nxserver -pkgver=3.5.0 -pkgrel=1 -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.4.0' '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-1.tar.gz -http://64.34.161.181/download/$pkgver/sources/nxwin-$pkgver-1.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-1.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-2.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) -options=(!libtool) -md5sums=('54ac7dd8806928b991b0819cf76b37dd' - '271cef5b5345b8de77b0f6a0ce1a3b0d' - 'cf38ec1e5a5f6453946cd387c14f2684' - '30a182146479004ec63b8a1b9adccfcf' - '7b0f60d5a3c54f22da7d81aac055836e' - '84ade443b79ea079380b754aba9d392e' - '488bb4d9b8e9f82dc272b4e6e9c57d30' - 'abde2ccc33e31fc695031c2cfb60f3dd' - '90a762dd9eb19c8c97876ad837923857' - 'b6c279654dac421fc3dd1a27d66ff53c') - -build() { - cd ${srcdir} - - # nxcomp - cd ${srcdir}/nxcomp - ./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/testing/nxserver/nxcompsh-gcc43.patch b/testing/nxserver/nxcompsh-gcc43.patch deleted file mode 100644 index 681a0dab5..000000000 --- a/testing/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 -+#include - --#include --#include -+#include -+#include -+ -+using namespace std; - - // - // Error handling macros. - diff --git a/testing/pidgin/nm09-pidgin.patch b/testing/pidgin/nm09-pidgin.patch deleted file mode 100644 index 1c2471d1f..000000000 --- a/testing/pidgin/nm09-pidgin.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -up pidgin-2.7.10/libpurple/network.c.foo pidgin-2.7.10/libpurple/network.c ---- pidgin-2.7.10/libpurple/network.c.foo 2011-03-10 02:21:43.920933267 -0600 -+++ pidgin-2.7.10/libpurple/network.c 2011-03-10 02:23:11.466838793 -0600 -@@ -71,6 +71,10 @@ - #include - #include - -+#if !defined(NM_CHECK_VERSION) -+#define NM_CHECK_VERSION(x,y,z) 0 -+#endif -+ - static DBusGConnection *nm_conn = NULL; - static DBusGProxy *nm_proxy = NULL; - static DBusGProxy *dbus_proxy = NULL; -@@ -863,7 +867,13 @@ nm_update_state(NMState state) - - switch(state) - { -+#if NM_CHECK_VERSION(0,8,992) -+ case NM_STATE_CONNECTED_LOCAL: -+ case NM_STATE_CONNECTED_SITE: -+ case NM_STATE_CONNECTED_GLOBAL: -+#else - case NM_STATE_CONNECTED: -+#endif - /* Call res_init in case DNS servers have changed */ - res_init(); - /* update STUN IP in case we it changed (theoretically we could -@@ -880,6 +890,9 @@ nm_update_state(NMState state) - case NM_STATE_ASLEEP: - case NM_STATE_CONNECTING: - case NM_STATE_DISCONNECTED: -+#if NM_CHECK_VERSION(0,8,992) -+ case NM_STATE_DISCONNECTING: -+#endif - if (prev != NM_STATE_CONNECTED && prev != NM_STATE_UNKNOWN) - break; - if (ui_ops != NULL && ui_ops->network_disconnected != NULL) diff --git a/testing/pixman/PKGBUILD b/testing/pixman/PKGBUILD deleted file mode 100644 index bbc0360f6..000000000 --- a/testing/pixman/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 124049 2011-05-16 10:05:58Z jgc $ -# Maintainer: Jan de Groot -# Contributor: Alexander Baldeck - -pkgname=pixman -pkgver=0.22.0 -pkgrel=1 -pkgdesc="Pixman library" -arch=(i686 x86_64) -url="http://xorg.freedesktop.org" -license=('custom') -depends=('glibc') -options=('!libtool') -source=(http://xorg.freedesktop.org/releases/individual/lib/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('d24ea233755d7dce9f0d93136ad99fba8d4e4fa0') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --disable-static - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" -} - -check() { - cd "${srcdir}/${pkgname}-${pkgver}" - make check -} diff --git a/testing/udev/81-arch.rules b/testing/udev/81-arch.rules deleted file mode 100644 index cd4e3e9b4..000000000 --- a/testing/udev/81-arch.rules +++ /dev/null @@ -1,83 +0,0 @@ -# Udev rules for Archlinux by Tobias Powalowski -# do not edit this file, it will be overwritten on update -# -# There are a number of modifiers that are allowed to be used in some -# of the different fields. They provide the following subsitutions: -# -# %n the "kernel number" of the device. -# For example, 'sda3' has a "kernel number" of '3' -# %k the kernel name for the device. -# %M the kernel major number for the device -# %m the kernel minor number for the device -# %b the bus id for the device -# %c the string returned by the PROGRAM -# %s{filename} the content of a sysfs attribute. -# %% the '%' char itself. -# -# There are a number of modifiers that are allowed to be used in some of the -# fields. See the udev man page for a full description of them. -# global stuff -# - -# permission for sg devices -KERNEL=="sg[0-9]*", ATTRS{type}!="3|6", GROUP="disk", MODE="0660" - -# permissions for IDE CD devices -SUBSYSTEMS=="ide", KERNEL=="hd[a-z]", ATTR{removable}=="1", ATTRS{media}=="cdrom*", GROUP="optical" - -# permissions for SCSI CD devices -SUBSYSTEMS=="scsi", KERNEL=="sr[0-9]*", ATTRS{type}=="5", SYMLINK+="scd%n", GROUP="optical" -SUBSYSTEMS=="scsi", KERNEL=="sg[0-9]*", ATTRS{type}=="5", GROUP="optical" - -# permissions for removable devices like cardreaders or sticks -KERNEL=="sd*", ATTRS{scsi_level}=="3", ATTRS{type}=="0", GROUP="storage" - -# permissions for firewire external drives -KERNEL=="sd*", ATTRS{scsi_level}=="5", GROUP="storage" - -# permissions for usb to scsi external adapters -KERNEL=="sd*", ATTRS{scsi_level}=="3", ATTRS{type}=="7", GROUP="storage" - -# permissions for ide storage like pcmcia card readers -ACTION!="add", GOTO="pcmcia_end" -SUBSYSTEM!="block", GOTO="pcmcia_end" -KERNEL=="hd*[!0-9]", IMPORT{program}="ata_id --export $tempnode" -KERNEL=="hd*", IMPORT{parent}=="ID_*" -KERNEL=="hd*", ENV{ID_TYPE}=="generic", GROUP="storage" -LABEL="pcmcia_end" - -# permissions for SCSI scanners -SUBSYSTEMS=="scsi", KERNEL=="sg[0-9]*", ATTRS{type}=="6", GROUP="scanner" - -# mem -KERNEL=="ram0", SYMLINK+="ramdisk" -KERNEL=="ram1", SYMLINK+="ram" - -# video4linux - -KERNEL=="vbi0", SYMLINK+="vbi" -KERNEL=="radio0", SYMLINK+="radio" -KERNEL=="radio[0-9]*", GROUP="video" -KERNEL=="video0", SYMLINK+="video" -KERNEL=="vtx0", SYMLINK+="vtx" - -# video devices -### xorg resets those permissions, adjust your xorg.conf! -KERNEL=="3dfx*", GROUP="video" -KERNEL=="fb[0-9]*", GROUP="video" - -# misc -KERNEL=="sgi_fetchop", MODE="0666" -KERNEL=="sonypi", MODE="0666" - -# USB devices -KERNEL=="legousbtower*", MODE="0666" - -# kbd devices -KERNEL=="kbd", MODE="0664" - -# miscellaneous -KERNEL=="rtc|rtc0", GROUP="audio", MODE="0664" -####################################### -# Permissions and Symlinks - end -####################################### diff --git a/testing/udev/PKGBUILD b/testing/udev/PKGBUILD deleted file mode 100644 index b80fd7707..000000000 --- a/testing/udev/PKGBUILD +++ /dev/null @@ -1,101 +0,0 @@ -# $Id: PKGBUILD 126202 2011-06-02 14:49:12Z tomegun $ -# Maintainer: Aaron Griffin -# Maintainer: Tobias Powalowski -# Maintainer: Thomas Bächler -# Maintainer: Tom Gundersen - -pkgbase="udev" -pkgname=('udev' 'udev-compat') -pkgver=171 -pkgrel=2 -arch=(i686 x86_64) -url="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html" -license=('GPL') -groups=('base') -# older initscripts versions required start_udev -options=(!makeflags !libtool) -makedepends=('glibc' 'coreutils' 'util-linux' 'pciutils' 'libusb-compat' 'glib2' 'kernel26' 'gperf' 'libxslt' 'gobject-introspection') -source=(http://www.kernel.org/pub/linux/utils/kernel/hotplug/$pkgbase-$pkgver.tar.bz2 - 81-arch.rules - static-audio-nodes-group.patch - static-nodes-permissions.patch) - -build() { - cd $srcdir/$pkgbase-$pkgver - # fix https://bugs.archlinux.org/task/24362 (will be in udev-172) - patch -Np1 -i ../static-audio-nodes-group.patch - patch -Np1 -i ../static-nodes-permissions.patch - ./configure --sysconfdir=/etc --with-rootlibdir=/lib --libexecdir=/lib/udev\ - --sbindir=/sbin --with-systemdsystemunitdir=/lib/systemd/system\ - --disable-rule-generator - make -} - -package_udev() { - pkgdesc="The userspace dev tools (udev)" - depends=('glibc' 'coreutils' 'util-linux' 'libusb-compat' 'glib2' - 'module-init-tools>=3.11' 'pciutils') - install=udev.install - backup=(etc/udev/udev.conf - etc/modprobe.d/framebuffer_blacklist.conf) - conflicts=('pcmcia-cs' 'hotplug' 'initscripts<2009.07') - replaces=('devfsd') - - cd $srcdir/$pkgbase-$pkgver - make DESTDIR=${pkgdir} install - # Install our rule for permissions and symlinks - install -D -m644 $srcdir/81-arch.rules $pkgdir/lib/udev/rules.d/81-arch.rules - - # create framebuffer blacklist - mkdir -p $pkgdir/etc/modprobe.d/ - for mod in $(find /lib/modules/*/kernel/drivers/video -name '*fb.ko.gz' -exec basename {} .ko.gz \;); do - echo "blacklist $mod" - done | sort -u > $pkgdir/etc/modprobe.d/framebuffer_blacklist.conf - - # create static devices in /lib/udev/devices/ - mkdir ${pkgdir}/lib/udev/devices/pts - mkdir ${pkgdir}/lib/udev/devices/shm - - mknod -m 0600 ${pkgdir}/lib/udev/devices/console c 5 1 - mknod -m 0666 ${pkgdir}/lib/udev/devices/null c 1 3 - mknod -m 0660 ${pkgdir}/lib/udev/devices/zero c 1 5 - mknod -m 0666 ${pkgdir}/lib/udev/devices/kmsg c 1 11 - - ln -snf /proc/self/fd ${pkgdir}/lib/udev/devices/fd - ln -snf /proc/self/fd/0 ${pkgdir}/lib/udev/devices/stdin - ln -snf /proc/self/fd/1 ${pkgdir}/lib/udev/devices/stdout - ln -snf /proc/self/fd/2 ${pkgdir}/lib/udev/devices/stderr - ln -snf /proc/kcore ${pkgdir}/lib/udev/devices/core - - # these static devices are created for convenience, to autoload the modules if necessary - # /dev/loop0 - mknod -m 0660 ${pkgdir}/lib/udev/devices/loop0 b 7 0 - chgrp disk ${pkgdir}/lib/udev/devices/loop0 - # /dev/net/tun - mkdir ${pkgdir}/lib/udev/devices/net - mknod -m 0666 ${pkgdir}/lib/udev/devices/net/tun c 10 200 - # /dev/fuse - mknod -m 0666 ${pkgdir}/lib/udev/devices/fuse c 10 229 - # /dev/ppp - mknod -m 0600 ${pkgdir}/lib/udev/devices/ppp c 108 0 - - # Replace dialout/tape/cdrom group in rules with uucp/storage/optical group - for i in $pkgdir/lib/udev/rules.d/*.rules; do - sed -i -e 's#GROUP="dialout"#GROUP="uucp"#g; - s#GROUP="tape"#GROUP="storage"#g; - s#GROUP="cdrom"#GROUP="optical"#g' $i - done -} - -package_udev-compat() { - pkgdesc="The userspace dev tools (udev) - additional rules for older kernels" - depends=('udev') - groups=('') - cd $srcdir/$pkgbase-$pkgver - install -d -m755 ${pkgdir}/lib/${pkgbase}/rules.d - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/rules/misc/30-kernel-compat.rules ${pkgdir}/lib/udev/rules.d/30-kernel-compat.rules -} -md5sums=('bdf4617284be2ecac11767437417e209' - '6ee44e3feb8e0f037947e7d4ca273f12' - '4f625aea95a5597afd8cdf189421f193' - 'f9e50b8dfcd2215f5423ff9bc04ecf68') diff --git a/testing/udev/static-audio-nodes-group.patch b/testing/udev/static-audio-nodes-group.patch deleted file mode 100644 index b1fc4f935..000000000 --- a/testing/udev/static-audio-nodes-group.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 3e227830ad6494700e18ae03297e8fb833ff26bf Mon Sep 17 00:00:00 2001 -From: Kay Sievers -Date: Fri, 27 May 2011 02:50:29 +0200 -Subject: [PATCH] rules: apply 'audio' group of the static snd/{seq,timer} - nodes - ---- - rules/rules.d/50-udev-default.rules | 3 ++- - 1 files changed, 2 insertions(+), 1 deletions(-) - -diff --git a/rules/rules.d/50-udev-default.rules b/rules/rules.d/50-udev-default.rules -index cd745ef..cacb533 100644 ---- a/rules/rules.d/50-udev-default.rules -+++ b/rules/rules.d/50-udev-default.rules -@@ -38,7 +38,8 @@ SUBSYSTEM=="graphics", GROUP="video" - SUBSYSTEM=="drm", GROUP="video" - - # sound --SUBSYSTEM=="sound", GROUP="audio" -+SUBSYSTEM=="sound", GROUP="audio", \ -+ OPTIONS+="static_node=snd/seq", OPTIONS+="static_node=snd/timer" - - # DVB (video) - SUBSYSTEM=="dvb", GROUP="video" --- -1.7.5.3 - diff --git a/testing/udev/static-nodes-permissions.patch b/testing/udev/static-nodes-permissions.patch deleted file mode 100644 index 51e6ad6bc..000000000 --- a/testing/udev/static-nodes-permissions.patch +++ /dev/null @@ -1,57 +0,0 @@ -From c112873b5bc9ebbae39c32f502bc6211f33546cc Mon Sep 17 00:00:00 2001 -From: Kay Sievers -Date: Mon, 30 May 2011 02:12:02 +0200 -Subject: [PATCH 1/2] rules: static_node - use 0660 if group is given to get - the cigar - ->> On Tue, May 24, 2011 at 15:33, Tom Gundersen wrote: -> -> Close, but no cigar. Looks like the static nodes are not assigned -> permissions 0660 even if a gid is set (the nodes have perms 0600). -> -> Cheers, -> -> Tom ---- - udev/udev-rules.c | 10 ++++++++-- - 1 files changed, 8 insertions(+), 2 deletions(-) - -diff --git a/udev/udev-rules.c b/udev/udev-rules.c -index 48395e7..56a258d 100644 ---- a/udev/udev-rules.c -+++ b/udev/udev-rules.c -@@ -2709,8 +2709,9 @@ void udev_rules_apply_static_dev_perms(struct udev_rules *rules) - case TK_A_STATIC_NODE: { - char filename[UTIL_PATH_SIZE]; - struct stat stats; -+ - /* we assure, that the permissions tokens are sorted before the static token */ -- if (mode == 0 && uid == 0 && gid == 0) -+ if (uid == 0 && gid == 0) - goto next; - util_strscpyl(filename, sizeof(filename), udev_get_dev_path(rules->udev), "/", - &rules->buf[cur->key.value_off], NULL); -@@ -2718,14 +2719,19 @@ void udev_rules_apply_static_dev_perms(struct udev_rules *rules) - goto next; - if (!S_ISBLK(stats.st_mode) && !S_ISCHR(stats.st_mode)) - goto next; -- if (mode != 0 && mode != (stats.st_mode & 0777)) { -+ -+ if (mode == 0 && gid > 0) -+ mode = 0660; -+ if (mode != (stats.st_mode & 0777)) { - chmod(filename, mode); - info(rules->udev, "chmod '%s' %#o\n", filename, mode); - } -+ - if ((uid != 0 && uid != stats.st_uid) || (gid != 0 && gid != stats.st_gid)) { - chown(filename, uid, gid); - info(rules->udev, "chown '%s' %u %u\n", filename, uid, gid); - } -+ - utimensat(AT_FDCWD, filename, NULL, 0); - break; - } --- -1.7.5.2 - diff --git a/testing/udev/udev.install b/testing/udev/udev.install deleted file mode 100644 index 5c02dd15b..000000000 --- a/testing/udev/udev.install +++ /dev/null @@ -1,65 +0,0 @@ -# arg 1: the new package version -# arg 2: the old package version - -post_upgrade() { - if [ "$(vercmp $2 100)" -lt 0 ]; then - echo "ATTENTION UDEV:" - echo "----------" - echo "udev >=098 rules syntax has changed, please update your own rules." - echo "udev >=099 Added persistent network and CD/DVD Symlink generator rules." - echo "Please read the instructions carefully before reboot." - echo "They are located in /etc/udev/readme-udev-arch.txt" - echo "----------" - fi - if [ "$(vercmp $2 169)" -lt 0 ]; then - echo "ATTENTION UDEV:" - echo "---------------" - echo "Kernel 2.6.32 or newer is now required." - echo "OSS emulation modules are not loaded by default, add to rc.conf if needed." - echo "Arch specific cd symlinks are now no longer created." - echo "cd and net persistent rules will no longer be autogenerated," - echo "see for details." - echo "Errors are now logged (possibly to the console) by default." - echo "---------------" - fi - if [ "$(vercmp $2 172)" -lt 0 ]; then - echo "ATTENTION UDEV:" - echo "---------------" - echo "Arch's custom blacklisting logic has been removed. MOD_AUTOLOAD and" - echo "blacklisting in MODULES no longer works." - echo "See 'man modprobe.conf' for a replacement to blacklisting." - echo "To disable a module mod1 on the kernel command line, use" - echo "mod1.disable=1" - echo "or" - echo "modprobe.blacklist=mod1" - echo " --" - echo "The following modules are no longer unconditionally loaded:" - echo " pcspkr irtty-sir analog lp ppdev ide-generic" - echo "Add them to MODULES in rc.conf if you need them." - echo "---------------" - fi -} - -post_install() { - # If a ramfs is mounted, we still need to make sure that /dev/{console,null,zero} exist - # The Archlinux installer bind-mounts /dev to /mnt/dev, thus making the real /dev invisible - ROOTDIR="" - [ "$(stat -c %D /)" != "$(stat -c %D /dev)" ] && ROOTDIR=$(mktemp -d /tmp/udevinstall.XXXXXX) - [ -n "${ROOTDIR}" ] && mount --bind / ${ROOTDIR} - if [ ! -c ${ROOTDIR}/dev/console ]; then - rm -f ${ROOTDIR}/dev/console - mknod -m600 ${ROOTDIR}/dev/console c 5 1 - fi - if [ ! -c ${ROOTDIR}/dev/null ]; then - rm -f ${ROOTDIR}/dev/null - mknod -m644 ${ROOTDIR}/dev/null c 1 3 - fi - if [ ! -c ${ROOTDIR}/dev/zero ]; then - rm -f ${ROOTDIR}/dev/zero - mknod -m644 ${ROOTDIR}/dev/zero c 1 5 - fi - if [ -n "${ROOTDIR}" ]; then - umount ${ROOTDIR} - rmdir ${ROOTDIR} - fi -} diff --git a/testing/vigra/PKGBUILD b/testing/vigra/PKGBUILD deleted file mode 100644 index 400bd5898..000000000 --- a/testing/vigra/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 124225 2011-05-17 18:01:10Z andyrtr $ -# Maintainer: AndyRTR -# Contributor: Lukas Jirkovsky - -pkgname=vigra -pkgver=1.7.1 -pkgrel=1 -pkgdesc="Computer vision library" -arch=('i686' 'x86_64') -url="http://hci.iwr.uni-heidelberg.de/vigra/" -license=('custom:MIT') -depends=('libpng' 'libtiff' 'gcc-libs' 'sh' 'hdf5' 'fftw') -makedepends=('cmake' 'python-nose' 'doxygen' 'python-sphinx' 'boost' 'python-numpy') -optdepends=('python2: for python bindings' - 'boost-libs: for python bindings') -options=('!libtool') -source=(http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/${pkgname}-${pkgver}-src.tar.gz - vigra-1.7.1.gcc460.patch) -md5sums=('2bde208e0fd7626770169dd4fa097282' - '25ef8bc26bc38ee67e5b512d2acd0166') - -build() { - cd "${srcdir}"/${pkgname}-${pkgver} - patch -Np1 -i ${srcdir}/vigra-1.7.1.gcc460.patch - cmake -DCMAKE_INSTALL_PREFIX=/usr \ - -DWITH_VIGRANUMPY=1 \ - -DDOCINSTALL=share/doc - make -} - -package() { - cd "${srcdir}"/${pkgname}-${pkgver} - make DESTDIR="${pkgdir}" install - # license - install -D -m644 LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/testing/vigra/vigra-1.7.1.gcc460.patch b/testing/vigra/vigra-1.7.1.gcc460.patch deleted file mode 100644 index 46f194dbc..000000000 --- a/testing/vigra/vigra-1.7.1.gcc460.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -baur vigra-1.7.1.old/include/vigra/random_forest.hxx vigra-1.7.1/include/vigra/random_forest.hxx ---- vigra-1.7.1.old/include/vigra/random_forest.hxx 2010-12-03 17:40:34.000000000 +0000 -+++ vigra-1.7.1/include/vigra/random_forest.hxx 2011-01-28 00:16:32.000000000 +0000 -@@ -43,6 +43,7 @@ - #include - #include - #include -+#include - #include "mathutil.hxx" - #include "array_vector.hxx" - #include "sized_int.hxx" -diff -baur vigra-1.7.1.old/include/vigra/sifImport.hxx vigra-1.7.1/include/vigra/sifImport.hxx ---- vigra-1.7.1.old/include/vigra/sifImport.hxx 2010-12-03 17:40:34.000000000 +0000 -+++ vigra-1.7.1/include/vigra/sifImport.hxx 2011-01-28 00:23:31.000000000 +0000 -@@ -57,6 +57,7 @@ - #include - #include - #include -+#include - #include "vigra/multi_array.hxx" - - namespace vigra { -diff -baur vigra-1.7.1.old/include/vigra/multi_iterator.hxx vigra-1.7.1/include/vigra/multi_iterator.hxx ---- vigra-1.7.1.old/include/vigra/multi_iterator.hxx 2010-12-03 17:40:34.000000000 +0000 -+++ vigra-1.7.1/include/vigra/multi_iterator.hxx 2011-01-28 00:23:31.000000000 +0000 -@@ -41,6 +41,7 @@ - #define VIGRA_MULTI_ITERATOR_HXX - - #include -+#include - #include "tinyvector.hxx" - #include "iteratortags.hxx" - diff --git a/testing/yp-tools/PKGBUILD b/testing/yp-tools/PKGBUILD deleted file mode 100644 index 8cf4b6960..000000000 --- a/testing/yp-tools/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 126193 2011-06-02 14:34:36Z bisson $ -# Maintainer: Gaetan Bisson -# Contributor: dorphell -# Contributor: Tom Newsom - -pkgname=yp-tools -pkgver=2.12 -pkgrel=2 -pkgdesc='Linux NIS Tools' -arch=('i686' 'x86_64') -url='http://www.linux-nis.org/nis/yp-tools/' -license=('GPL2') -depends=('ypbind-mt') -source=("ftp://ftp.kernel.org/pub/linux/utils/net/NIS/$pkgname-$pkgver.tar.gz") -sha1sums=('10b0ef5d4c5723e0716d7a1431a900c0ba6ef703') - -build() { - cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/testing/ypbind-mt/PKGBUILD b/testing/ypbind-mt/PKGBUILD deleted file mode 100644 index 45cf58258..000000000 --- a/testing/ypbind-mt/PKGBUILD +++ /dev/null @@ -1,39 +0,0 @@ -# $Id: PKGBUILD 126308 2011-06-04 12:37:21Z bisson $ -# Maintainer: Gaetan Bisson -# Contributor: judd -# Contributor: Tom Newsom - -pkgname=ypbind-mt -pkgver=1.33 -pkgrel=2 -pkgdesc='Linux NIS daemon' -arch=('i686' 'x86_64') -url='http://www.linux-nis.org/nis/ypbind-mt/' -license=('GPL2') -depends=('rpcbind' 'openslp') -optdepends=('yp-tools: to set a domain name') -backup=('etc/yp.conf' 'etc/conf.d/ypbind' 'etc/conf.d/nisdomainname') -source=("ftp://ftp.kernel.org/pub/linux/utils/net/NIS/$pkgname-$pkgver.tar.gz" - 'nisdomainname.conf' - 'ypbind.conf' - 'ypbind') -sha1sums=('49f578d15aa5d4f4130a2e96cd9c0e519263fc88' - 'eb00aecc0679e25a36b007e797f4468b40cb3e8e' - '07dee386d001fb9e9e6b76dda8af5b2092e5a4a2' - '112fc2aedfe3f761325b69647b7938bc1be5bfcd') - -build() { - cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr --disable-dbus-nm - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install - install -D -m644 etc/yp.conf "$pkgdir"/etc/yp.conf - install -D -m755 ../ypbind "$pkgdir"/etc/rc.d/ypbind - install -D -m644 ../ypbind.conf "$pkgdir"/etc/conf.d/ypbind - install -D -m644 ../nisdomainname.conf "$pkgdir"/etc/conf.d/nisdomainname - install -d -m755 "$pkgdir"/var/yp/binding -} diff --git a/testing/ypbind-mt/nisdomainname.conf b/testing/ypbind-mt/nisdomainname.conf deleted file mode 100644 index bbbbf8fc7..000000000 --- a/testing/ypbind-mt/nisdomainname.conf +++ /dev/null @@ -1,4 +0,0 @@ -# -# NIS domain to be set in /etc/rc.d/ypbind -# -NISDOMAINNAME="" diff --git a/testing/ypbind-mt/ypbind b/testing/ypbind-mt/ypbind deleted file mode 100755 index 6a5ef11e3..000000000 --- a/testing/ypbind-mt/ypbind +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -. /etc/conf.d/ypbind -. /etc/conf.d/nisdomainname - -name=ypbind -PID=$(pidof -o %PPID /usr/sbin/ypbind) - -case "$1" in -start) - stat_busy "Starting $name daemon" - [[ -n $NISDOMAINNAME ]] && /usr/bin/domainname "$NISDOMAINNAME" &>/dev/null - [[ -z "$PID" ]] && /usr/sbin/ypbind $YPBIND_ARGS &>/dev/null \ - && { add_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -stop) - stat_busy "Stopping $name daemon" - [[ -n "$PID" ]] && kill $PID &>/dev/null \ - && { rm_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -restart) - $0 stop - sleep 1 - $0 start - ;; -*) - echo "usage: $0 {start|stop|restart}" - exit 1 - ;; -esac diff --git a/testing/ypbind-mt/ypbind.conf b/testing/ypbind-mt/ypbind.conf deleted file mode 100644 index fd0ebd491..000000000 --- a/testing/ypbind-mt/ypbind.conf +++ /dev/null @@ -1,4 +0,0 @@ -# -# Parameters to be passed to ypbind -# -YPBIND_ARGS="" -- cgit v1.2.3-54-g00ecf