summaryrefslogtreecommitdiff
path: root/community
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-12-29 02:13:48 -0800
committerroot <root@rshg054.dnsready.net>2012-12-29 02:13:48 -0800
commit5dd7ed82e788ebad2e920e0f2db7468cc6547cfe (patch)
treef467412e09912ababcd8fe6c05193d829f514dcd /community
parent3009e8addb4a894329bf8ab3e8fb763361833978 (diff)
Sat Dec 29 02:10:20 PST 2012
Diffstat (limited to 'community')
-rw-r--r--community/abuse/PKGBUILD32
-rw-r--r--community/abuse/abuse.install13
-rw-r--r--community/acetoneiso2/PKGBUILD33
-rw-r--r--community/acetoneiso2/acetoneiso2.install11
-rw-r--r--community/alienarena/PKGBUILD40
-rw-r--r--community/angband/PKGBUILD49
-rw-r--r--community/assaultcube/PKGBUILD63
-rwxr-xr-xcommunity/assaultcube/assaultcube4
-rwxr-xr-xcommunity/assaultcube/assaultcube-server4
-rw-r--r--community/assaultcube/assaultcube.desktop12
-rw-r--r--community/assaultcube/assaultcube.install13
-rw-r--r--community/assaultcube/assaultcube.pngbin0 -> 1503 bytes
-rw-r--r--community/asunder/PKGBUILD32
-rw-r--r--community/blackbox/PKGBUILD39
-rw-r--r--community/blackbox/bbdock.patch16
-rw-r--r--community/blackbox/bsetbg-feh.patch23
-rw-r--r--community/blackbox/gcc4.3.patch111
-rw-r--r--community/blackbox/textpropertytostring-unconditional.patch28
-rw-r--r--community/blender/PKGBUILD120
-rw-r--r--community/boinc/PKGBUILD74
-rw-r--r--community/boinc/boinc-AM_CONDITIONAL.patch19
-rw-r--r--community/boinc/boinc.bash99
-rw-r--r--community/boinc/boinc.desktop16
-rw-r--r--community/boinc/boinc.install23
-rw-r--r--community/boinc/boinc.rc52
-rw-r--r--community/boinc/boinc.service10
-rw-r--r--community/calibre/PKGBUILD73
-rwxr-xr-xcommunity/calibre/calibre-mount-helper28
-rw-r--r--community/calibre/calibre.install12
-rw-r--r--community/calibre/desktop_integration.patch109
-rw-r--r--community/catalyst-utils/PKGBUILD136
-rw-r--r--community/catalyst-utils/atieventsd41
-rw-r--r--community/catalyst-utils/atieventsd.service10
-rw-r--r--community/catalyst-utils/fglrx-authfile-locations.patch16
-rw-r--r--community/cdfs/PKGBUILD4
-rw-r--r--community/cdfs/cdfs.install6
-rw-r--r--community/cinelerra-cv/PKGBUILD89
-rw-r--r--community/cinelerra-cv/ffmpeg_api.patch163
-rw-r--r--community/cinelerra-cv/v4l1_removal.patch125
-rw-r--r--community/clementine/PKGBUILD35
-rw-r--r--community/clementine/clementine.install13
-rw-r--r--community/dangerdeep/PKGBUILD22
-rw-r--r--community/dangerdeep/build-fix.patch102
-rw-r--r--community/dosemu/PKGBUILD54
-rw-r--r--community/dosemu/cpu-support.patch12
-rw-r--r--community/dosemu/dosemu.install7
-rw-r--r--community/dosemu/fix-infinite-loop.patch13
-rw-r--r--community/dosemu/kernel_version.patch12
-rw-r--r--community/epdfview/0001-When-using-Poppler-0.17.0-I-needed-to-swap-the-blue-.patch60
-rw-r--r--community/epdfview/PKGBUILD45
-rw-r--r--community/epdfview/epdfview.desktop.patch11
-rw-r--r--community/epdfview/epdfview.install12
-rw-r--r--community/epdfview/glib2_headers.patch13
-rw-r--r--community/fmodex/PERMISSION25
-rw-r--r--community/fmodex/PKGBUILD41
-rw-r--r--community/frogatto/PKGBUILD47
-rw-r--r--community/frogatto/frogatto3
-rw-r--r--community/frogatto/frogatto.desktop11
-rw-r--r--community/handbrake/PKGBUILD48
-rw-r--r--community/handbrake/handbrake.install14
-rw-r--r--community/hardinfo/PKGBUILD33
-rw-r--r--community/hardinfo/fixsensors.patch13
-rw-r--r--community/hardinfo/hardinfo.distro1
-rw-r--r--community/krusader/PKGBUILD36
-rw-r--r--community/krusader/krusader.install11
-rw-r--r--community/libquicktime/PKGBUILD30
-rw-r--r--community/mac/PKGBUILD30
-rw-r--r--community/mc/PKGBUILD73
-rw-r--r--community/mplayer-vaapi/PKGBUILD74
-rw-r--r--community/mplayer-vaapi/mplayer-vaapi.install11
-rw-r--r--community/mplayer-vaapi/tweak-desktop-file.patch14
-rw-r--r--community/mupen64plus/PKGBUILD33
-rw-r--r--community/ndiswrapper/PKGBUILD51
-rw-r--r--community/ndiswrapper/linux33.patch50
-rw-r--r--community/ndiswrapper/ndiswrapper.install17
-rw-r--r--community/netperf/PKGBUILD48
-rw-r--r--community/netperf/netperf.conf3
-rw-r--r--community/netperf/netperf.install20
-rw-r--r--community/netperf/netperf.rc41
-rw-r--r--community/netperf/netperf.service8
-rw-r--r--community/nvidia-cg-toolkit/PKGBUILD37
-rw-r--r--community/ogre/PKGBUILD89
-rw-r--r--community/ogre/ogre.install4
-rw-r--r--community/open-vm-tools-modules/PKGBUILD52
-rw-r--r--community/open-vm-tools-modules/linux-3.6-build-fix.patch63
-rw-r--r--community/open-vm-tools-modules/modprobe.conf3
-rw-r--r--community/open-vm-tools-modules/open-vm-tools-modules.install14
-rw-r--r--community/open-vm-tools/PKGBUILD64
-rw-r--r--community/open-vm-tools/modprobe.conf1
-rw-r--r--community/open-vm-tools/open-vm-tools-dkms.install23
-rw-r--r--community/open-vm-tools/open-vm-tools.conf.d5
-rw-r--r--community/open-vm-tools/open-vm-tools.rc.d21
-rw-r--r--community/open-vm-tools/scripts-network-FS19541.patch2
-rw-r--r--community/open-vm-tools/vmtoolsd.service9
-rw-r--r--community/opera/PKGBUILD39
-rw-r--r--community/opera/opera.install20
-rw-r--r--community/paintown/PKGBUILD54
-rw-r--r--community/paintown/libpng15.patch343
-rw-r--r--community/paintown/paintown.pngbin0 -> 14271 bytes
-rw-r--r--community/pcsxr/PKGBUILD29
-rw-r--r--community/pekwm/PKGBUILD59
-rw-r--r--community/pekwm/pekwm_kdm.desktop5
-rw-r--r--community/povray/LICENSE237
-rw-r--r--community/povray/PKGBUILD66
-rw-r--r--community/povray/distribution-license.txt532
-rw-r--r--community/povray/povray3.7.0_rc3-user-conf.patch27
-rw-r--r--community/povray/source-license.txt360
-rw-r--r--community/pypy/LICENSE154
-rw-r--r--community/pypy/PKGBUILD44
-rw-r--r--community/python2-gevent/PKGBUILD2
-rw-r--r--community/python2-pycuda/PKGBUILD35
-rw-r--r--community/r8168-lts/PKGBUILD10
-rw-r--r--community/r8168/PKGBUILD45
-rw-r--r--community/r8168/r8168.install17
-rw-r--r--community/rt3562sta/PKGBUILD85
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-WPA-mixed.patch11
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-config.patch98
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-convert-devicename-to-wlanX.patch13
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-gcc-warnings-x86_64.patch14
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-reduce_debug_output.patch15
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-remove-potential-conflicts-with-rt2860sta.patch47
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-remove_date_time.patch11
-rw-r--r--community/rt3562sta/rt3562sta-2.4.1.1-return_nonvoid.patch11
-rw-r--r--community/rt3562sta/rt3562sta.install16
-rw-r--r--community/sauerbraten/PKGBUILD73
-rw-r--r--community/sauerbraten/fix-indirect-linking.diff20
-rw-r--r--community/sauerbraten/license.txt34
-rwxr-xr-xcommunity/sauerbraten/sauerbraten-client14
-rwxr-xr-xcommunity/sauerbraten/sauerbraten-server22
-rw-r--r--community/sauerbraten/sauerbraten.confd7
-rw-r--r--community/sauerbraten/sauerbraten.install22
-rw-r--r--community/sauerbraten/sauerbraten.pngbin0 -> 9313 bytes
-rw-r--r--community/sauerbraten/sauerbraten.rcd37
-rw-r--r--community/sauerbraten/sauerbraten.service13
-rw-r--r--community/sdlmame/PKGBUILD96
-rw-r--r--community/sdlmame/extras.tar.gzbin0 -> 4093 bytes
-rw-r--r--community/sdlmame/sdlmame.install8
-rw-r--r--community/sdlmame/sdlmame.sh58
-rw-r--r--community/seamonkey/PKGBUILD56
-rw-r--r--community/seamonkey/mozconfig31
-rw-r--r--community/seamonkey/seamonkey-2.0-lang.patch11
-rw-r--r--community/seamonkey/seamonkey.desktop11
-rw-r--r--community/seamonkey/seamonkey.install12
-rw-r--r--community/simutrans/PKGBUILD10
-rw-r--r--community/skype-call-recorder/PKGBUILD31
-rw-r--r--community/skype-call-recorder/skype-call-recorder.install13
-rw-r--r--community/snes9x/PKGBUILD56
-rw-r--r--community/snes9x/snes9x-gtk.install12
-rw-r--r--community/snes9x/snes9x-gtk2.24.diff.gzbin0 -> 46504 bytes
-rw-r--r--community/spectrwm/PKGBUILD15
-rw-r--r--community/springlobby/PKGBUILD29
-rw-r--r--community/tarsnap/PKGBUILD29
-rw-r--r--community/tp_smapi-lts/PKGBUILD56
-rw-r--r--community/tp_smapi-lts/tp_smapi-lts.install13
-rw-r--r--community/tp_smapi/PKGBUILD6
-rw-r--r--community/tp_smapi/tp_smapi.install2
-rw-r--r--community/ufoai/PKGBUILD45
-rw-r--r--community/ufoai/ufo-ai-2.3.1-libpng15.patch10
-rw-r--r--community/unace/01-makefiles.dpatch52
-rw-r--r--community/unace/04-64bit.dpatch119
-rw-r--r--community/unace/ChangeLog9
-rw-r--r--community/unace/PKGBUILD35
-rw-r--r--community/unace/unace.install14
-rw-r--r--community/unarj/LICENSE86
-rw-r--r--community/unarj/PKGBUILD28
-rw-r--r--community/unetbootin/PKGBUILD46
-rw-r--r--community/unetbootin/unetbootin.install14
-rw-r--r--community/unetbootin/unetbootin.sh24
-rw-r--r--community/unrealircd/PKGBUILD14
-rw-r--r--community/urbanterror/PKGBUILD46
-rw-r--r--community/urbanterror/urbanterror-server.sh4
-rw-r--r--community/urbanterror/urbanterror.desktop7
-rw-r--r--community/urbanterror/urbanterror.pngbin0 -> 41721 bytes
-rw-r--r--community/urbanterror/urbanterror.sh4
-rw-r--r--community/vhba-module/PKGBUILD10
-rw-r--r--community/vhba-module/vhba-module.install17
-rw-r--r--community/virtualbox/001-vboxdrv-reference.patch57
-rw-r--r--community/virtualbox/002-change_default_driver_dir.patch18
-rw-r--r--community/virtualbox/10-vboxdrv.rules5
-rw-r--r--community/virtualbox/60-vboxguest.rules2
-rw-r--r--community/virtualbox/LocalConfig.kmk20
-rw-r--r--community/virtualbox/PKGBUILD305
-rw-r--r--community/virtualbox/vboxservice.conf2
-rw-r--r--community/virtualbox/vboxservice.rc39
-rw-r--r--community/virtualbox/vboxservice.service9
-rw-r--r--community/virtualbox/vboxweb.conf11
-rw-r--r--community/virtualbox/vboxweb.rc86
-rw-r--r--community/virtualbox/vboxweb.service11
-rw-r--r--community/virtualbox/virtualbox-ext-vnc.install25
-rw-r--r--community/virtualbox/virtualbox-guest-dkms.install30
-rw-r--r--community/virtualbox/virtualbox-guest-utils.install31
-rw-r--r--community/virtualbox/virtualbox-host-dkms.install30
-rw-r--r--community/virtualbox/virtualbox.install45
-rw-r--r--community/visualboyadvance/1.7.2-deprecatedsigc++.patch692
-rw-r--r--community/visualboyadvance/1.7.2-gcc34.patch41
-rw-r--r--community/visualboyadvance/1.7.2-gcc41.patch27
-rw-r--r--community/visualboyadvance/1.7.2-glibc.patch76
-rw-r--r--community/visualboyadvance/1.7.2-homedir.patch11
-rw-r--r--community/visualboyadvance/1.7.2-uninit.patch13
-rw-r--r--community/visualboyadvance/PKGBUILD48
-rw-r--r--community/xv/PKGBUILD40
-rw-r--r--community/xv/license.txt139
-rw-r--r--community/xv/xv-3.10a-libpng15.patch520
203 files changed, 9208 insertions, 237 deletions
diff --git a/community/abuse/PKGBUILD b/community/abuse/PKGBUILD
new file mode 100644
index 000000000..68924e839
--- /dev/null
+++ b/community/abuse/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 64627 2012-02-17 12:45:02Z lfleischer $
+# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Contributor: jlvsimoes <jlvsimoes@oninet.pt>
+# Contributor: kevin <kevin@archlinux.org>
+
+pkgname=abuse
+pkgver=0.8
+pkgrel=2
+pkgdesc='A side-scroller action game that pits you against ruthless alien killers.'
+arch=('i686' 'x86_64')
+url='http://abuse.zoy.org/'
+license=('GPL' 'custom')
+depends=('gcc-libs' 'libgl' 'sdl' 'sdl_mixer')
+install='abuse.install'
+source=("http://abuse.zoy.org/raw-attachment/wiki/download/${pkgname}-${pkgver}.tar.gz")
+md5sums=('ec678b8dc8d00e0382d8c805c6438489')
+
+build() {
+ cd "${srcdir}/abuse-${pkgver}"
+
+ ./configure --prefix=/usr --with-assetdir=/usr/share/abuse/orig --with-x
+ make
+}
+
+package() {
+ cd "${srcdir}/abuse-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ install -d "${pkgdir}/usr/share/licenses/abuse"
+ sed -n '1,/^$/p' src/view.cpp > "${pkgdir}/usr/share/licenses/abuse/orig.code.license"
+}
diff --git a/community/abuse/abuse.install b/community/abuse/abuse.install
new file mode 100644
index 000000000..4d28ebacd
--- /dev/null
+++ b/community/abuse/abuse.install
@@ -0,0 +1,13 @@
+# arg 1: the new package version
+post_install() {
+# echo "If you get a BOSS_ANT error trying to run abuse, copy /usr/share/games/abuse/gamma.lsp to ~/.abuse"
+ echo "Abuse uses the original game levels by default. To use the frabs levels"
+ echo "use '-datadir' or set 'datadir' in the abuserc to /usr/share/abuse/frabs"
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install
+}
+
diff --git a/community/acetoneiso2/PKGBUILD b/community/acetoneiso2/PKGBUILD
new file mode 100644
index 000000000..e400f8b72
--- /dev/null
+++ b/community/acetoneiso2/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 61069 2011-12-21 20:50:25Z andrea $
+# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Wes Brewer <brewerw@gmail.com>
+
+pkgname=acetoneiso2
+pkgver=2.3
+pkgrel=4
+pkgdesc="An all in one ISO tool (bin mdf nrg img daa dmg cdi b5i bwi pdi iso)"
+arch=('i686' 'x86_64')
+url="http://www.acetoneteam.org"
+license=('GPL3')
+depends=('qtwebkit' 'fuseiso' 'cdrdao' 'cdrkit' 'dvd+rw-tools' 'gnupg2' 'pinentry' 'mplayer' 'phonon')
+optdepends=("p7zip: for ISO compress/decompress support")
+conflicts=('acetoneiso')
+install=${pkgname}.install
+source=(http://downloads.sourceforge.net/acetoneiso/AcetoneISO/AcetoneISO%202.3/acetoneiso_${pkgver}.tar.gz)
+md5sums=('225f7af687016690ff28b9771a1ce179')
+
+build() {
+ cd ${srcdir}/acetoneiso_${pkgver}/acetoneiso
+
+ qmake
+ # needed for phonon
+ sed -i 's|-I/usr/include/QtCore|-I/usr/include/QtCore -I/usr/include/KDE|' Makefile
+ make
+}
+
+package() {
+ cd ${srcdir}/acetoneiso_${pkgver}/acetoneiso
+
+ make INSTALL_ROOT="${pkgdir}" install
+}
diff --git a/community/acetoneiso2/acetoneiso2.install b/community/acetoneiso2/acetoneiso2.install
new file mode 100644
index 000000000..1a3984e24
--- /dev/null
+++ b/community/acetoneiso2/acetoneiso2.install
@@ -0,0 +1,11 @@
+post_install() {
+cat << EOF
+ -->
+ --> Please remember to add 'fuse' to your MODULES array in /etc/rc.conf
+ -->
+EOF
+}
+
+post_upgrade() {
+ post_install $*
+}
diff --git a/community/alienarena/PKGBUILD b/community/alienarena/PKGBUILD
new file mode 100644
index 000000000..124c7aa7a
--- /dev/null
+++ b/community/alienarena/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id: PKGBUILD 76630 2012-09-25 13:43:44Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: yugrotavele <yugrotavele at archlinux dot us>
+# Contributor: Det <nimetonmaili at gmail a-dot com>
+# Contributor: godane <slaxemulator@gmail.com>
+# Contributor: damian01w <damian01w@gmail.com>
+
+pkgname=alienarena
+pkgver=7.60.1
+pkgrel=1
+_verdate=20120823
+pkgdesc="Multiplayer retro sci-fi deathmatch game"
+arch=('i686' 'x86_64')
+url='http://icculus.org/alienarena/rpa/'
+license=('GPL')
+depends=('curl' 'freetype2' 'libgl' 'libjpeg' 'libvorbis' 'libxxf86dga' 'libxxf86vm' 'libgl' 'sdl' 'openal' 'alienarena-data')
+makedepends=('gendesk' 'mesa')
+source=(http://icculus.org/alienarena/Files/alienarena-${pkgver}-linux${_verdate}.tar.gz)
+md5sums=('1e32455d8f6418c92b1b6f4d54becadd')
+_name=('Alien Arena')
+
+build() {
+ cd "$srcdir"
+ gendesk -n
+
+ cd "$pkgname-$pkgver"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+ install -Dm644 "../$pkgname.desktop" "$pkgdir/usr/share/applications/$pkgname.desktop"
+ install -Dm644 "$pkgname.png" "$pkgdir/usr/share/pixmaps/$pkgname.png"
+ rm -rf "$pkgdir/usr/share/$pkgname"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/angband/PKGBUILD b/community/angband/PKGBUILD
new file mode 100644
index 000000000..af58de442
--- /dev/null
+++ b/community/angband/PKGBUILD
@@ -0,0 +1,49 @@
+# Maintainer: schuay <jakob.gruber@gmail.com>
+# Maintainer: Mike Sampson <mike at sambodata dot com>
+# Contributor: Adrian Stratulat <adrian.stratulat at inboxcom>
+# Contributor: Anton Bazhenov <anton.bazhenov at gmail>
+# Contributor: KillaB <xGenoBlast@gmail.com>
+# Contributor: Callan Barrett <wizzomafizzo@gmail.com>
+# Contributor: Christian Schmidt <xmucknertx@googlemail.com>
+# Contributor: Sebastian Sareyko <public@nooms.de>
+
+pkgname=angband
+pkgver=3.4.1
+pkgrel=1
+pkgdesc="A roguelike dungeon exploration game based on the writings of JRR Tolkien"
+arch=('i686' 'x86_64')
+url="http://rephial.org/"
+license=('GPL2' 'custom')
+depends=('sdl_image' 'sdl_ttf' 'sdl_mixer' 'ncurses' 'libglade')
+source=("http://rephial.org/downloads/${pkgver:0:3}/${pkgname}-v${pkgver}.tar.gz")
+
+build() {
+
+ cd "${srcdir}/${pkgname}-v${pkgver}"
+
+ ./configure \
+ --prefix=/usr \
+ --bindir=/usr/bin \
+ --sysconfdir=/usr/share/angband \
+ --with-configpath=/usr/share/angband \
+ --with-libpath=/usr/share/angband \
+ --enable-gtk \
+ --enable-sdl \
+ --enable-sdl-mixer
+
+ make
+
+}
+
+package() {
+
+ cd "${srcdir}/${pkgname}-v${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ rm -f "${pkgdir}/usr/share/angband/*/delete.me"
+ install -Dm644 copying.txt "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
+
+}
+
+md5sums=('3ea22e5caabc3de7b49bac13ba922a8c')
diff --git a/community/assaultcube/PKGBUILD b/community/assaultcube/PKGBUILD
new file mode 100644
index 000000000..bc05fbe4e
--- /dev/null
+++ b/community/assaultcube/PKGBUILD
@@ -0,0 +1,63 @@
+# $Id: PKGBUILD 64731 2012-02-18 03:18:55Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
+# Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com>
+# Contributor: Rabyte <rabyte [at] gmail (dot) com>
+
+pkgname=assaultcube
+pkgver=1.1.0.4
+pkgrel=4
+pkgdesc='A realistic team oriented multiplayer FPS based on the Cube engine'
+arch=('i686' 'x86_64')
+url='http://assault.cubers.net/'
+license=('ZLIB' 'custom')
+depends=('sdl' 'sdl_mixer' 'sdl_image' 'openal' 'zlib' 'gcc-libs' 'libgl' 'desktop-file-utils')
+makedepends=('mesa')
+source=("http://downloads.sourceforge.net/actiongame/AssaultCube_v${pkgver}.tar.bz2"
+ "http://downloads.sourceforge.net/actiongame/AssaultCube_v${pkgver}_source.tar.bz2"
+ 'assaultcube'
+ 'assaultcube-server'
+ 'assaultcube.desktop'
+ 'assaultcube.png')
+md5sums=('a5eb79eaf564c5b4de1ffad0883e45e8'
+ '603b97a4262fb59ea86d483730b712e9'
+ 'd658ad3ee476bfe92afa5b5a04a7b4f5'
+ '553e2c3b38c4d13e5d77c23efd51a6a6'
+ 'a37dfbe8263f4ef8fe41120196194eae'
+ 'f688c59ecee2ebc5c589720aa1480765')
+install=assaultcube.install
+
+build() {
+ cd ${pkgver}/source
+
+ # We'll use official binaries for cheat protection or some stuff.
+ # Upstream is strange.
+ #make
+}
+
+package() {
+ #cd ${pkgver}/source/src
+
+ #install -Dm755 ac_client ${pkgdir}/usr/bin/ac_client
+ #install -Dm755 ac_server ${pkgdir}/usr/bin/ac_server
+ cd ${srcdir}/${pkgver}
+
+ mkdir -p ${pkgdir}/usr/share/assaultcube/packages
+ mkdir -p ${pkgdir}/usr/bin
+
+ if [[ $CARCH == "x86_64" ]]; then
+ cp bin_unix/linux_64_client ${pkgdir}/usr/bin/ac_client
+ cp bin_unix/linux_64_server ${pkgdir}/usr/bin/ac_server
+ else
+ cp bin_unix/linux_client ${pkgdir}/usr/bin/ac_client
+ cp bin_unix/linux_server ${pkgdir}/usr/bin/ac_server
+ fi
+ cp -rf config packages docs mods ${pkgdir}/usr/share/assaultcube
+ install -Dm644 ${srcdir}/assaultcube.png ${pkgdir}/usr/share/pixmaps/assaultcube.png
+ install -Dm644 ${srcdir}/assaultcube.desktop ${pkgdir}/usr/share/applications/assaultcube.desktop
+ install -Dm644 docs/package_copyrights.txt ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+ install -Dm755 ${srcdir}/assaultcube ${pkgdir}/usr/bin/assaultcube
+ install -Dm755 ${srcdir}/assaultcube-server ${pkgdir}/usr/bin/assaultcube-server
+}
+
+# vim: sw=2:ts=2 et:
diff --git a/community/assaultcube/assaultcube b/community/assaultcube/assaultcube
new file mode 100755
index 000000000..d982cb641
--- /dev/null
+++ b/community/assaultcube/assaultcube
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+cd /usr/share/assaultcube
+ac_client "--home=${HOME}/.assaultcube" "--init=${HOME}/.assaultcube/config/init.cfg" "$@"
diff --git a/community/assaultcube/assaultcube-server b/community/assaultcube/assaultcube-server
new file mode 100755
index 000000000..46d93c594
--- /dev/null
+++ b/community/assaultcube/assaultcube-server
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+cd /usr/share/assaultcube
+ac_server "$@"
diff --git a/community/assaultcube/assaultcube.desktop b/community/assaultcube/assaultcube.desktop
new file mode 100644
index 000000000..9449fc1f3
--- /dev/null
+++ b/community/assaultcube/assaultcube.desktop
@@ -0,0 +1,12 @@
+[Desktop Entry]
+Encoding=UTF-8
+Exec=assaultcube
+Icon=assaultcube
+Type=Application
+Terminal=false
+MultipleArgs=false
+Name=AssaultCube
+GenericName=Realistic Multiplayer FPS
+MimeType=text/html
+StartupNotify=false
+Categories=Game;ActionGame;
diff --git a/community/assaultcube/assaultcube.install b/community/assaultcube/assaultcube.install
new file mode 100644
index 000000000..724bfce00
--- /dev/null
+++ b/community/assaultcube/assaultcube.install
@@ -0,0 +1,13 @@
+post_install() {
+ update-desktop-database -q
+ update-mime-database usr/share/mime &> /dev/null
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/community/assaultcube/assaultcube.png b/community/assaultcube/assaultcube.png
new file mode 100644
index 000000000..a0915cb76
--- /dev/null
+++ b/community/assaultcube/assaultcube.png
Binary files differ
diff --git a/community/asunder/PKGBUILD b/community/asunder/PKGBUILD
new file mode 100644
index 000000000..5a30eb34f
--- /dev/null
+++ b/community/asunder/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 66554 2012-02-26 05:35:59Z xyne $
+# Maintainer: Xyne <ac xunilhcra enyx, backwards>
+# Contributor: Ronald van Haren <ronald.archlinux.org>
+# Contributor: cs-cam - me.at.camdaniel.com
+# Contributor: Sebastien Piccand <sebcactus gmail com>
+
+pkgname=asunder
+pkgver=2.2
+pkgrel=1
+pkgdesc="a graphical CD ripper and encoder"
+arch=('i686' 'x86_64')
+url="http://littlesvr.ca/asunder/"
+license=('GPL2')
+depends=('gtk2' 'libcddb' 'cdparanoia')
+makedepends=('pkgconfig')
+optdepends=('lame: for mp3 support' 'vorbis-tools: for ogg support' \
+ 'flac: for flac support')
+source=(http://littlesvr.ca/asunder/releases/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('4996860f552879fd8abdc87d1c6c7530')
+sha256sums=('bb608c1cdefcce2f533fb5d5cc23838846b2810ec89d0ebb083507cf27e7822f')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
+
diff --git a/community/blackbox/PKGBUILD b/community/blackbox/PKGBUILD
new file mode 100644
index 000000000..c8c641216
--- /dev/null
+++ b/community/blackbox/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 58674 2011-11-17 13:44:24Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: durbatuluk <dvdscripter@gmail.org>
+# Contributor: Steve Ponsford <sp4d@lavabit.com>
+
+pkgname=blackbox
+pkgver=0.70.1
+pkgrel=10
+pkgdesc="A window manager for X11"
+url="http://blackboxwm.sourceforge.net/"
+arch=('i686' 'x86_64')
+depends=('gcc-libs' 'libxft' 'libxext' 'libx11' 'libxt')
+license=('MIT')
+options=('!libtool')
+source=(http://downloads.sourceforge.net/blackboxwm/$pkgname-$pkgver.tar.gz
+ gcc4.3.patch
+ bbdock.patch
+ bsetbg-feh.patch
+ textpropertytostring-unconditional.patch)
+md5sums=('2d173b95ca5e64ef478c6a5d2deee9df'
+ 'bc7a1335d77cdeb6f85cba4d01e68e63'
+ '69c5a5e981b087b2d8267cab996b48dd'
+ 'e7fb0d5bfd95820c0194ec73df66dadc'
+ '3b92ad246f07126dd55ae9634d6e875e')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+
+ patch -Np1 -i ../gcc4.3.patch
+ patch -Np0 -i ../bbdock.patch
+ patch -Np0 -i ../bsetbg-feh.patch
+ patch -Np1 -i ../textpropertytostring-unconditional.patch
+
+ ./configure --prefix=/usr --mandir=/usr/share/man
+ make
+ make DESTDIR=$pkgdir install
+
+ install -D -m644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/community/blackbox/bbdock.patch b/community/blackbox/bbdock.patch
new file mode 100644
index 000000000..709b6cfe1
--- /dev/null
+++ b/community/blackbox/bbdock.patch
@@ -0,0 +1,16 @@
+--- src/Slit.cc 2005-01-04 05:58:33.000000000 -0700
++++ /root/tmp/Slit.cc 2007-12-29 11:13:09.000000000 -0700
+@@ -248,6 +248,13 @@
+ bt::PixmapCache::find(screen->screenNumber(), texture,
+ frame.rect.width(), frame.rect.height(),
+ frame.pixmap);
++/*** START: BBDOCK PATCH FOR DOCK APPS THAT USE ParentRelative **************/
++ if ((texture.texture() & bt::Texture::Gradient) && frame.pixmap)
++ XSetWindowBackgroundPixmap(display, frame.window, frame.pixmap);
++ else if ((texture.texture() & bt::Texture::Solid))
++ XSetWindowBackground(display, frame.window,
++ texture.color1().pixel(screen->screenNumber()));
++/*** STOP: BBDOCK PATCH FOR DOCK APPS THAT USE ParentRelative ***************/
+ XClearArea(display, frame.window, 0, 0,
+ frame.rect.width(), frame.rect.height(), True);
+
diff --git a/community/blackbox/bsetbg-feh.patch b/community/blackbox/bsetbg-feh.patch
new file mode 100644
index 000000000..17a612ff0
--- /dev/null
+++ b/community/blackbox/bsetbg-feh.patch
@@ -0,0 +1,23 @@
+--- util/bsetbg.orig 2008-03-26 21:17:04.000000000 -0700
++++ util/bsetbg 2008-03-26 21:21:57.000000000 -0700
+@@ -22,7 +22,7 @@
+
+ PATH=$PATH:/usr/bin:/usr/local/bin:/usr/X11R6/bin
+
+-img_apps="display xli xsetbg Esetroot qiv wmsetbg xv"
++img_apps="display xli xsetbg Esetroot qiv wmsetbg xv feh"
+
+ display_full_cmd="display -geometry 800x600 -window root"
+ display_tile_cmd="display -window root"
+@@ -59,6 +59,11 @@
+ xsetbg_center_cmd="xsetbg -center"
+ xsetbg_default_cmd="$xsetbg_center_cmd"
+
++feh_full_cmd="feh --bg-scale"
++feh_tile_cmd="feh --bg-tile"
++feh_center_cmd="feh --bg-center"
++feh_default_cmd="$feh_center_cmd"
++
+ ##################################
+
+ me=`basename $0`
diff --git a/community/blackbox/gcc4.3.patch b/community/blackbox/gcc4.3.patch
new file mode 100644
index 000000000..40a9dcdef
--- /dev/null
+++ b/community/blackbox/gcc4.3.patch
@@ -0,0 +1,111 @@
+diff -Nur blackbox-0.70.1/lib/Image.cc blackbox-0.70.1-new/lib/Image.cc
+--- blackbox-0.70.1/lib/Image.cc 2005-04-08 08:41:09.000000000 -0700
++++ blackbox-0.70.1-new/lib/Image.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -45,6 +45,8 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+
++#include <cstring>
++
+ // #define COLORTABLE_DEBUG
+ // #define MITSHM_DEBUG
+
+diff -Nur blackbox-0.70.1/lib/Resource.cc blackbox-0.70.1-new/lib/Resource.cc
+--- blackbox-0.70.1/lib/Resource.cc 2005-04-06 14:16:50.000000000 -0700
++++ blackbox-0.70.1-new/lib/Resource.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -30,6 +30,8 @@
+
+ #include <stdio.h>
+
++#include <cstring>
++
+
+ bt::Resource::Resource(void)
+ : db(NULL)
+diff -Nur blackbox-0.70.1/lib/XDG.cc blackbox-0.70.1-new/lib/XDG.cc
+--- blackbox-0.70.1/lib/XDG.cc 2005-04-06 07:04:38.000000000 -0700
++++ blackbox-0.70.1-new/lib/XDG.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -26,7 +26,7 @@
+ #include "XDG.hh"
+
+ #include <stdlib.h>
+-
++#include <algorithm>
+
+ // make sure directory names end with a slash
+ static std::string terminateDir(const std::string &string)
+diff -Nur blackbox-0.70.1/src/BlackboxResource.cc blackbox-0.70.1-new/src/BlackboxResource.cc
+--- blackbox-0.70.1/src/BlackboxResource.cc 2005-10-18 00:34:46.000000000 -0700
++++ blackbox-0.70.1-new/src/BlackboxResource.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -33,6 +33,8 @@
+ #include <X11/Xutil.h>
+ #include <X11/cursorfont.h>
+
++#include <cstring>
++
+
+ BlackboxResource::BlackboxResource(const std::string& rc): rc_file(rc) {
+ screen_resources = 0;
+diff -Nur blackbox-0.70.1/src/Screen.cc blackbox-0.70.1-new/src/Screen.cc
+--- blackbox-0.70.1/src/Screen.cc 2005-10-18 01:07:22.000000000 -0700
++++ blackbox-0.70.1-new/src/Screen.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -48,6 +48,8 @@
+ #include <ctype.h>
+ #include <dirent.h>
+
++#include <cstring>
++
+
+ static bool running = true;
+ static int anotherWMRunning(Display *, XErrorEvent *) {
+diff -Nur blackbox-0.70.1/src/ScreenResource.cc blackbox-0.70.1-new/src/ScreenResource.cc
+--- blackbox-0.70.1/src/ScreenResource.cc 2005-04-12 22:54:08.000000000 -0700
++++ blackbox-0.70.1-new/src/ScreenResource.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -33,6 +33,8 @@
+
+ #include <assert.h>
+
++#include <cstring>
++
+
+ static const int iconify_width = 9;
+ static const int iconify_height = 9;
+diff -Nur blackbox-0.70.1/src/main.cc blackbox-0.70.1-new/src/main.cc
+--- blackbox-0.70.1/src/main.cc 2005-01-03 02:42:57.000000000 -0700
++++ blackbox-0.70.1-new/src/main.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -36,6 +36,8 @@
+
+ #include <stdio.h>
+
++#include <cstring>
++
+
+ static void showHelp(int exitval) {
+ // print version - this should not be localized!
+diff -Nur blackbox-0.70.1/util/bsetbg blackbox-0.70.1-new/util/bsetbg
+--- blackbox-0.70.1/util/bsetbg 2004-12-22 02:40:18.000000000 -0700
++++ blackbox-0.70.1-new/util/bsetbg 2008-05-21 20:52:44.000000000 -0700
+@@ -1,4 +1,4 @@
+-#!/bin/sh
++#!/bin/bash
+
+ # Copyright (c) 2000-2002 Timothy M. King (tmk@lordzork.com)
+ #
+diff -Nur blackbox-0.70.1/util/bsetroot.cc blackbox-0.70.1-new/util/bsetroot.cc
+--- blackbox-0.70.1/util/bsetroot.cc 2005-03-15 00:01:37.000000000 -0700
++++ blackbox-0.70.1-new/util/bsetroot.cc 2008-05-21 20:52:44.000000000 -0700
+@@ -27,11 +27,14 @@
+ #include <Pen.hh>
+ #include <Texture.hh>
+
++#include <cstdlib>
+ #include <cctype>
+
+ #include <X11/Xatom.h>
+ #include <stdio.h>
+
++#include <cstring>
++
+
+ // ignore all X errors
+ static int x11_error(::Display *, XErrorEvent *)
diff --git a/community/blackbox/textpropertytostring-unconditional.patch b/community/blackbox/textpropertytostring-unconditional.patch
new file mode 100644
index 000000000..ed320388a
--- /dev/null
+++ b/community/blackbox/textpropertytostring-unconditional.patch
@@ -0,0 +1,28 @@
+Description: Declare bt::textPropertyToString unconditionally.
+Author: Jakub Wilk <jwilk@debian.org>
+Forwarded: no
+Bug-Debian: http://bugs.debian.org/614468
+Last-Update: 2011-03-12
+
+--- a/lib/Util.hh
++++ b/lib/Util.hh
+@@ -25,6 +25,8 @@
+ #ifndef __Util_hh
+ #define __Util_hh
+
++#include <X11/Xutil.h>
++
+ #include <limits.h>
+ #include <string>
+
+@@ -94,10 +96,8 @@
+
+ std::string tolower(const std::string &string);
+
+-#ifdef _XUTIL_H_
+ std::string textPropertyToString(::Display *display,
+ ::XTextProperty& text_prop);
+-#endif
+
+ } // namespace bt
+
diff --git a/community/blender/PKGBUILD b/community/blender/PKGBUILD
index 79bbbdae8..85a4b3c03 100644
--- a/community/blender/PKGBUILD
+++ b/community/blender/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 70565 2012-05-11 20:09:37Z svenstaro $
+# $Id: PKGBUILD 81415 2012-12-20 13:35:35Z svenstaro $
# Contributor: John Sowiak <john@archlinux.org>
# Contributor: tobias <tobias@archlinux.org>
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
@@ -9,13 +9,15 @@
# look for release numbers only, we make a messy PKGBUILD that can checkout svn
# release if necessary.
-#_svn=true
_svn=false
pkgname=blender
-pkgver=2.63a
-pkgrel=1
-epoch=4
+true && pkgver=2.65a # Hack for svn
+true && pkgrel=2
+epoch=6
+# We will have to keep increasing the epoch because the idiots at blender.org keep releasing
+# versions that use letter suffixes that are normally used in alpha releases but are actually
+# more recent than those without the suffix.
pkgdesc="A fully integrated 3D graphics creation suite"
arch=('i686' 'x86_64')
license=('GPL')
@@ -23,82 +25,82 @@ url="http://www.blender.org"
depends=('libpng' 'libtiff' 'openexr' 'python' 'desktop-file-utils'
'shared-mime-info' 'hicolor-icon-theme' 'xdg-utils' 'glew'
'freetype2' 'openal' 'ffmpeg' 'fftw' 'boost-libs' 'opencollada'
- 'openimageio' 'libsndfile' 'jack')
-makedepends=('cmake' 'boost' 'cuda-toolkit')
-optdepends=('cuda-toolkit: cycles renderer cuda support')
+ 'openimageio' 'libsndfile' 'jack' 'opencolorio')
+makedepends=('cmake' 'boost' 'cuda' 'subversion' 'mesa')
+optdepends=('cuda: cycles renderer cuda support')
options=(!strip)
install=blender.install
-if [ $_svn = false ]; then
+if [[ $_svn = false ]]; then
source=(http://download.blender.org/source/$pkgname-$pkgver.tar.gz)
- md5sums=('31a60b3ce5466d965cb7e2648995e092')
+ md5sums=('3bbe18060c5c9c2ad600c8bfe8ee4786')
else
- source=(ftp://ftp.archlinux.org/other/${pkgname}/$pkgname-$pkgver.tar.xz)
- md5sums=('7579d1139d0d6025df8afcfca64a65c4')
+ source=()
+ md5sums=()
fi
-# source PKGBUILD && mksource
-mksource() {
- [[ -x /usr/bin/svn ]] || (echo "svn not found. Install subversion." && return 1)
- _svnver=38016
- _svntrunk="https://svn.blender.org/svnroot/bf-blender/trunk/blender"
- _svnmod="$pkgname-$pkgver"
- mkdir ${pkgname}-$pkgver
- pushd ${pkgname}-$pkgver
- svn co $_svntrunk --config-dir ./ -r $_svnver $_svnmod
- find . -depth -type d -name .svn -exec rm -rf {} \;
- tar -cJf ../${pkgname}-$pkgver.tar.xz ${pkgname}-$pkgver/*
- popd
-}
+_svntrunk="https://svn.blender.org/svnroot/bf-blender/trunk/blender"
+_svnmod="blender"
build() {
+if [[ $_svn = true ]]; then
+ cd "$srcdir"
+ msg "Connecting to SVN server...."
+
+ if [[ -d "$_svnmod/.svn" ]]; then
+ (cd "$_svnmod" && svn up )
+ else
+ svn co "$_svntrunk" --config-dir ./ "$_svnmod"
+ fi
+
+ msg "SVN checkout done or server timeout"
+ msg "Starting build..."
+
+ rm -rf "$srcdir/$_svnmod-build"
+ cp -r "$srcdir/$_svnmod" "$srcdir/$_svnmod-build"
+ cd "$srcdir/$_svnmod-build"
+else
cd "$srcdir/$pkgname-$pkgver"
+fi
+
mkdir build
cd build
- [[ $CARCH == i686 ]] && ENABLESSE2="-DSUPPORT_SSE2_BUILD:BOOL=OFF"
+ [[ $CARCH == i686 ]] && ENABLESSE2="-DSUPPORT_SSE2_BUILD=OFF"
cmake .. \
- -DCMAKE_INSTALL_PREFIX:PATH=/usr \
- -DCMAKE_BUILD_TYPE:STRING=Release \
- -DWITH_INSTALL_PORTABLE:BOOL=OFF \
- -DWITH_PYTHON_INSTALL:BOOL=OFF \
- -DWITH_OPENCOLLADA:BOOL=ON \
- -DOPENIMAGEIO_ROOT_DIR:STRING=/usr \
- -DWITH_GAMEENGINE:BOOL=ON \
- -DWITH_JACK:BOOL=ON \
- -DWITH_PLAYER:BOOL=ON \
- -DWITH_BUILTIN_GLEW:BOOL=OFF \
- -DWITH_CODEC_FFMPEG:BOOL=ON \
- -DWITH_CODEC_SNDFILE:BOOL=ON \
- -DWITH_CYCLES:BOOL=ON \
- -DWITH_CYCLES_CUDA_BINARIES:BOOL=ON \
- -DCUDA_TOOLKIT_ROOT_DIR:STRING=/opt/cuda-toolkit/ \
- -DWITH_FFTW3:BOOL=ON \
- -DWITH_MOD_OCEANSIM:BOOL=ON \
- -DPYTHON_VERSION:STRING=3.2 \
- -DPYTHON_LIBPATH:STRING=/usr/lib \
- -DPYTHON_LIBRARY:STRING=python3.2mu \
- -DPYTHON_INCLUDE_DIRS:STRING=/usr/include/python3.2mu \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DWITH_INSTALL_PORTABLE=OFF \
+ -DWITH_PYTHON_INSTALL=OFF \
+ -DWITH_OPENCOLLADA=ON \
+ -DOPENIMAGEIO_ROOT_DIR=/usr \
+ -DWITH_GAMEENGINE=ON \
+ -DWITH_JACK=ON \
+ -DWITH_PLAYER=ON \
+ -DWITH_CODEC_FFMPEG=ON \
+ -DWITH_CODEC_SNDFILE=ON \
+ -DWITH_CYCLES=ON \
+ -DWITH_CYCLES_CUDA_BINARIES=ON \
+ -DCUDA_TOOLKIT_ROOT_DIR=/opt/cuda-toolkit/ \
+ -DWITH_FFTW3=ON \
+ -DWITH_MOD_OCEANSIM=ON \
+ -DPYTHON_VERSION=3.3 \
+ -DPYTHON_LIBPATH=/usr/lib \
+ -DPYTHON_LIBRARY=python3.3m \
+ -DPYTHON_INCLUDE_DIRS=/usr/include/python3.3m \
$ENABLESSE2
make $MAKEFLAGS
-# cp -rf "$srcdir"/${pkgname}-$pkgver/release/plugins/* \
-# "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi/
-# cd "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi
-# chmod 755 bmake
make
}
package() {
- cd "$srcdir/$pkgname-$pkgver/build"
+ if [[ $_svn = true ]]; then
+ cd "$srcdir/$_svnmod-build/build"
+ else
+ cd "$srcdir/$pkgname-$pkgver/build"
+ fi
make DESTDIR="${pkgdir}" install
python -m compileall "${pkgdir}/usr/share/blender"
-
-# install plugins
-# install -d -m755 "$pkgdir"/usr/share/blender/${pkgver%[a-z]}/plugins/{sequence,texture}
-# cp "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi/sequence/*.so \
-# "$pkgdir"/usr/share/blender/${pkgver%[a-z]}/plugins/sequence/
-# cp "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi/texture/*.so \
-# "$pkgdir"/usr/share/blender/${pkgver%[a-z]}/plugins/texture/
}
diff --git a/community/boinc/PKGBUILD b/community/boinc/PKGBUILD
new file mode 100644
index 000000000..7e24b51c0
--- /dev/null
+++ b/community/boinc/PKGBUILD
@@ -0,0 +1,74 @@
+# $Id: PKGBUILD 79673 2012-11-11 01:08:11Z fyan $
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+# Contributor: Michal Krenek <mikos@sg1.cz>
+
+pkgname=boinc
+pkgver=7.0.28
+pkgrel=1
+pkgdesc="Berkeley Open Infrastructure for Network Computing for desktop with X"
+arch=('i686' 'x86_64')
+url="http://boinc.berkeley.edu/"
+license=('LGPL')
+depends=('curl' 'wxgtk' 'libnotify' 'libxss' 'sqlite')
+makedepends=('curl' 'libxslt' 'perl-xml-sax' 'subversion' 'wxgtk' 'libnotify')
+options=('!libtool')
+install=$pkgname.install
+source=(boinc.rc boinc.bash boinc.desktop boinc.service boinc-AM_CONDITIONAL.patch)
+
+_svnroot="http://boinc.berkeley.edu/svn/tags"
+_svnmod="boinc_core_release_${pkgver//./_}"
+
+build() {
+ cd ${srcdir}
+
+ msg "Connecting to boinc.berkeley.edu SVN server..."
+ svn co ${_svnroot}/${_svnmod} || (error "SVN checkout failed" && return 1)
+ msg "SVN checkout done or server timeout"
+
+ msg "Starting make..."
+ rm -fr ${_svnmod}-build
+ cp -r $_svnmod $_svnmod-build
+ cd $_svnmod-build
+
+ patch -p1 -i ${srcdir}/boinc-AM_CONDITIONAL.patch
+
+ ./_autosetup
+
+ ./configure --prefix=/usr --disable-server --enable-unicode --with-ssl \
+ --with-wxdir=/usr/lib --with-wx-config=$(which wx-config) \
+ --disable-static --enable-client --enable-manager --with-x LDFLAGS='-lX11'
+ make
+}
+
+package() {
+ cd ${srcdir}/$_svnmod-build
+
+ make DESTDIR=${pkgdir} install
+
+#install rc-script
+ install -D -m755 ${srcdir}/$pkgname.rc ${pkgdir}/etc/rc.d/$pkgname
+
+#install systemd unit
+ install -D -m644 ${srcdir}/$pkgname.service ${pkgdir}/usr/lib/systemd/system/$pkgname.service
+
+#install bash-completion
+ install -D -m644 ${srcdir}/$pkgname.bash ${pkgdir}/usr/share/bash-completion/completions/$pkgname
+
+#install .desktop File
+ install -D -m644 ${srcdir}/${pkgname}.desktop \
+ ${pkgdir}/usr/share/applications/${pkgname}.desktop
+
+#install icons
+ install -D -m644 ${srcdir}/${_svnmod}-build/clientgui/res/boincmgr.48x48.png \
+ ${pkgdir}/usr/share/pixmaps/$pkgname.png
+
+#killing /etc/init.d directory
+ rm -rf ${pkgdir}/etc/init.d
+}
+
+md5sums=('c6dadc333f982ea7b548602a70bd1e93'
+ '4d00e1aa4090a3f51feb20f5a541b9ee'
+ '17969d849f3cf27c2100b20a7b7a7e64'
+ '3d5cbab785cc8b004661b17c65883fd5'
+ 'e27047518dec54d4db38816487a28661')
diff --git a/community/boinc/boinc-AM_CONDITIONAL.patch b/community/boinc/boinc-AM_CONDITIONAL.patch
new file mode 100644
index 000000000..3ebf7c887
--- /dev/null
+++ b/community/boinc/boinc-AM_CONDITIONAL.patch
@@ -0,0 +1,19 @@
+--- A/configure.ac
++++ B/configure.ac
+@@ -39,6 +39,7 @@ AC_PROG_CC
+ AC_PROG_CXX
+ AC_PROG_F77
+ AC_PROG_CPP
++AC_PROG_OBJCXX
+ AC_PROG_MAKE_SET
+ SAH_LINKS
+ AC_LANG_PUSH(C)
+@@ -744,6 +745,8 @@ AM_CONDITIONAL(ENABLE_LIBRARIES, [test "
+ AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes])
+ AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so])
+
++PKG_CHECK_MODULES([GTK2], [gtk+-2.0])
++
+ dnl ======================================================================
+ dnl some more vodoo required for building portable client-binary (client, clientgui)
+ dnl ======================================================================
diff --git a/community/boinc/boinc.bash b/community/boinc/boinc.bash
new file mode 100644
index 000000000..b614dd54c
--- /dev/null
+++ b/community/boinc/boinc.bash
@@ -0,0 +1,99 @@
+# Source this file in BASH to get command completion (using tab) for
+# boinc and boinccmd. Written by Frank S. Thomas <fst@debian.org>.
+# See also: http://boinc.berkeley.edu/trac/wiki/BashCommandCompletion
+
+_boinc()
+{
+ local cur prev opts
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+
+ opts="$(boinc_client --help | \
+ sed -n -r 's/^[[:space:]]*(--[a-z_]*).*/\1/p')"
+
+ # Handle options that require one or more arguments.
+ case "$prev" in
+ --attach_project|--detach_project|--reset_project|--update_prefs|\
+ --gui_rpc_port)
+ return 0
+ ;;
+ esac
+
+ # Handle options that require two arguments.
+ if [[ COMP_CWORD -gt 1 ]]; then
+ pprev="${COMP_WORDS[COMP_CWORD-2]}"
+
+ case "$pprev" in
+ --attach_project)
+ return 0
+ ;;
+ esac
+ fi
+
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $(compgen -W "$opts" -- "$cur") )
+ return 0
+ fi
+}
+complete -F _boinc -o default boinc_client
+
+_boinccmd()
+{
+ local cur prev opts cmds
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+
+ opts="--host --passwd -h --help -V --version"
+ cmds="$(boinc_cmd --help 2>&1 | \
+ sed -n -r 's/^[[:space:]]*(--[a-z_]*).*/\1/p')"
+
+ # The following construct assures that:
+ # - no command follows if one of $opts or $cmds was given
+ # - after --host follows only one command or --passwd and one command
+ # - after --passwd follows only one command
+ if [[ $COMP_CWORD -eq 1 ]]; then
+ COMPREPLY=( $(compgen -W "$opts $cmds" -- "$cur") )
+ return 0
+ else
+ if [[ "${COMP_WORDS[@]}" =~ ".* --host .* --passwd .*" ]]; then
+ if [[ $COMP_CWORD -eq 5 ]]; then
+ COMPREPLY=( $(compgen -W "$cmds" -- "$cur") )
+ fi
+ elif [[ "${COMP_WORDS[@]}" =~ ".* --passwd .*" ]]; then
+ if [[ $COMP_CWORD -eq 3 ]]; then
+ COMPREPLY=( $(compgen -W "$cmds" -- "$cur") )
+ fi
+ elif [[ "${COMP_WORDS[@]}" =~ ".* --host .*" ]]; then
+ if [[ $COMP_CWORD -eq 3 ]]; then
+ COMPREPLY=( $(compgen -W "--passwd $cmds" -- "$cur") )
+ fi
+ fi
+ fi
+
+ # Handle options/commands that require one or more arguments.
+ case "$prev" in
+ --get_messages|--passwd)
+ return 0
+ ;;
+
+ --host)
+ _known_hosts
+ return 0
+ ;;
+
+ --set_run_mode|--set_network_mode)
+ COMPREPLY=( $(compgen -W "always auto never" -- "$cur") )
+ return 0
+ ;;
+
+ --set_screensaver_mode)
+ COMPREPLY=( $(compgen -W "on off" -- "$cur") )
+ return 0
+ ;;
+ esac
+}
+complete -F _boinccmd boinc_cmd
+
+# vim: syntax=sh \ No newline at end of file
diff --git a/community/boinc/boinc.desktop b/community/boinc/boinc.desktop
new file mode 100644
index 000000000..267d56d6d
--- /dev/null
+++ b/community/boinc/boinc.desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Type=Application
+Version=1.0
+Exec=/usr/bin/boincmgr
+Path=/var/lib/boinc
+Icon=boincmgr
+Categories=System;Monitor;GTK;
+Name=BOINC Manager
+GenericName=BOINC monitor and control utility
+GenericName[cs]=Monitorovací a ovládací nástroj pro BOINC
+GenericName[de]=BOINC Überwachungs- und Kontrollprogramm
+GenericName[pt]=Monitorização BOINC e utilitário de controlo
+Comment=Configure or monitor a BOINC core client
+Comment[cs]=Monitoruje a nastavuje klienta BOINC
+Comment[de]=BOINC Basis Client konfigurieren oder überwachen
+Comment[pt]=Configurar ou monitorizar o cliente básico do BOINC
diff --git a/community/boinc/boinc.install b/community/boinc/boinc.install
new file mode 100644
index 000000000..b54002ada
--- /dev/null
+++ b/community/boinc/boinc.install
@@ -0,0 +1,23 @@
+# arg 1: the new package version
+post_install() {
+ /usr/sbin/groupadd boinc 2>/dev/null || true
+ /usr/sbin/useradd -s /bin/bash -g boinc -d /var/lib/boinc boinc 2>/dev/null || true
+
+ if [ ! -d /var/lib/boinc ]; then
+ install -d /var/lib/boinc
+ fi
+ chown -R boinc:boinc /var/lib/boinc
+
+ echo '>>> Client RPC password can be found in /var/lib/boinc/gui_rpc_auth.cfg'
+ echo '>>> (this file is generated after first run of /etc/rc.d/boinc start).'
+ echo '>>> Remove it from gui_rpc_auth.cfg if you do not want to use password.'
+ echo '>>> See more details on the Arch Linux BOINC wiki page.'
+}
+
+# arg 1: the old package version
+post_remove() {
+ /usr/sbin/userdel boinc
+ /usr/sbin/groupdel boinc
+
+ echo '>>> If you really do not want to run Boinc in the future, you may completely remove the directory "/var/lib/boinc".'
+}
diff --git a/community/boinc/boinc.rc b/community/boinc/boinc.rc
new file mode 100644
index 000000000..160043a04
--- /dev/null
+++ b/community/boinc/boinc.rc
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+
+BOINCUSER="boinc"
+BOINCDIR="/var/lib/boinc"
+PID=`pidof -o %PPID /usr/bin/boinc_client`
+case "$1" in
+ attach)
+ echo "Enter the Project URL: "
+ read url
+ echo "Enter your Account Key: "
+ read key
+ echo "Attaching to project"
+ cd $BOINCDIR
+ su $BOINCUSER -c "boinccmd --project_attach $url $key"
+;;
+ start)
+ stat_busy "Starting boinc"
+ if [ -z "$PID" ]; then
+ su $BOINCUSER -c "nice -n 19 /usr/bin/boinc_client --daemon --dir ${BOINCDIR} --redirectio"
+ else
+ false
+ fi
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon boinc
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping boinc"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon boinc
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 2
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {attach|start|stop|restart}"
+esac
+exit 0
diff --git a/community/boinc/boinc.service b/community/boinc/boinc.service
new file mode 100644
index 000000000..12634ff5a
--- /dev/null
+++ b/community/boinc/boinc.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=BOINC Daemon
+
+[Service]
+User=boinc
+Nice=19
+ExecStart=/usr/bin/boinc_client --dir /var/lib/boinc --redirectio
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/calibre/PKGBUILD b/community/calibre/PKGBUILD
new file mode 100644
index 000000000..32dcab244
--- /dev/null
+++ b/community/calibre/PKGBUILD
@@ -0,0 +1,73 @@
+# $Id: PKGBUILD 81470 2012-12-21 14:35:15Z giovanni $
+# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Petrov Roman <nwhisper@gmail.com>
+# Contributor: Andrea Fagiani <andfagiani _at_ gmail dot com>
+
+pkgname=calibre
+pkgver=0.9.11
+pkgrel=1
+pkgdesc="Ebook management application"
+arch=('i686' 'x86_64')
+url="http://calibre-ebook.com/"
+license=('GPL3')
+depends=('python2-dateutil' 'python2-cssutils' 'python2-cherrypy'
+ 'python2-mechanize' 'podofo' 'libwmf' 'python2-beautifulsoup3'
+ 'imagemagick' 'poppler-qt' 'chmlib' 'python2-lxml' 'libusbx'
+ 'python2-imaging' 'shared-mime-info' 'python2-dnspython'
+ 'libunrar' 'python2-pyqt' 'python2-psutil' 'icu' 'libmtp'
+ 'python2-netifaces' 'python2-cssselect')
+makedepends=('python2-pycountry')
+optdepends=('ipython2: to use calibre-debug')
+install=calibre.install
+source=("http://calibre-ebook.googlecode.com/files/${pkgname}-${pkgver}.tar.xz"
+ 'desktop_integration.patch'
+ 'calibre-mount-helper')
+md5sums=('07e620aed65d7bae2a27ccea123da4c9'
+ '42c07b43d575b5e7e7524bd7b9528f0e'
+ '675cd87d41342119827ef706055491e7')
+
+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
+
+ # Fix for calibre-0.8.58
+ sed -i -e "s:#!usr:#!/usr:g" src/calibre/ebooks/markdown/extensions/meta.py
+
+ sed -i -e 's:\(#!/usr/bin/env[ ]\+python$\|#![ ]/usr/bin/env[ ]\+python$\|#!/usr/bin/python$\):\12:g' \
+ $(find . -regex ".*.py\|.*.recipe")
+
+ LANG='en_US.UTF-8' python2 setup.py build
+ # LANG='en_US.UTF-8' python2 setup.py resources
+ LANG='en_US.UTF-8' 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"
+ LANG='en_US.UTF-8' 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
+
+ # See http://lwn.net/SubscriberLink/465311/7c299471a5399167/
+ rm -rf "${pkgdir}/usr/bin/calibre-mount-helper"
+ install -m 755 "${srcdir}/calibre-mount-helper" "${pkgdir}/usr/bin"
+}
diff --git a/community/calibre/calibre-mount-helper b/community/calibre/calibre-mount-helper
new file mode 100755
index 000000000..00cac4270
--- /dev/null
+++ b/community/calibre/calibre-mount-helper
@@ -0,0 +1,28 @@
+#!/bin/sh -e
+# Replacement for upstream mount helper using udisks/eject
+# (C) 2010 Martin Pitt <mpitt@debian.org>
+
+ACTION="$1"
+DEV="$2"
+
+case "$ACTION" in
+ mount)
+ udisks --mount "$DEV"
+
+ # check if mount worked. If not, fail
+ # udisks does return 0 even if mount failed
+ mount | grep -q "$DEV" || exit 0
+ ;;
+
+ eject)
+ eject "$DEV"
+ ;;
+
+ cleanup)
+ ;;
+
+ *)
+ echo "unknown action" >&2
+ exit 1
+esac
+
diff --git a/community/calibre/calibre.install b/community/calibre/calibre.install
new file mode 100644
index 000000000..6210bd0ab
--- /dev/null
+++ b/community/calibre/calibre.install
@@ -0,0 +1,12 @@
+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/calibre/desktop_integration.patch b/community/calibre/desktop_integration.patch
new file mode 100644
index 000000000..4c756f5d4
--- /dev/null
+++ b/community/calibre/desktop_integration.patch
@@ -0,0 +1,109 @@
+--- a/src/calibre/linux.py 2012-09-21 06:56:20.000000000 +0200
++++ b/src/calibre/linux.py 2012-09-22 18:51:12.000000000 +0200
+@@ -179,19 +179,6 @@
+ self.setup_completion()
+ if islinux or isbsd:
+ self.setup_desktop_integration()
+- self.create_uninstaller()
+-
+- from calibre.utils.config import config_dir
+- if os.path.exists(config_dir):
+- os.chdir(config_dir)
+- if islinux or isbsd:
+- for f in os.listdir('.'):
+- if os.stat(f).st_uid == 0:
+- import shutil
+- shutil.rmtree(f) if os.path.isdir(f) else os.unlink(f)
+- if os.stat(config_dir).st_uid == 0:
+- os.rmdir(config_dir)
+-
+ if warn is None and self.warnings:
+ self.info('There were %d warnings'%len(self.warnings))
+ for args, kwargs in self.warnings:
+@@ -237,7 +224,7 @@
+ if isnetbsd:
+ f = os.path.join(self.opts.staging_root, 'share/bash_completion.d/calibre')
+ else:
+- f = os.path.join(self.opts.staging_etc, 'bash_completion.d/calibre')
++ f = os.path.join(self.opts.staging_root, 'usr/share/bash-completion/completions/calibre')
+ if not os.path.exists(os.path.dirname(f)):
+ os.makedirs(os.path.dirname(f))
+ self.manifest.append(f)
+@@ -357,63 +344,39 @@
+
+ with TemporaryDirectory() as tdir, CurrentDir(tdir), \
+ PreserveMIMEDefaults():
+- render_img('mimetypes/lrf.png', 'calibre-lrf.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-lrf.png application-lrf', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-lrf', '128'))
+- cc('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('mimetypes/mobi.png', 'calibre-mobi.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-mobi.png application-x-mobipocket-ebook', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-mobipocket-ebook', '128'))
+- render_img('mimetypes/tpz.png', 'calibre-tpz.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-tpz.png application-x-topaz-ebook', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-topaz-ebook', '128'))
+- render_img('mimetypes/azw2.png', 'calibre-azw2.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-azw2.png application-x-kindle-application', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-kindle-application', '128'))
+- render_img('mimetypes/azw3.png', 'calibre-azw3.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-azw3.png application-x-mobi8-ebook', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-mobi8-ebook', '128'))
+- render_img('lt.png', 'calibre-gui.png', width=256, height=256)
+- cc('xdg-icon-resource install --noupdate --size 256 calibre-gui.png calibre-gui', shell=True)
+- self.icon_resources.append(('apps', 'calibre-gui', '128'))
+- render_img('viewer.png', 'calibre-viewer.png')
+- cc('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]
+- cc(' '.join(cmd), shell=True)
+- self.menu_resources.append(x)
+- cc(['xdg-desktop-menu', 'forceupdate'])
+- f = open('calibre-mimetypes.xml', '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.xml')
+- cc('xdg-mime install ./calibre-mimetypes.xml', shell=True)
+ except Exception:
+ if self.opts.fatal_errors:
+ raise
diff --git a/community/catalyst-utils/PKGBUILD b/community/catalyst-utils/PKGBUILD
new file mode 100644
index 000000000..3fa6a4509
--- /dev/null
+++ b/community/catalyst-utils/PKGBUILD
@@ -0,0 +1,136 @@
+# $Id: PKGBUILD 77684 2012-10-13 13:37:15Z lcarlier $
+# Maintainer: Laurent Carlier <lordheavym@gmail.com>
+# Contributor: Vi0L0, wonder, Eduardo "kensai" Romero
+# Contributor: aidanlinz, Rip-Rip, OvsInc, Sebastian Siebert
+
+pkgbase=catalyst-utils
+pkgname=('catalyst-utils' 'opencl-catalyst')
+pkgver=12.9
+pkgrel=0.1
+pkgdesc="AMD Catalyst drivers utilities and libraries with OpenCL implementation."
+arch=('i686' 'x86_64')
+url="http://www.amd.com"
+license=('custom')
+source=(#"http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.zip"
+ https://launchpad.net/ubuntu/quantal/+source/fglrx-installer/2:9.000-0ubuntu1/+files/fglrx-installer_9.000.orig.tar.gz
+ fglrx-authfile-locations.patch
+ atieventsd
+ atieventsd.service)
+md5sums=('2bb6e8193fdddff9bbd2e3d9f9e8f39b'
+ '31ec3f0432dc2e9bf3203223aa75ce20'
+ 'f729bf913613f49b0b9759c246058a87'
+ '4bdb353dea68e33ac9e20ec30cc42082')
+
+if [ "${CARCH}" = "i686" ]; then
+ _ARCHDIR="x86"
+ _ARCHLIB=""
+ _ARCHXPIC=""
+else
+ _ARCHDIR="x86_64"
+ _ARCHLIB="64"
+ _ARCHXPIC="_64a"
+fi
+
+build() {
+ cd ${srcdir}
+
+# sh ./amd-driver-installer*.run --extract fglrx-install
+#
+# cd fglrx-install
+ patch -Np2 -i fglrx-authfile-locations.patch
+}
+
+package_catalyst-utils() {
+ pkgdesc="AMD Catalyst drivers utilities and libraries."
+ provides=('libgl')
+ conflicts=('libgl' 'nvidia-utils')
+ depends=('xorg-server>=1.7.0' 'gcc-libs' 'libxinerama' 'libxcursor' 'libxxf86vm' 'libxrandr' 'libsm' 'fontconfig' 'libxi' 'netkit-bsd-finger')
+ optdepends=('qt: amdcccle'
+ 'acpid: acpi event support')
+
+ install -dm755 "${pkgdir}"/usr/{bin,sbin}
+ install -dm755 "${pkgdir}"/usr/lib/{dri,xorg/modules/{dri,drivers,extensions/fglrx,linux},systemd/system}
+ install -dm755 "${pkgdir}"/usr/include/GL
+ install -dm755 "${pkgdir}"/etc/{ati,acpi/events,security/console.apps,rc.d}
+ install -dm755 "${pkgdir}"/usr/share/{applications,ati/amdcccle,man/man8,pixmaps}
+
+ # binaries
+ cd ${srcdir}
+ install -m755 usr/sbin/* "${pkgdir}/usr/sbin/"
+ install -m755 usr/X11R6/bin/* "${pkgdir}/usr/bin/"
+ install -m755 arch/${_ARCHDIR}/usr/sbin/* "${pkgdir}/usr/sbin/"
+ install -m755 arch/${_ARCHDIR}/usr/X11R6/bin/* "${pkgdir}/usr/bin/"
+
+ # headers
+ install -m644 usr/include/GL/* "${pkgdir}/usr/include/GL/"
+
+ # xorg/dri/gl/... drivers
+ cd xpic${_ARCHXPIC}/usr/X11R6/lib${_ARCHLIB}/modules
+ install -m755 *.so "${pkgdir}/usr/lib/xorg/modules/"
+ install -m755 drivers/*.so "${pkgdir}/usr/lib/xorg/modules/drivers/"
+ install -m755 linux/*.so "${pkgdir}/usr/lib/xorg/modules/linux/"
+ install -m755 extensions/fglrx/fglrx-libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/fglrx/"
+ ln -s fglrx/fglrx-libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so"
+ cd ${srcdir}/arch/${_ARCHDIR}/usr/X11R6/lib${_ARCHLIB}
+ install -m755 modules/dri/fglrx_dri.so "${pkgdir}/usr/lib/xorg/modules/dri/"
+ ln -s /usr/lib/xorg/modules/dri/fglrx_dri.so "${pkgdir}/usr/lib/dri/"
+ install -m755 fglrx/fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/"
+ install -m755 *.so* "${pkgdir}/usr/lib/"
+ install -m644 libAMDXvBA.cap "${pkgdir}/usr/lib/"
+ cd ${srcdir}/arch/${_ARCHDIR}/usr/lib${_ARCHLIB}
+ install -m755 *.so* "${pkgdir}/usr/lib/"
+ # needed symlinks
+ ln -s libatiuki.so.1.0 "${pkgdir}/usr/lib/libatiuki.so.1"
+ ln -s fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so.1"
+ ln -s fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so"
+ ln -s libAMDXvBA.so.1.0 "${pkgdir}/usr/lib/libAMDXvBA.so.1"
+ ln -s libXvBAW.so.1.0 "${pkgdir}/usr/lib/libXvBAW.so"
+ ln -s libfglrx_dm.so.1.0 "${pkgdir}/usr/lib/libfglrx_dm.so.1"
+
+ # various files
+ cd ${srcdir}
+ install -m644 usr/share/man/man8/* "${pkgdir}/usr/share/man/man8/"
+ install -m644 usr/share/applications/* "${pkgdir}/usr/share/applications/"
+ install -m644 usr/share/icons/* "${pkgdir}/usr/share/pixmaps/"
+ install -m644 usr/share/ati/amdcccle/* "${pkgdir}/usr/share/ati/amdcccle/"
+ install -m644 etc/ati/* "${pkgdir}/etc/ati/"
+ chmod 755 "${pkgdir}/etc/ati/authatieventsd.sh"
+ install -m644 etc/security/console.apps/amdcccle-su "${pkgdir}/etc/security/console.apps/"
+ install -m644 usr/share/applications/*.desktop "${pkgdir}/usr/share/applications/"
+ # use ACPI example files
+ install -m755 usr/share/doc/fglrx/examples/etc/acpi/*.sh "${pkgdir}/etc/acpi/"
+ install -m644 usr/share/doc/fglrx/examples/etc/acpi/events/* "${pkgdir}/etc/acpi/events/"
+ # systemd and rc.d scripts
+ install -m755 "${srcdir}/atieventsd" "${pkgdir}/etc/rc.d/"
+ install -m644 "${srcdir}/atieventsd.service" "${pkgdir}/usr/lib/systemd/system/"
+
+ # provided in opencl-catalyst package
+ rm "${pkgdir}"/usr/lib/lib{amdocl*,OpenCL}.so*
+
+ # licenses
+ install -Dm644 "${srcdir}/usr/share/doc/fglrx/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.TXT"
+ install -Dm644 "${srcdir}/usr/share/doc/amdcccle/ccc_copyrights.txt" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/amdcccle_copyrights.txt"
+}
+
+package_opencl-catalyst() {
+ pkgdesc="OpenCL implemention from AMD"
+ provides=('libcl')
+ conflicts=('libcl')
+ depends=('gcc-libs')
+ optdepends=('opencl-headers: headers necessary for OpenCL development')
+
+ install -dm755 "${pkgdir}"/usr/{bin,lib}
+ install -dm755 "${pkgdir}/etc/OpenCL/vendors"
+
+ cd ${srcdir}/arch/${_ARCHDIR}
+
+ install -m755 usr/bin/clinfo "${pkgdir}/usr/bin/"
+ install -m644 etc/OpenCL/vendors/amdocl*.icd "${pkgdir}/etc/OpenCL/vendors/"
+ install -m755 usr/lib${_ARCHLIB}/libamdocl*.so "${pkgdir}/usr/lib/"
+ install -m755 usr/lib${_ARCHLIB}/libOpenCL.so.1 "${pkgdir}/usr/lib/"
+ ln -s libOpenCL.so.1 "${pkgdir}/usr/lib/libOpenCL.so"
+
+ # license
+ install -Dm644 "${srcdir}//usr/share/doc/fglrx/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.TXT"
+}
diff --git a/community/catalyst-utils/atieventsd b/community/catalyst-utils/atieventsd
new file mode 100644
index 000000000..16bd9a4fa
--- /dev/null
+++ b/community/catalyst-utils/atieventsd
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+ATID_PID=`pidof -o %PPID /usr/sbin/atieventsd`
+
+case "$1" in
+ start)
+ rc=0
+ stat_busy "Starting ATI Events Daemon"
+ [ -z "$ATID_PID" ] && /usr/sbin/atieventsd
+ rc=$(($rc+$?))
+ if [ $rc -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon atieventsd
+ stat_done
+ fi
+ ;;
+ stop)
+ rc=0
+ stat_busy "Stopping ATI Events Daemon"
+ kill $ATID_PID &>/dev/null
+ rc=$(($rc+$?))
+ if [ $rc -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon atieventsd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community/catalyst-utils/atieventsd.service b/community/catalyst-utils/atieventsd.service
new file mode 100644
index 000000000..90af165bd
--- /dev/null
+++ b/community/catalyst-utils/atieventsd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Catalyst event Daemon
+Requires=acpid.socket
+
+[Service]
+ExecStart=/usr/sbin/atieventsd --nodaemon
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/community/catalyst-utils/fglrx-authfile-locations.patch b/community/catalyst-utils/fglrx-authfile-locations.patch
new file mode 100644
index 000000000..3617e310b
--- /dev/null
+++ b/community/catalyst-utils/fglrx-authfile-locations.patch
@@ -0,0 +1,16 @@
+Index: ati803/common/etc/ati/authatieventsd.sh
+===================================================================
+--- ati803/common/etc/ati/authatieventsd.sh
++++ ati803/common/etc/ati/authatieventsd.sh 2008-04-18 23:25:27.000000000 +0300
+@@ -34,8 +34,9 @@
+
+ # Check xdm/kdm
+
+- XDM_AUTH_MASK=/var/lib/xdm/authdir/authfiles/A$1*
+- XDM_AUTH_FILE=`ls -t $XDM_AUTH_MASK 2>/dev/null | head -n 1` # Choose the newest file
++ XDM_AUTH_MASK=/var/lib/xdm/authfiles/A$1*
++ KDM_AUTH_MASK=/var/run/xauth/A$1*
++ XDM_AUTH_FILE=`ls -t $XDM_AUTH_MASK $KDM_AUTH_MASK 2>/dev/null | head -n 1` # Choose the newest file
+ if [ -n "$XDM_AUTH_FILE" ]; then
+ SERVER_AUTH_FILE=$XDM_AUTH_FILE
+ DISP_SEARCH_STRING="#ffff#"
diff --git a/community/cdfs/PKGBUILD b/community/cdfs/PKGBUILD
index 1d6e355e5..a0cb76e27 100644
--- a/community/cdfs/PKGBUILD
+++ b/community/cdfs/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 74190 2012-07-22 19:39:07Z spupykin $
+# $Id: PKGBUILD 79176 2012-10-31 07:24:57Z tpowa $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: J. Santiago Hirschfeld <jsantiagoh@yahoo.com.ar>
pkgname=cdfs
pkgver=2.6.27
-pkgrel=23
+pkgrel=33
pkgdesc="File system module that 'exports' all tracks and boot images on a CD as normal files."
arch=(i686 x86_64)
url="http://www.elis.UGent.be/~ronsse/cdfs/"
diff --git a/community/cdfs/cdfs.install b/community/cdfs/cdfs.install
index 6be46f6d5..7d2ea4d31 100644
--- a/community/cdfs/cdfs.install
+++ b/community/cdfs/cdfs.install
@@ -1,14 +1,14 @@
post_install() {
- EXTRAMODULES='extramodules-3.4-ARCH'
+ EXTRAMODULES='extramodules-3.6-ARCH'
depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
}
post_upgrade() {
- EXTRAMODULES='extramodules-3.4-ARCH'
+ EXTRAMODULES='extramodules-3.6-ARCH'
depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
}
post_remove() {
- EXTRAMODULES='extramodules-3.4-ARCH'
+ EXTRAMODULES='extramodules-3.6-ARCH'
depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
}
diff --git a/community/cinelerra-cv/PKGBUILD b/community/cinelerra-cv/PKGBUILD
new file mode 100644
index 000000000..339265f54
--- /dev/null
+++ b/community/cinelerra-cv/PKGBUILD
@@ -0,0 +1,89 @@
+# $Id: PKGBUILD 80152 2012-11-16 23:35:55Z ioni $
+# Maintainer: Ray Rashif <schiv@archlinux.org>
+# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
+# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
+# Contributor: Alexander Rødseth <rodseth@gmail.com>
+
+pkgname=cinelerra-cv
+pkgver=2.2
+_gitrel=2.2.0
+pkgrel=12
+epoch=1
+pkgdesc="Professional video editing and compositing environment"
+arch=('x86_64' 'i686')
+url="http://cinelerra.org/"
+license=('GPL')
+depends=('e2fsprogs' 'libavc1394' 'libiec61883' 'freetype2'
+ 'libtiff' 'mjpegtools' 'fftw' 'a52dec' 'glu'
+ 'ffmpeg' 'libxv' 'faad2' 'faac' 'openexr' 'ilmbase>=1.0.3')
+makedepends=('git' 'nasm' 'mesa')
+options=('!libtool')
+source=('v4l1_removal.patch'
+ 'ffmpeg_api.patch')
+md5sums=('bfa85e20809429d88eba4ab83e569612'
+ 'b05ec2fb54e7d02f6167525417802111')
+
+_gituri="git://git.cinelerra.org/CinelerraCV.git"
+_gitdir="cinelerra"
+
+_confit() {
+ ./configure --prefix=/usr \
+ --with-buildinfo=git/recompile \
+ --with-external-ffmpeg \
+ --enable-opengl \
+ --disable-esd $@
+}
+
+build() {
+ msg "Connecting to GIT server...."
+
+ if [ -d $_gitdir ] ; then
+ cd $_gitdir && git pull origin
+ msg "The local files are updated."
+ else
+ git clone $_gituri -b rel$_gitrel $_gitdir
+ fi
+
+ msg "GIT checkout done or server timeout"
+ msg "Starting make..."
+
+ rm -rf "$srcdir/$_gitdir-build"
+ cp -r "$srcdir/$_gitdir" "$srcdir/$_gitdir-build"
+ cd "$srcdir/$_gitdir-build"
+
+ # gcc 4.6 workaround
+ export CFLAGS+=" -Wwrite-strings -D__STDC_CONSTANT_MACROS"
+ export CPPFLAGS="$CFLAGS"
+
+ # remove executable stack
+ export LDFLAGS+=" -Wl,-z,noexecstack"
+
+ # v4l1 removal patch
+ patch -Np1 -i "$srcdir/v4l1_removal.patch"
+
+ # new ffmpeg api patch
+ patch -Np1 -i "$srcdir/ffmpeg_api.patch"
+
+ sed -i -e '/Debian/d' admin/nasm
+
+ # if you don't need OpenGL comment out the next line (and no glu/mesa dep)
+ sed -i '/\/X11R6/s///' configure.in
+
+ ./autogen.sh
+
+ if [ "$CARCH" = 'x86_64' ]; then
+ _confit --disable-mmx
+ else
+ _confit --enable-mmx
+ fi
+
+ make
+}
+
+package() {
+ cd "$srcdir/$_gitdir-build"
+
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/cinelerra-cv/ffmpeg_api.patch b/community/cinelerra-cv/ffmpeg_api.patch
new file mode 100644
index 000000000..d9747476c
--- /dev/null
+++ b/community/cinelerra-cv/ffmpeg_api.patch
@@ -0,0 +1,163 @@
+diff --git a/cinelerra/ffmpeg.C b/cinelerra/ffmpeg.C
+index 6ab6047..7cde503 100644
+--- a/cinelerra/ffmpeg.C
++++ b/cinelerra/ffmpeg.C
+@@ -23,7 +23,6 @@ FFMPEG::FFMPEG(Asset *asset) {
+
+ int FFMPEG::init(char *codec_string) {
+
+- avcodec_init();
+ avcodec_register_all();
+
+ CodecID id = codec_id(codec_string);
+@@ -364,12 +363,15 @@ int FFMPEG::decode(uint8_t *data, long data_size, VFrame *frame_out) {
+
+ // NOTE: frame must already have data space allocated
+
++ AVPacket pkt;
+ got_picture = 0;
+- int length = avcodec_decode_video(context,
++ av_init_packet( &pkt );
++ pkt.data = data;
++ pkt.size = data_size;
++ int length = avcodec_decode_video2(context,
+ picture,
+ &got_picture,
+- data,
+- data_size);
++ &pkt);
+
+ if (length < 0) {
+ printf("FFMPEG::decode error decoding frame\n");
+diff --git a/cinelerra/fileac3.C b/cinelerra/fileac3.C
+index a1ef61e..e56705f 100644
+--- a/cinelerra/fileac3.C
++++ b/cinelerra/fileac3.C
+@@ -84,7 +84,6 @@ int FileAC3::open_file(int rd, int wr)
+
+ if(wr)
+ {
+- avcodec_init();
+ avcodec_register_all();
+ codec = avcodec_find_encoder(CODEC_ID_AC3);
+ if(!codec)
+diff --git a/quicktime/mpeg4.c b/quicktime/mpeg4.c
+index 81cb72b..67bcab8 100644
+--- a/quicktime/mpeg4.c
++++ b/quicktime/mpeg4.c
+@@ -629,7 +629,6 @@ static int encode(quicktime_t *file, unsigned char **row_pointers, int track)
+ if(!ffmpeg_initialized)
+ {
+ ffmpeg_initialized = 1;
+- avcodec_init();
+ avcodec_register_all();
+ }
+
+@@ -674,7 +673,7 @@ static int encode(quicktime_t *file, unsigned char **row_pointers, int track)
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ context->error_resilience = FF_ER_CAREFUL;
+ #else
+- context->error_recognition = FF_ER_CAREFUL;
++ context->err_recognition = AV_EF_CRCCHECK;
+ #endif
+ context->error_concealment = 3;
+ context->frame_skip_cmp = FF_CMP_DCTMAX;
+@@ -699,7 +698,6 @@ static int encode(quicktime_t *file, unsigned char **row_pointers, int track)
+ context->profile= FF_PROFILE_UNKNOWN;
+ context->rc_buffer_aggressivity = 1.0;
+ context->level= FF_LEVEL_UNKNOWN;
+- context->flags |= CODEC_FLAG_H263P_UMV;
+ context->flags |= CODEC_FLAG_AC_PRED;
+
+ // All the forbidden settings can be extracted from libavcodec/mpegvideo.c of ffmpeg...
+@@ -717,10 +715,8 @@ static int encode(quicktime_t *file, unsigned char **row_pointers, int track)
+ (codec->ffmpeg_id == CODEC_ID_MPEG4 ||
+ codec->ffmpeg_id == CODEC_ID_MPEG1VIDEO ||
+ codec->ffmpeg_id == CODEC_ID_MPEG2VIDEO ||
+- codec->ffmpeg_id == CODEC_ID_H263P ||
+- codec->ffmpeg_id == CODEC_FLAG_H263P_SLICE_STRUCT))
++ codec->ffmpeg_id == CODEC_ID_H263P))
+ {
+- avcodec_thread_init(context, file->cpus);
+ context->thread_count = file->cpus;
+ }
+
+diff --git a/quicktime/qtffmpeg.c b/quicktime/qtffmpeg.c
+index 8c532c2..a2b51e9 100644
+--- a/quicktime/qtffmpeg.c
++++ b/quicktime/qtffmpeg.c
+@@ -54,7 +54,6 @@ quicktime_ffmpeg_t* quicktime_new_ffmpeg(int cpus,
+ if(!ffmpeg_initialized)
+ {
+ ffmpeg_initialized = 1;
+- avcodec_init();
+ avcodec_register_all();
+ }
+
+@@ -90,10 +89,8 @@ quicktime_ffmpeg_t* quicktime_new_ffmpeg(int cpus,
+ (ffmpeg_id == CODEC_ID_MPEG4 ||
+ ffmpeg_id == CODEC_ID_MPEG1VIDEO ||
+ ffmpeg_id == CODEC_ID_MPEG2VIDEO ||
+- ffmpeg_id == CODEC_ID_H263P ||
+- ffmpeg_id == CODEC_FLAG_H263P_SLICE_STRUCT))
++ ffmpeg_id == CODEC_ID_H263P))
+ {
+- avcodec_thread_init(context, cpus);
+ context->thread_count = cpus;
+ }
+ if(avcodec_open(context,
+@@ -181,6 +178,7 @@ static int decode_wrapper(quicktime_t *file,
+
+ if(!result)
+ {
++ AVPacket pkt;
+
+
+ // No way to determine if there was an error based on nonzero status.
+@@ -189,11 +187,13 @@ static int decode_wrapper(quicktime_t *file,
+ ffmpeg->decoder_context[current_field]->skip_frame = AVDISCARD_NONREF /* AVDISCARD_BIDIR */;
+ else
+ ffmpeg->decoder_context[current_field]->skip_frame = AVDISCARD_DEFAULT;
+- result = avcodec_decode_video(ffmpeg->decoder_context[current_field],
++ av_init_packet( &pkt );
++ pkt.data = ffmpeg->work_buffer;
++ pkt.size = bytes + header_bytes;
++ result = avcodec_decode_video2(ffmpeg->decoder_context[current_field],
+ &ffmpeg->picture[current_field],
+ &got_picture,
+- ffmpeg->work_buffer,
+- bytes + header_bytes);
++ &pkt);
+
+
+
+diff --git a/quicktime/wma.c b/quicktime/wma.c
+index c045741..abc2dc8 100644
+--- a/quicktime/wma.c
++++ b/quicktime/wma.c
+@@ -67,7 +67,6 @@ static int init_decode(quicktime_audio_map_t *track_map,
+ if(!ffmpeg_initialized)
+ {
+ ffmpeg_initialized = 1;
+- avcodec_init();
+ avcodec_register_all();
+ }
+
+@@ -195,11 +194,14 @@ printf("decode 2 %x %llx %llx\n", chunk_size, chunk_offset, chunk_offset + chunk
+ chunk_size);
+ #else
+ bytes_decoded = AVCODEC_MAX_AUDIO_FRAME_SIZE;
+- result = avcodec_decode_audio2(codec->decoder_context,
++ AVPacket pkt;
++ av_init_packet( &pkt );
++ pkt.data = codec->packet_buffer;
++ pkt.size = chunk_size;
++ result = avcodec_decode_audio3(codec->decoder_context,
+ (int16_t*)(codec->work_buffer + codec->output_size * sample_size),
+ &bytes_decoded,
+- codec->packet_buffer,
+- chunk_size);
++ &pkt);
+ #endif
+
+ pthread_mutex_unlock(&ffmpeg_lock);
diff --git a/community/cinelerra-cv/v4l1_removal.patch b/community/cinelerra-cv/v4l1_removal.patch
new file mode 100644
index 000000000..9df4004fe
--- /dev/null
+++ b/community/cinelerra-cv/v4l1_removal.patch
@@ -0,0 +1,125 @@
+http://bugs.cinelerra.org/ticket/949
+https://bugs.gentoo.org/show_bug.cgi?id=361709
+
+diff -Nru cinelerra.orig//cinelerra/channelpicker.C cinelerra/cinelerra/channelpicker.C
+--- cinelerra.orig//cinelerra/channelpicker.C 2010-11-24 18:18:03.000000000 -0500
++++ cinelerra/cinelerra/channelpicker.C 2011-02-17 13:31:30.147880002 -0500
+@@ -39,7 +39,7 @@
+ #include "recordgui.h"
+ #include "recordmonitor.h"
+ #include "theme.h"
+-#include "vdevicebuz.h"
++//#include "vdevicebuz.h"
+ #include "vdeviceprefs.h"
+ #include "videodevice.h"
+
+@@ -280,7 +280,7 @@
+ // printf("PrefsChannelPicker::PrefsChannelPicker 1\n");
+ this->mwindow = mwindow;
+ this->prefs = prefs;
+- VDeviceBUZ::get_inputs(&input_sources);
++// VDeviceBUZ::get_inputs(&input_sources);
+ }
+
+ PrefsChannelPicker::~PrefsChannelPicker()
+diff -Nru cinelerra.orig//cinelerra/Makefile.am cinelerra/cinelerra/Makefile.am
+--- cinelerra.orig//cinelerra/Makefile.am 2010-11-24 18:18:03.000000000 -0500
++++ cinelerra/cinelerra/Makefile.am 2011-02-17 13:31:30.147880002 -0500
+@@ -305,10 +305,8 @@
+ vattachmentpoint.C \
+ vautomation.C \
+ vdevicebase.C \
+- vdevicebuz.C \
+ vdevicedvb.C \
+ vdeviceprefs.C \
+- vdevicev4l.C \
+ vdevicev4l2.C \
+ vdevicev4l2jpeg.C \
+ vdevicex11.C \
+diff -Nru cinelerra.orig//cinelerra/reversemake cinelerra/cinelerra/reversemake
+--- cinelerra.orig//cinelerra/reversemake 2010-11-24 18:18:03.000000000 -0500
++++ cinelerra/cinelerra/reversemake 2011-02-17 13:31:30.151880002 -0500
+@@ -32,10 +32,8 @@
+ make $OBJDIR/vedits.o
+ make $OBJDIR/vedit.o
+ make $OBJDIR/vdevicex11.o
+-make $OBJDIR/vdevicev4l.o
+ make $OBJDIR/vdeviceprefs.o
+ make $OBJDIR/vdevicelml.o
+-make $OBJDIR/vdevicebuz.o
+ make $OBJDIR/vdevicebase.o
+ make $OBJDIR/vdevice1394.o
+ make $OBJDIR/vautomation.o
+diff -Nru cinelerra.orig//cinelerra/videodevice.C cinelerra/cinelerra/videodevice.C
+--- cinelerra.orig//cinelerra/videodevice.C 2010-11-24 18:18:03.000000000 -0500
++++ cinelerra/cinelerra/videodevice.C 2011-02-17 13:41:53.239880001 -0500
+@@ -39,9 +39,9 @@
+ #ifdef HAVE_FIREWIRE
+ #include "vdevice1394.h"
+ #endif
+-#include "vdevicebuz.h"
++//#include "vdevicebuz.h"
+ #include "vdevicedvb.h"
+-#include "vdevicev4l.h"
++//#include "vdevicev4l.h"
+ #include "vdevicev4l2.h"
+ #include "vdevicev4l2jpeg.h"
+ #include "vdevicex11.h"
+@@ -203,7 +203,6 @@
+ result = input_base->open_input();
+ break;
+
+-
+ #ifdef HAVE_VIDEO4LINUX2
+ case VIDEO4LINUX2:
+ new_device_base();
+@@ -250,8 +249,8 @@
+ {
+ switch(in_config->driver)
+ {
+- case VIDEO4LINUX:
+- return input_base = new VDeviceV4L(this);
++ //case VIDEO4LINUX:
++ // return input_base = new VDeviceV4L(this);
+
+ #ifdef HAVE_VIDEO4LINUX2
+ case VIDEO4LINUX2:
+@@ -264,8 +263,8 @@
+ case SCREENCAPTURE:
+ return input_base = new VDeviceX11(this, 0);
+
+- case CAPTURE_BUZ:
+- return input_base = new VDeviceBUZ(this);
++ //case CAPTURE_BUZ:
++ // return input_base = new VDeviceBUZ(this);
+
+ #ifdef HAVE_FIREWIRE
+ case CAPTURE_FIREWIRE:
+@@ -662,9 +661,9 @@
+ //printf("VideoDevice::open_output 1 %d\n", out_config->driver);
+ switch(out_config->driver)
+ {
+- case PLAYBACK_BUZ:
+- output_base = new VDeviceBUZ(this);
+- break;
++ //case PLAYBACK_BUZ:
++ // output_base = new VDeviceBUZ(this);
++ // break;
+ case PLAYBACK_X11:
+ case PLAYBACK_X11_XV:
+ case PLAYBACK_X11_GL:
+diff -Nru cinelerra.orig//cinelerra/videodevice.h cinelerra/cinelerra/videodevice.h
+--- cinelerra.orig//cinelerra/videodevice.h 2010-11-24 18:18:03.000000000 -0500
++++ cinelerra/cinelerra/videodevice.h 2011-02-17 13:31:30.167880002 -0500
+@@ -40,9 +40,9 @@
+ #include "thread.h"
+ #include "picture.inc"
+ #include "vdevicebase.inc"
+-#include "vdevicebuz.inc"
++//#include "vdevicebuz.inc"
+ #include "vdevicelml.inc"
+-#include "vdevicev4l.inc"
++//#include "vdevicev4l.inc"
+ #include "vdevicex11.inc"
+ #include "videoconfig.inc"
+ #include "videowindow.inc"
diff --git a/community/clementine/PKGBUILD b/community/clementine/PKGBUILD
new file mode 100644
index 000000000..242d2122c
--- /dev/null
+++ b/community/clementine/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 81239 2012-12-14 02:06:27Z stephane $
+#Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+#Contributor: BlackEagle <ike.devolder@gmail.com>
+#Contributor: Dany Martineau <dany.luc.martineau@gmail.com>
+
+pkgname=clementine
+pkgver=1.1.1
+pkgrel=2
+pkgdesc="A music player and library organizer"
+url="http://www.clementine-player.org/"
+license=('GPL')
+arch=('i686' 'x86_64')
+depends=('gstreamer0.10-base' 'taglib' 'glew' 'liblastfm' 'libgpod'
+ 'libmtp' 'libplist' 'hicolor-icon-theme' 'qt' 'libimobiledevice'
+ 'sparsehash' 'qjson' 'libcdio' 'protobuf' 'qca' 'qca-ossl' 'gvfs')
+makedepends=('cmake' 'boost' 'mesa')
+optdepends=('gstreamer0.10-base-plugins: for more open formats'
+ 'gstreamer0.10-good-plugins: for use with "Good" plugin libraries'
+ 'gstreamer0.10-bad-plugins: for use with "Bad" plugin libraries'
+ 'gstreamer0.10-ugly-plugins: for use with "Ugly" plugin libraries')
+source=(http://clementine-player.googlecode.com/files/${pkgname}-${pkgver}.tar.gz)
+sha1sums=('f8d3e9c8f54ac488323ab5a629c9accbe256378e')
+install=clementine.install
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ cmake . -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/community/clementine/clementine.install b/community/clementine/clementine.install
new file mode 100644
index 000000000..2f0338d8a
--- /dev/null
+++ b/community/clementine/clementine.install
@@ -0,0 +1,13 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+
+post_remove() {
+ post_install $1
+}
diff --git a/community/dangerdeep/PKGBUILD b/community/dangerdeep/PKGBUILD
new file mode 100644
index 000000000..c08272acf
--- /dev/null
+++ b/community/dangerdeep/PKGBUILD
@@ -0,0 +1,22 @@
+# $Id: PKGBUILD 77850 2012-10-15 09:46:31Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+pkgname=dangerdeep
+pkgver=0.3.0
+pkgrel=7
+pkgdesc="submarine simulator"
+arch=(i686 x86_64)
+url="http://dangerdeep.sourceforge.net"
+license=('GPL')
+depends=('libgl' 'sdl_net' 'fftw' 'sdl_image' 'sdl_mixer' 'dangerdeep-data' 'glu')
+makedepends=('scons' 'mesa')
+source=("http://downloads.sourceforge.net/sourceforge/dangerdeep/dangerdeep-$pkgver.tar.gz"
+ "build-fix.patch")
+md5sums=('8a1d19326a9a0bd8bb91a652bfa51bd9'
+ 'a4487f079e844ec6b093ef97c151dcd7')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+ patch -p1 <$srcdir/build-fix.patch
+ scons installbindir=$pkgdir/usr/bin datadir=/usr/share/dangerdeep install
+}
diff --git a/community/dangerdeep/build-fix.patch b/community/dangerdeep/build-fix.patch
new file mode 100644
index 000000000..f77e07c5a
--- /dev/null
+++ b/community/dangerdeep/build-fix.patch
@@ -0,0 +1,102 @@
+diff -wbBur dangerdeep-0.3.0/src/bspline_test.cpp dangerdeep-0.3.0.my/src/bspline_test.cpp
+--- dangerdeep-0.3.0/src/bspline_test.cpp 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/bspline_test.cpp 2012-10-08 17:33:01.034909571 +0400
+@@ -1,6 +1,8 @@
+ // some test code for the 2d bsplines!
+ #include "bspline.h"
+ #include <fstream>
++#include <cstdlib>
++
+ using namespace std;
+
+ double rnd() { return double(rand())/RAND_MAX; }
+diff -wbBur dangerdeep-0.3.0/src/convoy.h dangerdeep-0.3.0.my/src/convoy.h
+--- dangerdeep-0.3.0/src/convoy.h 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/convoy.h 2012-10-08 17:33:01.034909571 +0400
+@@ -26,6 +26,7 @@
+ #include "ai.h"
+ #include "vector2.h"
+ #include <new>
++#include <memory>
+ #include <list>
+ class ship;
+
+diff -wbBur dangerdeep-0.3.0/src/date.cpp dangerdeep-0.3.0.my/src/date.cpp
+--- dangerdeep-0.3.0/src/date.cpp 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/date.cpp 2012-10-08 17:33:01.034909571 +0400
+@@ -20,6 +20,8 @@
+ // date
+ // subsim (C)+(W) Markus Petermann and Thorsten Jordan. SEE LICENSE
+
++#include <stdio.h>
++#include <stdlib.h>
+ #include <iomanip>
+ #include "date.h"
+ #include "texts.h"
+diff -wbBur dangerdeep-0.3.0/src/faulthandler.h dangerdeep-0.3.0.my/src/faulthandler.h
+--- dangerdeep-0.3.0/src/faulthandler.h 2007-06-11 22:29:30.000000000 +0400
++++ dangerdeep-0.3.0.my/src/faulthandler.h 2012-10-08 17:33:23.264909316 +0400
+@@ -50,6 +50,7 @@
+ #include <signal.h>
+ #include <string>
+ #include <sstream>
++#include <unistd.h>
+
+ // Note: use --export-dynamic as linker option or you won't get function names here.
+
+diff -wbBur dangerdeep-0.3.0/src/filehelper.cpp dangerdeep-0.3.0.my/src/filehelper.cpp
+--- dangerdeep-0.3.0/src/filehelper.cpp 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/filehelper.cpp 2012-10-08 17:33:01.034909571 +0400
+@@ -23,6 +23,7 @@
+ #include "filehelper.h"
+ #include "error.h"
+ #include <vector>
++#include <stdio.h>
+ using namespace std;
+
+ #ifdef WIN32
+diff -wbBur dangerdeep-0.3.0/src/ocean_wave_generator.h dangerdeep-0.3.0.my/src/ocean_wave_generator.h
+--- dangerdeep-0.3.0/src/ocean_wave_generator.h 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/ocean_wave_generator.h 2012-10-08 17:33:01.034909571 +0400
+@@ -29,6 +29,7 @@
+ #include "environment.h"
+ #include <complex>
+ #include <vector>
++#include <cstdlib>
+
+ // use float fftw (faster) or double (default) ?
+ #ifdef WITH_FLOAT_FFTW
+diff -wbBur dangerdeep-0.3.0/src/ptrlist.h dangerdeep-0.3.0.my/src/ptrlist.h
+--- dangerdeep-0.3.0/src/ptrlist.h 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/ptrlist.h 2012-10-08 17:33:01.034909571 +0400
+@@ -25,6 +25,7 @@
+
+ #include <list>
+ #include <stdexcept>
++#include <memory>
+
+ // same as std::list regarding the interface (partly), but handles pointers.
+ template <class T>
+diff -wbBur dangerdeep-0.3.0/src/ptrvector.h dangerdeep-0.3.0.my/src/ptrvector.h
+--- dangerdeep-0.3.0/src/ptrvector.h 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/ptrvector.h 2012-10-08 17:33:01.034909571 +0400
+@@ -25,6 +25,7 @@
+
+ #include <vector>
+ #include <stdexcept>
++#include <memory>
+
+ // same as std::vector regarding the interface, but handles pointers.
+ template <class T>
+diff -wbBur dangerdeep-0.3.0/src/widget.cpp dangerdeep-0.3.0.my/src/widget.cpp
+--- dangerdeep-0.3.0/src/widget.cpp 2007-06-11 19:16:23.000000000 +0400
++++ dangerdeep-0.3.0.my/src/widget.cpp 2012-10-08 17:33:01.034909571 +0400
+@@ -32,6 +32,8 @@
+ #include "datadirs.h"
+ #include <set>
+ #include <sstream>
++#include <algorithm>
++
+ using std::vector;
+ using std::list;
+ using std::string;
diff --git a/community/dosemu/PKGBUILD b/community/dosemu/PKGBUILD
new file mode 100644
index 000000000..4c9fb31f6
--- /dev/null
+++ b/community/dosemu/PKGBUILD
@@ -0,0 +1,54 @@
+# $Id: PKGBUILD 81027 2012-12-10 10:25:41Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
+# Contributor: Eric Belanger <belanger@astro.umontreal.ca>
+# Contributor: Bob Finch <w9ya@arrl.net>
+
+pkgname=dosemu
+pkgver=1.4.0
+pkgrel=9
+pkgdesc="DOS emulator"
+arch=('i686' 'x86_64')
+url="http://www.dosemu.org/"
+license=('GPL' 'custom')
+depends=('gpm' 'slang' 'sdl' 'libxxf86vm' 'libsndfile' 'sh' 'xorg-mkfontdir' 'xorg-bdftopcf' 'xorg-xlsfonts')
+backup=('etc/dosemu/dosemu.conf'
+ 'etc/dosemu/dosemu.users'
+ 'etc/dosemu/global.conf')
+install=dosemu.install
+source=(http://downloads.sourceforge.net/sourceforge/dosemu/$pkgname-$pkgver.tgz
+ http://downloads.sourceforge.net/sourceforge/dosemu/dosemu-freedos-1.0-bin.tgz
+ kernel_version.patch
+ fix-infinite-loop.patch
+ cpu-support.patch)
+md5sums=('0bba530637266f99d404ba15e3f118d4'
+ '2e09774fe91cff4372cb4a393eb467f5'
+ '15af2ca86b2e7d8835f0f837ea663c3d'
+ 'e8ea87d46c613130b26724facb5aa297'
+ 'ebb17406a7d302f6c4ad2b67304f31b6')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+
+ patch -Np1 -i ${srcdir}/kernel_version.patch
+ patch -Np1 -i ${srcdir}/fix-infinite-loop.patch
+ patch -Np1 -i ${srcdir}/cpu-support.patch
+ sed -i 's|extern int yyget_leng|extern size_t yyget_leng|' src/base/init/lexer.h
+
+ unset CFLAGS
+ ./configure --prefix=/usr --with-fdtarball=$srcdir/dosemu-freedos-1.0-bin.tgz --mandir=/usr/share/man
+ make
+}
+
+package(){
+ cd $srcdir/$pkgname-$pkgver
+
+ make DESTDIR=$pkgdir install
+
+ ln -s /usr/share/dosemu/drive_z $pkgdir/etc/dosemu/drives/z
+ install -dm0755 $pkgdir/etc/sysctl.d
+ echo "vm.mmap_min_addr = 0" >$pkgdir/etc/sysctl.d/dosemu.conf
+
+ install -D -m 644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING
+ install -D -m 644 COPYING.DOSEMU $pkgdir/usr/share/licenses/$pkgname/COPYING.DOSEMU
+}
diff --git a/community/dosemu/cpu-support.patch b/community/dosemu/cpu-support.patch
new file mode 100644
index 000000000..6a8d84148
--- /dev/null
+++ b/community/dosemu/cpu-support.patch
@@ -0,0 +1,12 @@
+diff -Naur orig/dosemu-1.4.0/src/base/init/config.c modified/dosemu-1.4.0/src/base/init/config.c
+--- orig/src/base/init/config.c 2007-05-04 22:19:41.000000000 +0800
++++ modified/src/base/init/config.c 2012-12-06 10:05:31.780346032 +0800
+@@ -480,6 +480,8 @@
+ case 5: case 586:
+ case 6: case 686:
+ case 15:
++ case 16:
++ case 17:
+ config.realcpu = CPU_586;
+ cpuflags = get_proc_string_by_key("features");
+ if (!cpuflags) {
diff --git a/community/dosemu/dosemu.install b/community/dosemu/dosemu.install
new file mode 100644
index 000000000..b5ed385d1
--- /dev/null
+++ b/community/dosemu/dosemu.install
@@ -0,0 +1,7 @@
+post_install() {
+ sysctl -p etc/sysctl.d/dosemu.conf
+}
+
+post_upgrade() {
+ post_install
+}
diff --git a/community/dosemu/fix-infinite-loop.patch b/community/dosemu/fix-infinite-loop.patch
new file mode 100644
index 000000000..7f12d9985
--- /dev/null
+++ b/community/dosemu/fix-infinite-loop.patch
@@ -0,0 +1,13 @@
+--- trunk/src/plugin/translate/translate.c 2011/05/24 02:28:24 2032
++++ trunk/src/plugin/translate/translate.c 2011/10/03 23:37:46 2058
+@@ -466,7 +466,9 @@
+ while (list->next) {
+ list = list->next;
+ }
+- list->next = set;
++ if (list != set) {
++ list->next = set;
++ }
+ }
+ initialize_charset(set);
+ }
diff --git a/community/dosemu/kernel_version.patch b/community/dosemu/kernel_version.patch
new file mode 100644
index 000000000..0351922d4
--- /dev/null
+++ b/community/dosemu/kernel_version.patch
@@ -0,0 +1,12 @@
+diff -wbBur dosemu-1.4.0/src/base/init/init.c dosemu-1.4.0.my/src/base/init/init.c
+--- dosemu-1.4.0/src/base/init/init.c 2007-05-04 09:59:48.000000000 +0400
++++ dosemu-1.4.0.my/src/base/init/init.c 2011-08-15 12:39:42.000000000 +0400
+@@ -280,7 +280,7 @@
+ char version[80];
+
+ uname((struct utsname *)&unames);
+-#ifdef __linux__
++#if 0
+ strcpy(version,unames.release);
+ running_kversion = atoi(strtok(version,".")) *1000000;
+ running_kversion += atoi(strtok(NULL,".")) *1000;
diff --git a/community/epdfview/0001-When-using-Poppler-0.17.0-I-needed-to-swap-the-blue-.patch b/community/epdfview/0001-When-using-Poppler-0.17.0-I-needed-to-swap-the-blue-.patch
new file mode 100644
index 000000000..e077a15cf
--- /dev/null
+++ b/community/epdfview/0001-When-using-Poppler-0.17.0-I-needed-to-swap-the-blue-.patch
@@ -0,0 +1,60 @@
+From d30496f52b85f82947bd07b9bd60f8482843ece8 Mon Sep 17 00:00:00 2001
+From: jordi <jordi@cb4bfb15-1111-0410-82e2-95233c8f1c7e>
+Date: Tue, 5 Jul 2011 09:23:38 +0000
+Subject: [PATCH 1/2] When using Poppler 0.17.0, I needed to swap the blue and
+ red channels, otherwise the colors (other than black
+ and white) looked wierd.
+
+git-svn-id: svn://svn.emma-soft.com/epdfview/trunk@367 cb4bfb15-1111-0410-82e2-95233c8f1c7e
+---
+ src/PDFDocument.cxx | 20 ++++++++++++++++++++
+ 1 files changed, 20 insertions(+), 0 deletions(-)
+
+diff --git a/src/PDFDocument.cxx b/src/PDFDocument.cxx
+index df5d75f..63b3513 100644
+--- a/src/PDFDocument.cxx
++++ b/src/PDFDocument.cxx
+@@ -20,6 +20,7 @@
+ #include <time.h>
+ #include <poppler.h>
+ #include <unistd.h>
++#include <algorithm>
+ #include "epdfview.h"
+
+ using namespace ePDFView;
+@@ -33,6 +34,24 @@ static PageLayout convertPageLayout (gint pageLayout);
+ static PageMode convertPageMode (gint pageMode);
+ static gchar *getAbsoluteFileName (const gchar *fileName);
+
++namespace
++{
++ void
++ convert_bgra_to_rgba (guint8 *data, int width, int height)
++ {
++ using std::swap;
++
++ for (int y = 0; y < height; y++)
++ {
++ for (int x = 0; x < width; x++)
++ {
++ swap(data[0], data[2]);
++ data += 4;
++ }
++ }
++ }
++}
++
+ ///
+ /// @brief Constructs a new PDFDocument object.
+ ///
+@@ -650,6 +669,7 @@ PDFDocument::renderPage (gint pageNum)
+ poppler_page_render (page, context);
+ cairo_destroy(context);
+ cairo_surface_destroy (surface);
++ convert_bgra_to_rgba(renderedPage->getData (), width, height);
+ #else // !HAVE_POPPLER_0_17_0
+ // Create the pixbuf from the data and render to it.
+ GdkPixbuf *pixbuf = gdk_pixbuf_new_from_data (renderedPage->getData (),
+--
+1.7.7
+
diff --git a/community/epdfview/PKGBUILD b/community/epdfview/PKGBUILD
new file mode 100644
index 000000000..81ab34ff6
--- /dev/null
+++ b/community/epdfview/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id: PKGBUILD 72969 2012-06-25 18:50:56Z foutrelis $
+# Maintainer: schuay <jakob.gruber@gmail.com>
+# Contributor: Tom K <tomk@runbox.com>
+# Contributor: Thayer Williams <thayer@archlinux.org>
+
+pkgname=epdfview
+pkgver=0.1.8
+pkgrel=4
+pkgdesc="A free lightweight PDF document viewer."
+url="http://www.emma-soft.com/projects/epdfview/"
+arch=('i686' 'x86_64')
+license=('GPL')
+depends=('poppler-glib' 'desktop-file-utils' 'hicolor-icon-theme' 'gtk2')
+makedepends=('pkgconfig')
+install='epdfview.install'
+source=("http://www.emma-soft.com/projects/${pkgname}/chrome/site/releases/${pkgname}-${pkgver}.tar.bz2"
+ "${pkgname}.desktop.patch"
+ "glib2_headers.patch"
+ "0001-When-using-Poppler-0.17.0-I-needed-to-swap-the-blue-.patch")
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ patch -Np0 -i "${srcdir}/${pkgname}.desktop.patch"
+ patch -Np1 -i "${srcdir}/0001-When-using-Poppler-0.17.0-I-needed-to-swap-the-blue-.patch"
+ patch -Np1 -i "${srcdir}/glib2_headers.patch" # FS#30116
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
+ make
+}
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ for size in 24 32 48; do
+ install -Dm644 data/icon_${pkgname}-${size}.png \
+ "${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/${pkgname}.png"
+ done
+}
+
+md5sums=('e50285b01612169b2594fea375f53ae4'
+ 'fbf22bbabdbb7544db615ac5775d57e2'
+ '2fffa9c7cd4c5f0744803591c2f162a3'
+ '7f9ea101a41f5b4e999fd024f423d41f')
diff --git a/community/epdfview/epdfview.desktop.patch b/community/epdfview/epdfview.desktop.patch
new file mode 100644
index 000000000..d86fc3088
--- /dev/null
+++ b/community/epdfview/epdfview.desktop.patch
@@ -0,0 +1,11 @@
+--- data/epdfview.desktop.bak 2009-04-05 16:55:56.000000000 -0700
++++ data/epdfview.desktop 2009-04-05 16:56:33.000000000 -0700
+@@ -7,7 +7,7 @@
+ GenericName=PDF Viewer
+ GenericName[ca]=Visor PDF
+ GenericName[es]=Visor PDF
+-Icon=icon_epdfview-48
++Icon=epdfview
+ Name=ePDFViewer
+ Name[ca]=ePDFViewer
+ Name[es]=ePDFViewer
diff --git a/community/epdfview/epdfview.install b/community/epdfview/epdfview.install
new file mode 100644
index 000000000..c317fbaca
--- /dev/null
+++ b/community/epdfview/epdfview.install
@@ -0,0 +1,12 @@
+post_install() {
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/community/epdfview/glib2_headers.patch b/community/epdfview/glib2_headers.patch
new file mode 100644
index 000000000..e9f0983b5
--- /dev/null
+++ b/community/epdfview/glib2_headers.patch
@@ -0,0 +1,13 @@
+diff --git a/src/gtk/StockIcons.h b/src/gtk/StockIcons.h
+index c142a7a..58fcf2e 100644
+--- a/src/gtk/StockIcons.h
++++ b/src/gtk/StockIcons.h
+@@ -18,7 +18,7 @@
+ #if !defined (__STOCK_ICONS_H__)
+ #define __STOCK_ICONS_H__
+
+-#include <glib/gmacros.h>
++#include <glib.h>
+
+ G_BEGIN_DECLS
+
diff --git a/community/fmodex/PERMISSION b/community/fmodex/PERMISSION
new file mode 100644
index 000000000..be7e15ff8
--- /dev/null
+++ b/community/fmodex/PERMISSION
@@ -0,0 +1,25 @@
+Hi Sven,
+sounds ok to me.
+regards,
+
+Brett Paterson | CEO
+FMOD by Firelight Technologies Pty Ltd
+Interactive Audio Middleware | www.fmod.org
+PH: +61 3 96635947 Fax: +61 3 96635951
+
+
+-----Original Message-----
+From: Sven-Hendrik Haase [mailto:sh@lutzhaase.com]
+Sent: Thursday, 15 July 2010 9:51 AM
+To: sales@fmod.org
+Subject: Redistribution for Arch Linux
+
+ Hello,
+
+ I'm a packager for the Arch Linux project (http://www.archlinux.org) and
+ I would like to ask you for permission for redistributing FMOD in binary
+ form in our project. Arch Linux is a free operating system and is run
+ entirely by volunteers. There is no commercial context.
+
+ Regards,
+ Sven-Hendrik Haase
diff --git a/community/fmodex/PKGBUILD b/community/fmodex/PKGBUILD
new file mode 100644
index 000000000..8bb9b7e2c
--- /dev/null
+++ b/community/fmodex/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 80347 2012-11-20 11:44:56Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Christoph Zeiler <archNOSPAM_at_moonblade.dot.org>
+
+# Note: This packae is proprietary and distribution is limited. However, we
+# have written permission to by the FMOD CEO to distribute this in binary form.
+pkgname=fmodex
+pkgver=4.44.01
+pkgrel=1
+pkgdesc="An advanced audio engine"
+arch=('i686' 'x86_64')
+url="http://www.fmod.org/"
+license=('custom')
+source=("http://www.fmod.org/index.php/release/version/fmodapi${pkgver//./}linux.tar.gz")
+md5sums=('3f32d8e74ac5cc6e581f7c32c71f4d20')
+
+build() {
+ cd fmodapi${pkgver//./}linux
+
+ mkdir -p ${pkgdir}/usr/lib
+ mkdir -p ${pkgdir}/usr/include/fmodex
+
+ cp -d api/lib/* ${pkgdir}/usr/lib/
+ [[ $CARCH == "i686" ]] && rm ${pkgdir}/usr/lib/*64*
+
+ if [[ $CARCH == "x86_64" ]]; then
+ cd ${pkgdir}/usr/lib
+ ln -sf libfmodex64-${pkgver}.so libfmodex-${pkgver}.so
+ ln -sf libfmodexL64-${pkgver}.so libfmodexL-${pkgver}.so
+ cd ${srcdir}/fmodapi${pkgver//./}linux
+ fi
+
+ cp api/inc/* ${pkgdir}/usr/include/fmodex/
+
+ install -Dm644 documentation/LICENSE.TXT ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+
+ mkdir -p ${pkgdir}/usr/share/doc/fmodex
+ cp -r documentation examples ${pkgdir}/usr/share/doc/fmodex
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/frogatto/PKGBUILD b/community/frogatto/PKGBUILD
new file mode 100644
index 000000000..dd0d29b6b
--- /dev/null
+++ b/community/frogatto/PKGBUILD
@@ -0,0 +1,47 @@
+# $Id: PKGBUILD 78929 2012-10-27 23:44:28Z ebelanger $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Tom Wambold <tom5760@gmail.com>
+
+pkgname='frogatto'
+arch=('i686' 'x86_64')
+pkgver=1.2
+pkgrel=7
+pkgdesc="An old-school 2d platformer game, starring a certain quixotic frog"
+url="http://www.frogatto.com"
+license=('GPL')
+depends=('glew' 'sdl' 'sdl_image' 'sdl_ttf' 'sdl_mixer' 'libpng' 'boost-libs' 'frogatto-data')
+makedepends=('mesa' 'boost')
+source=("frogatto-$pkgver.tar.gz::https://github.com/frogatto/frogatto/tarball/$pkgver"
+ frogatto
+ frogatto.desktop)
+md5sums=('b60924f384e04728eb6e76cdd48ab8f9'
+ '9ed2c9ea59e95fe3c0b3ad49e58f8890'
+ 'e31563b04748a39292a59aaad633ff58')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgname"*
+
+ sed -i 's/ccache //g' Makefile
+ sed -i 's/-lprofiler//g' Makefile
+ sed -i 's/\.io_service/\.get_io_service/g' src/server.cpp
+ sed -i 's/-lboost_regex-mt/-lboost_regex/g' Makefile
+ sed -i 's/-lboost_system-mt/-lboost_system/g' Makefile
+ sed -i 's/-lboost_thread-mt/-lboost_thread/g' Makefile
+ sed -i 's/-lboost_iostreams-mt/-lboost_iostreams/g' Makefile
+ make game server
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgname"*
+
+ install -D -m755 game $pkgdir/opt/frogatto/game
+ install -D -m755 server $pkgdir/opt/frogatto/server
+
+ install -D -m644 src/LICENSE $pkgdir/usr/share/licenses/frogatto/LICENSE
+
+ cd $srcdir
+ install -DT -m755 frogatto $pkgdir/usr/bin/frogatto
+ install -D -m644 frogatto.desktop $pkgdir/usr/share/applications/frogatto.desktop
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/frogatto/frogatto b/community/frogatto/frogatto
new file mode 100644
index 000000000..0d741e0de
--- /dev/null
+++ b/community/frogatto/frogatto
@@ -0,0 +1,3 @@
+#!/bin/sh
+cd /opt/frogatto
+exec /opt/frogatto/game $*
diff --git a/community/frogatto/frogatto.desktop b/community/frogatto/frogatto.desktop
new file mode 100644
index 000000000..b0795467a
--- /dev/null
+++ b/community/frogatto/frogatto.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=Frogatto
+GenericName=Old-school 2D platformer
+Comment=Old-school 2D platformer
+Exec=/usr/bin/frogatto
+Terminal=false
+MultipleArgs=false
+Type=Application
+Icon=/opt/frogatto/images/window-icon.png
+Categories=Game;ArcadeGame
diff --git a/community/handbrake/PKGBUILD b/community/handbrake/PKGBUILD
new file mode 100644
index 000000000..b70180a97
--- /dev/null
+++ b/community/handbrake/PKGBUILD
@@ -0,0 +1,48 @@
+# $Id: PKGBUILD 74053 2012-07-18 17:33:26Z foutrelis $
+# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Sebastien Piccand <sebcactus gmail com>
+
+pkgname=('handbrake' 'handbrake-cli')
+pkgver=0.9.8
+pkgrel=1
+arch=('i686' 'x86_64')
+url="http://handbrake.fr/"
+license=('GPL')
+makedepends=('intltool' 'python2' 'yasm' 'wget' 'bzip2' 'gcc-libs' 'libnotify'
+ 'gstreamer0.10-base' 'gtk2' 'dbus-glib' 'fribidi')
+source=(http://downloads.sourceforge.net/project/handbrake/$pkgver/HandBrake-$pkgver.tar.bz2)
+sha256sums=('dba75a9ff772e419c01d75532c1bf0d7253e73d7ead184eee755cd4c133dc798')
+
+build() {
+ cd "$srcdir/HandBrake-$pkgver"
+
+ # Use Python 2
+ sed -i 's/python /python2 /' gtk/src/Makefile.am
+
+ ./configure --prefix=/usr --force --disable-gtk-update-checks
+ cd build
+ make
+}
+
+package_handbrake() {
+ pkgdesc="Multithreaded video transcoder"
+ depends=('bzip2' 'gcc-libs' 'gstreamer0.10-base' 'libnotify' 'dbus-glib'
+ 'fribidi' 'gtk2' 'desktop-file-utils' 'hicolor-icon-theme')
+ install=$pkgname.install
+
+ cd "$srcdir/HandBrake-$pkgver/build"
+
+ make DESTDIR="$pkgdir" install
+ rm "$pkgdir/usr/bin/HandBrakeCLI"
+}
+
+package_handbrake-cli() {
+ pkgdesc="Multithreaded video transcoder (CLI)"
+ depends=('bzip2' 'gcc-libs' 'zlib' 'fribidi')
+
+ cd "$srcdir/HandBrake-$pkgver/build"
+ install -D HandBrakeCLI "$pkgdir/usr/bin/HandBrakeCLI"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/handbrake/handbrake.install b/community/handbrake/handbrake.install
new file mode 100644
index 000000000..87c29e4db
--- /dev/null
+++ b/community/handbrake/handbrake.install
@@ -0,0 +1,14 @@
+post_install() {
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/hardinfo/PKGBUILD b/community/hardinfo/PKGBUILD
new file mode 100644
index 000000000..432b9bda3
--- /dev/null
+++ b/community/hardinfo/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 70023 2012-04-28 09:24:14Z allan $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgname=hardinfo
+pkgver=0.5.1
+pkgrel=5
+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')
+options=('!emptydirs')
+source=(http://download.berlios.de/hardinfo/${pkgname}-${pkgver}.tar.bz2 \
+ fixsensors.patch hardinfo.distro)
+sha1sums=('983f0445aa60e02156bc5a5eaedeffb30b8e4d64'
+ 'd2151dce76dca238102937d0e15541f172bca530'
+ '4c31cbbfbdeb48593641ff600c8d4fb7bda2b01c')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 < ../fixsensors.patch
+ sed -i 's|/usr/lib64|/usr/lib|' configure
+ ./configure --prefix=/usr
+ sed -i 's|lib64|lib|' binreloc.c
+ sed -i 's|{ DB_PREFIX "debian_version", "deb" },|{ DB_PREFIX "hardinfo.distro", "arch" },{ DB_PREFIX "debian_version", "deb" },|' computer.h
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ install -D -m644 ../hardinfo.distro "${pkgdir}/etc/hardinfo.distro"
+}
diff --git a/community/hardinfo/fixsensors.patch b/community/hardinfo/fixsensors.patch
new file mode 100644
index 000000000..812c29458
--- /dev/null
+++ b/community/hardinfo/fixsensors.patch
@@ -0,0 +1,13 @@
+ 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
new file mode 100644
index 000000000..850183eeb
--- /dev/null
+++ b/community/hardinfo/hardinfo.distro
@@ -0,0 +1 @@
+Arch Linux
diff --git a/community/krusader/PKGBUILD b/community/krusader/PKGBUILD
new file mode 100644
index 000000000..0443763d4
--- /dev/null
+++ b/community/krusader/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 149613 2012-02-08 20:20:01Z pierre $
+# Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Alexander Baldeck <alexander@archlinux.org>
+# Contributor: Lucien Immink <l.immink@student.fnt.hvu.nl>
+
+pkgname=krusader
+pkgver=2.4.0beta3
+_pkgver=2.4.0-beta3
+pkgrel=2
+pkgdesc="An alternative file manager for KDE resembling Midnight Commander"
+arch=('i686' 'x86_64')
+url="http://krusader.sourceforge.net/"
+license=('GPL')
+depends=('kdebase-runtime' 'kdebase-lib' 'kdebase-katepart')
+makedepends=('cmake' 'automoc4' 'kdeutils-ark')
+optdepends=('kdebase-keditbookmarks: to edit bookmarks'
+ 'kdeutils-ark: extract archive with right-click'
+ 'kdebase-konsole: open an embedded terminal')
+install=$pkgname.install
+source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$_pkgver.tar.bz2")
+md5sums=('62a02db3f213bb76805ca6c958e9e263')
+
+build() {
+ cd "$srcdir/$pkgname-$_pkgver"
+
+ cmake . \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$_pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/community/krusader/krusader.install b/community/krusader/krusader.install
new file mode 100644
index 000000000..e70c054ec
--- /dev/null
+++ b/community/krusader/krusader.install
@@ -0,0 +1,11 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/community/libquicktime/PKGBUILD b/community/libquicktime/PKGBUILD
new file mode 100644
index 000000000..3003dbd3a
--- /dev/null
+++ b/community/libquicktime/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 80154 2012-11-16 23:35:56Z ioni $
+# Maintainer: Mateusz Herych <heniekk@gmail.com>
+
+pkgname=libquicktime
+pkgver=1.2.4
+pkgrel=3
+pkgdesc="A library for reading and writing quicktime files"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://libquicktime.sourceforge.net/"
+depends=('gtk2' 'ffmpeg' 'libxv' 'libgl' 'libxaw' 'faad2' 'faac')
+options=('!libtool')
+source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz)
+sha256sums=('1c53359c33b31347b4d7b00d3611463fe5e942cae3ec0fefe0d2fd413fd47368')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr \
+ --enable-gpl \
+ --with-ffmpeg \
+ --with-x264 \
+ --without-doxygen
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
+
diff --git a/community/mac/PKGBUILD b/community/mac/PKGBUILD
new file mode 100644
index 000000000..3e9bef667
--- /dev/null
+++ b/community/mac/PKGBUILD
@@ -0,0 +1,30 @@
+# Maintainer: schuay <jakob.gruber@gmail.com>
+# Contributor: stonecrest <stonecrest[at]gmail[dot]com>
+
+pkgname=mac
+pkgver='3.99u4b5'
+_pkgver='3.99-u4-b5-s7'
+pkgrel=5
+pkgdesc='APE codec and decompressor'
+arch=('i686' 'x86_64')
+url='http://etree.org/shnutils/shntool/'
+license=('custom')
+depends=('gcc-libs')
+makedepends=('yasm')
+_baseurl='http://etree.org/shnutils/shntool/support/formats/ape/unix'
+source=("${_baseurl}/${_pkgver}/${pkgname}-${_pkgver}.tar.gz")
+md5sums=('74df3c96476636387ddd12255b03bebe')
+
+build() {
+ cd "${srcdir}"/${pkgname}-${_pkgver}
+
+ ./configure --prefix=/usr --enable-assembly=yes
+ make
+}
+package() {
+ cd "${srcdir}"/${pkgname}-${_pkgver}
+
+ make DESTDIR="${pkgdir}" install
+ install -Dm644 src/License.htm \
+ "${pkgdir}"/usr/share/licenses/${pkgname}/license.htm
+}
diff --git a/community/mc/PKGBUILD b/community/mc/PKGBUILD
index a51e8f5f0..d4b163434 100644
--- a/community/mc/PKGBUILD
+++ b/community/mc/PKGBUILD
@@ -1,33 +1,41 @@
-# $Id: PKGBUILD 74048 2012-07-18 14:20:54Z schuay $
+# $Id: PKGBUILD 81754 2012-12-28 13:52:45Z schuay $
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
# Maintainer: schuay <jakob.gruber@gmail.com>
pkgname=mc
-pkgver=4.8.4
+pkgver=4.8.7
pkgrel=1
pkgdesc="Midnight Commander is a text based filemanager/shell that emulates Norton Commander"
arch=('i686' 'x86_64')
url="http://www.ibiblio.org/mc/"
license=('GPL')
-depends=('e2fsprogs' 'glib2' 'pcre' 'gpm' 'slang')
+depends=(
+ 'e2fsprogs'
+ 'glib2'
+ 'gpm'
+ 'libssh2'
+ 'pcre'
+ 'slang')
makedepends=('libxt' 'libx11')
-optdepends=('p7zip: support for 7zip archives'
- 'mtools: a+ extfs'
- 'cdparanoia: audio extfs'
- 'gawk: hp48+ extfs'
- 'cdrkit: iso9660 extfs'
- 'perl: needed by several extfs scripts'
- 'python-boto: s3+ extfs'
- 'python2-pytz: s3+ extfs'
- 'p7zip: u7z extfs'
- 'unace: uace extfs'
- 'unarj: uarj extfs'
- 'cabextract: ucab extfs'
- 'unrar: urar extfs'
- 'zip: uzip extfs')
+optdepends=(
+ 'cabextract: ucab extfs'
+ 'cdparanoia: audio extfs'
+ 'cdrkit: iso9660 extfs'
+ 'gawk: hp48+ extfs'
+ 'aspell: spelling corrections'
+ 'cvs: CVS support'
+ 'mtools: a+ extfs'
+ 'perl: needed by several extfs scripts'
+ 'python2-boto: s3+ extfs'
+ 'python2-pytz: s3+ extfs'
+ 'smb: VFS support'
+ 'unace: uace extfs'
+ 'unarj: uarj extfs'
+ 'unrar: urar extfs'
+ 'zip: uzip extfs'
+ 'p7zip: support for 7zip archives')
options=('!emptydirs' '!makeflags')
backup=('etc/mc/edit.indent.rc'
- 'etc/mc/edit.spell.rc'
'etc/mc/filehighlight.ini'
'etc/mc/mcedit.menu'
'etc/mc/mc.ext'
@@ -37,30 +45,25 @@ backup=('etc/mc/edit.indent.rc'
source=("http://www.midnight-commander.org/downloads/${pkgname}-${pkgver}.tar.bz2")
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure \
- --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man \
- --enable-background --enable-charset --enable-largefile \
- --with-edit --with-gpm-mouse --with-mmap --enable-vfs-smb \
- --with-screen=slang --with-subshell --with-vfs --with-x \
- --without-debug --without-gnome --without-included-gettext \
- --libexecdir=/usr/lib
+ ./configure --prefix=/usr --sysconfdir=/etc --enable-vfs-smb \
+ --with-x --libexecdir=/usr/lib
- make
+ make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" install
+ make DESTDIR="${pkgdir}" install
- # Fix FS#15177
- sed 's|op_has_zipinfo = 0|op_has_zipinfo = 1|' \
- -i "${pkgdir}/usr/lib/mc/extfs.d/uzip"
+ # Fix FS#15177
+ sed 's|op_has_zipinfo = 0|op_has_zipinfo = 1|' \
+ -i "${pkgdir}/usr/lib/mc/extfs.d/uzip"
- sed 's#/usr/bin/env python#/usr/bin/python2#' \
- -i "${pkgdir}/usr/lib/mc/extfs.d/s3+"
+ sed 's#/usr/bin/env python#/usr/bin/python2#' \
+ -i "${pkgdir}/usr/lib/mc/extfs.d/s3+"
}
-md5sums=('a8edb8226cb25869f925ecce043faf1e')
+md5sums=('b113e50682293a953141134969dba785')
diff --git a/community/mplayer-vaapi/PKGBUILD b/community/mplayer-vaapi/PKGBUILD
new file mode 100644
index 000000000..ddc3302cb
--- /dev/null
+++ b/community/mplayer-vaapi/PKGBUILD
@@ -0,0 +1,74 @@
+# $Id: PKGBUILD 80155 2012-11-16 23:35:57Z ioni $
+# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Hugo Doria <hugo@archlinux.org>
+
+pkgname=mplayer-vaapi
+pkgver=35107
+pkgrel=3
+pkgdesc="A movie player, compiled with vaapi support"
+arch=('i686' 'x86_64')
+url="http://gitorious.org/vaapi/mplayer"
+license=('GPL')
+depends=('libxxf86dga' 'libxxf86vm' 'libmad' 'libcdio' 'libxinerama' 'sdl'
+ 'lame' 'fontconfig' 'libtheora' 'xvidcore' 'libmng' 'libxss' 'glu'
+ 'smbclient' 'aalib' 'jack' 'libcaca' 'x264' 'faac' 'faad2'
+ 'lirc-utils' 'ttf-dejavu' 'libxvmc' 'enca' 'opencore-amr' 'libdca'
+ 'a52dec' 'schroedinger' 'mpg123' 'libvpx' 'libpulse' 'fribidi'
+ 'libbluray' 'libva' 'libass' 'desktop-file-utils')
+makedepends=('unzip' 'live-media' 'yasm' 'ladspa' 'git' 'mesa')
+provides=("mplayer=$pkgver")
+conflicts=('mplayer')
+backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf')
+source=(http://pkgbuild.com/~foutrelis/mplayer-vaapi-$pkgver.tar.xz
+ tweak-desktop-file.patch)
+options=('!buildflags' '!emptydirs')
+install=mplayer-vaapi.install
+sha256sums=('a6c645625cc2cd6ca48764db302c926049f831e757857ece351b37b674e05e56'
+ '5a09fb462729a4e573568f9e8c1f57dbe7f69c0b68cfa4f6d70b3e52c450d93b')
+
+build() {
+ cd "$srcdir/mplayer-vaapi-$pkgver"
+
+ patch -d etc -Np0 -i "$srcdir/tweak-desktop-file.patch"
+
+ ./configure \
+ --prefix=/usr \
+ --enable-runtime-cpudetection \
+ --disable-gui \
+ --disable-arts \
+ --disable-liblzo \
+ --disable-speex \
+ --disable-cdparanoia \
+ --disable-openal \
+ --disable-libdv \
+ --disable-musepack \
+ --disable-esd \
+ --disable-mga \
+ --disable-ass-internal \
+ --enable-xvmc \
+ --enable-radio \
+ --enable-radio-capture \
+ --disable-vdpau \
+ --enable-vaapi \
+ --language=all \
+ --confdir=/etc/mplayer
+
+ [[ $CARCH == i686 ]] && sed -i 's|-march=i486|-march=i686|g' config.mak
+
+ make
+}
+
+package() {
+ cd "$srcdir/mplayer-vaapi-$pkgver"
+
+ make DESTDIR="$pkgdir" install-mplayer install-mplayer-man
+ install -Dm644 etc/{codecs.conf,input.conf,example.conf} "$pkgdir/etc/mplayer/"
+ install -Dm644 etc/mplayer.desktop "$pkgdir/usr/share/applications/mplayer.desktop"
+ install -d "$pkgdir/usr/share/mplayer/"
+ ln -s /usr/share/fonts/TTF/DejaVuSans.ttf "$pkgdir/usr/share/mplayer/subfont.ttf"
+ rm -rf "$pkgdir/usr/share/mplayer/font"
+ install -Dm644 etc/mplayer256x256.png "$pkgdir/usr/share/pixmaps/mplayer.png"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/mplayer-vaapi/mplayer-vaapi.install b/community/mplayer-vaapi/mplayer-vaapi.install
new file mode 100644
index 000000000..a44f19aef
--- /dev/null
+++ b/community/mplayer-vaapi/mplayer-vaapi.install
@@ -0,0 +1,11 @@
+post_install() {
+ update-desktop-database -q
+}
+post_upgrade() {
+ post_install
+}
+post_remove() {
+ post_install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/mplayer-vaapi/tweak-desktop-file.patch b/community/mplayer-vaapi/tweak-desktop-file.patch
new file mode 100644
index 000000000..606e356b0
--- /dev/null
+++ b/community/mplayer-vaapi/tweak-desktop-file.patch
@@ -0,0 +1,14 @@
+--- mplayer.desktop.orig 2012-07-08 22:18:27.000000000 +0300
++++ mplayer.desktop 2012-07-08 22:19:08.000000000 +0300
+@@ -23,8 +23,9 @@ Comment[fr]=Lit les films et musiques
+ Comment[it]=Riproduce filmati e musica
+ Comment[ja]=動画や音声のファイルを再生します
+ Icon=mplayer
+-TryExec=gmplayer
+-Exec=gmplayer %F
++TryExec=mplayer
++Exec=mplayer -really-quiet %F
+ Terminal=false
++NoDisplay=true
+ Categories=GTK;AudioVideo;Audio;Video;Player;TV;
+ MimeType=application/mxf;application/x-netshow-channel;application/ogg;application/ram;application/vnd.rn-realmedia;application/x-shockwave-flash;application/smil;audio/ac3;audio/x-adpcm;audio/x-aiff;audio/AMR;audio/AMR-WB;audio/x-ape;audio/basic;audio/flac;audio/x-flac;audio/x-flac+ogg;audio/x-m4b;audio/x-matroska;audio/mp2;audio/mp4;audio/mpeg;audio/x-mpegurl;audio/x-ms-asx;audio/x-ms-wma;audio/x-musepack;audio/ogg;audio/vnd.rn-realaudio;audio/x-scpls;audio/x-voc;audio/x-vorbis+ogg;audio/x-wav;audio/x-wavpack;video/3gpp;video/3gpp2;video/dv;video/x-flic;video/x-flv;video/x-matroska;video/mp2t;video/mp4;video/mpeg;video/x-ms-asf;video/x-ms-wmv;video/x-msvideo;video/x-nsv;video/ogg;video/x-ogm+ogg;video/quicktime;video/vnd.rn-realvideo;video/x-theora+ogg;video/webm;
diff --git a/community/mupen64plus/PKGBUILD b/community/mupen64plus/PKGBUILD
new file mode 100644
index 000000000..c7835c0f0
--- /dev/null
+++ b/community/mupen64plus/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 78487 2012-10-19 16:17:59Z jelle $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Thomas Dziedzic < gostrc at gmail >
+# Contributor: Laurent Carlier <lordheavym@gmail.com>
+# Contributor: Allan McRae <allan@archlinux.org>
+# Contributor: Zephyr
+
+pkgname=mupen64plus
+pkgver=1.99.5
+pkgrel=3
+pkgdesc='Nintendo64 Emulator'
+arch=('i686' 'x86_64')
+url='http://code.google.com/p/mupen64plus/'
+license=('GPL')
+depends=('glu' 'libgl' 'libsamplerate' 'libpng' 'sdl' 'freetype2')
+makedepends=('mesa')
+source=("http://mupen64plus.googlecode.com/files/mupen64plus-bundle-src-${pkgver}.tar.gz")
+md5sums=('93772a6d6fc6a63353462deae8a6db71')
+
+build() {
+ cd mupen64plus-bundle-src-${pkgver}
+
+ sh m64p_build.sh
+}
+
+package() {
+ cd mupen64plus-bundle-src-$pkgver
+
+ # set LDCONFIG since we are using fakeroot and scripts run root commands by checking the uid
+ ./m64p_install.sh DESTDIR="$pkgdir" PREFIX='/usr' MANDIR='/usr/share/man/man6' LDCONFIG='true'
+}
+
+# vim: ts=2:sw=2:et
diff --git a/community/ndiswrapper/PKGBUILD b/community/ndiswrapper/PKGBUILD
new file mode 100644
index 000000000..873b2ab9b
--- /dev/null
+++ b/community/ndiswrapper/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id: PKGBUILD 79177 2012-10-31 07:25:04Z tpowa $
+# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de>
+# Contributor: SpepS <dreamspepser at yahoo dot it>
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+
+_extramodules=extramodules-3.6-ARCH
+pkgname=ndiswrapper
+pkgver=1.57
+pkgrel=26
+pkgdesc="Module for NDIS (Windows Network Drivers) drivers supplied by vendors."
+license=('GPL')
+arch=('i686' 'x86_64')
+url="http://ndiswrapper.sourceforge.net"
+install=ndiswrapper.install
+depends=('linux>=3.6' 'linux<3.7' 'wireless_tools' 'perl')
+makedepends=('linux-headers')
+provides=("$pkgname-utils" "$pkgname-bin")
+replaces=("$pkgname-utils" "$pkgname-bin")
+source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz"
+ "linux33.patch")
+options=('!strip')
+md5sums=('7a401dc540938bf07893c67f418b6152'
+ '061e59a934ca3ae4be55a86d86b2c1f5')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ _kver="$(cat /usr/lib/modules/${_extramodules}/version)"
+
+ # modinfo path fix
+ sed -i "/modinfo/s/s/usr\//" driver/Makefile
+ patch -i "$srcdir/linux33.patch" -N -p0
+
+ # make sure we point to the right build directory
+ sed -i "/^KBUILD/ s,.*,KBUILD = $(readlink -f /usr/lib/modules/$_kver/build)," driver/Makefile
+
+ make KVERS=$_kver
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ _kver="$(cat /usr/lib/modules/${_extramodules}/version)"
+
+ make INST_DIR="usr/lib/modules/$_extramodules" \
+ KVERS=$_kver DESTDIR="$pkgdir/" install
+
+ gzip "$pkgdir/usr/lib/modules/$_extramodules/$pkgname.ko"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/ndiswrapper/linux33.patch b/community/ndiswrapper/linux33.patch
new file mode 100644
index 000000000..3998c8450
--- /dev/null
+++ b/community/ndiswrapper/linux33.patch
@@ -0,0 +1,50 @@
+--- driver/ndis.c 2011-12-31 21:30:16.000000000 +0100
++++ driver/ndis.c.new 2012-04-08 11:14:16.746614153 +0200
+@@ -2654,9 +2654,15 @@
+ (ULONG *idle, ULONG *kernel_user, ULONG *index)
+ {
+ int cpu = smp_processor_id();
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0)
++ *idle = kcpustat_cpu(cpu).cpustat[CPUTIME_IDLE];
++ *kernel_user = kcpustat_cpu(cpu).cpustat[CPUTIME_SYSTEM] +
++ kcpustat_cpu(cpu).cpustat[CPUTIME_USER];
++#else
+ *idle = kstat_cpu(cpu).cpustat.idle;
+ *kernel_user = kstat_cpu(cpu).cpustat.system +
+ kstat_cpu(cpu).cpustat.user;
++#endif
+ *index = cpu;
+ }
+
+--- driver/wrapndis.c 2011-12-31 21:30:16.000000000 +0100
++++ driver/wrapndis.c.new 2012-04-08 11:13:00.574116936 +0200
+@@ -1684,6 +1684,7 @@
+ return 0;
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
+ static u32 ndis_get_rx_csum(struct net_device *dev)
+ {
+ struct ndis_device *wnd = netdev_priv(dev);
+@@ -1735,18 +1736,21 @@
+ else
+ return -EOPNOTSUPP;
+ }
++#endif
+
+ static struct ethtool_ops ndis_ethtool_ops = {
+ .get_drvinfo = ndis_get_drvinfo,
+ .get_link = ndis_get_link,
+ .get_wol = ndis_get_wol,
+ .set_wol = ndis_set_wol,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
+ .get_tx_csum = ndis_get_tx_csum,
+ .get_rx_csum = ndis_get_rx_csum,
+ .set_tx_csum = ndis_set_tx_csum,
+ .set_rx_csum = ndis_set_rx_csum,
+ .get_sg = ndis_get_sg,
+ .set_sg = ndis_set_sg,
++#endif
+ };
+
+ static int notifier_event(struct notifier_block *notifier, unsigned long event,
diff --git a/community/ndiswrapper/ndiswrapper.install b/community/ndiswrapper/ndiswrapper.install
new file mode 100644
index 000000000..ef505811a
--- /dev/null
+++ b/community/ndiswrapper/ndiswrapper.install
@@ -0,0 +1,17 @@
+post_install()
+{
+ post_upgrade
+}
+
+post_upgrade()
+{
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
+}
+
+post_remove()
+{
+ post_upgrade
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/netperf/PKGBUILD b/community/netperf/PKGBUILD
new file mode 100644
index 000000000..9ff232229
--- /dev/null
+++ b/community/netperf/PKGBUILD
@@ -0,0 +1,48 @@
+# $Id: PKGBUILD 73456 2012-07-08 00:07:29Z seblu $
+# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org>
+# Contributor: Kaiting Chen <kaitocracy@gmail.com>
+# Contributor: Tilman Blumenbach <tilman (at) ax86 (dot) net>
+
+pkgname=netperf
+pkgver=2.6.0
+pkgrel=1
+pkgdesc='Benchmarking tool for many different types of networking'
+url='http://www.netperf.org/'
+license=('custom')
+arch=('i686' 'x86_64')
+depends=('glibc' 'libsmbios' 'lksctp-tools')
+install=$pkgname.install
+source=(
+ "ftp://ftp.netperf.org/netperf/$pkgname-$pkgver.tar.bz2"
+ "$pkgname.rc"
+ "$pkgname.conf"
+ "$pkgname.service")
+md5sums=('9654ffdfd4c4f2c93ce3733cd9ed9236'
+ '4f11bf24fcd7a44c17bbe27cdc7dae01'
+ '14836578ba49bbfa9e928feeca8346f1'
+ '9a8b47101fb2b0bf8fb9bbfb73ba6486')
+
+build() {
+ cd $pkgname-$pkgver
+ ./configure \
+ --prefix=/usr \
+ --enable-demo \
+ --enable-unixdomain \
+ --enable-dccp \
+ --enable-sctp
+ make
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+ # install license
+ install -D -m 644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+ # install initscripts & systemd files
+ install -D -m 755 ../$pkgname.rc "$pkgdir/etc/rc.d/$pkgname"
+ install -D -m 644 ../$pkgname.conf "$pkgdir/etc/conf.d/$pkgname"
+ install -D -m 644 ../$pkgname.service \
+ "$pkgdir/usr/lib/systemd/system/$pkgname.service"
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/netperf/netperf.conf b/community/netperf/netperf.conf
new file mode 100644
index 000000000..b8e36c203
--- /dev/null
+++ b/community/netperf/netperf.conf
@@ -0,0 +1,3 @@
+# vim:set ts=2 sw=2 ft=sh noet:
+
+#DAEMON_OPTS='-d'
diff --git a/community/netperf/netperf.install b/community/netperf/netperf.install
new file mode 100644
index 000000000..fcb9ba6ae
--- /dev/null
+++ b/community/netperf/netperf.install
@@ -0,0 +1,20 @@
+infodir=/usr/share/info
+filelist=(netperf.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/netperf/netperf.rc b/community/netperf/netperf.rc
new file mode 100644
index 000000000..f2a2de582
--- /dev/null
+++ b/community/netperf/netperf.rc
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/${0##*/}
+
+DAEMON=/usr/bin/netserver
+PID=$(pidof -o %PPID $DAEMON)
+
+case "$1" in
+ start)
+ stat_busy "Starting ${0##*/} daemon"
+ [[ ! $PID ]] &&
+ </dev/null &>/dev/null $DAEMON $DAEMON_OPTS &&
+ add_daemon ${0##*/} &&
+ stat_done &&
+ exit 0
+ stat_fail
+ ;;
+ stop)
+ stat_busy "Stopping ${0##*/} daemon"
+ [[ $PID ]] &&
+ kill $PID &> /dev/null &&
+ rm_daemon ${0##*/} &&
+ stat_done &&
+ exit 0
+ stat_fail
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ exit 0
+ ;;
+ *)
+ echo "usage: ${0##*/} {start|stop|restart}" >&2
+ ;;
+esac
+
+exit 1
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/netperf/netperf.service b/community/netperf/netperf.service
new file mode 100644
index 000000000..ce3c9cab8
--- /dev/null
+++ b/community/netperf/netperf.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Netperf Benchmark Server
+
+[Service]
+ExecStart=/usr/bin/netserver -D
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/nvidia-cg-toolkit/PKGBUILD b/community/nvidia-cg-toolkit/PKGBUILD
new file mode 100644
index 000000000..ed07e852e
--- /dev/null
+++ b/community/nvidia-cg-toolkit/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 74692 2012-08-02 07:39:38Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Adam Griffiths
+# Contributor: Nick B <Shirakawasuna at gmail _dot_ com>
+pkgname=nvidia-cg-toolkit
+pkgver=3.1
+_date="April2012"
+pkgrel=2
+pkgdesc="NVIDIA Cg libraries"
+arch=('i686' 'x86_64')
+url="http://developer.nvidia.com/object/cg_toolkit.html"
+license=('custom')
+depends=('glibc' 'mesa')
+source=(http://developer.download.nvidia.com/cg/Cg_${pkgver}/Cg-${pkgver}_${_date}_${CARCH/i686/x86}.tgz)
+[ "$CARCH" = "i686" ] &&
+ md5sums=('9a9fc5108154808f3b10eafa54df1c74')
+[ "$CARCH" = "x86_64" ] &&
+md5sums=('88ba727cdbe0261fac465c4d84f44762')
+
+build() {
+ return 0
+}
+
+package() {
+ install -Dm755 ${srcdir}/usr/bin/cgc ${pkgdir}/usr/bin/cgc
+ install -dm755 ${pkgdir}/usr/include/Cg
+ install -m644 ${srcdir}/usr/include/Cg/* ${pkgdir}/usr/include/Cg
+ install -dm755 ${pkgdir}/usr/lib
+ [ "$CARCH" = "i686" ] && install -m644 ${srcdir}/usr/lib/* ${pkgdir}/usr/lib
+ [ "$CARCH" = "x86_64" ] && install -m644 ${srcdir}/usr/lib64/* ${pkgdir}/usr/lib
+ install -Dm644 ${srcdir}/usr//local/Cg/docs/license.txt ${pkgdir}/usr/share/licenses/nvidia-cg-toolkit/license.txt
+ cp -r ${srcdir}/usr/local/Cg ${pkgdir}/usr/share/
+ find $pkgdir/usr/share/ -type d -exec chmod -R 755 '{}' ';'
+ find $pkgdir/usr/share/ -type f -exec chmod -R 644 '{}' ';'
+}
+
+# vim: sw=2:ts=2 et:
diff --git a/community/ogre/PKGBUILD b/community/ogre/PKGBUILD
new file mode 100644
index 000000000..78d169da2
--- /dev/null
+++ b/community/ogre/PKGBUILD
@@ -0,0 +1,89 @@
+# $Id: PKGBUILD 77653 2012-10-13 11:44:20Z allan $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+pkgbase=ogre
+pkgname=('ogre' 'ogre-docs')
+pkgver=1.8.1
+pkgrel=2
+pkgdesc="A scene-oriented, flexible 3D engine written in C++"
+arch=('i686' 'x86_64')
+url='http://www.ogre3d.org'
+license=('custom:MIT')
+depends=('boost-libs' 'freeimage' 'freetype2' 'libxaw' 'libxrandr'
+ 'nvidia-cg-toolkit' 'zziplib' 'ois' 'glu')
+makedepends=('boost' 'cmake' 'doxygen' 'graphviz' 'ttf-dejavu' 'mesa')
+optdepends=('cppunit: unit testing'
+ 'intel-tbb: better threading support'
+ 'poco: portability'
+ 'boost: for developing using ogre')
+install=ogre.install
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}_src_v${pkgver//./-}.tar.bz2")
+md5sums=('b85e3dcf370a46b3a8624d4fdd722d39')
+
+build() {
+ cd ${srcdir}/${pkgname}_src_v${pkgver//./-}
+
+ # get a clean build dir
+ [[ -d build ]] && rm -rf build
+ mkdir build && cd build
+
+ # generate CMake Makefile
+ cmake .. \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DOGRE_INSTALL_PLUGINS_HEADERS=TRUE \
+ -DOGRE_INSTALL_SAMPLES=TRUE \
+ -DOGRE_INSTALL_DOCS=TRUE \
+ -DOGRE_INSTALL_MEDIA=TRUE \
+ -DOGRE_INSTALL_SAMPLES_SOURCE=TRUE \
+ -DCMAKE_BUILD_TYPE=Release # set =Debug for debugging version
+
+ # compile
+ make
+
+ # generate docs
+ if [[ $(which dot) && $(which doxygen) ]]; then
+ make doc
+ fi
+}
+
+package_ogre() {
+ optdepends=('ogre-docs: documentation')
+
+ cd ${srcdir}/${pkgname}_src_v${pkgver//./-}/build
+
+ # install the bugger
+ make DESTDIR=${pkgdir} install
+
+ # fix up samples
+ install -dm775 -o root -g users ${pkgdir}/opt/OGRE/samples/
+ mv ${pkgdir}/usr/share/OGRE/*.cfg ${pkgdir}/opt/OGRE/samples/
+ mv ${pkgdir}/usr/bin/SampleBrowser ${pkgdir}/opt/OGRE/samples/
+
+ # make sample launcher
+ echo "#!/bin/bash" > ${pkgdir}/usr/bin/OgreSampleBrowser
+ echo "cd /opt/OGRE/samples && ./SampleBrowser" >> ${pkgdir}/usr/bin/OgreSampleBrowser
+ chmod +x ${pkgdir}/usr/bin/OgreSampleBrowser
+
+ # install license
+ install -Dm644 ../Docs/License.html ${pkgdir}/usr/share/licenses/${pkgname}/license.html
+
+ # move docs out of this package
+ mv ${pkgdir}/usr/share/OGRE/docs ${srcdir}/docs
+}
+
+package_ogre-docs() {
+ pkgdesc="Documentation for ogre"
+ depends=()
+
+ cd ${srcdir}/${pkgbase}_src_v${pkgver//./-}/build
+
+ # move docs into this package
+ install -dm755 ${pkgdir}/usr/share/doc
+ mv ${srcdir}/docs ${pkgdir}/usr/share/doc/OGRE/
+
+ # symlink for docs
+ install -dm755 ${pkgdir}/usr/share/OGRE/
+ cd ${pkgdir}/usr/share
+ ln -s doc/OGRE/ OGRE/docs
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/ogre/ogre.install b/community/ogre/ogre.install
new file mode 100644
index 000000000..5db668d9e
--- /dev/null
+++ b/community/ogre/ogre.install
@@ -0,0 +1,4 @@
+post_install() {
+ echo "To view the OGRE samples just run OgreSampleBrowser or launch"
+ echo "it directly in /opt/OGRE/samples/"
+}
diff --git a/community/open-vm-tools-modules/PKGBUILD b/community/open-vm-tools-modules/PKGBUILD
index 082df1943..df6d75ea6 100644
--- a/community/open-vm-tools-modules/PKGBUILD
+++ b/community/open-vm-tools-modules/PKGBUILD
@@ -1,10 +1,11 @@
-# $Id: PKGBUILD 72483 2012-06-15 13:20:41Z spupykin $
+# $Id: PKGBUILD 80262 2012-11-18 19:27:05Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Krzysztof Raczkowski <raczkow@gmail.com>
pkgname=open-vm-tools-modules
-pkgver=2012.05.21
-_pkgsubver=724730
+epoch=1
+pkgver=9.2.2
+_pkgsubver=893683
pkgrel=1
pkgdesc="kernel modules for the open source implementation of VMware Tools"
arch=('i686' 'x86_64')
@@ -13,38 +14,45 @@ license=('GPL')
makedepends=('libdnet' 'icu' 'uriparser' 'linux-headers')
depends=("linux")
install=$pkgname.install
-options=('!strip')
+options=('!strip' '!makeflags')
source=("http://downloads.sourceforge.net/open-vm-tools/open-vm-tools-$pkgver-${_pkgsubver}.tar.gz"
- "modprobe.conf")
-md5sums=('91affb5b23db8abceff930613845f434'
- 'ac9b8e3cb798f5056ca92767ec705117')
+ "modprobe.conf"
+ "linux-3.6-build-fix.patch")
+md5sums=('7af505681d736d4c9ee6493b1166689f'
+ 'bc5518489077e91655489bd04b868584'
+ 'd9ffaf628837ea6a216b96dac69705e6')
build() {
- _kernver=`pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -`
- KERNEL_RELEASE=`cat /lib/modules/extramodules-3.${_kernver}-ARCH/version`
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ KERNEL_RELEASE=$(cat /usr/lib/modules/extramodules-3.${_kernver}-ARCH/version)
cd "$srcdir/open-vm-tools-${pkgver}-${_pkgsubver}"
+
sed -i 's|proc-3.2.8|procps|g' configure
- [ $NOEXTRACT -eq 1 ] || ./configure --prefix=/usr \
- --without-x --with-kernel-release=$KERNEL_RELEASE
+# patch -p1 <$srcdir/linux-3.6-build-fix.patch
+
+ [ $NOEXTRACT -eq 1 ] || ./configure \
+ --prefix=/usr \
+ --without-x \
+ --with-linuxdir=/usr/lib/modules/$KERNEL_RELEASE
- cd modules
- make modules -j1
+ make -C modules modules
}
package() {
- _kernver=`pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -`
- depends=("linux>=3.${_kernver}" "linux<3.`expr ${_kernver} + 1`")
- KERNEL_VERSION=`cat /lib/modules/extramodules-3.${_kernver}-ARCH/version`
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ depends=("linux>=3.${_kernver}" "linux<3.$(expr ${_kernver} + 1)")
+ KERNEL_VERSION=$(cat /usr/lib/modules/extramodules-3.${_kernver}-ARCH/version)
msg "Kernel = $KERNEL_VERSION"
cd "$srcdir/open-vm-tools-${pkgver}-${_pkgsubver}"
- mkdir -p $pkgdir/lib/modules/extramodules-3.${_kernver}-ARCH/
- for MOD in `find -type f -name '*.ko'`; do
- install -Dm644 $MOD $pkgdir/lib/modules/extramodules-3.${_kernver}-ARCH/
- done
- gzip $pkgdir/lib/modules/extramodules-3.${_kernver}-ARCH/*.ko
+ mkdir -p $pkgdir/usr/lib/modules/extramodules-3.${_kernver}-ARCH/
+
+ find -type f -name '*.ko' \
+ -exec install -t "$pkgdir/usr/lib/modules/extramodules-3.$_kernver-ARCH" {} +
+
+ gzip "$pkgdir/usr/lib/modules/extramodules-3.$_kernver-ARCH"/*.ko
- install -D -m 644 ${srcdir}/modprobe.conf ${pkgdir}/etc/modprobe.d/${pkgname}.conf
+ install -D -m 644 ${srcdir}/modprobe.conf ${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf
sed -i "s|extramodules-.*-ARCH|extramodules-3.${_kernver}-ARCH|" $startdir/$pkgname.install
}
diff --git a/community/open-vm-tools-modules/linux-3.6-build-fix.patch b/community/open-vm-tools-modules/linux-3.6-build-fix.patch
new file mode 100644
index 000000000..f012a3ff1
--- /dev/null
+++ b/community/open-vm-tools-modules/linux-3.6-build-fix.patch
@@ -0,0 +1,63 @@
+diff -wbBur open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/inode.c open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/inode.c
+--- open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/inode.c 2012-05-23 00:12:52.000000000 +0400
++++ open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/inode.c 2012-10-02 15:39:47.000000000 +0400
+@@ -1801,7 +1802,7 @@
+ #else
+ if (mask & MAY_ACCESS) { /* For sys_access. */
+ #endif
+- struct list_head *pos;
++ struct hlist_node *pos;
+ int dcount = 0;
+ struct dentry *dentry = NULL;
+
+@@ -1817,7 +1818,7 @@
+ #endif
+
+ /* Find a dentry with valid d_count. Refer bug 587789. */
+- list_for_each(pos, &inode->i_dentry) {
++ list_for_each(pos, inode->i_dentry.first) {
+ dentry = list_entry(pos, struct dentry, d_alias);
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 38)
+ dcount = atomic_read(&dentry->d_count);
+diff -wbBur open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/page.c open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/page.c
+--- open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/page.c 2012-05-23 00:12:52.000000000 +0400
++++ open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/page.c 2012-10-02 15:41:38.000000000 +0400
+@@ -893,7 +893,7 @@
+ */
+ if ((offset >= currentFileSize) ||
+ ((pageFrom == 0) && (offset + pageTo) >= currentFileSize)) {
+- void *kaddr = kmap_atomic(page, KM_USER0);
++ void *kaddr = kmap_atomic(page);
+
+ if (pageFrom) {
+ memset(kaddr, 0, pageFrom);
+@@ -901,7 +901,7 @@
+ if (pageTo < PAGE_CACHE_SIZE) {
+ memset(kaddr + pageTo, 0, PAGE_CACHE_SIZE - pageTo);
+ }
+- kunmap_atomic(kaddr, KM_USER0);
++ kunmap_atomic(kaddr);
+ flush_dcache_page(page);
+ }
+ }
+diff -wbBur open-vm-tools-2012.05.21-724730.org/modules/linux/vmsync/sync.c open-vm-tools-2012.05.21-724730/modules/linux/vmsync/sync.c
+--- open-vm-tools-2012.05.21-724730.org/modules/linux/vmsync/sync.c 2012-05-23 00:12:52.000000000 +0400
++++ open-vm-tools-2012.05.21-724730/modules/linux/vmsync/sync.c 2012-10-02 15:23:56.000000000 +0400
+@@ -162,7 +162,7 @@
+ cancel_delayed_work(&state->thawTask);
+ list_for_each_safe(cur, tmp, &state->devices) {
+ dev = list_entry(cur, VmSyncBlockDevice, list);
+- if (dev->sb != NULL && dev->sb->s_frozen != SB_UNFROZEN) {
++ if (dev->sb != NULL && dev->sb->s_writers.frozen != SB_UNFROZEN) {
+ thaw_bdev(dev->bdev, dev->sb);
+ atomic_dec(&gFreezeCount);
+ }
+@@ -237,7 +237,7 @@
+ * the superblock is already frozen.
+ */
+ if (inode->i_sb->s_bdev == NULL ||
+- inode->i_sb->s_frozen != SB_UNFROZEN) {
++ inode->i_sb->s_writers.frozen != SB_UNFROZEN) {
+ result = (inode->i_sb->s_bdev == NULL) ? -EINVAL : -EALREADY;
+ compat_path_release(&nd);
+ goto exit;
diff --git a/community/open-vm-tools-modules/modprobe.conf b/community/open-vm-tools-modules/modprobe.conf
index b72fcc61a..6a1a9ca53 100644
--- a/community/open-vm-tools-modules/modprobe.conf
+++ b/community/open-vm-tools-modules/modprobe.conf
@@ -1,2 +1 @@
-#VMware net driver
-install pcnet32 /sbin/modprobe -q --ignore-install vmxnet; /sbin/modprobe -q --ignore-install pcnet32 ; /bin/true;
+softdep pcnet32 pre: vmxnet
diff --git a/community/open-vm-tools-modules/open-vm-tools-modules.install b/community/open-vm-tools-modules/open-vm-tools-modules.install
index b8f6dd618..e8ad0e85d 100644
--- a/community/open-vm-tools-modules/open-vm-tools-modules.install
+++ b/community/open-vm-tools-modules/open-vm-tools-modules.install
@@ -1,7 +1,7 @@
post_install() {
- EXTRAMODULES='extramodules-3.3-ARCH'
- depmod $(cat /lib/modules/$EXTRAMODULES/version)
- echo ">>> Enabling vmxnet driver in /etc/modprobe.d/open-vm-tools-modules.conf"
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
+ echo ">>> Enabling vmxnet driver in /usr/lib/modprobe.d/open-vm-tools-modules.conf"
echo ">>> (this will disable pcnet32 driver)"
echo ">>>"
echo ">>> If vmxnet driver doesn't handle your NIC, you have to manually"
@@ -10,13 +10,13 @@ post_install() {
}
post_upgrade() {
- EXTRAMODULES='extramodules-3.3-ARCH'
- depmod $(cat /lib/modules/$EXTRAMODULES/version)
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
}
post_remove() {
- EXTRAMODULES='extramodules-3.3-ARCH'
- depmod $(cat /lib/modules/$EXTRAMODULES/version)
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
echo ">>>"
echo ">>> Remember to un-blacklist pcnet32 driver"
echo ">>>"
diff --git a/community/open-vm-tools/PKGBUILD b/community/open-vm-tools/PKGBUILD
index 32f291c36..22b63f7d6 100644
--- a/community/open-vm-tools/PKGBUILD
+++ b/community/open-vm-tools/PKGBUILD
@@ -1,18 +1,24 @@
-# $Id: PKGBUILD 72492 2012-06-15 13:37:19Z spupykin $
+# $Id: PKGBUILD 80292 2012-11-19 13:12:33Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Krzysztof Raczkowski <raczkow@gmail.com>
-pkgname=open-vm-tools
-pkgver=2012.05.21
-_pkgsubver=724730
-pkgrel=1
+pkgbase=open-vm-tools
+pkgname=('open-vm-tools' 'open-vm-tools-dkms')
+epoch=1
+pkgver=9.2.2
+_pkgsubver=893683
+pkgrel=3
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-ng' 'uriparser' 'libsigc++' 'libxss')
+depends=('libdnet' 'icu' 'procps-ng' 'uriparser' 'libsigc++' 'libxss' 'iproute2')
makedepends=('chrpath' 'doxygen' 'gtkmm' 'fuse' 'libxtst')
-optdepends=('gtkmm' 'libnotify' 'libxtst' 'fuse' 'libsm')
+optdepends=('gtkmm' 'libnotify' 'libxtst' 'fuse' 'libsm'
+ 'open-vm-tools-modules: for linux kernel'
+ 'open-vm-tools-dkms: for linux-lts and other kernels')
+backup=('etc/conf.d/open-vm-tools'
+ 'etc/pam.d/vmware-guestd')
options=('docs' '!libtool')
install=$pkgname.install
source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver-${_pkgsubver}.tar.gz
@@ -23,29 +29,38 @@ source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver-${_pkgsubver}
open-vm-tools.rc.d
tools.conf
vmware-guestd
- xautostart.conf)
-md5sums=('91affb5b23db8abceff930613845f434'
+ xautostart.conf
+ modprobe.conf
+ vmtoolsd.service)
+md5sums=('7af505681d736d4c9ee6493b1166689f'
'b8f68fef3d388489e40dba581b6da18a'
- '199508b0d3fe6fa9b726d09170bf51f1'
+ '507ead54854e49762ca2a6893529c484'
'8c333a979578bdc0c3134c1dd6bb7353'
- '79b0a14d86191fee70a4639da8bd7785'
- '67cb83a9e5a4dd016c1a1da2863ca36d'
+ '6567ca1b465854f832fc94a4e9faf876'
+ '0848618fa6310294db2752c77ae99865'
'b55d15e2c4be396aad709aeca91033d3'
'1b9ae908fce4c623269f100ee9bdfdef'
- '75a25d83417e683957321f97a00f8465')
+ '75a25d83417e683957321f97a00f8465'
+ 'bc5518489077e91655489bd04b868584'
+ 'a6c53243d31c765580f6dded7d5fa98f')
build() {
cd "$srcdir/$pkgname-${pkgver}-${_pkgsubver}"
-
+ export CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS
[ -f Makefile ] || CUSTOM_PROCPS_NAME="procps" ./configure --prefix=/usr --without-kernel-modules
make
}
-package() {
+package_open-vm-tools() {
cd "$srcdir/$pkgname-${pkgver}-${_pkgsubver}"
make install DESTDIR="$pkgdir"
install -Dm0644 vmware-user-suid-wrapper/vmware-user.desktop $pkgdir/usr/share/applications/vmware-user.desktop
+
+ # vmware-user XDG autostart
+ mkdir -p $pkgdir/etc/xdg/autostart
+ ln -s /usr/share/applications/vmware-user.desktop $pkgdir/etc/xdg/autostart/vmware-user.desktop
+
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
@@ -63,4 +78,23 @@ package() {
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 {}" \;
+ install -Dm644 ${srcdir}/vmtoolsd.service ${pkgdir}/usr/lib/systemd/system/vmtoolsd.service
+}
+
+package_open-vm-tools-dkms() {
+ pkgdesc="kernel modules for the open source implementation of VMware Tools"
+ depends=('dkms')
+ provides=('open-vm-tools-modules')
+ conflicts=('open-vm-tools-modules')
+ optdepends=()
+ backup=()
+ install=open-vm-tools-dkms.install
+
+ install -d -m755 ${pkgdir}/usr/src/
+ sh ${srcdir}/open-vm-tools-${pkgver}-${_pkgsubver}/modules/linux/dkms.sh \
+ ${srcdir}/open-vm-tools-${pkgver}-${_pkgsubver}/ \
+ ${pkgdir}/usr/src/
+ install -Dm644 ${srcdir}/modprobe.conf ${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf
+
+ rm -f $pkgdir/etc/vmware-tools/scripts/vmware/*.orig
}
diff --git a/community/open-vm-tools/modprobe.conf b/community/open-vm-tools/modprobe.conf
new file mode 100644
index 000000000..6a1a9ca53
--- /dev/null
+++ b/community/open-vm-tools/modprobe.conf
@@ -0,0 +1 @@
+softdep pcnet32 pre: vmxnet
diff --git a/community/open-vm-tools/open-vm-tools-dkms.install b/community/open-vm-tools/open-vm-tools-dkms.install
new file mode 100644
index 000000000..6aadce7c7
--- /dev/null
+++ b/community/open-vm-tools/open-vm-tools-dkms.install
@@ -0,0 +1,23 @@
+post_install() {
+ echo ">>> Enable building of open-vm-tools modules:"
+ echo ">>> $ dkms add open-vm-tools/${1%-*}"
+ echo ">>>"
+ echo ">>> Enabling vmxnet driver in /usr/lib/modprobe.d/open-vm-tools-modules.conf"
+ echo ">>> (this will disable pcnet32 driver)"
+ echo ">>>"
+ echo ">>> If vmxnet driver doesn't handle your NIC, you have to manually"
+ echo ">>> disable loading of pcnet32 driver"
+ echo ">>>"
+}
+
+post_upgrade() {
+ echo ">>> Enable building of open-vm-tools modules:"
+ echo ">>> $ dkms add open-vm-tools/${1%-*}"
+ echo ">>>"
+}
+
+post_remove() {
+ echo ">>>"
+ echo ">>> Remember to un-blacklist pcnet32 driver"
+ echo ">>>"
+}
diff --git a/community/open-vm-tools/open-vm-tools.conf.d b/community/open-vm-tools/open-vm-tools.conf.d
index 83f7864e8..e24ab4e7f 100644
--- a/community/open-vm-tools/open-vm-tools.conf.d
+++ b/community/open-vm-tools/open-vm-tools.conf.d
@@ -1,6 +1,11 @@
# Enable support for Drag'n'Drop
VM_DRAG_AND_DROP="yes"
+# Load these modules on startup
+# They must be listed in proper dependency order
+# vmblock module loading is switched by VM_DRAG_AND_DROP variable above
+VM_MODULES=('vmci' 'vsock' 'vmhgfs' 'vmsync')
+
# vmware-guestd settings
GUESTD_BIN="/usr/sbin/vmware-guestd"
PIDFILE="/var/run/vmware-guestd.pid"
diff --git a/community/open-vm-tools/open-vm-tools.rc.d b/community/open-vm-tools/open-vm-tools.rc.d
index 0c9221489..1d9505abc 100644
--- a/community/open-vm-tools/open-vm-tools.rc.d
+++ b/community/open-vm-tools/open-vm-tools.rc.d
@@ -15,7 +15,7 @@ case "$1" in
VMBLOCK=`grep -w vmblock /proc/modules`
[ -z "$VMBLOCK" ] && modprobe vmblock
if [ $? -gt 0 ]; then
- stat_fail
+ stat_fail
exit 1
fi
@@ -27,13 +27,13 @@ case "$1" in
mount -t vmblock none /proc/fs/vmblock/mountPoint
if [ $? -gt 0 ]; then
- stat_fail
+ stat_fail
exit 1
fi
fi
- for m in vmhgfs vmsync; do
+ for m in ${VM_MODULES[@]}; do
VMMOD=`grep -w $m /proc/modules`
[ -z "$VMMOD" ] && \
{ modprobe $m
@@ -60,7 +60,12 @@ case "$1" in
# exit 1
# fi
- for m in vmhgfs vmsync vmci; do
+ VM_MODULES_RM=()
+ for m in ${VM_MODULES[@]}; do
+ VM_MODULES_RM=($m ${VM_MODULES_RM[@]})
+ done
+
+ for m in ${VM_MODULES_RM[@]}; do
VMMOD=`grep -w $m /proc/modules`
[ ! -z "$VMMOD" ] && rmmod $m
if [ $? -gt 0 ]; then
@@ -74,7 +79,7 @@ case "$1" in
[ -z "$MOUNTPOINT" ] && umount /proc/fs/vmblock/mountPoint
if [ $? -gt 0 ]; then
stat_fail
- exit 5
+ exit 5
fi
DND_TMPDIR="/tmp/VMwareDnD"
@@ -84,10 +89,10 @@ case "$1" in
[ ! -z "$VMBLOCK" ] && rmmod vmblock
if [ $? -gt 0 ]; then
stat_fail
- exit 6
+ exit 6
fi
fi
-
+
rm_daemon open-vm-tools
stat_done
;;
@@ -96,6 +101,6 @@ case "$1" in
$0 start
;;
*)
- echo "usage: $0 {start|stop|restart}"
+ echo "usage: $0 {start|stop|restart}"
esac
exit 0
diff --git a/community/open-vm-tools/scripts-network-FS19541.patch b/community/open-vm-tools/scripts-network-FS19541.patch
index 5fcb33ba8..296f22242 100644
--- a/community/open-vm-tools/scripts-network-FS19541.patch
+++ b/community/open-vm-tools/scripts-network-FS19541.patch
@@ -5,7 +5,7 @@
echo `date` "[rescue_nic] activating $nic ..."
- ifup $nic
-+ ifconfig $nic up
++ ip link set $nic up
exitCode=`expr $exitCode \| $?`
fi
done < $activeList
diff --git a/community/open-vm-tools/vmtoolsd.service b/community/open-vm-tools/vmtoolsd.service
new file mode 100644
index 000000000..1b9924c1f
--- /dev/null
+++ b/community/open-vm-tools/vmtoolsd.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Open Virtual Machine Tools (VMware Tools)
+ConditionVirtualization=vmware
+
+[Service]
+ExecStart=/usr/bin/vmtoolsd
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/opera/PKGBUILD b/community/opera/PKGBUILD
new file mode 100644
index 000000000..cc9bb472c
--- /dev/null
+++ b/community/opera/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 81340 2012-12-18 09:39:07Z idevolder $
+# Maintainer: Bartłomiej Piotrowski <barthalion@gmail.com>
+# Maintainer: BlackEagle < ike DOT devolder AT gmail DOT com >
+# Contributor: Mateusz Herych <heniekk@gmail.com>
+# Contributor: ruario <ruario AT opera DOT com>
+# Contributor: Daniel Isenmann <daniel AT archlinux DOT org>
+# Contributor: dorphell <dorphell AT archlinux DOT org>
+# Contributor: Sigitas Mazaliauskas <sigis AT gmail DOT com>
+
+pkgname=opera
+_ver=12.12
+_build=1707
+pkgver=$_ver.$_build
+pkgrel=1
+pkgdesc='Fast and secure web browser and Internet suite'
+arch=('i686' 'x86_64')
+url='http://www.opera.com/browser/'
+license=('custom:opera')
+depends=('gcc-libs' 'libxt' 'freetype2' 'libxext' 'glib2'
+ 'shared-mime-info' 'hicolor-icon-theme' 'desktop-file-utils')
+optdepends=('gstreamer0.10-base-plugins: HTML5 Video support'
+ 'gstreamer0.10-good: HTML5 Video support')
+install=$pkgname.install
+options=(!strip !zipman)
+
+if [[ $CARCH == i686 ]]; then
+ _arch=i386
+ source=(http://ftp.opera.com/pub/opera/linux/${_ver/./}/opera-${_ver}-${_build}.${_arch}.linux.tar.xz)
+ sha256sums=('7f766faa08d62be616ea43cf4bb026c8b6afb5a51fa8eae1227f16d5658779ca')
+elif [[ $CARCH == x86_64 ]]; then
+ _arch=$CARCH
+ source=(http://ftp.opera.com/pub/opera/linux/${_ver/./}/opera-${_ver}-${_build}.${_arch}.linux.tar.xz)
+ sha256sums=('1ba428bd5acf4f17a8ef0f970fb9e1334477468abbf21612dd8c2eec5fff9129')
+fi
+
+package() {
+ opera-${_ver}-${_build}.${_arch}.linux/install --prefix /usr --repackage $pkgdir/usr
+ install -Dm 644 $pkgdir/usr/share/$pkgname/defaults/license.txt $pkgdir/usr/share/licenses/$pkgname/license.txt
+}
diff --git a/community/opera/opera.install b/community/opera/opera.install
new file mode 100644
index 000000000..1190e6fd6
--- /dev/null
+++ b/community/opera/opera.install
@@ -0,0 +1,20 @@
+available() {
+ which "$1" >/dev/null 2>&1
+}
+
+post_install() {
+ update-mime-database /usr/share/mime >/dev/null
+ update-desktop-database -q /usr/share/applications
+
+ if available gtk-update-icon-cache; then
+ gtk-update-icon-cache -q /usr/share/icons/hicolor
+ fi
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/community/paintown/PKGBUILD b/community/paintown/PKGBUILD
new file mode 100644
index 000000000..8fe359267
--- /dev/null
+++ b/community/paintown/PKGBUILD
@@ -0,0 +1,54 @@
+# $Id: PKGBUILD 75859 2012-09-03 17:14:58Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Jschares <jacob.schares@gmail.com>
+# Contributor: celmir <scibecelmir@tuxfamily.org>
+# Contributor: Feufochmar <guill.delacourt@gmail.com>
+
+pkgname=paintown
+pkgver=3.6.0
+pkgrel=1
+pkgdesc="Open source fighting game in the same genre as Streets of Rage and Teenage Mutant Ninja Turtles"
+arch=('i686' 'x86_64')
+url="http://paintown.sourceforge.net/"
+license=('GPL')
+depends=('python2' 'freetype2' 'sdl' 'libpng' 'mpg123' 'libogg' 'libvorbis')
+makedepends=('cmake' 'gendesk')
+#install=paintown.install
+source=(http://downloads.sourceforge.net/sourceforge/paintown/$pkgname-$pkgver.tar.bz2
+ paintown.png)
+md5sums=('5c1160bee51fe2011a1141c490a5d368'
+ 'ed547f1377212ea079cf9b0a1ad2d587')
+
+build() {
+ cd "$srcdir"
+ gendesk
+
+ cd "$pkgname-$pkgver"
+
+ # fix python2 header
+ for file in $(find . -name '*.py' -print); do
+ sed -i "s#/usr/bin/python#/usr/bin/env python2#" $file
+ done
+
+ #sed -i "1 i #include <zlib.h>" src/util/sdl/image/IMG_png.c
+ #sed -i "1 i #include <zlib.h>" src/util/sdl/image/IMG_savepng.c
+
+ mkdir -p build && cd build
+ cmake ..
+ make
+ cp bin/paintown ..
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ mkdir -p $pkgdir/usr/{bin,share/{paintown,pixmaps,applications,licenses/paintown}}
+ sh install.sh -d $pkgdir/usr/share/paintown -b $pkgdir/usr/bin
+ # correct the gnerated file to remove the wrong path (because $pkgdir/usr/bin is written in the file)
+ sed -i "s#$pkgdir##g" $pkgdir/usr/bin/paintown
+ install -m644 $srcdir/paintown.desktop $pkgdir/usr/share/applications/paintown.desktop
+ install -m644 $srcdir/paintown.png $pkgdir/usr/share/pixmaps/paintown.png
+ install -m644 LICENSE $pkgdir/usr/share/licenses/paintown/LICENSE
+ install -m644 LEGAL $pkgdir/usr/share/licenses/paintown/LEGAL
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/paintown/libpng15.patch b/community/paintown/libpng15.patch
new file mode 100644
index 000000000..516c3ec01
--- /dev/null
+++ b/community/paintown/libpng15.patch
@@ -0,0 +1,343 @@
+------------------------------------------------------------------------
+r7015 | kazzmir | 2012-02-18 22:19:01 +0100 (Sa, 18 Feb 2012) | 1 line
+
+patch for sdl image to work with libpng1.4+
+
+Index: src/util/sdl/image/IMG_png.c
+===================================================================
+--- src/util/sdl/image/IMG_png.c (revision 7014)
++++ src/util/sdl/image/IMG_png.c (revision 7015)
+@@ -71,6 +71,10 @@
+ #endif
+ #include <png.h>
+
++/* Check for the older version of libpng */
++#if (PNG_LIBPNG_VER_MAJOR == 1) && (PNG_LIBPNG_VER_MINOR < 4)
++#define LIBPNG_VERSION_12
++#endif
+
+ static struct {
+ int loaded;
+@@ -80,6 +84,8 @@
+ void (*png_destroy_read_struct) (png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr);
+ png_uint_32 (*png_get_IHDR) (png_structp png_ptr, png_infop info_ptr, png_uint_32 *width, png_uint_32 *height, int *bit_depth, int *color_type, int *interlace_method, int *compression_method, int *filter_method);
+ png_voidp (*png_get_io_ptr) (png_structp png_ptr);
++ png_byte (*png_get_channels) (png_structp png_ptr, png_infop info_ptr);
++ png_uint_32 (*png_get_PLTE) (png_structp png_ptr, png_infop info_ptr, png_colorp *palette, int *num_palette);
+ png_uint_32 (*png_get_tRNS) (png_structp png_ptr, png_infop info_ptr, png_bytep *trans, int *num_trans, png_color_16p *trans_values);
+ png_uint_32 (*png_get_valid) (png_structp png_ptr, png_infop info_ptr, png_uint_32 flag);
+ void (*png_read_image) (png_structp png_ptr, png_bytepp image);
+@@ -91,6 +97,9 @@
+ void (*png_set_read_fn) (png_structp png_ptr, png_voidp io_ptr, png_rw_ptr read_data_fn);
+ void (*png_set_strip_16) (png_structp png_ptr);
+ int (*png_sig_cmp) (png_bytep sig, png_size_t start, png_size_t num_to_check);
++#ifndef LIBPNG_VERSION_12
++ jmp_buf* (*png_set_longjmp_fn) (png_structp, png_longjmp_ptr, size_t);
++#endif
+ } lib;
+
+ #ifdef LOAD_PNG_DYNAMIC
+@@ -129,6 +138,13 @@
+ SDL_UnloadObject(lib.handle);
+ return -1;
+ }
++ lib.png_get_channels =
++ (png_byte (*) (png_structp, png_infop))
++ SDL_LoadFunction(lib.handle, "png_get_channels");
++ if ( lib.png_get_channels == NULL ) {
++ SDL_UnloadObject(lib.handle);
++ return -1;
++ }
+ lib.png_get_io_ptr =
+ (png_voidp (*) (png_structp))
+ SDL_LoadFunction(lib.handle, "png_get_io_ptr");
+@@ -136,6 +152,13 @@
+ SDL_UnloadObject(lib.handle);
+ return -1;
+ }
++ lib.png_get_PLTE =
++ (png_uint_32 (*) (png_structp, png_infop, png_colorp *, int *))
++ SDL_LoadFunction(lib.handle, "png_get_PLTE");
++ if ( lib.png_get_PLTE == NULL ) {
++ SDL_UnloadObject(lib.handle);
++ return -1;
++ }
+ lib.png_get_tRNS =
+ (png_uint_32 (*) (png_structp, png_infop, png_bytep *, int *, png_color_16p *))
+ SDL_LoadFunction(lib.handle, "png_get_tRNS");
+@@ -213,6 +236,15 @@
+ SDL_UnloadObject(lib.handle);
+ return -1;
+ }
++#ifndef LIBPNG_VERSION_12
++ lib.png_set_longjmp_fn =
++ (jmp_buf * (*) (png_structp, png_longjmp_ptr, size_t))
++ SDL_LoadFunction(lib.handle, "png_set_longjmp_fn");
++ if ( lib.png_set_longjmp_fn == NULL ) {
++ SDL_UnloadObject(lib.handle);
++ return -1;
++ }
++#endif
+ }
+ ++lib.loaded;
+
+@@ -236,7 +268,9 @@
+ lib.png_create_read_struct = png_create_read_struct;
+ lib.png_destroy_read_struct = png_destroy_read_struct;
+ lib.png_get_IHDR = png_get_IHDR;
++ lib.png_get_channels = png_get_channels;
+ lib.png_get_io_ptr = png_get_io_ptr;
++ lib.png_get_PLTE = png_get_PLTE;
+ lib.png_get_tRNS = png_get_tRNS;
+ lib.png_get_valid = png_get_valid;
+ lib.png_read_image = png_read_image;
+@@ -248,6 +282,9 @@
+ lib.png_set_read_fn = png_set_read_fn;
+ lib.png_set_strip_16 = png_set_strip_16;
+ lib.png_sig_cmp = png_sig_cmp;
++#ifndef LIBPNG_VERSION_12
++ lib.png_set_longjmp_fn = png_set_longjmp_fn;
++#endif
+ }
+ ++lib.loaded;
+
+@@ -347,7 +384,12 @@
+ * the normal method of doing things with libpng). REQUIRED unless you
+ * set up your own error handlers in png_create_read_struct() earlier.
+ */
+- if ( setjmp(png_ptr->jmpbuf) ) {
++#ifndef LIBPNG_VERSION_12
++ if ( setjmp(*lib.png_set_longjmp_fn(png_ptr, longjmp, sizeof (jmp_buf))) )
++#else
++ if ( setjmp(png_ptr->jmpbuf) )
++#endif
++ {
+ error = "Error reading the PNG file.";
+ goto done;
+ }
+@@ -416,9 +458,9 @@
+ Rmask = 0x000000FF;
+ Gmask = 0x0000FF00;
+ Bmask = 0x00FF0000;
+- Amask = (info_ptr->channels == 4) ? 0xFF000000 : 0;
++ Amask = (lib.png_get_channels(png_ptr, info_ptr) == 4) ? 0xFF000000 : 0;
+ } else {
+- int s = (info_ptr->channels == 4) ? 0 : 8;
++ int s = (lib.png_get_channels(png_ptr, info_ptr) == 4) ? 0 : 8;
+ Rmask = 0xFF000000 >> s;
+ Gmask = 0x00FF0000 >> s;
+ Bmask = 0x0000FF00 >> s;
+@@ -426,7 +468,7 @@
+ }
+ }
+ surface = SDL_AllocSurface(SDL_SWSURFACE, width, height,
+- bit_depth*info_ptr->channels, Rmask,Gmask,Bmask,Amask);
++ bit_depth*lib.png_get_channels(png_ptr, info_ptr), Rmask,Gmask,Bmask,Amask);
+ if ( surface == NULL ) {
+ error = "Out of memory";
+ goto done;
+@@ -444,7 +486,7 @@
+
+ /* Create the array of pointers to image data */
+ row_pointers = (png_bytep*) malloc(sizeof(png_bytep)*height);
+- if ( (row_pointers == NULL) ) {
++ if (row_pointers == NULL) {
+ error = "Out of memory";
+ goto done;
+ }
+@@ -467,6 +509,9 @@
+ /* Load the palette, if any */
+ palette = surface->format->palette;
+ if ( palette ) {
++ int png_num_palette;
++ png_colorp png_palette;
++ lib.png_get_PLTE(png_ptr, info_ptr, &png_palette, &png_num_palette);
+ if(color_type == PNG_COLOR_TYPE_GRAY) {
+ palette->ncolors = 256;
+ for(i = 0; i < 256; i++) {
+@@ -474,12 +519,12 @@
+ palette->colors[i].g = i;
+ palette->colors[i].b = i;
+ }
+- } else if (info_ptr->num_palette > 0 ) {
+- palette->ncolors = info_ptr->num_palette;
+- for( i=0; i<info_ptr->num_palette; ++i ) {
+- palette->colors[i].b = info_ptr->palette[i].blue;
+- palette->colors[i].g = info_ptr->palette[i].green;
+- palette->colors[i].r = info_ptr->palette[i].red;
++ } else if (png_num_palette > 0 ) {
++ palette->ncolors = png_num_palette;
++ for( i=0; i<png_num_palette; ++i ) {
++ palette->colors[i].b = png_palette[i].blue;
++ palette->colors[i].g = png_palette[i].green;
++ palette->colors[i].r = png_palette[i].red;
+ }
+ }
+ }
+Index: src/util/sdl/image/sdl-image-1.2.10-libpng15.patch
+===================================================================
+--- src/util/sdl/image/sdl-image-1.2.10-libpng15.patch (revision 0)
++++ src/util/sdl/image/sdl-image-1.2.10-libpng15.patch (revision 7015)
+@@ -0,0 +1,160 @@
++--- IMG_png.c
+++++ IMG_png.c
++@@ -71,6 +71,10 @@
++ #endif
++ #include <png.h>
++
+++/* Check for the older version of libpng */
+++#if (PNG_LIBPNG_VER_MAJOR == 1) && (PNG_LIBPNG_VER_MINOR < 4)
+++#define LIBPNG_VERSION_12
+++#endif
++
++ static struct {
++ int loaded;
++@@ -80,6 +84,8 @@
++ void (*png_destroy_read_struct) (png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr);
++ png_uint_32 (*png_get_IHDR) (png_structp png_ptr, png_infop info_ptr, png_uint_32 *width, png_uint_32 *height, int *bit_depth, int *color_type, int *interlace_method, int *compression_method, int *filter_method);
++ png_voidp (*png_get_io_ptr) (png_structp png_ptr);
+++ png_byte (*png_get_channels) (png_structp png_ptr, png_infop info_ptr);
+++ png_uint_32 (*png_get_PLTE) (png_structp png_ptr, png_infop info_ptr, png_colorp *palette, int *num_palette);
++ png_uint_32 (*png_get_tRNS) (png_structp png_ptr, png_infop info_ptr, png_bytep *trans, int *num_trans, png_color_16p *trans_values);
++ png_uint_32 (*png_get_valid) (png_structp png_ptr, png_infop info_ptr, png_uint_32 flag);
++ void (*png_read_image) (png_structp png_ptr, png_bytepp image);
++@@ -91,6 +97,9 @@
++ void (*png_set_read_fn) (png_structp png_ptr, png_voidp io_ptr, png_rw_ptr read_data_fn);
++ void (*png_set_strip_16) (png_structp png_ptr);
++ int (*png_sig_cmp) (png_bytep sig, png_size_t start, png_size_t num_to_check);
+++#ifndef LIBPNG_VERSION_12
+++ jmp_buf* (*png_set_longjmp_fn) (png_structp, png_longjmp_ptr, size_t);
+++#endif
++ } lib;
++
++ #ifdef LOAD_PNG_DYNAMIC
++@@ -129,6 +138,13 @@
++ SDL_UnloadObject(lib.handle);
++ return -1;
++ }
+++ lib.png_get_channels =
+++ (png_byte (*) (png_structp, png_infop))
+++ SDL_LoadFunction(lib.handle, "png_get_channels");
+++ if ( lib.png_get_channels == NULL ) {
+++ SDL_UnloadObject(lib.handle);
+++ return -1;
+++ }
++ lib.png_get_io_ptr =
++ (png_voidp (*) (png_structp))
++ SDL_LoadFunction(lib.handle, "png_get_io_ptr");
++@@ -136,6 +152,13 @@
++ SDL_UnloadObject(lib.handle);
++ return -1;
++ }
+++ lib.png_get_PLTE =
+++ (png_uint_32 (*) (png_structp, png_infop, png_colorp *, int *))
+++ SDL_LoadFunction(lib.handle, "png_get_PLTE");
+++ if ( lib.png_get_PLTE == NULL ) {
+++ SDL_UnloadObject(lib.handle);
+++ return -1;
+++ }
++ lib.png_get_tRNS =
++ (png_uint_32 (*) (png_structp, png_infop, png_bytep *, int *, png_color_16p *))
++ SDL_LoadFunction(lib.handle, "png_get_tRNS");
++@@ -213,6 +236,15 @@
++ SDL_UnloadObject(lib.handle);
++ return -1;
++ }
+++#ifndef LIBPNG_VERSION_12
+++ lib.png_set_longjmp_fn =
+++ (jmp_buf * (*) (png_structp, png_longjmp_ptr, size_t))
+++ SDL_LoadFunction(lib.handle, "png_set_longjmp_fn");
+++ if ( lib.png_set_longjmp_fn == NULL ) {
+++ SDL_UnloadObject(lib.handle);
+++ return -1;
+++ }
+++#endif
++ }
++ ++lib.loaded;
++
++@@ -236,7 +268,9 @@
++ lib.png_create_read_struct = png_create_read_struct;
++ lib.png_destroy_read_struct = png_destroy_read_struct;
++ lib.png_get_IHDR = png_get_IHDR;
+++ lib.png_get_channels = png_get_channels;
++ lib.png_get_io_ptr = png_get_io_ptr;
+++ lib.png_get_PLTE = png_get_PLTE;
++ lib.png_get_tRNS = png_get_tRNS;
++ lib.png_get_valid = png_get_valid;
++ lib.png_read_image = png_read_image;
++@@ -248,6 +282,9 @@
++ lib.png_set_read_fn = png_set_read_fn;
++ lib.png_set_strip_16 = png_set_strip_16;
++ lib.png_sig_cmp = png_sig_cmp;
+++#ifndef LIBPNG_VERSION_12
+++ lib.png_set_longjmp_fn = png_set_longjmp_fn;
+++#endif
++ }
++ ++lib.loaded;
++
++@@ -347,7 +384,12 @@
++ * the normal method of doing things with libpng). REQUIRED unless you
++ * set up your own error handlers in png_create_read_struct() earlier.
++ */
++- if ( setjmp(png_ptr->jmpbuf) ) {
+++#ifndef LIBPNG_VERSION_12
+++ if ( setjmp(*lib.png_set_longjmp_fn(png_ptr, longjmp, sizeof (jmp_buf))) )
+++#else
+++ if ( setjmp(png_ptr->jmpbuf) )
+++#endif
+++ {
++ error = "Error reading the PNG file.";
++ goto done;
++ }
++@@ -416,9 +458,9 @@
++ Rmask = 0x000000FF;
++ Gmask = 0x0000FF00;
++ Bmask = 0x00FF0000;
++- Amask = (info_ptr->channels == 4) ? 0xFF000000 : 0;
+++ Amask = (lib.png_get_channels(png_ptr, info_ptr) == 4) ? 0xFF000000 : 0;
++ } else {
++- int s = (info_ptr->channels == 4) ? 0 : 8;
+++ int s = (lib.png_get_channels(png_ptr, info_ptr) == 4) ? 0 : 8;
++ Rmask = 0xFF000000 >> s;
++ Gmask = 0x00FF0000 >> s;
++ Bmask = 0x0000FF00 >> s;
++@@ -426,7 +468,7 @@
++ }
++ }
++ surface = SDL_AllocSurface(SDL_SWSURFACE, width, height,
++- bit_depth*info_ptr->channels, Rmask,Gmask,Bmask,Amask);
+++ bit_depth*lib.png_get_channels(png_ptr, info_ptr), Rmask,Gmask,Bmask,Amask);
++ if ( surface == NULL ) {
++ error = "Out of memory";
++ goto done;
++@@ -467,6 +509,9 @@
++ /* Load the palette, if any */
++ palette = surface->format->palette;
++ if ( palette ) {
+++ int png_num_palette;
+++ png_colorp png_palette;
+++ lib.png_get_PLTE(png_ptr, info_ptr, &png_palette, &png_num_palette);
++ if(color_type == PNG_COLOR_TYPE_GRAY) {
++ palette->ncolors = 256;
++ for(i = 0; i < 256; i++) {
++@@ -474,12 +519,12 @@
++ palette->colors[i].g = i;
++ palette->colors[i].b = i;
++ }
++- } else if (info_ptr->num_palette > 0 ) {
++- palette->ncolors = info_ptr->num_palette;
++- for( i=0; i<info_ptr->num_palette; ++i ) {
++- palette->colors[i].b = info_ptr->palette[i].blue;
++- palette->colors[i].g = info_ptr->palette[i].green;
++- palette->colors[i].r = info_ptr->palette[i].red;
+++ } else if (png_num_palette > 0 ) {
+++ palette->ncolors = png_num_palette;
+++ for( i=0; i<png_num_palette; ++i ) {
+++ palette->colors[i].b = png_palette[i].blue;
+++ palette->colors[i].g = png_palette[i].green;
+++ palette->colors[i].r = png_palette[i].red;
++ }
++ }
++ }
+
+------------------------------------------------------------------------
diff --git a/community/paintown/paintown.png b/community/paintown/paintown.png
new file mode 100644
index 000000000..c7e4830e4
--- /dev/null
+++ b/community/paintown/paintown.png
Binary files differ
diff --git a/community/pcsxr/PKGBUILD b/community/pcsxr/PKGBUILD
new file mode 100644
index 000000000..8533aab0f
--- /dev/null
+++ b/community/pcsxr/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 66302 2012-02-23 13:44:59Z allan $
+## Maintainer: schuay <jakob.gruber@gmail.com>
+## Contributor: quantax -- contact via Arch Linux forum or AUR
+## Contributor: Christoph Zeiler <archNOSPAM_at_moonblade.dot.org>
+
+pkgname=pcsxr
+pkgver=1.9.92
+pkgrel=4
+pkgdesc='A Sony PlayStation (PSX) emulator based on the PCSX-df project'
+arch=('i686' 'x86_64')
+url='http://pcsxr.codeplex.com/'
+license=('GPL')
+depends=('libcdio' 'libgl' 'libglade' 'libxtst' 'libxv' 'sdl' 'mesa')
+conflicts=('pcsx-df')
+_pkgurl="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=$pkgname&DownloadId=140521&FileTime=129254829621800000&Build=$(wget -qO - http://www.codeplex.com/ | sed -nr 's/^[[:space:]]*Version [[:digit:]]{4}\.([[:digit:]]{1,2}\.){2}([[:digit:]]+)[[:space:]]*$/\2/p' | tail -n 1)"
+source=($pkgname-$pkgver.tar.bz2::$_pkgurl)
+md5sums=('28411aed0b4424f97227d94bdefaec83')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr --enable-libcdio --enable-opengl
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
+
diff --git a/community/pekwm/PKGBUILD b/community/pekwm/PKGBUILD
index 5d186c20a..91bdd5575 100644
--- a/community/pekwm/PKGBUILD
+++ b/community/pekwm/PKGBUILD
@@ -1,49 +1,54 @@
-# $Id: PKGBUILD 80631 2012-11-27 14:08:01Z fyan $
-# Maintainer:
+# $Id: PKGBUILD 81762 2012-12-28 23:22:15Z arodseth $
+# Maintainer: Alexander Rødseth <rodseth@gmail.com>
# Contributor: Kevin Piche <kevin@archlinux.org>
# Contributor: Eddie Lozon <almostlucky@attbi.com>
pkgname=pekwm
pkgver=0.1.16
-pkgrel=1
-pkgdesc="A small, fast, functional, and flexible window manager"
-arch=('i686' 'x86_64')
+pkgrel=2
+pkgdesc='Small, fast, functional, and flexible window manager'
+arch=('x86_64' 'i686')
license=('GPL')
url='https://www.pekwm.org/projects/pekwm'
depends=('gcc-libs' 'libjpeg' 'libpng' 'libxft' 'libxinerama' 'libxpm' 'libxrandr')
+makedepends=('gendesk')
+optdepends=('lxappearance: feature-rich GTK+ theme switcher'
+ 'nitrogen: background browser and setter'
+ 'tint2: basic, good-looking task manager')
backup=(etc/pekwm/autoproperties
etc/pekwm/autoproperties_typerules
- etc/pekwm/config
- etc/pekwm/config_system
- etc/pekwm/keys
- etc/pekwm/menu
- etc/pekwm/mouse
- etc/pekwm/mouse_click
+ etc/pekwm/config
+ etc/pekwm/config_system
+ etc/pekwm/keys
+ etc/pekwm/menu
+ etc/pekwm/mouse
+ etc/pekwm/mouse_click
etc/pekwm/mouse_sloppy
etc/pekwm/mouse_system
- etc/pekwm/start
+ etc/pekwm/start
etc/pekwm/vars)
source=("http://www.pekwm.org/projects/pekwm/files/${pkgname}-${pkgver}.tar.bz2"
- 'pekwm.desktop')
+ "${pkgname}_kdm.desktop")
+sha256sums=('899eef35d5d1f472dd65a08c180b9719935cb1f42eda7fada6f9b8b551c79c96'
+ '4c1817d328dad84407c9ba7219015eb3be0345be9e98fc03fa693b6b443a8dc6')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- # Default settings:
- # --enable-shape --enable-xinerama --enable-menus \
- # --enable-harbour --disable-debug --disable-pedantic \
- # --enable-xft --enable-image-xpm --enable-image-jpeg \
- # --enable-image-png --enable-xrandr
- ./configure --prefix=/usr --sysconfdir=/etc
+ cd "$srcdir"
+ gendesk
+ cd "$pkgname-$pkgver"
+ ./configure --prefix=/usr --sysconfdir=/etc
make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" install
- install -D -m644 "${srcdir}/${pkgname}.desktop" \
- "${pkgdir}/usr/share/xsessions/${pkgname}.desktop"
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+ install -Dm644 "$srcdir/$pkgname.desktop" \
+ "$pkgdir/usr/share/xsessions/$pkgname.desktop"
+ install -Dm644 "$srcdir/${pkgname}_kdm.desktop" \
+ "$pkgdir//usr/share/apps/kdm/sessions/$pkgname.desktop"
}
-# vim: ts=2 sw=2 et ft=sh
-md5sums=('ec9bce332d0545c28f74ca4bf6b69cbb'
- '5a78fc6653fbb0b7282ecf7f1f81e2c5')
+
+# vim: ts=2 sw=2 et
diff --git a/community/pekwm/pekwm_kdm.desktop b/community/pekwm/pekwm_kdm.desktop
new file mode 100644
index 000000000..b77722d03
--- /dev/null
+++ b/community/pekwm/pekwm_kdm.desktop
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Type=XSession
+Exec=pekwm
+TryExec=pekwm
+Name=PekWM
diff --git a/community/povray/LICENSE b/community/povray/LICENSE
new file mode 100644
index 000000000..8a22b9e7e
--- /dev/null
+++ b/community/povray/LICENSE
@@ -0,0 +1,237 @@
+ POV-Ray Licence Agreement
+ GENERAL LICENSE AGREEMENT
+ FOR PERSONAL USE
+ Persistence of Vision Ray Tracer (POV-Ray)
+ Version 3.6 License and Terms & Conditions of Use
+ version of 1 February 2005
+ (also known as POVLEGAL.DOC)
+
+Please read through the terms and conditions of this license carefully. This
+license is a binding legal agreement between you, the 'User' (an individual
+or single entity) and Persistence of Vision Raytracer Pty. Ltd. ACN 105 891
+870 (herein also referred to as the "Company"), a company incorporated in the
+state of Victoria, Australia, for the product known as the "Persistence of
+Vision Ray Tracer", also referred to herein as 'POV-Ray'.
+
+YOUR ATTENTION IS PARTICULARLY DRAWN TO THE DISCLAIMER OF WARRANTY AND NO
+LIABILITY AND INDEMNITY PROVISIONS. TO USE THE PERSISTENCE OF VISION RAY
+TRACER ("POV-RAY") YOU MUST AGREE TO BE BOUND BY THE TERMS AND CONDITIONS SET
+OUT IN THIS DOCUMENT. IF YOU DO NOT AGREE TO ALL THE TERMS AND CONDITIONS OF
+USE OF POV-RAY SET OUT IN THIS LICENSE AGREEMENT, OR IF SUCH TERMS AND
+CONDITIONS ARE NOT BINDING ON YOU IN YOUR JURISDICTION, THEN YOU MAY NOT USE
+POV-RAY IN ANY MANNER. THIS GENERAL LICENSE AGREEMENT MUST ACCOMPANY ALL
+POV-RAY FILES WHETHER IN THEIR OFFICIAL OR CUSTOM VERSION FORM. IT MAY NOT BE
+REMOVED OR MODIFIED. THIS GENERAL LICENSE AGREEMENT GOVERNS THE USE OF
+POV-RAY WORLDWIDE. THIS DOCUMENT SUPERSEDES AND REPLACES ALL PREVIOUS GENERAL
+LICENSES.
+
+INTRODUCTION
+
+This document pertains to the use of the Persistence of Vision Ray Tracer
+(also known as POV-Ray). It applies to all POV-Ray program source files,
+executable (binary) files, scene files, documentation files, help files,
+bitmaps and other POV-Ray files contained in official Company archives,
+whether in full or any part thereof, and are herein referred to as the
+"Software". The Company reserves the right to revise these rules in future
+versions and to make additional rules to address new circumstances at any
+time. Such rules, when made, will be posted in a revised license file, the
+latest version of which is available from the Company website at
+http://www.povray.org/povlegal.html.
+
+USAGE PROVISIONS
+
+Subject to the terms and conditions of this agreement, permission is granted
+to the User to use the Software and its associated files to create and render
+images. The creator of a scene file retains all rights to any scene files
+they create, and any images generated by the Software from them. Subject to
+the other terms of this license, the User is permitted to use the Software in
+a profit-making enterprise, provided such profit arises primarily from use of
+the Software and not from distribution of the Software or a work including
+the Software in whole or part.
+
+Please refer to http://www.povray.org/povlegal.html for licenses covering
+distribution of the Software and works including the Software.
+
+The User is also granted the right to use the scene files, fonts, bitmaps,
+and include files distributed in the INCLUDE and SCENES\INCDEMO sub-
+directories of the Software in their own scenes. Such permission does not
+extend to any other files in the SCENES directory or its sub-directories. The
+SCENES files are for the User's enjoyment and education but may not be the
+basis of any derivative works unless the file in question explicitly grants
+permission to do such.
+
+This licence does not grant any right of re-distribution or use in any manner
+other than the above. The Company has separate license documents that apply
+to other uses (such as re-distribution via the internet or on CD) ; please
+visit http://www.povray.org/povlegal.html for links to these. In particular
+you are advised that the sale, lease, or rental of the Software in any form
+without written authority from the Company is explicitly prohibited.
+
+Notwithstanding anything in the the balance of this licence agreement,
+nothing in this licence agreement permits the installation or use of the
+Software in conjunction with any product (including software) produced
+or distributed by any party who is, or has been, in violation of this
+licence agreement or of the distribution licence
+ (http://www.povray.org/distribution-license.html)
+(or any earlier or later versions of those documents) unless:
+
+ a. the Company has explicitly released that party in writing from the
+ consequences of their non compliance; or
+ b. both of the following are true:
+ i. the installation or use of the Software is without the User
+ being aware of the abovementioned violation; and
+ ii. the installation or use of the Software is not a result (whether
+ direct or indirect) of any request or action of the abovementioned
+ party (or any of its products), any agent of that party (or any of
+ their products), or any person(s) involved in supplying any such
+ product to the User.
+
+COPYRIGHT
+
+Copyright 1991-2003, Persistence of Vision Team.
+Copyright 2003-2004, Persistence of Vision Raytracer Pty. Ltd.
+Windows version Copyright 1996-2003, Christopher Cason.
+
+Copyright subsists in this Software which is protected by Australian and
+international copyright laws. The Software is NOT PUBLIC DOMAIN.
+
+Nothing in this agreement shall give you any rights in respect of the
+intellectual property of the Company and you acknowledge that you do not
+acquire any rights in respect of such intellectual property rights. You
+acknowledge that the Software is the valuable intellectual property of the
+Company and that if you use, modify or distribute the Software for
+unauthorized purposes or in an unauthorized manner (or cause or allow the
+forgoing to occur), you will be liable to the Company for any damages it may
+suffer (and which you acknowledge it may suffer) as well as statutory damages
+to the maximum extent permitted by law and also that you may be liable to
+criminal prosecution. You indemnify the Company and the authors of the
+Software for every single consequence flowing from the aforementioned events.
+
+DISCLAIMER OF WARRANTY
+
+This Software is provided on an "AS IS" basis, without warranty of any kind,
+express or implied, including without limitation, any implied warranties of
+merchantability, fitness for a particular purpose and non-infringement of
+intellectual property of any third party. This Software has inherent
+limitations including design faults and programming bugs. The entire risk as
+to the quality and performance of the Software is borne by you, and it is
+your responsibility to ensure that it does what you require it to do prior to
+using it for any purpose (other than testing it), and prior to distributing
+it in any fashion. Should the Software prove defective, you agree that you
+alone assume the entire cost resulting in any way from such defect.
+
+This disclaimer of warranty constitutes an essential and material term of
+this agreement. If you do not or cannot accept this, or if it is
+unenforceable in your jurisdiction, then you may not use the Software in any
+manner.
+
+NO LIABILITY
+
+When you use the Software you acknowledge and accept that you do so at your
+sole risk. You agree that under no circumstances shall you have any claim
+against the Company or anyone associated directly or indirectly with the
+Company whether as employee, subcontractor, agent, representative,
+consultant, licensee or otherwise ("Company Associates") for any loss,
+damages, harm, injury, expense, work stoppage, loss of business information,
+business interruption, computer failure or malfunction which may be suffered
+by you or by any third party from any cause whatsoever, howsoever arising, in
+connection with your use or distribution of the Software even where the
+Company were aware, or ought to have been aware, of the potential of such
+loss. Damages referred to above shall include direct, indirect, general,
+special, incidental, punitive and/or consequential.
+
+This disclaimer of liability constitutes an essential and material term of
+this agreement. If you do not or cannot accept this, or if it is
+unenforceable in your jurisdiction, then you may not use the Software.
+
+INDEMNITY
+
+You indemnify the Company and Company Associates and hold them harmless
+against any claims which may arise from any loss, damages, harm, injury,
+expense, work stoppage, loss of business information, business interruption,
+computer failure or malfunction, which may be suffered by you or any other
+party whatsoever as a consequence of any act or omission of the Company
+and/or Company Associates, whether negligent or not, arising out of your use
+and/or distribution of the Software, or from any other cause whatsoever,
+howsoever arising, in connection with the Software. These provisions are
+binding on your estate, heirs, executors, legal successors, administrators,
+parents and/or guardians.
+
+This indemnification constitutes an essential and material term of this
+agreement. If you do not or cannot accept this, or if it is unenforceable in
+your jurisdiction, then you may not use the Software.
+
+HIGH RISK ACTIVITIES
+
+This Software and the output produced by this Software is not fault-tolerant
+and is not designed, manufactured or intended for use as on-line control
+equipment in hazardous environments requiring fail-safe performance, in which
+the failure of the Software could lead or directly or indirectly to death,
+personal injury, or severe physical or environmental damage ("High Risk
+Activities"). The Company specifically disclaims any express or implied
+warranty of fitness for High Risk Activities and explicitly prohibits the use
+of the Software for such purposes.
+
+CRYPTOGRAPHIC SIGNING OF DOCUMENTS
+
+Changes to this Agreement and documents issued under its authority may be
+cryptographically signed by the POV-Ray Team Co-ordinator's private PGP key.
+In the absence of evidence to the contrary, such documents shall be considered,
+under the terms of this Agreement, to be authentic provided the signature is
+valid. The master copy of this Agreement at http://www.povray.org/povlegal.html
+will also be signed by the current version of the team-coordinator's key.
+
+The public key for the POV-Ray Team-coordinator can be retrieved from the
+location https://secure.povray.org/keys/. The current fingerprint for it is
+B4DD 932A C080 C3A3 6EA2 9952 DB04 4A74 9901 4518.
+
+MISCELLANEOUS
+
+This Agreement constitutes the complete agreement concerning this license.
+Any changes to this agreement must be in writing and may take the form of
+notifications by the Company to you, or through posting notifications on the
+Company website. THE USE OF THIS SOFTWARE BY ANY PERSON OR ENTITY IS
+EXPRESSLY MADE CONDITIONAL ON THEIR ACCEPTANCE OF THE TERMS SET FORTH HEREIN.
+
+Except where explicitly stated otherwise herein, if any provision of this
+Agreement is found to be invalid or unenforceable, the invalidity or
+unenforceability of such provision shall not affect the other provisions of
+this agreement, and all provisions not affected by such invalidity or
+unenforceability shall remain in full force and effect. In such cases you
+agree to attempt to substitute for each invalid or unenforceable provision a
+valid or enforceable provision which achieves to the greatest extent
+possible, the objectives and intention of the invalid or unenforceable
+provision. The validity and interpretation of this agreement will be governed
+by the laws of Australia in the state of Victoria (except for conflict of law
+provisions).
+
+CONTACT INFORMATION
+
+License inquiries can be made via email; please use the following address
+(but see below prior to emailing) :
+
+ team-coord-[three-letter month]-[four-digit year]@povray.org
+
+for example, team-coord-jun-2004@povray.org should be used if at the time you
+send the email it is the month of June 2004. The changing email addresses are
+necessary to combat spam and email viruses. Old email addresses may be deleted
+at our discretion.
+
+Note that the above address may change for reasons other than that given above;
+please check the version of this document at http://www.povray.org/povlegal.html
+for the current address. Note that your inability or failure to contact us
+for any reason is not an excuse for violating this licence.
+
+Do NOT send any attachments of any sort other than by prior arrangement.
+EMAIL MESSAGES INCLUDING ATTACHMENTS WILL BE DELETED UNREAD.
+
+The following postal address is only for official license business. Please
+note that it is preferred that initial queries about licensing be made via
+email ; postal mail should only be used when email is not possible, or when
+written documents are being exchanged by prior arrangement.
+
+ Persistence of Vision Raytracer Pty. Ltd.
+ PO Box 407
+ Williamstown,
+ Victoria 3016
+ Australia
diff --git a/community/povray/PKGBUILD b/community/povray/PKGBUILD
new file mode 100644
index 000000000..34f7a22cb
--- /dev/null
+++ b/community/povray/PKGBUILD
@@ -0,0 +1,66 @@
+# $Id: PKGBUILD 74007 2012-07-18 01:08:29Z ibiru $
+# Maintainer: Alexander Rødseth <rodseth@gmail.com>
+# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+# Contributor: tobias <tobias@archlinux.org>
+# Contributor: red_over_blue
+# Contributor: neri
+
+pkgname=povray
+pkgver=3.7.0.RC6
+pkgrel=4
+pkgdesc="Script based raytracer for creating 3D graphics"
+arch=('x86_64' 'i686')
+license=('custom')
+url="http://povray.org/"
+depends=('libtiff' 'libpng' 'boost-libs')
+makedepends=('boost')
+backup=("etc/povray/${pkgver%.*.*}/povray.conf"
+ "etc/povray/${pkgver%.*.*}/povray.ini")
+source=("http://www.povray.org/redirect/www.povray.org/beta/source/$pkgname-$pkgver.tar.gz"
+ 'povray3.7.0_rc3-user-conf.patch'
+ 'distribution-license.txt'
+ 'LICENSE'
+ 'source-license.txt')
+sha256sums=('374957bdb90fb7be5f36f839b3f04ab0a4340f6e8cf369f658d6592a342803e3'
+ '95b04ec4973e6e8a80fc83df2e3caff0b4d6699c4154144f3017d42cab7236e0'
+ 'bcf6893c741568bbff6839bb7310b0c43af8cb54bae792da21123e1026f91ae9'
+ '9162060797de4f7f91ccf5e1fac5ec3378a0b0fed382393797ba3f4f27896402'
+ '7d80992314f7947f5f672a4ad8b1d072a6179f01fb0228a88e4224a8bd45de96')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ sed -i 's:=no:=yes:' unix/config/ax_boost_thread.m4
+ sed -i 's:AC_MSG_FAILURE(\[c:AC_MSG_RESULT(\[:' configure.ac
+ sed -i 's:TIME_UTC:TIME_UTC_:' \
+ source/backend/scene/view.cpp \
+ vfe/vfepovms.cpp \
+ vfe/vfesession.cpp
+ ./bootstrap
+ patch -p1 < ../povray3.7.0_rc3-user-conf.patch
+ COMPILED_BY="Arch Linux" ./configure --prefix=/usr --sysconfdir=/etc
+ # --disable-optimiz #--with-boost-thread=boost_thread-gcc-mt
+ make CXXFLAGS+="-lboost_system"
+ gzip povray.1
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ mkdir -p "$pkgdir/usr/share/$pkgname-3.7"
+ cp -r icons include ini scenes scripts "$pkgdir/usr/share/$pkgname-3.7"
+ mkdir -p "$pkgdir/usr/share/doc/$pkgname-3.7"
+ cp -r doc "$pkgdir/usr/share/doc/$pkgname-3.7"
+ install -Dm755 unix/povray "$pkgdir/usr/bin/povray"
+ install -Dm644 povray.conf "$pkgdir/etc/povray/3.7/povray.conf"
+ install -Dm644 povray.ini "$pkgdir/etc/povray/3.7/povray.ini"
+ install -Dm644 povray.1.gz "$pkgdir/usr/share/man/man1/povray.1.gz"
+ install -Dm644 ../LICENSE \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm644 ../distribution-license.txt \
+ "$pkgdir/usr/share/licenses/$pkgname/distribution-license.txt"
+ install -Dm644 ../source-license.txt \
+ "$pkgdir/usr/share/licenses/$pkgname/source-license.txt"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/povray/distribution-license.txt b/community/povray/distribution-license.txt
new file mode 100644
index 000000000..16615f148
--- /dev/null
+++ b/community/povray/distribution-license.txt
@@ -0,0 +1,532 @@
+ POV-Ray License Agreement
+ DISTRIBUTOR'S LICENCE AGREEMENT
+ Persistence of Vision Raytracer(tm) (POV-Ray(tm))
+ 13 August 2004
+
+Licensed Versions: Versions 3.5 and 3.6
+
+Please read through the terms and conditions of this license carefully.
+
+This is a binding legal agreement between you, the "Distributor" and
+Persistence of Vision Raytracer Pty. Ltd. ACN 105 891 870 ("POV"), a
+company incorporated in the state of Victoria, Australia, for the
+product known as the "Persistence of Vision Raytracer(tm)", also
+referred to herein as "POV-Ray(tm)".
+
+The terms of this agreement are set out at http://www.povray.org/distribution-license.html
+("Official Terms"). The Official Terms take precedence over this document to the extent
+of any inconsistency.
+
+1. INTRODUCTION
+
+1.1. In this agreement, except to the extent the context requires
+ otherwise, the following capitalised terms have the following
+ meanings:
+
+ (a) Distribution means:
+
+ (i) a single item of a distribution medium, including a CD Rom or
+ DVD Rom, containing software programs and/or data;
+
+ (ii) a set of such items;
+
+ (iii) a data file in a generally accepted data format from which
+ such an item can be created using generally available standard
+ tools;
+
+ (iv) a number of such data files from which a set of such items can
+ be created; or
+
+ (v) a data file in a generally accepted data storage format which is
+ an archive of software programs and/or data;
+
+ (b) Derived Code means all software which is derived from or is an
+ adaptation of any part of the Software other than a scene file;
+
+ (c) Intellectual Rights means:
+
+ (i) all copyright, patent, trade mark, trade secret, design, and
+ circuit layout rights;
+
+ (ii) all rights to the registration of such rights; and
+
+ (iii) all rights of a similar nature
+
+ which exist anywhere in the world;
+
+ (d) Licensed Version means the version set out at the top of this
+ agreement against the heading "Licensed Version" and all minor
+ releases of this version (ie releases of the form x.y.z);
+
+ (e) POV Associate means any person associated directly or indirectly
+ with POV whether as a director, officer, employee, subcontractor,
+ agent, representative, consultant, licensee or otherwise;
+
+ (f) Modification Terms means the most recent version from time to time
+ of the document of that name made available from the Site
+
+ (g) Revocation List means the list of that name linked to from the
+ Official Terms;
+
+ (h) Site means www.povray.org;
+
+ (i) Software means the Licensed Version of the Persistence of Vision
+ Raytracer(tm) (also known as POV-Ray(tm)) (including all POV-Ray
+ program source files, executable (binary) files, scene files,
+ documentation files, help files, bitmaps and other POV-Ray files
+ associated with the Licensed Version) in a form made available by
+ POV on the Site;
+
+ (j) User Licence means the most recent version from time to time of
+ the document of that name made available from the Site.
+
+2. OPEN SOURCE DISTRIBUTIONS
+
+2.1. In return for the Distributor agreeing to be bound by the terms of
+ this agreement, POV grants the Distributor permission to make a
+ copy of the Software by including the Software in a generally
+ recognised Distribution of a recognised operating system where the
+ kernel of that operating system is made available under licensing
+ terms:
+
+ (a) which are approved by the Open Source Initiative
+ (www.opensource.org) as complying with the "Open Source
+ Definition" put forward by the Open Source Initiative; or
+
+ (b) which comply with the "free software definition" of the Free
+ Software Foundation (www.fsf.org).
+
+2.2. As at June 2004, and without limiting the generality of the term,
+ each of the following is a "generally recognised Distribution" for
+ the purposes of clause 2.1: Debian, Red Hat (Enterprise and
+ Fedora), SuSE, Mandrake, Xandros, Gentoo and Knoppix Linux
+ distributions, and officially authorized distributions of the
+ FreeBSD, OpenBSD, and NetBSD projects.
+
+2.3. Clause 2.1 also applies to the Software being included in the above
+ distributions 'package' and 'ports' systems, where such exist;
+
+2.4. Where the Distributor reproduces the Software in accordance with
+ clause 2.1:
+
+ (a) the Distributor may rename, reorganise or repackage (without
+ omission) the files comprising the Software where such
+ renaming, reorganisation or repackaging is necessary to
+ conform to the naming or organisation scheme of the target
+ operating environment of the Distribution or of an established
+ package management system of the target operating environment
+ of the Distribution; and
+
+ (b) the Distributor must not otherwise rename, reorganise or
+ repackage the Software.
+
+3. DISTRIBUTION LICENCE
+
+3.1. Subject to the terms and conditions of this agreement, and in
+ return for Distributor agreeing to be bound by the terms of this
+ agreement, POV grants the Distributor permission to make a copy of
+ the Software in any of the following circumstances:
+
+ (a) in the course of providing a mirror of the POV-Ray Site (or
+ part of it), which is made available generally over the
+ internet to each person without requiring that person to
+ identify themselves and without any other restriction other
+ than restrictions designed to manage traffic flows;
+
+ (b) by placing it on a local area network accessible only by
+ persons authorized by the Distributor whilst on the
+ Distributor's premises;
+
+ (c) where that copy is provided to a staff member or student
+ enrolled at a recognised educational institution;
+
+ (d) by including the Software as part of a Distribution where:
+
+ (i) neither the primary nor a substantial purpose of the
+ distribution of the Distribution is the distribution of
+ the Software. That is, the distribution of the Software
+ is merely incidental to the distribution of the
+ Distribution; and
+
+ (ii) if the Software was not included in the Distribution,
+ the remaining software and data included within the
+ Distribution would continue to function effectively and
+ according to its advertised or intended purpose;
+
+ (e) by including the Software as part of a Distribution where:
+
+ (i) there is no data, program or other files apart from the
+ Software on the Distribution;
+
+ (ii) the Distribution is distributed by a person to another
+ person known to that person; or
+
+ (iii) the Distributor has obtained explicit written
+ authority from POV to perform the distribution, citing
+ this clause number, prior to the reproduction being
+ made.
+
+3.2. In each case where the Distributor makes a copy of the Software in
+ accordance with clause 3.1, the Distributor must, unless no payment
+ or other consideration of any type is received by Distributor in
+ relation to the Distribution:
+
+ (a) ensure that each person who receives a copy of the Software
+ from the Distributor is aware prior to acquiring that copy:
+
+ (i) of the full name and contact details of the Distributor,
+ including the Distributor's web site, street address, mail
+ address, and working email address;
+
+ (ii) that the Software is available without charge from the
+ Site;
+
+ (iii) that no charge is being made for the granting of a
+ licence over the Software.
+
+ (b) include a copy of the User Licence and this Distribution
+ License with the copy of the Software. These licences must be
+ stored in the same subdirectory on the distribution medium as
+ the Software and named in such a way as to prominently
+ identify their purpose;
+
+3.3. The Distributor must not rename, reorganise or repackage any of the
+ files comprising the Software without the prior written authority
+ of POV.
+
+3.4. Except as explicitly set out in this agreement, nothing in this
+ agreement permits Distributor to make any modification to any part
+ of the Software.
+
+4. RESTRICTIONS ON DISTRIBUTION
+
+4.1. Nothing in this agreement gives the Distributor:
+
+ (a) any ability to grant any licence in respect of the use of the
+ Software or any part of it to any person;
+
+ (b) any rights or permissions in respect of, including rights or
+ permissions to distribute or permit the use of, any Derived
+ Code;
+
+ (c) any right to bundle a copy of the Software (or part thereof),
+ whether or not as part of a Distribution, with any other
+ items, including books and magazines. POV may, in response to
+ a request, by notice in writing and in its absolute
+ discretion, permit such bundling on a case by case basis.
+ This clause 4.1(c) does not apply to Distributions permitted
+ under clause 2;
+
+ (d) any right, permission or authorisation to infringe any
+ Intellectual Right held by any third party.
+
+4.2. Distributor may charge a fee for the making or the provision of a
+ copy of the Software.
+
+4.3. Where the making, or the provision, of a copy of the Software is
+ authorised under the terms of clause 3 but not under those of
+ clause 2 of this agreement, the total of all fees charged in
+ relation to such making or provision and including all fees
+ (including shipping and handling fees) which are charged in respect
+ of any software, hardware or other material provided in conjunction
+ with or in any manner which is reasonably connected with the
+ making, or the provision, of a copy of the Software must not exceed
+ the reasonable costs incurred by the Distributor in making the
+ reproduction, or in the provision, of that copy for which the fee
+ is charged.
+
+4.4. Notwithstanding anything else in this agreement, nothing in this
+ agreement permits the reproduction of any part of the Software by,
+ or on behalf of:
+
+ (a) Any person currently listed on the Revocation List from time
+ to time;
+
+ (b) Any related body corporate (as that term is defined in section
+ 50 of the Corporations Law 2001 (Cth)) of any person referred
+ to in clause 4.4(a);
+
+ (c) Any person in the course of preparing any publication in any
+ format (including books, magazines, CD Roms or on the
+ internet) for any of the persons identified in paragraph (a);
+
+ (d) Any person who is, or has been, in breach of this Agreement
+ and that breach has not been waived in writing signed by POV;
+ or
+
+ (e) Any person to whom POV has sent a notice in writing or by
+ email stating that that person may not distribute the
+ Software.
+
+4.5. From the day two years after a version of the Software more recent
+ than the Licensed Version is made available by POV on the Site
+ clause 3 only permits reproduction of the Software where the
+ Distributor ensures that each recipient of such a reproduction is
+ aware, prior to obtaining that reproduction, that that reproduction
+ of the Software is an old version of the Software and that a more
+ recent version of the Software is available from the Site.
+
+5. COPYRIGHT AND NO LITIGATION
+
+5.1. Copyright subsists in the Software and is protected by Australian
+ and international copyright laws.
+
+5.2. Nothing in this agreement gives Distributor any rights in respect
+ of any Intellectual Rights in respect of the Software or which are
+ held by or on behalf of POV. Distributor acknowledges that it does
+ not acquire any rights in respect of such Intellectual Rights.
+
+5.3. Distributor acknowledges that if it performs out any act in respect
+ of the Software without the permission of POV it will be liable to
+ POV for all damages POV may suffer (and which Distributor
+ acknowledges it may suffer) as well as statutory damages to the
+ maximum extent permitted by law and that it may also be liable to
+ criminal prosecution.
+
+5.4. Distributor must not commence any action against any person alleging
+ that the Software or the use or distribution of the Software infringes
+ any rights, including Intellectual Rights of the Distributor or of any
+ other person. If Distributor provides one or more copies of the
+ Software to any other person in accordance with the agreement,
+ Distributor waives all rights it has, or may have in the future, to
+ bring any action, directly or indirectly, against any person to the
+ extent that such an action relates to an infringement of any rights,
+ including Intellectual Rights of any person in any way arising from, or
+ in relation to, the use, or distribution, (including through the
+ authorisation of such use or distribution) of:
+ (a) the Software;
+ (b) any earlier or later version of the Software; or
+ (c) any other software to the extent it incorporates elements of the
+ software referred to in paragraphs (a) or (b) of this clause
+ 5.4.
+
+6. DISCLAIMER OF WARRANTY
+
+6.1. To the extent permitted by law, all implied terms and conditions
+ are excluded from this agreement. Where a term or condition is
+ implied into this agreement and that term cannot be legally
+ excluded, that term has effect as a term or condition of this
+ agreement. However, to the extent permitted by law, the liability
+ of POV for a breach of such an implied term or condition is limited
+ to the fullest extent permitted by law.
+
+6.2. To the extent permitted by law, this Software is provided on an "AS
+ IS" basis, without warranty of any kind, express or implied,
+ including without limitation, any implied warranties of
+ merchantability, fitness for a particular purpose and
+ non-infringement of intellectual property of any third party. The
+ Software has inherent limitations including design faults and
+ programming bugs.
+
+6.3. The entire risk as to the quality and performance of the Software
+ is borne by Distributor, and it is Distributor's responsibility to
+ ensure that the Software fulfils Distributor's requirements prior
+ to using it in any manner (other than testing it for the purposes
+ of this paragraph in a non-critical and non-production
+ environment), and prior to distributing it in any fashion.
+
+6.4. This clause 6 is an essential and material term of, and cannot be
+ severed from, this agreement. If Distributor does not or cannot
+ agree to be bound by this clause, or if it is unenforceable, then
+ Distributor must not, at any time, make any reproductions of the
+ Software under this agreement and this agreement gives the
+ Distributor no rights to make any reproductions of any part of the
+ Software.
+
+7. NO LIABILITY
+
+7.1. When you distribute or use the Software you acknowledge and accept
+ that you do so at your sole risk. Distributor agrees that under no
+ circumstances will it have any claim against POV or any POV
+ Associate for any loss, damages, harm, injury, expense, work
+ stoppage, loss of business information, business interruption,
+ computer failure or malfunction which may be suffered by you or by
+ any third party from any cause whatsoever, howsoever arising, in
+ connection with your use or distribution of the Software even where
+ POV was aware, or ought to have been aware, of the potential of
+ such loss.
+
+7.2. Neither POV nor any POV Associate has any liability to Distributor
+ for any indirect, general, special, incidental, punitive and/or
+ consequential damages arising as a result of a breach of this
+ agreement by POV or which arises in any way related to the Software
+ or the exercise of a licence granted to Distributor under this
+ agreement.
+
+7.3. POV's total aggregate liability to the Distributor for all loss or
+ damage arising in any way related to this agreement is limited to
+ the lesser of: (a) AU$100, and (b) the amount received by POV from
+ Distributor as payment for the grant of a licence under this
+ agreement.
+
+7.4. Distributor must bring any action against POV in any way related to
+ this agreement or the Software within 3 months of the cause of
+ action first arising. Distributor waives any right it has to bring
+ any action against POV and releases POV from all liability in
+ respect of a cause of action if initiating process in relation to
+ that action is not served on POV within 3 months of the cause of
+ action arising. Where a particular set of facts give rise to more
+ than one cause of action this clause 7.4 applies as if all such
+ causes of action arise at the time the first such cause of action
+ arises.
+
+7.5. This clause 7 is an essential and material term of, and cannot be
+ severed from, this agreement. If Distributor does not or cannot
+ agree to be bound by this clause, or if it is unenforceable, then
+ Distributor must not, at any time, make any reproductions of the
+ Software under this agreement and this agreement gives the
+ Distributor no rights to make any reproductions of any part of the
+ Software.
+
+8. INDEMNITY
+
+8.1. Distributor indemnifies POV and each POV Associate and holds each
+ of them harmless against all claims which arise from any loss,
+ damages, harm, injury, expense, work stoppage, loss of business
+ information, business interruption, computer failure or
+ malfunction, which may be suffered by Distributor or any other
+ party whatsoever as a consequence of:
+
+ (a) any act or omission of POV and/or any POV Associate, whether
+ negligent or not;
+
+ (b) Distributor's use and/or distribution of the Software; or
+
+ (c) any other cause whatsoever, howsoever arising, in connection
+ with the Software.
+
+ This clause 8 is binding on Distributor's estate, heirs, executors,
+ legal successors, administrators, parents and/or guardians.
+
+8.2. Distributor indemnifies POV, each POV Associate and each of the
+ authors of any part of the Software against all loss and damage and
+ for every other consequence flowing from any breach by Distributor
+ of any Intellectual Right held by POV.
+
+8.3. This clause 8 constitutes an essential and material term of, and
+ cannot be severed from, this agreement. If Distributor does not or
+ cannot agree to be bound by this clause, or if it is unenforceable,
+ then Distributor must not, at any time, make any reproductions of
+ the Software under this agreement and this agreement gives the
+ Distributor no rights to make any reproductions of any part of the
+ Software.
+
+9. HIGH RISK ACTIVITIES
+
+9.1. This Software and the output produced by this Software is not
+ fault-tolerant and is not designed, manufactured or intended for
+ use as on-line control equipment in hazardous environments
+ requiring fail-safe performance, in which the failure of the
+ Software could lead or directly or indirectly to death, personal
+ injury, or severe physical or environmental damage ("High Risk
+ Activities"). POV specifically disclaims all express or implied
+ warranty of fitness for High Risk Activities and, notwithstanding
+ any other term of this agreement, explicitly prohibits the use or
+ distribution of the Software for such purposes.
+
+10. ENDORSEMENT PROHIBITION
+
+10.1. Distributor must not, without explicit written permission from
+ POV, claim or imply in any way that:
+
+ (a) POV or any POV Associate officially endorses or supports the
+ Distributor or any product (such as CD, book, or magazine)
+ associated with the Distributor or any reproduction of the
+ Software made in accordance with this agreement; or
+
+ (b) POV derives any benefit from any reproduction made in
+ accordance with this agreement.
+
+11. TRADEMARKS
+
+11.1. "POV-Ray(tm)", "Persistence of Vision Raytracer(tm)" and
+ "POV-Team(tm)" are trademarks of Persistence of Vision Raytracer
+ Pty. Ltd. Any other trademarks referred to in this agreement are
+ the property of their respective holders. Distributor must not
+ use, apply for, or register anywhere in the world, any word, name
+ (including domain names), trade mark or device which is
+ substantially identical or deceptively or confusingly similar to
+ any of Persistence of Vision Raytracer Pty. Ltd's trade marks.
+
+12. MISCELLANEOUS
+
+12.1. The Official Terms, including those documents incorporated by
+ reference into the Official Terms, and the Modification Terms
+ constitute the entire agreement between the parties relating to
+ the distribution of the Software and, except where stated to the
+ contrary in writing signed by POV, supersedes all previous
+ negotiations and correspondence in relation to it.
+
+12.2. POV may modify this agreement at any time by making a revised
+ licence available from the Site at http://www.povray.org/distribution-license.html.
+ This agreement is modified by replacing the terms in this
+ agreement with those of the revised licence from the time that the
+ revised licence is so made available. It is your responsibility to
+ ensure that you have read and agreed to the current version of
+ this agreement prior to distributing the Software.
+
+12.3. Except where explicitly stated otherwise herein, if any provision
+ of this Agreement is found to be invalid or unenforceable, the
+ invalidity or unenforceability of such provision shall not affect
+ the other provisions of this agreement, and all provisions not
+ affected by such invalidity or unenforceability shall remain in
+ full force and effect. In such cases Distributor agrees to
+ attempt to substitute for each invalid or unenforceable provision
+ a valid or enforceable provision which achieves to the greatest
+ extent possible, the objectives and intention of the invalid or
+ unenforceable provision.
+
+12.4. A waiver of a right under this agreement is not effective unless
+ given in writing signed by the party granting that waiver. Unless
+ otherwise stipulated in the waiver, a waiver is only effective in
+ respect of the circumstances in which it is given and is not a
+ waiver in respect of any other rights or a waiver in respect of
+ future rights or actions.
+
+12.5. The validity and interpretation of this agreement is governed by
+ the laws in force in the State of Victoria, Australia.
+ Distributor submits to the exclusive jurisdiction of the courts of
+ that State and courts located within that State exercising federal
+ jurisdiction.
+
+12.6. References in this agreement to "written" and "writing" mean on
+ paper or by fax and expressly exclude email and other forms of
+ electronic communication.
+
+13. CONTACT INFORMATION
+
+13.1. This clause 13 does not form part of the agreement. License
+ inquiries can be made via email; please use the following address
+ (but see 13.2 below prior to emailing) :
+
+ team-coord-[three-letter month]-[four-digit year]@povray org.
+
+ for example, team-coord-jun-2004@povray.org should be used if at
+ the time you send the email it is the month of June 2004. The
+ changing email addresses are necessary to combat spam. Old email
+ addresses may be deleted at POV's discretion.
+
+13.2. Note that the address referred to in 13.1 may change for reasons
+ other than those referred to in that clause; please check the
+ current version of this document at http://www.povray.org/distribution-license.html.
+ for the current address. Your inability or failure to contact us
+ is no excuse for violating the licence.
+
+13.3. Do NOT send any email attachments of any sort other than by prior
+ arrangement. Do not send email in HTML format. EMAIL MESSAGES
+ INCLUDING ATTACHMENTS WILL BE DELETED UNREAD.
+
+13.4. The following postal address is only for official license
+ business. Please note that it is preferred that initial queries
+ about licensing be made via email; postal mail should only be used
+ when email is not possible, or when written documents are being
+ exchanged by prior arrangement. While it is unlikely this address
+ will change in the short term it would be advisable to check
+ http://www.povray.org/distribution-license.html for the current
+ one prior to sending postal mail.
+
+ Persistence of Vision Raytracer Pty. Ltd.
+ PO Box 407
+ Williamstown,
+ Victoria 3016
+ Australia
diff --git a/community/povray/povray3.7.0_rc3-user-conf.patch b/community/povray/povray3.7.0_rc3-user-conf.patch
new file mode 100644
index 000000000..f20d9b506
--- /dev/null
+++ b/community/povray/povray3.7.0_rc3-user-conf.patch
@@ -0,0 +1,27 @@
+ Makefile.am | 13 -------------
+ 1 files changed, 0 insertions(+), 13 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 76b394c..9822c52 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -107,19 +107,6 @@ install-data-local:
+ for f in $$filelist ; do \
+ $(INSTALL_DATA) $(top_srcdir)/doc/$$f $(DESTDIR)$(povdocdir)/$$f && echo "$(DESTDIR)$(povdocdir)/$$f" >> $(povinstall); \
+ done
+- @echo "Creating user directories..."; \
+- for p in $(povuser) $(povconfuser) ; do \
+- $(mkdir_p) $$p && chown $(povowner) $$p && chgrp $(povgroup) $$p && printf "%s\n" "$$p" "`cat $(povinstall)`" > $(povinstall); \
+- done
+- @echo "Copying user configuration and INI files..."; \
+- for f in povray.conf povray.ini ; do \
+- if test -f $(povconfuser)/$$f; then \
+- echo "Creating backup of $(povconfuser)/$$f"; \
+- mv -f $(povconfuser)/$$f $(povconfuser)/$$f.bak; \
+- fi; \
+- done; \
+- $(INSTALL_DATA) $(top_srcdir)/povray.conf $(povconfuser)/povray.conf && chown $(povowner) $(povconfuser)/povray.conf && chgrp $(povgroup) $(povconfuser)/povray.conf && echo "$(povconfuser)/povray.conf" >> $(povinstall); \
+- $(INSTALL_DATA) $(top_builddir)/povray.ini $(povconfuser)/povray.ini && chown $(povowner) $(povconfuser)/povray.ini && chgrp $(povgroup) $(povconfuser)/povray.ini && echo "$(povconfuser)/povray.ini" >> $(povinstall)
+
+ # Remove data, config, and empty folders for 'make uninstall'.
+ # Use 'hook' instead of 'local' so as to properly remove *empty* folders (e.g. scripts).
diff --git a/community/povray/source-license.txt b/community/povray/source-license.txt
new file mode 100644
index 000000000..aaf3dbaa1
--- /dev/null
+++ b/community/povray/source-license.txt
@@ -0,0 +1,360 @@
+ POV-Ray Licence Agreement
+ MODIFICATION TERMS
+ Persistence of Vision Raytracer(tm) (POV-Ray(tm))
+ 5 July 2004
+
+Licensed Version: Version 3.6
+
+Please read through the terms and conditions of this agreement carefully.
+
+This is a binding legal agreement between you and Persistence of Vision
+Raytracer Pty. Ltd. ACN 105 891 870 ("POV"), a company incorporated in the
+state of Victoria, Australia, for the product known as the "Persistence of
+Vision Raytracer(tm)", also referred to herein as "POV-Ray(tm)". In these
+terms "Licensed Version" means the version of POV-Ray identified at the start
+of these terms and all minor releases (ie releases of the form x.y.z) of that
+version.
+
+The terms of this agreement are set out at:
+ http://www.povray.org/source-license.html
+("Official Terms"). The Official Terms take precedence over this document to
+the extent of any inconsistency. Except where POV has agreed with you in
+writing to the contrary, the Official Terms are a complete statement of your
+ability to modify the source code of the Licensed Version, to use any
+modifications of the Licensed Version, and to distribute any modifications of
+the Licensed Version. You may accept these terms by making any modification
+to the Licensed Version, or by distributing any modification to the Licensed
+Version. If you do not agree to be bound by these terms you must not make any
+modifications to the source code of the Licensed Version and must not
+distribute any modifications of the Licensed Version.
+
+ 1. PERMITTED MODIFICATION AND USE
+
+ 1.1. The source code of POV-Ray is provided to: promote the porting of
+ POV-Ray to hardware and operating systems which POV does not support;
+ promote experimentation and development of new features to the core
+ code which might eventually be incorporated into the official version;
+ and provide insight into the inner workings of the program for
+ educational purposes.
+
+ 1.2. Except as expressly set out in this agreement, or permitted by another
+ agreement between you and POV, any use or modification of any POV-Ray
+ source code is expressly prohibited.
+
+ 1.3. Subject to this clause 1.3 and the balance of this clause 1, you are
+ granted the privilege to modify and compile the source code of the
+ Licensed Version for your own personal use if such modification
+ fulfils one or more purposes set out in clause 1.1. Each output of
+ such a modification or compilation is called a "Modified Version" in
+ these terms and conditions. Nothing in these terms and conditions
+ gives you any rights or permissions to use, reproduce or modify any
+ part of the source code for any version of POV-Ray other than in a
+ modified version of POV-Ray. In particular, no portion of the source
+ code for the Licensed Version may, under any circumstances, be
+ incorporated into any other program (or separated out to form an
+ independent program) and all Modified Versions that you create must,
+ in substance, be modifications of the Licensed Version.
+
+ 1.4. You may use any Modified Version that you alone have created only under
+ the conditions granted in the standard POV end-user license for the
+ Licensed Version from which the Modified Version was created. As at
+ July 2004, this licence may be found at:
+ http://www.povray.org/povlegal.doc.
+ Nothing in these terms permits any other person to use any Modified Version.
+
+ 1.5. Neither the Licensed Version nor any Modified Version may be linked
+ into any other software package either at compile-time using (for
+ example) an object code linker nor at run-time as (for example) a DLL,
+ ActiveX control, OLE server, COM/DCOM server, or other remoting system
+ including, without limitation, any linkage that could blur the
+ end-user's perception of which program provides which functions.
+
+ 1.6. To allow POV-Ray to communicate with outside programs, the official
+ versions of POV-Ray may include internal communication "hooks", often
+ called an Application Programming Interface, or API. Modification to
+ these APIs or other officially supported communication mechanisms (or
+ the addition of any new code or feature) for the purpose of avoidance
+ (or to assist others to avoid) the intent of this or any other POV
+ license is expressly prohibited.
+
+ 2. CUSTOM VERSIONS
+
+ 2.1. Strict conditions and restrictions are imposed if you wish to
+ distribute a modified version of POV-Ray, its documentation or other
+ parts of the package, including any translation of the documentation
+ into other languages or file formats.
+
+ 2.2. For the purposes of these terms and conditions, a "Custom Version"
+ means a Modified Version which has all of the following characteristics:
+
+ (a). it must have all of the functions of the Licensed Version with all
+ existing features, copyright notices, author attributions, all
+ Licence Agreements, etc., intact;
+
+ (b). any reference to the software being an "Official Version" in any
+ files included in the Modified Version must be altered to clearly
+ state that it is not an official but an unofficial version;
+
+ (c). when used by a user it must be clear to that user:
+
+ (i). that the Modified Version is a version of POV-Ray that has
+ been modified, and does not appear to be another program
+ that happens to have POV-Ray or POV-Ray functionality
+ built-in;
+
+ (ii). that the Modified Version is an unofficial version of
+ POV-Ray;
+
+ (iii). who is the creator of the Modified Version;
+
+ (d). the Modified Version must include accurate information in the
+ DISTRIBUTION_MESSAGE macros in the source file OPTOUT.H and must
+ prominently display this information. This information must at
+ least correctly identify who made the custom version.
+
+ (e). It must display each copyright notice and credit screen which is
+ displayed by the Licensed Version and do so in a similar manner to
+ that of the Licensed Version. When each such notice or screen is
+ displayed, the Modified Version must indicate that the version is
+ a modified and unofficial version. In particular, if it is a
+ version of POV-Ray that contains splash screens or about boxes
+ (e.g. Windows, Macintosh) each splash screen and about box in the
+ Licensed Version must be present in the Modified Version and must
+ be rendered and presented in a similar manner;
+
+ (f). if the Modified Version contains any feature that would cause a
+ POV-Ray scene source file that works on the Modified Version to
+ fail or otherwise work incorrectly on either the current official
+ version of POV-Ray, or on the Licensed Version, then the Modified
+ Version must check that the scene source file has a #version
+ directive that includes the 'unofficial' token, and must only
+ activate any variations from the Licensed Version (including, but
+ not limited to, new keywords) if that #version directive is
+ present. If that directive is not present, the Modified Version
+ must work in the same way as the Licensed Version. An example of a
+ correct 'unofficial' #version declaration is '#version unofficial
+ megapov 0.7 ;'.
+
+ 2.3. It is the intent of POV to permit modifications to the Licensed Version
+ which are Custom Versions within the meaning of clause 2.2 and which
+ incorporate a means of being controlled by other software where that
+ other software has as its express primary purpose the ability to
+ control or co-ordinate POV-Ray (or other programs in general) remotely
+ for parallel or network rendering purposes.
+
+ 3. CONDITIONS FOR DISTRIBUTION OF CUSTOM VERSIONS
+
+ 3.1. You must not distribute any Modified Version to any person if that
+ Modified Version is not a Custom Version as defined by section 2.2.
+
+ 3.2. You may distribute a Custom Version on the terms of the Distributor's
+ Licence Agreement for the Licensed Version as modified by this clause 3
+ and with:
+
+ (a). references to the Licensed Version read as references to the
+ Custom Version; and
+
+ (b). references to the Software read as references to the Custom
+ Version;
+
+ 3.3. The distribution licence is available from:
+ http://www.povray.org/.
+ As at July 2004, this licence is available at:
+ http://www.povray.org/distribution-license.html.
+
+ 3.4. You must ensure that each user of the Custom Version is aware that it
+ is an unofficial build of POV-Ray which is not supported by POV and
+ that the POV-Ray developers are not in any way responsible for it;
+
+ 3.5. You must either:
+
+ (a). accompany each object code version of the Custom Version which is
+ distributed with the full source code for that Custom Version and
+ full documentation describing all modifications that you have made
+ to the Licensed Version; or
+
+ (b). for a period of at least 3 years following the first distribution
+ of an object code version of the Custom Version make available for
+ download over the internet to each person who receives an object
+ code version of the Custom Version the full source code for the
+ Custom Version and full documentation describing all modifications
+ that you have made to the Licensed Version and you must make each
+ person who receives an object code version of the Custom Version
+ aware that the source code and documentation is available for
+ download, and the location from which it can be downloaded;
+
+ and, in either case,
+
+ (c). that source code must be licensed to each person who receives it
+ under the same terms as these Modification Terms.
+
+ 3.6. You may, at your option:
+
+ (a). waive clause 4.5 of the standard distribution licence with respect
+ to distribution of the Custom Version; and
+
+ (b). include as additional clauses, and without affecting any of the
+ existing provisions of the licence, limitation of liability
+ provisions in favour of yourself in the same terms as clauses 6
+ and 7 of the standard distribution licence.
+
+ 3.7. Where a Custom Version is distributed in accordance with the terms of
+ this agreement:
+
+ (a). You must license each recipient of that Custom Version to use
+ those portions of the Custom Version in respect of which you hold
+ copyright on the terms of the standard POV end-user license for
+ the Licensed Version from which the Modified Version was created;
+
+ (b). POV agrees to licence each recipient of that Custom Version to use
+ those portions of the Custom Version in respect of which POV holds
+ copyright on the terms of the standard POV end-user license for
+ the Licensed Version from which the Modified Version was created.
+
+ 4. CONTRIBUTING BUG FIXES AND ENHANCEMENTS
+
+ 4.1. POV is not obliged to accept enhancements and bug fixes that you submit
+ to it. However, if it does so, it does so in accordance with the then
+ current Contribution Terms. POV may require you to complete and send
+ documentation to POV prior to accepting a bug fix and, in particular,
+ will require a copyright assignment of each contribution.
+
+ 5. COPYRIGHT AND INTELLECTUAL PROPERTY
+
+ 5.1. Copyright subsists in the Licensed Version and it is protected by
+ Australian and international copyright laws.
+
+ 5.2. Nothing in this agreement gives you any rights in respect of any
+ Intellectual Rights in respect of the Licensed Version or which are
+ held by or on behalf of POV. You acknowledge that you do not acquire
+ any rights in respect of such Intellectual Rights.
+
+ 5.3. You acknowledge that if you perform any act in respect of the Software
+ without the permission of POV you will be liable to POV for all damages
+ POV may suffer (and which you acknowledge POV may suffer) as well as
+ statutory damages to the maximum extent permitted by law and that you
+ may also be liable to criminal prosecution.
+
+ 5.4. For the purposes of this clause 5 Intellectual Rights means:
+
+ (a). all copyright, patent, trade mark, trade secret, design, and
+ circuit layout rights;
+
+ (b). all rights to the registration of such rights; and
+
+ (c). all rights of a similar nature
+
+ which exist anywhere in the world;
+
+ 6. DISCLAIMER OF WARRANTY
+
+ 6.1. To the extent permitted by law, all implied terms and conditions are
+ excluded from this agreement. Where a term or condition is implied into
+ this agreement and that term cannot be legally excluded, that term has
+ effect as a term or condition of this agreement. However, to the extent
+ permitted by law, the liability of POV for a breach of such an implied
+ term or condition is limited to the fullest extent permitted by law.
+
+ 6.2. To the extent permitted by law, the Licensed Version is provided on an
+ "AS IS" basis, without warranty of any kind, express or implied,
+ including without limitation, any implied warranties of merchantability,
+ fitness for a particular purpose and non-infringement of intellectual
+ property of any third party. The Licensed Program has inherent
+ limitations including design faults and programming bugs.
+
+ 6.3. The entire risk as to the quality and performance of the Licensed
+ Software, and of any Custom Version is borne by you, and it is your
+ responsibility to ensure that it fulfils your requirements prior to
+ using it in any manner.
+
+ 6.4. This clause 6 is an essential and material term of, and cannot be
+ severed from, this agreement. If you do not or cannot agree to be
+ bound by this clause, or if it is unenforceable, then you must not, at
+ any time, make any use or reproductions of the Licensed Version under
+ this agreement and this agreement gives you no rights to deal in any
+ way with any part of the Licensed Version.
+
+ 7. NO LIABILITY
+
+ 7.1. When you use or modify the Licensed Version you acknowledge and accept
+ that you do so at your sole risk. You agree that under no circumstances
+ will you have any claim against POV or any POV Associate for any loss,
+ damages, harm, injury, expense, work stoppage, loss of business
+ information, business interruption, computer failure or malfunction
+ which may be suffered by you or by any third party from any cause what-
+ soever, howsoever arising, in connection with your use, modification or
+ distribution of the Software even where POV was aware, or ought to have
+ been aware, of the potential of such loss.
+
+ 7.2. Neither POV nor any POV Associate has any liability to you for any
+ indirect, general, special, incidental, punitive and/or consequential
+ damages arising as a result of a breach of this agreement by POV or
+ which arises in any way related to the Licensed Version or the exercise
+ of a licence granted to you under this agreement.
+
+ 7.3. POV's total aggregate liability to you for all loss or damage arising
+ in any way related to this agreement is limited to the lesser of: (a)
+ AU$100, and (b) the amount received by POV from you as payment for the
+ grant of a licence under this agreement.
+
+ 7.4. You must bring any action against POV in any way related to this
+ agreement or the Licensed Version within 3 months of the cause of
+ action first arising. You waive any right you have to bring any action
+ against POV and release POV from all liability in respect of a cause
+ of action if initiating process in relation to that action is not
+ served on POV within 3 months of the cause of action arising. Where a
+ particular set of facts give rise to more than one cause of action this
+ clause 7.4 applies as if all such causes of action arise at the time
+ the first such cause of action arises.
+
+ 7.5. This clause 7 is an essential and material term of, and cannot be
+ severed from, this agreement. If you does not or cannot agree to be
+ bound by this clause, or if it is unenforceable, then you must not, at
+ any time, make any use or reproductions of the Licensed Version under
+ this agreement and this agreement gives you no rights to deal in any
+ way with any part of the Licensed Version.
+
+ 8. MISCELLANEOUS
+
+ 8.1. POV may modify this agreement at any time by making a revised licence
+ available from:
+ http://www.povray.org/source-license.html.
+ This agreement is modified by replacing the terms in this agreement
+ with those of the revised licence from the time that the revised
+ licence is so made available. It is your responsibility to ensure that
+ you have read and agreed to the current version of this agreement prior
+ to making any modification to the Licensed Version.
+
+ 8.2. Except where explicitly stated otherwise herein, if any provision of
+ this agreement is found to be invalid or unenforceable, the invalidity
+ or unenforceability of such provision shall not affect the other
+ provisions of this agreement, and all provisions not affected by such
+ invalidity or unenforceability shall remain in full force and effect.
+ In such cases you agree to attempt to substitute for each invalid or
+ unenforceable provision a valid or enforceable provision which achieves
+ to the greatest extent possible, the objectives and intention of the
+ invalid or unenforceable provision.
+
+ 8.3. A waiver of a right under this agreement is not effective unless given
+ in writing signed by the party granting that waiver. Unless otherwise
+ stipulated in the waiver, a waiver is only effective in respect of the
+ circumstances in which it is given and is not a waiver in respect of
+ any other rights or a waiver in respect of future rights or actions.
+
+ 8.4. The validity and interpretation of this agreement is governed by the
+ laws in force in the State of Victoria, Australia. You submit to the
+ exclusive jurisdiction of the courts of that State and courts located
+ within that State exercising federal jurisdiction.
+
+ 8.5. References in this agreement to "written" and "writing" mean on paper
+ or by fax and expressly exclude email and other forms of electronic
+ communication.
+
+ 8.6. "POV Associate" means any person associated directly or indirectly with
+ POV whether as a director, officer, employee, subcontractor, agent,
+ representative, consultant, licensee or otherwise.
+
+ 8.7. "Distributor's Licence Agreement" in respect of a Licensed Version,
+ means the agreement of that name for that Licensed Version made
+ available from:
+ http://www.povray.org/.
diff --git a/community/pypy/LICENSE b/community/pypy/LICENSE
new file mode 100644
index 000000000..7fc6952b0
--- /dev/null
+++ b/community/pypy/LICENSE
@@ -0,0 +1,154 @@
+License for files in the pypy/ directory
+==================================================
+
+Except when otherwise stated (look for LICENSE files in directories or
+information at the beginning of each file) all software and
+documentation in the 'pypy' directories is licensed as follows:
+
+ The MIT License
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or
+ sell copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+
+PyPy Copyright holders 2003-2010
+-----------------------------------
+
+Except when otherwise stated (look for LICENSE files or information at
+the beginning of each file) the files in the 'pypy' directory are each
+copyrighted by one or more of the following people and organizations:
+
+ Armin Rigo
+ Maciej Fijalkowski
+ Carl Friedrich Bolz
+ Samuele Pedroni
+ Antonio Cuni
+ Michael Hudson
+ Christian Tismer
+ Holger Krekel
+ Eric van Riet Paap
+ Richard Emslie
+ Anders Chrigstrom
+ Amaury Forgeot d Arc
+ Aurelien Campeas
+ Anders Lehmann
+ Niklaus Haldimann
+ Seo Sanghyeon
+ Leonardo Santagada
+ Lawrence Oluyede
+ Jakub Gustak
+ Guido Wesdorp
+ Benjamin Peterson
+ Alexander Schremmer
+ Niko Matsakis
+ Ludovic Aubry
+ Alex Martelli
+ Toon Verwaest
+ Stephan Diehl
+ Adrien Di Mascio
+ Stefan Schwarzer
+ Tomek Meka
+ Patrick Maupin
+ Jacob Hallen
+ Laura Creighton
+ Bob Ippolito
+ Camillo Bruni
+ Simon Burton
+ Bruno Gola
+ Alexandre Fayolle
+ Marius Gedminas
+ Guido van Rossum
+ Valentino Volonghi
+ Adrian Kuhn
+ Paul deGrandis
+ Gerald Klix
+ Wanja Saatkamp
+ Anders Hammarquist
+ Oscar Nierstrasz
+ Eugene Oden
+ Lukas Renggli
+ Guenter Jantzen
+ Dinu Gherman
+ Bartosz Skowron
+ Georg Brandl
+ Ben Young
+ Jean-Paul Calderone
+ Nicolas Chauvat
+ Rocco Moretti
+ Michael Twomey
+ boria
+ Jared Grubb
+ Olivier Dormond
+ Stuart Williams
+ Jens-Uwe Mager
+ Justas Sadzevicius
+ Mikael Schönenberg
+ Brian Dorsey
+ Jonathan David Riehl
+ Beatrice During
+ Elmo Mäntynen
+ Andreas Friedge
+ Alex Gaynor
+ Anders Qvist
+ Alan McIntyre
+ Bert Freudenberg
+
+ Heinrich-Heine University, Germany
+ Open End AB (formerly AB Strakt), Sweden
+ merlinux GmbH, Germany
+ tismerysoft GmbH, Germany
+ Logilab Paris, France
+ DFKI GmbH, Germany
+ Impara, Germany
+ Change Maker, Sweden
+
+
+License for 'lib-python/2.5.2' and 'lib-python/2.5.2-modified'
+==============================================================
+
+Except when otherwise stated (look for LICENSE files or
+copyright/license information at the beginning of each file) the files
+in the 'lib-python/2.5.2' and 'lib-python/2.5.2-modified' directories
+are all copyrighted by the Python Software Foundation and licensed under
+the Python Software License of which you can find a copy here:
+http://www.python.org/doc/Copyright.html
+
+License for 'pypy/translator/jvm/src/jna.jar'
+=============================================
+
+The file 'pypy/translator/jvm/src/jna.jar' is licensed under the GNU
+Lesser General Public License of which you can find a copy here:
+http://www.gnu.org/licenses/lgpl.html
+
+License for 'pypy/translator/jvm/src/jasmin.jar'
+================================================
+
+The file 'pypy/translator/jvm/src/jasmin.jar' is copyright (c) 1996-2004 Jon Meyer
+and distributed with permission. The use of Jasmin by PyPy does not imply
+that PyPy is endorsed by Jon Meyer nor any of Jasmin's contributors. Furthermore,
+the following disclaimer applies to Jasmin:
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
+TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/community/pypy/PKGBUILD b/community/pypy/PKGBUILD
new file mode 100644
index 000000000..63663c276
--- /dev/null
+++ b/community/pypy/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id: PKGBUILD 80543 2012-11-24 13:43:13Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+
+pkgname=pypy
+pkgver=2.0beta1
+pkgrel=1
+pkgdesc="A Python implementation written in Python, JIT enabled"
+url="http://codespeak.net/pypy/"
+arch=('i686' 'x86_64')
+depends=('libffi')
+provides=('python2')
+makedepends=('python2')
+optdepends=('openssl: openssl module'
+ 'expat: pyexpat module'
+ 'ncurses: ncurses module'
+ 'zlib: zlib module'
+ 'bzip2: bz2 module')
+license=('custom:MIT')
+source=(https://bitbucket.org/pypy/pypy/get/release-2.0-beta1.tar.bz2)
+md5sums=('a7e3e15c51e8f42af9f0c168b6c2750e')
+
+build() {
+ cd ${srcdir}/pypy-pypy-*/pypy/translator/goal
+
+ python2 translate.py -Ojit
+}
+
+package() {
+ cd ${srcdir}/pypy-pypy-*/pypy/translator/goal
+
+ install -Dm755 pypy-c ${pkgdir}/opt/pypy/pypy-c
+ mkdir -p ${pkgdir}/opt/pypy/{lib-python,pypy}
+
+ cd ${srcdir}/pypy-pypy-*
+ cp -r lib-python/2.7 ${pkgdir}/opt/pypy/lib-python/
+ cp -r lib_pypy ${pkgdir}/opt/pypy/
+ cp -r include ${pkgdir}/opt/pypy/
+
+ mkdir -p ${pkgdir}/usr/bin
+ ln -s /opt/pypy/pypy-c ${pkgdir}/usr/bin/pypy
+
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/pypy/LICENSE
+}
+# vim: ts=2 sw=2 et:
diff --git a/community/python2-gevent/PKGBUILD b/community/python2-gevent/PKGBUILD
index c1944be02..5b62ecde1 100644
--- a/community/python2-gevent/PKGBUILD
+++ b/community/python2-gevent/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=python2-gevent
pkgver=0.13.8
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
pkgdesc="Python network library that uses greenlet and libevent for easy and scalable concurrency"
license=("MIT")
diff --git a/community/python2-pycuda/PKGBUILD b/community/python2-pycuda/PKGBUILD
new file mode 100644
index 000000000..37049dea1
--- /dev/null
+++ b/community/python2-pycuda/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 62828 2012-01-27 14:09:50Z stephane $
+# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+pkgname=python2-pycuda
+pkgver=2011.2.2
+pkgrel=1
+pkgdesc="Python wrapper for Nvidia CUDA"
+arch=('i686' 'x86_64')
+url="http://mathema.tician.de/software/pycuda"
+license=('MIT/X Consortium')
+source=(http://pypi.python.org/packages/source/p/pycuda/pycuda-${pkgver}.tar.gz)
+depends=('cuda-toolkit' 'python2-numpy' 'python2-pytools' 'python2')
+optdepends=('python2-pytest')
+makedepends=('ctags' 'python2-distribute' 'mesa')
+provides=('pycuda')
+replaces=('pycuda')
+conflicts=('pycuda')
+sha1sums=('026ca33f66d35c82a087a5ef3f8e0f213575059b')
+
+build() {
+ cd "${srcdir}/pycuda-${pkgver}"
+ python2 ./configure.py \
+ --cuda-root=/opt/cuda-toolkit \
+ --boost-compiler=gcc \
+ --cuda-enable-gl \
+ --cuda-inc-dir=/opt/cuda-toolkit/include \
+ --cudadrv-lib-dir=/opt/cuda-toolkit/lib \
+ --cudart-lib-dir=/opt/cuda-toolkit/lib
+
+ make
+}
+
+package() {
+ cd "${srcdir}/pycuda-${pkgver}"
+ python2 setup.py install --prefix=/usr --root="${pkgdir}" --skip-build --optimize=1
+}
diff --git a/community/r8168-lts/PKGBUILD b/community/r8168-lts/PKGBUILD
index 78f927b0b..7f7568ffb 100644
--- a/community/r8168-lts/PKGBUILD
+++ b/community/r8168-lts/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 75466 2012-08-25 13:58:38Z tpowa $
+# $Id: PKGBUILD 77196 2012-10-06 11:21:22Z tpowa $
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
pkgname=r8168-lts
_pkgname=r8168
-pkgver=8.031.00
-pkgrel=5
+pkgver=8.032.00
+pkgrel=3
pkgdesc="A kernel module for Realtek 8168 network cards for linux-lts"
url="http://www.realtek.com.tw"
license=("GPL")
@@ -13,8 +13,6 @@ depends=('glibc' "linux-lts>=3.0" "linux-lts<3.1")
makedepends=("linux-lts-headers>=3.0" "linux-lts-headers<3.1")
source=(http://r8168.googlecode.com/files/$_pkgname-$pkgver.tar.bz2)
install=$pkgname.install
-md5sums=('ec1654f02e2dad930bbeb0210ddab7e5')
-sha256sums=('5c617b3c08aca18d1eb24d33f77df40020eb64fb32c8e4008265e08b7ffe5779')
_extramodules=extramodules-3.0-lts
@@ -32,3 +30,5 @@ package() {
install -Dm644 src/$_pkgname.ko "$pkgdir/usr/lib/modules/$_extramodules/$_pkgname.ko"
find "$pkgdir" -name '*.ko' -exec gzip -9 {} +
}
+
+sha256sums=('f24ed6ba1a0a6e8cae27c49b0bddbecbd430ad1d7ddd1c5d28f2091202aee9c3')
diff --git a/community/r8168/PKGBUILD b/community/r8168/PKGBUILD
new file mode 100644
index 000000000..b583690e0
--- /dev/null
+++ b/community/r8168/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id: PKGBUILD 80376 2012-11-21 09:11:48Z mtorromeo $
+# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
+# Contributor: Bob Fanger < bfanger(at)gmail >
+# Contributor: Filip <fila pruda com>, Det < nimetonmaili(at)gmail >
+
+pkgname=r8168
+pkgver=8.034.00
+pkgrel=1
+pkgdesc="A kernel module for Realtek 8168 network cards"
+url="http://www.realtek.com.tw"
+license=("GPL")
+arch=('i686' 'x86_64')
+depends=('glibc' 'linux')
+makedepends=('linux-headers')
+source=(http://r8168.googlecode.com/files/$pkgname-$pkgver.tar.bz2)
+install=$pkgname.install
+
+build() {
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ KERNEL_RELEASE=$(cat /usr/lib/modules/extramodules-3.$_kernver-ARCH/version)
+
+ cd "$pkgname-$pkgver"
+
+ # avoid using the Makefile directly -- it doesn't understand
+ # any kernel but the current.
+ make -C /usr/lib/modules/$KERNEL_RELEASE/build \
+ SUBDIRS="$srcdir/$pkgname-$pkgver/src" \
+ EXTRA_CFLAGS="-DCONFIG_R8168_NAPI -DCONFIG_R8168_VLAN" \
+ modules
+}
+
+package() {
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ depends=("linux>=3.${_kernver}" "linux<3.$(expr ${_kernver} + 1)")
+ KERNEL_VERSION=$(cat /usr/lib/modules/extramodules-3.$_kernver-ARCH/version)
+ msg "Kernel = $KERNEL_VERSION"
+
+ cd "$pkgname-$pkgver"
+ install -Dm644 src/$pkgname.ko "$pkgdir/usr/lib/modules/extramodules-3.$_kernver-ARCH/$pkgname.ko"
+ find "$pkgdir" -name '*.ko' -exec gzip -9 {} +
+
+ sed -i "s|extramodules-.*-ARCH|extramodules-3.$_kernver-ARCH|" "$startdir/$pkgname.install"
+}
+
+sha256sums=('97f3f342f9f24a3c3346641babde82f52f87b6ef5976c8f4481515f247116206')
diff --git a/community/r8168/r8168.install b/community/r8168/r8168.install
new file mode 100644
index 000000000..ab5f9f5c8
--- /dev/null
+++ b/community/r8168/r8168.install
@@ -0,0 +1,17 @@
+rebuild_module_dependencies() {
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
+}
+
+post_install() {
+ rebuild_module_dependencies
+ echo '>>> The module r8168 conflicts with r8169. You can blacklist it with:'
+ echo '>>> `echo "blacklist r8169" > /etc/modprobe.d/r8169_blacklist.conf`'
+}
+post_upgrade() {
+ rebuild_module_dependencies
+}
+
+post_remove() {
+ rebuild_module_dependencies
+}
diff --git a/community/rt3562sta/PKGBUILD b/community/rt3562sta/PKGBUILD
new file mode 100644
index 000000000..7ef335c9e
--- /dev/null
+++ b/community/rt3562sta/PKGBUILD
@@ -0,0 +1,85 @@
+# $Id: PKGBUILD 79180 2012-10-31 07:25:39Z tpowa $
+# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
+# Based on SUSE spec https://build.opensuse.org/package/files?package=rt3562sta&project=driver%3Awireless
+
+pkgname=rt3562sta
+pkgver=2.4.1.1
+pkgrel=20
+pkgdesc="Ralink RT3562 PCI WLAN adaptors kernel module"
+arch=(i686 x86_64)
+url="http://www.mediatek.com/en/Products/support.php?sn=501"
+license=('GPL')
+depends=('linux')
+makedepends=('linux-headers')
+install=$pkgname.install
+source=(
+ http://dl.dropbox.com/u/362439/DPO_RT3562_3592_3062_LinuxSTA_V${pkgver}_20101217.tgz
+ $pkgname-$pkgver-config.patch
+ $pkgname-$pkgver-gcc-warnings-x86_64.patch
+ $pkgname-$pkgver-WPA-mixed.patch
+ $pkgname-$pkgver-convert-devicename-to-wlanX.patch
+ $pkgname-$pkgver-remove-potential-conflicts-with-rt2860sta.patch
+ $pkgname-$pkgver-return_nonvoid.patch
+ $pkgname-$pkgver-reduce_debug_output.patch
+ $pkgname-$pkgver-remove_date_time.patch
+)
+
+build() {
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ KERNEL_RELEASE=$(cat /usr/lib/modules/extramodules-3.$_kernver-ARCH/version)
+
+ cd "$srcdir/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217"
+ patch -p0 -i "$srcdir/$pkgname-$pkgver-config.patch"
+ [ "$CARCH" == "x86_64" ] && patch -p0 -i "$srcdir/$pkgname-$pkgver-gcc-warnings-x86_64.patch"
+ patch -p0 -i "$srcdir/$pkgname-$pkgver-WPA-mixed.patch"
+ patch -p0 -i "$srcdir/$pkgname-$pkgver-convert-devicename-to-wlanX.patch"
+ patch -p0 -i "$srcdir/$pkgname-$pkgver-remove-potential-conflicts-with-rt2860sta.patch"
+ patch -p0 -i "$srcdir/$pkgname-$pkgver-return_nonvoid.patch"
+ patch -p0 -i "$srcdir/$pkgname-$pkgver-reduce_debug_output.patch"
+ patch -p0 -i "$srcdir/$pkgname-$pkgver-remove_date_time.patch"
+
+ # clean up this mess of mixing RT2860STA with RT3562STA
+ # in documentation files
+ mv RT2860STA.dat RT3562STA.dat
+ mv RT2860STACard.dat RT3562STACard.dat
+ sed -i 's/2860/3562/g' *STA* iwpriv_usage.txt
+
+ # as we change the default name of the interface from raX to wlanX, change respective references in documentation, too
+ sed -i 's|ra0|wlan0|g' *.txt README* *.dat
+ sed -i 's|ra1|wlan1|g' *.txt README* *.dat
+ sed -i 's|ra2|wlan2|g' *.txt README* *.dat
+
+ export EXTRA_CFLAGS="-DVERSION=$pkgver"
+
+ # this Makefile is far too strict...
+ echo "LINUX_SRC = /usr/lib/modules/$KERNEL_RELEASE/build" >> Makefile
+
+ make
+}
+
+package() {
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ depends=("linux>=3.${_kernver}" "linux<3.$(expr ${_kernver} + 1)")
+ KERNEL_VERSION=$(cat /usr/lib/modules/extramodules-3.$_kernver-ARCH/version)
+ msg "Kernel = $KERNEL_VERSION"
+
+ cd "$srcdir/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217"
+
+ install -Dm 0640 RT3562STA.dat "$pkgdir/etc/Wireless/RT3562STA/RT3562STA.dat"
+ install -Dm 0644 os/linux/$pkgname.ko "$pkgdir/usr/lib/modules/extramodules-3.$_kernver-ARCH/$pkgname.ko"
+ install -dm 0755 "$pkgdir/usr/share/doc/$pkgname"
+ install -m 0644 iwpriv_usage.txt README* RT3562STA* sta_ate_iwpriv_usage.txt "$pkgdir/usr/share/doc/$pkgname"
+
+ find "$pkgdir" -name '*.ko' -exec gzip -9 {} \;
+ sed -i "s|extramodules-.*-ARCH|extramodules-3.$_kernver-ARCH|" "$startdir/$pkgname.install"
+}
+
+sha256sums=('71cd27784009894198f03470ec88e77f2cd176bf5f8d93b4dd984d3a3e543d5a'
+ 'b1465fceaac99f26cc0e7db0562d2bf103b57656f0b7b57e404f59efb3373b27'
+ 'd013ed5981a02be27b4aaf1e03670d68dbb16f40d9eb84930e58a96fc38ef947'
+ 'c962d014ea6e84a8c3398ff13e4709cc309c29134cac0b5c702eab1026799887'
+ 'e966d96026baee0447d6ad26742bcc40baa3f94530573d58f4eca842e107f809'
+ '7d2a83edfe6664a8e923dcda636c871220efc7ff4a82ab76a62fc97a11f2fcaa'
+ 'd672b58cdb278e3ecaeb46f3e5e477e1da7d2fd5dbf896521a4d0993743b9ab9'
+ '4d1d5eb5c22d356af62f4f55d12b04eb8a557ea9c664edfbc79c9e0454ccca4e'
+ 'a888d045b142127070c2c23ed1a84306d5202896265c828cf7e125ec2dd52389')
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-WPA-mixed.patch b/community/rt3562sta/rt3562sta-2.4.1.1-WPA-mixed.patch
new file mode 100644
index 000000000..caf2b1c6a
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-WPA-mixed.patch
@@ -0,0 +1,11 @@
+--- common/cmm_wpa.c.orig 2010-11-26 04:18:41.000000000 +0100
++++ common/cmm_wpa.c 2010-12-01 15:09:22.000000000 +0100
+@@ -2410,7 +2410,7 @@
+ UCHAR PrimaryRsnie;
+ BOOLEAN bMixCipher = FALSE; // indicate the pairwise and group cipher are different
+ UCHAR p_offset;
+- WPA_MIX_PAIR_CIPHER FlexibleCipher = MIX_CIPHER_NOTUSE; // it provide the more flexible cipher combination in WPA-WPA2 and TKIPAES mode
++ WPA_MIX_PAIR_CIPHER FlexibleCipher = WPA_TKIPAES_WPA2_TKIPAES; // it provide the more flexible cipher combination in WPA-WPA2 and TKIPAES mode
+
+ rsnielen_cur_p = NULL;
+ rsnielen_ex_cur_p = NULL;
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-config.patch b/community/rt3562sta/rt3562sta-2.4.1.1-config.patch
new file mode 100644
index 000000000..dc245e38e
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-config.patch
@@ -0,0 +1,98 @@
+--- os/linux/config.mk.orig 2010-12-17 12:44:47.000000000 +0100
++++ os/linux/config.mk 2010-12-17 19:53:36.000000000 +0100
+@@ -9,10 +9,10 @@
+
+
+ # Support Wpa_Supplicant
+-HAS_WPA_SUPPLICANT=n
++HAS_WPA_SUPPLICANT=y
+
+ # Support Native WpaSupplicant for Network Maganger
+-HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n
++HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y
+
+ #Support Net interface block while Tx-Sw queue full
+ HAS_BLOCK_NET_IF=n
+@@ -283,7 +283,7 @@
+ endif
+
+ ifeq ($(CHIPSET),3562)
+-WFLAGS +=-DRTMP_MAC_PCI -DRT2860 -DRT28xx -DRT30xx -DRT35xx -DRTMP_PCI_SUPPORT -DRTMP_RF_RW_SUPPORT -DRTMP_EFUSE_SUPPORT -DA_BAND_SUPPORT
++WFLAGS +=-DRTMP_MAC_PCI -DRT2860 -DRT28xx -DRT30xx -DRT35xx -DRTMP_PCI_SUPPORT -DRTMP_RF_RW_SUPPORT -DRTMP_EFUSE_SUPPORT -DA_BAND_SUPPORT -DDOT11N_SS3_SUPPORT -DNEW_RATE_ADAPT_SUPPORT -DRT3593
+ ifeq ($(HAS_DFS_SUPPORT),y)
+ WFLAGS += -DDFS_HARDWARE_SUPPORT -DDFS_DEBUG
+ endif
+--- Makefile.orig 2010-12-17 12:44:47.000000000 +0100
++++ Makefile 2010-12-17 19:51:39.000000000 +0100
+@@ -284,26 +284,26 @@
+ endif
+
+ ifeq ($(RT28xx_MODE),AP)
+- cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)ap.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)ap.o /tftpboot
+ ifeq ($(OSABL),YES)
+- cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)ap.o /tftpboot
+- cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)ap.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)ap.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)ap.o /tftpboot
+ endif
+ ifeq ($(PLATFORM),INF_AMAZON_SE)
+- cp -f /tftpboot/rt2870ap.o /backup/ifx/build/root_filesystem/lib/modules/2.4.31-Amazon_SE-3.6.2.2-R0416_Ralink/kernel/drivers/net
++# cp -f /tftpboot/rt2870ap.o /backup/ifx/build/root_filesystem/lib/modules/2.4.31-Amazon_SE-3.6.2.2-R0416_Ralink/kernel/drivers/net
+ endif
+ else
+ ifeq ($(RT28xx_MODE),APSTA)
+- cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)apsta.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)apsta.o /tftpboot
+ ifeq ($(OSABL),YES)
+- cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)apsta.o /tftpboot
+- cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)apsta.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)apsta.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)apsta.o /tftpboot
+ endif
+ else
+- cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.o /tftpboot
+ ifeq ($(OSABL),YES)
+- cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)sta.o /tftpboot
+- cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)sta.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)sta.o /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)sta.o /tftpboot
+ endif
+ endif
+ endif
+@@ -331,25 +331,25 @@
+ endif
+
+ ifeq ($(RT28xx_MODE),AP)
+- cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)ap.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)ap.ko /tftpboot
+ ifeq ($(OSABL),YES)
+- cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)ap.ko /tftpboot
+- cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)ap.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)ap.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)ap.ko /tftpboot
+ endif
+ rm -f os/linux/rt$(CHIPSET)ap.ko.lzma
+ /root/bin/lzma e os/linux/rt$(CHIPSET)ap.ko os/linux/rt$(CHIPSET)ap.ko.lzma
+ else
+ ifeq ($(RT28xx_MODE),APSTA)
+- cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)apsta.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)apsta.ko /tftpboot
+ ifeq ($(OSABL),YES)
+- cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)apsta.ko /tftpboot
+- cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)apsta.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)apsta.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)apsta.ko /tftpboot
+ endif
+ else
+- cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rt$(CHIPSET)sta.ko /tftpboot
+ ifeq ($(OSABL),YES)
+- cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)sta.ko /tftpboot
+- cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)sta.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtutil$(CHIPSET)sta.ko /tftpboot
++# cp -f $(RT28xx_DIR)/os/linux/rtnet$(CHIPSET)sta.ko /tftpboot
+ endif
+ endif
+ endif
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-convert-devicename-to-wlanX.patch b/community/rt3562sta/rt3562sta-2.4.1.1-convert-devicename-to-wlanX.patch
new file mode 100644
index 000000000..5ec4d5028
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-convert-devicename-to-wlanX.patch
@@ -0,0 +1,13 @@
+--- include/rtmp_def.h.orig 2010-11-26 04:18:41.000000000 +0100
++++ include/rtmp_def.h 2010-12-01 14:57:05.000000000 +0100
+@@ -1451,8 +1451,8 @@
+ #define SET_ENTRY_CLIWDS(_x) CLIENT_STATUS_SET_FLAG((_x), fCLIENT_STATUS_CLI_WDS)
+ #endif // CLIENT_WDS //
+
+-#define INF_MAIN_DEV_NAME "ra"
+-#define INF_MBSSID_DEV_NAME "ra"
++#define INF_MAIN_DEV_NAME "wlan"
++#define INF_MBSSID_DEV_NAME "wlan"
+ #define INF_WDS_DEV_NAME "wds"
+ #define INF_APCLI_DEV_NAME "apcli"
+ #define INF_MESH_DEV_NAME "mesh"
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-gcc-warnings-x86_64.patch b/community/rt3562sta/rt3562sta-2.4.1.1-gcc-warnings-x86_64.patch
new file mode 100644
index 000000000..a53dbde86
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-gcc-warnings-x86_64.patch
@@ -0,0 +1,14 @@
+--- os/linux/rt_linux.c.orig 2010-11-26 04:18:41.000000000 +0100
++++ os/linux/rt_linux.c 2010-12-01 14:57:53.000000000 +0100
+@@ -479,9 +479,9 @@
+ MEM_DBG_PKT_ALLOC_INC(pAd);
+
+ skb_reserve(skb, 2);
+- NdisMoveMemory(skb->tail, pHeader802_3, HdrLen);
++ NdisMoveMemory(skb_tail_pointer(skb), pHeader802_3, HdrLen); //
+ skb_put(skb, HdrLen);
+- NdisMoveMemory(skb->tail, pData, DataSize);
++ NdisMoveMemory(skb_tail_pointer(skb), pData, DataSize); //
+ skb_put(skb, DataSize);
+ skb->dev = get_netdev_from_bssid(pAd, FromWhichBSSID);
+ pPacket = OSPKT_TO_RTPKT(skb);
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-reduce_debug_output.patch b/community/rt3562sta/rt3562sta-2.4.1.1-reduce_debug_output.patch
new file mode 100644
index 000000000..6754f214d
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-reduce_debug_output.patch
@@ -0,0 +1,15 @@
+--- include/os/rt_linux.h.orig 2011-01-07 11:20:02.000000000 +0100
++++ include/os/rt_linux.h 2011-01-07 11:21:30.000000000 +0100
+@@ -611,10 +611,10 @@
+
+ #define DBGPRINT_RAW(Level, Fmt) \
+ do{ \
+- if (Level <= RTDebugLevel) \
++/* if (Level <= RTDebugLevel) \
+ { \
+ printk Fmt; \
+- } \
++ }*/ \
+ }while(0)
+
+ #define DBGPRINT(Level, Fmt) DBGPRINT_RAW(Level, Fmt)
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-remove-potential-conflicts-with-rt2860sta.patch b/community/rt3562sta/rt3562sta-2.4.1.1-remove-potential-conflicts-with-rt2860sta.patch
new file mode 100644
index 000000000..a0d00d6e3
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-remove-potential-conflicts-with-rt2860sta.patch
@@ -0,0 +1,47 @@
+--- include/os/rt_linux.h.orig 2010-11-26 04:18:41.000000000 +0100
++++ include/os/rt_linux.h 2010-12-01 14:58:46.000000000 +0100
+@@ -111,10 +111,10 @@
+
+ #ifdef CONFIG_STA_SUPPORT
+ #ifdef RTMP_MAC_PCI
+-#define STA_PROFILE_PATH "/etc/Wireless/RT2860STA/RT2860STA.dat"
++#define STA_PROFILE_PATH "/etc/Wireless/RT3562STA/RT3562STA.dat"
+ #define STA_DRIVER_VERSION "2.4.1.1"
+ #ifdef MULTIPLE_CARD_SUPPORT
+-#define CARD_INFO_PATH "/etc/Wireless/RT2860STA/RT2860STACard.dat"
++#define CARD_INFO_PATH "/etc/Wireless/RT3562STA/RT3562STACard.dat"
+ #endif // MULTIPLE_CARD_SUPPORT //
+ #endif // RTMP_MAC_PCI //
+
+--- os/linux/pci_main_dev.c.orig 2010-12-17 19:59:25.000000000 +0100
++++ os/linux/pci_main_dev.c 2010-12-17 20:00:12.000000000 +0100
+@@ -90,14 +90,15 @@
+ MODULE_VERSION(STA_DRIVER_VERSION);
+ #endif
+ #endif // CONFIG_STA_SUPPORT //
+-
++MODULE_DESCRIPTION("RT3562 Wireless Lan Linux Driver");
++MODULE_LICENSE("GPL");
+
+ //
+ // Our PCI driver structure
+ //
+ static struct pci_driver rt2860_driver =
+ {
+- name: "rt2860",
++ name: "rt3562",
+ id_table: rt2860_pci_tbl,
+ probe: rt2860_probe,
+ #if LINUX_VERSION_CODE >= 0x20412
+@@ -317,9 +318,9 @@
+ }
+
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)
+- print_name = pci_dev ? pci_name(pci_dev) : "rt2860";
++ print_name = pci_dev ? pci_name(pci_dev) : "rt3562";
+ #else
+- print_name = pci_dev ? pci_dev->slot_name : "rt2860";
++ print_name = pci_dev ? pci_dev->slot_name : "rt3562";
+ #endif // LINUX_VERSION_CODE //
+
+ if ((rv = pci_request_regions(pci_dev, print_name)) != 0)
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-remove_date_time.patch b/community/rt3562sta/rt3562sta-2.4.1.1-remove_date_time.patch
new file mode 100644
index 000000000..b17ba5a12
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-remove_date_time.patch
@@ -0,0 +1,11 @@
+--- os/linux/sta_ioctl.c.orig 2010-12-17 12:44:47.000000000 +0100
++++ os/linux/sta_ioctl.c 2011-08-02 14:52:37.000000000 +0200
+@@ -1812,7 +1812,7 @@
+ wrq->length = strlen(extra) + 1; // 1: size of '\0'
+ break;
+ case SHOW_DRVIER_VERION:
+- sprintf(extra, "Driver version-%s, %s %s\n", STA_DRIVER_VERSION, __DATE__, __TIME__ );
++ sprintf(extra, "Driver version-%s, %s %s\n", STA_DRIVER_VERSION, NULL, NULL );
+ wrq->length = strlen(extra) + 1; // 1: size of '\0'
+ break;
+ #ifdef DOT11_N_SUPPORT
diff --git a/community/rt3562sta/rt3562sta-2.4.1.1-return_nonvoid.patch b/community/rt3562sta/rt3562sta-2.4.1.1-return_nonvoid.patch
new file mode 100644
index 000000000..7416a31f9
--- /dev/null
+++ b/community/rt3562sta/rt3562sta-2.4.1.1-return_nonvoid.patch
@@ -0,0 +1,11 @@
+--- os/linux/rt_main_dev.c.orig 2010-12-17 12:44:47.000000000 +0100
++++ os/linux/rt_main_dev.c 2010-12-17 19:42:23.000000000 +0100
+@@ -1247,7 +1247,7 @@
+ RTMP_OS_TASK *pTask;
+
+ if (pAd->bWriteDat == FALSE)
+- return;
++ return 0;
+
+ DBGPRINT(RT_DEBUG_TRACE, ("-->WriteDatThreadInit()\n"));
+
diff --git a/community/rt3562sta/rt3562sta.install b/community/rt3562sta/rt3562sta.install
new file mode 100644
index 000000000..c3b988aa6
--- /dev/null
+++ b/community/rt3562sta/rt3562sta.install
@@ -0,0 +1,16 @@
+rebuild_module_dependencies() {
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
+}
+
+post_install() {
+ rebuild_module_dependencies
+}
+
+post_upgrade() {
+ rebuild_module_dependencies
+}
+
+post_remove() {
+ rebuild_module_dependencies
+}
diff --git a/community/sauerbraten/PKGBUILD b/community/sauerbraten/PKGBUILD
new file mode 100644
index 000000000..ed3520ba6
--- /dev/null
+++ b/community/sauerbraten/PKGBUILD
@@ -0,0 +1,73 @@
+# $Id: PKGBUILD 75284 2012-08-17 21:27:10Z lcarlier $
+# Maintainer: Laurent Carlier <lordheavym@gmail.com>
+# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
+# Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com>
+# Contributor: Christoph Siegenthaler <csi@gmx.ch>
+# Contributor: Jesse Young <jesse@eon.jlyo.org>
+
+pkgname=sauerbraten
+pkgver=2010_07_28_justice_edition
+pkgrel=5
+pkgdesc="FPS that uses an improved version of the Cube engine"
+arch=('i686' 'x86_64')
+url="http://www.sauerbraten.org/"
+license=('ZLIB')
+makedepends=('sdl_mixer' 'sdl_image' 'libgl' 'mesa' 'gendesk')
+install=sauerbraten.install
+backup=('etc/conf.d/sauerbraten')
+source=(http://downloads.sourceforge.net/$pkgname/${pkgname}_${pkgver}_linux.tar.bz2
+ sauerbraten-client
+ sauerbraten-server
+ sauerbraten.confd
+ sauerbraten.rcd
+ sauerbraten.png
+ sauerbraten.install
+ sauerbraten.service
+ license.txt
+ fix-indirect-linking.diff)
+md5sums=('0947cb37b628873063270be1fcce27f6'
+ 'ac66ef9e80d6fc1b4b047df1c36c07c0'
+ '4a42c314d01ccdc4c76fad38d18c7434'
+ '8e26aeba1ef178c24e22723d3c48d7e1'
+ 'e0a2e0679c34b39623964ee68e6fae1e'
+ '3e602f421f7342cf8c3ed16314523d6f'
+ '2f7b423f49491359ff776a91414db4d8'
+ '3c964cdd0906461c0404641b1eb52d96'
+ 'cf46cd0148f03b7477f7c54aec865abe'
+ 'a9a9b658affd933ad354be45da998354')
+_exec=('sauerbraten-client %u')
+
+build() {
+ cd "$srcdir"
+ gendesk
+
+ cd "$pkgname/src"
+
+ patch -Np1 -i ../../fix-indirect-linking.diff
+
+ make
+
+ # remove cvs directories
+ find ${srcdir}/$pkgname -type d -name CVS -exec rm -rf '{}' \; 2> /dev/null
+}
+
+package() {
+ depends=('sdl_mixer' 'sdl_image' 'libgl' 'sauerbraten-data')
+
+ cd ${srcdir}/$pkgname/src
+
+ make DESTDIR="${pkgdir}" install
+
+ cd ..
+ install -D bin_unix/native_client ${pkgdir}/opt/sauerbraten/bin/linux_client
+ install -D bin_unix/native_server ${pkgdir}/opt/sauerbraten/bin/linux_server
+
+ install -Dm755 ${srcdir}/sauerbraten-client ${pkgdir}/usr/bin/sauerbraten-client
+ install -Dm755 ${srcdir}/sauerbraten-server ${pkgdir}/usr/sbin/sauerbraten-server
+ install -Dm644 ${srcdir}/sauerbraten.confd ${pkgdir}/etc/conf.d/sauerbraten
+ install -Dm755 ${srcdir}/sauerbraten.rcd ${pkgdir}/etc/rc.d/sauerbraten
+ install -Dm644 ${srcdir}/sauerbraten.service ${pkgdir}/usr/lib/systemd/system/sauerbraten.service
+ install -Dm644 ${srcdir}/sauerbraten.desktop ${pkgdir}/usr/share/applications/sauerbraten.desktop
+ install -Dm644 ${srcdir}/sauerbraten.png ${pkgdir}/usr/share/pixmaps/sauerbraten.png
+ install -Dm644 ${srcdir}/license.txt ${pkgdir}/usr/share/licenses/sauerbraten/license.txt
+}
diff --git a/community/sauerbraten/fix-indirect-linking.diff b/community/sauerbraten/fix-indirect-linking.diff
new file mode 100644
index 000000000..56ed8825b
--- /dev/null
+++ b/community/sauerbraten/fix-indirect-linking.diff
@@ -0,0 +1,20 @@
+Index: sauerbraten/Makefile
+===================================================================
+--- sauerbraten.orig/Makefile 2010-07-29 21:24:21.000000000 -0400
++++ sauerbraten/Makefile 2010-07-29 21:26:15.717746486 -0400
+@@ -21,11 +21,14 @@
+ CLIENT_LIBS= -mwindows -Llib -lSDL -lSDL_image -lSDL_mixer -lzdll -lopengl32 -lenet -lws2_32 -lwinmm
+ else
+ CLIENT_INCLUDES= $(INCLUDES) -I/usr/X11R6/include `sdl-config --cflags`
+-CLIENT_LIBS= -Lenet/.libs -lenet -L/usr/X11R6/lib `sdl-config --libs` -lSDL_image -lSDL_mixer -lz -lGL
++CLIENT_LIBS= -Lenet/.libs -lenet -L/usr/X11R6/lib `sdl-config --libs` -lSDL_image -lSDL_mixer -lz -lGL -lX11
+ endif
+ ifeq ($(PLATFORM),Linux)
+ CLIENT_LIBS+= -lrt
+ endif
++ifeq ($(PLATFORM),GNU/kFreeBSD)
++CLIENT_LIBS+= -lrt
++endif
+ CLIENT_OBJS= \
+ shared/crypto.o \
+ shared/geom.o \
diff --git a/community/sauerbraten/license.txt b/community/sauerbraten/license.txt
new file mode 100644
index 000000000..f38792c76
--- /dev/null
+++ b/community/sauerbraten/license.txt
@@ -0,0 +1,34 @@
+LICENSE
+=======
+
+Sauerbraten game engine source code, any release.
+
+Copyright (C) 2001-2006 Wouter van Oortmerssen.
+
+This software is provided 'as-is', without any express or implied
+warranty. In no event will the authors be held liable for any damages
+arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it
+freely, subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+
+LICENSE NOTES
+=============
+The license covers the source code found in the "src" directory of this
+archive, the included enet network library which sauerbraten uses is covered by
+an MIT-style license, which is however compatible with the above license for all
+practical purposes.
+
+Game media included in the game (maps, textures, sounds, models etc.)
+are NOT covered by this license, and may have individual copyrights and
+distribution restrictions (see individual readmes).
diff --git a/community/sauerbraten/sauerbraten-client b/community/sauerbraten/sauerbraten-client
new file mode 100755
index 000000000..8a9b354f3
--- /dev/null
+++ b/community/sauerbraten/sauerbraten-client
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+WIDTH=1024
+HEIGHT=768
+[ -f /etc/conf.d/sauerbraten ] && . /etc/conf.d/sauerbraten
+
+cd /opt/sauerbraten
+if [ -f /usr/bin/aoss ]; then
+ aoss bin/linux_client -w$WIDTH -h$HEIGHT -q${HOME}/.config/sauerbraten -r
+else
+ bin/linux_client -w$WIDTH -h$HEIGHT -q${HOME}/.config/sauerbraten -r
+fi
+
+
diff --git a/community/sauerbraten/sauerbraten-server b/community/sauerbraten/sauerbraten-server
new file mode 100755
index 000000000..b4c79cb7f
--- /dev/null
+++ b/community/sauerbraten/sauerbraten-server
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+SAUER_USER=nobody
+LOGDIR=/var/log/sauerbraten
+[ -f /etc/conf.d/sauerbraten ] && . /etc/conf.d/sauerbraten
+
+cd /opt/sauerbraten
+
+if [ "$(id -u)" == "0" ]; then
+ if [ ! -d "$LOGDIR" ]; then
+ mkdir -p "$LOGDIR"
+ chown "$SAUER_USER:log" "$LOGDIR"
+ fi
+
+ sudo -Hu "$SAUER_USER" \
+ nohup /opt/sauerbraten/bin/linux_server \
+ >> "$LOGDIR/main.log" \
+ 2>> "$LOGDIR/error.log" \
+ < /dev/null &
+else
+ bin/linux_server
+fi
diff --git a/community/sauerbraten/sauerbraten.confd b/community/sauerbraten/sauerbraten.confd
new file mode 100644
index 000000000..93cd32de7
--- /dev/null
+++ b/community/sauerbraten/sauerbraten.confd
@@ -0,0 +1,7 @@
+# Client options
+WIDTH=1024
+HEIGHT=768
+
+# Server options
+SAUER_USER=sauerbraten
+LOGDIR=/var/log/sauerbraten
diff --git a/community/sauerbraten/sauerbraten.install b/community/sauerbraten/sauerbraten.install
new file mode 100644
index 000000000..2ee7689ab
--- /dev/null
+++ b/community/sauerbraten/sauerbraten.install
@@ -0,0 +1,22 @@
+# arg 1: the new package version
+post_install() {
+ getent group sauerbraten >/dev/null 2>&1 || groupadd -r sauerbraten
+ if getent passwd sauerbraten > /dev/null 2>&1; then
+ usr/sbin/usermod -d /var/spool/sauerbraten -c 'Sauerbraten' -s /sbin/nologin sauerbraten > /dev/null 2>&1
+ else
+ usr/sbin/useradd -c 'Sauerbraten' -r -g sauerbraten -d /opt/sauerbraten -s /sbin/nologin sauerbraten
+ fi
+ passwd -l sauerbraten > /dev/null
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install $1
+}
+
+# arg 1: the old package version
+pre_remove() {
+ getent passwd sauerbraten >/dev/null 2>&1 && userdel sauerbraten
+}
+
diff --git a/community/sauerbraten/sauerbraten.png b/community/sauerbraten/sauerbraten.png
new file mode 100644
index 000000000..5ec7606bc
--- /dev/null
+++ b/community/sauerbraten/sauerbraten.png
Binary files differ
diff --git a/community/sauerbraten/sauerbraten.rcd b/community/sauerbraten/sauerbraten.rcd
new file mode 100644
index 000000000..fb95aae16
--- /dev/null
+++ b/community/sauerbraten/sauerbraten.rcd
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+case "$1" in
+ start)
+ stat_busy "Starting sauerbraten-server"
+ [ ! -f /var/run/daemons/sauerbraten ] && /usr/sbin/sauerbraten-server
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ pgrep -of "/opt/sauerbraten/bin/linux_server" > /var/run/sauerbraten.pid
+ add_daemon sauerbraten
+ stat_done
+ fi
+ ;;
+
+ stop)
+ stat_busy "Stopping sauerbraten-server"
+ [ -f /var/run/sauerbraten.pid ] && kill `cat /var/run/sauerbraten.pid`
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon sauerbraten
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community/sauerbraten/sauerbraten.service b/community/sauerbraten/sauerbraten.service
new file mode 100644
index 000000000..a3982a50c
--- /dev/null
+++ b/community/sauerbraten/sauerbraten.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Sauerbraten dedicated server
+After=network.target
+
+[Service]
+User=nobody
+ExecStart=/opt/sauerbraten/bin/linux_server
+Restart=on-abort
+StandardOutput=syslog
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/community/sdlmame/PKGBUILD b/community/sdlmame/PKGBUILD
new file mode 100644
index 000000000..33fcdb0f3
--- /dev/null
+++ b/community/sdlmame/PKGBUILD
@@ -0,0 +1,96 @@
+# $Id: PKGBUILD 81410 2012-12-20 12:14:49Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: robb_force <robb_force@holybuffalo.net>
+# Maintainer: JJDaNiMoTh <jjdanimoth@gmail.com>
+
+_patchlevel=4
+_basever=0.147
+
+pkgname=sdlmame
+if [ ${_patchlevel} -ne 0 ]; then
+ pkgver=${_basever}.u${_patchlevel}
+else
+ pkgver=${_basever}
+fi
+pkgrel=1
+pkgdesc="A port of the popular Multiple Arcade Machine Emulator using SDL with OpenGL support."
+url="http://mamedev.org/"
+license=('custom:MAME License')
+arch=('i686' 'x86_64')
+depends=('sdl>=1.2.11' 'libxinerama' 'gconf' 'sdl_ttf' 'gtk2')
+makedepends=('unzip' 'nasm' 'mesa' 'glu' 'wget' 'python2')
+DLAGENTS=('http::/usr/bin/wget -U "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.2) Gecko/20090804 Shiretoko/3.5.2" -c -t 3 --waitretry=3 -O %o %u')
+install=sdlmame.install
+
+for i in `seq 1 ${_patchlevel}`; do
+ _patches="${_patches} sdlmame-${_basever/./}u${i}_diff.zip::http://mamedev.org/updates/${_basever/./}u${i}_diff.zip"
+done
+
+source=("mame${_basever/./}s.zip::http://mamedev.org/downloader.php?file=releases/mame${_basever/./}s.zip"
+ "sdlmame.sh"
+ "extras.tar.gz"
+ ${_patches})
+md5sums=('b5fc953ee0351f5145b9d704603f2ee3'
+ 'e11a7d26704a9e2cff223b9b867d6a05'
+ '420b61240bf5ae11615ba7c6100ee00d'
+ '7f2dbea383138a6ae2bbaac3b32376d6'
+ 'c0306cbf583309d23549529f441e97f2'
+ '8851533ae3f692e436bc399b773c4fcb'
+ '3d5fc211f98454f857e58f9100d09e19')
+
+build() {
+ cd $srcdir/
+ if [ $NOEXTRACT -eq 0 ]; then
+ unzip mame.zip
+ find . -type f -not -name \*.png | xargs perl -pi -e 's/\r\n?/\n/g'
+ for i in `seq 1 ${_patchlevel}`; do
+ msg "Patch#$i"
+ patch -p0 -E <${_basever/./}u$i.diff || true # FIXME:
+ done
+ fi
+ make NOWERROR=1 OPTIMIZE=2 PYTHON=python2
+ make tools NOWERROR=1 OPTIMIZE=2 PYTHON=python2
+}
+
+package() {
+ cd $srcdir/
+ # Install the sdlmame script
+ install -Dm755 $srcdir/${pkgname}.sh $pkgdir/usr/bin/${pkgname}
+
+ # Install the applications and the UI font in /usr/share
+ install -Dm755 mame $pkgdir/usr/share/${pkgname}/${pkgname} || \
+ install -Dm755 mame64 $pkgdir/usr/share/${pkgname}/${pkgname}
+
+ install -m755 chdman $pkgdir/usr/share/${pkgname}/chdman
+ install -m755 jedutil $pkgdir/usr/share/${pkgname}/jedutil
+ install -m755 regrep $pkgdir/usr/share/${pkgname}/regrep
+ install -m755 romcmp $pkgdir/usr/share/${pkgname}/romcmp
+ install -m755 testkeys $pkgdir/usr/share/${pkgname}/testkeys
+ install -m755 src2html $pkgdir/usr/share/${pkgname}/src2html
+ install -m755 srcclean $pkgdir/usr/share/${pkgname}/srcclean
+ install -m755 ldverify $pkgdir/usr/share/${pkgname}/ldverify
+ install -m755 ldresample $pkgdir/usr/share/${pkgname}/ldresample
+
+ # Install the extra bits
+ install -d $pkgdir/usr/share/${pkgname}/{artwork,ctrlr,keymaps,shader}
+ install -d $pkgdir/usr/share/man/man1
+ install -d $pkgdir/usr/share/man/man6
+ install -m644 src/osd/sdl/shader/glsl*.*h $pkgdir/usr/share/${pkgname}/shader/
+ install -m644 src/osd/sdl/man/*.1* $pkgdir/usr/share/man/man1/
+ install -m644 src/osd/sdl/man/*.6* $pkgdir/usr/share/man/man6/
+
+ install -m644 $srcdir/artwork/* $pkgdir/usr/share/${pkgname}/artwork/
+ install -m644 $srcdir/ctrlr/* $pkgdir/usr/share/${pkgname}/ctrlr/
+ install -m644 src/osd/sdl/keymaps/* $pkgdir/usr/share/${pkgname}/keymaps/
+
+ # Include the license
+ install -Dm644 docs/license.txt $pkgdir/usr/share/licenses/${pkgname}/license.txt
+
+ # FS#28203
+ sed -i 's|KEYCODE_2_PAD|KEYCODE_2PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg
+ sed -i 's|KEYCODE_4_PAD|KEYCODE_4PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg
+ sed -i 's|KEYCODE_6_PAD|KEYCODE_6PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg
+ sed -i 's|KEYCODE_8_PAD|KEYCODE_8PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg
+
+ find $pkgdir -type f -exec strip {} \;
+}
diff --git a/community/sdlmame/extras.tar.gz b/community/sdlmame/extras.tar.gz
new file mode 100644
index 000000000..ae0bc2a39
--- /dev/null
+++ b/community/sdlmame/extras.tar.gz
Binary files differ
diff --git a/community/sdlmame/sdlmame.install b/community/sdlmame/sdlmame.install
new file mode 100644
index 000000000..0d3fab800
--- /dev/null
+++ b/community/sdlmame/sdlmame.install
@@ -0,0 +1,8 @@
+post_install()
+{
+ echo " SDLMAME and the additional MAME utilities have been installed"
+ echo " in /usr/share/sdlmame However, SDLMAME can be run by"
+ echo " typing sdlmame and it's options. Try running SDLMAME with"
+ echo " these options:"
+ echo " sdlmame <rom> -nowindow -noswitchres"
+}
diff --git a/community/sdlmame/sdlmame.sh b/community/sdlmame/sdlmame.sh
new file mode 100644
index 000000000..336f71690
--- /dev/null
+++ b/community/sdlmame/sdlmame.sh
@@ -0,0 +1,58 @@
+#!/bin/sh
+
+# Create a variable equal to $HOME that will be used later in the ini creation
+home=('$HOME')
+
+if [ "$1" != "" ] && [ "$1" = "--newini" ]; then
+ echo "Rebuilding the ini file at $HOME/.mame/mame.ini"
+ echo "Modify this file for permanent changes to your SDLMAME"
+ echo "options and paths before running SDLMAME again."
+ cd $HOME/.mame
+ if [ -e mame.ini ]; then
+ echo "Your old ini file has been renamed to mameini.bak"
+ mv mame.ini mameini.bak
+ fi
+ /usr/share/sdlmame/sdlmame \
+ -artpath "$home/.mame/artwork;artwork" \
+ -ctrlrpath "$home/.mame/ctrlr;ctrlr" \
+ -inipath $home/.mame/ini \
+ -rompath $home/.mame/roms \
+ -samplepath $home/.mame/samples \
+ -cfg_directory $home/.mame/cfg \
+ -comment_directory $home/.mame/comments \
+ -diff_directory $home/.mame/diff \
+ -input_directory $home/.mame/inp \
+ -memcard_directory $home/.mame/memcard \
+ -nvram_directory $home/.mame/nvram \
+ -snapshot_directory $home/.mame/snap \
+ -state_directory $home/.mame/sta \
+ -video opengl \
+ -createconfig
+elif [ ! -e $HOME/.mame ]; then
+ echo "Running SDLMAME for the first time..."
+ echo "Creating an ini file for SDLMAME at $HOME/.mame/mame.ini"
+ echo "Modify this file for permanent changes to your SDLMAME"
+ echo "options and paths before running SDLMAME again."
+ mkdir $HOME/.mame
+ mkdir $HOME/.mame/{artwork,cfg,comments,ctrlr,diff,ini,inp,memcard,nvram,samples,snap,sta}
+ cd $HOME/.mame
+ /usr/share/sdlmame/sdlmame \
+ -artpath "$home/.mame/artwork;artwork" \
+ -ctrlrpath "$home/.mame/ctrlr;ctrlr" \
+ -inipath $home/.mame/ini \
+ -rompath $home/.mame/roms \
+ -samplepath $home/.mame/samples \
+ -cfg_directory $home/.mame/cfg \
+ -comment_directory $home/.mame/comments \
+ -diff_directory $home/.mame/diff \
+ -input_directory $home/.mame/inp \
+ -memcard_directory $home/.mame/memcard \
+ -nvram_directory $home/.mame/nvram \
+ -snapshot_directory $home/.mame/snap \
+ -state_directory $home/.mame/sta \
+ -video opengl \
+ -createconfig
+else
+ cd /usr/share/sdlmame
+ ./sdlmame "$@"
+fi
diff --git a/community/seamonkey/PKGBUILD b/community/seamonkey/PKGBUILD
new file mode 100644
index 000000000..2fbb4de62
--- /dev/null
+++ b/community/seamonkey/PKGBUILD
@@ -0,0 +1,56 @@
+# $Id: PKGBUILD 80730 2012-12-01 17:20:47Z kkeen $
+# Maintainer: Kyle Keen <keenerd@gmail.com>
+pkgname=seamonkey
+pkgver=2.14.1
+pkgrel=1
+pkgdesc="SeaMonkey internet suite"
+arch=('i686' 'x86_64')
+license=('MPL')
+depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'nss' 'sqlite' 'startup-notification')
+makedepends=('unzip' 'zip' 'pkg-config' 'python2' 'yasm' 'wireless_tools' 'mesa' 'autoconf2.13' 'imake')
+install=$pkgname.install
+url="http://www.seamonkey-project.org/"
+source=(ftp://releases.mozilla.org/pub/mozilla.org/$pkgname/releases/$pkgver/source/$pkgname-$pkgver.source.tar.bz2
+ mozconfig
+ seamonkey.desktop
+ seamonkey-2.0-lang.patch)
+md5sums=('19463b718446552d04130d01d25d7330'
+ 'dabc8f517fbff67b8599064bedd32606'
+ '6119a2254716752c9d08e366f8d4c048'
+ '25b6fe16ac24cd5c852213e5c1adb272')
+
+build() {
+ cd comm-release
+ cp ../mozconfig .mozconfig
+ patch -Np1 -i ../seamonkey-2.0-lang.patch
+
+ export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/seamonkey-$pkgver"
+ export MOZ_MAKE_FLAGS="$MAKEFLAGS"
+ unset MAKEFLAGS
+
+ # Don't exit with error when some libs are missing which we have in
+ # system.
+ sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+ -i suite/installer/Makefile.in
+
+ make -j1 -f client.mk build
+}
+
+package() {
+ cd comm-release
+
+ make -j1 -f client.mk DESTDIR="$pkgdir" install
+
+ rm -rf "$pkgdir"/usr/lib/seamonkey-$pkgver/{dictionaries,hyphenation}
+ ln -s /usr/share/hunspell "$pkgdir/usr/lib/seamonkey-$pkgver/dictionaries"
+ ln -s /usr/share/hyphen "$pkgdir/usr/lib/seamonkey-$pkgver/hyphenation"
+
+ install -m755 -d "$pkgdir/usr/share/applications"
+ install -m755 -d "$pkgdir/usr/share/pixmaps"
+ install -m644 suite/branding/nightly/icons/gtk/seamonkey.png \
+ "$pkgdir/usr/share/pixmaps/"
+ install -m644 "$srcdir/seamonkey.desktop" "$pkgdir/usr/share/applications/"
+
+ rm -f "$pkgdir/usr/lib/pkgconfig/"seamonkey-ns{s,pr}.pc
+ rm -r "$pkgdir"/usr/{include,lib/seamonkey-devel-$pkgver,share/idl}
+}
diff --git a/community/seamonkey/mozconfig b/community/seamonkey/mozconfig
new file mode 100644
index 000000000..2131e894f
--- /dev/null
+++ b/community/seamonkey/mozconfig
@@ -0,0 +1,31 @@
+ac_add_options --enable-application=suite
+
+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 --with-system-libvpx
+ac_add_options --enable-system-hunspell
+ac_add_options --enable-system-sqlite
+ac_add_options --enable-system-ffi
+#ac_add_options --enable-system-cairo
+ac_add_options --with-pthreads
+
+# Features
+ac_add_options --enable-startup-notification
+ac_add_options --enable-safe-browsing
+ac_add_options --enable-gio
+
+ac_add_options --disable-gnomevfs
+ac_add_options --disable-crashreporter
+ac_add_options --disable-updater
+ac_add_options --disable-tests
+ac_add_options --disable-installer
+
+export MOZILLA_OFFICIAL=1
diff --git a/community/seamonkey/seamonkey-2.0-lang.patch b/community/seamonkey/seamonkey-2.0-lang.patch
new file mode 100644
index 000000000..b9f4a5cde
--- /dev/null
+++ b/community/seamonkey/seamonkey-2.0-lang.patch
@@ -0,0 +1,11 @@
+--- comm-1.9.1/mozilla/modules/libpref/src/init/all.js 2009-10-11 02:12:44.000000000 +0200
++++ comm-1.9.1/mozilla/modules/libpref/src/init/all.js 2009-09-16 02:56:45.000000000 +0200
+@@ -890,7 +890,7 @@
+ pref("intl.charset.detector", "chrome://global/locale/intl.properties");
+ pref("intl.charset.default", "chrome://global-platform/locale/intl.properties");
+ pref("intl.ellipsis", "chrome://global-platform/locale/intl.properties");
+-pref("intl.locale.matchOS", false);
++pref("intl.locale.matchOS", true);
+ // fallback charset list for Unicode conversion (converting from Unicode)
+ // currently used for mail send only to handle symbol characters (e.g Euro, trademark, smartquotes)
+ // for ISO-8859-1
diff --git a/community/seamonkey/seamonkey.desktop b/community/seamonkey/seamonkey.desktop
new file mode 100644
index 000000000..dd92a2432
--- /dev/null
+++ b/community/seamonkey/seamonkey.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Exec=seamonkey %u
+Icon=seamonkey
+Type=Application
+Terminal=false
+MultipleArgs=false
+Name=SeaMonkey internet suite
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;message/rfc822;x-scheme-handler/mailto;
+StartupNotify=false
+Categories=Application;Network;
diff --git a/community/seamonkey/seamonkey.install b/community/seamonkey/seamonkey.install
new file mode 100644
index 000000000..709ad81f2
--- /dev/null
+++ b/community/seamonkey/seamonkey.install
@@ -0,0 +1,12 @@
+post_install() {
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}
diff --git a/community/simutrans/PKGBUILD b/community/simutrans/PKGBUILD
index 6d26d9ece..43e0ef9dc 100644
--- a/community/simutrans/PKGBUILD
+++ b/community/simutrans/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 79167 2012-10-31 05:50:02Z bgyorgy $
+# $Id: PKGBUILD 81722 2012-12-27 21:08:53Z bgyorgy $
# Maintainer: Balló György <ballogyor+arch at gmail dot com>
# Contributor: Anton Bazhenov <anton.bazhenov at gmail>
# Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
@@ -6,8 +6,8 @@
# Contributor: JD Steffen <jd at steffennet dot org>
pkgname=simutrans
-pkgver=112.0
-_pkgver=112-0
+pkgver=112.1
+_pkgver=112-1
pkgrel=1
pkgdesc="An open source transportation simulation game"
arch=('i686' 'x86_64')
@@ -22,8 +22,8 @@ source=(http://downloads.sourceforge.net/$pkgname/$pkgname-src-$_pkgver.zip
config.patch
fix-build.patch
simutrans.desktop)
-md5sums=('d7d470b05cee33a31ad30252e53529d8'
- '95d94d783864827f584d86fe5a57ba09'
+md5sums=('926b31ec7f4f0a9e0c987b59f1c96743'
+ '3b994ce2203d616d4e0aac2a998e6006'
'c87d9a9910bc371df5d50f7f1ec298bb'
'4648680290b44775b9c47d3758d3bd6c'
'd11bc8ee33a34e33341f6ccd90a44dba'
diff --git a/community/skype-call-recorder/PKGBUILD b/community/skype-call-recorder/PKGBUILD
new file mode 100644
index 000000000..8dcbcb072
--- /dev/null
+++ b/community/skype-call-recorder/PKGBUILD
@@ -0,0 +1,31 @@
+# $Id: PKGBUILD 55494 2011-09-13 05:27:31Z foutrelis $
+# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Tarinaky <tarinaky@hunity.co.uk>
+
+pkgname=skype-call-recorder
+pkgver=0.8
+pkgrel=2
+pkgdesc="Open source tool that allows you to record your Skype calls on Linux"
+arch=('i686' 'x86_64')
+url="http://atdot.ch/scr/"
+license=('GPL')
+depends=('qt' 'libvorbis' 'lame' 'id3lib' 'hicolor-icon-theme')
+makedepends=('cmake')
+install=skype-call-recorder.install
+source=(http://atdot.ch/scr/files/$pkgver/$pkgname-$pkgver.tar.gz)
+sha1sums=('b8faade2d893628fd7a5deac5056d6dfaf7082c4')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ cmake -DCMAKE_INSTALL_PREFIX=/usr .
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/skype-call-recorder/skype-call-recorder.install b/community/skype-call-recorder/skype-call-recorder.install
new file mode 100644
index 000000000..e4f8fd06c
--- /dev/null
+++ b/community/skype-call-recorder/skype-call-recorder.install
@@ -0,0 +1,13 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/snes9x/PKGBUILD b/community/snes9x/PKGBUILD
new file mode 100644
index 000000000..d7d424871
--- /dev/null
+++ b/community/snes9x/PKGBUILD
@@ -0,0 +1,56 @@
+# $Id: PKGBUILD 78959 2012-10-28 04:11:03Z ebelanger $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgbase=snes9x
+pkgname=('snes9x' 'snes9x-gtk')
+pkgver=1.53
+pkgrel=5
+arch=('i686' 'x86_64')
+url="https://code.google.com/p/snes9x-gtk/"
+license=('custom')
+makedepends=('intltool' 'nasm' 'mesa' 'libpulse' 'libpng' 'sdl' 'gtk2' 'libxv' \
+ 'desktop-file-utils' 'gnome-icon-theme')
+source=(http://snes9x-gtk.googlecode.com/files/${pkgbase}-${pkgver}-src.tar.bz2
+ snes9x-gtk2.24.diff.gz)
+sha1sums=('57be6480369f66b9aaaeb722789ce114f58ed1e2'
+ '680dbe0a70f1821bc7931539e72f5a1a95e3938c')
+
+build() {
+ cd "${srcdir}/${pkgbase}-${pkgver}-src"
+ patch -p1 -i "${srcdir}/snes9x-gtk2.24.diff"
+ cd unix
+ ./configure --prefix=/usr --with-sdd1-decomp --enable-netplay
+ make
+
+ cd "${srcdir}/${pkgbase}-${pkgver}-src/gtk"
+ ./configure --prefix=/usr --with-sdd1-decomp --with-netplay --with-opengl
+ make
+}
+
+package_snes9x() {
+ pkgdesc="A portable Emulator for the Super Nintendo Entertainment System"
+ depends=('gcc-libs' 'libpng' 'libxext' 'libsm')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}-src/unix"
+ install -D -m755 snes9x "${pkgdir}/usr/bin/snes9x"
+ install -d "${pkgdir}/usr/share/doc/${pkgname}"
+ install -D -m644 ../docs/{snes9x.conf.default,{control-inputs,controls,snapshots}.txt} \
+ "${pkgdir}/usr/share/doc/${pkgname}/"
+ install -D -m644 "${srcdir}/${pkgbase}-${pkgver}-src/docs/snes9x-license.txt" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+package_snes9x-gtk() {
+ pkgdesc="A portable Emulator for the Super Nintendo Entertainment System - GTK version"
+ license=('custom' 'LGPL')
+ depends=('sdl' 'libgl' 'libpulse' 'gtk2' 'libxv' 'desktop-file-utils' 'gnome-icon-theme')
+ install=snes9x-gtk.install
+
+ cd "${srcdir}/${pkgbase}-${pkgver}-src/gtk"
+ make DESTDIR="${pkgdir}" install
+ install -d "${pkgdir}/usr/share/doc/${pkgname}"
+ install -D -m644 ../docs/{snes9x.conf.default,{control-inputs,controls,snapshots}.txt} \
+ "${pkgdir}/usr/share/doc/${pkgname}/"
+ install -D -m644 "${srcdir}/${pkgbase}-${pkgver}-src/docs/snes9x-license.txt" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/community/snes9x/snes9x-gtk.install b/community/snes9x/snes9x-gtk.install
new file mode 100644
index 000000000..2c88492dd
--- /dev/null
+++ b/community/snes9x/snes9x-gtk.install
@@ -0,0 +1,12 @@
+post_install() {
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove () {
+ post_install $1
+}
diff --git a/community/snes9x/snes9x-gtk2.24.diff.gz b/community/snes9x/snes9x-gtk2.24.diff.gz
new file mode 100644
index 000000000..f8e86d7f2
--- /dev/null
+++ b/community/snes9x/snes9x-gtk2.24.diff.gz
Binary files differ
diff --git a/community/spectrwm/PKGBUILD b/community/spectrwm/PKGBUILD
index 443fbdee3..5389ae238 100644
--- a/community/spectrwm/PKGBUILD
+++ b/community/spectrwm/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 75631 2012-08-27 17:30:40Z kkeen $
+# $Id: PKGBUILD 80704 2012-11-29 23:09:48Z kkeen $
# Maintainer: Kyle Keen <keenerd@gmail.com>
# Contributor: Christoph Zeiler <archNOSPAM_at_moonblade.dot.org>
pkgname=spectrwm
-pkgver=2.0.2
-pkgrel=1
+pkgver=2.1.1
+pkgrel=2
pkgdesc="A minimalistic automatic tiling window manager that tries to stay out of the way."
arch=('i686' 'x86_64')
url="http://www.spectrwm.org"
@@ -13,12 +13,12 @@ license=('custom:ISC')
depends=('dmenu' 'xcb-util' 'xcb-util-wm' 'xcb-util-keysyms' 'libxrandr' 'libxft' 'libxcursor' 'profont')
replaces=('scrotwm')
makedepends=('libxt')
-optdepends=('scrot: screenshots' 'xlockmore: screenlocking' 'terminus-font: great font')
+optdepends=('scrot: screenshots' 'xlockmore: great screenlocker' 'terminus-font: great font')
backup=(etc/spectrwm.conf)
source=(http://opensource.conformal.com/snapshots/$pkgname/$pkgname-$pkgver.tgz \
LICENSE \
baraction.sh)
-md5sums=('b7c52886492690eb1b71aa673743d044'
+md5sums=('98aba16fb76131bdf57ead10c8583d9a'
'a67cfe51079481e5b0eab1ad371379e3'
'950d663692e1da56e0ac864c6c3ed80e')
@@ -29,7 +29,12 @@ build() {
sed -i 's|\"/usr/local/lib/libswmhack.so\"|\"libswmhack.so\"|' spectrwm.c
sed -i 's/verbose_layout = 0;/verbose_layout = 1;/' spectrwm.c
sed -i 's/# modkey = Mod1/modkey = Mod4/' spectrwm.conf
+ # crashes if defaults can't be found, use smaller defaults
sed -i 's/-\*-terminus-medium-\*-\*-\*-\*/-*-profont-*-*-*-*-12/' spectrwm.conf
+ #sed -i 's/# program[lock].*/program[lock] = slock/' spectrwm.conf
+
+ # see spectrwm FS#403
+ sed -i 's/setconfspawn("lock".*/setconfspawn("lock", "xlock", SWM_SPAWN_OPTIONAL);/' spectrwm.c
cd linux
make PREFIX="/usr"
diff --git a/community/springlobby/PKGBUILD b/community/springlobby/PKGBUILD
index 5b5ca982e..026aee2ae 100644
--- a/community/springlobby/PKGBUILD
+++ b/community/springlobby/PKGBUILD
@@ -1,31 +1,31 @@
-# $Id: PKGBUILD 74012 2012-07-18 01:09:14Z ibiru $
+# $Id: PKGBUILD 81745 2012-12-28 07:48:09Z svenstaro $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: DuGi <dugi@irc.pl>
pkgname=springlobby
-pkgver=0.147
-pkgrel=2
+pkgver=0.157
+pkgrel=1
pkgdesc="A free cross-platform lobby client for the Spring RTS project."
arch=('i686' 'x86_64')
url="http://springlobby.info/"
license=('GPL2')
-depends=('hicolor-icon-theme' 'wxgtk' 'curl' 'libtorrent-rasterbar' 'boost-libs')
+depends=('hicolor-icon-theme' 'wxgtk' 'curl' 'libtorrent-rasterbar' 'boost-libs' 'alure')
optdepends=('sdl' 'sdl_sound' 'sdl_mixer')
makedepends=('boost' 'asio' 'cmake')
install=springlobby.install
source=(http://www.springlobby.info/tarballs/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('1dd17f3f573d40b10b66bdbdc77181f0')
+md5sums=('2771aeee0eaff69218d5abc0e9cc18de')
build() {
cd $srcdir/${pkgname}-$pkgver
- #export CXXFLAGS="${CXXFLAGS} -DBOOST_FILESYSTEM_VERSION=2"
-
- sed -i 's/boost_system-mt/boost_system/g' $srcdir/$pkgname-$pkgver/CMakeLists.txt
+ # We always use multithreaded boost libs in Arch with no special prefix but lesser
+ # distros have that prefix so this check fails.
+ sed -i 's/ .*-mt//g' $srcdir/$pkgname-$pkgver/src/lsl/src/lsl/CMakeLists.txt
+ sed -i 's/ .*-mt//g' $srcdir/$pkgname-$pkgver/src/lsl/src/lslutils/CMakeLists.txt
cmake . \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DOPTION_SOUND=false
+ -DCMAKE_INSTALL_PREFIX=/usr
make
}
@@ -33,12 +33,11 @@ package() {
cd $srcdir/${pkgname}-$pkgver
make DESTDIR=$pkgdir install
- #
- # install -m755 -d $pkgdir/usr/share/applications
- # install -m644 $srcdir/springlobby.desktop $pkgdir/usr/share/applications
- # install -m755 -d -p $pkgdir/usr/share/pixmaps
- # install -m644 $srcdir/springlobby.png $pkgdir/usr/share/pixmaps
+ # these conflict with files in the spring package
+ rm $pkgdir/usr/include/spring/Downloader/pr-downloader.h
+ rm $pkgdir/usr/lib/libpr-downloader_static.a
+ rm $pkgdir/usr/lib/pkgconfig/libspringdownloader.pc
}
# vim: sw=2:ts=2 et:
diff --git a/community/tarsnap/PKGBUILD b/community/tarsnap/PKGBUILD
new file mode 100644
index 000000000..a5186baa7
--- /dev/null
+++ b/community/tarsnap/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 75035 2012-08-12 08:25:53Z jelle $
+# Maintainer: Jelle van der Waa <jelle@vdwaa.nl>
+
+pkgname=tarsnap
+pkgver=1.0.33
+pkgrel=1
+pkgdesc='An online encrypted snapshotted backup service'
+arch=('i686' 'x86_64')
+url='http://www.tarsnap.com/'
+license=('custom')
+depends=('bzip2' 'openssl' 'xz>=5.0.0')
+makedepends=('e2fsprogs')
+source=("https://www.tarsnap.com/download/$pkgname-autoconf-$pkgver.tgz")
+md5sums=('a6267972d834198716b9fe09680e47e2')
+sha256sums=('0c0d825a8c9695fc8d44c5d8c3cd17299c248377c9c7b91fdb49d73e54ae0b7d')
+
+build() {
+ cd "$srcdir/$pkgname-autoconf-$pkgver"
+
+ ./configure --prefix=/usr --sysconfdir="/etc/$pkgname"
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-autoconf-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+ install -D -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+}
diff --git a/community/tp_smapi-lts/PKGBUILD b/community/tp_smapi-lts/PKGBUILD
new file mode 100644
index 000000000..1d74c5df3
--- /dev/null
+++ b/community/tp_smapi-lts/PKGBUILD
@@ -0,0 +1,56 @@
+# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Contributor: xduugu
+# Contributor: nh2
+# Contributor: Steven Davidovitz <steviedizzle ð gmail đ com>
+# Contributor: Nick B <Shirakawasuna ð gmail đ com>
+# Contributor: Christof Musik <christof ð senfdax đ de>
+# Contributor: Stefan Rupp <archlinux ð stefanrupp đ de>
+# Contributor: Ignas Anikevicius <anikevicius ð gmail đ com>
+
+pkgname=tp_smapi-lts
+_pkgname=tp_smapi
+_extramodules=/usr/lib/modules/extramodules-3.0-lts
+pkgver=0.41
+pkgrel=9
+pkgdesc="linux-lts modules for ThinkPad's SMAPI functionality"
+arch=('i686' 'x86_64')
+url='https://github.com/evgeni/tp_smapi'
+license=('GPL')
+depends=('linux-lts>=3.0' 'linux-lts<3.1')
+makedepends=('linux-lts-headers>=3.0' 'linux-lts-headers<3.1')
+install="${pkgname}.install"
+source=("https://github.com/downloads/evgeni/${_pkgname}/${_pkgname}-${pkgver}.tar.gz")
+md5sums=('63c683415c764568f6bf17c7eabe4752')
+
+build() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+
+ _kernver=$(< "${_extramodules}/version")
+
+ sed -ri -e "s/^(KVER\s*:=).*$/\1 ${_kernver}/" \
+ -e "s#^(KBASE\s*:=).*\$#\1 ${_extramodules%/*}/${_kernver}#" Makefile
+
+ make HDAPS=1
+}
+
+package() {
+ _kernver=$(< "${_extramodules}/version")
+
+ make -C "${_extramodules%/*}/${_kernver}/build" \
+ INSTALL_MOD_PATH="${pkgdir}/${_extramodules%%/lib/*}" \
+ M="${srcdir}/${_pkgname}-${pkgver}" modules_install
+
+ cd "${pkgdir}/${_extramodules%/*}"
+ mv "${_kernver}/extra" "${_extramodules##*/}"
+ rmdir "${_kernver}"
+
+ # compress kernel modules
+ find "${pkgdir}" -name "*.ko" -exec gzip -9 {} +
+
+ # load module on startup
+ echo tp_smapi > "${srcdir}/${pkgname}.conf"
+ install -Dm644 "${srcdir}/${pkgname}.conf" "${pkgdir}/usr/lib/modules-load.d/${pkgname}.conf"
+
+ # update kernel version in install file
+ sed -ri "s#^(extramodules=).*\$#\1${_extramodules}#" "${startdir}/${pkgname}.install"
+}
diff --git a/community/tp_smapi-lts/tp_smapi-lts.install b/community/tp_smapi-lts/tp_smapi-lts.install
new file mode 100644
index 000000000..4d671007d
--- /dev/null
+++ b/community/tp_smapi-lts/tp_smapi-lts.install
@@ -0,0 +1,13 @@
+extramodules=/usr/lib/modules/extramodules-3.0-lts
+
+post_install() {
+ depmod -v $(< "$extramodules/version") &>/dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/community/tp_smapi/PKGBUILD b/community/tp_smapi/PKGBUILD
index e80492955..55fef179e 100644
--- a/community/tp_smapi/PKGBUILD
+++ b/community/tp_smapi/PKGBUILD
@@ -9,13 +9,13 @@
pkgname=tp_smapi
pkgver=0.41
-pkgrel=5
+pkgrel=11
pkgdesc="Modules for ThinkPad's SMAPI functionality"
arch=('i686' 'x86_64')
url='https://github.com/evgeni/tp_smapi'
license=('GPL')
-depends=('linux>=3.5' 'linux<3.6')
-makedepends=('linux-headers>=3.5' 'linux-headers<3.6')
+depends=('linux>=3.6' 'linux<3.7')
+makedepends=('linux-headers>=3.6' 'linux-headers<3.7')
install="${pkgname}.install"
source=("https://github.com/downloads/evgeni/${pkgname}/${pkgname}-${pkgver}.tar.gz")
md5sums=('63c683415c764568f6bf17c7eabe4752')
diff --git a/community/tp_smapi/tp_smapi.install b/community/tp_smapi/tp_smapi.install
index 5fe1bab90..3662e7f34 100644
--- a/community/tp_smapi/tp_smapi.install
+++ b/community/tp_smapi/tp_smapi.install
@@ -1,4 +1,4 @@
-extramodules=/usr/lib/modules/extramodules-3.5-ARCH
+extramodules=/usr/lib/modules/extramodules-3.6-ARCH
post_install() {
depmod -v $(< "$extramodules/version") &>/dev/null
diff --git a/community/ufoai/PKGBUILD b/community/ufoai/PKGBUILD
new file mode 100644
index 000000000..670deb600
--- /dev/null
+++ b/community/ufoai/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id: PKGBUILD 70141 2012-04-30 15:53:06Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Lukas Jirkovsky <l.jirkovsky@gmail.com>
+pkgname=ufoai
+pkgver=2.4
+pkgrel=2
+pkgdesc="In UFO: Alien Invasion you fight aliens trying to capture Earth"
+arch=('i686' 'x86_64')
+url="http://ufoai.ninex.info/"
+license=('GPL')
+depends=('libjpeg' 'libgl' 'libpng' 'curl' 'sdl_image' 'sdl_mixer' 'sdl_ttf' 'xvidcore' 'ufoai-data')
+makedepends=('mesa')
+source=(http://downloads.sourceforge.net/project/ufoai/UFO_AI%202.x/$pkgver/ufoai-$pkgver-source.tar.bz2)
+md5sums=('d7e88aee0ea94149c8b9d90eb6c21ba9')
+
+build() {
+ cd "$srcdir"/$pkgname-$pkgver-source
+
+ ./configure --prefix=/usr --datadir=/usr/share/ufoai --enable-release --localedir=/usr/share/ufoai/base/i18n/
+ make
+ make lang
+}
+
+package() {
+ cd "$srcdir"/$pkgname-$pkgver-source
+
+ install -Dm755 ufo "$pkgdir"/usr/bin/ufo
+ install -Dm755 ufoded "$pkgdir"/usr/bin/ufoded
+ install -Dm755 ufo2map "$pkgdir"/usr/bin/ufo2map
+ install -Dm755 ufomodel "$pkgdir"/usr/bin/ufomodel
+
+ mkdir -p "$pkgdir"/usr/share/ufoai
+ cp -r base "$pkgdir"/usr/share/ufoai/
+
+ install -Dm644 debian/ufoai.desktop "$pkgdir"/usr/share/applications/ufoai.desktop
+ install -Dm644 debian/ufoai-safe.desktop "$pkgdir"/usr/share/applications/ufoai-safe.desktop
+ install -Dm644 debian/ufoded.desktop "$pkgdir"/usr/share/applications/ufoded.desktop
+
+ sed -i 's|/usr/games/||' "$pkgdir"/usr/share/applications/*
+
+ install -Dm644 debian/ufoai.xpm "$pkgdir"/usr/share/pixmaps/ufoai.xpm
+ install -Dm644 debian/ufoded.xpm "$pkgdir"/usr/share/pixmaps/ufoded.xpm
+}
+
+# vim: sw=2:ts=2 et:
diff --git a/community/ufoai/ufo-ai-2.3.1-libpng15.patch b/community/ufoai/ufo-ai-2.3.1-libpng15.patch
new file mode 100644
index 000000000..2099f7ab7
--- /dev/null
+++ b/community/ufoai/ufo-ai-2.3.1-libpng15.patch
@@ -0,0 +1,10 @@
+--- src/shared/images.c.old 2011-04-02 19:31:52.000000000 +0200
++++ src/shared/images.c 2011-04-02 19:32:13.000000000 +0200
+@@ -32,6 +32,7 @@
+
+ #include <jpeglib.h>
+ #include <png.h>
++#include <zlib.h>
+
+ /** image formats, tried in this order */
+ static char *IMAGE_TYPES[] = { "tga", "png", "jpg", NULL };
diff --git a/community/unace/01-makefiles.dpatch b/community/unace/01-makefiles.dpatch
new file mode 100644
index 000000000..798c226e0
--- /dev/null
+++ b/community/unace/01-makefiles.dpatch
@@ -0,0 +1,52 @@
+#!/bin/sh /usr/share/dpatch/dpatch-run
+## 01-makefiles.dpatch by Fabian Greffrath <fabian@debian-unofficial.org>
+##
+## DP: Fix upstream makefiles
+
+@DPATCH@
+
+diff -Nru unace-nonfree-2.5.orig/base.mk unace-nonfree-2.5/base.mk
+--- unace-nonfree-2.5.orig/base.mk 2003-11-27 20:16:20.000000000 +0100
++++ unace-nonfree-2.5/base.mk 2006-01-31 09:33:04.000000000 +0100
+@@ -427,9 +427,7 @@
+ ##############################################################################
+
+ ifndef ISWMAKE
+-include $(MAKE_DIR)baseace.mk
+ include $(MAKE_DIR)baseuace.mk
+ else
+-!include $(MAKE_DIR)baseace.mk
+ !include $(MAKE_DIR)baseuace.mk
+ endif
+diff -Nru unace-nonfree-2.5.orig/makefile unace-nonfree-2.5/makefile
+--- unace-nonfree-2.5.orig/makefile 2003-11-24 00:24:24.000000000 +0100
++++ unace-nonfree-2.5/makefile 2006-01-31 09:40:17.000000000 +0100
+@@ -18,6 +18,6 @@
+ INCLDIR = //usr/include
+
+-DEFINES = -D__LINUX__ -D__unix__ -D__GCC__ -D__HAS_IO_H__
++DEFINES = -D__LINUX__ -D__unix__ -D__GCC__ -U__HAS_IO_H__
+
+ ifdef DEBUG
+ LSWITCHES =
+@@ -47,7 +47,7 @@
+ $(APPS_UNACEEXE_CFILES)
+
+ unace: $(UNACEEXELIN_CFILES)
+- gcc $(LSWITCHES) -Wl,-lncurses -static -I$(INCLDIR) -I$(INCLSYSDIR) -I$(SRCSsl) $(DEFINES) $(UNACEEXELIN_CFILES) -ggdb -o$(EXECS_DIR)unace
++ gcc $(LSWITCHES) -Wl,-lncurses -I$(INCLDIR) -idirafter $(INCLSYSDIR) -I$(SRCSsl) $(DEFINES) $(UNACEEXELIN_CFILES) -ggdb -o$(EXECS_DIR)unace
+ ifndef DEBUG
+ tar cfvz linunace25.tgz unace file_id.diz licence
+ #sh linpack.sh
+diff -Nru unace-nonfree-2.5.orig/unace.mk unace-nonfree-2.5/unace.mk
+--- unace-nonfree-2.5.orig/unace.mk 2003-11-27 20:17:46.000000000 +0100
++++ unace-nonfree-2.5/unace.mk 2006-01-31 09:33:21.000000000 +0100
+@@ -27,8 +27,6 @@
+
+ ifndef ISWMAKE
+ include $(MAKE_DIR)unaceexe.mk
+-include $(MAKE_DIR)unacedll.mk
+ else
+ !include $(MAKE_DIR)unaceexe.mk
+-!include $(MAKE_DIR)unacedll.mk
+ endif
diff --git a/community/unace/04-64bit.dpatch b/community/unace/04-64bit.dpatch
new file mode 100644
index 000000000..7aad590be
--- /dev/null
+++ b/community/unace/04-64bit.dpatch
@@ -0,0 +1,119 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 04-64bit.dpatch by Michael Karcher
+## <debian@mkarcher.dialup.fu-berlin.de>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Replace declare.h by a generic stdint based version.
+
+@DPATCH@
+diff -urNad unace-nonfree-2.5~/source/base/all/declare.h unace-nonfree-2.5/source/base/all/declare.h
+--- unace-nonfree-2.5~/source/base/all/declare.h 2007-11-06 00:11:47.000000000 +0100
++++ unace-nonfree-2.5/source/base/all/declare.h 2007-11-06 00:13:18.498574104 +0100
+@@ -7,76 +7,47 @@
+ #ifndef _DECLARE_H_INCLUDED
+ #define _DECLARE_H_INCLUDED
+
+-#if !defined(__OS2__) && !defined(_WINDOWS_)
+- typedef int BOOL;
+-
+- typedef char CHAR;
+- typedef unsigned char UCHAR;
+- typedef UCHAR *PUCHAR;
+- typedef char *PSZ;
+-
+- typedef short SHORT;
+- typedef unsigned short USHORT;
+- typedef USHORT *PUSHORT;
+-
+- typedef long LONG;
+- typedef unsigned long ULONG;
+-
+- typedef ULONG *PULONG;
+-
+- typedef int INT;
+- typedef unsigned int UINT;
+- typedef unsigned int *PUINT;
++#include <stdint.h>
+
+- typedef CHAR *LPSTR;
+-#endif
++typedef int BOOL;
++typedef BOOL *PBOOL;
+
+-#if __WATCOMC__==1060
+- typedef long __int64[2];
+- typedef __int64 LONGLONG;
+- typedef LONGLONG *PLONGLONG;
+- typedef __int64 ULONGLONG;
+- typedef ULONGLONG DWORDLONG;
+-#else
+- #if !defined(_WINDOWS_)
+- #if !defined(__WATCOMC__) && !defined(__int64)
+- #define __int64 long long
+- #endif
++typedef char CHAR;
++typedef CHAR *PCHAR;
++typedef unsigned char UCHAR;
++typedef UCHAR *PUCHAR;
++typedef signed char SCHAR;
++typedef CHAR *PSZ;
++typedef CHAR *LPSTR;
+
+- typedef __int64 LONGLONG;
+- typedef LONGLONG *PLONGLONG;
+- typedef unsigned __int64 ULONGLONG;
+- typedef ULONGLONG DWORDLONG;
+- #endif
+-#endif
++typedef int INT;
++typedef INT *PINT;
++typedef unsigned int UINT;
++typedef unsigned int *PUINT;
+
++typedef int16_t SHORT;
++typedef SHORT *PSHORT;
++typedef uint16_t USHORT;
++typedef USHORT *PUSHORT;
+
+-#if !defined(_WINDOWS_)
+- typedef BOOL *PBOOL;
+- typedef INT *PINT;
+-#endif
++typedef int32_t LONG;
++typedef LONG *PLONG;
++typedef uint32_t ULONG;
++typedef ULONG *PULONG;
+
+-#if !defined(__wtypes_h__)
+- typedef void *PVOID;
+- typedef CHAR *PCHAR;
+- typedef SHORT *PSHORT;
+- typedef LONG *PLONG;
+- typedef ULONGLONG *PULONGLONG;
+-#endif
++typedef int64_t LONGLONG;
++typedef LONGLONG *PLONGLONG;
++typedef uint64_t ULONGLONG;
++typedef ULONGLONG *PULONGLONG;
+
+-#if defined(_GNU_H_WINDOWS32_BASE)
+- typedef LONGLONG ULONGLONG;
+- typedef ULONGLONG *PULONGLONG;
+-#endif
++typedef void *PVOID;
+
+-typedef signed char SCHAR;
++/* Dear ACE team, please clean your code to remove the following types */
++typedef LONGLONG __int64;
++typedef ULONGLONG DWORDLONG;
+
+ #ifndef NULL
+- #if defined(__SMALL__) || defined(__MEDIUM__) || defined(__386__) || defined(__AXP__) || defined(__PPC__)
+- #define NULL 0
+- #else
+- #define NULL 0L
+- #endif
++#include <stdlib.h>
+ #endif
+
+
diff --git a/community/unace/ChangeLog b/community/unace/ChangeLog
new file mode 100644
index 000000000..41533eb7b
--- /dev/null
+++ b/community/unace/ChangeLog
@@ -0,0 +1,9 @@
+2008-04-04 Eric Belanger <eric@archlinux.org>
+
+ * unace-2.5-5.1
+ * fixed seg faults on x86_64
+
+2007-05-28 Alessio 'mOLOk' Bolognino <themolok@gmail.com>
+ * unace-2.5-5
+ moved in [community]
+ now it's built from source (from debian)
diff --git a/community/unace/PKGBUILD b/community/unace/PKGBUILD
new file mode 100644
index 000000000..8a5c338f3
--- /dev/null
+++ b/community/unace/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 67507 2012-03-12 21:46:37Z lcarlier $
+# Maintainer: Eric Belanger <eric@archlinux.org>
+# Contributor: lowercase
+
+pkgname=unace
+pkgver=2.5
+pkgrel=7
+pkgdesc="An extraction tool for the proprietary ace archive format"
+arch=('i686' 'x86_64')
+url="http://www.winace.com/"
+license=("custom")
+depends=(ncurses)
+install=unace.install
+source=(http://ftp.debian.org/debian/pool/non-free/u/unace-nonfree/unace-nonfree_2.5.orig.tar.gz \
+ 01-makefiles.dpatch 04-64bit.dpatch)
+md5sums=('59013e74e5ac2ee15c1e92026ec1e3cc' '6a1498f24d6430723acf556e0d1cc72b'\
+ 'c46de484cf5dc0e04c342062139a8aaf')
+sha1sums=('f658f03aa6f663c1a90af85e3e8c6e7ef12adb42'
+ '83b2b84223072b6f456d7255c80bec4e01572be0'
+ 'cccd98f1b99218ec69f27425b56b44d23c75eb1e')
+
+build() {
+ cd ${srcdir}/unace-$pkgver
+
+ patch -p1 < ../01-makefiles.dpatch
+ [ "$CARCH" = "x86_64" ] && (patch -p1 < ../04-64bit.dpatch)
+ make
+}
+
+package() {
+ cd ${srcdir}/unace-$pkgver
+
+ install -D -m755 unace ${pkgdir}/usr/bin/unace
+ install -D -m644 licence ${pkgdir}/usr/share/licenses/unace/license
+}
diff --git a/community/unace/unace.install b/community/unace/unace.install
new file mode 100644
index 000000000..68408ad40
--- /dev/null
+++ b/community/unace/unace.install
@@ -0,0 +1,14 @@
+# arg 1: the new package version
+post_install() {
+
+cat << EOM
+
+==> unace post-install message:
+==> to use this software, you have to accept the Public UnAce Licence,
+==> ( it's in /usr/share/licenses/unace/license )
+==> otherwise, remove this package!
+
+EOM
+
+}
+
diff --git a/community/unarj/LICENSE b/community/unarj/LICENSE
new file mode 100644
index 000000000..944334a7a
--- /dev/null
+++ b/community/unarj/LICENSE
@@ -0,0 +1,86 @@
+ * Copyright (c) 1991-2000 by ARJ Software, Inc. All rights reserved.
+ *
+ * This code may be freely used in programs that are NOT ARJ archivers
+ * (both compress and extract ARJ archives).
+ *
+ * If you wish to distribute a modified version of this program, you
+ * MUST indicate that it is a modified version both in the program and
+ * source code.
+ *
+ * We are holding the copyright on the source code, so please do not
+ * delete our name from the program files or from the documentation.
+ *
+ * We wish to give credit to Haruhiko Okumura for providing the
+ * basic ideas for ARJ and UNARJ in his program AR. Please note
+ * that UNARJ is significantly different from AR from an archive
+ * structural point of view.
+ *
+
+
+
+ UNARJ LICENSE POLICY FOR ALL USERS:
+
+ The UNARJ program, source code, and the associated documentation
+ are copyright (c) 1990-2000 ARJ Software, Inc. all rights reserved.
+
+ If you distribute this software to others, you are required to
+ distribute the ENTIRE package consisting of the following files:
+
+ README.DOC
+ UNARJ.EXE
+ UNARJ.DOC
+ UNARJ.C
+ DECODE.C
+ ENVIRON.C
+ UNARJ.H
+ UNARJ.DEF
+ TCCUNARJ.MAK
+ BCCUNARJ.MAK
+ BCC32.MAK
+ QCLUNARJ.MAK
+ OS2UNARJ.MAK
+ TECHNOTE.DOC
+
+ We strongly prefer that the files be distributed in the format
+ originally released: UNARJ243.EXE with the ARJ-SECURITY envelope as
+ created by the author. If you must distribute the UNARJ archive in
+ another archive format, please archive the UNARJ243.EXE as one file
+ inside the other archive. Re-archival of the software as separate
+ files means losing the ARJ security envelope.
+
+ You may freely use the UNARJ C source code. If you wish to
+ distribute a modified version of UNARJ.EXE, you MUST indicate that it
+ is a modified version both in the program and source code.
+
+ We are holding the copyright on the source code, so please do not
+ delete our name from the program files or the documentation.
+
+ The UNARJ.EXE program is built from this source using Borland C++ 3.1.
+
+ You may freely use, copy, and distribute UNARJ.EXE, provided that no
+ fee is charged for such use, copying or distribution.
+
+ You may use UNARJ.EXE in a commercial software package provided that
+ no additional fee is charged for using UNARJ.EXE and provided that
+ the user fully understands that NO warranty or support is provided
+ for UNARJ.EXE by ARJ Software. Moreover, the user must fully
+ understand that UNARJ does not have the long usage history that ARJ
+ does.
+
+ This source code is intended to promote the building of utilities to
+ support the use of ARJ and ARJ archives.
+
+ DISCLAIMER:
+
+ This software UNARJ is provided on an "as is" basis without warranty
+ of any kind, expressed or implied, including but not limited to the
+ implied warranties of merchantability and fitness for a particular
+ purpose. The person using the software bears all risk as to the
+ quality and performance of the software. Should the software prove
+ defective, the user assumes the entire cost of all necessary repair,
+ servicing, or correction. ARJ Software, Inc. will not be liable
+ for any special, incidental, consequential, indirect or similar
+ damages due to loss of data or any other reason, even if ARJ
+ Software, Inc. or its agents have been advised of the possibility
+ of such damages.
+
diff --git a/community/unarj/PKGBUILD b/community/unarj/PKGBUILD
new file mode 100644
index 000000000..e0baa00e3
--- /dev/null
+++ b/community/unarj/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 55533 2011-09-14 07:44:04Z andrea $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.co>
+# Contributor: dale <dale@archlinux.org>
+# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+
+pkgname=unarj
+pkgver=2.63a
+pkgrel=3
+pkgdesc="An utility to extract, test and view the contents of archives created with the ARJ archiver"
+arch=('i686' 'x86_64')
+url="http://www.ibiblio.org/pub/Linux/utils/compress/"
+license=('custom')
+depends=('glibc')
+source=("http://ibiblio.org/pub/Linux/utils/compress/$pkgname-$pkgver.tar.gz"
+ 'LICENSE')
+md5sums=('a83d139c245f911f22cb1b611ec9768f'
+ 'c2467ee8c1cb61d843bc2c16cc5e2a2d')
+
+build() {
+ cd "${srcdir}"/$pkgname-$pkgver
+ make
+}
+
+package() {
+ cd "${srcdir}"/$pkgname-$pkgver
+ install -D -m755 unarj $pkgdir/usr/bin/unarj
+ install -D -m644 ../LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
diff --git a/community/unetbootin/PKGBUILD b/community/unetbootin/PKGBUILD
new file mode 100644
index 000000000..6f068c62d
--- /dev/null
+++ b/community/unetbootin/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 75751 2012-08-30 19:02:00Z arodseth $
+# Maintainer: Alexander Rødseth <rodseth@gmail.com>
+# Contributor: Det <nimetonmaili at gmail a-dot com>
+# Contributor: Godane aka Christopher Rogers <slaxemulator@gmail.com>
+
+pkgname=unetbootin
+pkgver=581
+pkgrel=1
+arch=('x86_64' 'i686')
+license=('GPL')
+pkgdesc="Create bootable Live USB drives"
+url="http://unetbootin.sourceforge.net/"
+depends=('syslinux' 'p7zip' 'qt' 'mtools' 'xorg-xmessage' 'desktop-file-utils' 'gtk-update-icon-cache')
+optdepends=('gksu: GUI authentication'
+ 'kdebase-runtime: GUI authentication')
+install=$pkgname.install
+source=("http://downloads.sourceforge.net/project/$pkgname/UNetbootin/$pkgver/$pkgname-source-$pkgver.tar.gz"
+ "$pkgname.sh")
+sha256sums=('b8bf5972653c023c159358f0e4c743dfaf1c6c27f28fd15cd97739d08c751509'
+ 'c35329011559288b964cc4c927c969fe35cb8cb3f88020583affe359fc72de10')
+
+build() {
+ cd "$srcdir"
+
+ lupdate "$pkgname.pro"
+ lrelease "$pkgname.pro"
+ qmake
+ make
+}
+
+package() {
+ cd "$srcdir"
+
+ install -Dm755 "$pkgname.sh" "$pkgdir/usr/bin/$pkgname"
+ install -Dm755 "$pkgname" "$pkgdir/usr/bin/$pkgname.elf"
+ mkdir -p "$pkgdir/usr/share/$pkgname"
+ install -m644 "$pkgname"_*.qm "$pkgdir/usr/share/$pkgname/"
+ install -Dm644 "$pkgname.desktop" \
+ "$pkgdir/usr/share/applications/$pkgname.desktop"
+ for i in 16 22 24 32 48 256; do
+ install -D "${pkgname}_${i}.png" \
+ "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgname.png"
+ done
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/unetbootin/unetbootin.install b/community/unetbootin/unetbootin.install
new file mode 100644
index 000000000..f95667aa4
--- /dev/null
+++ b/community/unetbootin/unetbootin.install
@@ -0,0 +1,14 @@
+post_install() {
+ gtk-update-icon-cache -q -f -t /usr/share/icons/hicolor
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/unetbootin/unetbootin.sh b/community/unetbootin/unetbootin.sh
new file mode 100644
index 000000000..a6c8969b6
--- /dev/null
+++ b/community/unetbootin/unetbootin.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+# wrapper script for starting unetbootin with root permissions
+ELF=/usr/bin/unetbootin.elf
+if [ -e /usr/bin/pkexec ]; then
+ pkexec $ELF && exit 0
+fi
+if [ -z "$KDE_FULL_SESSION" ]; then
+ if [ -e /usr/bin/gksudo ]; then
+ gksudo $ELF && exit 0
+ fi
+ if [ -e /usr/bin/gksu ]; then
+ gksu $ELF && exit 0
+ fi
+ echo "Could not use pkexec, gksudo or gksu"
+ $ELF && exit 0 || exit 1
+fi
+if [ -e /usr/bin/kdesudo ]; then
+ kdesudo $ELF && exit 0
+fi
+if [ -e /usr/bin/kdesu ]; then
+ kdesu $ELF && exit 0
+fi
+echo "Could not use kdesudo or kdesu"
+$ELF && exit 0 || exit 1
diff --git a/community/unrealircd/PKGBUILD b/community/unrealircd/PKGBUILD
index 87ec6cc8d..c6f22e6fc 100644
--- a/community/unrealircd/PKGBUILD
+++ b/community/unrealircd/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 78622 2012-10-22 09:20:20Z spupykin $
+# $Id: PKGBUILD 81758 2012-12-28 15:50:45Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Zerial <fernando@zerial.org>
pkgname=unrealircd
-pkgver=3.2.9
-pkgrel=4
+pkgver=3.2.10
+pkgrel=1
pkgdesc="Open Source IRC Server"
arch=('i686' 'x86_64')
url="http://unrealircd.com"
@@ -18,7 +18,7 @@ source=(http://www.unrealircd.com/downloads/Unreal$pkgver.tar.gz
unrealircd.rc
unrealircd.service
arch-fixes.patch)
-md5sums=('bde023695347969f545ce5f2a9ac9aed'
+md5sums=('e30b93d952d61012d409a6be22241360'
'07ffa1e82a01f319a8b997e155d2af1d'
'2103ce8a4a4e79f6955920bfebea0202'
'77807313c4578f2c30286b9f9e3fb21c')
@@ -26,7 +26,7 @@ md5sums=('bde023695347969f545ce5f2a9ac9aed'
build() {
mkdir -p $pkgdir/etc/unrealircd
mkdir -p $pkgdir/usr/bin
- cd $srcdir/Unreal3.2
+ cd $srcdir/Unreal$pkgver
patch -p1 <$srcdir/arch-fixes.patch
@@ -46,8 +46,8 @@ build() {
make
make IRCDDIR=$pkgdir/etc/unrealircd BINDIR=$pkgdir/usr/bin install
- mv $srcdir/Unreal3.2/src/ircd $pkgdir/usr/bin/unrealircd
- mv $srcdir/Unreal3.2/doc/example.conf $pkgdir/etc/unrealircd/unrealircd.conf
+ mv $srcdir/Unreal$pkgver/src/ircd $pkgdir/usr/bin/unrealircd
+ mv $srcdir/Unreal$pkgver/doc/example.conf $pkgdir/etc/unrealircd/unrealircd.conf
mkdir -p $pkgdir/usr/lib/unrealircd
mv $pkgdir/etc/unrealircd/modules $pkgdir/usr/lib/unrealircd/
ln -s /usr/lib/unrealircd/modules $pkgdir/etc/unrealircd/modules
diff --git a/community/urbanterror/PKGBUILD b/community/urbanterror/PKGBUILD
new file mode 100644
index 000000000..598a1b5ba
--- /dev/null
+++ b/community/urbanterror/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 81627 2012-12-25 03:43:56Z svenstaro $
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: grimi <grimi at poczta dot fm>
+
+pkgname=urbanterror
+pkgver=4.2.009
+pkgrel=1
+epoch=2
+pkgdesc="A team-based tactical shooter based on the Quake 3 Engine"
+arch=('i686' 'x86_64')
+url="http://www.urbanterror.net"
+license=('GPL2')
+depends=('sdl' 'openal' 'curl' 'urbanterror-data')
+makedepends=('mesa')
+source=("http://download.urbanterror.info/urt/42/zips/UrbanTerror42_full_009.zip"
+ "urbanterror.sh"
+ "urbanterror-server.sh"
+ "urbanterror.desktop"
+ "urbanterror.png")
+md5sums=('434d4b10713d8efa09d8c36a2b254929'
+ '7812ece92ab71986ef038b3291adc412'
+ 'fbd3059497cf68769c0cbf02545c6bec'
+ '08a99f4d7ad63024bc886e118ddcbc0f'
+ 'f9a57d898df73f43c6a85c8d8cc455ba')
+
+package() {
+ install -d $pkgdir/opt/urbanterror
+
+ cd $pkgdir/opt/urbanterror
+
+ # Copy binaries.
+ [[ $CARCH == "i686" ]] && install -m755 $srcdir/UrbanTerror42/Quake3-UrT.i386 urbanterror
+ [[ $CARCH == "i686" ]] && install -m755 $srcdir/UrbanTerror42/Quake3-UrT-Ded.i386 urbanterror-ded
+ [[ $CARCH == "x86_64" ]] && install -m755 $srcdir/UrbanTerror42/Quake3-UrT.x86_64 urbanterror
+ [[ $CARCH == "x86_64" ]] && install -m755 $srcdir/UrbanTerror42/Quake3-UrT-Ded.x86_64 urbanterror-ded
+
+ # Copy desktop launcher.
+ install -Dm644 $srcdir/urbanterror.desktop $pkgdir/usr/share/applications/urbanterror.desktop
+ install -Dm644 $srcdir/urbanterror.png $pkgdir/usr/share/pixmaps/urbanterror.png
+
+ # Copy launch scripts.
+ install -Dm755 $srcdir/urbanterror.sh $pkgdir/usr/bin/urbanterror
+ install -Dm755 $srcdir/urbanterror-server.sh $pkgdir/usr/bin/urbanterror-server
+}
+
+# vim: sw=2:ts=2 et:
diff --git a/community/urbanterror/urbanterror-server.sh b/community/urbanterror/urbanterror-server.sh
new file mode 100644
index 000000000..8d3f14959
--- /dev/null
+++ b/community/urbanterror/urbanterror-server.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+cd /opt/urbanterror/
+exec ./urbanterror-ded "$@"
diff --git a/community/urbanterror/urbanterror.desktop b/community/urbanterror/urbanterror.desktop
new file mode 100644
index 000000000..f4d359dfa
--- /dev/null
+++ b/community/urbanterror/urbanterror.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Urban Terror
+Type=Application
+Categories=Game;
+Terminal=false
+Exec=urbanterror
+Icon=urbanterror
diff --git a/community/urbanterror/urbanterror.png b/community/urbanterror/urbanterror.png
new file mode 100644
index 000000000..df596c29b
--- /dev/null
+++ b/community/urbanterror/urbanterror.png
Binary files differ
diff --git a/community/urbanterror/urbanterror.sh b/community/urbanterror/urbanterror.sh
new file mode 100644
index 000000000..65c222b4a
--- /dev/null
+++ b/community/urbanterror/urbanterror.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+cd /opt/urbanterror/
+exec ./urbanterror "$@"
diff --git a/community/vhba-module/PKGBUILD b/community/vhba-module/PKGBUILD
index 16a65b9b7..8f114c3ff 100644
--- a/community/vhba-module/PKGBUILD
+++ b/community/vhba-module/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 74112 2012-07-21 11:58:49Z schiv $
+# $Id: PKGBUILD 79181 2012-10-31 07:25:46Z tpowa $
# Maintainer: Ray Rashif <schiv@archlinux.org>
# Contributor: Mateusz Herych <heniekk@gmail.com>
# Contributor: Charles Lindsay <charles@chaoslizard.org>
pkgname=vhba-module
pkgver=20120422
-_extramodules=extramodules-3.4-ARCH
-pkgrel=4
+_extramodules=extramodules-3.6-ARCH
+pkgrel=14
pkgdesc="Kernel module that emulates SCSI devices"
arch=('i686' 'x86_64')
url="http://cdemu.sourceforge.net/"
license=('GPL')
-depends=('linux>=3.4' 'linux<3.5')
-makedepends=('linux-headers>=3.4')
+depends=('linux>=3.6' 'linux<3.7')
+makedepends=('linux-headers')
options=(!makeflags)
install=$pkgname.install
source=("http://downloads.sourceforge.net/cdemu/$pkgname-$pkgver.tar.bz2"
diff --git a/community/vhba-module/vhba-module.install b/community/vhba-module/vhba-module.install
index 8458b2ae7..d6e4d08d7 100644
--- a/community/vhba-module/vhba-module.install
+++ b/community/vhba-module/vhba-module.install
@@ -1,21 +1,20 @@
-post_upgrade() {
- ! grep -q 'cdemu' /etc/group && groupadd cdemu
+_updatemod() {
echo " > Updating module dependencies..."
- EXTRAMODULES='extramodules-3.4-ARCH'
+ EXTRAMODULES='extramodules-3.6-ARCH'
depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
}
-
post_install() {
- echo " > Adding 'cdemu' group"
- ! grep -q 'cdemu' /etc/group && groupadd cdemu
- echo " > Add 'vhba' to your modules array to autoload it"
post_upgrade
}
+post_upgrade() {
+ getent group cdemu &>/dev/null || groupadd -r cdemu
+ _updatemod
+}
+
post_remove() {
- post_upgrade
- echo "Removing 'cdemu' group"
+ _updatemod
groupdel cdemu
}
diff --git a/community/virtualbox/001-vboxdrv-reference.patch b/community/virtualbox/001-vboxdrv-reference.patch
new file mode 100644
index 000000000..00faa35cb
--- /dev/null
+++ b/community/virtualbox/001-vboxdrv-reference.patch
@@ -0,0 +1,57 @@
+diff -Nur VirtualBox-4.1.6_OSE.orig/src/VBox/Frontends/VirtualBox/src/main.cpp VirtualBox-4.1.6_OSE/src/VBox/Frontends/VirtualBox/src/main.cpp
+--- VirtualBox-4.1.6_OSE.orig/src/VBox/Frontends/VirtualBox/src/main.cpp 2011-11-04 17:22:13.636083176 +0000
++++ VirtualBox-4.1.6_OSE/src/VBox/Frontends/VirtualBox/src/main.cpp 2011-11-04 17:48:58.915541368 +0000
+@@ -75,10 +75,9 @@
+ "The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or "
+ "there is a permission problem with /dev/vboxdrv. Please reinstall the kernel "
+ "module by executing<br/><br/>"
+- " <font color=blue>'/etc/init.d/vboxdrv setup'</font><br/><br/>"
+- "as root. If it is available in your distribution, you should install the "
+- "DKMS package first. This package keeps track of Linux kernel changes and "
+- "recompiles the vboxdrv kernel module if necessary."
++ " <font color=blue>'pacman -S virtualbox-host-modules'</font><br/><br/>"
++ "as root. If you don't use our stock kernel, install virtualbox-host-source and "
++ "execute dkms autoinstall ."
+ );
+
+ QString g_QStrHintOtherWrongDriverVersion = QApplication::tr(
+@@ -90,11 +89,8 @@
+
+ QString g_QStrHintLinuxWrongDriverVersion = QApplication::tr(
+ "The VirtualBox kernel modules do not match this version of "
+- "VirtualBox. The installation of VirtualBox was apparently not "
+- "successful. Executing<br/><br/>"
+- " <font color=blue>'/etc/init.d/vboxdrv setup'</font><br/><br/>"
+- "may correct this. Make sure that you do not mix the "
+- "OSE version and the PUEL version of VirtualBox."
++ "VirtualBox. Reload the modules or if you don't use our stock kernel execute<br/><br/> "
++ " <font color=blue>'dkms autoinstall'</font><br/><br/>"
+ );
+
+ QString g_QStrHintOtherNoDriver = QApplication::tr(
+diff -Nur VirtualBox-4.1.6_OSE.orig/src/VBox/Installer/linux/VBox.sh VirtualBox-4.1.6_OSE/src/VBox/Installer/linux/VBox.sh
+--- VirtualBox-4.1.6_OSE.orig/src/VBox/Installer/linux/VBox.sh 2011-11-04 17:22:13.549415814 +0000
++++ VirtualBox-4.1.6_OSE/src/VBox/Installer/linux/VBox.sh 2011-11-04 17:56:50.735874087 +0000
+@@ -32,17 +32,18 @@
+ cat << EOF
+ WARNING: The vboxdrv kernel module is not loaded. Either there is no module
+ available for the current kernel (`uname -r`) or it failed to
+- load. Please recompile the kernel module and install it by
++ load. Please reinstall the kernel module virtualbox-host-modules or
++ if you don't use our stock kernel compile the modules with
+
+- sudo /etc/init.d/vboxdrv setup
++ sudo dkms autoinstall
+
+ You will not be able to start VMs until this problem is fixed.
+ EOF
+ elif [ ! -c /dev/vboxdrv ]; then
+ cat << EOF
+-WARNING: The character device /dev/vboxdrv does not exist. Try
++WARNING: The character device /dev/vboxdrv does not exist. Try to load the module
+
+- sudo /etc/init.d/vboxdrv restart
++ sudo modprobe vboxdrv
+
+ and if that is not successful, try to re-install the package.
+
diff --git a/community/virtualbox/002-change_default_driver_dir.patch b/community/virtualbox/002-change_default_driver_dir.patch
new file mode 100644
index 000000000..d8531499d
--- /dev/null
+++ b/community/virtualbox/002-change_default_driver_dir.patch
@@ -0,0 +1,18 @@
+diff -Nur VirtualBox-4.1.0_OSE.orig/src/VBox/Additions/common/crOpenGL/fakedri_drv.c VirtualBox-4.1.0_OSE/src/VBox/Additions/common/crOpenGL/fakedri_drv.c
+--- VirtualBox-4.1.0_OSE.orig/src/VBox/Additions/common/crOpenGL/fakedri_drv.c 2011-07-19 15:11:37.903456612 +0000
++++ VirtualBox-4.1.0_OSE/src/VBox/Additions/common/crOpenGL/fakedri_drv.c 2011-07-19 15:12:41.024021274 +0000
+@@ -36,13 +36,8 @@
+ //#define DEBUG_DRI_CALLS
+
+ //@todo this could be different...
+-#ifdef RT_ARCH_AMD64
+-# define DRI_DEFAULT_DRIVER_DIR "/usr/lib64/dri:/usr/lib/dri:/usr/lib/x86_64-linux-gnu/dri"
++# define DRI_DEFAULT_DRIVER_DIR "/usr/lib/xorg/modules/dri"
+ # define DRI_XORG_DRV_DIR "/usr/lib/xorg/modules/drivers/"
+-#else
+-# define DRI_DEFAULT_DRIVER_DIR "/usr/lib/dri:/usr/lib/i386-linux-gnu/dri"
+-# define DRI_XORG_DRV_DIR "/usr/lib/xorg/modules/drivers/"
+-#endif
+
+ #ifdef DEBUG_DRI_CALLS
+ #define SWDRI_SHOWNAME(pext, func) \
diff --git a/community/virtualbox/10-vboxdrv.rules b/community/virtualbox/10-vboxdrv.rules
new file mode 100644
index 000000000..37403ae2f
--- /dev/null
+++ b/community/virtualbox/10-vboxdrv.rules
@@ -0,0 +1,5 @@
+KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0600" ENV{ACL_MANAGE}="1"
+SUBSYSTEM=="usb_device", ACTION=="add", RUN="/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} vboxusers"
+SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", RUN="/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} vboxusers"
+SUBSYSTEM=="usb_device", ACTION=="remove", RUN="/usr/share/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor"
+SUBSYSTEM=="usb", ACTION=="remove", ENV{DEVTYPE}=="usb_device", RUN="/usr/share/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor"
diff --git a/community/virtualbox/60-vboxguest.rules b/community/virtualbox/60-vboxguest.rules
new file mode 100644
index 000000000..6285f7249
--- /dev/null
+++ b/community/virtualbox/60-vboxguest.rules
@@ -0,0 +1,2 @@
+ACTION=="add", KERNEL=="vboxguest", SUBSYSTEM=="misc", OWNER="root", MODE="0600"
+ACTION=="add", KERNEL=="vboxuser", SUBSYSTEM=="misc", OWNER="root", MODE="0666"
diff --git a/community/virtualbox/LocalConfig.kmk b/community/virtualbox/LocalConfig.kmk
new file mode 100644
index 000000000..6eca06d9b
--- /dev/null
+++ b/community/virtualbox/LocalConfig.kmk
@@ -0,0 +1,20 @@
+VBOX_WITH_ADDITION_DRIVERS =
+VBOX_WITH_INSTALLER = 1
+VBOX_WITH_LINUX_ADDITIONS = 1
+VBOX_WITH_X11_ADDITIONS = 1
+VBOX_WITH_TESTCASES =
+VBOX_WITH_TESTSUITE =
+VBOX_WITH_ORIGIN :=
+VBOX_PATH_APP_PRIVATE_ARCH := /usr/lib/virtualbox
+VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH)
+VBOX_WITH_RUNPATH := $(VBOX_PATH_APP_PRIVATE_ARCH)
+VBOX_PATH_APP_PRIVATE := /usr/share/virtualbox
+VBOX_PATH_APP_DOCS := /usr/share/virtualbox
+VBOX_PATH_PACKAGE_DOCS := $(VBOX_PATH_APP_DOCS)
+VBOX_WITH_REGISTRATION_REQUEST =
+VBOX_WITH_UPDATE_REQUEST =
+VBOX_WITH_VNC := 1
+VBOX_BLD_PYTHON = python2
+VBOX_JAVA_HOME = /usr/lib/jvm/java-7-openjdk
+VBOX_GCC_WERR =
+VBOX_GCC_WARN =
diff --git a/community/virtualbox/PKGBUILD b/community/virtualbox/PKGBUILD
new file mode 100644
index 000000000..bba389c0c
--- /dev/null
+++ b/community/virtualbox/PKGBUILD
@@ -0,0 +1,305 @@
+# $Id: PKGBUILD 81600 2012-12-24 17:28:55Z seblu $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org>
+
+pkgbase=virtualbox
+pkgname=('virtualbox'
+ 'virtualbox-host-dkms'
+ 'virtualbox-guest-dkms'
+ 'virtualbox-sdk'
+ 'virtualbox-guest-utils'
+ 'virtualbox-ext-vnc')
+pkgver=4.2.6
+pkgrel=1
+arch=('i686' 'x86_64')
+url='http://virtualbox.org'
+license=('GPL' 'custom')
+makedepends=('alsa-lib'
+ 'bin86'
+ 'cdrkit'
+ 'curl'
+ 'dev86'
+ 'gsoap'
+ 'iasl'
+ 'jdk7-openjdk'
+ 'libidl2'
+ 'libpulse'
+ 'libstdc++5'
+ 'libvncserver'
+ 'libxcursor'
+ 'libxinerama'
+ 'libxml2'
+ 'libxmu'
+ 'libxrandr'
+ 'libxslt'
+ 'libxtst'
+ 'linux-headers'
+ 'mesa'
+ 'glu'
+ 'python2'
+ 'qt'
+ 'sdl'
+ 'sdl_ttf'
+ 'vde2'
+ 'xalan-c')
+[[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc')
+source=("http://download.virtualbox.org/virtualbox/$pkgver/VirtualBox-$pkgver.tar.bz2"
+ "UserManual-$pkgver.pdf::http://download.virtualbox.org/virtualbox/$pkgver/UserManual.pdf"
+ '10-vboxdrv.rules'
+ '60-vboxguest.rules'
+ 'LocalConfig.kmk'
+ 'vboxservice.conf'
+ 'vboxservice.rc'
+ 'vboxservice.service'
+ 'vboxweb.conf'
+ 'vboxweb.rc'
+ 'vboxweb.service'
+ '001-vboxdrv-reference.patch'
+ '002-change_default_driver_dir.patch')
+md5sums=('d680aeb3b4379b8281527aeb012b2df5'
+ '5cdffabb7ffacfd49dcc93d747ede762'
+ '5f85710e0b8606de967716ded7b2d351'
+ 'ed1341881437455d9735875ddf455fbe'
+ '58d6e5bb4b4c1c6f3f0b3daa6aaeed03'
+ '3c08ad30b89add47d3f45121200a5360'
+ '7d9823507206de9b8528a72af2f18d74'
+ '07c5f6d86c4b7839d719c8ee0c53653b'
+ '7e9483b1069a54f181546083ac7e5469'
+ 'c159d683ba1947290fc2ad2c64194150'
+ 'bc9efed88e0469cd7fc460d5a5cd7b4b'
+ '6dbd16b9d1530fc42ff6904cd80be91d'
+ '97e193f050574dd272a38e5ee5ebe62b')
+
+build() {
+ cd "VirtualBox-$pkgver"
+
+ # Apply patches
+ for _p in "$srcdir"/*.patch; do
+ [[ -e $_p ]] || continue
+ msg2 "Appy patch ${_p##*/}"
+ patch -Np1 -i "$_p"
+ done
+
+ cp "$srcdir/LocalConfig.kmk" .
+
+ # fake makeself binary to compile without nofatal
+ ln -s /bin/echo makeself
+ export PATH="$CWD:$PATH"
+
+ ./configure --disable-docs \
+ --enable-webservice \
+ --enable-vde \
+ --enable-vnc \
+ --disable-kmods
+ source ./env.sh
+ kmk all
+
+ # fix python2
+ sed -i 's_^#!.*/usr/bin/python_#!/usr/bin/python2_' "out/linux.$BUILD_PLATFORM_ARCH/release/bin/vboxshell.py"
+
+ # build rdesktop-vrdp (broken from LocalConfig.kmk)
+ pushd src/VBox/RDP/client
+ cp "$srcdir/LocalConfig.kmk" .
+ # fix keymap path FS#32548
+ sed -i 's:/opt/VirtualBox:/usr/share/virtualbox:' Makefile.kmk
+ kmk all
+ popd
+
+ # build VNC pack
+ pushd src/VBox/ExtPacks/VNC
+ kmk packing
+ popd
+}
+
+package_virtualbox() {
+ pkgdesc='Powerful x86 virtualization for enterprise as well as home use'
+ depends=('curl'
+ 'libpng'
+ 'libxcursor'
+ 'libxinerama'
+ 'libxml2'
+ 'libxmu'
+ 'sdl'
+ 'shared-mime-info'
+ 'virtualbox-host-modules')
+ optdepends=('qt: VirtualBox GUI support'
+ 'vde2: Virtual Distributed Ethernet support'
+ 'virtualbox-sdk: Developer kit'
+ 'virtualbox-host-dkms: Host kernel source modules for non-stock kernels'
+ 'net-tools: Host-only or bridged networking support')
+ backup=('etc/vbox/vbox.cfg' 'etc/conf.d/vboxweb')
+ replaces=('virtualbox-ose')
+ conflicts=('virtualbox-ose')
+ install=virtualbox.install
+
+ source "VirtualBox-$pkgver/env.sh"
+ cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin"
+ install -dm755 "$pkgdir"/usr/{bin,lib/virtualbox/components,lib/virtualbox/ExtensionPacks,share/virtualbox/nls,share/virtualbox/rdesktop-vrdp-keymaps}
+
+ #doc
+ install -m 0644 "$srcdir/UserManual-$pkgver.pdf" "$pkgdir/usr/share/virtualbox/UserManual.pdf"
+
+ #Binaries and Wrapper with Launchers
+ install -m 0755 VBox.sh "$pkgdir/usr/bin/VBox"
+
+ for i in VBoxHeadless VBoxManage VBoxSDL VirtualBox vboxwebsrv VBoxBalloonCtrl; do
+ ln -sf VBox "$pkgdir/usr/bin/$i"
+ ln -sf VBox "$pkgdir/usr/bin/${i,,}"
+ done
+ install -m 0755 VBoxTunctl "$pkgdir/usr/bin"
+ install -m 0755 rdesktop-vrdp "$pkgdir/usr/bin"
+
+ #components
+ install -m 0755 components/* -t "$pkgdir/usr/lib/virtualbox/components"
+
+ #lib
+ install -m 0755 *.so "$pkgdir/usr/lib/virtualbox"
+ install -m 0644 *.gc *.r0 VBoxEFI*.fd "$pkgdir/usr/lib/virtualbox"
+
+ #setuid root binaries
+ install -m 4755 VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl -t "$pkgdir/usr/lib/virtualbox"
+ #other binaries
+ install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL VBoxBalloonCtrl vboxwebsrv webtest -t "$pkgdir/usr/lib/virtualbox"
+
+ #language
+ install -m 0755 nls/*.qm -t "$pkgdir/usr/share/virtualbox/nls"
+
+ #rdesktop keymaps
+ install -m 0644 rdesktop-vrdp-keymaps/* "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps"
+
+ #useless scripts
+ install -m 0755 VBoxCreateUSBNode.sh VBoxSysInfo.sh -t "$pkgdir/usr/share/virtualbox"
+
+ #icons
+ install -D -m 0644 VBox.png "$pkgdir/usr/share/pixmaps/VBox.png"
+
+ pushd icons
+ for i in *; do
+ install -d "$pkgdir/usr/share/icons/hicolor/$i/mimetypes"
+ cp $i/* "$pkgdir/usr/share/icons/hicolor/$i/mimetypes"
+ done
+ popd
+
+ #desktop
+ install -D -m 0644 virtualbox.desktop "$pkgdir/usr/share/applications/virtualbox.desktop"
+ install -D -m 0644 virtualbox.xml "$pkgdir/usr/share/mime/packages/virtualbox.xml"
+
+ #install configuration
+ mkdir -p "$pkgdir/etc/vbox"
+ echo 'INSTALL_DIR=/usr/lib/virtualbox' > "$pkgdir/etc/vbox/vbox.cfg"
+
+ #udev and licence
+ install -D -m 0644 "$srcdir/VirtualBox-${pkgver}/COPYING" \
+ "$pkgdir/usr/share/licenses/virtualbox/LICENSE"
+ install -D -m 0644 "$srcdir/10-vboxdrv.rules" \
+ "$pkgdir/usr/lib/udev/rules.d/10-vboxdrv.rules"
+
+ # install rc.d script
+ install -D -m755 "$srcdir/vboxweb.rc" "$pkgdir/etc/rc.d/vboxweb"
+ # install systemd service
+ install -D -m644 "$srcdir/vboxweb.service" \
+ "$pkgdir/usr/lib/systemd/system/vboxweb.service"
+ # install sample config
+ install -D -m644 "$srcdir/vboxweb.conf" "$pkgdir/etc/conf.d/vboxweb"
+
+}
+
+package_virtualbox-sdk() {
+ pkgdesc='VirtualBox Software Developer Kit (SDK)'
+ depends=('python2')
+
+ install -dm755 "$pkgdir/usr/lib/virtualbox"
+
+ source "VirtualBox-$pkgver/env.sh"
+ cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin"
+
+ install -D -m 0755 vboxshell.py "$pkgdir/usr/lib/virtualbox/vboxshell.py"
+ #python sdk
+ pushd sdk/installer
+ VBOX_INSTALL_PATH="/usr/lib/virtualbox" python2 vboxapisetup.py install --root "$pkgdir"
+ popd
+ rm -rf sdk/installer
+ mv sdk "$pkgdir/usr/lib/virtualbox"
+}
+
+package_virtualbox-host-dkms() {
+ pkgdesc='VirtualBox Host kernel modules sources'
+ depends=('dkms' 'gcc' 'make')
+ provides=('virtualbox-host-modules')
+ replaces=('virtualbox-source' 'virtualbox-host-source')
+ conflicts=('virtualbox-source' 'virtualbox-host-source')
+ optdepends=('linux-headers'
+ 'linux-lts-headers')
+ install=virtualbox-host-dkms.install
+
+ install -dm755 "$pkgdir/usr/src"
+ source "VirtualBox-$pkgver/env.sh"
+ cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin"
+ cp -r src "$pkgdir/usr/src/vboxhost-$pkgver"
+}
+
+package_virtualbox-guest-dkms() {
+ pkgdesc='VirtualBox Guest kernel modules sources'
+ depends=('dkms' 'gcc' 'make')
+ provides=('virtualbox-guest-modules')
+ replaces=('virtualbox-archlinux-source' 'virtualbox-guest-source')
+ conflicts=('virtualbox-archlinux-source' 'virtualbox-guest-source')
+ optdepends=('linux-headers'
+ 'linux-lts-headers')
+ install=virtualbox-guest-dkms.install
+
+ install -dm755 "$pkgdir/usr/src"
+ source "VirtualBox-$pkgver/env.sh"
+ cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions"
+ cp -r src "$pkgdir/usr/src/vboxguest-$pkgver"
+}
+
+package_virtualbox-guest-utils() {
+ pkgdesc='VirtualBox Guest userspace utilities'
+ depends=('virtualbox-guest-modules' 'gcc-libs' 'libxmu' 'xorg-xrandr' 'libxfixes')
+ optdepends=('virtualbox-guest-dkms: Guest kernel source modules for non-stock kernels')
+ replaces=('virtualbox-archlinux-additions' 'virtualbox-guest-additions')
+ conflicts=('virtualbox-archlinux-additions' 'virtualbox-guest-additions')
+ backup=('etc/conf.d/vboxservice')
+ install=virtualbox-guest-utils.install
+
+ source "VirtualBox-$pkgver/env.sh"
+ pushd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions"
+ install -d "$pkgdir"/{usr/bin,sbin}
+ install -m755 VBoxClient VBoxControl VBoxService "$pkgdir/usr/bin"
+ install -m755 mount.vboxsf "$pkgdir/sbin"
+ install -m755 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/98vboxadd-xclient \
+ "$pkgdir"/usr/bin/VBoxClient-all
+ install -m755 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/vboxclient.desktop \
+ "$pkgdir"/etc/xdg/autostart/vboxclient.desktop
+ install -D vboxvideo_drv_113.so \
+ "$pkgdir/usr/lib/xorg/modules/drivers/vboxvideo.so"
+ install -d "$pkgdir/usr/lib/xorg/modules/dri"
+ install -m755 VBoxOGL*.so "$pkgdir/usr/lib"
+ ln -s /usr/lib/VBoxOGL.so "$pkgdir/usr/lib/xorg/modules/dri/vboxvideo_dri.so"
+ install -m755 -D pam_vbox.so "$pkgdir/usr/lib/security/pam_vbox.so"
+ popd
+ # install udev rules
+ install -D -m 0644 60-vboxguest.rules \
+ "$pkgdir/usr/lib/udev/rules.d/60-vboxguest.rules"
+ # install rc.d script
+ install -D -m755 vboxservice.rc "$pkgdir/etc/rc.d/vboxservice"
+ # install sample config
+ install -D -m644 vboxservice.conf "$pkgdir/etc/conf.d/vboxservice"
+ # install systemd service file
+ install -D -m644 vboxservice.service \
+ "$pkgdir/usr/lib/systemd/system/vboxservice.service"
+}
+
+package_virtualbox-ext-vnc() {
+ pkgdesc='VirtualBox VNC extension pack'
+ depends=('virtualbox' 'libvncserver')
+ optdepends=('vncviewver: vnc client')
+ install=virtualbox-ext-vnc.install
+
+ source "VirtualBox-$pkgver/env.sh"
+ cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/packages"
+ install -Dm644 VNC-*.vbox-extpack "$pkgdir/usr/share/virtualbox/extensions/VNC-${pkgver}.vbox-extpack"
+}
+
+# vim:set ts=4 sw=4 et:
diff --git a/community/virtualbox/vboxservice.conf b/community/virtualbox/vboxservice.conf
new file mode 100644
index 000000000..9d4ec629f
--- /dev/null
+++ b/community/virtualbox/vboxservice.conf
@@ -0,0 +1,2 @@
+# VBoxService -h
+VBOX_SERVICE_OPTION=""
diff --git a/community/virtualbox/vboxservice.rc b/community/virtualbox/vboxservice.rc
new file mode 100644
index 000000000..5a62d69a3
--- /dev/null
+++ b/community/virtualbox/vboxservice.rc
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/${0##*/}
+
+name=VBoxService
+PID=$(pidof -o %PPID $name)
+
+case "$1" in
+ start)
+ stat_busy 'Starting VirtualBox Guest Service'
+ [[ -z "$PID" ]] && ${name} $VBOX_SERVICE_OPTION &>/dev/null \
+ && { add_daemon ${0##*/}; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+ stop)
+ stat_busy 'Stopping VirtualBox Guest Service'
+ [[ -n "$PID" ]] && kill $PID &>/dev/null \
+ && { rm_daemon ${0##*/}; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ status)
+ stat_busy 'Checking VirtualBox Guest Service status'
+ ck_status ${0##*/}
+ ;;
+ *)
+ echo "usage: ${0##*/} {start|stop|restart|status}" >&2
+ exit 1
+esac
+
+exit 0
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/virtualbox/vboxservice.service b/community/virtualbox/vboxservice.service
new file mode 100644
index 000000000..bbd61617d
--- /dev/null
+++ b/community/virtualbox/vboxservice.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=VirtualBox Guest Service
+ConditionVirtualization=oracle
+
+[Service]
+ExecStart=/usr/bin/VBoxService -f
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/virtualbox/vboxweb.conf b/community/virtualbox/vboxweb.conf
new file mode 100644
index 000000000..c36f6a143
--- /dev/null
+++ b/community/virtualbox/vboxweb.conf
@@ -0,0 +1,11 @@
+# WebService Mandatory Variables
+#VBOXWEB_USER=
+
+# WebService Variables
+#VBOXWEB_LOGFILE=
+#VBOXWEB_HOST=
+#VBOXWEB_PORT=
+#VBOXWEB_TIMEOUT=
+#VBOXWEB_CHECK_INTERVAL=
+#VBOXWEB_THREADS=
+#VBOXWEB_KEEPALIVE=
diff --git a/community/virtualbox/vboxweb.rc b/community/virtualbox/vboxweb.rc
new file mode 100644
index 000000000..97273e3c7
--- /dev/null
+++ b/community/virtualbox/vboxweb.rc
@@ -0,0 +1,86 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/vbox/vbox.cfg
+. /etc/conf.d/vboxweb
+
+BINARY="$INSTALL_DIR/vboxwebsrv"
+
+start() {
+ stat_busy "Starting VirtualBox Web Service";
+ if ! pidof -o %PPID $BINARY >/dev/null; then
+ [[ "$VBOXWEB_USER" ]] || stat_die
+ lsmod | grep -q "vboxdrv[^_-]" || stat_die
+ PARAMS="--background"
+ [[ "$VBOXWEB_HOST" ]] && PARAMS+=" -H $VBOXWEB_HOST"
+ [[ "$VBOXWEB_PORT" ]] && PARAMS+=" -p $VBOXWEB_PORT"
+ [[ "$VBOXWEB_TIMEOUT" ]] && PARAMS+=" -t $VBOXWEB_TIMEOUT"
+ [[ "$VBOXWEB_CHECK_INTERVAL" ]] && PARAMS+=" -i $VBOXWEB_CHECK_INTERVAL"
+ [[ "$VBOXWEB_THREADS" ]] && PARAMS+=" -T $VBOXWEB_THREADS"
+ [[ "$VBOXWEB_KEEPALIVE" ]] && PARAMS+=" -k $VBOXWEB_KEEPALIVE"
+ [[ "$VBOXWEB_LOGFILE" ]] && PARAMS+=" -F $VBOXWEB_LOGFILE"
+ # prevent inheriting this setting to VBoxSVC
+ unset VBOX_RELEASE_LOG_DEST
+ su - $VBOXWEB_USER -c "$BINARY $PARAMS" &>/dev/null
+ # ugly: wait until the final process has forked
+ sleep .2
+ if pidof -o %PPID $BINARY >/dev/null; then
+ add_daemon vboxweb
+ stat_done
+ else
+ stat_die
+ fi
+ else
+ stat_die
+ fi
+}
+
+stop() {
+ stat_busy "Stopping VirtualBox Web Service"
+ PID=$(pidof -o %PPID $BINARY)
+ [[ $PID ]] && kill $PID &>/dev/null
+ if ! pidof -o %PPID $BINARY >/dev/null; then
+ rm_daemon vboxweb
+ stat_done
+ else
+ stat_die
+ fi
+}
+
+restart() {
+ stop && start
+}
+
+status() {
+ stat_busy "Checking for VirtualBox Web Service"
+ if pidof -o %PPID $BINARY >/dev/null; then
+ stat_done
+ else
+ stat_fail
+ false
+ fi
+}
+
+case "$1" in
+start)
+ start
+ ;;
+stop)
+ stop
+ ;;
+restart)
+ restart
+ ;;
+force-reload)
+ restart
+ ;;
+status)
+ status
+ ;;
+*)
+ echo "Usage: $0 {start|stop|restart|status}"
+ exit 1
+esac
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/virtualbox/vboxweb.service b/community/virtualbox/vboxweb.service
new file mode 100644
index 000000000..303381597
--- /dev/null
+++ b/community/virtualbox/vboxweb.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=VirtualBox Web Service
+After=network.target
+
+[Service]
+Type=forking
+PIDFile=/run/vboxweb.pid
+ExecStart=/usr/bin/vboxwebsrv --pidfile /run/vboxweb.pid --background
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/virtualbox/virtualbox-ext-vnc.install b/community/virtualbox/virtualbox-ext-vnc.install
new file mode 100644
index 000000000..828a16a1d
--- /dev/null
+++ b/community/virtualbox/virtualbox-ext-vnc.install
@@ -0,0 +1,25 @@
+#/bin/sh
+
+# arg 1: the new package version
+post_install() {
+ VBoxManage extpack install "/usr/share/virtualbox/extensions/VNC-${1%%-*}.vbox-extpack" >/dev/null
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ pre_remove "$2"
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install "$1"
+}
+
+# arg 1: the old package version
+pre_remove() {
+ VBoxManage extpack uninstall 'VNC' >/dev/null
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/virtualbox/virtualbox-guest-dkms.install b/community/virtualbox/virtualbox-guest-dkms.install
new file mode 100644
index 000000000..2d62eae43
--- /dev/null
+++ b/community/virtualbox/virtualbox-guest-dkms.install
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# arg 1: the new package version
+post_install() {
+ dkms add vboxguest/${1%-*}
+ cat << EOF
+==> To build and install your modules run dkms install vboxguest/${1%-*}
+==> To do this automatically at startup you can add dkms in your DAEMONS
+EOF
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ pre_remove "$2"
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install "$1"
+}
+
+# arg 1: the old package version
+pre_remove() {
+ # Remove modules using dkms
+ [ -n "${1%-*}" ] && dkms remove vboxguest/${1%-*} --all >/dev/null || true
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/virtualbox/virtualbox-guest-utils.install b/community/virtualbox/virtualbox-guest-utils.install
new file mode 100644
index 000000000..38bbe807d
--- /dev/null
+++ b/community/virtualbox/virtualbox-guest-utils.install
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+# arg 1: the new package version
+post_install() {
+ getent group vboxsf > /dev/null || groupadd -g 109 vboxsf
+ true
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install "$1"
+ # rename /etc/rc.d/vboxservice
+ if [ "`vercmp $2 4.1.18-3`" -lt 0 ]; then
+ cat << EOF
+==> rc.d vbox-service script was renamed to vboxservice.
+EOF
+ fi
+ # fix gid of vboxsf
+ if [ "`vercmp $2 4.1.18-4`" -lt 0 ]; then
+ groupmod -g 109 vboxsf
+ fi
+ true
+}
+
+# arg 1: the old package version
+post_remove() {
+ groupdel vboxsf >/dev/null 2>&1 || true
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/virtualbox/virtualbox-host-dkms.install b/community/virtualbox/virtualbox-host-dkms.install
new file mode 100644
index 000000000..8028cb7e0
--- /dev/null
+++ b/community/virtualbox/virtualbox-host-dkms.install
@@ -0,0 +1,30 @@
+#/bin/sh
+
+# arg 1: the new package version
+post_install() {
+ dkms add vboxhost/${1%-*}
+ cat << EOF
+==> To build and install your modules run dkms install vboxhost/${1%-*}
+==> To do this automatically at startup you can add dkms in your DAEMONS
+EOF
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ pre_remove "$2"
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install "$1"
+}
+
+# arg 1: the old package version
+pre_remove() {
+ # Remove modules using dkms
+ [ -n "${1%-*}" ] && dkms remove vboxhost/${1%-*} --all >/dev/null || true
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/virtualbox/virtualbox.install b/community/virtualbox/virtualbox.install
new file mode 100644
index 000000000..6913fe2ed
--- /dev/null
+++ b/community/virtualbox/virtualbox.install
@@ -0,0 +1,45 @@
+#!/bin/sh
+
+utils() {
+ if [ -x usr/bin/update-mime-database ]; then
+ update-mime-database usr/share/mime > /dev/null 2>&1
+ fi
+
+ if [ -x usr/bin/xdg-icon-resource ]; then
+ xdg-icon-resource forceupdate --theme hicolor > /dev/null 2>&1
+ fi
+
+ if [ -x usr/bin/update-desktop-database ]; then
+ usr/bin/update-desktop-database -q
+ fi
+
+ if [ -x usr/bin/udevadm ]; then
+ usr/bin/udevadm control --reload
+ fi
+}
+
+# arg 1: the new package version
+post_install() {
+ getent group vboxusers >/dev/null || usr/sbin/groupadd -g 108 vboxusers
+ utils
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install "$1"
+ if [ "$(vercmp $2 4.1.6-1)" -lt 0 ]; then
+ cat << EOF
+===> Starting with virtualbox version 4.1.6-1, kernel modules handling is done by virtualbox-modules.
+===> Use virtualbox-source package if you don't use our stock linux package.
+EOF
+ fi
+}
+
+# arg 1: the old package version
+post_remove() {
+ groupdel vboxusers >/dev/null 2>&1 || true
+ utils
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/visualboyadvance/1.7.2-deprecatedsigc++.patch b/community/visualboyadvance/1.7.2-deprecatedsigc++.patch
new file mode 100644
index 000000000..4bb1787cb
--- /dev/null
+++ b/community/visualboyadvance/1.7.2-deprecatedsigc++.patch
@@ -0,0 +1,692 @@
+--- src/gtk/sigccompat.h.old 2008-05-02 10:46:45.000000000 +0200
++++ src/gtk/sigccompat.h 2008-05-02 10:47:08.000000000 +0200
+@@ -20,7 +20,7 @@
+ #ifndef __VBA_SIGCCOMPAT_H__
+ #define __VBA_SIGCCOMPAT_H__
+
+-#undef LIBSIGC_DISABLE_DEPRECATED
++#define LIBSIGC_DISABLE_DEPRECATED
+ #include <sigc++/bind.h>
+ #include <sigc++/connection.h>
+
+@@ -28,9 +28,679 @@
+ #include <sigc++/object.h>
+ #include <sigc++/functors/mem_fun.h>
+
+-namespace SigC
++
++// From sigc++/bind.h
++namespace SigC {
++
++template <class T_bound1, class T_functor>
++inline ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type>
++bind(const T_functor& _A_functor, T_bound1 _A_b1)
++{ return ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type>
++ (_A_functor, _A_b1);
++}
++
++template <class T_bound1, class T_bound2, class T_functor>
++inline ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type>
++bind(const T_functor& _A_functor, T_bound1 _A_b1, T_bound2 _A_b2)
++{ return ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type>
++ (_A_functor, _A_b1, _A_b2);
++}
++
++template <class T_bound1, class T_bound2, class T_bound3, class T_functor>
++inline ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type,
++ typename ::sigc::unwrap_reference<T_bound3>::type>
++bind(const T_functor& _A_functor, T_bound1 _A_b1, T_bound2 _A_b2,T_bound3 _A_b3)
++{ return ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type,
++ typename ::sigc::unwrap_reference<T_bound3>::type>
++ (_A_functor, _A_b1, _A_b2, _A_b3);
++}
++
++}
++
++// From sigc++/connection.h
++namespace SigC {
++
++/** Convinience class for safe disconnection.
++ * Iterators must not be used beyond the lifetime of the list
++ * they work on. A connection object can be created from a
++ * slot list iterator and may safely be used to disconnect
++ * the referred slot at any time (disconnect()). If the slot
++ * has already been destroyed, disconnect() does nothing. empty() or
++ * operator bool() can be used to test whether the connection is
++ * still active. The connection can be blocked (block(), unblock()).
++ *
++ * This is possible because the connection object gets notified
++ * when the referred slot dies (notify()).
++ *
++ * @deprecated Use sigc::connection instead.
++ * @ingroup compat
++ */
++typedef ::sigc::connection Connection;
++
++}
++
++// From sigc++/slot.h
++namespace SigC {
++
++// SlotN
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot0 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return>
++class Slot0
++ : public ::sigc::slot<T_return>
++{
++public:
++ typedef ::sigc::slot<T_return> parent_type;
++
++ /// Constructs an empty slot.
++ Slot0() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot0(const T_functor& _A_func)
++ : ::sigc::slot<T_return>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot0(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot0& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot1 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1>
++class Slot1
++ : public ::sigc::slot<T_return, T_arg1>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1> parent_type;
++
++ /// Constructs an empty slot.
++ Slot1() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot1(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot1(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot1& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot2 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2>
++class Slot2
++ : public ::sigc::slot<T_return, T_arg1,T_arg2>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2> parent_type;
++
++ /// Constructs an empty slot.
++ Slot2() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot2(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot2(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot2& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot3 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3>
++class Slot3
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3> parent_type;
++
++ /// Constructs an empty slot.
++ Slot3() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot3(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot3(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot3& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot4 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
++class Slot4
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4> parent_type;
++
++ /// Constructs an empty slot.
++ Slot4() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot4(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot4(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot4& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot5 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ * - @e T_arg5 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
++class Slot5
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5> parent_type;
++
++ /// Constructs an empty slot.
++ Slot5() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot5(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot5(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot5& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot6 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ * - @e T_arg5 Argument type used in the definition of operator()().
++ * - @e T_arg6 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
++class Slot6
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6> parent_type;
++
++ /// Constructs an empty slot.
++ Slot6() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot6(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot6(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot6& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot7 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ * - @e T_arg5 Argument type used in the definition of operator()().
++ * - @e T_arg6 Argument type used in the definition of operator()().
++ * - @e T_arg7 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
++class Slot7
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>
+ {
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7> parent_type;
++
++ /// Constructs an empty slot.
++ Slot7() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot7(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot7(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot7& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++
++
++#ifndef DOXYGEN_SHOULD_SKIP_THIS
++/* gcc 3.2 reports a strange conflict between SigC::slot() and sigc::slot<>
++ * when "using namespace SigC" and later using a slot(obj,func) overload
++ * without the prefix "SigC::". Probably a compiler bug. I will investigate.
++ *
++ * This ugly hack avoids the error:
++ */
++// #define slot(...) make_slot(__VA_ARGS__) /* only works for gcc */
++#endif
+
++
++// slot()
++/** Creates a functor of type SigC::Slot0 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return>
++inline Slot0<T_return>
++slot(T_return (*_A_func)())
++{ return Slot0<T_return>(_A_func); }
++
++/** Creates a functor of type SigC::Slot1 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1>
++inline Slot1<T_return, T_arg1>
++slot(T_return (*_A_func)(T_arg1))
++{ return Slot1<T_return, T_arg1>(_A_func); }
++
++/** Creates a functor of type SigC::Slot2 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2>
++inline Slot2<T_return, T_arg1,T_arg2>
++slot(T_return (*_A_func)(T_arg1,T_arg2))
++{ return Slot2<T_return, T_arg1,T_arg2>(_A_func); }
++
++/** Creates a functor of type SigC::Slot3 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3>
++inline Slot3<T_return, T_arg1,T_arg2,T_arg3>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3))
++{ return Slot3<T_return, T_arg1,T_arg2,T_arg3>(_A_func); }
++
++/** Creates a functor of type SigC::Slot4 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
++inline Slot4<T_return, T_arg1,T_arg2,T_arg3,T_arg4>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4))
++{ return Slot4<T_return, T_arg1,T_arg2,T_arg3,T_arg4>(_A_func); }
++
++/** Creates a functor of type SigC::Slot5 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
++inline Slot5<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4,T_arg5))
++{ return Slot5<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>(_A_func); }
++
++/** Creates a functor of type SigC::Slot6 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
++inline Slot6<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6))
++{ return Slot6<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>(_A_func); }
++
++/** Creates a functor of type SigC::Slot7 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
++inline Slot7<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7))
++{ return Slot7<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>(_A_func); }
++
++
++
++}
++
++// From sigc++/object.h
++namespace SigC {
++
++// Object
++typedef ::sigc::trackable Object;
++
++}
++
++namespace SigC
++{
+ template <class T_return, class T_obj1, class T_obj2>
+ inline Slot0<T_return>
+ slot( T_obj1& _A_obj, T_return (T_obj2::*_A_func)() )
diff --git a/community/visualboyadvance/1.7.2-gcc34.patch b/community/visualboyadvance/1.7.2-gcc34.patch
new file mode 100644
index 000000000..8fa4fbf8d
--- /dev/null
+++ b/community/visualboyadvance/1.7.2-gcc34.patch
@@ -0,0 +1,41 @@
+diff -ur src/gtk/joypadconfig.h src/gtk/joypadconfig.h
+--- src/gtk/joypadconfig.h 2004-05-10 16:43:21.000000000 +0200
++++ src/gtk/joypadconfig.h 2004-08-12 22:30:20.838039064 +0200
+@@ -22,8 +22,8 @@
+
+ #include <vector>
+
+-#include <libglademm.h>
+ #include <gtkmm.h>
++#include <libglademm.h>
+
+ #ifndef GTKMM20
+ # include "sigccompat.h"
+diff -ur src/gtk/main.cpp src/gtk/main.cpp
+--- src/gtk/main.cpp 2004-05-21 18:02:35.000000000 +0200
++++ src/gtk/main.cpp 2004-08-12 22:39:08.633801912 +0200
+@@ -22,10 +22,10 @@
+
+ #include <list>
+
+-#include <libglademm.h>
+ #include <gtkmm/main.h>
+ #include <gtkmm/window.h>
+ #include <gtkmm/messagedialog.h>
++#include <libglademm.h>
+
+ #include "images/vba-wm-pixbufs.h"
+
+diff -ur src/gtk/window.h src/gtk/window.h
+--- src/gtk/window.h 2004-05-21 15:25:41.000000000 +0200
++++ src/gtk/window.h 2004-08-12 22:30:58.650290728 +0200
+@@ -23,8 +23,8 @@
+ #include <sys/types.h>
+ #include <stdarg.h>
+
+-#include <libglademm.h>
+ #include <gtkmm.h>
++#include <libglademm.h>
+
+ #ifndef GTKMM20
+ # include "sigccompat.h"
diff --git a/community/visualboyadvance/1.7.2-gcc41.patch b/community/visualboyadvance/1.7.2-gcc41.patch
new file mode 100644
index 000000000..cacf8e251
--- /dev/null
+++ b/community/visualboyadvance/1.7.2-gcc41.patch
@@ -0,0 +1,27 @@
+diff -ru src/prof/prof.cpp src/prof/prof.cpp
+--- src/prof/prof.cpp 2004-05-14 00:31:58.000000000 +1000
++++ src/prof/prof.cpp 2006-06-03 13:49:41.000000000 +1000
+@@ -266,7 +266,7 @@
+ for (toindex=froms[fromindex]; toindex!=0; toindex=tos[toindex].link) {
+ if(profWrite8(fd, GMON_TAG_CG_ARC) ||
+ profWrite32(fd, (u32)frompc) ||
+- profWrite32(fd, (u32)tos[toindex].selfpc) ||
++ profWrite32(fd, (u32)(intptr_t)tos[toindex].selfpc) ||
+ profWrite32(fd, tos[toindex].count)) {
+ systemMessage(0, "mcount: arc");
+ fclose(fd);
+diff -ru src/sdl/debugger.cpp src/sdl/debugger.cpp
+--- src/sdl/debugger.cpp 2004-05-14 00:13:14.000000000 +1000
++++ src/sdl/debugger.cpp 2006-06-03 13:49:57.000000000 +1000
+@@ -950,9 +950,9 @@
+ {
+ u32 address = 0;
+ if(mem >= (u32*)&workRAM[0] && mem <= (u32*)&workRAM[0x3ffff])
+- address = 0x2000000 + ((u32)mem - (u32)&workRAM[0]);
++ address = 0x2000000 + ((u32)(intptr_t)mem - (u32)(intptr_t)&workRAM[0]);
+ else
+- address = 0x3000000 + ((u32)mem - (u32)&internalRAM[0]);
++ address = 0x3000000 + ((u32)(intptr_t)mem - (u32)(intptr_t)&internalRAM[0]);
+
+ if(size == 2)
+ printf("Breakpoint (on write) address %08x old:%08x new:%08x\n",
diff --git a/community/visualboyadvance/1.7.2-glibc.patch b/community/visualboyadvance/1.7.2-glibc.patch
new file mode 100644
index 000000000..5211b3623
--- /dev/null
+++ b/community/visualboyadvance/1.7.2-glibc.patch
@@ -0,0 +1,76 @@
+--- src/GBA.cpp
++++ src/GBA.cpp
+@@ -1130,7 +1130,7 @@
+ bool CPUIsZipFile(const char * file)
+ {
+ if(strlen(file) > 4) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".zip") == 0)
+@@ -1145,7 +1145,7 @@
+ {
+ cpuIsMultiBoot = false;
+ if(strlen(file) > 4) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".gba") == 0)
+@@ -1169,7 +1169,7 @@
+ bool CPUIsGBABios(const char * file)
+ {
+ if(strlen(file) > 4) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".gba") == 0)
+@@ -1189,7 +1189,7 @@
+ bool CPUIsELF(const char *file)
+ {
+ if(strlen(file) > 4) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".elf") == 0)
+--- src/Util.cpp
++++ src/Util.cpp
+@@ -478,7 +478,7 @@
+ {
+ cpuIsMultiBoot = false;
+ if(strlen(file) > 4) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".gba") == 0)
+@@ -502,7 +502,7 @@
+ bool utilIsGBImage(const char * file)
+ {
+ if(strlen(file) > 4) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".gb") == 0)
+@@ -522,7 +522,7 @@
+ bool utilIsZipFile(const char *file)
+ {
+ if(strlen(file) > 4) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".zip") == 0)
+@@ -552,7 +552,7 @@
+ bool utilIsGzipFile(const char *file)
+ {
+ if(strlen(file) > 3) {
+- char * p = strrchr(file,'.');
++ const char * p = strrchr(file,'.');
+
+ if(p != NULL) {
+ if(_stricmp(p, ".gz") == 0)
diff --git a/community/visualboyadvance/1.7.2-homedir.patch b/community/visualboyadvance/1.7.2-homedir.patch
new file mode 100644
index 000000000..e93d32cf5
--- /dev/null
+++ b/community/visualboyadvance/1.7.2-homedir.patch
@@ -0,0 +1,11 @@
+--- src/sdl/SDL.cpp.orig 2004-08-15 02:43:28.232750688 -0400
++++ src/sdl/SDL.cpp 2004-08-15 02:44:01.557684528 -0400
+@@ -887,7 +887,7 @@
+
+ if(home != NULL) {
+ fprintf(stderr, "Searching home directory: %s\n", home);
+- sprintf(path, "%s%c%s", home, FILE_SEP, name);
++ sprintf(path, "%s%c.%s%c%s", home, FILE_SEP, EXE_NAME, FILE_SEP, name);
+ f = fopen(path, "r");
+ if(f != NULL)
+ return f;
diff --git a/community/visualboyadvance/1.7.2-uninit.patch b/community/visualboyadvance/1.7.2-uninit.patch
new file mode 100644
index 000000000..b54c2e8ab
--- /dev/null
+++ b/community/visualboyadvance/1.7.2-uninit.patch
@@ -0,0 +1,13 @@
+diff -ru src/gtk/window.cpp src/gtk/window.cpp
+--- src/gtk/window.cpp 2004-05-14 00:31:58.000000000 +1000
++++ src/gtk/window.cpp 2007-03-17 14:57:22.000000000 -0500
+@@ -91,7 +91,8 @@
+ m_iFilterIBMin (FirstFilterIB),
+ m_iFilterIBMax (LastFilterIB),
+ m_iJoypadMin (1),
+- m_iJoypadMax (4)
++ m_iJoypadMax (4),
++ m_poKeymap (NULL)
+ {
+ m_poXml = _poXml;
+ m_poFileOpenDialog = NULL;
diff --git a/community/visualboyadvance/PKGBUILD b/community/visualboyadvance/PKGBUILD
new file mode 100644
index 000000000..4ae2014b7
--- /dev/null
+++ b/community/visualboyadvance/PKGBUILD
@@ -0,0 +1,48 @@
+# $Id: PKGBUILD 63767 2012-02-05 12:13:21Z ibiru $
+# Maintainer: Daenyth
+# Contributor: Eric Belanger <belanger@astro.umontreal.ca>
+# Contributor: Shahar Weiss <sweiss4@gmx.net>
+# Contributor: Alexander Rødseth <rodseth@gmail.com>
+pkgname=visualboyadvance
+pkgver=1.7.2
+pkgrel=9
+pkgdesc="Emulator for Gameboy and Gameboy Advance systems"
+arch=('x86_64' 'i686')
+url="http://vba.ngemu.com/"
+license=("GPL")
+depends=('libglademm' 'sdl')
+makedepends=('nasm')
+backup=('etc/VisualBoyAdvance.cfg')
+source=("http://downloads.sourceforge.net/sourceforge/vba/VisualBoyAdvance-src-$pkgver.tar.gz"
+ '1.7.2-deprecatedsigc++.patch' '1.7.2-gcc34.patch' '1.7.2-gcc41.patch'
+ '1.7.2-glibc.patch' '1.7.2-homedir.patch' '1.7.2-uninit.patch')
+md5sums=('cc02339e3fd8efd9f23121b0a2f81fd8'
+ '95596fbe499c23b8154142b5789cd630'
+ 'e7c816ac1adf832c8bd3f6b899d6b935'
+ '22c90f2d75856c8407f70b19038105a4'
+ 'e7a5188b483e2c4d2fee2a5efb088908'
+ 'ef02d9be59ab74afa9a8f12e17e359d4'
+ '004c269a9cdbfa0f4b7fd51978f78705')
+
+build() {
+ cd "$srcdir/VisualBoyAdvance-$pkgver"
+
+ sed -i 's:setjmp(png_ptr->jmpbuf):1+1==3:' src/Util.cpp
+
+ patch -Np0 < "$srcdir/$pkgver-homedir.patch"
+ patch -Np0 < "$srcdir/$pkgver-gcc34.patch"
+ patch -Np0 < "$srcdir/$pkgver-gcc41.patch"
+ patch -Np0 < "$srcdir/$pkgver-deprecatedsigc++.patch"
+ patch -Np0 < "$srcdir/$pkgver-uninit.patch"
+ patch -Np0 < "$srcdir/$pkgver-glibc.patch"
+ ./configure --prefix=/usr --sysconfdir=/etc --enable-gtk=2.4
+ make
+}
+
+package() {
+ cd "$srcdir/VisualBoyAdvance-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/xv/PKGBUILD b/community/xv/PKGBUILD
new file mode 100644
index 000000000..bbb0fdc18
--- /dev/null
+++ b/community/xv/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id: PKGBUILD 63794 2012-02-05 12:15:48Z ibiru $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgname=xv
+pkgver=3.10a
+pkgrel=15
+pkgdesc="A nice image viewer"
+arch=('i686' 'x86_64')
+url="http://www.trilon.com/xv/"
+license=('custom')
+depends=('libpng' 'libx11' 'libtiff')
+makedepends=('libxt' 'jasper')
+options=('!emptydirs')
+source=(ftp://ftp.trilon.com/pub/xv/${pkgname}-${pkgver}.tar.gz \
+ http://downloads.sourceforge.net/sourceforge/png-mng/xv-3.10a-jumbo-patches-20070520.tar.gz \
+ license.txt xv-3.10a-libpng15.patch)
+sha1sums=('092f8eb100f16d6b91c88b126c2b2b998eb09b99'
+ 'd00308c1687d9d803d26ef40c73d19a0f593c626'
+ '4561344e8f2c30eee9c55b14a14f062d89d6e7b7'
+ '3d19aa0c6ecc8b554081906babe0b4f9a6946da3')
+
+build() {
+ cd "${srcdir}"
+ tar -cJf xv-${pkgver}-source.tar.xz xv-${pkgver}
+ cd ${pkgname}-${pkgver}
+ patch -p1 < ../xv-3.10a-jumbo-fix-enh-patch-20070520.txt
+ patch -p0 < ../xv-3.10a-libpng15.patch
+ make JP2KDIR=/usr/lib
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ install -d "${pkgdir}"/usr/{bin,lib,share/man/man1}
+ make DESTDIR="${pkgdir}" PREFIX=/usr install
+ install -D -m644 "${srcdir}/license.txt" "${pkgdir}/usr/share/licenses/${pkgname}/license.txt"
+
+# installing source tarball (to comply with license)
+ install -D -m644 "${srcdir}/xv-${pkgver}-source.tar.xz" "${pkgdir}/usr/share/doc/xv/xv-${pkgver}-source.tar.xz"
+ ln -s "/usr/share/licenses/${pkgname}/license.txt" "${pkgdir}/usr/share/doc/xv/license.txt"
+}
diff --git a/community/xv/license.txt b/community/xv/license.txt
new file mode 100644
index 000000000..7dd87c233
--- /dev/null
+++ b/community/xv/license.txt
@@ -0,0 +1,139 @@
+XV Licensing Information
+------------------------
+XV IS SHAREWARE FOR PERSONAL USE ONLY.
+
+You may use XV for your own amusement, and if you find it nifty,
+useful, generally cool, or of some value to you, your registration fee
+would be greatly appreciated. $25 is the standard registration fee,
+though of course, larger amounts are quite welcome. Folks who donate
+$40 or more can receive a printed, bound copy of the XV manual for no
+extra charge. If you want one, just ask. BE SURE TO SPECIFY THE
+VERSION OF XV THAT YOU ARE USING!
+
+COMMERCIAL, GOVERNMENT, AND INSTITUTIONAL USERS MUST REGISTER THEIR
+COPIES OF XV.
+
+This does *not* mean that you are required to register XV just because
+you play with it on the workstation in your office. This falls under
+the heading of 'personal use'. If you are a sysadmin, you can put XV
+up in a public directory for your users amusement. Again, 'personal
+use', albeit plural.
+
+On the other hand, if you use XV in the course of doing your work,
+whatever your 'work' may happen to be, you *must* register your
+copy of XV. (Note: If you are a student, and you use XV to do
+classwork or research, you should get your professor/teacher/advisor
+to purchase an appropriate number of copies.)
+
+XV licenses are $25 each. You should purchase one license per
+workstation, or one per XV user, whichever is the smaller number. XV
+is *not* sold on a 'number of concurrent users' basis. If XV was some
+$1000 program, yes, that would be a reasonable request, but at $25,
+it's not. Also, given that XV is completely unlocked, there is no way
+to enforce any 'number of concurrent users' limits, so it isn't sold
+that way.
+
+Printed and bound copies of the 100-odd page XV manual are available
+for $15 each. Note that manuals are *only* sold with, at minimum, an
+equal number of licenses. (e.g. if you purchase 5 licenses, you can
+also purchase *up to* 5 copies of the manual)
+
+The source code to the program can be had (as a compressed 'tar' file
+split over a couple 3.5" MS-DOS formatted floppies) for $15, for those
+who don't have ftp capabilities.
+
+Orders outside the US and Canada must add an additional $5 per manual
+ordered to cover the additional shipping charges.
+
+Checks, money orders, and purchase orders are accepted. Credit cards
+are not. All forms of payment must be payable in US Funds. Checks
+must be payable through a US bank (or a US branch of a non-US bank).
+Purchase orders for less than $50, while still accepted, are not
+encouraged.
+
+All payments should be payable to 'John Bradley', and mailed to:
+ John Bradley
+ 1053 Floyd Terrace
+ Bryn Mawr, PA 19010
+ USA
+
+
+Site Licenses
+-------------
+If you are planning to purchase 10 or more licenses, site licenses are
+available, at a substantial discount. Site licenses let you run XV on
+any and all computing equipment at the site, for any purpose
+whatsoever. The site license covers the current version of XV, and
+any versions released within one year of the licensing date. You are
+also allowed to duplicate and distribute an unlimited number of copies
+of the XV manual, but only for use within the site. Covered versions
+of the software may be run in perpetuity.
+
+Also, it should be noted that a 'site' can be defined as anything
+you'd like. It can be a physical location (a room, building,
+location, etc.), an organizational grouping (a workgroup, department,
+division, etc.) or any other logical grouping ("the seventeen
+technical writers scattered about our company", etc.).
+
+The site license cost will be based on your estimate of the number of
+XV users or workstations at your site, whichever is the smaller
+number.
+
+If you are interested in obtaining a site license, please contact the
+author via electronic mail or FAX (see below for details). Send
+information regarding your site (the name or definition of the 'site',
+a physical address, a fax number, and an estimate of the number of
+users or workstations), and we'll get a site license out to you for
+your examination.
+
+
+Copyright Notice
+----------------
+XV is Copyright 1989, 1994 by John Bradley
+
+Permission to copy and distribute XV in its entirety, for
+non-commercial purposes, is hereby granted without fee, provided that
+this license information and copyright notice appear in all copies.
+
+If you redistribute XV, the *entire* contents of this distribution
+must be distributed, including the README, and INSTALL files, the
+sources, and the complete contents of the 'docs' directory.
+
+Note that distributing XV 'bundled' in with any product is considered
+to be a 'commercial purpose'.
+
+Also note that any copies of XV that are distributed MUST be built
+and/or configured to be in their 'unregistered copy' mode, so that it
+is made obvious to the user that XV is shareware, and that they should
+consider registering, or at least reading this information.
+
+The software may be modified for your own purposes, but modified
+versions may not be distributed without prior consent of the author.
+
+This software is provided 'as-is', without any express or implied
+warranty. In no event will the author be held liable for any damages
+arising from the use of this software.
+
+If you would like to do something with XV that this copyright
+prohibits (such as distributing it with a commercial product, using
+portions of the source in some other program, distributing registered
+copies, etc.), please contact the author (preferably via email).
+Arrangements can probably be worked out.
+
+
+The author may be contacted via:
+ US Mail: John Bradley
+ 1053 Floyd Terrace
+ Bryn Mawr, PA 19010
+
+ FAX: (610) 520-2042
+
+Electronic Mail regarding XV should be sent to one of these three addresses:
+ xv@devo.dccs.upenn.edu - general XV questions
+ xvbiz@devo.dccs.upenn.edu - all XV licensing questions
+ xvtech@devo.dccs.upenn.edu - bug reports, technical questions
+
+Please do *not* send electronic mail directly to the author, as he
+gets more than enough as it is.
+
+
diff --git a/community/xv/xv-3.10a-libpng15.patch b/community/xv/xv-3.10a-libpng15.patch
new file mode 100644
index 000000000..43c517668
--- /dev/null
+++ b/community/xv/xv-3.10a-libpng15.patch
@@ -0,0 +1,520 @@
+--- xvinfo.c
++++ xvinfo.c
+@@ -26,7 +26,7 @@
+ #define INFOHIGH 270
+
+ /* max length of an Info String */
+-#define ISTRLEN 80
++#define ISTRLEN 256
+
+ /* baseline of top line of text */
+ #define TOPBASE (36 + penn_height/2 + 4 + 8 + ASCENT)
+--- xvpng.c
++++ xvpng.c
+@@ -31,6 +31,7 @@
+
+ #ifdef HAVE_PNG
+
++#include "zlib.h"
+ #include "png.h"
+
+ /*** Stuff for PNG Dialog box ***/
+@@ -41,7 +42,9 @@
+ #define COMPRESSION 6 /* default zlib compression level, not max
+ (Z_BEST_COMPRESSION) */
+
+-#define HAVE_tRNS (info_ptr->valid & PNG_INFO_tRNS)
++/* old
++#define HAVE_tRNS (info_ptr->valid & PNG_INFO_tRNS) */
++#define HAVE_tRNS png_get_valid(png_ptr,info_ptr,PNG_INFO_tRNS)
+
+ #define DWIDE 86
+ #define DHIGH 104
+@@ -444,6 +447,10 @@
+ byte *p, *png_line;
+ char software[256];
+ char *savecmnt;
++ /* for storing values until all are accumulated, so that the image header can be set in full */
++ int _bit_depth,_color_type,_interlace_type,_compression_type,_filter_type;
++ png_uint_32 _width,_height;
++ png_time _mod_time;
+
+ if ((png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL,
+ png_xv_error, png_xv_warning)) == NULL) {
+@@ -458,7 +465,7 @@
+ FatalError(software);
+ }
+
+- if (setjmp(png_ptr->jmpbuf)) {
++ if (setjmp(png_jmpbuf(png_ptr))) {
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ return -1;
+ }
+@@ -489,8 +496,8 @@
+ png_set_filter(png_ptr, 0, filter);
+ }
+
+- info_ptr->width = w;
+- info_ptr->height = h;
++ _width = w;
++ _height = h;
+ if (w <= 0 || h <= 0) {
+ SetISTR(ISTR_WARNING, "%s: image dimensions out of range (%dx%d)",
+ fbasename, w, h);
+@@ -498,7 +505,7 @@
+ return -1;
+ }
+
+- info_ptr->interlace_type = interCB.val ? 1 : 0;
++ _interlace_type = interCB.val ? PNG_INTERLACE_ADAM7 : PNG_INTERLACE_NONE;
+
+ linesize = 0; /* quiet a compiler warning */
+
+@@ -542,40 +549,44 @@
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ return -1;
+ }
+- info_ptr->color_type = PNG_COLOR_TYPE_RGB;
+- info_ptr->bit_depth = 8;
++ _color_type = PNG_COLOR_TYPE_RGB;
++ _bit_depth = 8;
+ } else /* ptype == PIC8 */ {
+ linesize = w;
+- info_ptr->color_type = PNG_COLOR_TYPE_PALETTE;
++ _color_type = PNG_COLOR_TYPE_PALETTE;
+ if (numuniqcols <= 2)
+- info_ptr->bit_depth = 1;
++ _bit_depth = 1;
+ else
+ if (numuniqcols <= 4)
+- info_ptr->bit_depth = 2;
++ _bit_depth = 2;
+ else
+ if (numuniqcols <= 16)
+- info_ptr->bit_depth = 4;
++ _bit_depth = 4;
+ else
+- info_ptr->bit_depth = 8;
++ _bit_depth = 8;
+
+ for (i = 0; i < numuniqcols; i++) {
+ palette[i].red = r1[i];
+ palette[i].green = g1[i];
+ palette[i].blue = b1[i];
+ }
+- info_ptr->num_palette = numuniqcols;
+- info_ptr->palette = palette;
++/* cannot find a setter for this, unsure if it is necessary anymore...
+ info_ptr->valid |= PNG_INFO_PLTE;
++*/
++ /* set the header just in case it's needed */
++ png_set_IHDR(png_ptr,info_ptr,_width,_height,_bit_depth,_color_type,
++ _interlace_type,PNG_COMPRESSION_TYPE_DEFAULT,PNG_FILTER_TYPE_DEFAULT);
++ png_set_PLTE(png_ptr,info_ptr,palette,numuniqcols);
+ }
+ }
+
+ else if (colorType == F_GREYSCALE || colorType == F_BWDITHER) {
+- info_ptr->color_type = PNG_COLOR_TYPE_GRAY;
++ _color_type = PNG_COLOR_TYPE_GRAY;
+ if (colorType == F_BWDITHER) {
+ /* shouldn't happen */
+ if (ptype == PIC24) FatalError("PIC24 and B/W Stipple in WritePNG()");
+
+- info_ptr->bit_depth = 1;
++ _bit_depth = 1;
+ if (MONO(r1[0], g1[0], b1[0]) > MONO(r1[1], g1[1], b1[1])) {
+ remap[0] = 1;
+ remap[1] = 0;
+@@ -595,7 +606,7 @@
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ return -1;
+ }
+- info_ptr->bit_depth = 8;
++ _bit_depth = 8;
+ }
+ else /* ptype == PIC8 */ {
+ int low_precision;
+@@ -617,7 +628,7 @@
+ for (; i < 256; i++)
+ remap[i]=0; /* shouldn't be necessary, but... */
+
+- info_ptr->bit_depth = 8;
++ _bit_depth = 8;
+
+ /* Note that this fails most of the time because of gamma */
+ /* (and that would be a bug: GRR FIXME) */
+@@ -636,7 +647,7 @@
+ for (i = 0; i < numuniqcols; i++) {
+ remap[i] &= 0xf;
+ }
+- info_ptr->bit_depth = 4;
++ _bit_depth = 4;
+
+ /* try to adjust to 2-bit precision grayscale */
+
+@@ -652,7 +663,7 @@
+ for (i = 0; i < numuniqcols; i++) {
+ remap[i] &= 3;
+ }
+- info_ptr->bit_depth = 2;
++ _bit_depth = 2;
+
+ /* try to adjust to 1-bit precision grayscale */
+
+@@ -668,7 +679,7 @@
+ for (i = 0; i < numuniqcols; i++) {
+ remap[i] &= 1;
+ }
+- info_ptr->bit_depth = 1;
++ _bit_depth = 1;
+ }
+ }
+ }
+@@ -677,6 +688,9 @@
+ else
+ png_error(png_ptr, "Unknown colorstyle in WritePNG");
+
++ png_set_IHDR(png_ptr,info_ptr,_width,_height,_bit_depth,_color_type,
++ _interlace_type,PNG_COMPRESSION_TYPE_DEFAULT,PNG_FILTER_TYPE_DEFAULT);
++
+ if ((text = (png_textp)malloc(sizeof(png_text)))) {
+ sprintf(software, "XV %s", REVDATE);
+
+@@ -685,20 +699,22 @@
+ text->text = software;
+ text->text_length = strlen(text->text);
+
+- info_ptr->max_text = 1;
+- info_ptr->num_text = 1;
+- info_ptr->text = text;
++/* max_text seems to be internal only now, do not set
++ info_ptr->max_text = 1; */
++ png_set_text(png_ptr,info_ptr,text,1);
+ }
+
+ Display_Gamma = gDial.val; /* Save the current gamma for loading */
+
+ // GRR FIXME: add .Xdefaults option to omit writing gamma (size, cumulative errors when editing)--alternatively, modify save box to include "omit" checkbox
+- info_ptr->gamma = 1.0/gDial.val;
+- info_ptr->valid |= PNG_INFO_gAMA;
++ png_set_gAMA(png_ptr,info_ptr,1.0/gDial.val);
++/* doesn't seem to be a way to set valid directly anymore, unnecessary maybe..
++ info_ptr->valid |= PNG_INFO_gAMA; */
+
++/* might need to be png_write_info_before_PLTE() ... */
+ png_write_info(png_ptr, info_ptr);
+
+- if (info_ptr->bit_depth < 8)
++ if (_bit_depth < 8)
+ png_set_packing(png_ptr);
+
+ pass=png_set_interlace_handling(png_ptr);
+@@ -711,13 +727,13 @@
+ int j;
+ p = pic;
+ for (j = 0; j < h; ++j) {
+- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY) {
++ if (_color_type == PNG_COLOR_TYPE_GRAY) {
+ int k;
+ for (k = 0; k < w; ++k)
+ png_line[k] = ptype==PIC24 ? MONO(p[k*3], p[k*3+1], p[k*3+2]) :
+ remap[pc2nc[p[k]]];
+ png_write_row(png_ptr, png_line);
+- } else if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE) {
++ } else if (_color_type == PNG_COLOR_TYPE_PALETTE) {
+ int k;
+ for (k = 0; k < w; ++k)
+ png_line[k] = pc2nc[p[k]];
+@@ -739,28 +755,31 @@
+ (savecmnt = (char *)malloc((strlen(picComments) + 1)*sizeof(char)))) {
+ png_textp tp;
+ char *comment, *key;
++ int nt;
++ int mt;
+
+ strcpy(savecmnt, picComments);
+ key = savecmnt;
++ png_get_text(png_ptr,info_ptr,&tp,&mt); /* to get 'max_text' */
+ tp = text;
+- info_ptr->num_text = 0;
++ nt = 0;
+
+ comment = strchr(key, ':');
+
+ do {
+ /* Allocate a larger structure for comments if necessary */
+- if (info_ptr->num_text >= info_ptr->max_text)
++ if (nt >= mt)
+ {
+ if ((tp =
+- realloc(text, (info_ptr->num_text + 2)*sizeof(png_text))) == NULL)
++ realloc(text, (nt + 2)*sizeof(png_text))) == NULL)
+ {
+ break;
+ }
+ else
+ {
+ text = tp;
+- tp = &text[info_ptr->num_text];
+- info_ptr->max_text += 2;
++ tp = &text[nt];
++ mt += 2;
+ }
+ }
+
+@@ -810,7 +829,7 @@
+ }
+
+ tp->compression = tp->text_length > 640 ? 0 : -1;
+- info_ptr->num_text++;
++ nt++;
+ tp++;
+ }
+ }
+@@ -834,27 +853,29 @@
+ tp->text = key;
+ tp->text_length = q - key;
+ tp->compression = tp->text_length > 750 ? 0 : -1;
+- info_ptr->num_text++;
++ nt++;
+ key = NULL;
+ }
+ } while (key && *key);
++ png_set_text(png_ptr,info_ptr,text,nt);
+ }
+ else {
+- info_ptr->num_text = 0;
++ png_set_text(png_ptr,info_ptr,text,0);
+ }
+ }
+- info_ptr->text = text;
+
+- png_convert_from_time_t(&(info_ptr->mod_time), time(NULL));
+- info_ptr->valid |= PNG_INFO_tIME;
++ png_convert_from_time_t(&_mod_time, time(NULL));
++ png_set_tIME(png_ptr,info_ptr,&_mod_time);
++/* dunno how to set validity
++ info_ptr->valid |= PNG_INFO_tIME; */
+
+ png_write_end(png_ptr, info_ptr);
+ fflush(fp); /* just in case we core-dump before finishing... */
+
+ if (text) {
+ free(text);
+- /* must do this or png_destroy_write_struct() 0.97+ will free text again: */
+- info_ptr->text = (png_textp)NULL;
++ /* must do this or png_destroy_write_struct() 0.97+ will free text again:
++ info_ptr->text = (png_textp)NULL; */
+ if (savecmnt)
+ {
+ free(savecmnt);
+@@ -886,6 +907,14 @@
+ int pass;
+ int gray_to_rgb;
+ size_t commentsize;
++ /* temp storage vars for libpng15 migration */
++ int _bit_depth,_color_type,_interlace_type,_compression_type,_filter_type,_num_text,_num_palette;
++ png_uint_32 _width,_height;
++ png_timep _mod_time;
++ double _gamma;
++ png_textp _text;
++ png_colorp _palette;
++ png_color_16p _background;
+
+ fbasename = BaseName(fname);
+
+@@ -921,7 +950,7 @@
+ FatalError("malloc failure in LoadPNG");
+ }
+
+- if (setjmp(png_ptr->jmpbuf)) {
++ if (setjmp(png_jmpbuf(png_ptr))) {
+ fclose(fp);
+ png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
+ if (!read_anything) {
+@@ -945,8 +974,10 @@
+ #endif
+ png_read_info(png_ptr, info_ptr);
+
+- pinfo->w = pinfo->normw = info_ptr->width;
+- pinfo->h = pinfo->normh = info_ptr->height;
++ png_get_IHDR(png_ptr,info_ptr,&_width,&_height,&_bit_depth,&_color_type,&_interlace_type,NULL,NULL);
++
++ pinfo->w = pinfo->normw = _width;
++ pinfo->h = pinfo->normh = _height;
+ if (pinfo->w <= 0 || pinfo->h <= 0) {
+ SetISTR(ISTR_WARNING, "%s: image dimensions out of range (%dx%d)",
+ fbasename, pinfo->w, pinfo->h);
+@@ -957,9 +988,9 @@
+ pinfo->frmType = F_PNG;
+
+ sprintf(pinfo->fullInfo, "PNG, %d bit ",
+- info_ptr->bit_depth * info_ptr->channels);
++ _bit_depth * png_get_channels(png_ptr,info_ptr));
+
+- switch(info_ptr->color_type) {
++ switch(_color_type) {
+ case PNG_COLOR_TYPE_PALETTE:
+ strcat(pinfo->fullInfo, "palette color");
+ break;
+@@ -983,15 +1014,17 @@
+
+ sprintf(pinfo->fullInfo + strlen(pinfo->fullInfo),
+ ", %sinterlaced. (%d bytes)",
+- info_ptr->interlace_type ? "" : "non-", filesize);
++ _interlace_type ? "" : "non-", filesize);
+
+- sprintf(pinfo->shrtInfo, "%lux%lu PNG", info_ptr->width, info_ptr->height);
++ sprintf(pinfo->shrtInfo, "%lux%lu PNG", _width, _height);
+
+- if (info_ptr->bit_depth < 8)
++ if (_bit_depth < 8)
+ png_set_packing(png_ptr);
+
+- if (info_ptr->valid & PNG_INFO_gAMA)
+- png_set_gamma(png_ptr, Display_Gamma, info_ptr->gamma);
++ if (png_get_valid(png_ptr,info_ptr,PNG_INFO_gAMA)) {
++ png_get_gAMA(png_ptr,info_ptr,&_gamma);
++ png_set_gamma(png_ptr, Display_Gamma, _gamma);
++ }
+ /*
+ *else
+ * png_set_gamma(png_ptr, Display_Gamma, 0.45);
+@@ -1000,7 +1033,7 @@
+ gray_to_rgb = 0; /* quiet a compiler warning */
+
+ if (have_imagebg) {
+- if (info_ptr->bit_depth == 16) {
++ if (_bit_depth == 16) {
+ my_background.red = imagebgR;
+ my_background.green = imagebgG;
+ my_background.blue = imagebgB;
+@@ -1013,8 +1046,8 @@
+ }
+ png_set_background(png_ptr, &my_background, PNG_BACKGROUND_GAMMA_SCREEN,
+ 0, Display_Gamma);
+- if ((info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA ||
+- (info_ptr->color_type == PNG_COLOR_TYPE_GRAY && HAVE_tRNS)) &&
++ if ((_color_type == PNG_COLOR_TYPE_GRAY_ALPHA ||
++ (_color_type == PNG_COLOR_TYPE_GRAY && HAVE_tRNS)) &&
+ (imagebgR != imagebgG || imagebgR != imagebgB)) /* i.e., colored bg */
+ {
+ png_set_gray_to_rgb(png_ptr);
+@@ -1022,8 +1055,9 @@
+ gray_to_rgb = 1;
+ }
+ } else {
+- if (info_ptr->valid & PNG_INFO_bKGD) {
+- png_set_background(png_ptr, &info_ptr->background,
++ if (png_get_valid(png_ptr,info_ptr,PNG_INFO_bKGD)) {
++ png_get_bKGD(png_ptr,info_ptr,&_background);
++ png_set_background(png_ptr, _background,
+ PNG_BACKGROUND_GAMMA_FILE, 1, 1.0);
+ } else {
+ my_background.red = my_background.green = my_background.blue =
+@@ -1033,13 +1067,13 @@
+ }
+ }
+
+- if (info_ptr->bit_depth == 16)
++ if (_bit_depth == 16)
+ png_set_strip_16(png_ptr);
+
+- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY ||
+- info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
++ if (_color_type == PNG_COLOR_TYPE_GRAY ||
++ _color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
+ {
+- if (info_ptr->bit_depth == 1)
++ if (_bit_depth == 1)
+ pinfo->colType = F_BWDITHER;
+ else
+ pinfo->colType = F_GREYSCALE;
+@@ -1049,9 +1083,11 @@
+ pass=png_set_interlace_handling(png_ptr);
+
+ png_read_update_info(png_ptr, info_ptr);
++ /* get HIDR again just in case the info_ptr changed */
++ png_get_IHDR(png_ptr,info_ptr,&_width,&_height,&_bit_depth,&_color_type,&_interlace_type,NULL,NULL);
+
+- if (info_ptr->color_type == PNG_COLOR_TYPE_RGB ||
+- info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA || gray_to_rgb)
++ if (_color_type == PNG_COLOR_TYPE_RGB ||
++ _color_type == PNG_COLOR_TYPE_RGB_ALPHA || gray_to_rgb)
+ {
+ linesize = 3 * pinfo->w;
+ if (linesize/3 < pinfo->w) { /* know pinfo->w > 0 (see above) */
+@@ -1065,16 +1101,17 @@
+ } else {
+ linesize = pinfo->w;
+ pinfo->type = PIC8;
+- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY ||
+- info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
++ if (_color_type == PNG_COLOR_TYPE_GRAY ||
++ _color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
+ for (i = 0; i < 256; i++)
+ pinfo->r[i] = pinfo->g[i] = pinfo->b[i] = i;
+ } else {
+ pinfo->colType = F_FULLCOLOR;
+- for (i = 0; i < info_ptr->num_palette; i++) {
+- pinfo->r[i] = info_ptr->palette[i].red;
+- pinfo->g[i] = info_ptr->palette[i].green;
+- pinfo->b[i] = info_ptr->palette[i].blue;
++ png_get_PLTE(png_ptr,info_ptr,&_palette,&_num_palette);
++ for (i = 0; i < _num_palette; i++) {
++ pinfo->r[i] = _palette[i].red;
++ pinfo->g[i] = _palette[i].green;
++ pinfo->b[i] = _palette[i].blue;
+ }
+ }
+ }
+@@ -1092,7 +1129,7 @@
+ png_error(png_ptr, "can't allocate space for PNG image");
+ }
+
+- png_start_read_image(png_ptr);
++ /*png_start_read_image(png_ptr); -- causes a warning and seems to be unnecessary */
+
+ for (i = 0; i < pass; i++) {
+ byte *p = pinfo->pic;
+@@ -1106,22 +1143,23 @@
+
+ png_read_end(png_ptr, info_ptr);
+
+- if (info_ptr->num_text > 0) {
++ png_get_text(png_ptr,info_ptr,&_text,&_num_text);
++ if (_num_text > 0) {
+ commentsize = 1;
+
+- for (i = 0; i < info_ptr->num_text; i++)
+- commentsize += strlen(info_ptr->text[i].key) + 1 +
+- info_ptr->text[i].text_length + 2;
++ for (i = 0; i < _num_text; i++)
++ commentsize += strlen(_text[i].key) + 1 +
++ _text[i].text_length + 2;
+
+ if ((pinfo->comment = malloc(commentsize)) == NULL) {
+ png_warning(png_ptr,"can't allocate comment string");
+ }
+ else {
+ pinfo->comment[0] = '\0';
+- for (i = 0; i < info_ptr->num_text; i++) {
+- strcat(pinfo->comment, info_ptr->text[i].key);
++ for (i = 0; i < _num_text; i++) {
++ strcat(pinfo->comment, _text[i].key);
+ strcat(pinfo->comment, "::");
+- strcat(pinfo->comment, info_ptr->text[i].text);
++ strcat(pinfo->comment, _text[i].text);
+ strcat(pinfo->comment, "\n");
+ }
+ }
+@@ -1143,7 +1181,7 @@
+ {
+ SetISTR(ISTR_WARNING,"%s: libpng error: %s", fbasename, message);
+
+- longjmp(png_ptr->jmpbuf, 1);
++ longjmp(png_jmpbuf(png_ptr), 1);
+ }
+
+