diff options
Diffstat (limited to 'pcr')
84 files changed, 5736 insertions, 56 deletions
diff --git a/pcr/bsnes/PKGBUILD b/pcr/bsnes/PKGBUILD index 34a8031e9..04c61bc30 100644..100755 --- a/pcr/bsnes/PKGBUILD +++ b/pcr/bsnes/PKGBUILD @@ -1,63 +1,77 @@ # Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com> + +# Split-package support hack for AUR. pkgname='bsnes' -pkgver=088 -pkgrel=1 -pkgdesc="Super Nintendo Entertainment System (SNES) emulator focused on accuracy." + +true && pkgbase='bsnes' +true && pkgname=('bsnes' 'bsnes-purify') +pkgver=090 +pkgrel=2 +pkgdesc='Super Nintendo Entertainment System (SNES) emulator focused on accuracy.' arch=('i686' 'x86_64') -url="http://byuu.org/bsnes/" +url='http://byuu.org/bsnes/' license=('GPL3') -depends=('libao' 'libgl' 'libxv' 'openal' 'sdl' 'qt>=4.7.0') +depends=('libao' 'libgl' 'libxv' 'openal' 'sdl' 'qt>=4.8.0') makedepends=('pkgconfig' 'mesa') install='bsnes.install' changelog='bsnes.changelog' -source=('http://bsnes.googlecode.com/files/bsnes_v088-source.tar.xz' 'add-usr-share-fallback.patch') -md5sums=('a3b2e9ba28b752768bb9f777049b1239' '8fde2bb14f8dafbd5276f9a6092b7ffb') - +source=('http://bsnes.googlecode.com/files/bsnes_v090-source.tar.xz') +md5sums=('c9642dae4255f5c6022b2217d64d3bc5') -# Build the accuracy profile (you can also choose 'performance' or 'compatibility') +__base_path="${srcdir}/${pkgbase}_v${pkgver}-source" +# Build the accuracy profile (you can also choose 'performance' or 'compatibility'). __profile='accuracy' build() { - cd "${srcdir}/${pkgname}_v${pkgver}-source/${pkgname}" + cd "${__base_path}/${pkgname}" # Makefile hacks: # Disable pulseaudio. sed -e 's|audio.pulseaudio ||' \ -e 's|audio.pulseaudiosimple ||' \ - -i 'target-ui/Makefile' + -i 'target-ethos/Makefile' # Don't copy the cheat file. sed -e '/mkdir -p ~\/.config\/$(name)/{N;d}' \ -e '/cp data\/cheats.xml/{N;d}' \ - -i 'target-ui/Makefile' + -i 'target-ethos/Makefile' # Don't use sudo sed -e 's/sudo install/install/' \ - -i 'target-ui/Makefile' - - # Apply patch to make bsnes look in /usr/share/bsnes for filters/shaders. - patch -p0 < "${srcdir}/add-usr-share-fallback.patch" + -i 'target-ethos/Makefile' # Fix building with QT >= 4.8.0. moc -i -Iphoenix/qt/ -o phoenix/qt/platform.moc phoenix/qt/platform.moc.hpp # Compile bsnes. - make flags="$CXXFLAGS -I. -DPROFILE_${__profile^^}" compiler=gcc platform=x profile=${__profile} phoenix=qt + make flags="$CXXFLAGS -I. -DPROFILE_${__profile^^}" compiler=gcc platform=x \ + profile=${__profile} phoenix=qt target=ethos + + # Compile purify. + cd "${__base_path}/purify" + moc -i -Iphoenix/qt/ -o phoenix/qt/platform.moc phoenix/qt/platform.moc.hpp + sed -e 's|link := -s|link := -s -lX11|' -i 'Makefile' + make compiler=gcc platform=x phoenix=qt +} + +package_bsnes-purify() { + pkgver=01 + pkgdesc='ROM cleanup utility for bsnes.' + install='' - # Compile the filters. - cd "${srcdir}/${pkgname}_v${pkgver}-source/snesfilter" - make compiler=gcc platform=x + cd "${__base_path}/purify" + install --directory "${pkgdir}/usr/bin" + install --mode=755 "${__base_path}/purify/purify" "${pkgdir}/usr/bin/${pkgbase}-purify" } -package() { - cd "${srcdir}/${pkgname}_v${pkgver}-source/${pkgname}" - make install profile=${__profile} DESTDIR="${pkgdir}" prefix=/usr +package_bsnes() { + pkgver=090 + pkgrel=2 + pkgdesc='Super Nintendo Entertainment System (SNES) emulator focused on accuracy.' + url='http://byuu.org/bsnes/' - # Install the filters/shaders - install --directory "${pkgdir}/usr/share/${pkgname}/filters" - install -D --mode=644 "${srcdir}/${pkgname}_v${pkgver}-source"/snesfilter/out/*.filter "${pkgdir}/usr/share/${pkgname}/filters" - install --directory "${pkgdir}/usr/share/${pkgname}/shaders" - install -D --mode=644 "${srcdir}/${pkgname}_v${pkgver}-source"/snesshader/*.shader "${pkgdir}/usr/share/${pkgname}/shaders" + cd "${__base_path}/${pkgname}" + make install profile=${__profile} DESTDIR="${pkgdir}" prefix=/usr # Install the user-profile into /usr/share/bsnes/profile. install --directory "${pkgdir}/usr/share/${pkgname}/profile" - cp -R "${srcdir}/${pkgname}_v${pkgver}-source/${pkgname}"/profile/* "${pkgdir}/usr/share/${pkgname}/profile" + cp -R "${__base_path}/${pkgname}"/profile/* "${pkgdir}/usr/share/${pkgname}/profile" } diff --git a/pcr/bsnes/add-usr-share-fallback.patch b/pcr/bsnes/add-usr-share-fallback.patch deleted file mode 100644 index 4d2b5cf3c..000000000 --- a/pcr/bsnes/add-usr-share-fallback.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- target-ui/general/main-window.cpp 2012-02-03 23:33:00.000000000 +0100 -+++ target-ui/general/main-window.cpp 2012-02-13 18:02:04.988109569 +0100 -@@ -331,6 +331,10 @@ - path = { application->userpath, "filters/" }; - files = directory::files(path, "*.filter"); - } -+ if(files.size() == 0) { -+ path = { "/usr/share/bsnes/", "filters/" }; -+ files = directory::files(path, "*.filter"); -+ } - array<RadioItem&> group; - - settingsVideoFilterList = new RadioItem[files.size()]; -@@ -362,6 +366,10 @@ - path = { application->userpath, "shaders/" }; - files = directory::files(path, { "*.", config->video.driver, ".shader" }); - } -+ if(files.size() == 0) { -+ path = { "/usr/share/bsnes/", "shaders/" }; -+ files = directory::files(path, { "*.", config->video.driver, ".shader" }); -+ } - array<RadioItem&> group; - - settingsVideoShaderList = new RadioItem[files.size()]; diff --git a/pcr/bsnes/bsnes.changelog b/pcr/bsnes/bsnes.changelog index 589a929d2..9328c9aee 100644..100755 --- a/pcr/bsnes/bsnes.changelog +++ b/pcr/bsnes/bsnes.changelog @@ -1,3 +1,16 @@ +2012-08-07 [vEX] <niechift.dot.vex.at.gmail.dot.com> + + * 090-2 : + Make sure to build bsnes purify with QT. + +2012-08-07 [vEX] <niechift.dot.vex.at.gmail.dot.com> + + * 090-1 : + New upstream release. + + * add-usr-share-fallback.patch : + Remove patch as filter/shader support has been removed. + 2012-04-24 [vEX] <niechift.dot.vex.at.gmail.dot.com> * 088-1 : diff --git a/pcr/bsnes/bsnes.install b/pcr/bsnes/bsnes.install index f18765649..2e40f6bba 100644..100755 --- a/pcr/bsnes/bsnes.install +++ b/pcr/bsnes/bsnes.install @@ -6,7 +6,13 @@ post_install() { ## arg 1: the new package version ## arg 2: the old package version post_upgrade() { - echo 'You should copy the /usr/share/bsnes/profile/ data into your' - echo '~/.config/bsnes/ folder unless you have already done so. It contains' - echo 'files that the emulator needs to function properly.' + echo 'As of 090 bsnes requires a new directory layout for the ROMs. You can' + echo 'use bsnes-purify to create it. You should also copy the ' + echo '/usr/share/bsnes/profile/ data into your ~/.config/bsnes/ folder unless' + echo 'you have already done so. It contains files that the emulator needs to' + echo 'function properly.' + + if [ "$(vercmp $2 090)" -lt 0 ]; then + echo 'The profile data changed with release 090, update your files.' + fi } diff --git a/pcr/cambozola/PKGBUILD b/pcr/cambozola/PKGBUILD new file mode 100644 index 000000000..27664f181 --- /dev/null +++ b/pcr/cambozola/PKGBUILD @@ -0,0 +1,26 @@ +# Maintainer: Ernie Brodeur <ebrodeur@ujami.net> +pkgname=cambozola +pkgver=0.92 +pkgrel=1 +pkgdesc="A java servlet for streaming JPEG's from ip Cameras." +url="http://www.charliemouse.com:8080/code/cambozola/" +arch=('x86_64' 'i686') +license=('GPL') +depends=('java-runtime') +makedepends=('apache-ant') +source=("${url}${pkgname}-${pkgver}.tar.gz") +md5sums=('602daba851e726e2399445fda3ca718f') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ant +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + mkdir -p ${pkgdir}/usr/share/${pkgname} + cp dist/* ${pkgdir}/usr/share/${pkgname}/ +} + +# vim:set ts=2 sw=2 et: + diff --git a/pcr/chiliproject/PKGBUILD b/pcr/chiliproject/PKGBUILD new file mode 100644 index 000000000..4f933934a --- /dev/null +++ b/pcr/chiliproject/PKGBUILD @@ -0,0 +1,41 @@ +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgname=chiliproject +pkgver=3.3.0 +pkgrel=1 +pkgdesc="Chiliproject is a fork of Redmine, a flexible project management web application written using Ruby on Rails." +arch=('any') +url="https://www.chiliproject.org" +license=('GPL2') +depends=('ruby' 'ruby-bundler' 'mysql' 'libxml2' 'libxslt' 'imagemagick' 'pkg-config') +provides=('chiliproject') +backup=('var/lib/chiliproject/config/database.yml' + 'var/lib/chiliproject/config/configuration.yml') +makedepends=('glibc') +optdepends=('git: Git repository browsing' + 'subversion>=1.3.0: Subversion repository browsing' + 'darcs: Darcs repository browsing' + 'bzr: Bazaar repository browsing' + 'mercurial: Mercurial repository browsing') +options=() +install=chiliproject.install +source=("https://www.chiliproject.org/attachments/download/360/chiliproject-$pkgver.tar.gz") +md5sums=('4fa4a825cf0cd91d7495180a19bc4c11') + +build() { + return 0 +} + +package() { + cd "$srcdir/chiliproject-$pkgver" + + # install in /var/lib + _instdir="$pkgdir/var/lib/chiliproject" + mkdir -p ${_instdir} + cp -ra . ${_instdir} + + # create required directories + mkdir -p "${_instdir}/public/plugin_assets" +} + +# vim:set ts=4 sw=4 et: diff --git a/pcr/chiliproject/chiliproject.install b/pcr/chiliproject/chiliproject.install new file mode 100644 index 000000000..cb4622f09 --- /dev/null +++ b/pcr/chiliproject/chiliproject.install @@ -0,0 +1,17 @@ +adjust_perms(){ + chown -R http:http "/var/lib/chiliproject" 1>/dev/null + for dir in /var/lib/chiliproject/{files,log,tmp,public/plugin_assets}; do + chown -R http:http "$dir" 1>/dev/null + chmod -R 755 "$dir" 1>/dev/null + done +} + +post_install() { + adjust_perms + echo 'take a look at https://wiki.archlinux.org/index.php?title=Chiliproject for further setup instructions.' +} + +post_upgrade() { + adjust_perms + echo 'take a look at https://wiki.archlinux.org/index.php?title=Chiliproject for further setup instructions.' +} diff --git a/pcr/csync-owncloud/PKGBUILD b/pcr/csync-owncloud/PKGBUILD new file mode 100644 index 000000000..daba8c568 --- /dev/null +++ b/pcr/csync-owncloud/PKGBUILD @@ -0,0 +1,53 @@ +# Maintainer: Kuba Serafinowski <zizzfizzix(at)gmail(dot)com> +# https://github.com/zizzfizzix/pkgbuilds + +############################################################## +#### The section below can be adjusted to suit your needs #### +############################################################## + +# What type of build do you want? +# See http://techbase.kde.org/Development/CMake/Addons_for_KDE#Buildtypes to check what is supported. +# Default is RelWithDebInfo to help with debugging. + +_buildtype="RelWithDebInfo" + +############################################################## + +_name=csync +pkgname=csync-owncloud +pkgver=0.50.8 +pkgrel=1 +pkgdesc="A file synchronizer especially designed for you, the normal user." +arch=("i686" "x86_64") +url="http://www.csync.org" +license=('GPL2') +depends=('log4c' 'sqlite3' 'iniparser' 'neon' 'smbclient' 'libssh') +makedepends=('cmake') +#optdepends=('samba: smb support' 'libssh: sftp support') +provides=('csync') +conflicts=('csync') +options=(!strip) +source=("http://download.owncloud.com/download/${_name}-${pkgver}.tar.bz2") +md5sums=('322f6fa22ca0e8cd05f23dc0d075e7ca') + +# Clean options array to strip pkg if release buildtype is chosen +if [[ ${_buildtype} == "Release" ]] || [[ ${_buildtype} == "release" ]]; then + options=() +fi + +build() { + if [[ -e ${srcdir}/${_name}-${pkgver}-build ]]; then rm -rf ${srcdir}/${_name}-${pkgver}-build; fi + mkdir ${srcdir}/${_name}-${pkgver}-build + cd ${srcdir}/${_name}-${pkgver}-build + + cmake -DCMAKE_BUILD_TYPE=${_buildtype} \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DSYSCONF_INSTALL_DIR=/etc \ + -DLOG_TO_CALLBACK=on \ + ../${_name}-${pkgver} + make +} +package() { + cd ${srcdir}/${_name}-${pkgver}-build + make DESTDIR=${pkgdir} install +} diff --git a/pcr/d0_blind_id-git/PKGBUILD b/pcr/d0_blind_id-git/PKGBUILD new file mode 100755 index 000000000..bfda13205 --- /dev/null +++ b/pcr/d0_blind_id-git/PKGBUILD @@ -0,0 +1,44 @@ +# Maintainer: MrBougo <bougospam at gmail dot com> +pkgname=d0_blind_id-git +pkgver=20120716 +pkgrel=1 +pkgdesc="Cryptographic library for identification with Schnorr ID scheme and Blind RSA Signatures" +arch=('i686' 'x86_64') +url="http://github.com/divVerent/d0_blind_id" +license=('BSD') +depends=('gmp') +makedepends=('git') +conflicts=() +options=('!libtool') + +_gitroot="git://git.xonotic.org/xonotic/d0_blind_id.git" +_gitname="d0_blind_id" + +build() { + cd "$srcdir" + msg "Connecting to GIT server...." + + if [ -d $_gitname ] ; then + cd $_gitname && git pull origin + msg "The local files are updated." + else + git clone $_gitroot $_gitname + fi + + msg "GIT checkout done or server timeout" + msg "Starting make..." + + rm -rf "$srcdir/$_gitname-build" + git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build" + cd "$srcdir/$_gitname-build" + + sh autogen.sh + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$_gitname-build" + make DESTDIR="$pkgdir/" install + install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING +} diff --git a/pcr/debootstrap/PKGBUILD b/pcr/debootstrap/PKGBUILD new file mode 100644 index 000000000..9f03c48db --- /dev/null +++ b/pcr/debootstrap/PKGBUILD @@ -0,0 +1,20 @@ +# $Id$ +# Maintainer: André Silva <emulatorman@lavabit.com> + +pkgname=debootstrap +pkgver=1.0.26 +pkgrel=1 +pkgdesc="A tool used to create a gNewSense base system from scratch, without requiring the availability of dpkg or apt" +arch=('any') +license=('GPL') +url="http://www.gnewsense.org" +depends=('bash' 'wget') +source=("http://archive.gnewsense.org/gnewsense-three/gnewsense/pool/overlays/parkes/kgoetz/${pkgname}/${pkgname}_${pkgver}+squeeze1+gnewsense1_all.deb") +install="debootstrap.install" +md5sums=('2049317eac54c0fac6c3201a90fadc18') + +build(){ + tar -xzf "${srcdir}/data.tar.gz" -C "${pkgdir}/" + # doesn't work with gpg 2.x, patch to point to gpgv1 + sed 's/gpgv/gpgv1/g;' -i "${pkgdir}/usr/sbin/debootstrap" "${pkgdir}/usr/share/debootstrap/functions" +} diff --git a/pcr/debootstrap/debootstrap.install b/pcr/debootstrap/debootstrap.install new file mode 100644 index 000000000..85a99f160 --- /dev/null +++ b/pcr/debootstrap/debootstrap.install @@ -0,0 +1,14 @@ +post_install() { + if [ "$(uname -m)" = "x86_64" ]; then + darch="amd64" + elif [ "$(uname -m)" = "i386" ]; then + darch="i386" + else + darch="mips64el" + fi + echo "$darch" > /usr/share/debootstrap/arch +} + +pre_remove() { + rm -f /usr/share/debootstrap/arch +} diff --git a/pcr/etckeeper/.gitignore b/pcr/etckeeper/.gitignore new file mode 100644 index 000000000..b4a9ca909 --- /dev/null +++ b/pcr/etckeeper/.gitignore @@ -0,0 +1 @@ +etckeeper-0.63/ diff --git a/pcr/etckeeper/PKGBUILD b/pcr/etckeeper/PKGBUILD new file mode 100644 index 000000000..163c320db --- /dev/null +++ b/pcr/etckeeper/PKGBUILD @@ -0,0 +1,43 @@ +# Maintainer (Parabola): Luke Shumaker <lukeshu@sbcglobal.net> +# Maintainer (AUR): Buce <dmbuce@gmail.com> +# Contributor: Danie Roux <accounts@danieroux.com> + +# This requires makepkg newer than 4.0.3, which at this time means from git + +pkgname=etckeeper +pkgver=0.64 +pkgdesc="collection of tools to let /etc be stored in a git, hg, bzr or darcs repository." +url="http://kitenet.net/~joey/code/etckeeper/" +license=('GPL2') + +pkgrel=1 +arch=('any') +depends=('inetutils' 'python2') +makedepends=('bzr') # bzr must be there at compile time to have bzr support +optdepends=('git' 'hg' 'bzr' 'darcs') +backup=(etc/etckeeper/etckeeper.conf) +source=("etckeeper-$pkgver::git://git.kitenet.net/etckeeper#tag=${pkgver}" + etckeeper-pacman.patch + etckeeper-archlinux.conf) + +build() { + cd "$srcdir/etckeeper-$pkgver" + + # add pacman support to list-to `list-installed` + patch -p0 -i "$srcdir/etckeeper-pacman.patch" + + # use python2 + sed -i 's@^#!/usr/bin/python$@&2@' etckeeper-bzr/__init__.py + + make CONFFILE="$srcdir/etckeeper-archlinux.conf" build +} + +package() { + cd "$srcdir/etckeeper-$pkgver" + + make CONFFILE="$srcdir/etckeeper-archlinux.conf" DESTDIR=$pkgdir install +} + +md5sums=('SKIP' + 'f1f00bf9331d1ef7f29b0ac29cdfcbda' + '99d8d2838f49fa0f2f21c9e37948100d') diff --git a/pcr/etckeeper/etckeeper-archlinux.conf b/pcr/etckeeper/etckeeper-archlinux.conf new file mode 100644 index 000000000..83e2c577d --- /dev/null +++ b/pcr/etckeeper/etckeeper-archlinux.conf @@ -0,0 +1,38 @@ +# The VCS to use. +#VCS="hg" +VCS="git" +#VCS="bzr" +#VCS="darcs" + +# Options passed to git commit when run by etckeeper. +GIT_COMMIT_OPTIONS="" + +# Options passed to hg commit when run by etckeeper. +HG_COMMIT_OPTIONS="" + +# Options passed to bzr commit when run by etckeeper. +BZR_COMMIT_OPTIONS="" + +# Options passed to darcs record when run by etckeeper. +DARCS_COMMIT_OPTIONS="-a" + +# Uncomment to avoid etckeeper committing existing changes +# to /etc automatically once per day. +#AVOID_DAILY_AUTOCOMMITS=1 + +# Uncomment the following to avoid special file warning +# (the option is enabled automatically by cronjob regardless). +#AVOID_SPECIAL_FILE_WARNING=1 + +# Uncomment to avoid etckeeper committing existing changes to +# /etc before installation. It will cancel the installation, +# so you can commit the changes by hand. +#AVOID_COMMIT_BEFORE_INSTALL=1 + +# The high-level package manager that's being used. +# (apt, pacman-g2, yum etc) +HIGHLEVEL_PACKAGE_MANAGER=pacman + +# The low-level package manager that's being used. +# (dpkg, rpm, pacman-g2, etc) +LOWLEVEL_PACKAGE_MANAGER=pacman diff --git a/pcr/etckeeper/etckeeper-pacman.patch b/pcr/etckeeper/etckeeper-pacman.patch new file mode 100644 index 000000000..1fb4acb62 --- /dev/null +++ b/pcr/etckeeper/etckeeper-pacman.patch @@ -0,0 +1,9 @@ +--- list-installed.d/50list-installed.orig 2012-10-21 23:45:30.000000000 -0400 ++++ list-installed.d/50list-installed 2012-10-21 23:45:39.000000000 -0400 +@@ -7,4 +7,6 @@ + egrep '(ok installed|ok config-files)' | cut -f2,3 + elif [ "$LOWLEVEL_PACKAGE_MANAGER" = rpm ]; then + rpm -qa --qf "%|epoch?{%{epoch}}:{0}|:%{name}-%{version}-%{release}.%{arch}\n" | sort ++elif [ "$LOWLEVEL_PACKAGE_MANAGER" = pacman ]; then ++ { pacman -Qd|sed 's/.*/& (dep)/'; pacman -Qe|sed 's/.*/& (explicit)/'; } |sort + fi diff --git a/pcr/ffmpeg-static/PKGBUILD b/pcr/ffmpeg-static/PKGBUILD new file mode 100644 index 000000000..67ce115bb --- /dev/null +++ b/pcr/ffmpeg-static/PKGBUILD @@ -0,0 +1,61 @@ +# $Id$ +# Maintainer : Ionut Biru <ibiru@archlinux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> +# Contributor: Paul Mattal <paul@archlinux.org> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgname=ffmpeg-static +pkgver=1.0 +pkgrel=1 +epoch=1 +pkgdesc='Complete and free Internet live audio and video broadcasting solution for GNU/Linux, with static library' +arch=(i686 x86_64 mips64el) +url=http://${pkgname%-static}.org/ +license=(GPL) +depends=(alsa-lib bzip2 gsm lame libpulse libtheora libva libvorbis libvpx opencore-amr openjpeg rtmpdump schroedinger sdl speex v4l-utils x264 xvidcore zlib) +makedepends=(yasm libvdpau) +provides=(${pkgname%-static}) +conflicts=(${pkgname%-static}) +source=(http://${pkgname%-static}.org/releases/${pkgname%-static}-$pkgver.tar.bz2) +md5sums=(3ed526cea20c1bffb5a37f7730f710bd) + +build() { + cd ${pkgname%-static}-$pkgver + + ./configure \ + --prefix=/usr \ + --enable-libmp3lame \ + --enable-libvorbis \ + --enable-libxvid \ + --enable-libx264 \ + --enable-libvpx \ + --enable-libtheora \ + --enable-libgsm \ + --enable-libspeex \ + --enable-postproc \ + --enable-shared \ + --enable-x11grab \ + --enable-libopencore_amrnb \ + --enable-libopencore_amrwb \ + --enable-libschroedinger \ + --enable-libopenjpeg \ + --enable-librtmp \ + --enable-libpulse \ + --enable-libv4l2 \ + --enable-gpl \ + --enable-version3 \ + --enable-runtime-cpudetect \ + --disable-debug \ + --enable-static + make + make tools/qt-faststart + make doc/ff{mpeg,play,server}.1 +} + +package() { + cd ${pkgname%-static}-$pkgver + make DESTDIR="$pkgdir" install install-man + install -D -m755 tools/qt-faststart "$pkgdir/usr/bin/qt-faststart" +} + +# vim:set ts=2 sw=2 et: diff --git a/pcr/glproto-git/PKGBUILD b/pcr/glproto-git/PKGBUILD new file mode 100644 index 000000000..fed5caa70 --- /dev/null +++ b/pcr/glproto-git/PKGBUILD @@ -0,0 +1,63 @@ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Alexander Baldeck <alexander@archlinux.org> +# Maintainer: kfgz <kfgz at interia pl> +# Contributor: Cilyan Olowen <gaknar at gmail dot com> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgname=glproto-git +pkgver=20120905 +pkgrel=1 +pkgdesc='X11 OpenGL extension wire protocol' +arch=( + i686 + x86_64 + mips64el +) +url=http://xorg.freedesktop.org/ +license=( + custom +) +provides=( + ${pkgname%-git} + glproto=1.4.15 +) +makedepends=( + git + 'xorg-util-macros>=1.2' +) +conflicts=( + ${pkgname%-git} +) + +_gitroot=git://git.freedesktop.org/git/xorg/proto/${pkgname%-git} +_gitname=${pkgname%-git} + +build() { + cd $srcdir + msg 'Connecting to git.freedesktop.org GIT server....' + + if [ -d $srcdir/$_gitname ] ; then + cd $_gitname && git pull origin + msg 'The local files are updated.' + else + git clone $_gitroot + fi + + msg 'GIT checkout done or server timeout' + + msg 'Creating build directory' + if [ -d $srcdir/$_gitname-build ]; then rm -rf $srcdir/$_gitname-build; fi + cp -R $srcdir/$_gitname $srcdir/$_gitname-build + + msg 'Starting make...' + cd $srcdir/$_gitname-build + ./autogen.sh --prefix=/usr + make +} + +package() { + cd $srcdir/$_gitname-build + make DESTDIR=$pkgdir install + install -m755 -d $pkgdir/usr/share/licenses/${pkgname%-git} + install -m644 COPYING $pkgdir/usr/share/licenses/${pkgname%-git} +} diff --git a/pcr/irssi-xmpp/PKGBUILD b/pcr/irssi-xmpp/PKGBUILD new file mode 100644 index 000000000..fa5d445c6 --- /dev/null +++ b/pcr/irssi-xmpp/PKGBUILD @@ -0,0 +1,22 @@ +# Maintainer: Yogesh Powar <yogesh.powar@gmail.com> +pkgname=irssi-xmpp +pkgver=0.52 +pkgrel=1 +pkgdesc="An irssi plugin to connect to the Jabber network." +url="http://cybione.org/~irssi-xmpp" +arch=('i686' 'x86_64' 'mips64el') +license=('GPL') +depends=('loudmouth>=1.4.0' 'irssi>=0.8.13') +source=("http://cybione.org/~irssi-xmpp/files/${pkgname}-${pkgver}.tar.gz") +md5sums=('f48d66ddf6a6d8e4d04bfc44b83dc3c7') + +build() { + cd "$srcdir/$pkgname-$pkgver" + export PREFIX=/usr/ + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install +} diff --git a/pcr/kervalasquish-hg/PKGBUILD b/pcr/kervalasquish-hg/PKGBUILD new file mode 100755 index 000000000..e5e489950 --- /dev/null +++ b/pcr/kervalasquish-hg/PKGBUILD @@ -0,0 +1,72 @@ +# Maintainer: Jorge Araya <jorgean@lavabit.com> + +pkgname=kervalasquish-hg +pkgver=220 +pkgrel=2 +pkgdesc="Free Software DXT compression library, kervala's version" +arch=('i686' 'x86_64') +url="http://code.google.com/p/libsquish/" +license=('MIT') +makedepends=('mercurial' 'gcc-libs' 'cmake') +provides=('libsquish') +conflicts=('libsquish' + 'kervala_libsquish-hg' + 'kervalasquish-hg') + +_hgroot="http://hg.kervala.net" +_hgrepo="packaging" +cmakerepo="cmake" + +build() { + cd "$srcdir" + msg "Connecting to Kervala's Mercurial server for libsquish..." + + if [[ -d "$_hgrepo" ]]; then + cd "$_hgrepo" + hg pull -u + msg "The local files are updated." + else + hg clone "${_hgroot}/${_hgrepo}" + fi + + msg "Connecting to Kervala's Mercurial server for cmake modules..." + + if [[ -d $srcdir/$cmakerepo ]]; then + cd $srcdir/$cmakerepo + hg pull -u + msg "The local files are updated." + else + cd $srcdir + hg clone ${_hgroot}/${cmakerepo} + fi + + msg "Mercurial checkout done or server timeout" + msg "Starting build..." + + if [[ -d $_hgrepo-build ]]; then + rm -rf "$srcdir/$_hgrepo-build" + fi + + cp -r "$srcdir/$_hgrepo/squish" "$srcdir/$_hgrepo-build" + + if [[ ! -d $_hgrepo-build/CMakeModules ]]; then + mkdir "$srcdir/$_hgrepo-build/CMakeModules" + cp $srcdir/cmake/modules/common.cmake $srcdir/$_hgrepo-build/CMakeModules/ + fi + + if [[ -d $srcdir/$_hgrepo-build/build ]]; then + rm -rf $srcdir/$_hgrepo-build/build + fi + + mkdir "$srcdir/$_hgrepo-build/build" + cd "$srcdir/$_hgrepo-build/build" + cmake -DCMAKE_INSTALL_PREFIX=/usr .. + make +} + +package() { + cd "$srcdir/$_hgrepo-build/build" + make DESTDIR="${pkgdir}" install +} + +# vim:set ts=2 sw=2 et: diff --git a/pcr/libav-static/PKGBUILD b/pcr/libav-static/PKGBUILD new file mode 100644 index 000000000..932213a3e --- /dev/null +++ b/pcr/libav-static/PKGBUILD @@ -0,0 +1,120 @@ +# $Id$ +# Maintainer : Ionut Biru <ibiru@archlinux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> +# Contributor: Paul Mattal <paul@archlinux.org> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgbase=libav +pkgname=libav-static +pkgflag=-static +pkgver=0.8.4 +pkgrel=2 +pkgdesc='Complete and free Internet live audio and video broadcasting solution for GNU/Linux, with static library' +arch=( + i686 + x86_64 + mips64el +) +url="http://$pkgbase.org/" +license=( + GPL +) +depends=( + alsa-lib + bzip2 + gsm + lame + libpulse + libtheora + libva + libvorbis + libvpx + opencore-amr + openjpeg + rtmpdump + schroedinger + sdl + speex + x264 + xvidcore + zlib +) +makedepends=( + yasm + libvdpau +) +source=( + http://$pkgbase.org/releases/$pkgbase-$pkgver.tar.gz + avconv$pkgflag + avplay$pkgflag + avprobe$pkgflag + avserver$pkgflag + ffmpeg-$pkgname + qt-faststart-$pkgname +) +sha512sums=( + d402c7d586708e29b92340c4d03d8431fe607f0b88c2762cc95671786cdb9a7221968164b571e11086b53b2169f3a657c6106dc769c04a1a035429d011e72610 + 4a98c459df5f5bc5e42580b5f2081509719c057fdf55693b3554006b21adcaa29ee59ac0debfe0486fe1df8b9a937135d99e4ccc2df894a2634dd314eed93114 + afd2eadd0a0522cd3665ccd2b819f06a99cc50e3bdac3a0ef200861664c7084cc5990a3c1a860f2f0cc9f835c33c09cb5c57a25dbab0673eb74ba0f4c980e539 + 4e557c9eab6a97a3206df1dd49a516ae7be9490c894ff212cb5286ee097ae606c0b7a650c75278a71e4c91d0325eaee729937e1ae659ce0887c3c20ea8fe6333 + f0fa50711d19babf3f485189fb37b17a87f31849dad9cf6a7324601bdde0856fe47d55a4d82c6839c93f39e970edcbeecfbcb70a8b4e7570250fa4c7bb6975fb + 8101ec9c3e0a945ea89f85f81ace52ce67159661e3440668726a5767ba6250a91533494f1aa8fc30ee97ff9af5d64636d0f0dbcb2da862124d35b6b5ec571f5b + 0133fae31e1df586317deb7235f5e74d22abd007038f82b9df10ea3eea6748945c50a0bbe8f588e8a5d1b7874b3fa2639430e1efa32b0cfe16383a32751d3245 +) + +build() { + cd $pkgbase-$pkgver + + ./configure \ + --prefix=/opt/$pkgname \ + --enable-libmp3lame \ + --enable-libvorbis \ + --enable-libxvid \ + --enable-libx264 \ + --enable-libvpx \ + --enable-libtheora \ + --enable-libgsm \ + --enable-libspeex \ + --enable-postproc \ + --enable-shared \ + --enable-x11grab \ + --enable-libopencore_amrnb \ + --enable-libopencore_amrwb \ + --enable-libschroedinger \ + --enable-libopenjpeg \ + --enable-librtmp \ + --enable-libpulse \ + --enable-gpl \ + --enable-version3 \ + --enable-runtime-cpudetect \ + --disable-debug \ + --enable-static + + make + make tools/qt-faststart + make doc/ffmpeg.1 + make doc/av{play,server}.1 +} + +package() { + cd $pkgbase-$pkgver + make DESTDIR=$pkgdir install install-man + install -m755 -d $pkgdir/etc/ld.so.conf.d + install -m755 -d $pkgdir/usr/bin + install -m755 -d $pkgdir/usr/share/man/man1 + install -Dm755 tools/qt-faststart $pkgdir/opt/$pkgname/bin + ln -s /opt/$pkgname/bin/avconv $pkgdir/usr/bin/avconv$pkgflag + ln -s /opt/$pkgname/bin/avplay $pkgdir/usr/bin/avplay$pkgflag + ln -s /opt/$pkgname/bin/avprobe $pkgdir/usr/bin/avprobe$pkgflag + ln -s /opt/$pkgname/bin/avserver $pkgdir/usr/bin/avserver$pkgflag + ln -s /opt/$pkgname/bin/ffmpeg $pkgdir/usr/bin/ffmpeg-$pkgname + ln -s /opt/$pkgname/bin/qt-faststart $pkgdir/usr/bin/qt-faststart-$pkgname + ln -s /opt/$pkgname/share/man/man1/avconv.1 $pkgdir/usr/share/man/man1/avconv$pkgflag.1 + ln -s /opt/$pkgname/share/man/man1/avplay.1 $pkgdir/usr/share/man/man1/avplay$pkgflag.1 + ln -s /opt/$pkgname/share/man/man1/avprobe.1 $pkgdir/usr/share/man/man1/avprobe$pkgflag.1 + ln -s /opt/$pkgname/share/man/man1/avserver.1 $pkgdir/usr/share/man/man1/avserver$pkgflag.1 + ln -s /opt/$pkgname/share/man/man1/ffmpeg.1 $pkgdir/usr/share/man/man1/ffmpeg-$pkgname.1 + echo /opt/libav-static/lib > $pkgdir/etc/ld.so.conf.d/libav-static.conf +} + +# vim:set ts=2 sw=2 et: diff --git a/pcr/libav-static/avconv-static b/pcr/libav-static/avconv-static new file mode 100644 index 000000000..5f632bec0 --- /dev/null +++ b/pcr/libav-static/avconv-static @@ -0,0 +1,2 @@ +#!/bin/bash +LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/libav-static/lib /opt/libav-static/bin/avconv $* diff --git a/pcr/libav-static/avplay-static b/pcr/libav-static/avplay-static new file mode 100644 index 000000000..8db2da816 --- /dev/null +++ b/pcr/libav-static/avplay-static @@ -0,0 +1,2 @@ +#!/bin/bash +LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/libav-static/lib /opt/libav-static/bin/avplay $* diff --git a/pcr/libav-static/avprobe-static b/pcr/libav-static/avprobe-static new file mode 100644 index 000000000..44b730287 --- /dev/null +++ b/pcr/libav-static/avprobe-static @@ -0,0 +1,2 @@ +#!/bin/bash +LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/libav-static/lib /opt/libav-static/bin/avprobe $* diff --git a/pcr/libav-static/avserver-static b/pcr/libav-static/avserver-static new file mode 100644 index 000000000..642d4722c --- /dev/null +++ b/pcr/libav-static/avserver-static @@ -0,0 +1,2 @@ +#!/bin/bash +LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/libav-static/lib /opt/libav-static/bin/avserver $* diff --git a/pcr/libav-static/ffmpeg-libav-static b/pcr/libav-static/ffmpeg-libav-static new file mode 100644 index 000000000..3f9ef6d52 --- /dev/null +++ b/pcr/libav-static/ffmpeg-libav-static @@ -0,0 +1,2 @@ +#!/bin/bash +LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/libav-static/lib /opt/libav-static/bin/ffmpeg $* diff --git a/pcr/libav-static/qt-faststart-libav-static b/pcr/libav-static/qt-faststart-libav-static new file mode 100644 index 000000000..8613091c4 --- /dev/null +++ b/pcr/libav-static/qt-faststart-libav-static @@ -0,0 +1,2 @@ +#!/bin/bash +LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/libav-static/lib /opt/libav-static/bin/qt-faststart $* diff --git a/pcr/libdrm-git/COPYING b/pcr/libdrm-git/COPYING new file mode 100644 index 000000000..6e74c337c --- /dev/null +++ b/pcr/libdrm-git/COPYING @@ -0,0 +1,48 @@ + Copyright 2005 Adam Jackson. + + 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 on the rights to use, copy, modify, merge, + publish, distribute, sub license, 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 (including the + next paragraph) 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 + NON-INFRINGEMENT. IN NO EVENT SHALL ADAM JACKSON 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. + +------------------------------------------------------------------------ + + Copyright 1999 Precision Insight, Inc., Cedar Park, Texas. + Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California. + All Rights Reserved. + + 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 (including the + next paragraph) 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 PRECISION INSIGHT AND/OR ITS + SUPPLIERS 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. diff --git a/pcr/libdrm-git/PKGBUILD b/pcr/libdrm-git/PKGBUILD new file mode 100644 index 000000000..94b7dca85 --- /dev/null +++ b/pcr/libdrm-git/PKGBUILD @@ -0,0 +1,106 @@ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgname=libdrm-git +pkgver=$(LC_ALL=C date -u +%Y%m%d) +_pkgver=2.4.39 +pkgrel=1 +pkgdesc='Userspace interface to kernel DRM services' +arch=( + i686 + x86_64 + mips64el +) +license=( + MIT +) +depends=( + libpciaccess + ) +makedepends=( + cairo + git + valgrind +) +options=( + !libtool +) +url=http://dri.freedesktop.org/ +provides=( + ${pkgname%-git}=$_pkgver + ${pkgname%-git}-nouveau1 +) +conflicts=( + ${pkgname%-git} + ${pkgname%-git}-new + ${pkgname%-git}-nouveau + ${pkgname%-git}-nouveau1 + ${pkgname%-git}-old +) +replaces=( + ${pkgname%-git}-new + ${pkgname%-git}-nouveau +) +source=( + COPYING +) +sha512sums=( + b0ca349b882a4326b19f81f22804fabdb6fb7aef31cdc7b16b0a7ae191bfbb50c7daddb2fc4e6c33f1136af06d060a273de36f6f3412ea326f16fa4309fda660 +) + +_gitroot=git://git.freedesktop.org/git/mesa/drm +_gitname=drm + +build() { + cd $srcdir + msg 'Connecting to GIT server....' + + if [[ -d $_gitname ]]; then + cd $_gitname && git pull origin + msg 'The local files are updated.' + else + git clone $_gitroot $_gitname + fi + + msg 'GIT checkout done or server timeout' + msg 'Starting build...' + + rm -rf $srcdir}/$_gitname-build + git clone $srcdir/$_gitname $srcdir/$_gitname-build + cd $srcdir/$_gitname-build + + sed -i '/PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs)/d;/AC_SUBST(PTHREADSTUBS_CFLAGS)/d;/AC_SUBST(PTHREADSTUBS_LIBS)/d' \ + configure.ac + sed -i '/ $(PTHREADSTUBS_CFLAGS) /d;s/ @PTHREADSTUBS_LIBS@//' \ + exynos/Makefile.am + sed -i '/ $(PTHREADSTUBS_CFLAGS) /d;/ @PTHREADSTUBS_LIBS@ /d' \ + intel/Makefile.am + sed -i '/ $(PTHREADSTUBS_CFLAGS) /d;s/ @PTHREADSTUBS_LIBS@//' \ + nouveau/Makefile.am + sed -i '/ $(PTHREADSTUBS_CFLAGS) /d;s/ @PTHREADSTUBS_LIBS@//' \ + omap/Makefile.am + sed -i '/ $(PTHREADSTUBS_CFLAGS) /d;s/ @PTHREADSTUBS_LIBS@//' \ + radeon/Makefile.am + + ./autogen.sh --prefix=/usr \ + --enable-exynos-experimental-api \ + --enable-intel \ + --enable-nouveau \ + --enable-omap-experimental-api \ + --enable-radeon \ + --enable-udev \ + --enable-vmwgfx + make V=0 +} + +check() { + cd $srcdir/$_gitname-build + make -k check +} + +package() { + cd $srcdir/$_gitname-build + make DESTDIR=$pkgdir install + install -m755 -d $pkgdir/usr/share/licenses/${pkgname%-git} + install -m644 ../COPYING $pkgdir/usr/share/licenses/${pkgname%-git} +} diff --git a/pcr/libglu-git/PKGBUILD b/pcr/libglu-git/PKGBUILD new file mode 100644 index 000000000..46ff7a358 --- /dev/null +++ b/pcr/libglu-git/PKGBUILD @@ -0,0 +1,52 @@ +# Maintainer: Márcio Silva <coadde@lavabit.com> + +pkgname=libglu-git +pkgver=20120908 +pkgrel=1 +pkgdesc='Mesa GLU utility library' +arch=( + i686 + x86_64 + mips64el +) +url=http://mesa.freedesktop.org/ +license=( + LGPL +) +depends=( + libgl-git +) +makedepends=( + git + mesa-git +) + +_gitroot=git://cgit.freedesktop.org/mesa/glu/ +_gitname=glu + +build() { + msg 'Connecting to git.freedesktop.org GIT server....' + if [ -d $_gitname ] ; then + cd $_gitname && git pull origin + else + git clone $_gitroot --depth 1 + fi + msg 'GIT checkout done or server timeout' + msg 'Starting make...' + + cd $srcdir + + # Cleanup and prepare the build dir + [ -d build ] && rm -rf build + cp -r $_gitname build + cd build + + autoreconf -vfi + ./autogen.sh --prefix=/usr + make V=0 +} + +package() { + cd $srcdir/build + make DESTDIR=$pkgdir install +} diff --git a/pcr/log4c/PKGBUILD b/pcr/log4c/PKGBUILD new file mode 100644 index 000000000..bfcb6bb53 --- /dev/null +++ b/pcr/log4c/PKGBUILD @@ -0,0 +1,22 @@ +# Contributor: rockerzz <rockerzz@gmail.com> +# +pkgname=log4c +pkgver=1.2.1 +pkgrel=1 +pkgdesc="Logging FrameWork for C, as Log4j or Log4Cpp" +url="http://log4c.sourceforge.net/" +arch=('i686' 'x86_64') +license="LGPL" +depends=('gcc-libs') +makedepends=( 'bash' 'make' 'gcc' ) +source=(http://prdownloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz) +md5sums=('ca5412b7515d8901714ab7892323adb6') +options=('!libtool') + +build() { + cd $startdir/src/log4c-$pkgver + ./configure --prefix=/usr + make || return 1 + make DESTDIR=$startdir/pkg install +} + diff --git a/pcr/mednafen-server/PKGBUILD b/pcr/mednafen-server/PKGBUILD new file mode 100644 index 000000000..0c7057908 --- /dev/null +++ b/pcr/mednafen-server/PKGBUILD @@ -0,0 +1,39 @@ +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgname=mednafen-server +pkgver=0.5.0 +pkgrel=1 +pkgdesc='A server multi-system gaming emulator' +url=http://${pkgname%-server}.sourceforge.net/ +license=( + GPL +) +arch=( + i686 + x86_64 + mips64el +) +source=( + http://downloads.sourceforge.net/project/${pkgname%-server}/Mednafen-Server/$pkgver/$pkgname-$pkgver.tar.gz + ${pkgname}d + $pkgname.service +) +sha512sums=( + 700b2021e5085761b90bb5ee802ff9ccded3cdade76682fe9faa98ebbb0653c9b00baea5baa1c486f850bad606aae33a88e4d9486015babb210648aa0cd4542d + 55cba761db9c10978a5146e4f92ccce2a645e0566d0744e745b36ede56a0332d1cb1f6c8a09df6a1c01320b539f07ccd7073b2d85eca6b340449a1c3b9761407 + cd3d19b789ec7f62c4b8f5fe0f93e7836fab5406a3416434701caf6404cce02c7223dcb8b82bd1e4b00bdcf4df623f0cd44f850a7f79a7be73e04c0804972700 +) + +build() { + cd $srcdir/$pkgname + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/$pkgname + make DESTDIR=$pkgdir install + install -Dm644 standard.conf $pkgdir/etc/$pkgname/standard.conf + install -Dm644 $srcdir/${pkgname}d $pkgdir/etc/rc.d/$pkgname + install -Dm644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system/$pkgname.service +} diff --git a/pcr/mednafen-server/mednafen-server.service b/pcr/mednafen-server/mednafen-server.service new file mode 100644 index 000000000..9ee392432 --- /dev/null +++ b/pcr/mednafen-server/mednafen-server.service @@ -0,0 +1,9 @@ +[Unit] +Description=Mednafen Server Daemon +After=network.target + +[Service] +ExecStart=/usr/bin/mednafen-server /etc/mednafen-server/standard.conf >/var/log/mednafen-server.log 2>/var/log/mednafen-server.log.2 + +[Install] +WantedBy=multi-user.target diff --git a/pcr/mednafen-server/mednafen-serverd b/pcr/mednafen-server/mednafen-serverd new file mode 100755 index 000000000..d6033f6af --- /dev/null +++ b/pcr/mednafen-server/mednafen-serverd @@ -0,0 +1,41 @@ +#!/bin/bash + +# source application-specific settings +MED_ARGS= +[ -f /etc/mednafen-server/standard.conf ] && . /etc/mednafen-server/standard.conf + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=$(pidof -o %PPID /usr/bin/mednafen-server) +case "$1" in + start) + stat_busy "Starting Mednafen Server Daemon" + [ -z "$PID" ] && /usr/bin/mednafen-server ${MED_ARGS} >/var/log/mednafen-server.log 2>/var/log/mednafen-server.log.2 + PID=$(pidof -o %PPID /usr/bin/mednafen-server) + if [ -z "$PID" ]; then + stat_fail + else + add_daemon mednafen-server + stat_done + fi + ;; + stop) + stat_busy "Stopping Mednafen Server Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon mednafen-server + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/pcr/mednafen-wip/PKGBUILD b/pcr/mednafen-wip/PKGBUILD new file mode 100755 index 000000000..2abee7f46 --- /dev/null +++ b/pcr/mednafen-wip/PKGBUILD @@ -0,0 +1,57 @@ +# Maintainer: Hans-Kristian Arntzen <maister@archlinux.us> +# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve> +# Contributor: kagan <juanynie@mi.madritel.es> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +# Maintainer (Parabola): André Silva <emulatorman@lavabit.com> + +pkgbase=mednafen +pkgname=mednafen-wip +pkgver=0.9.26 +_pkgver=422 +pkgrel=1 +pkgdesc='A command-line multi-system gaming emulator, WIP version' +url="http://$pkgbase.sourceforge.net/" +license=( + GPL +) +arch=( + i686 + x86_64 + mips64el +) +depends=( + jack2 + 'libcdio>=0.83' + sdl-libre +) +optdepends=( + 'libgl: needed for opengl support' + 'glu: needed for opengl support' +) +makedepends=( + mesa + glu +) +provides=( + $pkgbase +) +conflicts=( + $pkgbase +) +source=( + 'http://forum.fobby.net/index.php?t=getfile&id='$_pkgver'&' +) +sha1sums=( + e43c2b04b513af1db35933a2819d2660e7106600 +) + +build() { + cd $srcdir/$pkgbase + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/$pkgbase + make DESTDIR=$pkgdir install +} diff --git a/pcr/mesa-git/PKGBUILD b/pcr/mesa-git/PKGBUILD new file mode 100644 index 000000000..0a63f43d8 --- /dev/null +++ b/pcr/mesa-git/PKGBUILD @@ -0,0 +1,1039 @@ +# Maintainer: Márcio Silva <coadde@lavabit.com> + +_d3d1x=false +_openvg=true +_va=false +_vdpau=true +_wayland=true +_xorg=true +_xvmc=true +pkgbase=mesa-git +pkgname=( + mesa-git +) +true && pkgname=( + khrplatform-devel-git + libcl-libre-git + libgbm-git + libgl-gallium-git + libgl-git + libglapi-git + libgles-git + osmesa-git + ati-dri-git + intel-gallium-dri-git + intel-dri-git + nouveau-dri-git + svga-dri-git + mesa-git +) +if [ $_openvg = true ]; then + pkgname+=( + libvg-git + ) +fi +if [ $_va = true ]; then + pkgname+=( + ati-va-git + soft-va-git + ) +fi +if [ $_vdpau = true ]; then + pkgname+=( + ati-vdpau-git + nouveau-vdpau-git + soft-vdpau-git + ) +fi +if [ $_wayland = true ]; then + pkgname+=( + libegl-wayland-git + ) +else + pkgname+=( + libegl-git + ) +fi +if [ $_xorg = true ]; then + pkgname+=( + ati-xorg-git + intel-xorg-git + nouveau-xorg-git + ) +fi +if [ $_xvmc = true ]; then + pkgname+=( + ati-xvmc-git + nouveau-xvmc-git + soft-xvmc-git + ) +fi +true && pkgver=9.0.0.git$(LC_ALL=C date -u +%Y%m%d) +true && pkgrel=1 +_mesaver=9.0 +_dricore=9.1 +arch=( + i686 + x86_64 + mips64el +) +makedepends=( + clang # needed for compilation + git # needed for git source + glproto-git # needed for compilation + imake # needed for compilation + libdrm-git # needed for compilation + libgbm-git # needed for 'make install' (ld error) + libgl-git # needed for 'make install' (ld error) + libxdamage # needed for compilation + libxml2 # needed for compilation + libxxf86vm # needed for compilation + llvm # for llvm support + python2 # needed for compilation +) +if [ $_d3d1x = true ]; then + makedepends+=( + wine + ) +fi +if [ $_openvg = true ]; then + makedepends+=( + libvg-git # needed for 'make install' (ld error) + ) +fi +if [ $_va = true ]; then + makedepends+=( + libva + ) +fi +if [ $_vdpau = true ]; then + makedepends+=( + libvdpau + ) +fi +if [ $_wayland = true ]; then + makedepends+=( + wayland + ) +fi +if [ $_xorg = true ]; then + makedepends+=( + xf86driproto + xorg-server-devel + ) +fi +if [ $_xvmc = true ]; then + makedepends+=( + libxvmc + ) +fi +license=( + MIT + Khronos + LGPL +) +url=http://mesa3d.sourceforge.net + +_gitroot=git://anongit.freedesktop.org/git/${pkgbase%-git}/${pkgbase%-git} +_gitname=${pkgbase%-git} + +build() { + msg 'Connecting to git.freedesktop.org GIT server....' + if [ -d $_gitname ] ; then + cd $_gitname && git pull origin + else + git clone $_gitroot --depth 1 + fi + msg 'GIT checkout done or server timeout' + msg 'Starting make...' + + cd $srcdir + + # Cleanup and prepare the build dir + [ -d build ] && rm -rf build + cp -r $_gitname build + cd build + + #cd $srcdir/Mesa-$pkgver + + if [ $_d3d1x = true ]; then + D3D1X_FLAG=--enable-d3d1x + fi + if [ $_openvg = true ]; then + OPENVG_FLAG=--enable-openvg + fi + if [ $_va = true ]; then + VA_FLAG=--enable-va + fi + if [ $_vdpau = true ]; then + VDPAU_FLAG=--enable-vdpau + fi + if [ $_wayland = true ]; then + WAYLAND_FLAG=--with-egl-platforms=drm,x11,wayland + fi + if [ $_xorg = true ]; then + XORG_FLAG=--enable-xorg + fi + if [ $_xvmc = true ]; then + XVMC_FLAG=--enable-xvmc + fi + + ./autogen.sh --prefix=/usr \ + $D3D1X_FLAG \ + --enable-dri \ + --enable-egl \ + --enable-gallium-egl \ + --enable-gallium-g3dvl \ + --enable-gallium-gbm \ + --enable-gallium-llvm \ + --enable-gbm \ + --enable-gles1 \ + --enable-gles2 \ + --enable-glx \ + --enable-glx-tls \ + --enable-opencl \ + --enable-opengl \ + $OPENVG_FLAG \ + --enable-osmesa \ + --enable-r600-llvm-compiler \ + --enable-shared-glapi \ + --enable-texture-float \ + $VA_FLAG \ + $VDPAU_FLAG \ + --enable-xa \ + $XORG_FLAG \ + $XVMC_FLAG \ + $WAYLAND_FLAG \ + --with-clang-libdir=/usr/lib \ + --with-dri-driverdir=/usr/lib/xorg/modules/dri \ + --with-dri-drivers=i915,i965,nouveau,r200,radeon,swrast \ + --with-gallium-drivers=i915,nouveau,r300,r600,radeonsi,svga,swrast + make V=0 +} + +package_khrplatform-devel-git() { + conflicts=( + khrplatform-devel + ) + provides=( + khrplatform-devel=$_mesaver + ) + pkgdesc='Khronos platform development package' + + cd $srcdir/build + install -m755 -d $pkgdir/usr/include/KHR + install -m755 -d $pkgdir/usr/share/licenses/khrplatform-devel + install -Dm644 include/KHR/khrplatform.h $pkgdir/usr/include/KHR + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/khrplatform-devel + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/khrplatform-devel +} + +package_libcl-libre-git() { + depends=( + gcc-libs + libdrm-git + libffi + libxcb + systemd + #udev + ) + conflicts=( + libcl + libcl-libre + ) + provides=( + libcl + libcl-libre + ) + replaces=( + libcl + ) + pkgdesc='A libre version of OpenCL library and ICD loader, (Mesa OpenCL)' + + make -C $srcdir/build/src/gallium/targets/opencl DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/opencl + install -m755 -d $pkgdir/usr/share/licenses/libcl + #install -Dm644 src/gallium/targets/opencl/libOpenCL.la $pkgdir/usr/lib + #install -Dm644 lib/libOpenCL.so* $pkgdir/usr/lib + #install -Dm644 src/gallium/targets/pipe-loader/*.so $pkgdir/usr/lib/opencl + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libcl + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libcl +} + +package_libegl-wayland-git() { + depends=( + khrplatform-devel-git + libgbm-git + libxext + libxfixes + wayland + ) + if [ $_openvg = true ]; then + depends+=( + libvg-git + ) + fi + conflicts=( + libegl + libegl-git + libegl-wayland + ) + provides=( + libegl=$_mesaver + libegl-git + libegl-wayland=$_mesaver + ) + pkgdesc='Mesa EGL libraries and headers, with wayland Support' + + make -C $srcdir/build/src/egl DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/egl-static DESTDIR=$pkgdir install + + cd $srcdir/build + rm -fvr $pkgdir/usr/include/KHR + #install -m755 -d $pkgdir/usr/include/EGL + #install -m755 -d $pkgdir/usr/lib/egl + #install -m755 -d $pkgdir/usr/lib/pkgconfig + install -m755 -d $pkgdir/usr/share/doc/libegl + install -m755 -d $pkgdir/usr/share/licenses/libegl + #install -Dm644 include/EGL/* $pkgdir/usr/include/EGL + #install -Dm644 src/egl/main/libEGL.la $pkgdir/usr/lib + #install -Dm644 lib/libEGL.so* $pkgdir/usr/lib + #install -Dm644 src/egl/wayland/wayland-egl/libwayland-egl.la $pkgdir/usr/lib + #install -Dm644 lib/libwayland-egl.so* $pkgdir/usr/lib + #install -Dm644 lib/egl/egl_gallium.so $pkgdir/usr/lib/egl + #install -Dm644 src/egl/main/egl.pc $pkgdir/usr/lib/pkgconfig + #install -Dm644 src/egl/wayland/wayland-egl/wayland-egl.pc $pkgdir/usr/lib/pkgconfig + install -Dm644 docs/egl.html $pkgdir/usr/share/doc/libegl + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libegl + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libegl +} + +package_libegl-git() { + depends=( + khrplatform-devel-git + libgbm-git + libxext + libxfixes + ) + if [ $_openvg = true ]; then + depends+=( + libvg-git + ) + fi + conflicts=( + libegl + libegl-wayland + libegl-wayland-git + ) + provides=( + libegl=$_mesaver + libegl-wayland=$_mesaver + libegl-wayland-git + ) + pkgdesc='Mesa EGL libraries and headers' + + make -C $srcdir/build/src/egl DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/egl-static DESTDIR=$pkgdir install + + cd $srcdir/build + rm -fvr $pkgdir/usr/include/KHR + #install -m755 -d $pkgdir/usr/include/EGL + #install -m755 -d $pkgdir/usr/lib/egl + #install -m755 -d $pkgdir/usr/lib/pkgconfig + install -m755 -d $pkgdir/usr/share/doc/libegl + install -m755 -d $pkgdir/usr/share/licenses/libegl + #install -Dm644 include/EGL/* $pkgdir/usr/include/EGL + #install -Dm644 src/egl/main/libEGL.la $pkgdir/usr/lib + #install -Dm644 lib/libEGL.so* $pkgdir/usr/lib + #install -Dm644 lib/egl/egl_gallium.so $pkgdir/usr/lib/egl + #install -Dm644 src/egl/main/egl.pc $pkgdir/usr/lib/pkgconfig + install -Dm644 docs/egl.html $pkgdir/usr/share/doc/libegl + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libegl + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libegl +} + +package_libgbm-git() { + depends=( + gcc-libs + libdrm-git + libffi + libglapi-git + libxcb + systemd + #udev + ) + conflicts=( + libgbm + ) + provides=( + libgbm=$_mesaver + ) + pkgdesc='Mesa GBM libraries and header' + + make -C $srcdir/build/src/gbm DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/gbm DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/include + #install -m755 -d $pkgdir/usr/lib/gbm + #install -m755 -d $pkgdir/usr/lib/pkgconfig + install -m755 -d $pkgdir/usr/share/licenses/libgbm + #install -Dm644 src/gbm/main/gbm.h $pkgdir/usr/include + #install -Dm644 src/gbm/libgbm.la $pkgdir/usr/lib + #install -Dm644 lib/libgbm.so* $pkgdir/usr/lib + #install -Dm644 src/gallium/targets/gbm/gbm_gallium_drm.so $pkgdir/usr/lib/gbm + #install -Dm644 src/gallium/targets/pipe-loader/*.so $pkgdir/usr/lib/gbm + #install -Dm644 src/gbm/main/gbm.pc $pkgdir/usr/lib/pkgconfig + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libgbm + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libgbm +} + +package_libgl-gallium-git() { + depends=( + expat + gcc-libs + libdrm-git + libglapi-git + libxdamage + libxxf86vm + ) + conflicts=( + libgl + libgl-git + libgl-gallium + ) + provides=( + libgl=$_mesaver + libgl-git + libgl-gallium=$_mesaver + ) + pkgdesc='Mesa 3D OpenGL graphics library and DRI Gallium software rasterizer' + + make -C $srcdir/build/src/glx DESTDIR=$pkgdir install + make -C $srcdir/build/src/mesa/libdricore DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/dri-swrast DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/dri + install -m755 -d $pkgdir/usr/lib/xorg/modules/extensions + install -m755 -d $pkgdir/usr/share/doc/libgl + install -m755 -d $pkgdir/usr/share/licenses/libgl + #ln -s libdricore$_dricore.so.1.0.0 $pkgdir/usr/lib/libdricore.so + ln -s libglx.xorg $pkgdir/usr/lib/xorg/modules/extensions/libglx.so + #install -Dm644 src/glx/libGL.la $pkgdir/usr/lib + #install -Dm644 lib/libGL.so* $pkgdir/usr/lib + #install -Dm644 src/mesa/libdricore/libdricore$_dricore.la $pkgdir/usr/lib + #install -Dm644 lib/libdricore$_dricore.so* $pkgdir/usr/lib + #install -Dm644 lib/gallium/swrast_dri.so $pkgdir/usr/lib/xorg/modules/dri + install -Dm644 docs/libGL.txt $pkgdir/usr/share/doc/libgl + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libgl + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libgl +} + +package_libgl-git() { + depends=( + expat + gcc-libs + libdrm-git + libglapi-git + libxdamage + libxxf86vm + ) + conflicts=( + libgl + libgl-gallium + libgl-gallium-git + ) + provides=( + libgl=$_mesaver + libgl-gallium=$_mesaver + libgl-gallium-git + ) + pkgdesc='Mesa 3D OpenGL graphics library and DRI software rasterizer' + + make -C $srcdir/build/src/glx DESTDIR=$pkgdir install + make -C $srcdir/build/src/mesa/libdricore DESTDIR=$pkgdir install + make -C $srcdir/build/src/mesa/drivers/dri/swrast DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/dri + install -m755 -d $pkgdir/usr/lib/xorg/modules/extensions + install -m755 -d $pkgdir/usr/share/doc/libgl + install -m755 -d $pkgdir/usr/share/licenses/libgl + #ln -s libdricore$_mesaver.so.1.0.0 $pkgdir/usr/lib/libdricore.so + ln -s libglx.xorg $pkgdir/usr/lib/xorg/modules/extensions/libglx.so + #install -Dm644 src/glx/libGL.la $pkgdir/usr/lib + #install -Dm644 lib/libGL.so* $pkgdir/usr/lib + #install -Dm644 src/mesa/libdricore/libdricore$_dricore.la $pkgdir/usr/lib + #install -Dm644 lib/libdricore$_dricore.so* $pkgdir/usr/lib + #install -Dm644 src/mesa/drivers/dri/swrast/swrast_dri.la $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/swrast_dri.so $pkgdir/usr/lib/xorg/modules/dri + install -Dm644 docs/libGL.txt $pkgdir/usr/share/doc/libgl + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libgl + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libgl +} + +package_libglapi-git() { + depends=( + glibc + ) + conflicts=( + libglapi + ) + provides=( + libglapi=$_mesaver + ) + pkgdesc='free implementation of the GL API -- shared library. The Mesa GL API module is responsible for dispatching all the gl* functions' + + make -C $srcdir/build/src/mapi/shared-glapi DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib + install -m755 -d $pkgdir/usr/share/licenses/libglapi + #install -Dm644 src/mapi/shared-glapi/libglapi.la $pkgdir/usr/lib + #install -Dm644 lib/libglapi.so* $pkgdir/usr/lib + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libglapi + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libglapi +} + +package_libgles-git() { + depends=( + khrplatform-devel-git + libdrm-git + libglapi-git + ) + conflicts=( + libgles + ) + provides=( + libgles=$_mesaver + ) + pkgdesc='Mesa GLES libraries and headers' + + make -C $srcdir/build/src/mapi/es1api DESTDIR=$pkgdir install + make -C $srcdir/build/src/mapi/es2api DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/include/GLES + #install -m755 -d $pkgdir/usr/include/GLES2 + #install -m755 -d $pkgdir/usr/lib/pkgconfig + install -m755 -d $pkgdir/usr/share/licenses/libgles + #install -Dm644 include/GLES/* $pkgdir/usr/include/GLES + #install -Dm644 include/GLES2/* $pkgdir/usr/include/GLES2 + #install -Dm644 src/mapi/es1api/libGLESv1_CM.la $pkgdir/usr/lib + #install -Dm644 src/mapi/es2api/libGLESv2.la $pkgdir/usr/lib + #install -Dm644 lib/libGLESv*.so* $pkgdir/usr/lib + #install -Dm644 src/mapi/es1api/glesv1_cm.pc $pkgdir/usr/lib/pkgconfig + #install -Dm644 src/mapi/es2api/glesv2.pc $pkgdir/usr/lib/pkgconfig + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libgles + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libgles +} + +package_libvg-git() { + depends=( + glibc + ) + conflicts=( + libvg + ) + provides=( + libvg=$_mesaver + ) + pkgdesc='Mesa OpenVG libraries and headers' + + make -C $srcdir/build/src/mapi/vgapi DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/include/VG + #install -m755 -d $pkgdir/usr/lib/pkgconfig + install -m755 -d $pkgdir/usr/share/doc/libvg + install -m755 -d $pkgdir/usr/share/licenses/libvg + #install -Dm644 include/VG/* $pkgdir/usr/include/VG + #install -Dm644 src/mapi/vgapi/libOpenVG.la $pkgdir/usr/lib + #install -Dm644 lib/libOpenVG.so* $pkgdir/usr/lib + #install -Dm644 src/mapi/vgapi/vg.pc $pkgdir/usr/lib/pkgconfig + install -Dm644 docs/openvg.html $pkgdir/usr/share/doc/libvg + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/libvg + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/libvg +} + +package_osmesa-git() { + depends=( + mesa-git + ) + conflicts=( + osmesa + ) + provides=( + osmesa=$_mesaver + ) + optdepends=( + 'opengl-man-pages: for the OpenGL API man pages' + ) + pkgdesc='Mesa 3D off-screen rendering library' + + make -C $srcdir/build/src/mesa/drivers/osmesa DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/pkgconfig + install -m755 -d $pkgdir/usr/share/doc/osmesa + install -m755 -d $pkgdir/usr/share/licenses/osmesa + #install -Dm644 src/mesa/drivers/osmesa/libOSMesa.la $pkgdir/usr/lib + #install -Dm644 lib/libOSMesa.so* $pkgdir/usr/lib + #install -Dm644 src/mesa/drivers/osmesa/osmesa.pc $pkgdir/usr/lib/pkgconfig + install -Dm644 docs/osmesa.html $pkgdir/usr/share/doc/osmesa + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/osmesa + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/osmesa +} + +package_ati-dri-git() { + depends=( + libgl-git + ) + conflicts=( + ati-dri + 'xf86-video-ati<6.9.0-6' + ) + provides=( + ati-dri=$_mesaver + ) + pkgdesc='Mesa DRI radeon/r200 + Gallium3D r300,r600,radeonsi drivers for AMD/ATI Radeon' + + # classic mesa driver for radeon,r200 + make -C $srcdir/build/src/mesa/drivers/dri/r200 DESTDIR=$pkgdir install + make -C $srcdir/build/src/mesa/drivers/dri/radeon DESTDIR=$pkgdir install + # gallium3D driver for r300,r600,radeonsi + make -C $srcdir/build/src/gallium/targets/dri-r300 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/dri-r600 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/dri-radeonsi DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/dri + install -m755 -d $pkgdir/usr/share/licenses/ati-dri + # classic mesa driver for radeon,r200 + #install -Dm644 src/mesa/drivers/dri/r200/r200_dri.la $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/r200_dri.so $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 src/mesa/drivers/dri/radeon/radeon_dri.la $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/radeon_dri.so $pkgdir/usr/lib/xorg/modules/dri + # gallium3D driver for r300,r600,radeonsi + #install -Dm644 lib/gallium/r300_dri.so $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/gallium/r600_dri.so $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/gallium/radeonsi_dri.so $pkgdir/usr/lib/xorg/modules/dri + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/ati-dri + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/ati-dri +} + +package_intel-gallium-dri-git() { + depends=( + libgl-git + ) + conflicts=( + intel-dri + intel-dri-git + intel-gallium-dri + ) + provides=( + intel-dri=$_mesaver + intel-dri-git + intel-gallium-dri=$_mesaver + ) + pkgdesc='Mesa DRI drivers for Intel, with i915 Gallium Driver )' + + make -C $srcdir/build/src/gallium/targets/dri-i915 DESTDIR=$pkgdir install + make -C $srcdir/build/src/mesa/drivers/dri/i965 DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/dri + install -m755 -d $pkgdir/usr/share/licenses/intel-dri + #install -Dm644 src/gallium/targets/dri-i915/i915_dri.so $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 src/mesa/drivers/dri/i965/i965_dri.la $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/i965_dri.so $pkgdir/usr/lib/xorg/modules/dri + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/intel-dri + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/intel-dri +} + +package_intel-dri-git() { + depends=( + libgl-git + ) + conflicts=( + intel-dri + intel-gallium-dri + intel-gallium-dri-git + ) + provides=( + intel-dri=$_mesaver + intel-gallium-dri=$_mesaver + intel-gallium-dri-git=$_mesaver + ) + pkgdesc='Mesa DRI drivers for Intel' + + make -C $srcdir/build/src/mesa/drivers/dri/i915 DESTDIR=$pkgdir install + make -C $srcdir/build/src/mesa/drivers/dri/i965 DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/dri + install -m755 -d $pkgdir/usr/share/licenses/intel-dri + #install -Dm644 src/mesa/drivers/dri/i915/i915_dri.la $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 src/mesa/drivers/dri/i915/.libs/i915_dri.so $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 src/mesa/drivers/dri/i965/i965_dri.la $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/i965_dri.so $pkgdir/usr/lib/xorg/modules/dri + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/intel-dri + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/intel-dri +} + +package_nouveau-dri-git() { + depends=( + libgl-git + ) + conflicts=( + nouveau-dri + ) + provides=( + nouveau-dri=$_mesaver + ) + pkgdesc='Mesa classic DRI + Gallium3D drivers for Nouveau' + + # classic mesa driver for nv10 , nv20 nouveau_vieux_dri.so + make -C $srcdir/build/src/mesa/drivers/dri/nouveau DESTDIR=$pkgdir install + # gallium3D driver for nv30 - nv40 - nv50 nouveau_dri.so + make -C $srcdir/build/src/gallium/targets/dri-nouveau DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/dri + install -m755 -d $pkgdir/usr/share/licenses/nouveau-dri + #install -Dm644 src/mesa/drivers/dri/nouveau/nouveau_vieux_dri.la $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/nouveau_vieux_dri.so $pkgdir/usr/lib/xorg/modules/dri + #install -Dm644 lib/gallium/nouveau_dri.so $pkgdir/usr/lib/xorg/modules/dri + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/nouveau-dri + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/nouveau-dri +} + +package_svga-dri-git() { + depends=( + libgl-git + ) + conflicts=( + svga-dri + ) + provides=( + svga-dri=$_mesaver + ) + pkgdesc='Free Gallium3D VMware guest GL driver' + + make -C $srcdir/build/src/gallium/targets/dri-vmwgfx DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/xa-vmwgfx DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/include + #install -m755 -d $pkgdir/usr/lib/pkgconfig + #install -m755 -d $pkgdir/usr/lib/xorg/modules/dri + install -m755 -d $pkgdir/usr/share/licenses/svga-dri + #install -Dm644 lib/gallium/libxatracker.so* $pkgdir/usr/lib + #install -Dm644 src/gallium/state_trackers/xa/xa_composite.h $pkgdir/usr/lib/include + #install -Dm644 src/gallium/state_trackers/xa/xa_context.h $pkgdir/usr/lib/include + #install -Dm644 src/gallium/state_trackers/xa/xa_tracker.h $pkgdir/usr/lib/include + #install -Dm644 src/gallium/targets/xa-vmwgfx/xatracker.pc $pkgdir/usr/lib/pkgconfig + #install -Dm644 lib/gallium/vmwgfx_dri.so $pkgdir/usr/lib/xorg/modules/dri + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/svga-dri + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/svga-dri +} + +package_ati-va-git() { + depends=( + glibc + ) + conflicts=( + ati-va + ) + provides=( + ati-va=$_mesaver + ) + pkgdesc='Mesa Gallium3D VA library for ATI' + + make -C $srcdir/build/src/gallium/targets/va-r300 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/va-r600 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/va-radeonsi DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/va + install -m755 -d $pkgdir/usr/share/licenses/ati-va + #install -Dm644 lib/gallium/libva_r*00.so* $pkgdir/usr/lib/va + #install -Dm644 lib/gallium/libva_radeonsi.so* $pkgdir/usr/lib/va + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/ati-va + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/ati-va +} + +package_soft-va-git() { + depends=( + glibc + ) + conflicts=( + soft-va + ) + provides=( + soft-va=$_mesaver + ) + pkgdesc='Mesa Gallium3D VA library for Software Rasterizer' + + make -C $srcdir/build/src/gallium/targets/va-softpipe DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/va + install -m755 -d $pkgdir/usr/share/licenses/soft-va + #install -Dm644 lib/gallium/libva_softpipe.so* $pkgdir/usr/lib/va + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/soft-va + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/soft-va +} + +package_ati-vdpau-git() { + depends=( + gcc-libs + libdrm-git + libx11 + ) + conflicts=( + ati-vdpau + ) + provides=( + ati-vdpau=$_mesaver + ) + pkgdesc='Mesa Gallium3D VDPAU libraries for ATI' + + make -C $srcdir/build/src/gallium/targets/vdpau-r300 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/vdpau-r600 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/vdpau-radeonsi DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/vdpau + install -m755 -d $pkgdir/usr/share/licenses/ati-vdpau + #install -Dm644 lib/gallium/libvdpau_r*00.so* $pkgdir/usr/lib/vdpau + #install -Dm644 lib/gallium/libvdpau_radeonsi.so* $pkgdir/usr/lib/vdpau + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/ati-vdpau + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/ati-vdpau +} + +package_nouveau-vdpau-git() { + depends=( + gcc-libs + libdrm-git + libx11 + ) + conflicts=( + nouveau-vdpau + ) + provides=( + nouveau-vdpau=$_mesaver + ) + pkgdesc='Mesa Gallium3D VDPAU library for Nouveau' + + make -C $srcdir/build/src/gallium/targets/vdpau-nouveau DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/vdpau + install -m755 -d $pkgdir/usr/share/licenses/nouveau-vdpau + #install -Dm644 lib/gallium/libvdpau_nouveau.so* $pkgdir/usr/lib/vdpau + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/nouveau-vdpau + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/nouveau-vdpau +} + +package_soft-vdpau-git() { + depends=( + gcc-libs + ) + conflicts=( + soft-vdpau + ) + provides=( + soft-vdpau=$_mesaver + ) + pkgdesc='Mesa Gallium3D VDPAU library for Software Rasterizer' + + make -C $srcdir/build/src/gallium/targets/vdpau-softpipe DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/vdpau + install -m755 -d $pkgdir/usr/share/licenses/soft-vdpau + #install -Dm644 lib/gallium/libvdpau_softpipe.so* $pkgdir/usr/lib/vdpau + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/soft-vdpau + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/soft-vdpau +} + +package_ati-xorg-git() { + depends=( + gcc-libs + libdrm-git + ) + conflicts=( + ati-xorg + ) + provides=( + ati-xorg=$_mesaver + ) + pkgdesc='Mesa Gallium3D Xorg Drivers for ATI' + + make -C $srcdir/build/src/gallium/targets/xorg-r300 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/xorg-r600 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/xorg-radeonsi DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/drivers + install -m755 -d $pkgdir/usr/share/licenses/ati-xorg + # gallium3D driver for r300,r600g,radeonsi + #install -Dm644 lib/gallium/r300_drv.so $pkgdir/usr/lib/xorg/modules/drivers + #install -Dm644 lib/gallium/r600g_drv.so $pkgdir/usr/lib/xorg/modules/drivers + #install -Dm644 lib/gallium/radeonsi_drv.so $pkgdir/usr/lib/xorg/modules/drivers + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/ati-xorg + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/ati-xorg +} + +package_intel-xorg-git() { + depends=( + gcc-libs + libdrm-git + ) + conflicts=( + intel-xorg + ) + provides=( + intel-xorg=$_mesaver + ) + pkgdesc='Mesa Gallium3D Xorg Drivers for Intel' + + make -C $srcdir/build/src/gallium/targets/xorg-i915 DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/drivers + install -m755 -d $pkgdir/usr/share/licenses/intel-xorg + #install -Dm644 lib/modesetting_drv.so $pkgdir/usr/lib/xorg/modules/drivers + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/intel-xorg + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/intel-xorg +} + +package_nouveau-xorg-git() { + depends=( + gcc-libs + libdrm-git + ) + conflicts=( + nouveau-xorg + ) + provides=( + nouveau-xorg=$_mesaver + ) + pkgdesc='Mesa Gallium3D Xorg Drivers for Nouveau' + + make -C $srcdir/build/src/gallium/targets/xorg-nouveau DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib/xorg/modules/drivers + install -m755 -d $pkgdir/usr/share/licenses/nouveau-xorg + #install -Dm644 lib/gallium/nouveau2_drv.so $pkgdir/usr/lib/xorg/modules/drivers + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/nouveau-xorg + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/nouveau-xorg +} + +package_ati-xvmc-git() { + depends=( + gcc-libs + libdrm-git + libxv + ) + conflicts=( + ati-xvmc + ) + provides=( + ati-xvmc=$_mesaver + ) + pkgdesc='Mesa Gallium3D XvMC libraries for ATI' + + make -C $srcdir/build/src/gallium/targets/xvmc-r300 DESTDIR=$pkgdir install + make -C $srcdir/build/src/gallium/targets/xvmc-r600 DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib + install -m755 -d $pkgdir/usr/share/licenses/ati-xvmc + #install -Dm644 lib/gallium/libXvMCr*00.so* $pkgdir/usr/lib + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/ati-xvmc + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/ati-xvmc +} + +package_nouveau-xvmc-git() { + depends=( + gcc-libs + libdrm-git + libxv + ) + conflicts=( + nouveau-xvmc + ) + provides=( + nouveau-xvmc=$_mesaver + ) + pkgdesc='Mesa Gallium3D XvMC library for Nouveau' + + make -C $srcdir/build/src/gallium/targets/xvmc-nouveau DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib + install -m755 -d $pkgdir/usr/share/licenses/nouveau-xvmc + #install -Dm644 lib/gallium/libXvMCnouveau.so* $pkgdir/usr/lib + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/nouveau-xvmc + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/nouveau-xvmc +} + +package_soft-xvmc-git() { + depends=( + gcc-libs + libdrm-git + libxv + ) + conflicts=( + soft-xvmc + ) + provides=( + soft-xvmc=$_mesaver + ) + pkgdesc='Mesa Gallium3D XvMC library for Software Rasterizer' + + make -C $srcdir/build/src/gallium/targets/xvmc-softpipe DESTDIR=$pkgdir install + + cd $srcdir/build + #install -m755 -d $pkgdir/usr/lib + install -m755 -d $pkgdir/usr/share/licenses/soft-xvmc + #install -Dm644 lib/gallium/libXvMCsoftpipe.so* $pkgdir/usr/lib + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/soft-xvmc + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/soft-xvmc +} + +package_mesa-git() { + depends=( + dri2proto + glproto-git + libglu-git + ) + optdepends=( + 'libcl: for OpenCL Graphics Video Hardware Support' + 'libegl-wayland-git: for Wayland Desktop Graphics' + 'opengl-man-pages: for the OpenGL API man pages' + ) + conflicts=( + mesa + ) + provides=( + mesa=$_mesaver + ) + pkgdesc='Mesa 3-D graphics libraries and include files' + + cd $srcdir/build + make DESTDIR=$pkgdir install + rm -fvr $pkgdir/usr/include/{EGL,GLES,GLES2,KHR,VG,gbm.h,xa_*.h} + rm -fvr $pkgdir/usr/lib/{egl,gbm,opencl,vdpau,xorg} + rm -fv $pkgdir/usr/lib/{libEGL*,libGL*,libGLESv*,libOSMesa*,libOpenCL*,libOpenVG*,libXvMC*,libdricore*,libgbm*,libglapi*,libwayland*,libxatracker.so*} + rm -fv $pkgdir/usr/lib/pkgconfig/{egl.pc,gbm.pc,glesv1_cm.pc,glesv2.pc,osmesa.pc,vg.pc,wayland-egl.pc,xatracker.pc} + install -m755 -d $pkgdir/usr/share/licenses/mesa + install -Dm644 docs/COPYING $pkgdir/usr/share/licenses/mesa + install -Dm644 docs/license.html $pkgdir/usr/share/licenses/mesa +} diff --git a/pcr/minetest/PKGBUILD b/pcr/minetest/PKGBUILD new file mode 100755 index 000000000..18546b470 --- /dev/null +++ b/pcr/minetest/PKGBUILD @@ -0,0 +1,53 @@ +# Maintainer: Jorge Araya Navarro <jorgean@lavabit.com> +pkgname=minetest-git +pkgver=20120918 +pkgrel=2 +pkgdesc="An Infiniminer/Minecraft inspired game, git version." +arch=('i686' 'x86_64') +url="http://celeron.55.lt/~celeron55/minetest/" +license=('GPL') +makedepends=('git' 'cmake' 'irrlicht' 'mesa' 'libjpeg' 'bzip2' 'libpng' 'zlib' 'libvorbis') +depends=('libjpeg' 'bzip2' 'sqlite3' 'libgl' 'libxxf86vm' 'openal') +conflicts=('minetest' 'minetest-hg') + +_srcroot="https://github.com/celeron55/minetest.git" +_srcname="minetest" + +_gameroot="https://github.com/celeron55/minetest_game.git" +_gamename="minetest_game" + +build() { + cd "$srcdir" + + msg "Pulling sources..." + + if [ -d $_srcname ] ; then + cd $_srcname && git pull origin + msg "The local files are updated." + else + git clone $_srcroot $_gitname + fi + + msg "Pulling game..." + + cd "$srcdir/$_srcname/games/" + + if [ -d $_gamename ] ; then + cd $_gamename && git pull origin + msg "The local files are updated." + else + git clone $_gameroot $_gamename + fi + + + msg "GIT checkout done or server timeout" + msg "Starting make..." + + cd "$srcdir/$_srcname" + cmake . -DCMAKE_INSTALL_PREFIX=/usr + #install -d -m 755 ${pkgdir}/usr/share/applications + #install -d -m 755 ${pkgdir}/usr/share/icons/scalable/apps + #install -m 644 ${srcdir}/minetest.svg ${pkgdir}/usr/share/icons/scalable/apps + #install -m 644 ${srcdir}/minetest-git.desktop ${pkgdir}/usr/share/applications + make DESTDIR=${pkgdir} install +} diff --git a/pcr/nexuiz-data/PKGBUILD b/pcr/nexuiz-data/PKGBUILD new file mode 100644 index 000000000..edd338097 --- /dev/null +++ b/pcr/nexuiz-data/PKGBUILD @@ -0,0 +1,42 @@ +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: Xyne +# Contributor: Rick Chen (stuffcorpse) +# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> +# Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com> +# Contributor: Camille Moncelier <pix@devlife.org> + +pkgname=nexuiz-data +_pkgsourcename=nexuiz +pkgver=2.5.2 +_zipver=252 +pkgrel=1 +arch=('any') +pkgdesc="Nexuiz game data" +conflicts=('nexuiz<2.5.1-3') +url="http://www.nexuiz.com/" +license=("GPL") +source=(http://downloads.sourceforge.net/${_pkgsourcename}/${_pkgsourcename}-${_zipver}.zip) +md5sums=('d750bc328e58df8492f8d88bdcf818cb') + +build() { + _nexdir="$pkgdir/opt/nexuiz" + + _install_dir $srcdir/Nexuiz/Docs $_nexdir/docs + _install_dir $srcdir/Nexuiz/data $_nexdir/data + _install_dir $srcdir/Nexuiz/havoc $_nexdir/havoc + _install_dir $srcdir/Nexuiz/server $_nexdir/server + + find $_nexdir/server -name "*_windows.bat" -exec rm {} \; + find $_nexdir/server -name "*_mac.sh" -exec rm {} \; +} + +function _install_dir { + _src_dir=$1 + _dest_dir=$2 + _n=${#_src_dir} + for _file in $(find $_src_dir -type f) + do + _dest_file=${_dest_dir}${_file:$_n} + install -Dm644 $_file $_dest_file + done +} diff --git a/pcr/nexuiz/PKGBUILD b/pcr/nexuiz/PKGBUILD new file mode 100644 index 000000000..3b59cd617 --- /dev/null +++ b/pcr/nexuiz/PKGBUILD @@ -0,0 +1,56 @@ +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: Xyne +# Contributor: Rick Chen (stuffcorpse) +# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> +# Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com> +# Contributor: Camille Moncelier <pix@devlife.org> + +pkgname=nexuiz +pkgver=2.5.2 +_zipver=252 +pkgrel=2 +arch=('i686' 'x86_64') +pkgdesc="a free software first person shooter" +url="http://www.nexuiz.com/" +license=("GPL") +depends=('alsa-lib' 'curl' 'libjpeg>=8' 'libmodplug' 'libvorbis' 'libxpm' 'libxxf86dga' 'libxxf86vm' 'sdl' 'nexuiz-data' 'libpng>=1.4.0') +makedepends=('mesa') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${_zipver}.zip \ + nexuiz-dedicated nexuiz-glx nexuiz-sdl nexuiz-glx.desktop \ + nexuiz-sdl.desktop nexuiz.png libpng14.patch) +md5sums=('d750bc328e58df8492f8d88bdcf818cb' + '19bfaa6e891d3309783e8366db485474' + '4d0ee9282a6fe153f82f7797decfd585' + '3e5ea741e8d55df8e7691c797c81ffa7' + '310f0577c39391f2d2f17cea446ce269' + '4561d3c5be4801399af515faf82ebcba' + '442fb62670bbe0a1b5370461052051a3' + '60964348924ff777a92dbb171a86a1ed') + +build() { + _nexdir="$pkgdir/opt/nexuiz" + _enginesource_date="20091001" + mkdir -p "$_nexdir" || return 1 + + cd $srcdir/Nexuiz + bsdtar -x -f sources/enginesource${_enginesource_date}.zip || return 1 + cd darkplaces + patch -Np1 -i ${srcdir}/libpng14.patch || return 1 + # patch -p1 < "$srcdir/nexuiz-libjpeg-fix.patch" || return 1 + + # here's a working kludge to build all three binaries at once but don't use it ;) + # make CPUOPTIMIZATIONS="${CFLAGS}" nexuiz || make CPUOPTIMIZATIONS="${CFLAGS}" nexuiz || return 1 + + # build the binaries separately instead to avoid truncated files + make CPUOPTIMIZATIONS="${CFLAGS}" DP_LINK_TO_LIBJPEG=1 cl-nexuiz || return 1 + make CPUOPTIMIZATIONS="${CFLAGS}" DP_LINK_TO_LIBJPEG=1 sdl-nexuiz || return 1 + make CPUOPTIMIZATIONS="${CFLAGS}" DP_LINK_TO_LIBJPEG=1 sv-nexuiz || return 1 + + # install the compiled binaries + install -Dm755 nexuiz-glx nexuiz-sdl nexuiz-dedicated -t $_nexdir || return 1 + + install -dm755 $pkgdir/usr/{bin,share/applications} || return 1 + install -Dm755 $srcdir/nexuiz-{glx,sdl,dedicated} -t $pkgdir/usr/bin || return 1 + install -Dm644 $srcdir/*.desktop -t $pkgdir/usr/share/applications || return 1 + install -Dm644 $srcdir/nexuiz.png $pkgdir/usr/share/pixmaps/nexuiz.png || return 1 +} diff --git a/pcr/nexuiz/libpng14.patch b/pcr/nexuiz/libpng14.patch new file mode 100644 index 000000000..d6ce5ea76 --- /dev/null +++ b/pcr/nexuiz/libpng14.patch @@ -0,0 +1,39 @@ +diff -Nur darkplaces.old/image_png.c darkplaces/image_png.c +--- darkplaces.old/image_png.c 2009-09-15 06:08:02.000000000 +0300 ++++ darkplaces/image_png.c 2010-01-28 01:23:24.000000000 +0200 +@@ -36,7 +36,7 @@ + static void* (*qpng_create_info_struct) (void*); + static void (*qpng_read_info) (void*, void*); + static void (*qpng_set_expand) (void*); +-static void (*qpng_set_gray_1_2_4_to_8) (void*); ++static void (*qpng_set_expand_gray_1_2_4_to_8) (void*); + static void (*qpng_set_palette_to_rgb) (void*); + static void (*qpng_set_tRNS_to_alpha) (void*); + static void (*qpng_set_gray_to_rgb) (void*); +@@ -61,7 +61,7 @@ + {"png_create_info_struct", (void **) &qpng_create_info_struct}, + {"png_read_info", (void **) &qpng_read_info}, + {"png_set_expand", (void **) &qpng_set_expand}, +- {"png_set_gray_1_2_4_to_8", (void **) &qpng_set_gray_1_2_4_to_8}, ++ {"png_set_expand_gray_1_2_4_to_8", (void **) &qpng_set_expand_gray_1_2_4_to_8}, + {"png_set_palette_to_rgb", (void **) &qpng_set_palette_to_rgb}, + {"png_set_tRNS_to_alpha", (void **) &qpng_set_tRNS_to_alpha}, + {"png_set_gray_to_rgb", (void **) &qpng_set_gray_to_rgb}, +@@ -110,7 +110,7 @@ + #elif defined(MACOSX) + "libpng12.0.dylib", + #else +- "libpng12.so.0", ++ "libpng14.so.0", + "libpng.so", // FreeBSD + #endif + NULL +@@ -311,7 +311,7 @@ + { + qpng_set_gray_to_rgb(png); + if (my_png.BitDepth < 8) +- qpng_set_gray_1_2_4_to_8(png); ++ qpng_set_expand_gray_1_2_4_to_8(png); + } + + if (qpng_get_valid(png, pnginfo, PNG_INFO_tRNS)) diff --git a/pcr/nexuiz/nexuiz-dedicated b/pcr/nexuiz/nexuiz-dedicated new file mode 100644 index 000000000..bf517cce7 --- /dev/null +++ b/pcr/nexuiz/nexuiz-dedicated @@ -0,0 +1,3 @@ +#!/bin/sh +cd /opt/nexuiz +./nexuiz-dedicated $@ diff --git a/pcr/nexuiz/nexuiz-glx b/pcr/nexuiz/nexuiz-glx new file mode 100644 index 000000000..5fad4db07 --- /dev/null +++ b/pcr/nexuiz/nexuiz-glx @@ -0,0 +1,3 @@ +#!/bin/sh +cd /opt/nexuiz +./nexuiz-glx $@ diff --git a/pcr/nexuiz/nexuiz-glx.desktop b/pcr/nexuiz/nexuiz-glx.desktop new file mode 100644 index 000000000..8808c16db --- /dev/null +++ b/pcr/nexuiz/nexuiz-glx.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Type=Application +Version=2.5 +Encoding=UTF-8 +Name=Nexuiz (GLX) +Comment=a free open-source first person shooter +Icon=/usr/share/pixmaps/nexuiz.png +Exec=/usr/bin/nexuiz-glx +Terminal=false +StartupNotify=false +Categories=Game; diff --git a/pcr/nexuiz/nexuiz-sdl b/pcr/nexuiz/nexuiz-sdl new file mode 100644 index 000000000..36b6d5cc3 --- /dev/null +++ b/pcr/nexuiz/nexuiz-sdl @@ -0,0 +1,3 @@ +#!/bin/sh +cd /opt/nexuiz +./nexuiz-sdl $@ diff --git a/pcr/nexuiz/nexuiz-sdl.desktop b/pcr/nexuiz/nexuiz-sdl.desktop new file mode 100644 index 000000000..019970e61 --- /dev/null +++ b/pcr/nexuiz/nexuiz-sdl.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Type=Application +Version=2.5 +Encoding=UTF-8 +Name=Nexuiz (SDL) +Comment=a free open-source first person shooter +Icon=/usr/share/pixmaps/nexuiz.png +Exec=/usr/bin/nexuiz-sdl +Terminal=false +StartupNotify=false +Categories=Game; diff --git a/pcr/nexuiz/nexuiz.png b/pcr/nexuiz/nexuiz.png Binary files differnew file mode 100644 index 000000000..a0ec8b3d4 --- /dev/null +++ b/pcr/nexuiz/nexuiz.png diff --git a/pcr/owncloud-client/PKGBUILD b/pcr/owncloud-client/PKGBUILD new file mode 100644 index 000000000..7e8dfa59a --- /dev/null +++ b/pcr/owncloud-client/PKGBUILD @@ -0,0 +1,54 @@ +# Maintainer: Kuba Serafinowski <zizzfizzix(at)gmail(dot)com> +# https://github.com/zizzfizzix/pkgbuilds + +############################################################## +#### The section below can be adjusted to suit your needs #### +############################################################## + +# What type of build do you want? +# See http://techbase.kde.org/Development/CMake/Addons_for_KDE#Buildtypes to check what is supported. +# Default is RelWithDebInfo to help with debugging. + +_buildtype="RelWithDebInfo" + +############################################################## + +_name=mirall +pkgname=owncloud-client +pkgver=1.0.5 +pkgrel=2 +pkgdesc="ownCloud client based on mirall" +arch=('i686' 'x86_64') +url="http://owncloud.org/" +license=('GPL2') +depends=('qt' 'csync-owncloud') +makedepends=('cmake') +provides=('mirall' 'owncloud-client') +conflicts=('mirall-git') +options=(!strip) +install=owncloud-client.install +backup=('etc/exclude.lst') +source=("http://download.owncloud.com/download/${_name}-${pkgver}.tar.bz2" + "${pkgname}.desktop") +md5sums=('b7a96411f092bb16f88e3868a558032f' + 'e223d162626c2ff54efebaa90a182d81') + +# Clean options array to strip pkg if release buildtype is chosen +if [[ ${_buildtype} == "Release" ]] || [[ ${_buildtype} == "release" ]]; then + options=() +fi + +build() { + if [[ -e ${srcdir}/${_name}-${pkgver}-build ]]; then rm -rf ${srcdir}/${_name}-${pkgver}-build; fi + mkdir ${srcdir}/${_name}-${pkgver}-build + cd ${srcdir}/${_name}-${pkgver}-build + + cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib -DCMAKE_BUILD_TYPE=${_buildtype} ../${_name}-${pkgver} + make +} + +package() { + cd ${srcdir}/${_name}-${pkgver}-build + make DESTDIR=${pkgdir} install + install -Dm644 ${srcdir}/${pkgname}.desktop ${pkgdir}/usr/share/applications/${pkgname}.desktop +} diff --git a/pcr/owncloud-client/owncloud-client.desktop b/pcr/owncloud-client/owncloud-client.desktop new file mode 100644 index 000000000..005e52219 --- /dev/null +++ b/pcr/owncloud-client/owncloud-client.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Type=Application +Version=1.0 +Name=ownCloud 2012 client +GenericName=File Sync +TryExec=owncloud +Exec=owncloud %u +Comment=ownCloud - Your Cloud, Your Data, Your Way! +Icon=mirall +Terminal=false +Categories=Qt;Utility; diff --git a/pcr/owncloud-client/owncloud-client.install b/pcr/owncloud-client/owncloud-client.install new file mode 100644 index 000000000..1c0de2e4f --- /dev/null +++ b/pcr/owncloud-client/owncloud-client.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/pcr/perl-astro-suntime/PKGBUILD b/pcr/perl-astro-suntime/PKGBUILD new file mode 100644 index 000000000..d615aa3af --- /dev/null +++ b/pcr/perl-astro-suntime/PKGBUILD @@ -0,0 +1,29 @@ +# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman +# Contributor: Ross melin <rdmelin@gmail.com> + +# Required by zoneminder + +pkgname=perl-astro-suntime +pkgver=0.01 +pkgrel=2 +pkgdesc="Calculate sun rise/set times" +arch=('i686' 'x86_64') +url="http://search.cpan.org/~ROBF/Astro-SunTime" +license=('GPL' 'PerlArtistic') +depends=('perl-time-modules') +options=('!emptydirs') +source=(http://www.cpan.org/authors/id/R/RO/ROBF/Astro-SunTime-$pkgver.tar.gz) +md5sums=('4657927a49604494bfaaa153663b90b9') + +build() { + cd $startdir/src/Astro-SunTime-$pkgver + eval `perl -V:archname` + PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL \ + INSTALLDIRS=vendor || return 1 + /usr/bin/make || return 1 + /usr/bin/make DESTDIR=$startdir/pkg install || return 1 + /usr/bin/find $startdir/pkg -name '.packlist' -delete + /usr/bin/find $startdir/pkg -name '*.pod' -delete +} + +# vim:set ts=2 sw=2 et: diff --git a/pcr/perl-expect/PKGBUILD b/pcr/perl-expect/PKGBUILD new file mode 100644 index 000000000..fefa03a0b --- /dev/null +++ b/pcr/perl-expect/PKGBUILD @@ -0,0 +1,52 @@ +# CPAN Name : Expect +# Contributor: Max Roder <maxroder@web.de> +# Contributor: DarkHeart +# Generator : CPANPLUS::Dist::Arch 1.19 +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgname='perl-expect' +pkgver='1.21' +pkgrel='2' +pkgdesc="Perl version of Don Libes' Tcl-Expect" +arch=('any') +license=('PerlArtistic' 'GPL') +options=('!emptydirs') +depends=('perl-io-tty>=1.03') +makedepends=() +url='http://search.cpan.org/dist/Expect' +source=('http://search.cpan.org/CPAN/authors/id/R/RG/RGIERSIG/Expect-1.21.tar.gz') +md5sums=('a151b0dc4d1a35c73941c65b7c26da5b') +sha512sums=('496716b9e6544e9d6809b7f704df8199291d18ec9ec9ebb4fd2b7b341aa10d9b03989335c1f22d1faddbff0974ceba5b2823685fa08ce6a75e2f3ccaeb944e74') +_distdir="${srcdir}/Expect-1.21" + +build() { + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \ + PERL_AUTOINSTALL=--skipdeps \ + PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \ + PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \ + MODULEBUILDRC=/dev/null + + cd "$_distdir" + /usr/bin/perl Makefile.PL + make + ) +} + +check() { + cd "$_distdir" + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" + make test + ) +} + +package() { + cd "$_distdir" + make install + find "$pkgdir" -name .packlist -o -name perllocal.pod -delete +} + +# Local Variables: +# mode: shell-script +# sh-basic-offset: 2 +# End: +# vim:set ts=2 sw=2 et: diff --git a/pcr/perl-net-sftp-foreign/Changes b/pcr/perl-net-sftp-foreign/Changes new file mode 100644 index 000000000..eff2bb00b --- /dev/null +++ b/pcr/perl-net-sftp-foreign/Changes @@ -0,0 +1,795 @@ +Revision history for Net::SFTP::Foreign + +1.73 May 11, 2012 + - password authentication was broken on Solaris (maybe also on + others) due to an incorrect waitpid call (bug report and + solution by Douglas Wilson) + - disconnect was dieing when used with autodie on (bug report + by Douglas Wilson) + +1.72_02 May 4, 2012 + - add methods truncate, chmod, chown and utime + - make setstat, stat and statvfs accept both a path and a + remote file/dir handle as its first argument + - deprecate fsetstat, fstat and fstatvfs + - refactor remove and rmdir generation + - add support for sparse file transfer + - minor doc improvements + +1.72_01 Mar 20, 2012 + - add support for asks_for_username_at_login feature (feature + request by Horea Gligan) + - key_path now can accept an array + +1.71 Mar 14, 2012 + - release as stable + - add support for vendor-id extension + +1.70_10 Mar 2, 2012 + - now perm and umask can be used together on get method calls + - more cleanups for permission handling code on get method + +1.70_09 Mar 2, 2012 + - autodie was no working for chmod errors on get + - get was unlinking the file when chmod failed even whith + append or resume set + - get was failing when chmod failed even if copy_perms was + dissabled (bug report by Rich Anderson) + - solve bad interaction between autodie, resume and append + - best_effort wrapped methods were not failing ever + - minor put method refactoring + - save globals on destructor entry + - better put method debugging + +1.70_08 Feb 19, 2012 + - queue_size defaults per backend were using the wrong key + name and so being ignored. That was causing connections to + stall on Windows with the default backend. + +1.70_07 Feb 19, 2012 + - put recovers from open calls failing due to the existence of + a remote file with the wrong permissions + - do not use accessors for status and error slots internally + - test_d and test_e methods where broken when used with + autodie, this bug may also affected rget, rput and other + high level methods + +1.70_06 Feb 13, 2012 + - add put_content method + - support perm option in mget, mput, rget and rput methods + - better umask handling, now use an object to reset it at end + of scope + - improve debugging output + +1.70_05 Feb 5, 2012 + - on Compat::get $remote argument is optional + - make Compat::(get|put) use best_effort by default + - add support for best_effort feature + +1.70_04 Jan 22, 2012 + - check number of arguments passed to Compat methods + +1.70_03 Dec 11, 2011 + - remove uninitialized warning when using a custom transport + (bug report by Kay-C. Baufeld) + - several spelling corrections (patch contributed by Nicholas + Bamber) + +1.70_02 Dec 10, 2011 + - syntax error, POSIX::WNOHANG was recognized as bareword in + perl 5.8 + +1.70_01 Dec 9, 2011 + - do not use Expect to handle password authentication but a + hand-crafted method that uses IO::Pty directly + - solve problem with connections stalling when using password + authentication and the remote host was unreachable (bug + report by Srini T) + +1.69 Dec 9, 2011 + - release as stable + +1.68_08 Oct 11, 2011 + - accept an array reference in ssh_cmd + - use warnings::warnif to generate warnings + - minor doc improvements and corrections + - in case of sftp-server not found test were not skipped but + failed + +1.68_07 Oct 10, 2011 + - password authentication was not working with the new + IPC::Open3 replacement code (bug report by Srini T) + - empty password handling was also broken + - allow setting the backend on all the tests + +1.68_06 Oct 9, 2011 + - do not use the buggy IPC::Open3 under Unix/Linux. This is a + mayor internal change, please report any connection problems + that were not happening with previous versions of the module + - allow testing Windows backend under Unix + +1.68_05 Sep 27, 2011 + - this version is more picky about incomplete responses to + stat requests when copy_perms or copy_time are enabled + (implicetly or explicitly) on get method + - handle incomplete attributes in stat response inside get + (bug report by Gus via the Perl Guru Forums). + +1.68_04 Sep 7, 2011 + - accept passing undef as second argument to put, get, rput, + rget, mput and mget + - catch invalid undefined arguments in several places + - custom conversion usage was broken + - add %DEFAULTS to Compat package for setting default options + for Net::SFTP::Foreign methods called under the hood. + +1.68_03 Aug 28, 2011 + - atomic feature added to get, put and higher level methods + using them + - cleanup feature added to get and put + - support for numbered feature added to rename + - save final target name when a reference is passed as + numbered option + - refactor rput and rget handling of put, put_symlink, get and + get_symlink options using hashes + - remove operation inside put_symlink was clobbering error and + status from previous symlink call + - do not die from inside DESTROY methods when autodie is set + - resume feature in get method was broken + - refactor numbered logic inside _inc_numbered sub + - refactor _gen_save_status_method using local + +1.68_02 Jul 20, 2011 + - make unix2dos clever so it doesn't convert CR+LF sequences + into CR+CR+LF (bug report by Pavel Albertyan). + +1.68_01 Jul 12, 2011 + - add workaround for crippled versions of Scalar::Util + - document overwrite and numbered options as accepted by the + put method (reported by Paul Kolano) + +1.67 Jul 4, 2011 + - released as stable in order to solve critical bug: + - solve regresion introduced in 1.63_05 that caused ssh to + hang when trying to access the tty + - pass password to plink via -pw and generate a warning when + doing so + - support for key_path constructor argument + - support for autodie mode + - docs misspelling errors corrected (reported by Michael + Stevens) + +1.66_01 Jun 3, 2011 + - allow using regexp objects as patterns on glob and derived + methods + - some doc improvements + +1.65 May 17, 2011 + - die_on_error was broken + +1.64 May 09, 2011 + - release as stable + - document the write_delay and read_ahead options + - minor doc corrections + +1.63_10 Apr 13, 2011 + - workaround bug in perl 5.6 calling STORE in a tied + filehandle + - solve "not enough arguments for grep" when using an old + version of Scalar::Util + +1.63_09 Apr 12, 2011 + - an error in the handler accessors was adding and useless + wrapping layer + +1.63_08 Jan 22, 2011 + - bad method call inside mkpath corrected (bug report and + solution by Adam Pingel) + +1.63_07 Jan 20, 2011 + - do not override PreferredAuthentication when explicitly set + by the user (bug report and solution by Ave Wrigley) + +1.63_06 Dec 10, 2010 + - redirect_stderr_to_tty was redirecting to the wrong side of + the tty (bug report by Russ Brewer) + +1.63_05 Dec 6, 2010 + - add support for hardlink@openssh.com extension + - add die_on_error method + - create a new process group for slave ssh process so that + signals sent from the terminal are not propagated + - better error messages + +1.63_04 Nov 11, 2010 + - workaround for IPC::Open3::open3 not working with tied file + handles on Windows (bug report by Barnabas Bona) + - several spelling corrections (contributed by Philippe Bruhat) + +1.63_03 Nov 10, 2010 + - On some OSs (i.e. AIX) reading/writing from non-blocking fds + can result in EAGAIN even when select has indicated that + data was available (bug report and patch by Bill Godfrey) + +1.63_02 Nov 2, 2010 + - Windows backend was not pipelining requests when called from + put method + +1.63_01 + - support for Tectia client added (bug report by Russ Brewer) + +1.62 Oct 5, 2010 + - _catch_tainted_args was not being imported from helpers (bug + report by rfbits at PerlMonks) + +1.61 Sep 22, 2010 + - remove some dead code introducing unneeded constraints that + cause the Net::SSH2 backend to fail (bug report by Philippe + Vouters) + +1.60 Sep 20, 2010 + - _ensure_list was not being imported from Helpers (bug report + and solution by Jean-Benoît Baudens) + +1.59 Sep 16, 2010 + - kill ssh subprocess with KILL signal on Windows + +1.58_08 Aug 22, 2010 + - import _hexdump from Helpers.pm (bug report by Chuck Kozak) + - call kill passing the signal name instead of using POSIX to + get its number + +1.58_07 Aug 2, 2010 + - dump $! on failed sysreads and syswrites + +1.58_06 Jul 12, 2010 + - rput was broken under Windows (bug report by Brian + E. Lozier) + - do not use Fcntl S_IS* macro wrappers as S_ISLNK is not + available under Windows + - new FAQ about put failing because of forbidden setstat + - minor doc improvements + - use "kill $name" instead of using POSIX to get the signal + number + +1.58_05 Jun 7, 2010 + - add support for stderr_discard also in Windows backend + +1.58_04 Jun 7, 2010 + - add support for stderr_discard + +1.58_03 May 27, 2010 + - even more debugging for put method and the resume feature + +1.58_02 + - add FAQ about strict host key checking + - better debugging for put method + +1.58_01 Apr 19, 2010 + - add stderr redirection feature + - minor doc corrections + - add donating to OpenSSH entry in docs + +1.57 Mar 14, 2010 + - release as stable + +1.56_09 Mar 11, 2010 + - realpath feature was broken on find and ls methods (bug + report by Paul Kolano) + - taint checks on hashes were not reporting problems properly + - minor doc corrections + +1.56_08 Jan 5, 2010 + - put'ting a tied file handle was generating some warnings + (bug report and patch by Gavin Carr) + +1.56_07 Dec 29, 2009 + - new methods added: mget, mput, get_symlink, put_symlink + - new numbered feature + - some minor bugs corrected + - glob can now also be used from Net::SFTP::Foreign::Local + - some doc corrections and improvements + - _call_on_error was not cleaning up under some conditions + +1.56_06 Dec 14, 2009 + - mkpath was broken, rewritten to not use the obsolete + _normalize_path method (bug report by Peter Edwards). + - add some tests for mkpath + - introduce internal _clear_error_and_status method + - completely remove _normalize_path + - correct bug in _debug not printing sub name under some + conditions + +1.56_05 Dec 9, 2009 + - add support for plugable backends ***THIS IS A MAYOR + INTERNAL CHANGE THAT COULD INTRODUCE NEW BUGS*** + +1.56_04 Dec 8, 2009 + - remote file path joining sub rewritten (note: this could + change the module behaviour in some corner cases) + - new test file with path join operations + - rput('.',...) was failing due to bad path joining for local + filesystem (bug report by Aaron Paetznick). + - accept keyboard-interactive authentication + - some docs reorganization + - add pointer to my wish list :-) + +1.56_03 Nov 14, 2009 + - use SIGTERM to kill children also on Windows + - workaround Cygwin bug, fopen(..., a); ftell() does not + return the size of the file + +1.56_01 Oct 26, 2009 + - pass PreferredAuthentication option to SSH process to force + password authentication (bug and solution by Stewart + Heckenberg) + - use SIGTERM instead of SIGHUP to kill slave SSH process + +1.55 Sep 9, 2009 + - re-release as stable + +1.54_03 Sep 4, 2009 + - add debugging to _rel2abs + +1.54_02 Aug 19, 2009 + - add extra sanity check to setcwd method. It seems that some + servers do not report an error when realpath is called on an + inexistent file (bug report by Ben Szulc) + - password authentication broken in AIX + - some documentation corrections + - more tests added + +1.54_01 Jul 22, 2009 + - yet another "Password not requested as expected" bug solved, + $pty->close_slave was being called too soon (bug report by + Tim Rayner) + +1.53 Jul 6, 2009 + - re-released as stable + +1.52_12 Jul 2, 2009 + - also if using password authentication, detect when the + remote host key doesn't match the key stored in know_hosts + and abort the connection (bug report by Ryan Niebur). + - if using password authentication, detect when the target + host key has not been accepted yet (bug report by Ryan + Niebur) + - work around for IPC::Open3 feature missing in old versions + of that module that caused password authentication to fail + under 5.6.x perls (bug report by Vetrivel). + - find method would not follow links passed as arguments to + the method or others found when ordered mode was selected + (bug report by Paul Kolano) + - detect bad passwords and other password authentication + improvements + - sample scripts added + - atomic_rename was returning the wrong error code/string + - Perl 5.11 changes the EOF call interface for tied file + handles + - attributes flags slot was incorrectly set on new_from_buffer + - get/put_int64 optimization + - add calling function name to debug output + - add debug hexdumps for sysreads and syswrites + - optimize some common ls usages to reduce CPU utilization + - implement pipelining for ls command + - ls bug, wanted was being called with the wrong arguments + - add timestamps to debugging output + - ensure that attribute arguments are of class + Net::SFTP::Foreign::Attributes (feature request by Todd + Rinaldo) + - put_attributes was broken + - move _hexdump to Helpers package + - debug subsystem cleanup + +1.51 Apr 7, 2009 + - "get" corrupted the fetched files if $\ was non empty (bug + report and solution by Dagfinn Ilmari Mannsaker) + - increment default packet and queue size + +1.50 Mar 18, 2009 + - rel2abs was not collapsing duplicated slashes when joining + paths, generating paths as '//home' that have an unexpected + meaning under Windows (bug report and solution by Erik + Weidel) + +1.49 Mar 17, 2009 + - use utf8::downgrade to handle data with may have its utf8 + flag set (bug report by Jamie Lahowetz, solution by ikegami) + - emulate SSH2_FXF_APPEND mode not supported by OpenSSH SFTP + server + - open flags documented + - minor documentation corrections + - follow_links option from find method was broken (bug report + by Paul Kolano) + - spurious debugging message removed from statvfs + - put and get now accept a file handle instead of a file name + for the local file (feature request by David Morel) + - add support for append option in put and get + - put and get documentation reorganized + - improve write caching behavior, '_write_delay' is used to + control the write buffer size (feature request by David + Morel) + +1.47 Feb 13, 2009 + - add support for per object dirty cleanup flag required by + proper Net::OpenSSH integration + - add support for old SSH1 + +1.46 Dec 18, 2008 + - release as stable version + - improve synopsis documentation + - commercial support offering note added + +1.45 Nov 11, 2008 + - reduce localized scope for $SIG{__DIE__} and $@ (bug report + by David Serrano and David Riosalido) + - workaround incomplete unicode support in perl 5.6.x + - new FAQ entry about how to completely disable passwd + authentication + - add support for OpenSSH protocol extensions statvfs, + fstatvfs and posix-rename. + - add overwrite feature to rename method + - new fs_encoding feature added ***this is a mayor internal + change that could introduce new bugs*** + - when parsing status msgs, the string was not being converted + to utf8 + - croak when utf8 data is written to remote files in any way. + - binmode ssh_in and ssh_out + - some minor documentation corrections + - add support for mkpath (feature requested by Mark Murphy) + - add support for late_set_attr (bug report by Oliver Dunbar) + - add support for extended file attributes (bug report by + Oliver Dunbar) + - add support for the autodisconnect feature (bug report by + Jared Watkins). + - add support for multiprocess debugging + +1.44 Oct 9, 2008 + - put was using block sizes 4 times bigger than + requested, bug introduced in 1.41 (reported by Hussain + Syed). + +1.43 Sep 8, 2008 + - readline was slurping the full file contents (bug report by + Sylvain Cousineau). + +1.42 Jul 17, 2008 + - experimental support for resuming file transfers + - some typos fixed + - TODO added + +1.41 Jul 16, 2008 + - add support for on the fly data conversions including + dos2unix and unix2dos + - copy_perm => 0 was being ignored in several methods (bug + report by Dave Tauzell) + +1.40 Jun 24, 2008 + - work around for servers that do not include the mandatory + error message on SSH_FXP_STATUS responses (bug report by + Hugh Lampert). + +1.39 Jun 23, 2008 + - suppress warning on mod_perl environments (bug and solution + reported by Eric Rybski). + +1.38 May 20, 2008 + - add experimental support for plink command + - on get, don't change file size passed to callback + - on get, survive stat failure for servers with stat/readdir + disabled (bug reported by Hussain Syed) + - default open mode set to read + - add support for block_size and queue_size constructor + arguments + - limit usage of Expect and PTYs to authentication phase (bug + reported by Tom Warkentin) + - honour copy_perm option in put method (bug report by Bruce + Harold) + - copy_perms option renamed to copy_perm for consistency + (copy_perms still supported) + - glob optimization + - typo in Net::SFTP::Foreign::Common::_set_errno was not + setting $! correctly (bug report by Rafael Kitover) + - add debugging support to _do_io and _set_(status|error) + +1.36 Apr 18, 2008 + - forbid usage of Net::SFTP::Foreign methods from Compat + module (bug reported by Fred Zellinger) + - document the password and passphrase constructor + options. + +1.35 Feb 8, 2008 + - put method was failing for binary files under Windows + because binmode was not set on the local filehandler (bug + report and patch by Patrick Frazer). + +1.34 Jan 8, 2008 + - document rput. It said it was not implemented (bug report + by Paul Kolano). + - put method was failing for binary files under Windows + because binmode was not set on the local filehandler (bug + report and patch by Patrick Frazer). + +1.33 Jan 6, 2008 + - rremove was not removing dirs (bug report by Paul Kolano). + - require perl >= 5.6 + - add support for open/close and DESTROY debugging + +1.32 Dec 8, 2007 + - add new question to FAQ + - document password and passphrase options (though, not + completely). + - somo minor documentation changes + - on testing look for sftp-server on libexec dirs + - and delete temporal files + +1.31 Oct 8, 2007 + - remove Win32::Socketpair loading, it is not used anymore + - improve debugging + - do not croak when invalid data from the other side appears + +1.30 Aug 23, 2007 + - add support for realpath option to ls method + - add support for realpath and names_only to glob method + - improve _set_status and _set_error methods + - add support for password authentication and for keys with + passphrases + +1.29 Aug 14, 2007 + - add support for names_only option to ls and find methods + - make ls and find methods default to '.' + - DESTROY was also messing with $? and $! values (bug reported + by Dave Haywood) + - better usage checking for several methods + - add support for cwd (experimental) + - symlink docs corrected + - several other doc corrections + +1.28 + - argument checking in rename was wrong (reported by Greg + Howard) + - disable DIE custom handlers when using eval + +1.27 Jul 7, 2007 + - catch insecure $ENV{PATH} under taint mode (bug reported by + jmarshll). + +1.26 Jul 5, 2007 + - my email was missing from the docs + - make it work under taint checking (experimental feature). + - work around bug in dualvar under taint checking + +1.25 Jun 19, 2007 + - remove some obsolete tests not working on 5.9.x + +1.24 Jun 18, 2007 + - DESTROY was messing up $@ (bug reported by Kai Grossjohann) + - set $SIG{PIPE} handler inside _do_io to catch IO errors + - don't execute external command when transport option is used + on constructor + +1.23 May 23, 2007 + - release as stable! + - some doc improvements + +0.90_22 Apr 29, 2007 + - experimental Windows support added + +0.90_21 Apr 25, 2007 + - some documentation improvements + - check that ctor 'more' arguments are not joined + - eliminate "Password" prompt on passwd_auth sample (solution + suggested by Fletch on PerlMonks) + +0.90_20 Apr 20, 2007 + - add support for "transport" options on the constructor that + allows to use password authentication and keys protected by + a passphrase + - add password authentication sample + +0.90_19 Apr 5, 2007 + - add abort method (feature requested by Jamie Lahowetz) + +0.90_18 Mar 23, 2007 + - fallback to dirty cleanup if ssh process doesn't exit cleanly in + 8 seconds (bug reported by Brandon Schendel). + +0.90_17 Mar 21, 2007 + - add support for dont_save flag in get method, required for + Compat module (bug reported by Jamie Lahowetz). + +0.90_16 Mar 18, 2007 + - new tests added + - mkdir, rmdir, remove, setstat, fsetstat and _close methods + argument parsing was wrong (bug #25101 reported by + funkonaut) + - wrong detection of Sort::Key corrected + - debug mode was broken + - network errors do not die anymore, documented + +0.90_15 Dec 19 2006 + - messages were not being queued on get method and so, + performance was very bad (reported by "sched" via + Perlmonks). + - Auto reduce block size on get method. + +0.90_14 Nov 8 2006 + - FAQ section added on the module documentation + - Net::SFTP supplant was not working, corrected + +0.90_13 Sep 22 2006 + - fchmod is not available everywhere, don't use it (bug and + solution reported by Andre Tomt). + +0.90_12 Aug 21 2006 + - syntax error on Net::SFTP::Foreign::Compat corrected + (reported by Hans Schligtenhorst). + - supplant was misspelled + - correct some dependency problems on Compat. + - add test for Compat. + +0.90_11 Jun 30 2006 + - don't croak from connect on runtime errors + - workaround bug in IPC::Open3 that leaves two processes + running + +0.90_10 May 17 2006 + - 0 is a valid sftp handler. + +0.90_09 Apr 25 2006 + - bug on _do_io method corrected + +0.90_08 Apr 24 2006 + - bug for copy_perms => 0 corrected (reported by Erik + Johansen). + - usage checks added to most commands. + +0.90_07 Apr 23 2006 + - don't use pack for quads on little-endian systems (bug + reported by Mogens Hafsjold) + +0.90_06 Feb 24 2006 + - implement rput + - use Win32::Socketpair on Windows + - implement API for local fs in Local + - move common functions to Common and Helpers packages + +0.90_05 Feb 23 2006 + - convert remote file handle strings to tied file handles + - most methods changed to mimic perl buil-ins + - attach file position to file handles. + +0.90_04 Feb 22 2006 + - remove bug in get that could left remote file handles open + - new methods readlink, symlink, rremove, rget. + +0.90_03 Feb 21 2006 + - minor corrections to the docs + - new methods glob and join implemented. + +0.90_02 Feb 20 2006 + - added new method find + - ls method expanded with callback + - contructor rewritten + - better docs for Constants package + - Compat module updated + - several corrections on the docs + +0.90_01 Feb 16 2006 + - almost full rewrite exposing new much improved and + incompatible API!!! + +-------------------------------------------------------------------------- + +0.57 Nov 29 2005 + - check sysread return value when reading from pipe (bug + report and patch submited by Mina Naguib). + +0.56 Nov 14 2005 + - correct bug on open2_cmd option + +0.55 Oct 24 2005 + - kill ssh process when done (bug reported by Alf Carlsson). + +0.54 Sep 07 2005 + - add support for transferring files bigger than 4GB + +0.53 May 03 2005 + - link to SFTP draft actualised + +0.52 May 03 2005 + - some typos corrected on the docs. + +0.51 May 03 2005 + - Net::SFTP::Foreign::Buffer reimplemented from scratch. It + doesn't depend on Net::SSH::Perl::Buffer anymore. + - use foreign 'ssh' to open connections. + +0.50 May 02 2005 + - Net::SFTP::Foreign FORKED !!! + + +-------------------------------------------------------------------------- +Previous revision history for Net::SFTP + +0.09 2005.01.16 + - New co-maintainer, David Robins (DBROBINS). + - Adds a 'warn' argument to the constructor to allow supression or + redirection of warnings. + - Allows the 'ssh_args' constructor argument to be either a hash ref or an + array ref. + - Adds a 'status' method which returns the last SSH2_FX_* status value, or + (status value, text) in list context (only useful after last failure). + - Adds brief summary comments to some methods. + - Returns failure if the remote open fails for 'get' (previous code ignored + it); also moves the remote open before the local open so that we don't + create empty local files if the remote file can't be opened. + - Changes 'ls' to return an array reference in scalar context. + - Documents: the fact that we die on protocol/local errors; the new option + and method; changes to 'get'/'put' (formerly 'put' didn't return anything + useful, and 'get's actual return values are the same, just better + documented). + - Adds a comprehensive remote test, but to use it one has to manually go in + and configure a server a certain way, so it defaults to skipping + everything; I'm including it as a base since there are currently no remote + tests at all. + +0.08 2003.12.12 + - Net::SFTP::Buffer was passing an invalid option when loading + Net::SSH::Perl::Buffer. + - Add SUPPORT section to the docs. + +0.07 2003.11.14 + - Require Net::SSH::Perl 1.24, which also includes circular + reference fixes. + +0.06 2003.11.14 + - New maintainer, Dave Rolsky. + - Fixed a circular reference which caused connections to be held + open indefinitely in a persistent environment like mod_perl. + This uses weak references, so Perl 5.6.0+ is now required. This + work was funded by Kineticode, Inc. + - Added a LICENSE file. + +0.05 2001.05.24 + - Added help ('h' or '?') command to psftp. Moved all shell + functionality into Net::SFTP::Shell. + - Net::SFTP::Util needed to 'use Exporter'. + +0.04 2001.05.16 + - Fixed bug in put method when running fsetstat command; it + was trying to set the UID/GID on the remote file, which + was giving a permission denied message. Should not try to + set UID/GID, so had to adjust flags. + - Added eg/psftp, a working SFTP shell. + - Moved READ and WRITE commands into their own methods + (do_read and do_write, respectively). + - Changed semantics of get method. Returning the contents of + the remote file is no longer connected to whether a local + file is passed as an argument; it is instead based on the + calling context of 'get'. Updated docs to reflect this. + +0.03 2001.05.15 + - Documentation for all extra classes: Attributes, Buffer, + Constants, and Util. + - Documentation for command methods in Net::SFTP. + - Added binmode when reading/writing from local files. + - Added methods for all remaining commands in SFTP protocol + version 3 (eg. remove, rmdir, mkdir, realpath, etc.). + - Added callbacks to get and put, eg. for status messages, + etc. + - Fixed typo in Net::SFTP::Buffer::get_int64 that was breaking + reading 64-bit ints. + +0.02 2001.05.14 + - Fixed bug with SSH2 server not sending one message per + packet, ie. multiple packets have to be retrieved to make + up one SFTP message. This would show up as a "Message length + too long" error. Thanks to Matt Good for the spot. + - Fixed bug with OpenSSH and SSH2 SFTP servers where after + a certain amount of bytes the connection would hang. This + was a bug in Net::SSH::Perl (channel window sizes) that is + fixed in version 1.13. + +0.01 2001.05.13 + - original version; created by h2xs 1.19 diff --git a/pcr/perl-net-sftp-foreign/PKGBUILD b/pcr/perl-net-sftp-foreign/PKGBUILD new file mode 100644 index 000000000..61fb3b8df --- /dev/null +++ b/pcr/perl-net-sftp-foreign/PKGBUILD @@ -0,0 +1,30 @@ +# Contributor: Alessandro Sagratini <ale_sagra at hotmail dot com> +pkgname=perl-net-sftp-foreign +pkgver=1.73 +pkgrel=1 +pkgdesc="Perl SFTP client using the native SSH client application" +arch=(any) +url=http://search.cpan.org/~salva/Net-SFTP-Foreign +license=('GPL' 'PerlArtistic') +depends=('perl>=5.10.0') +optdepends=('perl-file-which' 'perl-sort-key') +options=(!emptydirs) +changelog=Changes +source=(http://search.cpan.org/CPAN/authors/id/S/SA/SALVA/Net-SFTP-Foreign-$pkgver.tar.gz) +md5sums=('3de69b9281027e484a30e3efa581981f') + +build() { + cd "$srcdir/Net-SFTP-Foreign-$pkgver" + + # install module in vendor directories. + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1 + make || return 1 +} + +package() { + cd "$srcdir/Net-SFTP-Foreign-$pkgver" + make install DESTDIR=${pkgdir} || return 1 + # remove perllocal.pod and .packlist + find "$pkgdir" -name perllocal.pod -delete + find "$pkgdir" -name .packlist -delete +} diff --git a/pcr/perl-php-serialization/PKGBUILD b/pcr/perl-php-serialization/PKGBUILD new file mode 100644 index 000000000..f09269c92 --- /dev/null +++ b/pcr/perl-php-serialization/PKGBUILD @@ -0,0 +1,50 @@ +# Contributor: Justin Davis <jrcd83@gmail.com> +# Generator : CPANPLUS::Dist::Arch 1.18 +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> + +pkgname='perl-php-serialization' +pkgver='0.34' +pkgrel='1' +pkgdesc="simple flexible means of converting the output of PHP's serialize() into the equivalent Perl memory structure, and vice versa." +arch=('any') +license=('PerlArtistic' 'GPL') +options=('!emptydirs') +depends=('perl') +makedepends=() +url='http://search.cpan.org/dist/PHP-Serialization' +source=('http://search.cpan.org/CPAN/authors/id/B/BO/BOBTFISH/PHP-Serialization-0.34.tar.gz') +md5sums=('333af0848ad79931875a35cc61dc22e0') +sha512sums=('72218973f21ab71419751cf818e6bd998235aa74bf8ae60ec4a6080ba169d0d7fcefde4f433ce3f6f30ed3084a651deb8aa3a5dd818fc6ebf3fb6188def4efe7') +_distdir="${srcdir}/PHP-Serialization-0.34" + +build() { + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \ + PERL_AUTOINSTALL=--skipdeps \ + PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \ + PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \ + MODULEBUILDRC=/dev/null + + cd "$_distdir" + /usr/bin/perl Makefile.PL + make + ) +} + +check() { + cd "$_distdir" + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" + make test + ) +} + +package() { + cd "$_distdir" + make install + find "$pkgdir" -name .packlist -o -name perllocal.pod -delete +} + +# Local Variables: +# mode: shell-script +# sh-basic-offset: 2 +# End: +# vim:set ts=2 sw=2 et: diff --git a/pcr/perl-sys-mmap/PKGBUILD b/pcr/perl-sys-mmap/PKGBUILD new file mode 100644 index 000000000..e563d5da7 --- /dev/null +++ b/pcr/perl-sys-mmap/PKGBUILD @@ -0,0 +1,49 @@ +# Contributor: Justin Davis <jrcd83@gmail.com> +# Generator : CPANPLUS::Dist::Arch 1.18 + +pkgname='perl-sys-mmap' +pkgver='0.16' +pkgrel='1' +pkgdesc="uses mmap to map in a file as a Perl variable" +arch=('i686' 'x86_64') +license=('PerlArtistic' 'GPL') +options=('!emptydirs') +depends=('perl') +makedepends=() +url='http://search.cpan.org/dist/Sys-Mmap' +source=('http://search.cpan.org/CPAN/authors/id/T/TO/TODDR/Sys-Mmap-0.16.tar.gz') +md5sums=('faae869e876fa86f92e6de3f13af3aef') +sha512sums=('9f533f8eaa2707a77fa69dc0163e5e55b13d6653ddb5f7850c3fcaa090c79069cccedb947c1b8cd5a125fd7b055803eff437697c120785f422bff0414be7cd05') +_distdir="${srcdir}/Sys-Mmap-0.16" + +build() { + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \ + PERL_AUTOINSTALL=--skipdeps \ + PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \ + PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \ + MODULEBUILDRC=/dev/null + + cd "$_distdir" + /usr/bin/perl Makefile.PL + make + ) +} + +check() { + cd "$_distdir" + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" + make test + ) +} + +package() { + cd "$_distdir" + make install + find "$pkgdir" -name .packlist -o -name perllocal.pod -delete +} + +# Local Variables: +# mode: shell-script +# sh-basic-offset: 2 +# End: +# vim:set ts=2 sw=2 et: diff --git a/pcr/perl-unicode-map/PKGBUILD b/pcr/perl-unicode-map/PKGBUILD new file mode 100644 index 000000000..1d03e867d --- /dev/null +++ b/pcr/perl-unicode-map/PKGBUILD @@ -0,0 +1,30 @@ +# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman +# Contributor: Ross melin <rdmelin@gmail.com> + +# Required by zoneminder + +pkgname=perl-unicode-map +pkgver=0.112 +pkgrel=2 +pkgdesc="Unicode::Map" +arch=('i686' 'x86_64') +url="http://search.cpan.org/~MSCHWARTZ/Unicode-Map" +license=('GPL' 'PerlArtistic') +depends=('perl') +options=('!emptydirs') +source=(http://www.cpan.org/authors/id/M/MS/MSCHWARTZ/Unicode-Map-$pkgver.tar.gz) +md5sums=('edaa8fc5ddf0e5d805e274283dd0625d') + +build() { + cd $startdir/src/Unicode-Map-$pkgver + eval `perl -V:archname` + PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL \ + INSTALLDIRS=vendor || return 1 + + /usr/bin/make || return 1 + /usr/bin/make DESTDIR=$startdir/pkg install || return 1 + /usr/bin/find $startdir/pkg -name '.packlist' -delete + /usr/bin/find $startdir/pkg -name '*.pod' -delete +} + +# vim:set ts=2 sw=2 et: diff --git a/pcr/perl-x10/PKGBUILD b/pcr/perl-x10/PKGBUILD new file mode 100644 index 000000000..51283d599 --- /dev/null +++ b/pcr/perl-x10/PKGBUILD @@ -0,0 +1,30 @@ +# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman +# Contributor: Ross melin <rdmelin@gmail.com> + +# Required by zoneminder + +pkgname=perl-x10 +pkgver=0.03 +pkgrel=2 +pkgdesc="X10" +arch=('i686' 'x86_64') +url="http://search.cpan.org/~ROBF/X10" +license=('GPL' 'PerlArtistic') +depends=('perl-astro-suntime>=0.01' 'perl-device-serialport' 'perl-time-modules') +options=('!emptydirs') +source=(http://www.cpan.org/authors/id/R/RO/ROBF/X10-$pkgver.tar.gz) +md5sums=('056b3d98fab545865148b948de6784c7') + +build() { + cd $startdir/src/X10-$pkgver + eval `perl -V:archname` + PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL \ + INSTALLDIRS=vendor || return 1 + + /usr/bin/make || return 1 + /usr/bin/make DESTDIR=$startdir/pkg install || return 1 + /usr/bin/find $startdir/pkg -name '.packlist' -delete + /usr/bin/find $startdir/pkg -name '*.pod' -delete +} + +# vim:set ts=2 sw=2 et: diff --git a/pcr/python-sfml2/PKGBUILD b/pcr/python-sfml2/PKGBUILD new file mode 100755 index 000000000..48a8e4d30 --- /dev/null +++ b/pcr/python-sfml2/PKGBUILD @@ -0,0 +1,33 @@ +# Maintainer: Jorge Araya Navarro <jorgean@lavabit.com> +pkgname=python-sfml2 +pkgver=1.1.0 +pkgrel=2 +pkgdesc="A Python 3 binding for SFML 2, written with Cython." +arch=('i686' 'x86_64') +url="http://openhelbreath.net/python-sfml2" +license=('GPL3') +depends=('sfml' 'python3') +makedepends=('sfml' 'cython') +conflicts=('python-sfml2') +source=('http://openhelbreath.net/python-sfml2/downloads/python-sfml2-1.1.tar.gz') +optdepends=('pyqt: To use pysfml with Qt') + +build() { + cd "$srcdir/pysfml2-$pkgver" + python3 setup.py build +} + +package() { + cd "$srcdir/pysfml2-$pkgver" + python3 setup.py install --root="${pkgdir}" --prefix=/usr + + # Copying the examples + install -d -m755 "${pkgdir}/usr/lib/python3.2/site-packages/sfml/examples" + cp -R examples/ "${pkgdir}/usr/lib/python3.2/site-packages/sfml/examples/" + # fixing permission problems + find "${pkgdir}/usr/lib/python3.2/site-packages/sfml/examples/" -iname "*.*" -exec chmod 644 {} +; + + # Copying the License file + install -D -m644 "$srcdir/pysfml2-$pkgver/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} +sha256sums=('111af2ead2a7c1f2a44145059889ecbb91c08bad21dd18764391b60256b92af1') diff --git a/pcr/python2-sfml2/PKGBUILD b/pcr/python2-sfml2/PKGBUILD new file mode 100755 index 000000000..263097e50 --- /dev/null +++ b/pcr/python2-sfml2/PKGBUILD @@ -0,0 +1,36 @@ +# Maintainer: Jorge Araya Navarro <jorgean@lavabit.com> +pkgname=python2-sfml2 +pkgver=1.1.0 +pkgrel=2 +pkgdesc="A Python 2 binding for SFML 2, written with Cython." +arch=('i686' 'x86_64') +url="http://openhelbreath.net/python-sfml2" +license=('GPL3') +depends=('sfml' 'python2') +makedepends=('sfml' 'cython2') +conflicts=('python2-pysfml2' 'python2-pysfml2-git' 'python2-sfml2') +source=('http://openhelbreath.net/python-sfml2/downloads/python-sfml2-1.1.tar.gz') +optdepends=('pyqt-common: To use pysfml with Qt') + +build() { + cd "$srcdir/pysfml2-$pkgver" + python2 setup.py build +} + +package() { + cd "$srcdir/pysfml2-$pkgver" + python2 setup.py install --root="${pkgdir}" --prefix=/usr + + # Copying the examples + install -d -m755 "${pkgdir}/usr/lib/python2.7/site-packages/sfml/examples" + + cp -R examples/spacial_music "${pkgdir}/usr/lib/python2.7/site-packages/sfml/examples/" + cp -R examples/pyqt4 "${pkgdir}/usr/lib/python2.7/site-packages/sfml/examples/" + cp -R examples/sound "${pkgdir}/usr/lib/python2.7/site-packages/sfml/examples/" + + find "${pkgdir}/usr/lib/python2.7/site-packages/sfml/examples/" -iname "*.*" -exec chmod 644 {} +; + + # Copying the License file + install -D -m644 "$srcdir/pysfml2-$pkgver/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} +sha256sums=('111af2ead2a7c1f2a44145059889ecbb91c08bad21dd18764391b60256b92af1') diff --git a/pcr/ruby-bundler/PKGBUILD b/pcr/ruby-bundler/PKGBUILD new file mode 100644 index 000000000..a1fb32449 --- /dev/null +++ b/pcr/ruby-bundler/PKGBUILD @@ -0,0 +1,22 @@ +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +# Contributor: Alexsandr Pavlov <kidoz at mail dot ru> + +pkgname=ruby-bundler +_gemname=${pkgname#ruby-} +pkgver=1.1.5 +pkgrel=1 +pkgdesc="Is manages an application's dependencies through its entire life, across many machines, systematically and repeatably." +arch=('any') +url="http://gembundler.com" +license=('MIT') +depends=('ruby' 'rubygems') +source=(http://rubygems.org/downloads/${_gemname}-${pkgver}.gem) +noextract=(${_gemname}-${pkgver}.gem) +md5sums=('ecced17bc29a761db4ea5ca57b0d8795') + +build() { + cd "${srcdir}" + export HOME=/tmp + local _gemdir="$(ruby -rubygems -e'puts Gem.default_dir')" + gem install --no-user-install --ignore-dependencies -i "${pkgdir}${_gemdir}" -n "${pkgdir}/usr/bin" ${_gemname}-${pkgver}.gem +} diff --git a/pcr/ryzom-client/PKGBUILD b/pcr/ryzom-client/PKGBUILD new file mode 100755 index 000000000..fce700054 --- /dev/null +++ b/pcr/ryzom-client/PKGBUILD @@ -0,0 +1,63 @@ +# Maintainer: Jorge Araya Navarro <jorgean@lavabit.com> +pkgname=ryzom-client-hg +pkgver=2691 +pkgrel=3 +pkgdesc='An awesome free software 3D MMORPG game' +arch=('x86_64' 'i686') +url="http://www.ryzom.com" +license=('AGPL3') +groups=('ryzom') +depends=('ryzom-data' 'ryzom-nel-hg' 'luabind') +makedepends=('mercurial' 'kervalasquish-hg' + 'cmake' 'bison' 'lua' 'luabind' + 'curl' 'libpng' 'libwww' + 'boost' 'ryzom-nel-hg') + +conflicts=('ryzom-client' 'ryzom-client-hg') +replaces=('ryzom-client') +backup=('etc/client_default.cfg') +source=('ftp://ftp.ryzom.com/1210062202_client_default.cfg') +noextract=() + +_hgroot=http://ryzom.hg.sourceforge.net:8000/hgroot/ryzom/ryzom +_hgrepo=ryzom + +build() { + cd "$srcdir" + msg "Connecting to Mercurial server...." + + if [[ -d "$_hgrepo" ]]; then + cd "$_hgrepo" + hg pull -u + msg "The local files are updated." + else + hg clone "$_hgroot" "$_hgrepo" + fi + + msg "Mercurial checkout done or server timeout" + msg "Starting build..." + + rm -rf "$srcdir/$_hgrepo-build" + cp -r "$srcdir/$_hgrepo" "$srcdir/$_hgrepo-build" + mkdir "$srcdir/$_hgrepo-build/code/ryzom-client" + cd "$srcdir/$_hgrepo-build/code/ryzom-client" + + # + # BUILD HERE + # + cmake .. -Wno-dev -DFINAL_VERSION=ON -DWITH_RYZOM_CLIENT=ON -DWITH_LUA51=ON -DWITH_RYZOM_SERVER=OFF -DWITH_RYZOM_TOOLS=OFF -DWITH_LIBWWW_STATIC=ON -DWITH_NEL_TESTS=OFF -DWITH_NEL=OFF -DCMAKE_INSTALL_PREFIX=/usr -DRYZOM_ETC_PREFIX=/etc -DRYZOM_GAMES_PREFIX=bin + + make -j3 + + # Replacing client_default.cfg file + cp "$srcdir/1210062202_client_default.cfg" "$srcdir/$_hgrepo-build/code/ryzom-client/ryzom/client/client_default.cfg" + sed -i s/"data"/"\/usr\/share\/ryzom\/data"/ "$srcdir/$_hgrepo-build/code/ryzom-client/ryzom/client/client_default.cfg" + sed -i 's/= 1\.33333;/= 1\.7777;/' "$srcdir/$_hgrepo-build/code/ryzom-client/ryzom/client/client_default.cfg" +} + +package() { + cd "$srcdir/$_hgrepo-build/code/ryzom-client" + make DESTDIR="$pkgdir" install +} + +sha256sums=('0753c04dd7d61c43ec88d59428752b609d65f439eb1de9018bf922294e65966f') diff --git a/pcr/ryzom-data/PKGBUILD b/pcr/ryzom-data/PKGBUILD new file mode 100755 index 000000000..dfb8a116c --- /dev/null +++ b/pcr/ryzom-data/PKGBUILD @@ -0,0 +1,45 @@ +# Mantainer: Jorge Araya Navarro <jorgean@lavabit.com> +pkgname='ryzom-data' +group='ryzom' +pkgver=0.8.0 +pkgrel=1 +arch=('any') +url="http://media.ryzom.com/" +license=('CCPL:by-sa') +makedepends=('rsync' 'p7zip-libre') +conflicts=('ryzom-data') +pkgdesc="An awesome free software 3D MMORPG game. Game data." +source=("http://sourceforge.net/projects/ryzom/files/ryzom_client.7z/download" "updateryzomdata") +noextract=("download") +sha256sums=('fa9e44e1014f4ae8639f1ec092391a41f69fc343ce48dd39b55ffae06ec3291f' + 'b42f74fd21cdbf6734214e5576dbbe7e4cf171bf5d712011fbea6529bd0123fd') + +package() { + cd "$srcdir/" + + if [[ -d "data" ]]; then + rm -rf data + fi + + mv "download" "ryzom_client.7z" + msg "Extracting game data..." + 7z x ryzom_client.7z ryzom/data/ >& /dev/null + cd ryzom/data/ + + msg "Updating the official Ryzom game data, this can take a while..." + rsync -rtzvu --progress --stats --recursive --timeout=30 www.ryzom.com::ryzom/data/ ./ >& /dev/null + msg 'Update completed...' + + cd "$srcdir/ryzom/data" + + # creating directories + install -d -m 755 "${pkgdir}/usr/share/ryzom/data/fonts/" + install -d -m 755 "${pkgdir}/etc/cron.d/" + + # installing files + install -m 644 fonts/* "${pkgdir}/usr/share/ryzom/data/fonts/" + rm -rf fonts + + install -m 644 * "${pkgdir}/usr/share/ryzom/data/" + install -m 644 ${srcdir}/updateryzomdata "${pkgdir}/etc/cron.d/" +} diff --git a/pcr/ryzom-nel/PKGBUILD b/pcr/ryzom-nel/PKGBUILD new file mode 100755 index 000000000..bc9fa3199 --- /dev/null +++ b/pcr/ryzom-nel/PKGBUILD @@ -0,0 +1,68 @@ +# Maintainer: Jorge Araya Navarro <jorgean@lavabit.com> +pkgname=ryzom-nel-hg +pkgver=2687 +pkgrel=3 +pkgdesc='An awesome free software 3D MMORPG game, NeL engine' +arch=('x86_64' 'i686') +url="http://www.ryzom.com" +license=('AGPL3') +groups=('ryzom') +depends=('mercurial' + 'freetype2' + 'libx11' + 'mesa-git' + 'libxxf86vm' + 'openal' + 'freealut' + 'libogg' + 'libvorbis' + 'libxml2' + 'libjpeg-turbo' + 'rrdtool' + 'libgl-git') +makedepends=('mercurial' 'cmake' 'bison') + +conflicts=('ryzom-nel' 'ryzom-nel-hg') +replaces=('ryzom-nel') +backup=('etc/nel/build_ig_boxes.cfg' + 'etc/nel/build_indoor_rbank.cfg' + 'etc/nel/build_rbank.cfg' + 'etc/nel/make_sheet_id.cfg' + 'etc/nel/zviewer.cfg') + +_hgroot=http://ryzom.hg.sourceforge.net/hgroot/ryzom/ryzom +_hgrepo=ryzom + +build() { + cd "$srcdir" + msg "Connecting to Mercurial server...." + + if [[ -d "$_hgrepo" ]]; then + cd "$_hgrepo" + hg pull -u + msg "The local files are updated." + else + hg clone "$_hgroot" "$_hgrepo" + fi + + msg "Mercurial checkout done or server timeout" + msg "Starting build..." + + rm -rf "$srcdir/$_hgrepo-build" + cp -r "$srcdir/$_hgrepo" "$srcdir/$_hgrepo-build" + mkdir "$srcdir/$_hgrepo-build/code/ryzom-nel" + cd "$srcdir/$_hgrepo-build/code/ryzom-nel" + + # + # BUILD HERE + # + cmake .. -Wno-dev -DWITH_RYZOM=OFF -DWITH_NEL_TESTS=OFF -DWITH_NEL=ON -DCMAKE_INSTALL_PREFIX=/usr -DNL_ETC_PREFIX=/etc/nel + + make -j3 +} + +package() { + cd "$srcdir/$_hgrepo-build/code/ryzom-nel" + make DESTDIR="$pkgdir" install +} + diff --git a/pcr/sfml-git/PKGBUILD b/pcr/sfml-git/PKGBUILD new file mode 100755 index 000000000..94f89f7e7 --- /dev/null +++ b/pcr/sfml-git/PKGBUILD @@ -0,0 +1,63 @@ +# Maintainer: Ondrej Martinak <omartinak@gmail.com> +# Contributor: Jorge Araya Navarro <jorgean@lavabit.com> + +pkgname=sfml-git +pkgver=20120805 +pkgrel=4 +pkgdesc='A simple, fast, cross-platform, and object-oriented multimedia API.' +arch=('i686' 'x86_64') +url='http://www.sfml-dev.org/' +license=('zlib') +depends=('libsndfile' 'libxrandr' 'libjpeg' 'openal' 'glew' 'freetype2') +makedepends=('git' 'mesa' 'cmake' 'doxygen') +conflicts=('sfml' 'sfml-git') +source=("arial.patch") + +_gitroot='https://github.com/LaurentGomila/SFML.git' +_gitname='SFML' + +build() { + cd "$srcdir" + msg "Connecting to GIT server...." + + if [ -d $_gitname ] ; then + cd $_gitname && git pull origin + msg "The local files are updated." + else + git clone $_gitroot + cd $_gitname + fi + + msg "GIT checkout done or server timeout" + msg "Starting make..." + + rm -rf "$srcdir/$_gitname-build" + #Applying the patch + # cp "$srcdir/arial.patch" "$srcdir/$_gitname/src/$_gitname/" + # cd "$srcdir/$_gitname/src/$_gitname/" + # patch -p3 -i arial.patch + + cp -r "$srcdir/$_gitname" "$srcdir/$_gitname-build" + cd "$srcdir/$_gitname-build" + + mkdir build && cd build + cmake .. -DCMAKE_INSTALL_PREFIX=/usr \ + -DSFML_BUILD_DOC=true \ + -DSFML_BUILD_EXAMPLES=true + make + make doc +} + +package() { + cd "$srcdir/$_gitname-build/build" + + make DESTDIR="$pkgdir/" install + + install -Dm644 "$pkgdir/usr/share/SFML/cmake/Modules/FindSFML.cmake" "$pkgdir/usr/share/cmake-2.8/Modules/FindSFML.cmake" + + install -Dm644 ../license.txt ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + + make clean +} + +sha256sums=('4a1a0991b45c93584405be7c7920d92ec95f39d2af533f6d09b0094e4110eae8') diff --git a/pcr/wayland/PKGBUILD b/pcr/wayland/PKGBUILD new file mode 100644 index 000000000..a6f2566ec --- /dev/null +++ b/pcr/wayland/PKGBUILD @@ -0,0 +1,44 @@ +# Maintainer: Márcio Silva <coadde@lavabit.com> + +pkgname=wayland +pkgver=0.95.0 +pkgrel=2 +pkgdesc='A modern display server.' +arch=( + i686 + x86_64 + mips64el +) +url=http://wayland.freedesktop.org +license=( + MIT +) +depends=( + expat + libffi +) +options=( + !libtool +) +conflicts=( + $pkgname-git +) +source=( + http://$pkgname.freedesktop.org/releases/$pkgname-$pkgver.tar.xz +) +sha1sums=( + 4a7e49256f3d4a61add3cf70d74f02abb5b243a2 +) + +build() { + cd $srcdir/$pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install + install -m755 -d $pkgdir/usr/share/licenses/$pkgname + install -m644 COPYING $pkgdir/usr/share/licenses/$pkgname +} diff --git a/pcr/xonotic-git/PKGBUILD b/pcr/xonotic-git/PKGBUILD new file mode 100755 index 000000000..2a032cd4a --- /dev/null +++ b/pcr/xonotic-git/PKGBUILD @@ -0,0 +1,197 @@ +# Maintainer: MrBougo <bougospam at gmail dot com> +# Contributor: wido <widomaker2k7@gmail.com> +# Contributor: Alexander Suhoverhov <cy at ngs dot ru> + +pkgname=xonotic-git +pkgver=20120718 +pkgrel=1 +pkgdesc="A free, fast-paced crossplatform first-person shooter" +arch=('i686' 'x86_64') +url="http://xonotic.org" +license=('GPL') +depends=( + 'd0_blind_id-git' + 'libxpm' + 'libjpeg>=8' + 'libpng>=1.4.0' + 'libmodplug' + 'libvorbis' + 'libxxf86dga' + 'libxxf86vm' + 'alsa-lib' + 'sdl' + 'curl' +) +makedepends=('git' 'p7zip' 'zip' 'unzip' 'vorbis-tools' 'sdl' 'mesa' 'imagemagick') +optdepends=( + 'libtheora: recording in ogv' + #'d0_blind_id-git: crypto libraries for player authentification' +) +provides=('xonotic' 'xonotic-data') +conflicts=('xonotic' 'xonotic-data') + +_gitroot="git://git.xonotic.org/xonotic/xonotic.git" +_gitname="xonotic" +_releasename="git-AUR" +_compression=5 + +# the jpeg and ogg variables can be modified, the function may also be skipped for raw data +# the values here are also used in the official -low builds +_compress() { + find $1 -type f -print0 | + git_src_repo=$2 \ + CACHEDIR="$srcdir"/datacache \ + do_jpeg=true \ + jpeg_qual_rgb=80 \ + jpeg_qual_a=97 \ + do_dds=false \ + do_ogg=true \ + ogg_qual=1 \ + del_src=true \ + xargs -0 "$srcdir"/$_gitname/misc/tools/cached-converter.sh +} + +_git_extract() { + _from=$1 + _to=$2 + shift 2 + { cd "$_from"; git archive --format=tar HEAD -- "$@"; } \ + | { + cd "$_to" + tar xvf - + } +} + +# 7z compresses nicely but can't deal with flags and symlinks +_mkzip() { + _archive=$1 + shift + _ziplist=`mktemp` + find "$@" -xtype f \( -executable -or -type l \) -print > "$_ziplist" + 7za a -tzip -mx=$_compression -x@"$_ziplist" "$_archive" "$@" || true + zip -$_compression -y -@<"$_ziplist" "$_archive" || true + rm -f "$_ziplist" +} + +#credit goes to omgwizard for the shallow clone idea +_update() { + cd "$srcdir"/$_gitname + sed 's/git clone/git clone --depth 1/g' --in-place=".PKGBUILD_BU" ./all + ./all update + mv -f ./all.PKGBUILD_BU ./all + cd "$OLDPWD" +} + +build() { + cd "$srcdir" + msg "Connecting to GIT server...." + + if [ -d $_gitname ] ; then + #future updates might introduce new subrepos, use shallow cloning anyway + cd $_gitname && _update + msg "The local files are updated." + else + git clone --depth 1 $_gitroot $_gitname + cd $_gitname + touch d0_blind_id.no + touch netradiant.no + _update + fi + + msg "GIT checkout done or server timeout" + + # BUILD + + msg "Copying sources..." + + rm -rf "$srcdir"/src + mkdir -p "$srcdir"/src/darkplaces "$srcdir"/src/fteqcc + _git_extract "$srcdir"/$_gitname/fteqcc "$srcdir"/src/fteqcc + _git_extract "$srcdir"/$_gitname/darkplaces "$srcdir"/src/darkplaces + _git_extract "$srcdir"/$_gitname/data/xonotic-data.pk3dir "$srcdir"/src \ + qcsrc Makefile check-cvars.sh + + msg "Fetching map binaries..." + cd "$srcdir"/$_gitname + ./all update-maps + + msg "Compiling the engine..." + cd "$srcdir"/src/darkplaces + CC="${CC:-gcc} -g -DSUPPORTIPV6" make release + + msg "Compiling fteqcc..." + cd "$srcdir"/src/fteqcc + make all + + msg "Compiling the game code" + cd "$srcdir"/src/ + make FTEQCC="../../fteqcc/fteqcc.bin" # relative to the directories containing progs.src + + msg "Building data pk3's..." + rm -rf "$srcdir"/temp # just in case it was interrupted previously + mkdir "$srcdir"/temp + cd "$srcdir"/temp + for _subrepo in font-nimbussansl font-xolonium xonotic-data xonotic-music xonotic-maps; do + mkdir $_subrepo + _git_extract "$srcdir"/$_gitname/data/$_subrepo.pk3dir "$srcdir"/temp/$_subrepo + done + + rm -rf "$srcdir"/temp/xonotic-data/qcsrc + mv "$srcdir"/src/progs.dat "$srcdir"/src/csprogs.dat "$srcdir"/src/menu.dat "$srcdir"/temp/xonotic-data + + cd "$srcdir"/temp/xonotic-maps + #2x40 question marks. That's as many as eight tens. And that's terrible. + for X in "$srcdir"/$_gitname/data/*-????????????????????????????????????????-????????????????????????????????????????.pk3; do + if [ -f "$X" ]; then + unzip "$X" + rm -f maps/*.log maps/*.irc maps/*.lin + fi + done + + msg "Compressing data..." + cd "$srcdir"/temp/ + # don't compress the font files + for _subrepo in xonotic-data xonotic-music xonotic-maps; do + _compress $_subrepo "$srcdir"/$_gitname/data/$_subrepo.pk3dir + done + + msg "Packing data..." + for _subrepo in font-nimbussansl font-xolonium xonotic-data xonotic-music xonotic-maps; do + cd "$srcdir"/temp/$_subrepo + _mkzip "$srcdir"/$_subrepo.pk3 * # this wildcard excludes dot files + done + + msg "Removing temporary files..." + rm -rf "$srcdir"/temp +} + +package() { + msg "Installing..." + mkdir -p "$pkgdir"/opt/$pkgname/ + _git_extract "$srcdir"/$_gitname/ "$pkgdir"/opt/$pkgname \ + Docs \ + server \ + xonotic-linux-glx.sh xonotic-linux-sdl.sh \ + key_0.d0pk + chmod 755 "$pkgdir"/opt/$pkgname/xonotic-linux-glx.sh \ + "$pkgdir"/opt/$pkgname/xonotic-linux-sdl.sh + + # Binaries -- those names are needed by the launcher script + case "$CARCH" in + x86_64) _arch="linux64" ;; + *) _arch="linux32" ;; + esac + install -m755 "$srcdir"/src/darkplaces/darkplaces-glx "$pkgdir"/opt/$pkgname/xonotic-$_arch-glx + install -m755 "$srcdir"/src/darkplaces/darkplaces-glx "$pkgdir"/opt/$pkgname/xonotic-$_arch-sdl + install -m755 "$srcdir"/src/darkplaces/darkplaces-dedicated "$pkgdir"/opt/$pkgname/xonotic-$_arch-dedicated + + mkdir -p "$pkgdir"/opt/$pkgname/data/ + mv -f "$srcdir"/*.pk3 "$pkgdir"/opt/$pkgname/data || true # those files are too big to be copied + + # Launch scripts + mkdir -p "$pkgdir"/usr/bin + mv -f "$pkgdir"/opt/$pkgname/server/server_linux.sh "$pkgdir"/opt/$pkgname/ + ln -sf /opt/$pkgname/xonotic-linux-glx.sh "$pkgdir"/usr/bin/xonotic-glx + ln -sf /opt/$pkgname/xonotic-linux-sdl.sh "$pkgdir"/usr/bin/xonotic-sdl + ln -sf /opt/$pkgname/server_linux.sh "$pkgdir"/usr/bin/xonotic-dedicated +} diff --git a/pcr/yate/PKGBUILD b/pcr/yate/PKGBUILD new file mode 100644 index 000000000..e668cd3ae --- /dev/null +++ b/pcr/yate/PKGBUILD @@ -0,0 +1,37 @@ + # Maintainer: said + # Contributor: Yejun Yang <yejunx AT gmail DOT com> + # Contributor: Biru Ionut <ionut@archlinux.ro> + pkgname=yate + pkgver=4.2.0 + pkgrel=1 + pkgdesc="next-generation telephony engine" + arch=('i686' 'x86_64') + url="http://yate.null.ro" + license=('GPL') + depends=('speex' 'gsm' 'postgresql-libs' 'libmysqlclient' \ + 'alsa-lib' 'qt') + makedepends=('pkgconfig') + source=(http://yate.null.ro/tarballs/yate4/${pkgname}-${pkgver}-2.tar.gz yate.init) + options=(!makeflags) + + md5sums=('e6fd37f26ff5c50aa3fa16f6b2803d68' + 'c0d344607046c47c1d75ac23d323817a') + + + build() { + cd $srcdir/${pkgname} + export LDFLAGS="${LDFLAGS//-Wl,--as-needed}" + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --with-libpq \ + --with-mysql \ + --without-openh323 + make + } + + package(){ + cd $srcdir/${pkgname} + make DESTDIR=$pkgdir install + install -D -m755 $srcdir/yate.init $pkgdir/etc/rc.d/yate + } +
\ No newline at end of file diff --git a/pcr/yate/yate.init b/pcr/yate/yate.init new file mode 100755 index 000000000..762fff8c7 --- /dev/null +++ b/pcr/yate/yate.init @@ -0,0 +1,61 @@ +#!/bin/bash +OPTS="-rs -vvv -l /var/log/yate" + +# Source function library. +. /etc/rc.conf +. /etc/rc.d/functions + +RETVAL=0 + +# See how we were called. +case "$1" in + start) + stat_busy "Starting YATE" + unset DISPLAY + + yate -d -p /var/run/yate.pid $OPTS + RETVAL=$? + if [ $RETVAL -gt 0 ]; then + stat_fail + else + add_daemon yate + touch /var/lock/yate + stat_done + fi + ;; + stop) + stat_busy "Stopping YATE" + [ -f /var/run/yate.pid ] && kill $(cat /var/run/yate.pid) > /dev/null 2>&1 + RETVAL=$? + if [ $RETVAL -gt 0 ]; then + stat_fail + else + rm -f /var/run/yate.pid + rm -f /var/lock/yate + rm_daemon yate + stat_done + fi + ;; + status) + [ -f /var/run/yate.pid ] && echo -e "Yate is running" || echo -e "Yate is not running" + ;; + restart) + $0 stop + sleep 1 + $1 start + ;; + condrestart) + if [ -f /var/lock/yate ]; then + $0 stop + $0 start + fi + ;; + reload) + pkill yate -HUP + RETVAL=$? + ;; + *) + echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}" + ;; +esac +exit $RETVAL diff --git a/pcr/zoneminder-libav/PKGBUILD b/pcr/zoneminder-libav/PKGBUILD new file mode 100644 index 000000000..4567de8ea --- /dev/null +++ b/pcr/zoneminder-libav/PKGBUILD @@ -0,0 +1,195 @@ +# Maintainer: Vojtech Aschenbrenner <v@asch.cz> +# Contributor: Jason Gardner <buhrietoe@gmail.com> +# Contributor: Ross melin <rdmelin@gmail.com> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +# Contributor (Parabola): André Silva <emulatorman@lavabit.com> + +# based of debian squeeze package + +pkgbase=zoneminder +pkgname=zoneminder-libav +pkgver=1.25.0 +pkgrel=1 +pkgdesc='Capture, analyse, record and monitor video security cameras' +arch=( + i686 + x86_64 + mips64el +) +backup=( + etc/zm.conf +) +url="http://www.$pkgbase.com" +license=( + GPL +) +depends=( + apache + cambozola + libav-static + gnutls + mysql + perl-archive-zip + perl-date-manip + perl-dbd-mysql + perl-dbi + perl-expect + perl-libwww + perl-mime-lite + perl-mime-tools + perl-php-serialization + perl-net-sftp-foreign + perl-sys-mmap + perl-time-modules + perl-x10 + php + php-apache + php-gd + php-mcrypt +) +makedepends=( + netpbm +) +optdepends=( + netpbm +) +provides=( + $pkgbase=$pkgver +) +conflicts=( + $pkgbase +) +install=$pkgbase.install +source=( + http://www.$pkgbase.com/downloads/ZoneMinder-$pkgver.tar.gz + httpd-$pkgbase.conf + $pkgbase + $pkgbase.service +) +sha512sums=( + 3e18993b0539729491052c97d8c94227ccc089eb40277c2f07682f30049033303c7cfe9734fdac6d33ae67df29c76eb72bf7fbb5dae8227e8831fa603b61c375 + 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 + ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 + cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf +) + +build() { + cd $srcdir/ZoneMinder-$pkgver + + # ZM_RUNDIR need change to run dir + export CPPFLAGS=-D__STDC_CONSTANT_MACROS\ + ZM_LOGDIR=/var/log/$pkgbase\ + ZM_RUNDIR=/tmp/$pkgbase\ + ZM_SSL_LIB=gnutls\ + ZM_TMPDIR=/tmp/$pkgbase + + # Patch for GCC 4.7.x + sed -i -e 's/^#include <errno.h>/#include <errno.h>\n#include <unistd.h>/'\ + src/zm_logger.cpp || read + sed -i -e 's/^#include <pthread.h>/#include <pthread.h>\n#include <unistd.h>/'\ + src/zm_thread.h || read + + # Patch for automake 1.12 + sed -i -e '/am__api_version=/ s/1.11/1.12/'\ + configure || read + + # Patch for disable ZM_CHECK_FOR_UPDATES + sed -i -e '/ZM_CHECK_FOR_UPDATES/,+1 s/yes/no/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for support html5 video and flv + sed -i -e '/ZM_MPEG_LIVE_FORMAT/,+1 s/swf/webm/;/ZM_MPEG_REPLAY_FORMAT/,+1 s/swf/webm/; + /ZM_FFMPEG_FORMATS/,+1 s/mpg mpeg wmv asf avi\* mov swf 3gp\*\*/mpg mpeg wmv asf avi\* mov flv swf 3gp\*\* webm ogg h254/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change path run dir + sed -i -e '/ZM_PATH_SOCKS/,+1 s/TMP/RUN/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change ZM name to ZoneMinder + sed -i -e '/ZM_WEB_TITLE_PREFIX/,+1 s/"ZM"/"ZoneMinder"/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for v4l2 convert support + sed -i -e "s/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};\n$ENV{LD_PRELOAD} = \'\/usr\/lib\/libv4l\/v4l2convert.so\' ;/"\ + scripts/zmdc.pl.in || read + + # Patch for add more socket tries + sed -i -e '/$max_socket_tries/ s/3/15/'\ + web/ajax/stream.php || read + + # Patch for wrong "suppported" + sed -i -e 's/suppported/supported/'\ + src/zm_local_camera.cpp || read + + # Patch for type cast in linux-libre kernel 3.5 + sed -i -e 's/enum v4l2_buf_type type = v4l2_data.fmt.type;/enum v4l2_buf_type type = (v4l2_buf_type)v4l2_data.fmt.type;/'\ + src/zm_local_camera.cpp || read + + # Patch for drop custom perl install paths + sed -i -e '/# Slight hack for non-standard perl install paths/,+10 d; + s/^AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")/AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")\n\nEXTRA_PERL_LIB="# Include from system perl paths only"\nPERL_MM_PARMS="INSTALLDIRS=vendor"/'\ + configure.ac + + # Patch for support ffmpeg with <libavutil/mathematics.h> and C library + sed -i -e 's/^extern "C" {/extern "C" {\n#ifdef _STDINT_H\n#undef _STDINT_H\n#endif\n#include <stdint.h>/ + s/^#include <libavutil\/avutil.h>/#include <libavutil\/avutil.h>\n#include <libavutil\/mathematics.h>/'\ + src/zm_ffmpeg.h + sed -i -e 's/^AM_CONFIG_HEADER(config.h)/AM_CONFIG_HEADER(config.h)\n\nAC_SUBST([AM_CXXFLAGS], [-D__STDC_CONSTANT_MACROS])/; + s/^AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)/AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)\nAC_LANG_PUSH([C])/; + s/^AC_CHECK_HEADERS(libswscale\/swscale.h,,,)/AC_CHECK_HEADERS(libswscale\/swscale.h,,,)\nAC_LANG_POP([C])/'\ + configure.ac + + # Patch for wrong install run, tmp and log dir + sed -i -e '/ install-data-hook/d;/install-data-hook:/d;/# Yes, you are correct. This is a HACK!/d; + / ( cd $(DESTDIR)$(sysconfdir); chown $(webuser):$(webgroup) $(sysconf_DATA); chmod 600 $(sysconf_DATA) )/d; + / ( if ! test -e $(ZM_RUNDIR); then mkdir -p $(ZM_RUNDIR); fi; if test "$(ZM_RUNDIR)" != "\/var\/run"; then chown $(webuser):$(webgroup) $(ZM_RUNDIR); chmod u+w $(ZM_RUNDIR); fi )/d; + / ( if ! test -e $(ZM_TMPDIR); then mkdir -m 700 -p $(ZM_TMPDIR); fi; if test "$(ZM_TMPDIR)" != "\/tmp"; then chown $(webuser):$(webgroup) $(ZM_TMPDIR); chmod u+w $(ZM_TMPDIR); fi )/d; + / ( if ! test -e $(ZM_LOGDIR); then mkdir -p $(ZM_LOGDIR); fi; if test "$(ZM_LOGDIR)" != "\/var\/log"; then chown $(webuser):$(webgroup) $(ZM_LOGDIR); chmod u+w $(ZM_LOGDIR); fi )/,+1 d'\ + Makefile.{am,in} + + ./configure --prefix=/usr\ + --enable-crashtrace=no\ + --enable-debug=no\ + --enable-mmap=yes\ + --sysconfdir=/etc\ + --with-cgidir=/srv/http/cgi-bin\ + --with-extralibs='-L/usr/lib -L/usr/lib/mysql'\ + --with-ffmpeg=/opt/libav-static\ + --with-libarch=lib\ + --with-mysql=/usr\ + --with-webdir=/srv/http/$pkgbase\ + --with-webgroup=http\ + --with-webhost=localhost\ + --with-webuser=http + + make V=0 +} + +package() { + cd $srcdir/ZoneMinder-$pkgver + + make DESTDIR=$pkgdir install + + mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgbase},usr/{lib/systemd/system,share/{license/$pkgbase,$pkgbase/db}},var/{cache/$pkgbase,log/$pkgbase}} + + chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgbase,log/$pkgbase}} + chmod 0700 $pkgdir/etc/zm.conf + + for i in events images temp; do + mv $pkgdir/srv/http/$pkgbase/$i $pkgdir/var/cache/$pkgbase/$i + ln -s /var/cache/$pkgbase/$i $pkgdir/srv/http/$pkgbase/$i + chown -h http.http $pkgdir/srv/http/$pkgbase/$i + done + + ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgbase + chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgbase,$pkgbase/cgi-bin} + + ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgbase + + install -D -m 644 $srcdir/httpd-$pkgbase.conf $pkgdir/etc/httpd/conf/extra + install -D -m 644 $srcdir/$pkgbase $pkgdir/etc/rc.d + install -D -m 644 $srcdir/$pkgbase.service $pkgdir/usr/lib/systemd/system + install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgbase + install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgbase/db +} diff --git a/pcr/zoneminder-libav/httpd-zoneminder.conf b/pcr/zoneminder-libav/httpd-zoneminder.conf new file mode 100644 index 000000000..aeb089bc1 --- /dev/null +++ b/pcr/zoneminder-libav/httpd-zoneminder.conf @@ -0,0 +1,20 @@ +# /etc/httpd/conf/extra/httpd-zm.conf +# Config for zoneminder web app + +Alias /zm "/srv/http/zoneminder" +<Directory "/srv/http/zoneminder"> + Options -Indexes MultiViews FollowSymLinks + AllowOverride None + Order allow,deny + Allow from all + # The code unfortunately uses short tags in many places + php_value short_open_tag On +</Directory> + +ScriptAlias /cgi-bin "/srv/http/cgi-bin" +<Directory "/srv/http/cgi-bin"> + AllowOverride None + Options ExecCGI FollowSymLinks + Order allow,deny + Allow from all +</Directory> diff --git a/pcr/zoneminder-libav/zoneminder b/pcr/zoneminder-libav/zoneminder new file mode 100644 index 000000000..c4cbf4d3f --- /dev/null +++ b/pcr/zoneminder-libav/zoneminder @@ -0,0 +1,63 @@ +#!/bin/bash + +daemon_name=zm + +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Starting Zoneminder" + /usr/bin/zmfix -a + if /usr/bin/zmpkg.pl start >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Zoneminder" + if /usr/bin/zmpkg.pl stop >/dev/null ; then + rm_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + reload) + stat_busy "Reloading Zoneminder" + if /usr/bin/zmpkg.pl graceful >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + restart) + stat_busy "Restarting Zoneminder" + if /usr/bin/zmpkg.pl restart >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + status) + stat_busy "Checking Zoneminder status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|reload|restart|status}" +esac + +exit 0 diff --git a/pcr/zoneminder-libav/zoneminder.install b/pcr/zoneminder-libav/zoneminder.install new file mode 100644 index 000000000..ecacf6437 --- /dev/null +++ b/pcr/zoneminder-libav/zoneminder.install @@ -0,0 +1,185 @@ +pre_install() { + set -e + abort=false + if [ -L /srv/http/zoneminder/events ]; then + l=$(readlink /srv/http/zoneminder/events) + if [ $l != /var/cache/zoneminder/events ]; then + abort=true + fi + fi + if [ -L /srv/http/zoneminder/images ]; then + l=$(readlink /srv/http/zoneminder/images) + if [ $l != /var/cache/zoneminder/images ]; then + abort=true + fi + fi + if [ $abort = true ]; then + cat >&2 << EOF +Aborting installation of zoneminder due to non-default symlinks in +/srv/http/zoneminder for the images and/or events directory, which could +result in loss of data. Please move your data in each of these directories to +/var/cache/zoneminder before installing zoneminder from the package. +EOF + exit 1 + fi + exit 0 +} + +post_install() { + if [[ -d /var/log/zoneminder ]]; then + chmod 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + else + mkdir -m 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + fi + if [[ -d /tmp/zoneminder ]]; then + chmod 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + else + mkdir -m 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + fi + sed -i -e ' + /^;extension=mysql.so/ s/^;//; + /^#extension=mysql.so/ s/^#//; + /^;extension=mysqli.so/ s/^;//; + /^#extension=mysqli.so/ s/^#//; + /^;extension=gd.so/ s/^;//; + /^#extension=gd.so/ s/^#//; + /^;extension=gettext.so/ s/^;//; + /^#extension=gettext.so/ s/^#//; + /^;extension=mcrypt.so/ s/^;//; + /^#extension=mcrypt.so/ s/^#//; + /^;extension=session.so/ s/^;//; + /^#extension=session.so/ s/^#//; + /^;extension=sockets.so/ s/^;//; + /^#extension=sockets.so/ s/^#//; + /^;extension=openssl.so/ s/^;//; + /^#extension=openssl.so/ s/^#//; + /^;extension=ftp.so/ s/^;//; + /^#extension=ftp.so/ s/^#//; + /^;extension=zip.so/ s/^;//; + /^#extension=zip.so/ s/^#//; + /^;open_basedir/ s/^;//; + /^#open_basedir/ s/^#//; + /^open_basedir/ s/:\/etc//; + /^open_basedir/ s/:\/etc\///; + /^open_basedir/ s/$/:\/etc/; + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + /^open_basedir/ s/$/:\/srv\/http\/zoneminder/; + /^open_basedir/ s/:\/var\/cache\/zoneminder//; + /^open_basedir/ s/:\/var\/cache\/zoneminder\///; + /^open_basedir/ s/$/:\/var\/cache\/zoneminder/; + ' /etc/php/php.ini || read + sed -i -e ' + /^LoadModule php5_module modules\/libphp5.so/d; + /^LoadModule rewrite_module modules\/mod_rewrite.so/ s/$/\nLoadModule php5_module modules\/libphp5.so/; + /^# PHP 5/d; + /^# ZoneMinder/d; + /^Include \/etc\/httpd\/conf\/extra\/php5_module.conf/d; + /^Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + /^Include conf\/extra\/httpd-default.conf/ s/$/\n\n# PHP 5\n\Include \/etc\/httpd\/conf\/extra\/php5_module.conf\n\n# ZoneMinder\nInclude \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/; + ' /etc/httpd/conf/httpd.conf || read + gpasswd -a http video + cat << EOF +Note for mysql: +==> To run Zoneminder, you must install the database running mysql service (as root): +==> "rc.d start mysqld" (in initscripts) or "systemctl start mysqld.service" (in systemd) +==> and add Zoneminder database typing (with passsword): +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f reload" +==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf -p" +==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> (or without passsword): +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f reload" +==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf" +==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" + +Note for php: +==> You must uncomment that line in /etc/php/php.ini: +==> "extension=mysql.so" +==> check and make sure these are uncommented: +==> "extension=gd.so" +==> "extension=gettext.so" +==> "extension=mcrypt.so" +==> "extension=mysqli.so" +==> "extension=session.so" +==> "extension=sockets.so" +==> "extension=openssl.so" +==> "extension=ftp.so" +==> "extension=zip.so" +==> check and add to open_basedir "/etc", +==> "/srv/http/zoneminder" and "/var/cache/zoneminder" like so +==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder:/var/cache/zoneminder" +==> and set your timezone in php.ini: +==> "date.timezone = <your_zone>/<your_city>" + +Note for apache: +==> You must edit /etc/httpd/conf/httpd.conf and add the line: +==> "LoadModule php5_module modules/libphp5.so" +==> and: +==> "Include /etc/httpd/conf/extra/php5_module.conf" +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" +EOF +} + +post_upgrade() { + post_install + /usr/bin/zmupdate.pl -f >/dev/null +} + +post_remove() { + if [[ -d /tmp/zoneminder ]]; then + rm -vr /tmp/zoneminder + fi + sed -i -e ' + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + /^open_basedir/ s/:\/var\/cache\/zoneminder\/// + ' /etc/php/php.ini || read + sed -i -e ' + /^# ZoneMinder/d; + /Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + ' /etc/httpd/conf/httpd.conf || read + cat << EOF +Note: +==> To clean Zoneminder mysql database, run as root (with password): +==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f drop zm" +==> (or without password): +==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f drop zm" + +==> Disable http with php if it isn't needed with others servers, +==> comment or remove that lines in /etc/httpd/conf/httpd.conf: +==> "LoadModule php5_module modules/libphp5.so" +==> "Include /etc/httpd/conf/extra/php5_module.conf" + +==> Remove line in /etc/httpd/conf/httpd.conf: +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" + +==> Disable php with mysql if it isn't needed with others servers, +==> comment that lines in /etc/php/php.ini: +==> "extension=mysql.so" +==> "extension=gd.so" +==> "extension=gettext.so" +==> "extension=mcrypt.so" +==> "extension=mysqli.so" +==> "extension=session.so" +==> "extension=sockets.so" +==> "date.timezone = <my_zone>/<my_city>" + +==> Drop http user on video group if it isn't needed with others servers: +==> gpasswd -d http video + +==> Edit /etc/php/php.ini and remove "/etc", "/srv/http/zoneminder" and "/var/cache/zoneminder" +==> in the "open_basedir". + +==> Remove log files and "zonemider" directory in "/var/log/zoneminder". + +==> Backup and remove "events", "images" and "temp" dirs in "/var/cache/zoneminder". +EOF +} diff --git a/pcr/zoneminder-libav/zoneminder.service b/pcr/zoneminder-libav/zoneminder.service new file mode 100644 index 000000000..05cae6f91 --- /dev/null +++ b/pcr/zoneminder-libav/zoneminder.service @@ -0,0 +1,13 @@ +[Unit] +Description=Capture, analyse, record and monitor video security cameras +After=network.target remote-fs.target +Required=mysqld.service + +[Service] +Type=forking +ExecStart=/usr/bin/zmpkg.pl start +ExecRestart=/usr/bin/zmpkg.pl restart +ExecStop=/usr/bin/zmpkg.pl stop + +[Install] +WantedBy=multi-user.target diff --git a/pcr/zoneminder-lts/PKGBUILD b/pcr/zoneminder-lts/PKGBUILD new file mode 100644 index 000000000..1ae9441d2 --- /dev/null +++ b/pcr/zoneminder-lts/PKGBUILD @@ -0,0 +1,210 @@ +# Maintainer: Vojtech Aschenbrenner <v@asch.cz> +# Contributor: Jason Gardner <buhrietoe@gmail.com> +# Contributor: Ross melin <rdmelin@gmail.com> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +# Contributor (Parabola): André Silva <emulatorman@lavabit.com> + +# based of debian squeeze package + +pkgbase=zoneminder +pkgname=zoneminder-lts +pkgver=1.24.4 +pkgrel=1 +pkgdesc='Capture, analyse, record and monitor video security cameras' +arch=( + i686 + x86_64 + mips64el +) +backup=( + etc/zm.conf +) +url="http://www.$pkgbase.com" +license=( + GPL +) +depends=( + apache + cambozola + ffmpeg-static + gnutls + mysql + perl-archive-zip + perl-date-manip + perl-dbd-mysql + perl-dbi + perl-expect + perl-libwww + perl-mime-lite + perl-mime-tools + perl-php-serialization + perl-net-sftp-foreign + perl-sys-mmap + perl-time-modules + perl-x10 + php + php-apache + php-gd + php-mcrypt +) +makedepends=( + netpbm +) +optdepends=( + netpbm +) +provides=( + $pkgbase +) +conflicts=( + $pkgbase +) +install=$pkgbase.install +source=( + http://www.$pkgbase.com/downloads/ZoneMinder-$pkgver.tar.gz + httpd-$pkgbase.conf + $pkgbase + $pkgbase.service + patch-ffmpeg-0.11.patch +) +sha512sums=( + 8bf01f029a8fbc140bfb73f3909057ee09c2439397773953da143218fe13d137b6fae61e3f46e3cbf6824ffe39329bba59eec767e57278e2dfbfbc630772ef5d + 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 + ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 + cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf + 382799ad6add1632d934544230520f942dae37913b58cfa19e0cb2b11e7002267b1fdb9aa535f2217bcccf0c85c4d754f316dc3980a3ca267e5b3f5500536024 +) + +build() { + cd $srcdir/ZoneMinder-$pkgver + + # ZM_RUNDIR need change to run dir + export CPPFLAGS=-D__STDC_CONSTANT_MACROS\ + ZM_LOGDIR=/var/log/$pkgbase\ + ZM_RUNDIR=/tmp/$pkgbase\ + ZM_SSL_LIB=gnutls\ + ZM_TMPDIR=/tmp/$pkgbase + + # Patch for GCC 4.7.x + #sed -i -e 's/^#include <errno.h>/#include <errno.h>\n#include <unistd.h>/'\ + # src/zm_logger.cpp || read + sed -i -e 's/^#include <pthread.h>/#include <pthread.h>\n#include <unistd.h>/'\ + src/zm_thread.h || read + + # Patch for automake 1.12 + sed -i -e '/am__api_version=/ s/1.11/1.12/'\ + configure || read + + # Patch for disable ZM_CHECK_FOR_UPDATES + sed -i -e '/ZM_CHECK_FOR_UPDATES/,+1 s/yes/no/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for support html5 video and flv + sed -i -e '/ZM_MPEG_LIVE_FORMAT/,+1 s/swf/webm/;/ZM_MPEG_REPLAY_FORMAT/,+1 s/swf/webm/; + /ZM_FFMPEG_FORMATS/,+1 s/mpg mpeg wmv asf avi\* mov swf 3gp\*\*/mpg mpeg wmv asf avi\* mov flv swf 3gp\*\* webm ogg h254/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change path run dir + sed -i -e '/ZM_PATH_SOCKS/,+1 s/TMP/RUN/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change ZM name to ZoneMinder + sed -i -e '/ZM_WEB_TITLE_PREFIX/,+1 s/"ZM"/"ZoneMinder"/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for v4l2 convert support + sed -i -e "s/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};\n$ENV{LD_PRELOAD} = \'\/usr\/lib\/libv4l\/v4l2convert.so\' ;/"\ + scripts/zmdc.pl.in || read + + # Patch for add more socket tries + sed -i -e '/$max_socket_tries/ s/3/15/'\ + web/ajax/stream.php || read + + # Patch for wrong "suppported" + sed -i -e 's/suppported/supported/'\ + src/zm_local_camera.cpp || read + + # Patch for type cast in linux-libre kernel 3.5 + sed -i -e 's/enum v4l2_buf_type type = v4l2_data.fmt.type;/enum v4l2_buf_type type = (v4l2_buf_type)v4l2_data.fmt.type;/'\ + src/zm_local_camera.cpp || read + + # Patch for drop custom perl install paths + sed -i -e '/# Slight hack for non-standard perl install paths/,+10 d; + s/^AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")/AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")\n\nEXTRA_PERL_LIB="# Include from system perl paths only"\nPERL_MM_PARMS="INSTALLDIRS=vendor"/'\ + configure.ac + + # Patch for support new ffmpeg + patch -p1 < $srcdir/patch-ffmpeg-0.11.patch +# sed -i -e 's/if ( av_open_input_file( \&mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )/if ( avformat_open_input( \&mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )/; +# s/if ( avcodec_open( mCodecContext, mCodec ) < 0 )/if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )/'\ +# src/zm_ffmpeg_camera.cpp +# sed -i -e 's/if ( av_set_parameters(ofc, NULL) < 0 )/\/\*\n \* Removed in last ffmpeg\n \* if ( av_set_parameters(ofc, NULL) < 0 )/; +# /Panic( "Invalid output format parameters" );/,+1 s/}/}\*/; +# /if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )/ s/URL_WRONLY/AVIO_FLAG_WRITE/; +# s/av_write_header(ofc);/avformat_write_header(ofc, NULL);/'\ +# src/zm_mpeg.cpp + sed -i -e 's/avcodec_init/avcodec_open/'\ + configure{,.ac} + + # Patch for support ffmpeg with <libavutil/mathematics.h> and C library + sed -i -e 's/^extern "C" {/extern "C" {\n#ifdef _STDINT_H\n#undef _STDINT_H\n#endif\n#include <stdint.h>/ + s/^#include <libavutil\/avutil.h>/#include <libavutil\/avutil.h>\n#include <libavutil\/mathematics.h>/'\ + src/zm_ffmpeg.h + sed -i -e 's/^AM_CONFIG_HEADER(config.h)/AM_CONFIG_HEADER(config.h)\n\nAC_SUBST([AM_CXXFLAGS], [-D__STDC_CONSTANT_MACROS])/; + s/^AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)/AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)\nAC_LANG_PUSH([C])/; + s/^AC_CHECK_HEADERS(libswscale\/swscale.h,,,)/AC_CHECK_HEADERS(libswscale\/swscale.h,,,)\nAC_LANG_POP([C])/'\ + configure.ac + + # Patch for wrong install run, tmp and log dir + sed -i -e '/ install-data-hook/d;/install-data-hook:/d;/# Yes, you are correct. This is a HACK!/d; + / ( cd $(DESTDIR)$(sysconfdir); chown $(webuser):$(webgroup) $(sysconf_DATA); chmod 600 $(sysconf_DATA) )/d; + / ( if ! test -e $(ZM_RUNDIR); then mkdir -p $(ZM_RUNDIR); fi; if test "$(ZM_RUNDIR)" != "\/var\/run"; then chown $(webuser):$(webgroup) $(ZM_RUNDIR); chmod u+w $(ZM_RUNDIR); fi )/d; + / ( if ! test -e $(ZM_TMPDIR); then mkdir -m 700 -p $(ZM_TMPDIR); fi; if test "$(ZM_TMPDIR)" != "\/tmp"; then chown $(webuser):$(webgroup) $(ZM_TMPDIR); chmod u+w $(ZM_TMPDIR); fi )/d; + / ( if ! test -e $(ZM_LOGDIR); then mkdir -p $(ZM_LOGDIR); fi; if test "$(ZM_LOGDIR)" != "\/var\/log"; then chown $(webuser):$(webgroup) $(ZM_LOGDIR); chmod u+w $(ZM_LOGDIR); fi )/,+1 d'\ + Makefile.{am,in} + + ./configure --prefix=/usr\ + --enable-crashtrace=no\ + --enable-debug=no\ + --enable-mmap=yes\ + --sysconfdir=/etc\ + --with-cgidir=/srv/http/cgi-bin\ + --with-extralibs='-L/usr/lib -L/usr/lib/mysql'\ + --with-ffmpeg=/usr\ + --with-libarch=lib\ + --with-mysql=/usr\ + --with-webdir=/srv/http/$pkgbase\ + --with-webgroup=http\ + --with-webhost=localhost\ + --with-webuser=http + + make V=0 +} + +package() { + cd $srcdir/ZoneMinder-$pkgver + + make DESTDIR=$pkgdir install + + mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgbase},usr/{lib/systemd/system,share/{license/$pkgbase,$pkgbase/db}},var/{cache/$pkgbase,log/$pkgbase}} + + chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgbase,log/$pkgbase}} + chmod 0700 $pkgdir/etc/zm.conf + + for i in events images temp; do + mv $pkgdir/srv/http/$pkgbase/$i $pkgdir/var/cache/$pkgbase/$i + ln -s /var/cache/$pkgbase/$i $pkgdir/srv/http/$pkgbase/$i + chown -h http.http $pkgdir/srv/http/$pkgbase/$i + done + + ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgbase + chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgbase,$pkgbase/cgi-bin} + + ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgbase + + install -D -m 644 $srcdir/httpd-$pkgbase.conf $pkgdir/etc/httpd/conf/extra + install -D -m 644 $srcdir/$pkgbase $pkgdir/etc/rc.d + install -D -m 644 $srcdir/$pkgbase.service $pkgdir/usr/lib/systemd/system + install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgbase + install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgbase/db +} diff --git a/pcr/zoneminder-lts/httpd-zoneminder.conf b/pcr/zoneminder-lts/httpd-zoneminder.conf new file mode 100644 index 000000000..aeb089bc1 --- /dev/null +++ b/pcr/zoneminder-lts/httpd-zoneminder.conf @@ -0,0 +1,20 @@ +# /etc/httpd/conf/extra/httpd-zm.conf +# Config for zoneminder web app + +Alias /zm "/srv/http/zoneminder" +<Directory "/srv/http/zoneminder"> + Options -Indexes MultiViews FollowSymLinks + AllowOverride None + Order allow,deny + Allow from all + # The code unfortunately uses short tags in many places + php_value short_open_tag On +</Directory> + +ScriptAlias /cgi-bin "/srv/http/cgi-bin" +<Directory "/srv/http/cgi-bin"> + AllowOverride None + Options ExecCGI FollowSymLinks + Order allow,deny + Allow from all +</Directory> diff --git a/pcr/zoneminder-lts/patch-ffmpeg-0.11.patch b/pcr/zoneminder-lts/patch-ffmpeg-0.11.patch new file mode 100644 index 000000000..ac56e4c69 --- /dev/null +++ b/pcr/zoneminder-lts/patch-ffmpeg-0.11.patch @@ -0,0 +1,60 @@ +diff --git a/src/zm_ffmpeg_camera.cpp b/src/zm_ffmpeg_camera.cpp
+index 42927f6..61df606 100644
+--- a/src/zm_ffmpeg_camera.cpp
++++ b/src/zm_ffmpeg_camera.cpp
+@@ -91,7 +91,7 @@ int FfmpegCamera::PrimeCapture()
+ Info( "Priming capture from %s", mPath.c_str() );
+
+ // Open the input, not necessarily a file
+- if ( av_open_input_file( &mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )
++ if ( avformat_open_input( &mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )
+ Fatal( "Unable to open input %s due to: %s", mPath.c_str(), strerror(errno) );
+
+ // Locate stream info from input
+@@ -122,7 +122,7 @@ int FfmpegCamera::PrimeCapture()
+ Fatal( "Can't find codec for video stream from %s", mPath.c_str() );
+
+ // Open the codec
+- if ( avcodec_open( mCodecContext, mCodec ) < 0 )
++ if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )
+ Fatal( "Unable to open codec for video stream from %s", mPath.c_str() );
+
+ // Allocate space for the native video frame
+
+diff --git a/src/zm_mpeg.cpp b/src/zm_mpeg.cpp
+index f5de2a4..d614346 100644
+--- a/src/zm_mpeg.cpp
++++ b/src/zm_mpeg.cpp
+@@ -130,10 +130,12 @@ void VideoStream::SetParameters()
+ {
+ /* set the output parameters (must be done even if no
+ parameters). */
+- if ( av_set_parameters(ofc, NULL) < 0 )
++ /*
++ * Removed in last ffmpeg
++ * if ( av_set_parameters(ofc, NULL) < 0 )
+ {
+ Panic( "Invalid output format parameters" );
+- }
++ }*/
+ //dump_format(ofc, 0, filename, 1);
+ }
+
+@@ -222,7 +224,7 @@ void VideoStream::OpenStream()
+ if ( !(of->flags & AVFMT_NOFILE) )
+ {
+ #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51,2,1)
+- if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )
++ if ( avio_open(&ofc->pb, filename, AVIO_FLAG_WRITE) < 0 )
+ #else
+ if ( url_fopen(&ofc->pb, filename, URL_WRONLY) < 0 )
+ #endif
+@@ -241,7 +243,7 @@ void VideoStream::OpenStream()
+ }
+
+ /* write the stream header, if any */
+- av_write_header(ofc);
++ avformat_write_header(ofc, NULL);
+ }
+
+ VideoStream::VideoStream( const char *filename, const char *format, int bitrate, double frame_rate, int colours, int subpixelorder, int width, int height )
diff --git a/pcr/zoneminder-lts/zoneminder b/pcr/zoneminder-lts/zoneminder new file mode 100644 index 000000000..c4cbf4d3f --- /dev/null +++ b/pcr/zoneminder-lts/zoneminder @@ -0,0 +1,63 @@ +#!/bin/bash + +daemon_name=zm + +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Starting Zoneminder" + /usr/bin/zmfix -a + if /usr/bin/zmpkg.pl start >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Zoneminder" + if /usr/bin/zmpkg.pl stop >/dev/null ; then + rm_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + reload) + stat_busy "Reloading Zoneminder" + if /usr/bin/zmpkg.pl graceful >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + restart) + stat_busy "Restarting Zoneminder" + if /usr/bin/zmpkg.pl restart >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + status) + stat_busy "Checking Zoneminder status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|reload|restart|status}" +esac + +exit 0 diff --git a/pcr/zoneminder-lts/zoneminder.install b/pcr/zoneminder-lts/zoneminder.install new file mode 100644 index 000000000..ecacf6437 --- /dev/null +++ b/pcr/zoneminder-lts/zoneminder.install @@ -0,0 +1,185 @@ +pre_install() { + set -e + abort=false + if [ -L /srv/http/zoneminder/events ]; then + l=$(readlink /srv/http/zoneminder/events) + if [ $l != /var/cache/zoneminder/events ]; then + abort=true + fi + fi + if [ -L /srv/http/zoneminder/images ]; then + l=$(readlink /srv/http/zoneminder/images) + if [ $l != /var/cache/zoneminder/images ]; then + abort=true + fi + fi + if [ $abort = true ]; then + cat >&2 << EOF +Aborting installation of zoneminder due to non-default symlinks in +/srv/http/zoneminder for the images and/or events directory, which could +result in loss of data. Please move your data in each of these directories to +/var/cache/zoneminder before installing zoneminder from the package. +EOF + exit 1 + fi + exit 0 +} + +post_install() { + if [[ -d /var/log/zoneminder ]]; then + chmod 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + else + mkdir -m 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + fi + if [[ -d /tmp/zoneminder ]]; then + chmod 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + else + mkdir -m 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + fi + sed -i -e ' + /^;extension=mysql.so/ s/^;//; + /^#extension=mysql.so/ s/^#//; + /^;extension=mysqli.so/ s/^;//; + /^#extension=mysqli.so/ s/^#//; + /^;extension=gd.so/ s/^;//; + /^#extension=gd.so/ s/^#//; + /^;extension=gettext.so/ s/^;//; + /^#extension=gettext.so/ s/^#//; + /^;extension=mcrypt.so/ s/^;//; + /^#extension=mcrypt.so/ s/^#//; + /^;extension=session.so/ s/^;//; + /^#extension=session.so/ s/^#//; + /^;extension=sockets.so/ s/^;//; + /^#extension=sockets.so/ s/^#//; + /^;extension=openssl.so/ s/^;//; + /^#extension=openssl.so/ s/^#//; + /^;extension=ftp.so/ s/^;//; + /^#extension=ftp.so/ s/^#//; + /^;extension=zip.so/ s/^;//; + /^#extension=zip.so/ s/^#//; + /^;open_basedir/ s/^;//; + /^#open_basedir/ s/^#//; + /^open_basedir/ s/:\/etc//; + /^open_basedir/ s/:\/etc\///; + /^open_basedir/ s/$/:\/etc/; + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + /^open_basedir/ s/$/:\/srv\/http\/zoneminder/; + /^open_basedir/ s/:\/var\/cache\/zoneminder//; + /^open_basedir/ s/:\/var\/cache\/zoneminder\///; + /^open_basedir/ s/$/:\/var\/cache\/zoneminder/; + ' /etc/php/php.ini || read + sed -i -e ' + /^LoadModule php5_module modules\/libphp5.so/d; + /^LoadModule rewrite_module modules\/mod_rewrite.so/ s/$/\nLoadModule php5_module modules\/libphp5.so/; + /^# PHP 5/d; + /^# ZoneMinder/d; + /^Include \/etc\/httpd\/conf\/extra\/php5_module.conf/d; + /^Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + /^Include conf\/extra\/httpd-default.conf/ s/$/\n\n# PHP 5\n\Include \/etc\/httpd\/conf\/extra\/php5_module.conf\n\n# ZoneMinder\nInclude \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/; + ' /etc/httpd/conf/httpd.conf || read + gpasswd -a http video + cat << EOF +Note for mysql: +==> To run Zoneminder, you must install the database running mysql service (as root): +==> "rc.d start mysqld" (in initscripts) or "systemctl start mysqld.service" (in systemd) +==> and add Zoneminder database typing (with passsword): +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f reload" +==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf -p" +==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> (or without passsword): +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f reload" +==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf" +==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" + +Note for php: +==> You must uncomment that line in /etc/php/php.ini: +==> "extension=mysql.so" +==> check and make sure these are uncommented: +==> "extension=gd.so" +==> "extension=gettext.so" +==> "extension=mcrypt.so" +==> "extension=mysqli.so" +==> "extension=session.so" +==> "extension=sockets.so" +==> "extension=openssl.so" +==> "extension=ftp.so" +==> "extension=zip.so" +==> check and add to open_basedir "/etc", +==> "/srv/http/zoneminder" and "/var/cache/zoneminder" like so +==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder:/var/cache/zoneminder" +==> and set your timezone in php.ini: +==> "date.timezone = <your_zone>/<your_city>" + +Note for apache: +==> You must edit /etc/httpd/conf/httpd.conf and add the line: +==> "LoadModule php5_module modules/libphp5.so" +==> and: +==> "Include /etc/httpd/conf/extra/php5_module.conf" +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" +EOF +} + +post_upgrade() { + post_install + /usr/bin/zmupdate.pl -f >/dev/null +} + +post_remove() { + if [[ -d /tmp/zoneminder ]]; then + rm -vr /tmp/zoneminder + fi + sed -i -e ' + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + /^open_basedir/ s/:\/var\/cache\/zoneminder\/// + ' /etc/php/php.ini || read + sed -i -e ' + /^# ZoneMinder/d; + /Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + ' /etc/httpd/conf/httpd.conf || read + cat << EOF +Note: +==> To clean Zoneminder mysql database, run as root (with password): +==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f drop zm" +==> (or without password): +==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f drop zm" + +==> Disable http with php if it isn't needed with others servers, +==> comment or remove that lines in /etc/httpd/conf/httpd.conf: +==> "LoadModule php5_module modules/libphp5.so" +==> "Include /etc/httpd/conf/extra/php5_module.conf" + +==> Remove line in /etc/httpd/conf/httpd.conf: +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" + +==> Disable php with mysql if it isn't needed with others servers, +==> comment that lines in /etc/php/php.ini: +==> "extension=mysql.so" +==> "extension=gd.so" +==> "extension=gettext.so" +==> "extension=mcrypt.so" +==> "extension=mysqli.so" +==> "extension=session.so" +==> "extension=sockets.so" +==> "date.timezone = <my_zone>/<my_city>" + +==> Drop http user on video group if it isn't needed with others servers: +==> gpasswd -d http video + +==> Edit /etc/php/php.ini and remove "/etc", "/srv/http/zoneminder" and "/var/cache/zoneminder" +==> in the "open_basedir". + +==> Remove log files and "zonemider" directory in "/var/log/zoneminder". + +==> Backup and remove "events", "images" and "temp" dirs in "/var/cache/zoneminder". +EOF +} diff --git a/pcr/zoneminder-lts/zoneminder.service b/pcr/zoneminder-lts/zoneminder.service new file mode 100644 index 000000000..05cae6f91 --- /dev/null +++ b/pcr/zoneminder-lts/zoneminder.service @@ -0,0 +1,13 @@ +[Unit] +Description=Capture, analyse, record and monitor video security cameras +After=network.target remote-fs.target +Required=mysqld.service + +[Service] +Type=forking +ExecStart=/usr/bin/zmpkg.pl start +ExecRestart=/usr/bin/zmpkg.pl restart +ExecStop=/usr/bin/zmpkg.pl stop + +[Install] +WantedBy=multi-user.target diff --git a/pcr/zoneminder/PKGBUILD b/pcr/zoneminder/PKGBUILD new file mode 100644 index 000000000..c69e6fa97 --- /dev/null +++ b/pcr/zoneminder/PKGBUILD @@ -0,0 +1,203 @@ +# Maintainer: Vojtech Aschenbrenner <v@asch.cz> +# Contributor: Jason Gardner <buhrietoe@gmail.com> +# Contributor: Ross melin <rdmelin@gmail.com> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +# Contributor (Parabola): André Silva <emulatorman@lavabit.com> + +# based of debian squeeze package + +pkgname=zoneminder +pkgver=1.25.0 +pkgrel=22 +pkgdesc='Capture, analyse, record and monitor video security cameras' +arch=( + i686 + x86_64 + mips64el +) +backup=( + etc/zm.conf +) +url="http://www.$pkgname.com" +license=( + GPL +) +depends=( + apache + cambozola + ffmpeg-static + gnutls + mysql + perl-archive-zip + perl-date-manip + perl-dbd-mysql + perl-dbi + perl-expect + perl-libwww + perl-mime-lite + perl-mime-tools + perl-php-serialization + perl-net-sftp-foreign + perl-sys-mmap + perl-time-modules + perl-x10 + php + php-apache + php-gd + php-mcrypt +) +makedepends=( + netpbm +) +optdepends=( + netpbm +) +install=$pkgname.install +source=( + http://www.$pkgname.com/downloads/ZoneMinder-$pkgver.tar.gz + httpd-$pkgname.conf + $pkgname + $pkgname.service + patch-ffmpeg-0.11.patch +) +sha512sums=( + 3e18993b0539729491052c97d8c94227ccc089eb40277c2f07682f30049033303c7cfe9734fdac6d33ae67df29c76eb72bf7fbb5dae8227e8831fa603b61c375 + 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 + ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 + cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf + 382799ad6add1632d934544230520f942dae37913b58cfa19e0cb2b11e7002267b1fdb9aa535f2217bcccf0c85c4d754f316dc3980a3ca267e5b3f5500536024 +) + +build() { + cd $srcdir/ZoneMinder-$pkgver + + # ZM_RUNDIR need change to run dir + export CPPFLAGS=-D__STDC_CONSTANT_MACROS\ + ZM_LOGDIR=/var/log/$pkgname\ + ZM_RUNDIR=/tmp/$pkgname\ + ZM_SSL_LIB=gnutls\ + ZM_TMPDIR=/tmp/$pkgname + + # Patch for GCC 4.7.x + sed -i -e 's/^#include <errno.h>/#include <errno.h>\n#include <unistd.h>/'\ + src/zm_logger.cpp || read + sed -i -e 's/^#include <pthread.h>/#include <pthread.h>\n#include <unistd.h>/'\ + src/zm_thread.h || read + + # Patch for automake 1.12 + sed -i -e '/am__api_version=/ s/1.11/1.12/'\ + configure || read + + # Patch for disable ZM_CHECK_FOR_UPDATES + sed -i -e '/ZM_CHECK_FOR_UPDATES/,+1 s/yes/no/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for support html5 video and flv + sed -i -e '/ZM_MPEG_LIVE_FORMAT/,+1 s/swf/webm/;/ZM_MPEG_REPLAY_FORMAT/,+1 s/swf/webm/; + /ZM_FFMPEG_FORMATS/,+1 s/mpg mpeg wmv asf avi\* mov swf 3gp\*\*/mpg mpeg wmv asf avi\* mov flv swf 3gp\*\* webm ogg h254/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change path run dir + sed -i -e '/ZM_PATH_SOCKS/,+1 s/TMP/RUN/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change ZM name to ZoneMinder + sed -i -e '/ZM_WEB_TITLE_PREFIX/,+1 s/"ZM"/"ZoneMinder"/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for v4l2 convert support + sed -i -e "s/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};\n$ENV{LD_PRELOAD} = \'\/usr\/lib\/libv4l\/v4l2convert.so\' ;/"\ + scripts/zmdc.pl.in || read + + # Patch for add more socket tries + sed -i -e '/$max_socket_tries/ s/3/15/'\ + web/ajax/stream.php || read + + # Patch for wrong "suppported" + sed -i -e 's/suppported/supported/'\ + src/zm_local_camera.cpp || read + + # Patch for type cast in linux-libre kernel 3.5 + sed -i -e 's/enum v4l2_buf_type type = v4l2_data.fmt.type;/enum v4l2_buf_type type = (v4l2_buf_type)v4l2_data.fmt.type;/'\ + src/zm_local_camera.cpp || read + + # Patch for drop custom perl install paths + sed -i -e '/# Slight hack for non-standard perl install paths/,+10 d; + s/^AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")/AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")\n\nEXTRA_PERL_LIB="# Include from system perl paths only"\nPERL_MM_PARMS="INSTALLDIRS=vendor"/'\ + configure.ac + + # Patch for support new ffmpeg + patch -p1 < $srcdir/patch-ffmpeg-0.11.patch +# sed -i -e 's/if ( av_open_input_file( \&mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )/if ( avformat_open_input( \&mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )/; +# s/if ( avcodec_open( mCodecContext, mCodec ) < 0 )/if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )/'\ +# src/zm_ffmpeg_camera.cpp +# sed -i -e 's/if ( av_set_parameters(ofc, NULL) < 0 )/\/\*\n \* Removed in last ffmpeg\n \* if ( av_set_parameters(ofc, NULL) < 0 )/; +# /Panic( "Invalid output format parameters" );/,+1 s/}/}\*/; +# /if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )/ s/URL_WRONLY/AVIO_FLAG_WRITE/; +# s/av_write_header(ofc);/avformat_write_header(ofc, NULL);/'\ +# src/zm_mpeg.cpp + sed -i -e 's/avcodec_init/avcodec_open/'\ + configure{,.ac} + + # Patch for support ffmpeg with <libavutil/mathematics.h> and C library + sed -i -e 's/^extern "C" {/extern "C" {\n#ifdef _STDINT_H\n#undef _STDINT_H\n#endif\n#include <stdint.h>/ + s/^#include <libavutil\/avutil.h>/#include <libavutil\/avutil.h>\n#include <libavutil\/mathematics.h>/'\ + src/zm_ffmpeg.h + sed -i -e 's/^AM_CONFIG_HEADER(config.h)/AM_CONFIG_HEADER(config.h)\n\nAC_SUBST([AM_CXXFLAGS], [-D__STDC_CONSTANT_MACROS])/; + s/^AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)/AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)\nAC_LANG_PUSH([C])/; + s/^AC_CHECK_HEADERS(libswscale\/swscale.h,,,)/AC_CHECK_HEADERS(libswscale\/swscale.h,,,)\nAC_LANG_POP([C])/'\ + configure.ac + + # Patch for wrong install run, tmp and log dir + sed -i -e '/ install-data-hook/d;/install-data-hook:/d;/# Yes, you are correct. This is a HACK!/d; + / ( cd $(DESTDIR)$(sysconfdir); chown $(webuser):$(webgroup) $(sysconf_DATA); chmod 600 $(sysconf_DATA) )/d; + / ( if ! test -e $(ZM_RUNDIR); then mkdir -p $(ZM_RUNDIR); fi; if test "$(ZM_RUNDIR)" != "\/var\/run"; then chown $(webuser):$(webgroup) $(ZM_RUNDIR); chmod u+w $(ZM_RUNDIR); fi )/d; + / ( if ! test -e $(ZM_TMPDIR); then mkdir -m 700 -p $(ZM_TMPDIR); fi; if test "$(ZM_TMPDIR)" != "\/tmp"; then chown $(webuser):$(webgroup) $(ZM_TMPDIR); chmod u+w $(ZM_TMPDIR); fi )/d; + / ( if ! test -e $(ZM_LOGDIR); then mkdir -p $(ZM_LOGDIR); fi; if test "$(ZM_LOGDIR)" != "\/var\/log"; then chown $(webuser):$(webgroup) $(ZM_LOGDIR); chmod u+w $(ZM_LOGDIR); fi )/,+1 d'\ + Makefile.{am,in} + + ./configure --prefix=/usr\ + --enable-crashtrace=no\ + --enable-debug=no\ + --enable-mmap=yes\ + --sysconfdir=/etc\ + --with-cgidir=/srv/http/cgi-bin\ + --with-extralibs='-L/usr/lib -L/usr/lib/mysql'\ + --with-ffmpeg=/usr\ + --with-libarch=lib\ + --with-mysql=/usr\ + --with-webdir=/srv/http/$pkgname\ + --with-webgroup=http\ + --with-webhost=localhost\ + --with-webuser=http + + make V=0 +} + +package() { + cd $srcdir/ZoneMinder-$pkgver + + make DESTDIR=$pkgdir install + + mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgname},usr/{lib/systemd/system,share/{license/$pkgname,$pkgname/db}},var/{cache/$pkgname,log/$pkgname}} + + chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgname,log/$pkgname}} + chmod 0700 $pkgdir/etc/zm.conf + + for i in events images temp; do + mv $pkgdir/srv/http/$pkgname/$i $pkgdir/var/cache/$pkgname/$i + ln -s /var/cache/$pkgname/$i $pkgdir/srv/http/$pkgname/$i + chown -h http.http $pkgdir/srv/http/$pkgname/$i + done + + ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgname + chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgname,$pkgname/cgi-bin} + + ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgname + + install -D -m 644 $srcdir/httpd-$pkgname.conf $pkgdir/etc/httpd/conf/extra + install -D -m 644 $srcdir/$pkgname $pkgdir/etc/rc.d + install -D -m 644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system + install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgname + install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgname/db +} diff --git a/pcr/zoneminder/httpd-zoneminder.conf b/pcr/zoneminder/httpd-zoneminder.conf new file mode 100644 index 000000000..aeb089bc1 --- /dev/null +++ b/pcr/zoneminder/httpd-zoneminder.conf @@ -0,0 +1,20 @@ +# /etc/httpd/conf/extra/httpd-zm.conf +# Config for zoneminder web app + +Alias /zm "/srv/http/zoneminder" +<Directory "/srv/http/zoneminder"> + Options -Indexes MultiViews FollowSymLinks + AllowOverride None + Order allow,deny + Allow from all + # The code unfortunately uses short tags in many places + php_value short_open_tag On +</Directory> + +ScriptAlias /cgi-bin "/srv/http/cgi-bin" +<Directory "/srv/http/cgi-bin"> + AllowOverride None + Options ExecCGI FollowSymLinks + Order allow,deny + Allow from all +</Directory> diff --git a/pcr/zoneminder/patch-ffmpeg-0.11.patch b/pcr/zoneminder/patch-ffmpeg-0.11.patch new file mode 100644 index 000000000..ac56e4c69 --- /dev/null +++ b/pcr/zoneminder/patch-ffmpeg-0.11.patch @@ -0,0 +1,60 @@ +diff --git a/src/zm_ffmpeg_camera.cpp b/src/zm_ffmpeg_camera.cpp
+index 42927f6..61df606 100644
+--- a/src/zm_ffmpeg_camera.cpp
++++ b/src/zm_ffmpeg_camera.cpp
+@@ -91,7 +91,7 @@ int FfmpegCamera::PrimeCapture()
+ Info( "Priming capture from %s", mPath.c_str() );
+
+ // Open the input, not necessarily a file
+- if ( av_open_input_file( &mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )
++ if ( avformat_open_input( &mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )
+ Fatal( "Unable to open input %s due to: %s", mPath.c_str(), strerror(errno) );
+
+ // Locate stream info from input
+@@ -122,7 +122,7 @@ int FfmpegCamera::PrimeCapture()
+ Fatal( "Can't find codec for video stream from %s", mPath.c_str() );
+
+ // Open the codec
+- if ( avcodec_open( mCodecContext, mCodec ) < 0 )
++ if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )
+ Fatal( "Unable to open codec for video stream from %s", mPath.c_str() );
+
+ // Allocate space for the native video frame
+
+diff --git a/src/zm_mpeg.cpp b/src/zm_mpeg.cpp
+index f5de2a4..d614346 100644
+--- a/src/zm_mpeg.cpp
++++ b/src/zm_mpeg.cpp
+@@ -130,10 +130,12 @@ void VideoStream::SetParameters()
+ {
+ /* set the output parameters (must be done even if no
+ parameters). */
+- if ( av_set_parameters(ofc, NULL) < 0 )
++ /*
++ * Removed in last ffmpeg
++ * if ( av_set_parameters(ofc, NULL) < 0 )
+ {
+ Panic( "Invalid output format parameters" );
+- }
++ }*/
+ //dump_format(ofc, 0, filename, 1);
+ }
+
+@@ -222,7 +224,7 @@ void VideoStream::OpenStream()
+ if ( !(of->flags & AVFMT_NOFILE) )
+ {
+ #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51,2,1)
+- if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )
++ if ( avio_open(&ofc->pb, filename, AVIO_FLAG_WRITE) < 0 )
+ #else
+ if ( url_fopen(&ofc->pb, filename, URL_WRONLY) < 0 )
+ #endif
+@@ -241,7 +243,7 @@ void VideoStream::OpenStream()
+ }
+
+ /* write the stream header, if any */
+- av_write_header(ofc);
++ avformat_write_header(ofc, NULL);
+ }
+
+ VideoStream::VideoStream( const char *filename, const char *format, int bitrate, double frame_rate, int colours, int subpixelorder, int width, int height )
diff --git a/pcr/zoneminder/zoneminder b/pcr/zoneminder/zoneminder new file mode 100644 index 000000000..c4cbf4d3f --- /dev/null +++ b/pcr/zoneminder/zoneminder @@ -0,0 +1,63 @@ +#!/bin/bash + +daemon_name=zm + +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Starting Zoneminder" + /usr/bin/zmfix -a + if /usr/bin/zmpkg.pl start >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Zoneminder" + if /usr/bin/zmpkg.pl stop >/dev/null ; then + rm_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + reload) + stat_busy "Reloading Zoneminder" + if /usr/bin/zmpkg.pl graceful >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + restart) + stat_busy "Restarting Zoneminder" + if /usr/bin/zmpkg.pl restart >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + status) + stat_busy "Checking Zoneminder status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|reload|restart|status}" +esac + +exit 0 diff --git a/pcr/zoneminder/zoneminder.install b/pcr/zoneminder/zoneminder.install new file mode 100644 index 000000000..ecacf6437 --- /dev/null +++ b/pcr/zoneminder/zoneminder.install @@ -0,0 +1,185 @@ +pre_install() { + set -e + abort=false + if [ -L /srv/http/zoneminder/events ]; then + l=$(readlink /srv/http/zoneminder/events) + if [ $l != /var/cache/zoneminder/events ]; then + abort=true + fi + fi + if [ -L /srv/http/zoneminder/images ]; then + l=$(readlink /srv/http/zoneminder/images) + if [ $l != /var/cache/zoneminder/images ]; then + abort=true + fi + fi + if [ $abort = true ]; then + cat >&2 << EOF +Aborting installation of zoneminder due to non-default symlinks in +/srv/http/zoneminder for the images and/or events directory, which could +result in loss of data. Please move your data in each of these directories to +/var/cache/zoneminder before installing zoneminder from the package. +EOF + exit 1 + fi + exit 0 +} + +post_install() { + if [[ -d /var/log/zoneminder ]]; then + chmod 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + else + mkdir -m 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + fi + if [[ -d /tmp/zoneminder ]]; then + chmod 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + else + mkdir -m 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + fi + sed -i -e ' + /^;extension=mysql.so/ s/^;//; + /^#extension=mysql.so/ s/^#//; + /^;extension=mysqli.so/ s/^;//; + /^#extension=mysqli.so/ s/^#//; + /^;extension=gd.so/ s/^;//; + /^#extension=gd.so/ s/^#//; + /^;extension=gettext.so/ s/^;//; + /^#extension=gettext.so/ s/^#//; + /^;extension=mcrypt.so/ s/^;//; + /^#extension=mcrypt.so/ s/^#//; + /^;extension=session.so/ s/^;//; + /^#extension=session.so/ s/^#//; + /^;extension=sockets.so/ s/^;//; + /^#extension=sockets.so/ s/^#//; + /^;extension=openssl.so/ s/^;//; + /^#extension=openssl.so/ s/^#//; + /^;extension=ftp.so/ s/^;//; + /^#extension=ftp.so/ s/^#//; + /^;extension=zip.so/ s/^;//; + /^#extension=zip.so/ s/^#//; + /^;open_basedir/ s/^;//; + /^#open_basedir/ s/^#//; + /^open_basedir/ s/:\/etc//; + /^open_basedir/ s/:\/etc\///; + /^open_basedir/ s/$/:\/etc/; + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + /^open_basedir/ s/$/:\/srv\/http\/zoneminder/; + /^open_basedir/ s/:\/var\/cache\/zoneminder//; + /^open_basedir/ s/:\/var\/cache\/zoneminder\///; + /^open_basedir/ s/$/:\/var\/cache\/zoneminder/; + ' /etc/php/php.ini || read + sed -i -e ' + /^LoadModule php5_module modules\/libphp5.so/d; + /^LoadModule rewrite_module modules\/mod_rewrite.so/ s/$/\nLoadModule php5_module modules\/libphp5.so/; + /^# PHP 5/d; + /^# ZoneMinder/d; + /^Include \/etc\/httpd\/conf\/extra\/php5_module.conf/d; + /^Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + /^Include conf\/extra\/httpd-default.conf/ s/$/\n\n# PHP 5\n\Include \/etc\/httpd\/conf\/extra\/php5_module.conf\n\n# ZoneMinder\nInclude \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/; + ' /etc/httpd/conf/httpd.conf || read + gpasswd -a http video + cat << EOF +Note for mysql: +==> To run Zoneminder, you must install the database running mysql service (as root): +==> "rc.d start mysqld" (in initscripts) or "systemctl start mysqld.service" (in systemd) +==> and add Zoneminder database typing (with passsword): +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f reload" +==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf -p" +==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> (or without passsword): +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f reload" +==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf" +==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" + +Note for php: +==> You must uncomment that line in /etc/php/php.ini: +==> "extension=mysql.so" +==> check and make sure these are uncommented: +==> "extension=gd.so" +==> "extension=gettext.so" +==> "extension=mcrypt.so" +==> "extension=mysqli.so" +==> "extension=session.so" +==> "extension=sockets.so" +==> "extension=openssl.so" +==> "extension=ftp.so" +==> "extension=zip.so" +==> check and add to open_basedir "/etc", +==> "/srv/http/zoneminder" and "/var/cache/zoneminder" like so +==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder:/var/cache/zoneminder" +==> and set your timezone in php.ini: +==> "date.timezone = <your_zone>/<your_city>" + +Note for apache: +==> You must edit /etc/httpd/conf/httpd.conf and add the line: +==> "LoadModule php5_module modules/libphp5.so" +==> and: +==> "Include /etc/httpd/conf/extra/php5_module.conf" +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" +EOF +} + +post_upgrade() { + post_install + /usr/bin/zmupdate.pl -f >/dev/null +} + +post_remove() { + if [[ -d /tmp/zoneminder ]]; then + rm -vr /tmp/zoneminder + fi + sed -i -e ' + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + /^open_basedir/ s/:\/var\/cache\/zoneminder\/// + ' /etc/php/php.ini || read + sed -i -e ' + /^# ZoneMinder/d; + /Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + ' /etc/httpd/conf/httpd.conf || read + cat << EOF +Note: +==> To clean Zoneminder mysql database, run as root (with password): +==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f drop zm" +==> (or without password): +==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f drop zm" + +==> Disable http with php if it isn't needed with others servers, +==> comment or remove that lines in /etc/httpd/conf/httpd.conf: +==> "LoadModule php5_module modules/libphp5.so" +==> "Include /etc/httpd/conf/extra/php5_module.conf" + +==> Remove line in /etc/httpd/conf/httpd.conf: +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" + +==> Disable php with mysql if it isn't needed with others servers, +==> comment that lines in /etc/php/php.ini: +==> "extension=mysql.so" +==> "extension=gd.so" +==> "extension=gettext.so" +==> "extension=mcrypt.so" +==> "extension=mysqli.so" +==> "extension=session.so" +==> "extension=sockets.so" +==> "date.timezone = <my_zone>/<my_city>" + +==> Drop http user on video group if it isn't needed with others servers: +==> gpasswd -d http video + +==> Edit /etc/php/php.ini and remove "/etc", "/srv/http/zoneminder" and "/var/cache/zoneminder" +==> in the "open_basedir". + +==> Remove log files and "zonemider" directory in "/var/log/zoneminder". + +==> Backup and remove "events", "images" and "temp" dirs in "/var/cache/zoneminder". +EOF +} diff --git a/pcr/zoneminder/zoneminder.service b/pcr/zoneminder/zoneminder.service new file mode 100644 index 000000000..05cae6f91 --- /dev/null +++ b/pcr/zoneminder/zoneminder.service @@ -0,0 +1,13 @@ +[Unit] +Description=Capture, analyse, record and monitor video security cameras +After=network.target remote-fs.target +Required=mysqld.service + +[Service] +Type=forking +ExecStart=/usr/bin/zmpkg.pl start +ExecRestart=/usr/bin/zmpkg.pl restart +ExecStop=/usr/bin/zmpkg.pl stop + +[Install] +WantedBy=multi-user.target |