diff options
77 files changed, 3578 insertions, 211 deletions
diff --git a/community/love/PKGBUILD b/community/love/PKGBUILD new file mode 100644 index 000000000..f7ce1579e --- /dev/null +++ b/community/love/PKGBUILD @@ -0,0 +1,50 @@ +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: Linus Sjögren <thelinx@unreliablepollution.net> +# Contributor: Eric Forgeot < http://anamnese.online.fr >, dreeze +pkgname=love +pkgver=0.7.2 +pkgrel=1 +pkgdesc="An open-source 2D game engine which uses the versatile Lua scripting language to create dynamic gaming experiences." +arch=(i686 x86_64) +url="http://love2d.org/" +license=('zlib') +depends=('luajit' 'physfs' 'freetype2' 'devil' 'mpg123' 'openal' 'libvorbis' 'libmodplug' 'sdl' 'shared-mime-info' 'hicolor-icon-theme' 'desktop-file-utils') +makedepends=('wget') +install=love.install +source=("https://bitbucket.org/rude/love/downloads/$pkgname-$pkgver-linux-src.tar.gz" + "https://bitbucket.org/rude/love/raw/$pkgver/license.txt" + "https://bitbucket.org/rude/love/raw/$pkgver/platform/unix/app.svg" + "https://bitbucket.org/rude/love/raw/$pkgver/platform/unix/game.svg" + "https://bitbucket.org/rude/love/raw/$pkgver/platform/unix/love.desktop" + "https://bitbucket.org/rude/love/raw/$pkgver/platform/unix/love.xml") +md5sums=('c3e678606bb9a870c31168e85b269e7e' + 'a4890908149d91bc042b30d00c121c58' + 'a1e19f91420cc519a683af360f5b1120' + '16f2ecc899c9ffc8b7b7c807f8967861' + '971bec1bffe4f424972eef2a26d27bec' + 'b4f00fb1cb80057a0a371a994100d418') + +build() { + cd "$srcdir/love-HEAD" + ./configure --prefix=/usr --enable-luajit LDFLAGS="$LDFLAGS -Wl,--no-as-needed" + make +} + +package() { + cd "$srcdir/love-HEAD" + make DESTDIR="$pkgdir" install + + mkdir -p "$pkgdir/usr/share/licenses/$pkgname" + mkdir -p "$pkgdir/usr/share/icons/hicolor/scalable/mimetypes" + mkdir -p "$pkgdir/usr/share/icons/hicolor/scalable/apps" + mkdir -p "$pkgdir/usr/share/applications" + mkdir -p "$pkgdir/usr/share/mime/packages" + + install -Dm0644 "$srcdir/license.txt" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -Dm0644 "$srcdir/app.svg" "$pkgdir/usr/share/icons/hicolor/scalable/apps/love.svg" + install -Dm0644 "$srcdir/game.svg" "$pkgdir/usr/share/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-love-game.svg" + install -Dm0644 "$srcdir/love.desktop" "$pkgdir/usr/share/applications/$pkgname.desktop" + install -Dm0644 "$srcdir/love.xml" "$pkgdir/usr/share/mime/packages/love.xml" +} + +# vim:set ts=2 sw=2 et: diff --git a/community/love/love.install b/community/love/love.install new file mode 100644 index 000000000..dbc25459b --- /dev/null +++ b/community/love/love.install @@ -0,0 +1,13 @@ +post_install() { + update-desktop-database -q + update-mime-database usr/share/mime + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_remove() { + post_install +} + +post_upgrade() { + post_install +} diff --git a/community/mygui/PKGBUILD b/community/mygui/PKGBUILD index 16bc6989c..6e5a79cb4 100644 --- a/community/mygui/PKGBUILD +++ b/community/mygui/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 59978 2011-12-02 21:01:43Z ibiru $ +# $Id: PKGBUILD 67266 2012-03-06 06:11:36Z svenstaro $ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Andrew Belitsky <belitsky.a@gmail.com> pkgbase=mygui pkgname=('mygui' 'mygui-docs') -pkgver=3.2.0rc1 -pkgrel=10 +pkgver=3.2.0 +pkgrel=1 pkgdesc="A multilayer and overlappable GUI System for OGRE" arch=('i686' 'x86_64') url="http://mygui.info/" @@ -12,11 +12,11 @@ license=('LGPL') depends=('boost-libs' 'ogre' 'ois') makedepends=('boost' 'cmake' 'doxygen' 'graphviz' 'ttf-dejavu') install=mygui.install -source=("http://downloads.sourceforge.net/my-gui/MyGUI_3.2.0_RC1.zip") -md5sums=('1ac1340148e81ad49a26c8a87acefc6b') +source=("http://downloads.sourceforge.net/my-gui/MyGUI_$pkgver.zip") +md5sums=('7c20486a0db82f497d8b7c5300613b61') build() { - cd $srcdir/MyGUI_3.2.0_RC1 + cd $srcdir/MyGUI_$pkgver # change CMake config so demos install to /opt sed -i 's:"bin:"../opt/MYGUI:' CMake/Utils/MyGUIConfigTargets.cmake @@ -49,7 +49,7 @@ build() { package_mygui() { optdepends=('mygui-docs: documentation') - cd $srcdir/MyGUI_3.2.0_RC1 + cd $srcdir/MyGUI_$pkgver cd build @@ -65,7 +65,7 @@ package_mygui-docs() { pkgdesc="Documentation for mygui" depends=() - cd $srcdir/MyGUI_3.2.0_RC1 + cd $srcdir/MyGUI_$pkgver cd build diff --git a/community/nginx/PKGBUILD b/community/nginx/PKGBUILD index 430ab54b3..0b4d546f6 100644 --- a/community/nginx/PKGBUILD +++ b/community/nginx/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 64420 2012-02-13 04:03:13Z spupykin $ +# $Id: PKGBUILD 67272 2012-03-06 06:31:05Z bpiotrowski $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Bartłomiej Piotrowski <barthalion@gmal.com> # Contributor: Miroslaw Szot <mss@czlug.icis.pcz.pl> pkgname=nginx -pkgver=1.0.12 +pkgver=1.0.13 pkgrel=1 pkgdesc="lightweight HTTP server and IMAP/POP3 proxy server" arch=('i686' 'x86_64') @@ -24,9 +24,9 @@ backup=("etc/nginx/conf/fastcgi.conf" "etc/nginx/conf/win-utf" "etc/logrotate.d/nginx" "etc/conf.d/nginx") -source=(http://nginx.org/download/nginx-$pkgver.tar.gz - nginx) -md5sums=('a41a01d7cd46e13ea926d7c9ca283a95' +source=("http://nginx.org/download/nginx-$pkgver.tar.gz" + 'nginx') +md5sums=('58360774e4875e8fc4c4286448cb54d0' '0e8032d3ba26c3276e8c7c30588d375f') _doc_root=/usr/share/nginx/http @@ -36,8 +36,6 @@ _tmp_path=/var/spool/nginx _log_path=/var/log/nginx _user=http _group=http -md5sums=('d0ceefeb2a68ecb19e78ee894a5b52a3' - '0e8032d3ba26c3276e8c7c30588d375f') build() { cd "$srcdir/nginx-${pkgver}" diff --git a/community/recoll/PKGBUILD b/community/recoll/PKGBUILD index 18bf8820e..f9f42c0d9 100644 --- a/community/recoll/PKGBUILD +++ b/community/recoll/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 59455 2011-11-25 11:15:21Z spupykin $ +# $Id: PKGBUILD 67278 2012-03-06 10:44:14Z arodseth $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Vladimir Chizhov <jagoterr@gmail.com> # Contributor: Robert Emil Berge <filoktetes@linuxophic.org> -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=recoll pkgver=1.16.2 -pkgrel=1 +pkgrel=2 pkgdesc="Full text search tool based on Xapian backend" -arch=('i686' 'x86_64') +arch=('x86_64' 'i686') url="http://www.lesbonscomptes.com/recoll/" license=('GPL') depends=('xapian-core>=1.0.15-1' 'qt' 'openssl' 'hicolor-icon-theme') @@ -25,30 +25,32 @@ optdepends=('libxslt: for XML based formats (fb2,etc)' 'id3lib: for mp3 tags support with id3info' 'python2: for using some filters' 'mutagen: Audio metadata' - 'python-pychm: CHM files' - 'perl-exiftool: EXIF data from raw files' + 'python2-pychm: CHM files' + 'perl-image-exiftool: EXIF data from raw files' 'aspell-en: English stemming support') install=recoll.install -source=(http://www.lesbonscomptes.com/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('1bbe35a1c0fb248d1c5b3a4c3ed20d1c') +source=("http://www.lesbonscomptes.com/$pkgname/$pkgname-$pkgver.tar.gz") +sha256sums=('f0f29dff2d82ef8541c51963870f31daf28472f3c8822c81c17c346769b77355') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "$srcdir/$pkgname-$pkgver" - # python2 fix - for file in filters/{rclchm,rclexecm.py,rclics,rclpython,rclzip,rclaudio,rclinfo,rclkar,rcllatinclass.py} doc/user/usermanual.html; do - sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' $file + msg2 "Python2 fix" + for file in filters/{rclchm,rclexecm.py,rclics,rclpython,rclzip,rclaudio,rclinfo,rclkar,rcllatinclass.py,rclwar,rclrar} doc/user/usermanual.html; do + sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' "$file" done sed -i 's_#!/usr/bin/python_#!/usr/bin/python2_' desktop/hotrecoll.py ./configure \ --prefix=/usr \ --mandir=/usr/share/man - make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install } + +# vim:set ts=2 sw=2 et: diff --git a/community/recoll/recoll.install b/community/recoll/recoll.install index 0fbb3047a..a89ee4bf0 100644 --- a/community/recoll/recoll.install +++ b/community/recoll/recoll.install @@ -1,11 +1,13 @@ -post_install() { +post_upgrade() { gtk-update-icon-cache -q -t -f usr/share/icons/hicolor } -post_upgrade() { - post_install +post_install() { + post_upgrade } post_remove() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + post_upgrade } + +# vim:set ts=2 sw=2 et: diff --git a/community/ristretto/PKGBUILD b/community/ristretto/PKGBUILD index ce3d74f98..d9baabc05 100644 --- a/community/ristretto/PKGBUILD +++ b/community/ristretto/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 67146 2012-03-05 00:06:06Z pschmitz $ -# Maintainer: +# $Id: PKGBUILD 67268 2012-03-06 06:17:03Z bpiotrowski $ +# Maintainer: Bartłomiej Piotrowski # Contributor: AndyRTR <andyrtr@archlinux.org> # Contributor: Ronald van Haren <ronald.archlinux.org> pkgname=ristretto -pkgver=0.3.4 +pkgver=0.3.5 pkgrel=1 pkgdesc="A fast and lightweight picture-viewer for Xfce" arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ makedepends=('intltool') groups=('xfce4-goodies') install=ristretto.install source=("http://archive.xfce.org/src/apps/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2") -sha1sums=('7da6c287c45949193fd6046e82a099fd0469278c') +md5sums=('3bfdf129926236a45c58d7afdbb703b7') build() { cd "${srcdir}/$pkgname-$pkgver" diff --git a/core/dnsutils/PKGBUILD b/core/dnsutils/PKGBUILD index e01894138..075c30db6 100644 --- a/core/dnsutils/PKGBUILD +++ b/core/dnsutils/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 142197 2011-11-06 05:47:32Z bisson $ +# $Id: PKGBUILD 152442 2012-03-06 23:41:04Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: kevin <kevin@archlinux.org> # Contributor: mario <mario_vazq@hotmail.com> @@ -6,9 +6,9 @@ pkgname=dnsutils # Use a period and not a hyphen before the patch level for proper versioning. -pkgver=9.8.1 -_pkgver=9.8.1 -pkgrel=2 +pkgver=9.9.0 +_pkgver=9.9.0 +pkgrel=1 pkgdesc='DNS utilities: dig host nslookup' url='http://www.isc.org/software/bind/' @@ -17,9 +17,11 @@ arch=('i686' 'x86_64') options=('!makeflags') depends=('openssl' 'krb5' 'idnkit') source=("http://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz" - 'remove-bind.patch') -sha1sums=('7e6ed6ebc896b1de33a9f440233066c60539de4c' - 'b465ef6160b004838f04de9978fe1be8422af777') + 'remove-bind.patch' + 'trusted-key.key') +sha1sums=('6be77c75c8649088b0ae7124d819b5f412bb0094' + 'b465ef6160b004838f04de9978fe1be8422af777' + 'ca93da30c89de4365b846325d6ec4674a3e4fc02') replaces=('bind-tools' 'host') @@ -47,9 +49,7 @@ build() { package() { cd "${srcdir}/bind-${_pkgver}" - + install -Dm644 ../trusted-key.key "${pkgdir}"/etc/trusted-key.key install -Dm644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - - cd bin - make DESTDIR="${pkgdir}" install + cd bin; make DESTDIR="${pkgdir}" install } diff --git a/core/dnsutils/trusted-key.key b/core/dnsutils/trusted-key.key new file mode 100644 index 000000000..866cadda2 --- /dev/null +++ b/core/dnsutils/trusted-key.key @@ -0,0 +1,2 @@ +. 172800 IN DNSKEY 256 3 8 AwEAAZ/NErKzyMlImJ+2HTmK9qeH2sLUywlsF+mJbTP5GKoYFHoU2vn2 Zqr261Lk7a6jfBKYny5GX7BDRJcVvig36TgOinE9QP5KVS0RxdrOl98g KLwFMORfNf/wjCwjPdEl1GgaGYl0npJ4c+x+o6aa/xmDKJo9zUlpvb7B LxbJ7HwF +. 172800 IN DNSKEY 257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq QxA+Uk1ihz0= diff --git a/core/mlocate/PKGBUILD b/core/mlocate/PKGBUILD index ef1b74590..c0cc40796 100644 --- a/core/mlocate/PKGBUILD +++ b/core/mlocate/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 142070 2011-11-04 23:36:03Z allan $ +# $Id: PKGBUILD 152305 2012-03-06 15:10:37Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: lydgate pkgname=mlocate -pkgver=0.24 -pkgrel=2 +pkgver=0.25 +pkgrel=1 pkgdesc="Faster merging drop-in for slocate" arch=('i686' 'x86_64') url="http://carolina.mff.cuni.cz/~trmac/blog/mlocate" @@ -19,7 +19,7 @@ install=mlocate.install source=(https://fedorahosted.org/releases/m/l/mlocate/mlocate-$pkgver.tar.xz updatedb.conf updatedb.cron.daily) -md5sums=('a9c221e5bc489a2ed710c943990137bd' +md5sums=('c6d043b170613b0e327a815b497f680a' 'c374ff223f2e07b5e602ba22359f2335' 'cde5da81bebad2de556ef2e43d895e13') diff --git a/core/tzdata/PKGBUILD b/core/tzdata/PKGBUILD index eb0fe0949..feac7ba64 100644 --- a/core/tzdata/PKGBUILD +++ b/core/tzdata/PKGBUILD @@ -1,24 +1,26 @@ -# $Id: PKGBUILD 151481 2012-02-26 16:59:16Z andyrtr $ +# $Id: PKGBUILD 152303 2012-03-06 15:04:33Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgname=tzdata -pkgver=2011n +pkgver=2012b pkgrel=1 -_tzcode=2011i -_tzdata=2011n +_tzcode=2012b +_tzdata=2012b pkgdesc="Sources for time zone and daylight saving time data" arch=('i686' 'x86_64') -url="hhttp://www.iana.org/time-zones" +url="http://www.iana.org/time-zones" license=('GPL') depends=() makedepends=() optdepends=('bash: required by tzselect') options=('!emptydirs') -source=(http://www.iana.org/time-zones/repository/releases/tzcode${_tzcode}.tar.gz - http://www.iana.org/time-zones/repository/releases/${pkgname}${_tzdata}.tar.gz +source=(#http://www.iana.org/time-zones/repository/releases/tzcode${_tzcode}.tar.gz + ftp://munnari.oz.au/pub/tzcode${_tzcode}.tar.gz + #http://www.iana.org/time-zones/repository/releases/${pkgname}${_tzdata}.tar.gz + ftp://munnari.oz.au/pub/${pkgname}${_tzdata}.tar.gz Makefile.patch) -md5sums=('cf7f4335b7c8682899fa2814e711c1b2' - '20dbfb28efa008ddbf6dd34601ea40fa' +md5sums=('6137322ffd36e1fd5128885be1c57008' + '0615fd29def380a917e528433c820368' 'a64ed97d1fc03c66ee8612c0d9f40507') build() { diff --git a/extra/cabal-install/PKGBUILD b/extra/cabal-install/PKGBUILD index 78c9c8902..9c4bfc17d 100644 --- a/extra/cabal-install/PKGBUILD +++ b/extra/cabal-install/PKGBUILD @@ -1,27 +1,34 @@ +# Maintainer: Thomas Dziedzic <gostrc@gmail.com> # Maintainer: Vesa Kaihlavirta <vesa@archlinux.org> # Contributor: Arch Haskell Team <arch-haskell@haskell.org> + pkgname=cabal-install -pkgver=0.10.2 -pkgrel=1 +pkgver=0.10.4 +pkgrel=2 pkgdesc="The command-line interface for Cabal and Hackage." url="http://hackage.haskell.org/package/cabal-install" license=('custom:BSD3') arch=('i686' 'x86_64') -makedepends=('ghc=7.0.2' 'haskell-http>=4000.1.1' 'haskell-zlib') -depends=('gmp' zlib) -options=('strip') -source=(http://hackage.haskell.org/packages/archive/cabal-install/$pkgver/cabal-install-$pkgver.tar.gz) +makedepends=('haskell-http=4000.2.2-1' 'haskell-zlib=0.5.3.3-3' 'haskell-mtl=2.0.1.0-4' 'haskell-network=2.3.0.11-1' 'haskell-random=1.0.1.1-1') +depends=('ghc' 'gmp' 'zlib') +#source=(http://hackage.haskell.org/packages/archive/cabal-install/$pkgver/cabal-install-$pkgver.tar.gz) +# switch back to regular cabal-install once it gets updated... +source=("http://hackage.haskell.org/packages/archive/cabal-install-ghc74/${pkgver}/cabal-install-ghc74-${pkgver}.tar.gz") +md5sums=('49b3301cc80775ebf19fe9d949f15df5') build() { - cd $srcdir/cabal-install-$pkgver + cd cabal-install-ghc74-${pkgver} runhaskell Setup configure --enable-shared --enable-split-objs --enable-executable-stripping --prefix=/usr runhaskell Setup build } package() { - cd $srcdir/cabal-install-$pkgver + cd cabal-install-ghc74-${pkgver} runhaskell Setup copy --destdir=$pkgdir - install -D -m644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE + #install -D -m644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE + + # add bash completion + install -d ${pkgdir}/etc/bash_completion.d + install -m644 bash-completion/cabal \ + ${pkgdir}/etc/bash_completion.d } - -md5sums=('bc906ef0bed79cbb33fdb36b73514281') diff --git a/extra/feh/PKGBUILD b/extra/feh/PKGBUILD index 229ab4761..8c68a8611 100644 --- a/extra/feh/PKGBUILD +++ b/extra/feh/PKGBUILD @@ -1,21 +1,22 @@ -# $Id: PKGBUILD 148712 2012-02-05 11:47:50Z ibiru $ +# $Id: PKGBUILD 152286 2012-03-06 13:19:14Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=feh -pkgver=2.3 -pkgrel=2 +pkgver=2.4 +pkgrel=1 pkgdesc='Fast and light imlib2-based image viewer' url='http://feh.finalrewind.org/' license=('MIT') arch=('i686' 'x86_64') depends=('giblib' 'curl' 'libxinerama') -optdepends=('perl: feh-cam, webcam wrapper for feh') +optdepends=('perl: feh-cam, webcam wrapper for feh' + 'imagemagick: support more file formats') makedepends=('libxt') source=("${url}${pkgname}-${pkgver}.tar.bz2") -sha1sums=('9f42ba920baeb405777f834546223a9ff9eb43e7') +sha1sums=('1798186105da2dacebd49210d7f0bd78687922a5') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/git/PKGBUILD b/extra/git/PKGBUILD index 9d7dc326b..224afafab 100644 --- a/extra/git/PKGBUILD +++ b/extra/git/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 150817 2012-02-23 04:50:43Z dan $ +# $Id: PKGBUILD 152269 2012-03-06 12:08:41Z dan $ # Maintainer: Dan McGee <dan@archlinux.org> pkgname=git -pkgver=1.7.9.2 +pkgver=1.7.9.3 pkgrel=1 pkgdesc="the fast distributed version control system" arch=(i686 x86_64) @@ -92,7 +92,7 @@ package() { install -D -m644 "$srcdir"/git-daemon.conf "$pkgdir"/etc/conf.d/git-daemon.conf } -sha1sums=('7aff1048480a8637de94e8d82744d312c0b5e060' - 'd6992d899fb70e40983f94a2f96ad24b8ee93557' +sha1sums=('6216153da1139c25cb96cfb4441eff327013ec4f' + '223daa871a64facc60bdf643c50c78eac21c88f4' 'f2b41828bd912b72e2cb3e14677739c4f370de66' '149e2da1ecb48872ddb31c0945afeaad1f9653d7') diff --git a/extra/icedtea-web-java7/PKGBUILD b/extra/icedtea-web-java7/PKGBUILD index 076ebcaab..31c0e9566 100644 --- a/extra/icedtea-web-java7/PKGBUILD +++ b/extra/icedtea-web-java7/PKGBUILD @@ -3,14 +3,14 @@ pkgbase=icedtea-web-java7 pkgname=('icedtea-web-java7' 'icedtea-web-java7-doc') -pkgver=1.1.4 -pkgrel=2 +pkgver=1.1.5 +pkgrel=1 arch=('i686' 'x86_64') url="http://icedtea.classpath.org/wiki/IcedTea-Web" license=('GPL2') -makedepends=('jdk7-openjdk' 'zip' 'gtk' 'npapi-sdk' 'rhino' 'junit') +makedepends=('jdk7-openjdk' 'zip' 'gtk2' 'libxtst' 'npapi-sdk' 'rhino' 'junit') source=(http://icedtea.classpath.org/download/source/${pkgbase/-java7/}-$pkgver.tar.gz) -md5sums=('1ed24b7e58da26471187dfae80b020b6') +sha256sums=('ab5c34a9dc6bff48baf1f1d1a34bf54bfb954ad93ee9e7e44d642fa991bcc919') _javaver=7 _jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk @@ -20,7 +20,7 @@ build() { . /etc/profile.d/jre.sh . /etc/profile.d/jdk.sh - + ./configure --prefix=${_jvmdir} \ --datarootdir=/usr/share \ --with-jdk-home=${_jvmdir} diff --git a/extra/icedtea-web/PKGBUILD b/extra/icedtea-web/PKGBUILD index e63f555f8..fed422199 100644 --- a/extra/icedtea-web/PKGBUILD +++ b/extra/icedtea-web/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 145641 2011-12-25 14:34:47Z andyrtr $ +# $Id: PKGBUILD 152259 2012-03-06 05:29:22Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgbase=icedtea-web pkgname=('icedtea-web' 'icedtea-web-doc') -pkgver=1.1.4 -pkgrel=2 +pkgver=1.1.5 +pkgrel=1 arch=('i686' 'x86_64') url="http://icedtea.classpath.org/wiki/IcedTea-Web" license=('GPL2') makedepends=('openjdk6' 'zip' 'gtk2' 'npapi-sdk' 'rhino' 'junit') source=(http://icedtea.classpath.org/download/source/$pkgname-$pkgver.tar.gz) -md5sums=('1ed24b7e58da26471187dfae80b020b6') +sha256sums=('ab5c34a9dc6bff48baf1f1d1a34bf54bfb954ad93ee9e7e44d642fa991bcc919') _javaver=6 _jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk diff --git a/extra/indent/PKGBUILD b/extra/indent/PKGBUILD index 8ac2de017..86e1d39d5 100644 --- a/extra/indent/PKGBUILD +++ b/extra/indent/PKGBUILD @@ -1,33 +1,44 @@ -# $Id: PKGBUILD 127328 2011-06-13 05:26:28Z eric $ +# $Id: PKGBUILD 152433 2012-03-06 21:03:48Z stephane $ # Maintainer: Aaron Griffin <aaron@archlinux.org> # Contributor: aurelien <aurelien@archlinux.org> # Contributor: Herb Rose (hrose56@yahoo.com) pkgname=indent pkgver=2.2.11 -pkgrel=1 -pkgdesc="A tool to change the appearance of a C program by inserting or deleting whitespace" +pkgrel=2 +pkgdesc="C language source code formatting program" arch=('i686' 'x86_64') url="http://indent.isidore-it.eu/beautify.html" depends=('glibc') makedepends=('texi2html') license=('GPL3') install=indent.install -source=(http://indent.isidore-it.eu/$pkgname-$pkgver.tar.gz indent-2.2.11-segfault.patch) -md5sums=('98beafca62472805a3739d3867d5d70f' - 'e5ded8513547ff4555dec2bb805dd2ab') +source=(http://indent.isidore-it.eu/${pkgname}-${pkgver}.tar.gz + indent-2.2.11-segfault.patch + indent-2.2.11-LC_ALL.patch + indent-2.2.11-decimal_format.patch) sha1sums=('9b242528bbc4914464117c69ffae9df24d3fa4a7' - '31a6dcd5edcac4decac81dbb52bc9415b8b148e4') + '31a6dcd5edcac4decac81dbb52bc9415b8b148e4' + '91b210b666de59ca44524288a4c1ebd213570daa' + '2b7d5a725fe307ce81565f920a0a66b319b50c91') build() { - cd "$srcdir/$pkgname-$pkgver" - patch -p1 -i ../indent-2.2.11-segfault.patch - sed -i 's/-number/-number-sections/' doc/Makefile.in - ./configure --prefix=/usr - make + cd "${srcdir}/${pkgname}-${pkgver}" + + patch -Np1 -i ../indent-2.2.11-segfault.patch + + # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=205692 + patch -Np1 -i ../indent-2.2.11-LC_ALL.patch + + # https://lists.gnu.org/archive/html/bug-indent/2011-08/msg00000.html + patch -Np1 -i ../indent-2.2.11-decimal_format.patch + + sed -i 's/-number/-number-sections/' doc/Makefile.in + ./configure --prefix=/usr + make } package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" docdir=/usr/share/doc/indent install + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" docdir=/usr/share/doc/indent install } diff --git a/extra/indent/indent-2.2.11-LC_ALL.patch b/extra/indent/indent-2.2.11-LC_ALL.patch new file mode 100644 index 000000000..0ffe56d3c --- /dev/null +++ b/extra/indent/indent-2.2.11-LC_ALL.patch @@ -0,0 +1,17 @@ +From: Santiago Vila <sanvila@debian.org> +Subject: setlocale using LC_ALL, not LC_MESSAGES +Bug-Debian: http://bugs.debian.org/205692 + +--- a/src/indent.c ++++ b/src/indent.c +@@ -1008,8 +1008,8 @@ + BOOLEAN using_stdin = false; + exit_values_ty exit_status; + +-#if defined (HAVE_SETLOCALE) && defined (HAVE_LC_MESSAGES) && defined (HAVE_LCCTYPES) +- setlocale(LC_MESSAGES, ""); ++#if defined (HAVE_SETLOCALE) ++ setlocale(LC_ALL, ""); + #endif + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); diff --git a/extra/indent/indent-2.2.11-decimal_format.patch b/extra/indent/indent-2.2.11-decimal_format.patch new file mode 100644 index 000000000..ea34d0ea7 --- /dev/null +++ b/extra/indent/indent-2.2.11-decimal_format.patch @@ -0,0 +1,98 @@ +From ff47ab3b90333bdfaa40b86cb548e92a01787345 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> +Date: Thu, 25 Aug 2011 11:26:24 +0200 +Subject: [PATCH] Do not split decimal float suffix from constant + +N1312 draft of ISO/IEC WDTR24732 defines additional floating types +with given suffixes: + +_Decimal32 DF, df +_Decimal64 DD, dd +_Decimal128 DL, dl + +These suffixes must stick on numeric part of the constant as classic +float or long float does. +--- + regression/TEST | 3 ++- + regression/input/float-constant-suffix.c | 13 +++++++++++++ + regression/standard/float-constant-suffix.c | 13 +++++++++++++ + src/lexi.c | 9 +++++++++ + 4 files changed, 37 insertions(+), 1 deletions(-) + create mode 100644 regression/input/float-constant-suffix.c + create mode 100644 regression/standard/float-constant-suffix.c + +diff --git a/regression/TEST b/regression/TEST +index c860ef2..1402ddf 100755 +--- a/regression/TEST ++++ b/regression/TEST +@@ -35,7 +35,8 @@ EXAMPLES="do.c else.c for.c func-def.c lshift.c ncs.c \ + + BUGS="case-label.c one-line-1.c one-line-2.c one-line-3.c \ + one-line-4.c struct-decl.c sizeof-in-while.c line-break-comment.c \ +- macro.c enum.c elif.c nested.c wrapped-string.c minus_predecrement.c" ++ macro.c enum.c elif.c nested.c wrapped-string.c minus_predecrement.c \ ++ float-constant-suffix.c" + + INDENTSRC="args.c backup.h backup.c dirent_def.h globs.c indent.h \ + indent.c indent_globs.h io.c lexi.c memcpy.c parse.c pr_comment.c \ +diff --git a/regression/input/float-constant-suffix.c b/regression/input/float-constant-suffix.c +new file mode 100644 +index 0000000..58f5310 +--- /dev/null ++++ b/regression/input/float-constant-suffix.c +@@ -0,0 +1,13 @@ ++float foo = 1.0F; ++float foo = 1.0f; ++double foo = 1.0; ++double foo = 1.0; ++long double foo = 1.0L; ++long double foo = 1.0l; ++ ++_Decimal32 foo = 1.0DF; ++_Decimal32 foo = 1.0df; ++_Decimal64 foo = 1.0DD; ++_Decimal64 foo = 1.0dd; ++_Decimal128 foo = 1.0DL; ++_Decimal128 foo = 1.0dl; +diff --git a/regression/standard/float-constant-suffix.c b/regression/standard/float-constant-suffix.c +new file mode 100644 +index 0000000..58f5310 +--- /dev/null ++++ b/regression/standard/float-constant-suffix.c +@@ -0,0 +1,13 @@ ++float foo = 1.0F; ++float foo = 1.0f; ++double foo = 1.0; ++double foo = 1.0; ++long double foo = 1.0L; ++long double foo = 1.0l; ++ ++_Decimal32 foo = 1.0DF; ++_Decimal32 foo = 1.0df; ++_Decimal64 foo = 1.0DD; ++_Decimal64 foo = 1.0dd; ++_Decimal128 foo = 1.0DL; ++_Decimal128 foo = 1.0dl; +diff --git a/src/lexi.c b/src/lexi.c +index abc2bfa..eafb65e 100644 +--- a/src/lexi.c ++++ b/src/lexi.c +@@ -330,6 +330,15 @@ extern codes_ty lexi(void) + { + buf_ptr++; + } ++ else if (*buf_ptr == 'D' || *buf_ptr == 'd') ++ { ++ if (buf_ptr[1] == 'F' || buf_ptr[1] == 'f' || ++ buf_ptr[1] == 'D' || buf_ptr[1] == 'd' || ++ buf_ptr[1] == 'L' || buf_ptr[1] == 'l') ++ { ++ buf_ptr+=2; ++ } ++ } + else + { + while (*buf_ptr == 'U' || *buf_ptr == 'u' || *buf_ptr == 'L' || *buf_ptr == 'l') +-- +1.7.6 + diff --git a/extra/java7-openjdk/PKGBUILD b/extra/java7-openjdk/PKGBUILD index e19cf6b53..b6577ff1d 100644 --- a/extra/java7-openjdk/PKGBUILD +++ b/extra/java7-openjdk/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 150234 2012-02-15 16:00:28Z andyrtr $ +# $Id: PKGBUILD 152428 2012-03-06 20:36:57Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Guillaume ALAUX <guillaume@archlinux.org> @@ -24,7 +24,7 @@ _OPENJDK_CHANGESET=22cc03983e20 _bootstrap=0 # 0/1 for quick build or full bootstrap pkgver=${_java_ver}.${_openjdk_build}_${_icedtea_ver} -pkgrel=1 +pkgrel=3 arch=('i686' 'x86_64') url="http://icedtea.classpath.org" license=('custom') @@ -93,6 +93,7 @@ build() { [ -f /etc/profile.d/jdk.sh ] && . /etc/profile.d/jdk.sh unset MAKEFLAGS # parallel build is currently broken + export ALT_PARALLEL_COMPILE_JOBS="${MAKEFLAGS/-j}" export HOTSPOT_BUILD_JOBS="${ALT_PARALLEL_COMPILE_JOBS}" @@ -122,7 +123,8 @@ build() { --with-langtools-src-zip=${srcdir}/${_LANGTOOLS_CHANGESET}.tar.gz \ --enable-pulse-java \ --enable-nss \ - --with-rhino + --with-rhino \ + --with-abs-install-dir=${_jvmdir} #--help # --enable-systemtap Enable inclusion of SystemTap trace support - needs systemtab from AUR + --with-abs-install-dir=/usr/lib/jvm/java-7-openjdk The absolute path where the j2sdk-image dir will be installed @@ -141,8 +143,8 @@ package_jre7-openjdk-headless() { 'ca-certificates-java' 'rhino') optdepends=('libcups: needed for Java Mauve support - libmawt.so' 'fontconfig: needed for Java Mauve support - libmawt.so') - provides=('java-runtime=7') - conflicts=('java-runtime' 'openjdk6') + provides=('java-runtime-headless=7') + conflicts=('openjdk6') # replaces=('openjdk6') # once we remove openjdk6 pkg from the repos backup=(etc/profile.d/jre.sh etc/profile.d/jre.csh @@ -263,8 +265,10 @@ package_jre7-openjdk() { 'alsa-lib: for basic sound support' 'giflib: for gif format support' 'libpulse: for advanced sound support' - 'gtk2: for the Gtk+ look and feel - desktop usage') + 'gtk2: for the Gtk+ look and feel - desktop usage' + 'libxtst: linked in xawt/libmawt.so - desktop usage') install=jre7-openjdk.install + provides=('java-runtime=7') conflicts=('openjdk6') mv ${srcdir}/tmp-desktop-jre/* ${pkgdir} diff --git a/extra/kdepim/PKGBUILD b/extra/kdepim/PKGBUILD index 8aca2344c..8845731b4 100644 --- a/extra/kdepim/PKGBUILD +++ b/extra/kdepim/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 152097 2012-03-04 14:58:51Z andrea $ +# $Id: PKGBUILD 152419 2012-03-06 18:57:11Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> @@ -27,7 +27,7 @@ license=('GPL' 'LGPL' 'FDL') groups=('kde' 'kdepim') makedepends=('cmake' 'automoc4' 'boost' 'kdepim-runtime' 'libxss' 'pilot-link' 'kde-agent') -source=("http://download.kde.org/stable/${pkgver}/src/xz/${pkgbase}-${pkgver}.tar.xz") +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.xz") sha1sums=('61509f42a96193ae2a9b9f8560dccb73d739f356') build() { diff --git a/extra/libxmu/PKGBUILD b/extra/libxmu/PKGBUILD index f37bb9799..6ff36c5b0 100644 --- a/extra/libxmu/PKGBUILD +++ b/extra/libxmu/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 151426 2012-02-26 10:48:08Z pierre $ +# $Id: PKGBUILD 152301 2012-03-06 15:00:25Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libxmu -pkgver=1.1.0 -pkgrel=2 +pkgver=1.1.1 +pkgrel=1 pkgdesc="X11 miscellaneous micro-utility library" arch=('i686' 'x86_64') url="http://xorg.freedesktop.org/" @@ -12,7 +12,7 @@ makedepends=('xorg-util-macros') license=('custom') options=('!libtool') source=("${url}/releases/individual/lib/libXmu-${pkgver}.tar.bz2") -sha1sums=('81876a0848070bfc4476a2538fc16898eb6d96cd') +sha1sums=('3e280aa927d78c05f94db6c7ae606f7ad132b495') build() { cd "${srcdir}/libXmu-${pkgver}" diff --git a/extra/networkmanager/PKGBUILD b/extra/networkmanager/PKGBUILD index 1b511a2cd..ae0fbd88d 100644 --- a/extra/networkmanager/PKGBUILD +++ b/extra/networkmanager/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 150904 2012-02-23 13:55:20Z allan $ +# $Id: PKGBUILD 152264 2012-03-06 08:15:52Z heftig $ # Maintainer: Jan de Groot <jgc@archlinxu.org> # Contri-butor: Wael Nasreddine <gandalf@siemens-mobiles.org> # Contributor: Tor Krill <tor@krill.nu> @@ -7,7 +7,7 @@ pkgname=networkmanager pkgver=0.9.2.0 -pkgrel=2 +pkgrel=3 pkgdesc="Network Management daemon" arch=('i686' 'x86_64') license=('GPL') @@ -24,15 +24,17 @@ options=('!libtool') backup=('etc/NetworkManager/NetworkManager.conf') install=networkmanager.install source=(http://ftp.gnome.org/pub/gnome/sources/NetworkManager/0.9/NetworkManager-${pkgver}.tar.xz - NetworkManager.conf disable_set_hostname.patch) + NetworkManager.conf disable_set_hostname.patch dnsmasq-path.patch) sha256sums=('437af9132a6fe1ff603cd981c0cfaa4557592b34782f9705e708d61365226ddf' '44b048804c7c0b8b3b0c29b8632b6ad613c397d0a1635ec918e10c0fbcdadf21' - '25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460') + '25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460' + '65124505048cc8396daf0242c9f5d532fa669b4bbca305998c248ab2329490cb') build() { cd "${srcdir}/NetworkManager-${pkgver}" patch -Np1 -i "${srcdir}/disable_set_hostname.patch" + patch -Np1 -i "${srcdir}/dnsmasq-path.patch" ./configure \ --prefix=/usr \ diff --git a/extra/networkmanager/dnsmasq-path.patch b/extra/networkmanager/dnsmasq-path.patch new file mode 100644 index 000000000..c0e713266 --- /dev/null +++ b/extra/networkmanager/dnsmasq-path.patch @@ -0,0 +1,30 @@ +diff -u -r NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c +--- NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c 2011-10-10 23:38:20.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c 2012-03-06 09:07:24.137460927 +0100 +@@ -52,8 +52,11 @@ + find_dnsmasq (void) + { + static const char *paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; +diff -u -r NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c +--- NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c 2011-04-19 07:06:22.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c 2012-03-06 09:07:58.603851818 +0100 +@@ -170,8 +170,11 @@ + nm_find_dnsmasq (void) + { + static const char *dnsmasq_binary_paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; diff --git a/gnome-unstable/at-spi2-atk/PKGBUILD b/gnome-unstable/at-spi2-atk/PKGBUILD new file mode 100644 index 000000000..34c365780 --- /dev/null +++ b/gnome-unstable/at-spi2-atk/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 152283 2012-03-06 13:18:21Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=at-spi2-atk +pkgver=2.3.91 +pkgrel=1 +pkgdesc="A GTK+ module that bridges ATK to D-Bus at-spi" +arch=('i686' 'x86_64') +url="http://www.gnome.org" +license=('GPL2') +depends=('at-spi2-core' 'libx11' 'atk' 'dconf') +makedepends=('intltool') +install=at-spi2-atk.install +options=('!libtool') +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('ba00ec5bbf8647d931be13d06f2bd9e8f82f4db61c1a64ee30c78f985d2aaa49') + +build() { + cd $pkgname-$pkgver + + sed -i -e '/AC_PATH_XTRA/d' configure.ac + autoreconf --force --install + + ./configure --prefix=/usr --sysconfdir=/etc \ + --disable-schemas-compile + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/gnome-unstable/at-spi2-atk/at-spi2-atk.install b/gnome-unstable/at-spi2-atk/at-spi2-atk.install new file mode 100644 index 000000000..2ef26aaa9 --- /dev/null +++ b/gnome-unstable/at-spi2-atk/at-spi2-atk.install @@ -0,0 +1,11 @@ +post_install() { + usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/gnome-unstable/at-spi2-core/PKGBUILD b/gnome-unstable/at-spi2-core/PKGBUILD new file mode 100644 index 000000000..481fcffe0 --- /dev/null +++ b/gnome-unstable/at-spi2-core/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 152281 2012-03-06 13:17:26Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=at-spi2-core +pkgver=2.3.91 +pkgrel=1 +pkgdesc="Protocol definitions and daemon for D-Bus at-spi" +arch=('i686' 'x86_64') +url="http://www.gnome.org" +license=('GPL2') +depends=('dbus-core' 'glib2' 'libxtst') +makedepends=('intltool' 'gobject-introspection') +options=('!libtool') +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('69c249219af00dfa5f58da400efbc881a9f2fcf89c581aac7ff7d3046acd03ad') + +build() { + cd $pkgname-$pkgver + + sed -i -e '/AC_PATH_XTRA/d' configure.ac + autoreconf --force --install + + ./configure --prefix=/usr --sysconfdir=/etc \ + --libexecdir=/usr/lib/at-spi2-core --disable-xevie + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/gnome-unstable/atk/PKGBUILD b/gnome-unstable/atk/PKGBUILD new file mode 100644 index 000000000..3e3db148e --- /dev/null +++ b/gnome-unstable/atk/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 152280 2012-03-06 13:16:17Z heftig $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=atk +pkgver=2.3.91 +pkgrel=1 +pkgdesc="A library providing a set of interfaces for accessibility" +arch=(i686 x86_64) +license=('LGPL') +depends=('glib2') +makedepends=('gobject-introspection') +options=('!libtool') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz) +url='http://www.gtk.org/' +sha256sums=('7faaddda8c2fb537ef90c4816d747ca4ec1085350ad3713c3cb904e93cfec463') + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/gnome-unstable/clutter/PKGBUILD b/gnome-unstable/clutter/PKGBUILD new file mode 100644 index 000000000..f6638801d --- /dev/null +++ b/gnome-unstable/clutter/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 152299 2012-03-06 14:38:58Z ibiru $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: William Rea <sillywilly@gmail.com> + +pkgname=clutter +pkgver=1.9.14 +pkgrel=1 +pkgdesc="A GObject based library for creating fast, visually rich graphical user interfaces" +arch=('i686' 'x86_64') +url="http://clutter-project.org/" +options=('!libtool') +license=('LGPL') +depends=('cogl' 'mesa' 'json-glib' 'atk' 'libxi') +makedepends=('gobject-introspection' 'mesa') +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('4a4a4ca92eaf6875318cbdf5b2f173bdcd7adafd94add4cd815770abed02e70c') + +build() { + cd "$pkgname-$pkgver" + ./configure --prefix=/usr --enable-introspection + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/gnome-unstable/cogl/PKGBUILD b/gnome-unstable/cogl/PKGBUILD new file mode 100644 index 000000000..91fffe2d0 --- /dev/null +++ b/gnome-unstable/cogl/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 152297 2012-03-06 14:21:16Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=cogl +pkgver=1.9.8 +pkgrel=1 +pkgdesc="An object oriented GL/GLES Abstraction/Utility Layer" +arch=('i686' 'x86_64') +url="http://www.clutter-project.org/" +license=('GPL2') +depends=('libdrm' 'libxext' 'libxdamage' 'libxcomposite' 'gdk-pixbuf2' 'pango') +makedepends=('mesa' 'gobject-introspection') +options=(!libtool !emptydirs) +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('fa3eae9e865c74c2b72a8bfa9f8b859c3458c81d4854c40e4690a85653fdc91e') + +build() { + cd "$pkgname-$pkgver" + ./configure --prefix=/usr + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/gnome-unstable/dconf/PKGBUILD b/gnome-unstable/dconf/PKGBUILD new file mode 100644 index 000000000..d6912611f --- /dev/null +++ b/gnome-unstable/dconf/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 152293 2012-03-06 13:55:03Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=dconf +pkgver=0.11.5 +pkgrel=1 +pkgdesc="A low-level configuration system." +arch=(i686 x86_64) +url="http://live.gnome.org/dconf" +license=('LGPL2.1') +depends=('glib2' 'gdk-pixbuf2') +makedepends=('vala' 'gtk3') +optdepends=('gtk3: for dconf-editor') +install=dconf.install +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('4f6ffd386b90e85791164794a66860aa16b7ff988f96105ea5ddc15808c776f5') + +build() { + cd "$pkgname-$pkgver" + + ./configure --prefix=/usr --sysconfdir=/etc \ + --libexecdir=/usr/lib/dconf + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/gnome-unstable/dconf/dconf.install b/gnome-unstable/dconf/dconf.install new file mode 100644 index 000000000..75d713d64 --- /dev/null +++ b/gnome-unstable/dconf/dconf.install @@ -0,0 +1,13 @@ +post_install() { + gio-querymodules /usr/lib/gio/modules + glib-compile-schemas /usr/share/glib-2.0/schemas + gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor +} + +post_upgrade(){ + post_install +} + +post_remove() { + post_install +} diff --git a/gnome-unstable/gcr/PKGBUILD b/gnome-unstable/gcr/PKGBUILD new file mode 100644 index 000000000..307992366 --- /dev/null +++ b/gnome-unstable/gcr/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 152423 2012-03-06 19:08:24Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=gcr +pkgver=3.3.90 +pkgrel=1 +pkgdesc="A library for bits of crypto UI and parsing" +arch=(i686 x86_64) +url="http://www.gnome.org" +license=('GPL2') +depends=('dconf' 'desktop-file-utils' 'gtk3' 'hicolor-icon-theme' 'libgcrypt') +makedepends=('intltool' 'gobject-introspection') +options=(!libtool) +install=gcr.install +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('d827f1447af270f9e35319502b1001883283758db26b17395b3b6a6063c82301') + +build() { + cd "$pkgname-$pkgver" + ./configure --prefix=/usr \ + --libexec=/usr/lib/gcr \ + --disable-static \ + --disable-update-mime \ + --disable-schemas-compile + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/gnome-unstable/gcr/gcr.install b/gnome-unstable/gcr/gcr.install new file mode 100644 index 000000000..8677671c4 --- /dev/null +++ b/gnome-unstable/gcr/gcr.install @@ -0,0 +1,14 @@ +post_install () { + glib-compile-schemas /usr/share/glib-2.0/schemas + gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor + update-mime-database /usr/share/mime &> /dev/null + update-desktop-database -q +} + +post_upgrade () { + post_install +} + +post_remove() { + post_install +} diff --git a/gnome-unstable/gdk-pixbuf2/PKGBUILD b/gnome-unstable/gdk-pixbuf2/PKGBUILD new file mode 100644 index 000000000..aa17d1744 --- /dev/null +++ b/gnome-unstable/gdk-pixbuf2/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 152274 2012-03-06 13:10:41Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=gdk-pixbuf2 +pkgver=2.25.2 +pkgrel=1 +pkgdesc="An image loading library" +arch=('i686' 'x86_64') +url="http://www.gtk.org/" +license=('GPL2') +depends=('glib2' 'libpng' 'libtiff' 'libjpeg' 'libx11') +makedepends=('gtk-doc' 'gobject-introspection') +options=('!libtool') +install=gdk-pixbuf2.install +source=(http://download.gnome.org/sources/gdk-pixbuf/${pkgver%.*}/gdk-pixbuf-$pkgver.tar.xz) +sha256sums=('e8bc5d7b823b5b8ecdf053225b12a9c26163ab23fcb68f176d3ec36ce96ff931') + +build() { + cd "gdk-pixbuf-$pkgver" + + ./configure --prefix=/usr \ + --without-libjasper \ + --with-x11 \ + --with-included-loaders=png + make +} + +package() { + cd "gdk-pixbuf-$pkgver" + + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/gnome-unstable/gdk-pixbuf2/gdk-pixbuf2.install b/gnome-unstable/gdk-pixbuf2/gdk-pixbuf2.install new file mode 100644 index 000000000..9a26e38dc --- /dev/null +++ b/gnome-unstable/gdk-pixbuf2/gdk-pixbuf2.install @@ -0,0 +1,11 @@ +post_install() { + /usr/bin/gdk-pixbuf-query-loaders --update-cache +} + +post_upgrade() { + post_install +} + +pre_remove() { + rm -f /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/loaders.cache +} diff --git a/gnome-unstable/glib-networking/PKGBUILD b/gnome-unstable/glib-networking/PKGBUILD new file mode 100644 index 000000000..5e34eee1d --- /dev/null +++ b/gnome-unstable/glib-networking/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 152287 2012-03-06 13:21:11Z ibiru $ +# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> + +pkgname=glib-networking +pkgver=2.31.20 +pkgrel=1 +pkgdesc="Network-related giomodules for glib" +arch=('i686' 'x86_64') +url="http://www.gtk.org/" +license=('GPL2') +depends=('glib2' 'libproxy' 'gnutls' 'libgcrypt' 'ca-certificates' 'gsettings-desktop-schemas') +makedepends=('intltool') +options=('!libtool') +install=glib-networking.install +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('82015c3601840b733d3f79298b49cce3708c064c3139975d56a44017cf162b5f') + +build() { + cd "$pkgname-$pkgver" + ./configure \ + --prefix=/usr --sysconfdir=/etc \ + --libexecdir=/usr/lib/glib-networking --disable-static + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/gnome-unstable/glib-networking/glib-networking.install b/gnome-unstable/glib-networking/glib-networking.install new file mode 100644 index 000000000..e1b80c438 --- /dev/null +++ b/gnome-unstable/glib-networking/glib-networking.install @@ -0,0 +1,11 @@ +post_install() { + /usr/bin/gio-querymodules /usr/lib/gio/modules +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/gnome-unstable/gtk3/PKGBUILD b/gnome-unstable/gtk3/PKGBUILD new file mode 100644 index 000000000..745797518 --- /dev/null +++ b/gnome-unstable/gtk3/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 152289 2012-03-06 13:35:08Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=gtk3 +pkgver=3.3.18 +pkgrel=1 +pkgdesc="GTK+ is a multi-platform toolkit (v3)" +arch=('i686' 'x86_64') +url="http://www.gtk.org/" +install=gtk3.install +depends=('atk' 'cairo' 'gtk-update-icon-cache' 'libcups' 'libxcursor' 'libxinerama' 'libxrandr' 'libxi' 'libxcomposite' 'libxdamage' 'pango' 'shared-mime-info' 'colord') +makedepends=('gobject-introspection') +options=('!libtool') +backup=(etc/gtk-3.0/settings.ini) +license=('LGPL') +source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/${pkgver%.*}/gtk+-$pkgver.tar.xz + settings.ini) +sha256sums=('c63cc7ff19c28f73c1060f4b6168ef0f6cb359803abb990baa5c5f5a48f31f90' + 'c214d3dcdcadda3d642112287524ab3e526ad592b70895c9f3e3733c23701621') + +build() { + cd "gtk+-$pkgver" + CXX=/bin/false ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --enable-gtk2-dependency \ + --disable-schemas-compile + #https://bugzilla.gnome.org/show_bug.cgi?id=655517 + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd "gtk+-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm644 "$srcdir/settings.ini" "$pkgdir/etc/gtk-3.0/settings.ini" +} diff --git a/gnome-unstable/gtk3/gtk3.install b/gnome-unstable/gtk3/gtk3.install new file mode 100644 index 000000000..ca20d2865 --- /dev/null +++ b/gnome-unstable/gtk3/gtk3.install @@ -0,0 +1,16 @@ +post_install() { + /usr/bin/gtk-query-immodules-3.0 --update-cache + /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas +} + +post_upgrade() { + post_install +} + +pre_remove() { + rm -f /usr/lib/gtk-3.0/3.0.0/immodules.cache +} + +post_remove() { + /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas +} diff --git a/gnome-unstable/gtk3/settings.ini b/gnome-unstable/gtk3/settings.ini new file mode 100644 index 000000000..039000d38 --- /dev/null +++ b/gnome-unstable/gtk3/settings.ini @@ -0,0 +1,2 @@ +[Settings] +gtk-fallback-icon-theme = gnome diff --git a/gnome-unstable/libsoup/PKGBUILD b/gnome-unstable/libsoup/PKGBUILD new file mode 100644 index 000000000..4b4b5fc0b --- /dev/null +++ b/gnome-unstable/libsoup/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 152324 2012-03-06 18:14:19Z ibiru $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgbase=libsoup +pkgname=('libsoup' 'libsoup-gnome') +pkgver=2.37.91 +pkgrel=1 +arch=('i686' 'x86_64') +license=('LGPL') +makedepends=('glib2' 'libxml2' 'sqlite3' 'libgnome-keyring' 'intltool' 'gobject-introspection' 'glib-networking') +url="http://www.gnome.org" +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgbase/${pkgver%.*}/$pkgbase-$pkgver.tar.xz) +options=('!libtool' '!emptydirs') +sha256sums=('9faa8abce324c948cd51a5d9cb956d0edc32e996724d9b0d4b2f02d0903939ba') + +build() { + cd "$pkgbase-$pkgver" + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static + make +} + +package_libsoup() { + pkgdesc="GNOME HTTP Library - base library" + depends=('glib2' 'libxml2' 'glib-networking') + + cd "$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install + + rm -f "$pkgdir"/usr/lib/libsoup-gnome-2.4.* + rm -f "$pkgdir/usr/lib/pkgconfig/libsoup-gnome-2.4.pc" + rm -rf "$pkgdir/usr/include/libsoup-gnome-2.4" + rm -f "$pkgdir/usr/lib/girepository-1.0/SoupGNOME-2.4.typelib" +} + +package_libsoup-gnome() { + pkgdesc="GNOME HTTP Library - GNOME libraries" + depends=("libsoup=$pkgver" 'libgnome-keyring') + + cd "$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install + + rm -f "$pkgdir"/usr/lib/libsoup-2.4.* + rm -f "$pkgdir}usr/lib/pkgconfig/libsoup-2.4.pc" + rm -rf "$pkgdir/usr/include/libsoup-2.4" + rm -rf "$pkgdir/usr/share" + rm -f "$pkgdir/usr/lib/girepository-1.0/Soup-2.4.typelib" +} diff --git a/gnome-unstable/network-manager-applet/PKGBUILD b/gnome-unstable/network-manager-applet/PKGBUILD new file mode 100644 index 000000000..1d5357c79 --- /dev/null +++ b/gnome-unstable/network-manager-applet/PKGBUILD @@ -0,0 +1,41 @@ +# $Id: PKGBUILD 152315 2012-03-06 16:26:09Z heftig $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Arjan Timmerman <arjan@archlinux.org> +# Contributor: Wael Nasreddine <gandalf@siemens-mobiles.org> +# Contributor: Tor Krill <tor@krill.nu> +# Contributor: Will Rea <sillywilly@gmail.com> + +pkgname=network-manager-applet +pkgver=0.9.3.995 +pkgrel=1 +pkgdesc="GNOME frontends to NetWorkmanager" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=('networkmanager' 'libgnome-keyring' 'polkit-gnome' 'gtk3' 'libnotify' 'gnome-icon-theme' + 'mobile-broadband-provider-info' 'gconf' 'iso-codes') +makedepends=('intltool' 'gnome-bluetooth') +optdepends=('gnome-bluetooth: for PAN/DUN support') +options=('!libtool' '!emptydirs') +install=network-manager-applet.install +source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/0.9/$pkgname-$pkgver.tar.xz) +sha256sums=('1805ecd738818ac852ed4fbf1aab79a25141f40d989106131b2a766d56fa97fa') + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static \ + --disable-maintainer-mode + make +} + +package() { + cd ${pkgname}-${pkgver} + make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/gconf/schemas" + gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain nm-applet ${pkgdir}/etc/gconf/schemas/*.schemas + rm -f ${pkgdir}/etc/gconf/schemas/*.schemas +} diff --git a/gnome-unstable/network-manager-applet/network-manager-applet.install b/gnome-unstable/network-manager-applet/network-manager-applet.install new file mode 100644 index 000000000..9922d12b2 --- /dev/null +++ b/gnome-unstable/network-manager-applet/network-manager-applet.install @@ -0,0 +1,18 @@ +pkgname=network-manager-applet + +post_install() { + usr/sbin/gconfpkg --install ${pkgname} + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + usr/sbin/gconfpkg --uninstall ${pkgname} +} + +post_remove() { + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} diff --git a/gnome-unstable/networkmanager-openconnect/PKGBUILD b/gnome-unstable/networkmanager-openconnect/PKGBUILD new file mode 100644 index 000000000..e2658fd7f --- /dev/null +++ b/gnome-unstable/networkmanager-openconnect/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 152316 2012-03-06 16:26:58Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-openconnect +pkgver=0.9.3.995 +pkgrel=1 +pkgdesc="NetworkManager VPN integration for openconnect" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver}" 'openconnect' 'gconf') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +options=('!libtool') +install=$pkgname.install +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-openconnect/0.9/NetworkManager-openconnect-${pkgver}.tar.xz) +sha256sums=('6ace0f8963f6c8a1ad6e04d8b7cdeffd0cd4fed3e58956cfac4c6a3f3eed7ff9') + +build() { + cd NetworkManager-openconnect-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-openconnect-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/gnome-unstable/networkmanager-openconnect/networkmanager-openconnect.install b/gnome-unstable/networkmanager-openconnect/networkmanager-openconnect.install new file mode 100644 index 000000000..7bd4d44f9 --- /dev/null +++ b/gnome-unstable/networkmanager-openconnect/networkmanager-openconnect.install @@ -0,0 +1,16 @@ +pkgname=networkmanager-openconnect + +post_install() { + getent group nm-openconnect >/dev/null 2>&1 || groupadd -g 104 nm-openconnect + getent passwd nm-openconnect > /dev/null 2>&1 || useradd -u 104 -s /sbin/nologin -d / -M -c 'NetworkManager user for OpenConnect' -g nm-openconnect nm-openconnect + passwd -l nm-openconnect > /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + getent passwd nm-openconnect >/dev/null 2>&1 && userdel nm-openconnect + getent group nm-openconnect >/dev/null 2>&1 && groupdel nm-openconnect +} diff --git a/gnome-unstable/networkmanager-openvpn/PKGBUILD b/gnome-unstable/networkmanager-openvpn/PKGBUILD new file mode 100644 index 000000000..70b1f5771 --- /dev/null +++ b/gnome-unstable/networkmanager-openvpn/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 152317 2012-03-06 16:27:48Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-openvpn +pkgver=0.9.3.995 +pkgrel=1 +pkgdesc="NetworkManager VPN plugin for OpenVPN" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver}" 'openvpn' 'gtk3' 'libgnome-keyring') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +install=networkmanager-openvpn.install +options=('!libtool') +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-openvpn/0.9/NetworkManager-openvpn-${pkgver}.tar.xz) +sha256sums=('5ede94f377cea8ca5645c86f5de32ea9df7458745c8a41c8004ed38f1b89ab5e') + +build() { + cd NetworkManager-openvpn-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-openvpn-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/gnome-unstable/networkmanager-openvpn/networkmanager-openvpn.install b/gnome-unstable/networkmanager-openvpn/networkmanager-openvpn.install new file mode 100644 index 000000000..931c0517c --- /dev/null +++ b/gnome-unstable/networkmanager-openvpn/networkmanager-openvpn.install @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/gnome-unstable/networkmanager-pptp/PKGBUILD b/gnome-unstable/networkmanager-pptp/PKGBUILD new file mode 100644 index 000000000..e7126bf5d --- /dev/null +++ b/gnome-unstable/networkmanager-pptp/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 152318 2012-03-06 16:28:41Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-pptp +pkgver=0.9.3.995 +pkgrel=1 +pkgdesc="NetworkManager VPN plugin for pptp " +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver}" 'pptpclient' 'gtk3' 'libgnome-keyring') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +options=('!libtool') +install=networkmanager-pptp.install +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-pptp/0.9/NetworkManager-pptp-${pkgver}.tar.xz) +sha256sums=('422b9930b2d27f5009561f69165156ced5d2a800d1b3954cc8c8d5b40d2d9c15') + +build() { + cd NetworkManager-pptp-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-pptp-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/gnome-unstable/networkmanager-pptp/networkmanager-pptp.install b/gnome-unstable/networkmanager-pptp/networkmanager-pptp.install new file mode 100644 index 000000000..931c0517c --- /dev/null +++ b/gnome-unstable/networkmanager-pptp/networkmanager-pptp.install @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/gnome-unstable/networkmanager-vpnc/PKGBUILD b/gnome-unstable/networkmanager-vpnc/PKGBUILD new file mode 100644 index 000000000..8fbacd832 --- /dev/null +++ b/gnome-unstable/networkmanager-vpnc/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 152319 2012-03-06 16:29:31Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-vpnc +pkgver=0.9.3.995 +pkgrel=1 +pkgdesc="NetworkManager VPN plugin for vpnc" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver}" 'vpnc' 'hicolor-icon-theme' 'gtk3' 'libgnome-keyring') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +options=('!libtool') +install=networkmanager-vpnc.install +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-vpnc/0.9/NetworkManager-vpnc-${pkgver}.tar.xz) +sha256sums=('1e0542aebbe40ced9d68271e990cf1d11b6fd6abeef528c727be58eb0c9e868c') + +build() { + cd NetworkManager-vpnc-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-vpnc-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/gnome-unstable/networkmanager-vpnc/networkmanager-vpnc.install b/gnome-unstable/networkmanager-vpnc/networkmanager-vpnc.install new file mode 100644 index 000000000..931c0517c --- /dev/null +++ b/gnome-unstable/networkmanager-vpnc/networkmanager-vpnc.install @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/gnome-unstable/networkmanager/NetworkManager.conf b/gnome-unstable/networkmanager/NetworkManager.conf new file mode 100644 index 000000000..c37b59680 --- /dev/null +++ b/gnome-unstable/networkmanager/NetworkManager.conf @@ -0,0 +1,2 @@ +[main] +plugins=keyfile diff --git a/gnome-unstable/networkmanager/PKGBUILD b/gnome-unstable/networkmanager/PKGBUILD new file mode 100644 index 000000000..e16115947 --- /dev/null +++ b/gnome-unstable/networkmanager/PKGBUILD @@ -0,0 +1,71 @@ +# $Id: PKGBUILD 152314 2012-03-06 16:24:59Z heftig $ +# Maintainer: Jan de Groot <jgc@archlinxu.org> +# Contri-butor: Wael Nasreddine <gandalf@siemens-mobiles.org> +# Contributor: Tor Krill <tor@krill.nu> +# Contributor: Will Rea <sillywilly@gmail.com> +# Contributor: Valentine Sinitsyn <e_val@inbox.ru> + +pkgname=networkmanager +pkgver=0.9.3.995 +pkgrel=1 +pkgdesc="Network Management daemon" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=('dbus-glib' 'iproute2' 'libnl' 'nss' 'polkit' 'udev' 'wpa_supplicant' 'ppp' 'dhcpcd' + 'libsystemd' 'libsoup') +makedepends=('intltool' 'dhclient' 'iptables' 'gobject-introspection') +optdepends=('modemmanager: for modem management service' + 'dhclient: alternative DHCP/DHCPv6 client' + 'iptables: Connection sharing' + 'dnsmasq: Connection sharing' + 'bluez: Bluetooth support' + 'openresolv: openresolv support') +options=('!libtool') +backup=('etc/NetworkManager/NetworkManager.conf') +install=networkmanager.install +source=(http://ftp.gnome.org/pub/gnome/sources/NetworkManager/0.9/NetworkManager-${pkgver}.tar.xz + NetworkManager.conf disable_set_hostname.patch dnsmasq-path.patch systemd-fallback.patch) +sha256sums=('67b9005190f01e1cd7d91b9cc87f3068255f2a7eae80ccba78c6e5c99df2ae15' + '44b048804c7c0b8b3b0c29b8632b6ad613c397d0a1635ec918e10c0fbcdadf21' + '25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460' + '65124505048cc8396daf0242c9f5d532fa669b4bbca305998c248ab2329490cb' + '5e9bbd8a84883037d27a71ea9969d0cb03f09ca238fa733381bcf136bbc340a5') + +build() { + cd NetworkManager-${pkgver} + + patch -Np1 -i ../disable_set_hostname.patch + patch -Np1 -i ../dnsmasq-path.patch + patch -Np1 -i ../systemd-fallback.patch + AUTOPOINT='intltoolize --automake --copy' autoreconf -f -i + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib/networkmanager \ + --with-crypto=nss \ + --with-distro=arch \ + --with-dhclient=/usr/sbin/dhclient \ + --with-dhcpcd=/sbin/dhcpcd \ + --with-iptables=/usr/sbin/iptables \ + --with-systemdsystemunitdir=/lib/systemd/system \ + --with-resolvconf=/usr/sbin/resolvconf \ + --with-session-tracking=systemd \ + --with-wext=no \ + --disable-static \ + --enable-more-warnings=no \ + --disable-wimax + + make +} + +package() { + cd NetworkManager-${pkgver} + make DESTDIR="${pkgdir}" install + + install -m644 ../NetworkManager.conf "${pkgdir}/etc/NetworkManager/" + + rm -rf "${pkgdir}/var/run/" +} diff --git a/gnome-unstable/networkmanager/disable_set_hostname.patch b/gnome-unstable/networkmanager/disable_set_hostname.patch new file mode 100644 index 000000000..ee95dd0e1 --- /dev/null +++ b/gnome-unstable/networkmanager/disable_set_hostname.patch @@ -0,0 +1,19 @@ +diff -Nur NetworkManager-0.9.0.orig/src/nm-policy.c NetworkManager-0.9.0/src/nm-policy.c +--- NetworkManager-0.9.0.orig/src/nm-policy.c 2011-08-23 06:41:02.099686450 +0000 ++++ NetworkManager-0.9.0/src/nm-policy.c 2011-08-23 06:43:38.227791737 +0000 +@@ -302,6 +302,7 @@ + return; + } + ++#if 0 + /* Try automatically determined hostname from the best device's IP config */ + if (!best4) + best4 = get_best_ip4_device (policy->manager, &best_req4); +@@ -356,6 +357,7 @@ + } + } + ++#endif + /* If no automatically-configured hostname, try using the hostname from + * when NM started up. + */ diff --git a/gnome-unstable/networkmanager/dnsmasq-path.patch b/gnome-unstable/networkmanager/dnsmasq-path.patch new file mode 100644 index 000000000..c0e713266 --- /dev/null +++ b/gnome-unstable/networkmanager/dnsmasq-path.patch @@ -0,0 +1,30 @@ +diff -u -r NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c +--- NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c 2011-10-10 23:38:20.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c 2012-03-06 09:07:24.137460927 +0100 +@@ -52,8 +52,11 @@ + find_dnsmasq (void) + { + static const char *paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; +diff -u -r NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c +--- NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c 2011-04-19 07:06:22.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c 2012-03-06 09:07:58.603851818 +0100 +@@ -170,8 +170,11 @@ + nm_find_dnsmasq (void) + { + static const char *dnsmasq_binary_paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; diff --git a/gnome-unstable/networkmanager/networkmanager.install b/gnome-unstable/networkmanager/networkmanager.install new file mode 100644 index 000000000..de40c17ed --- /dev/null +++ b/gnome-unstable/networkmanager/networkmanager.install @@ -0,0 +1,9 @@ +post_upgrade() { + (( $(vercmp 0.8.3 $2) > 0 )) && cat <<MSG +ATTENTION: + /etc/NetworkManager/nm-system-settings.conf has been replaced + by /etc/NetworkManager/NetworkManager.conf. Make sure you move + any custom settings to the new config file. +MSG + true +} diff --git a/gnome-unstable/networkmanager/systemd-fallback.patch b/gnome-unstable/networkmanager/systemd-fallback.patch new file mode 100644 index 000000000..f5acc9dc6 --- /dev/null +++ b/gnome-unstable/networkmanager/systemd-fallback.patch @@ -0,0 +1,470 @@ +diff -u -Nr NetworkManager-0.9.3.995/configure.ac NetworkManager-0.9.3.995-systemd-fallback/configure.ac +--- NetworkManager-0.9.3.995/configure.ac 2012-03-02 01:05:21.000000000 +0100 ++++ NetworkManager-0.9.3.995-systemd-fallback/configure.ac 2012-03-06 16:55:58.294793902 +0100 +@@ -344,7 +344,7 @@ + case $with_session_tracking in + ck|none) ;; + systemd) +- PKG_CHECK_MODULES(SYSTEMD, [libsystemd-login]) ++ PKG_CHECK_MODULES(SYSTEMD, [libsystemd-daemon libsystemd-login]) + ;; + *) + AC_MSG_ERROR(--with-session-tracking must be one of [none, ck, systemd]) +diff -u -Nr NetworkManager-0.9.3.995/src/nm-session-monitor-systemd.c NetworkManager-0.9.3.995-systemd-fallback/src/nm-session-monitor-systemd.c +--- NetworkManager-0.9.3.995/src/nm-session-monitor-systemd.c 2012-02-27 16:57:16.000000000 +0100 ++++ NetworkManager-0.9.3.995-systemd-fallback/src/nm-session-monitor-systemd.c 2012-03-06 16:55:01.285264295 +0100 +@@ -28,6 +28,10 @@ + #include <glib/gstdio.h> + #include <systemd/sd-login.h> + #include <stdlib.h> ++#include <systemd/sd-daemon.h> ++#include <sys/stat.h> ++#include <gio/gio.h> ++#include "nm-logging.h" + + #include "nm-session-utils.h" + #include "nm-session-monitor.h" +@@ -107,10 +111,20 @@ + return source; + } + ++/********************************************************************/ ++ ++#define CKDB_PATH "/var/run/ConsoleKit/database" ++ + struct _NMSessionMonitor { + GObject parent_instance; + + GSource *sd_source; ++ ++ GKeyFile *database; ++ GFileMonitor *database_monitor; ++ time_t database_mtime; ++ GHashTable *sessions_by_uid; ++ GHashTable *sessions_by_user; + }; + + struct _NMSessionMonitorClass { +@@ -130,6 +144,215 @@ + + /* ---------------------------------------------------------------------------------------------------- */ + ++typedef struct { ++ char *user; ++ uid_t uid; ++ gboolean local; ++ gboolean active; ++} Session; ++ ++static void ++session_free (Session *s) ++{ ++ g_free (s->user); ++ memset (s, 0, sizeof (Session)); ++ g_free (s); ++} ++ ++static gboolean ++check_key (GKeyFile *keyfile, const char *group, const char *key, GError **error) ++{ ++ if (g_key_file_has_key (keyfile, group, key, error)) ++ return TRUE; ++ ++ if (!error) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_MALFORMED_DATABASE, ++ "ConsoleKit database " CKDB_PATH " group '%s' had no '%s' key", ++ group, key); ++ } ++ return FALSE; ++} ++ ++static Session * ++session_new (GKeyFile *keyfile, const char *group, GError **error) ++{ ++ GError *local = NULL; ++ Session *s; ++ const char *uname = NULL; ++ ++ s = g_new0 (Session, 1); ++ g_assert (s); ++ ++ s->uid = G_MAXUINT; /* paranoia */ ++ if (!check_key (keyfile, group, "uid", &local)) ++ goto error; ++ s->uid = (uid_t) g_key_file_get_integer (keyfile, group, "uid", &local); ++ if (local) ++ goto error; ++ ++ if (!check_key (keyfile, group, "is_active", &local)) ++ goto error; ++ s->active = g_key_file_get_boolean (keyfile, group, "is_active", &local); ++ if (local) ++ goto error; ++ ++ if (!check_key (keyfile, group, "is_local", &local)) ++ goto error; ++ s->local = g_key_file_get_boolean (keyfile, group, "is_local", &local); ++ if (local) ++ goto error; ++ ++ if (!nm_session_uid_to_user (s->uid, &uname, error)) ++ return FALSE; ++ s->user = g_strdup (uname); ++ ++ return s; ++ ++error: ++ session_free (s); ++ g_propagate_error (error, local); ++ return NULL; ++} ++ ++static void ++session_merge (Session *src, Session *dest) ++{ ++ g_return_if_fail (src != NULL); ++ g_return_if_fail (dest != NULL); ++ ++ g_warn_if_fail (g_strcmp0 (src->user, dest->user) == 0); ++ g_warn_if_fail (src->uid == dest->uid); ++ ++ dest->local = (dest->local || src->local); ++ dest->active = (dest->active || src->active); ++} ++ ++/********************************************************************/ ++ ++static void ++free_database (NMSessionMonitor *self) ++{ ++ if (self->database != NULL) { ++ g_key_file_free (self->database); ++ self->database = NULL; ++ } ++ ++ g_hash_table_remove_all (self->sessions_by_uid); ++ g_hash_table_remove_all (self->sessions_by_user); ++} ++ ++static gboolean ++reload_database (NMSessionMonitor *self, GError **error) ++{ ++ struct stat statbuf; ++ char **groups = NULL; ++ gsize len = 0, i; ++ Session *s; ++ ++ free_database (self); ++ ++ errno = 0; ++ if (stat (CKDB_PATH, &statbuf) != 0) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ errno == ENOENT ? NM_SESSION_MONITOR_ERROR_NO_DATABASE : NM_SESSION_MONITOR_ERROR_IO_ERROR, ++ "Error statting file " CKDB_PATH ": %s", ++ strerror (errno)); ++ goto error; ++ } ++ self->database_mtime = statbuf.st_mtime; ++ ++ self->database = g_key_file_new (); ++ if (!g_key_file_load_from_file (self->database, CKDB_PATH, G_KEY_FILE_NONE, error)) ++ goto error; ++ ++ groups = g_key_file_get_groups (self->database, &len); ++ if (!groups) { ++ g_set_error_literal (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_IO_ERROR, ++ "Could not load groups from " CKDB_PATH ""); ++ goto error; ++ } ++ ++ for (i = 0; i < len; i++) { ++ Session *found; ++ ++ if (!g_str_has_prefix (groups[i], "Session ")) ++ continue; ++ ++ s = session_new (self->database, groups[i], error); ++ if (!s) ++ goto error; ++ ++ found = g_hash_table_lookup (self->sessions_by_user, (gpointer) s->user); ++ if (found) { ++ session_merge (s, found); ++ session_free (s); ++ } else { ++ /* Entirely new user */ ++ g_hash_table_insert (self->sessions_by_user, (gpointer) s->user, s); ++ g_hash_table_insert (self->sessions_by_uid, GUINT_TO_POINTER (s->uid), s); ++ } ++ } ++ ++ g_strfreev (groups); ++ return TRUE; ++ ++error: ++ if (groups) ++ g_strfreev (groups); ++ free_database (self); ++ return FALSE; ++} ++ ++static gboolean ++ensure_database (NMSessionMonitor *self, GError **error) ++{ ++ gboolean ret = FALSE; ++ ++ if (self->database != NULL) { ++ struct stat statbuf; ++ ++ errno = 0; ++ if (stat (CKDB_PATH, &statbuf) != 0) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ errno == ENOENT ? NM_SESSION_MONITOR_ERROR_NO_DATABASE : NM_SESSION_MONITOR_ERROR_IO_ERROR, ++ "Error statting file " CKDB_PATH " to check timestamp: %s", ++ strerror (errno)); ++ goto out; ++ } ++ ++ if (statbuf.st_mtime == self->database_mtime) { ++ ret = TRUE; ++ goto out; ++ } ++ } ++ ++ ret = reload_database (self, error); ++ ++out: ++ return ret; ++} ++ ++static void ++on_file_monitor_changed (GFileMonitor * file_monitor, ++ GFile * file, ++ GFile * other_file, ++ GFileMonitorEvent event_type, ++ gpointer user_data) ++{ ++ NMSessionMonitor *self = NM_SESSION_MONITOR (user_data); ++ ++ /* throw away cache */ ++ free_database (self); ++ ++ g_signal_emit (self, signals[CHANGED_SIGNAL], 0); ++} ++ + static gboolean + sessions_changed (gpointer user_data) + { +@@ -143,9 +366,50 @@ + static void + nm_session_monitor_init (NMSessionMonitor *monitor) + { +- monitor->sd_source = sd_source_new (); +- g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); +- g_source_attach (monitor->sd_source, NULL); ++ if (sd_booted () > 0) { ++ monitor->sd_source = sd_source_new (); ++ g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); ++ g_source_attach (monitor->sd_source, NULL); ++ ++ monitor->database_monitor = NULL; ++ monitor->database = NULL; ++ } else { ++ monitor->sd_source = NULL; ++ ++ GError *error = NULL; ++ GFile *file; ++ ++ /* Sessions-by-user is responsible for destroying the Session objects */ ++ monitor->sessions_by_user = g_hash_table_new_full (g_str_hash, g_str_equal, ++ NULL, (GDestroyNotify) session_free); ++ monitor->sessions_by_uid = g_hash_table_new (g_direct_hash, g_direct_equal); ++ ++ ++ error = NULL; ++ if (!ensure_database (monitor, &error)) { ++ /* Ignore the first error if the CK database isn't found yet */ ++ if (g_error_matches (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_NO_DATABASE) == FALSE) { ++ nm_log_err (LOGD_CORE, "Error loading " CKDB_PATH ": %s", error->message); ++ } ++ g_error_free (error); ++ } ++ ++ error = NULL; ++ file = g_file_new_for_path (CKDB_PATH); ++ monitor->database_monitor = g_file_monitor_file (file, G_FILE_MONITOR_NONE, NULL, &error); ++ g_object_unref (file); ++ if (monitor->database_monitor == NULL) { ++ nm_log_err (LOGD_CORE, "Error monitoring " CKDB_PATH ": %s", error->message); ++ g_error_free (error); ++ } else { ++ g_signal_connect (monitor->database_monitor, ++ "changed", ++ G_CALLBACK (on_file_monitor_changed), ++ monitor); ++ } ++ } + } + + static void +@@ -158,6 +422,12 @@ + g_source_unref (monitor->sd_source); + } + ++ if (monitor->database_monitor != NULL) ++ g_object_unref (monitor->database_monitor); ++ ++ if (monitor->database != NULL) ++ free_database (monitor); ++ + if (G_OBJECT_CLASS (nm_session_monitor_parent_class)->finalize != NULL) + G_OBJECT_CLASS (nm_session_monitor_parent_class)->finalize (object); + } +@@ -206,15 +476,36 @@ + uid_t *out_uid, + GError **error) + { +- uid_t uid; ++ if (monitor->sd_source != NULL) { ++ uid_t uid; + +- if (!nm_session_user_to_uid (username, &uid, error)) +- return FALSE; ++ if (!nm_session_user_to_uid (username, &uid, error)) ++ return FALSE; + +- if (out_uid) +- *out_uid = uid; ++ if (out_uid) ++ *out_uid = uid; + +- return nm_session_monitor_uid_has_session (monitor, uid, NULL, error); ++ return nm_session_monitor_uid_has_session (monitor, uid, NULL, error); ++ } else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_user, (gpointer) username); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for user '%s'", ++ username); ++ return FALSE; ++ } ++ ++ if (out_uid) ++ *out_uid = s->uid; ++ return TRUE; ++ } + } + + gboolean +@@ -222,12 +513,31 @@ + const char *username, + GError **error) + { +- uid_t uid; ++ if (monitor->sd_source != NULL) { ++ uid_t uid; + +- if (!nm_session_user_to_uid (username, &uid, error)) +- return FALSE; ++ if (!nm_session_user_to_uid (username, &uid, error)) ++ return FALSE; ++ ++ return nm_session_monitor_uid_active (monitor, uid, error); ++ } else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_user, (gpointer) username); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for user '%s'", ++ username); ++ return FALSE; ++ } + +- return nm_session_monitor_uid_active (monitor, uid, error); ++ return s->active; ++ } + } + + gboolean +@@ -236,10 +546,31 @@ + const char **out_user, + GError **error) + { +- if (!nm_session_uid_to_user (uid, out_user, error)) +- return FALSE; ++ if (monitor->sd_source != NULL) { ++ if (!nm_session_uid_to_user (uid, out_user, error)) ++ return FALSE; + +- return sd_uid_get_sessions (uid, FALSE, NULL) > 0; ++ return sd_uid_get_sessions (uid, FALSE, NULL) > 0; ++ } else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_uid, GUINT_TO_POINTER (uid)); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for uid %d", ++ uid); ++ return FALSE; ++ } ++ ++ if (out_user) ++ *out_user = s->user; ++ return TRUE; ++ } + } + + gboolean +@@ -247,5 +578,24 @@ + uid_t uid, + GError **error) + { +- return sd_uid_get_sessions (uid, TRUE, NULL) > 0; ++ if (monitor->sd_source != NULL) ++ return sd_uid_get_sessions (uid, TRUE, NULL) > 0; ++ else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_uid, GUINT_TO_POINTER (uid)); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for uid '%d'", ++ uid); ++ return FALSE; ++ } ++ ++ return s->active; ++ } + } diff --git a/gnome-unstable/polkit/PKGBUILD b/gnome-unstable/polkit/PKGBUILD new file mode 100644 index 000000000..bac254696 --- /dev/null +++ b/gnome-unstable/polkit/PKGBUILD @@ -0,0 +1,36 @@ +# $Id: PKGBUILD 152307 2012-03-06 15:17:55Z heftig $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=polkit +pkgver=0.104 +pkgrel=2 +pkgdesc="Application development toolkit for controlling system-wide privileges" +arch=(i686 x86_64) +license=('LGPL') +url="http://www.freedesktop.org/wiki/Software/PolicyKit" +depends=('glib2' 'pam' 'expat' 'libsystemd') +makedepends=('intltool' 'gtk-doc' 'gobject-introspection') +replaces=('policykit') +options=('!libtool') +source=(http://hal.freedesktop.org/releases/$pkgname-$pkgver.tar.gz + polkit.pam systemd-fallback.patch) +md5sums=('e380b4c6fb1e7bccf854e92edc0a8ce1' + '6564f95878297b954f0572bc1610dd15' + '3c89d97a329ab0ea3a9248c68c3ab000') + +build() { + cd $pkgname-$pkgver + patch -Np1 -i ../systemd-fallback.patch + autoreconf -f -i + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --libexecdir=/usr/lib/polkit-1 \ + --disable-static --enable-gtk-doc --enable-systemd + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install + + install -m644 "$srcdir/polkit.pam" "$pkgdir/etc/pam.d/polkit-1" +} diff --git a/gnome-unstable/polkit/polkit.pam b/gnome-unstable/polkit/polkit.pam new file mode 100644 index 000000000..04f53e0db --- /dev/null +++ b/gnome-unstable/polkit/polkit.pam @@ -0,0 +1,7 @@ +auth requisite pam_nologin.so +auth required pam_env.so +auth required pam_unix.so +account required pam_unix.so +session required pam_limits.so +session required pam_unix.so +password required pam_unix.so diff --git a/gnome-unstable/polkit/systemd-fallback.patch b/gnome-unstable/polkit/systemd-fallback.patch new file mode 100644 index 000000000..f89ce10ae --- /dev/null +++ b/gnome-unstable/polkit/systemd-fallback.patch @@ -0,0 +1,1571 @@ +diff -u -rN polkit-0.104/configure.ac polkit-0.104-systemd-fallback/configure.ac +--- polkit-0.104/configure.ac 2012-01-03 17:25:49.000000000 +0100 ++++ polkit-0.104-systemd-fallback/configure.ac 2012-03-06 15:45:55.275860194 +0100 +@@ -160,14 +160,14 @@ + [enable_systemd=auto]) + if test "$enable_systemd" != "no"; then + PKG_CHECK_MODULES(SYSTEMD, +- [libsystemd-login], ++ [libsystemd-login libsystemd-daemon], + have_systemd=yes, + have_systemd=no) + if test "$have_systemd" = "yes"; then + SESSION_TRACKING=systemd + else + if test "$enable_systemd" = "yes"; then +- AC_MSG_ERROR([systemd support requested but libsystemd-login1 library not found]) ++ AC_MSG_ERROR([systemd support requested but systemd libraries not found]) + fi + fi + fi +diff -u -rN polkit-0.104/src/polkit/Makefile.am polkit-0.104-systemd-fallback/src/polkit/Makefile.am +--- polkit-0.104/src/polkit/Makefile.am 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkit/Makefile.am 2012-03-06 15:19:25.108853325 +0100 +@@ -79,15 +79,8 @@ + polkitimplicitauthorization.c polkitimplicitauthorization.h \ + polkittemporaryauthorization.c polkittemporaryauthorization.h \ + polkitpermission.c polkitpermission.h \ +- $(NULL) +- +-if HAVE_SYSTEMD +-libpolkit_gobject_1_la_SOURCES += \ +- polkitunixsession-systemd.c polkitunixsession.h +-else +-libpolkit_gobject_1_la_SOURCES += \ + polkitunixsession.c polkitunixsession.h +-endif ++ $(NULL) + + libpolkit_gobject_1_la_CFLAGS = \ + -D_POLKIT_COMPILATION \ +diff -u -rN polkit-0.104/src/polkit/polkitunixsession.c polkit-0.104-systemd-fallback/src/polkit/polkitunixsession.c +--- polkit-0.104/src/polkit/polkitunixsession.c 2011-10-18 19:02:27.000000000 +0200 ++++ polkit-0.104-systemd-fallback/src/polkit/polkitunixsession.c 2012-03-06 15:17:29.829788021 +0100 +@@ -23,12 +23,18 @@ + # include "config.h" + #endif + ++#include <stdlib.h> + #include <string.h> + #include "polkitunixsession.h" + #include "polkitsubject.h" + #include "polkiterror.h" + #include "polkitprivate.h" + ++#ifdef HAVE_SYSTEMD ++# include <systemd/sd-daemon.h> ++# include <systemd/sd-login.h> ++#endif ++ + /** + * SECTION:polkitunixsession + * @title: PolkitUnixSession +@@ -364,34 +370,44 @@ + PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); + GDBusConnection *connection; + GVariant *result; +- gboolean ret; +- +- ret = FALSE; ++ gboolean ret = FALSE; + +- connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); +- if (connection == NULL) +- goto out; +- +- result = g_dbus_connection_call_sync (connection, +- "org.freedesktop.ConsoleKit", /* name */ +- session->session_id, /* object path */ +- "org.freedesktop.ConsoleKit.Session", /* interface name */ +- "GetUser", /* method */ +- NULL, /* parameters */ +- G_VARIANT_TYPE ("(u)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, +- cancellable, +- error); +- if (result == NULL) +- goto out; ++#ifdef HAVE_SYSTEMD ++ uid_t uid; ++ ++ if (sd_booted () > 0) ++ { ++ if (sd_session_get_uid (session->session_id, &uid) == 0) ++ ret = TRUE; ++ } ++ else ++#endif ++ { ++ connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); ++ if (connection == NULL) ++ goto out; ++ ++ result = g_dbus_connection_call_sync (connection, ++ "org.freedesktop.ConsoleKit", /* name */ ++ session->session_id, /* object path */ ++ "org.freedesktop.ConsoleKit.Session", /* interface name */ ++ "GetUser", /* method */ ++ NULL, /* parameters */ ++ G_VARIANT_TYPE ("(u)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, ++ cancellable, ++ error); ++ if (result == NULL) ++ goto out; + +- ret = TRUE; +- g_variant_unref (result); ++ ret = TRUE; ++ g_variant_unref (result); + +- out: +- if (connection != NULL) +- g_object_unref (connection); ++ out: ++ if (connection != NULL) ++ g_object_unref (connection); ++ } + return ret; + } + +@@ -470,12 +486,9 @@ + GError **error) + { + PolkitUnixSession *session = POLKIT_UNIX_SESSION (initable); +- GDBusConnection *connection; ++ GDBusConnection *connection = NULL; + GVariant *result; +- gboolean ret; +- +- connection = NULL; +- ret = FALSE; ++ gboolean ret = FALSE; + + if (session->session_id != NULL) + { +@@ -484,33 +497,56 @@ + goto out; + } + +- connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); +- if (connection == NULL) +- goto out; ++#ifdef HAVE_SYSTEMD ++ char *s; ++ ++ if (sd_booted () > 0) ++ { ++ if (sd_pid_get_session (session->pid, &s) == 0) ++ { ++ session->session_id = g_strdup (s); ++ free (s); ++ ret = TRUE; ++ goto out; ++ } ++ ++ g_set_error (error, ++ POLKIT_ERROR, ++ POLKIT_ERROR_FAILED, ++ "No session for pid %d", ++ (gint) session->pid); ++ } ++ else ++#endif ++ { ++ connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); ++ if (connection == NULL) ++ goto out; ++ ++ result = g_dbus_connection_call_sync (connection, ++ "org.freedesktop.ConsoleKit", /* name */ ++ "/org/freedesktop/ConsoleKit/Manager", /* object path */ ++ "org.freedesktop.ConsoleKit.Manager", /* interface name */ ++ "GetSessionForUnixProcess", /* method */ ++ g_variant_new ("(u)", session->pid), /* parameters */ ++ G_VARIANT_TYPE ("(o)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, ++ cancellable, ++ error); ++ if (result == NULL) ++ goto out; + +- result = g_dbus_connection_call_sync (connection, +- "org.freedesktop.ConsoleKit", /* name */ +- "/org/freedesktop/ConsoleKit/Manager", /* object path */ +- "org.freedesktop.ConsoleKit.Manager", /* interface name */ +- "GetSessionForUnixProcess", /* method */ +- g_variant_new ("(u)", session->pid), /* parameters */ +- G_VARIANT_TYPE ("(o)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, +- cancellable, +- error); +- if (result == NULL) +- goto out; ++ g_variant_get (result, "(o)", &session->session_id); ++ g_variant_unref (result); + +- g_variant_get (result, "(o)", &session->session_id); +- g_variant_unref (result); ++ ret = TRUE; ++ } + +- ret = TRUE; + + out: + if (connection != NULL) + g_object_unref (connection); +- + return ret; + } + +diff -u -rN polkit-0.104/src/polkit/polkitunixsession-systemd.c polkit-0.104-systemd-fallback/src/polkit/polkitunixsession-systemd.c +--- polkit-0.104/src/polkit/polkitunixsession-systemd.c 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkit/polkitunixsession-systemd.c 1970-01-01 01:00:00.000000000 +0100 +@@ -1,481 +0,0 @@ +-/* +- * Copyright (C) 2011 Red Hat, Inc. +- * +- * This library is free software; you can redistribute it and/or +- * modify it under the terms of the GNU Lesser General Public +- * License as published by the Free Software Foundation; either +- * version 2 of the License, or (at your option) any later version. +- * +- * This library is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- * Lesser General Public License for more details. +- * +- * You should have received a copy of the GNU Lesser General +- * Public License along with this library; if not, write to the +- * Free Software Foundation, Inc., 59 Temple Place, Suite 330, +- * Boston, MA 02111-1307, USA. +- * +- * Author: Matthias Clasen +- */ +- +-#ifdef HAVE_CONFIG_H +-# include "config.h" +-#endif +- +-#include <string.h> +-#include "polkitunixsession.h" +-#include "polkitsubject.h" +-#include "polkiterror.h" +-#include "polkitprivate.h" +- +-#include <systemd/sd-login.h> +- +-/** +- * SECTION:polkitunixsession +- * @title: PolkitUnixSession +- * @short_description: Unix sessions +- * +- * An object that represents an user session. +- * +- * The session id is an opaque string obtained from ConsoleKit. +- */ +- +-/** +- * PolkitUnixSession: +- * +- * The #PolkitUnixSession struct should not be accessed directly. +- */ +-struct _PolkitUnixSession +-{ +- GObject parent_instance; +- +- gchar *session_id; +- +- gint pid; +-}; +- +-struct _PolkitUnixSessionClass +-{ +- GObjectClass parent_class; +-}; +- +-enum +-{ +- PROP_0, +- PROP_SESSION_ID, +- PROP_PID, +-}; +- +-static void subject_iface_init (PolkitSubjectIface *subject_iface); +-static void initable_iface_init (GInitableIface *initable_iface); +-static void async_initable_iface_init (GAsyncInitableIface *async_initable_iface); +- +-G_DEFINE_TYPE_WITH_CODE (PolkitUnixSession, polkit_unix_session, G_TYPE_OBJECT, +- G_IMPLEMENT_INTERFACE (POLKIT_TYPE_SUBJECT, subject_iface_init) +- G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE, initable_iface_init) +- G_IMPLEMENT_INTERFACE (G_TYPE_ASYNC_INITABLE, async_initable_iface_init) +- ); +- +-static void +-polkit_unix_session_init (PolkitUnixSession *session) +-{ +-} +- +-static void +-polkit_unix_session_finalize (GObject *object) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (object); +- +- g_free (session->session_id); +- +- if (G_OBJECT_CLASS (polkit_unix_session_parent_class)->finalize != NULL) +- G_OBJECT_CLASS (polkit_unix_session_parent_class)->finalize (object); +-} +- +-static void +-polkit_unix_session_get_property (GObject *object, +- guint prop_id, +- GValue *value, +- GParamSpec *pspec) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (object); +- +- switch (prop_id) +- { +- case PROP_SESSION_ID: +- g_value_set_string (value, session->session_id); +- break; +- +- default: +- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); +- break; +- } +-} +- +-static void +-polkit_unix_session_set_property (GObject *object, +- guint prop_id, +- const GValue *value, +- GParamSpec *pspec) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (object); +- +- switch (prop_id) +- { +- case PROP_SESSION_ID: +- polkit_unix_session_set_session_id (session, g_value_get_string (value)); +- break; +- +- case PROP_PID: +- session->pid = g_value_get_int (value); +- break; +- +- default: +- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); +- break; +- } +-} +- +-static void +-polkit_unix_session_class_init (PolkitUnixSessionClass *klass) +-{ +- GObjectClass *gobject_class = G_OBJECT_CLASS (klass); +- +- gobject_class->finalize = polkit_unix_session_finalize; +- gobject_class->get_property = polkit_unix_session_get_property; +- gobject_class->set_property = polkit_unix_session_set_property; +- +- /** +- * PolkitUnixSession:session-id: +- * +- * The UNIX session id. +- */ +- g_object_class_install_property (gobject_class, +- PROP_SESSION_ID, +- g_param_spec_string ("session-id", +- "Session ID", +- "The UNIX session ID", +- NULL, +- G_PARAM_CONSTRUCT | +- G_PARAM_READWRITE | +- G_PARAM_STATIC_NAME | +- G_PARAM_STATIC_BLURB | +- G_PARAM_STATIC_NICK)); +- +- +- /** +- * PolkitUnixSession:pid: +- * +- * The UNIX process id to look up the session. +- */ +- g_object_class_install_property (gobject_class, +- PROP_PID, +- g_param_spec_int ("pid", +- "Process ID", +- "Process ID to use for looking up the session", +- 0, +- G_MAXINT, +- 0, +- G_PARAM_CONSTRUCT_ONLY | +- G_PARAM_WRITABLE | +- G_PARAM_STATIC_NAME | +- G_PARAM_STATIC_BLURB | +- G_PARAM_STATIC_NICK)); +- +-} +- +-/** +- * polkit_unix_session_get_session_id: +- * @session: A #PolkitUnixSession. +- * +- * Gets the session id for @session. +- * +- * Returns: The session id for @session. Do not free this string, it +- * is owned by @session. +- **/ +-const gchar * +-polkit_unix_session_get_session_id (PolkitUnixSession *session) +-{ +- g_return_val_if_fail (POLKIT_IS_UNIX_SESSION (session), NULL); +- return session->session_id; +-} +- +-/** +- * polkit_unix_session_set_session_id: +- * @session: A #PolkitUnixSession. +- * @session_id: The session id. +- * +- * Sets the session id for @session to @session_id. +- **/ +-void +-polkit_unix_session_set_session_id (PolkitUnixSession *session, +- const gchar *session_id) +-{ +- g_return_if_fail (POLKIT_IS_UNIX_SESSION (session)); +- /*g_return_if_fail (session_id != NULL);*/ +- g_free (session->session_id); +- session->session_id = g_strdup (session_id); +-} +- +-/** +- * polkit_unix_session_new: +- * @session_id: The session id. +- * +- * Creates a new #PolkitUnixSession for @session_id. +- * +- * Returns: (transfer full): A #PolkitUnixSession. Free with g_object_unref(). +- **/ +-PolkitSubject * +-polkit_unix_session_new (const gchar *session_id) +-{ +- return POLKIT_SUBJECT (g_object_new (POLKIT_TYPE_UNIX_SESSION, +- "session-id", session_id, +- NULL)); +-} +- +-/** +- * polkit_unix_session_new_for_process: +- * @pid: The process id of the process to get the session for. +- * @cancellable: (allow-none): A #GCancellable or %NULL. +- * @callback: A #GAsyncReadyCallback to call when the request is satisfied +- * @user_data: The data to pass to @callback. +- * +- * Asynchronously creates a new #PolkitUnixSession object for the +- * process with process id @pid. +- * +- * When the operation is finished, @callback will be invoked in the +- * <link linkend="g-main-context-push-thread-default">thread-default +- * main loop</link> of the thread you are calling this method +- * from. You can then call +- * polkit_unix_session_new_for_process_finish() to get the result of +- * the operation. +- * +- * This method constructs the object asynchronously, for the synchronous and blocking version +- * use polkit_unix_session_new_for_process_sync(). +- **/ +-void +-polkit_unix_session_new_for_process (gint pid, +- GCancellable *cancellable, +- GAsyncReadyCallback callback, +- gpointer user_data) +-{ +- g_async_initable_new_async (POLKIT_TYPE_UNIX_SESSION, +- G_PRIORITY_DEFAULT, +- cancellable, +- callback, +- user_data, +- "pid", pid, +- NULL); +-} +- +-/** +- * polkit_unix_session_new_for_process_finish: +- * @res: A #GAsyncResult obtained from the #GAsyncReadyCallback passed to polkit_unix_session_new_for_process(). +- * @error: (allow-none): Return location for error. +- * +- * Finishes constructing a #PolkitSubject for a process id. +- * +- * Returns: (transfer full) (allow-none): A #PolkitUnixSession for the @pid passed to +- * polkit_unix_session_new_for_process() or %NULL if @error is +- * set. Free with g_object_unref(). +- **/ +-PolkitSubject * +-polkit_unix_session_new_for_process_finish (GAsyncResult *res, +- GError **error) +-{ +- GObject *object; +- GObject *source_object; +- +- source_object = g_async_result_get_source_object (res); +- g_assert (source_object != NULL); +- +- object = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), +- res, +- error); +- g_object_unref (source_object); +- +- if (object != NULL) +- return POLKIT_SUBJECT (object); +- else +- return NULL; +-} +- +- +-/** +- * polkit_unix_session_new_for_process_sync: +- * @pid: The process id of the process to get the session for. +- * @cancellable: (allow-none): A #GCancellable or %NULL. +- * @error: (allow-none): Return location for error. +- * +- * Creates a new #PolkitUnixSession for the process with process id @pid. +- * +- * This is a synchronous call - the calling thread is blocked until a +- * reply is received. For the asynchronous version, see +- * polkit_unix_session_new_for_process(). +- * +- * Returns: (allow-none) (transfer full): A #PolkitUnixSession for +- * @pid or %NULL if @error is set. Free with g_object_unref(). +- **/ +-PolkitSubject * +-polkit_unix_session_new_for_process_sync (gint pid, +- GCancellable *cancellable, +- GError **error) +-{ +- return POLKIT_SUBJECT (g_initable_new (POLKIT_TYPE_UNIX_SESSION, +- cancellable, +- error, +- "pid", pid, +- NULL)); +-} +- +-static guint +-polkit_unix_session_hash (PolkitSubject *subject) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); +- +- return g_str_hash (session->session_id); +-} +- +-static gboolean +-polkit_unix_session_equal (PolkitSubject *a, +- PolkitSubject *b) +-{ +- PolkitUnixSession *session_a; +- PolkitUnixSession *session_b; +- +- session_a = POLKIT_UNIX_SESSION (a); +- session_b = POLKIT_UNIX_SESSION (b); +- +- return g_strcmp0 (session_a->session_id, session_b->session_id) == 0; +-} +- +-static gchar * +-polkit_unix_session_to_string (PolkitSubject *subject) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); +- +- return g_strdup_printf ("unix-session:%s", session->session_id); +-} +- +-static gboolean +-polkit_unix_session_exists_sync (PolkitSubject *subject, +- GCancellable *cancellable, +- GError **error) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); +- gboolean ret; +- uid_t uid; +- +- ret = FALSE; +- +- if (!sd_session_get_uid (session->session_id, &uid)) +- ret = FALSE; +- +- return ret; +-} +- +-static void +-exists_in_thread_func (GSimpleAsyncResult *res, +- GObject *object, +- GCancellable *cancellable) +-{ +- GError *error; +- error = NULL; +- if (!polkit_unix_session_exists_sync (POLKIT_SUBJECT (object), +- cancellable, +- &error)) +- { +- g_simple_async_result_set_from_error (res, error); +- g_error_free (error); +- } +-} +- +-static void +-polkit_unix_session_exists (PolkitSubject *subject, +- GCancellable *cancellable, +- GAsyncReadyCallback callback, +- gpointer user_data) +-{ +- GSimpleAsyncResult *simple; +- +- g_return_if_fail (POLKIT_IS_UNIX_SESSION (subject)); +- +- simple = g_simple_async_result_new (G_OBJECT (subject), +- callback, +- user_data, +- polkit_unix_session_exists); +- g_simple_async_result_run_in_thread (simple, +- exists_in_thread_func, +- G_PRIORITY_DEFAULT, +- cancellable); +- g_object_unref (simple); +-} +- +-static gboolean +-polkit_unix_session_exists_finish (PolkitSubject *subject, +- GAsyncResult *res, +- GError **error) +-{ +- GSimpleAsyncResult *simple = G_SIMPLE_ASYNC_RESULT (res); +- gboolean ret; +- +- g_warn_if_fail (g_simple_async_result_get_source_tag (simple) == polkit_unix_session_exists); +- +- ret = FALSE; +- +- if (g_simple_async_result_propagate_error (simple, error)) +- goto out; +- +- ret = g_simple_async_result_get_op_res_gboolean (simple); +- +- out: +- return ret; +-} +- +-static void +-subject_iface_init (PolkitSubjectIface *subject_iface) +-{ +- subject_iface->hash = polkit_unix_session_hash; +- subject_iface->equal = polkit_unix_session_equal; +- subject_iface->to_string = polkit_unix_session_to_string; +- subject_iface->exists = polkit_unix_session_exists; +- subject_iface->exists_finish = polkit_unix_session_exists_finish; +- subject_iface->exists_sync = polkit_unix_session_exists_sync; +-} +- +-static gboolean +-polkit_unix_session_initable_init (GInitable *initable, +- GCancellable *cancellable, +- GError **error) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (initable); +- gboolean ret; +- +- ret = FALSE; +- +- if (session->session_id != NULL) +- { +- /* already set, nothing to do */ +- ret = TRUE; +- goto out; +- } +- +- if (!sd_pid_get_session (session->pid, &session->session_id)) +- ret = TRUE; +- +-out: +- return ret; +-} +- +-static void +-initable_iface_init (GInitableIface *initable_iface) +-{ +- initable_iface->init = polkit_unix_session_initable_init; +-} +- +-static void +-async_initable_iface_init (GAsyncInitableIface *async_initable_iface) +-{ +- /* use default implementation to run GInitable code in a thread */ +-} +diff -u -rN polkit-0.104/src/polkitbackend/Makefile.am polkit-0.104-systemd-fallback/src/polkitbackend/Makefile.am +--- polkit-0.104/src/polkitbackend/Makefile.am 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkitbackend/Makefile.am 2012-03-06 15:44:15.380014886 +0100 +@@ -41,15 +41,8 @@ + polkitbackendconfigsource.h polkitbackendconfigsource.c \ + polkitbackendactionlookup.h polkitbackendactionlookup.c \ + polkitbackendlocalauthorizationstore.h polkitbackendlocalauthorizationstore.c \ +- $(NULL) +- +-if HAVE_SYSTEMD +-libpolkit_backend_1_la_SOURCES += \ +- polkitbackendsessionmonitor.h polkitbackendsessionmonitor-systemd.c +-else +-libpolkit_backend_1_la_SOURCES += \ + polkitbackendsessionmonitor.h polkitbackendsessionmonitor.c +-endif ++ $(NULL) + + libpolkit_backend_1_la_CFLAGS = \ + -D_POLKIT_COMPILATION \ +diff -u -rN polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor.c polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor.c +--- polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor.c 2011-10-18 19:02:27.000000000 +0200 ++++ polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor.c 2012-03-06 15:43:49.353562242 +0100 +@@ -26,6 +26,12 @@ + #include <string.h> + #include <glib/gstdio.h> + ++#ifdef HAVE_SYSTEMD ++# include <systemd/sd-daemon.h> ++# include <systemd/sd-login.h> ++# include <stdlib.h> ++#endif ++ + #include <polkit/polkit.h> + #include "polkitbackendsessionmonitor.h" + +@@ -39,6 +45,88 @@ + * The #PolkitBackendSessionMonitor class is a utility class to track and monitor sessions. + */ + ++#ifdef HAVE_SYSTEMD ++typedef struct ++{ ++ GSource source; ++ GPollFD pollfd; ++ sd_login_monitor *monitor; ++} SdSource; ++ ++static gboolean ++sd_source_prepare (GSource *source, ++ gint *timeout) ++{ ++ *timeout = -1; ++ return FALSE; ++} ++ ++static gboolean ++sd_source_check (GSource *source) ++{ ++ SdSource *sd_source = (SdSource *)source; ++ ++ return sd_source->pollfd.revents != 0; ++} ++ ++static gboolean ++sd_source_dispatch (GSource *source, ++ GSourceFunc callback, ++ gpointer user_data) ++ ++{ ++ SdSource *sd_source = (SdSource *)source; ++ gboolean ret; ++ ++ g_warn_if_fail (callback != NULL); ++ ++ ret = (*callback) (user_data); ++ ++ sd_login_monitor_flush (sd_source->monitor); ++ ++ return ret; ++} ++ ++static void ++sd_source_finalize (GSource *source) ++{ ++ SdSource *sd_source = (SdSource*)source; ++ ++ sd_login_monitor_unref (sd_source->monitor); ++} ++ ++static GSourceFuncs sd_source_funcs = { ++ sd_source_prepare, ++ sd_source_check, ++ sd_source_dispatch, ++ sd_source_finalize ++}; ++ ++static GSource * ++sd_source_new (void) ++{ ++ GSource *source; ++ SdSource *sd_source; ++ int ret; ++ ++ source = g_source_new (&sd_source_funcs, sizeof (SdSource)); ++ sd_source = (SdSource *)source; ++ ++ if ((ret = sd_login_monitor_new (NULL, &sd_source->monitor)) < 0) ++ { ++ g_printerr ("Error getting login monitor: %d", ret); ++ } ++ else ++ { ++ sd_source->pollfd.fd = sd_login_monitor_get_fd (sd_source->monitor); ++ sd_source->pollfd.events = G_IO_IN; ++ g_source_add_poll (source, &sd_source->pollfd); ++ } ++ ++ return source; ++} ++#endif /* HAVE_SYSTEMD */ ++ + struct _PolkitBackendSessionMonitor + { + GObject parent_instance; +@@ -48,6 +136,10 @@ + GKeyFile *database; + GFileMonitor *database_monitor; + time_t database_mtime; ++ ++#ifdef HAVE_SYSTEMD ++ GSource *sd_source; ++#endif + }; + + struct _PolkitBackendSessionMonitorClass +@@ -162,6 +254,18 @@ + g_signal_emit (monitor, signals[CHANGED_SIGNAL], 0); + } + ++#ifdef HAVE_SYSTEMD ++static gboolean ++sessions_changed (gpointer user_data) ++{ ++ PolkitBackendSessionMonitor *monitor = POLKIT_BACKEND_SESSION_MONITOR (user_data); ++ ++ g_signal_emit (monitor, signals[CHANGED_SIGNAL], 0); ++ ++ return TRUE; ++} ++#endif ++ + static void + polkit_backend_session_monitor_init (PolkitBackendSessionMonitor *monitor) + { +@@ -176,31 +280,47 @@ + g_error_free (error); + } + +- error = NULL; +- if (!ensure_database (monitor, &error)) +- { +- g_printerr ("Error loading " CKDB_PATH ": %s", error->message); +- g_error_free (error); +- } ++#ifdef HAVE_SYSTEMD ++ monitor->sd_source = NULL; ++ ++ if (sd_booted () > 0) ++ { ++ monitor->sd_source = sd_source_new (); ++ g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); ++ g_source_attach (monitor->sd_source, NULL); + +- error = NULL; +- file = g_file_new_for_path (CKDB_PATH); +- monitor->database_monitor = g_file_monitor_file (file, +- G_FILE_MONITOR_NONE, +- NULL, +- &error); +- g_object_unref (file); +- if (monitor->database_monitor == NULL) +- { +- g_printerr ("Error monitoring " CKDB_PATH ": %s", error->message); +- g_error_free (error); ++ monitor->database = NULL; ++ monitor->database_monitor = NULL; + } + else ++#endif + { +- g_signal_connect (monitor->database_monitor, +- "changed", +- G_CALLBACK (on_file_monitor_changed), +- monitor); ++ error = NULL; ++ if (!ensure_database (monitor, &error)) ++ { ++ g_printerr ("Error loading " CKDB_PATH ": %s", error->message); ++ g_error_free (error); ++ } ++ ++ error = NULL; ++ file = g_file_new_for_path (CKDB_PATH); ++ monitor->database_monitor = g_file_monitor_file (file, ++ G_FILE_MONITOR_NONE, ++ NULL, ++ &error); ++ g_object_unref (file); ++ if (monitor->database_monitor == NULL) ++ { ++ g_printerr ("Error monitoring " CKDB_PATH ": %s", error->message); ++ g_error_free (error); ++ } ++ else ++ { ++ g_signal_connect (monitor->database_monitor, ++ "changed", ++ G_CALLBACK (on_file_monitor_changed), ++ monitor); ++ } + } + } + +@@ -212,6 +332,14 @@ + if (monitor->system_bus != NULL) + g_object_unref (monitor->system_bus); + ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ g_source_destroy (monitor->sd_source); ++ g_source_unref (monitor->sd_source); ++ } ++#endif ++ + if (monitor->database_monitor != NULL) + g_object_unref (monitor->database_monitor); + +@@ -328,22 +456,38 @@ + } + else if (POLKIT_IS_UNIX_SESSION (subject)) + { +- if (!ensure_database (monitor, error)) ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) + { +- g_prefix_error (error, "Error getting user for session: Error ensuring CK database at " CKDB_PATH ": "); +- goto out; ++ if (sd_session_get_uid (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject)), &uid) < 0) ++ { ++ g_set_error (error, ++ POLKIT_ERROR, ++ POLKIT_ERROR_FAILED, ++ "Error getting uid for session"); ++ goto out; ++ } + } +- +- group = g_strdup_printf ("Session %s", polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject))); +- local_error = NULL; +- uid = g_key_file_get_integer (monitor->database, group, "uid", &local_error); +- if (local_error != NULL) ++ else ++#endif + { +- g_propagate_prefixed_error (error, local_error, "Error getting uid using " CKDB_PATH ": "); ++ if (!ensure_database (monitor, error)) ++ { ++ g_prefix_error (error, "Error getting user for session: Error ensuring CK database at " CKDB_PATH ": "); ++ goto out; ++ } ++ ++ group = g_strdup_printf ("Session %s", polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject))); ++ local_error = NULL; ++ uid = g_key_file_get_integer (monitor->database, group, "uid", &local_error); ++ if (local_error != NULL) ++ { ++ g_propagate_prefixed_error (error, local_error, "Error getting uid using " CKDB_PATH ": "); ++ g_free (group); ++ goto out; ++ } + g_free (group); +- goto out; + } +- g_free (group); + + ret = polkit_unix_user_new (uid); + } +@@ -373,29 +517,46 @@ + + if (POLKIT_IS_UNIX_PROCESS (subject)) + { +- const gchar *session_id; +- GVariant *result; +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.ConsoleKit", +- "/org/freedesktop/ConsoleKit/Manager", +- "org.freedesktop.ConsoleKit.Manager", +- "GetSessionForUnixProcess", +- g_variant_new ("(u)", polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject))), +- G_VARIANT_TYPE ("(o)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(&o)", &session_id); +- session = polkit_unix_session_new (session_id); +- g_variant_unref (result); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ gchar *session_id; ++ pid_t pid; ++ ++ pid = polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject)); ++ if (sd_pid_get_session (pid, &session_id) < 0) ++ goto out; ++ ++ session = polkit_unix_session_new (session_id); ++ free (session_id); ++ } ++ else ++#endif ++ { ++ const gchar *session_id; ++ GVariant *result; ++ result = g_dbus_connection_call_sync (monitor->system_bus, ++ "org.freedesktop.ConsoleKit", ++ "/org/freedesktop/ConsoleKit/Manager", ++ "org.freedesktop.ConsoleKit.Manager", ++ "GetSessionForUnixProcess", ++ g_variant_new ("(u)", polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject))), ++ G_VARIANT_TYPE ("(o)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, /* timeout_msec */ ++ NULL, /* GCancellable */ ++ error); ++ if (result == NULL) ++ goto out; ++ g_variant_get (result, "(&o)", &session_id); ++ session = polkit_unix_session_new (session_id); ++ g_variant_unref (result); ++ } + } + else if (POLKIT_IS_SYSTEM_BUS_NAME (subject)) + { + guint32 pid; +- const gchar *session_id; ++ gchar *session_id; + GVariant *result; + + result = g_dbus_connection_call_sync (monitor->system_bus, +@@ -414,22 +575,35 @@ + g_variant_get (result, "(u)", &pid); + g_variant_unref (result); + +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.ConsoleKit", +- "/org/freedesktop/ConsoleKit/Manager", +- "org.freedesktop.ConsoleKit.Manager", +- "GetSessionForUnixProcess", +- g_variant_new ("(u)", pid), +- G_VARIANT_TYPE ("(o)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(&o)", &session_id); +- session = polkit_unix_session_new (session_id); +- g_variant_unref (result); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ if (sd_pid_get_session (pid, &session_id) < 0) ++ goto out; ++ ++ session = polkit_unix_session_new (session_id); ++ free (session_id); ++ } ++ else ++#endif ++ { ++ result = g_dbus_connection_call_sync (monitor->system_bus, ++ "org.freedesktop.ConsoleKit", ++ "/org/freedesktop/ConsoleKit/Manager", ++ "org.freedesktop.ConsoleKit.Manager", ++ "GetSessionForUnixProcess", ++ g_variant_new ("(u)", pid), ++ G_VARIANT_TYPE ("(o)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, /* timeout_msec */ ++ NULL, /* GCancellable */ ++ error); ++ if (result == NULL) ++ goto out; ++ g_variant_get (result, "(&o)", &session_id); ++ session = polkit_unix_session_new (session_id); ++ g_variant_unref (result); ++ } + } + else + { +@@ -490,7 +664,22 @@ + polkit_backend_session_monitor_is_session_local (PolkitBackendSessionMonitor *monitor, + PolkitSubject *session) + { +- return get_boolean (monitor, session, "is_local"); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ char *seat; ++ ++ if (!sd_session_get_seat (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session)), &seat)) ++ { ++ free (seat); ++ return TRUE; ++ } ++ ++ return FALSE; ++ } ++ else ++#endif ++ return get_boolean (monitor, session, "is_local"); + } + + +@@ -498,6 +687,11 @@ + polkit_backend_session_monitor_is_session_active (PolkitBackendSessionMonitor *monitor, + PolkitSubject *session) + { +- return get_boolean (monitor, session, "is_active"); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ return sd_session_is_active (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session))); ++ else ++#endif ++ return get_boolean (monitor, session, "is_active"); + } + +diff -u -rN polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor-systemd.c polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor-systemd.c +--- polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor-systemd.c 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor-systemd.c 1970-01-01 01:00:00.000000000 +0100 +@@ -1,414 +0,0 @@ +-/* +- * Copyright (C) 2011 Red Hat, Inc. +- * +- * This library is free software; you can redistribute it and/or +- * modify it under the terms of the GNU Lesser General Public +- * License as published by the Free Software Foundation; either +- * version 2 of the License, or (at your option) any later version. +- * +- * This library is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- * Lesser General Public License for more details. +- * +- * You should have received a copy of the GNU Lesser General +- * Public License along with this library; if not, write to the +- * Free Software Foundation, Inc., 59 Temple Place, Suite 330, +- * Boston, MA 02111-1307, USA. +- * +- * Author: Matthias Clasen +- */ +- +-#include "config.h" +-#include <errno.h> +-#include <pwd.h> +-#include <grp.h> +-#include <string.h> +-#include <glib/gstdio.h> +-#include <systemd/sd-login.h> +-#include <stdlib.h> +- +-#include <polkit/polkit.h> +-#include "polkitbackendsessionmonitor.h" +- +-/* <internal> +- * SECTION:polkitbackendsessionmonitor +- * @title: PolkitBackendSessionMonitor +- * @short_description: Monitor sessions +- * +- * The #PolkitBackendSessionMonitor class is a utility class to track and monitor sessions. +- */ +- +-typedef struct +-{ +- GSource source; +- GPollFD pollfd; +- sd_login_monitor *monitor; +-} SdSource; +- +-static gboolean +-sd_source_prepare (GSource *source, +- gint *timeout) +-{ +- *timeout = -1; +- return FALSE; +-} +- +-static gboolean +-sd_source_check (GSource *source) +-{ +- SdSource *sd_source = (SdSource *)source; +- +- return sd_source->pollfd.revents != 0; +-} +- +-static gboolean +-sd_source_dispatch (GSource *source, +- GSourceFunc callback, +- gpointer user_data) +- +-{ +- SdSource *sd_source = (SdSource *)source; +- gboolean ret; +- +- g_warn_if_fail (callback != NULL); +- +- ret = (*callback) (user_data); +- +- sd_login_monitor_flush (sd_source->monitor); +- +- return ret; +-} +- +-static void +-sd_source_finalize (GSource *source) +-{ +- SdSource *sd_source = (SdSource*)source; +- +- sd_login_monitor_unref (sd_source->monitor); +-} +- +-static GSourceFuncs sd_source_funcs = { +- sd_source_prepare, +- sd_source_check, +- sd_source_dispatch, +- sd_source_finalize +-}; +- +-static GSource * +-sd_source_new (void) +-{ +- GSource *source; +- SdSource *sd_source; +- int ret; +- +- source = g_source_new (&sd_source_funcs, sizeof (SdSource)); +- sd_source = (SdSource *)source; +- +- if ((ret = sd_login_monitor_new (NULL, &sd_source->monitor)) < 0) +- { +- g_printerr ("Error getting login monitor: %d", ret); +- } +- else +- { +- sd_source->pollfd.fd = sd_login_monitor_get_fd (sd_source->monitor); +- sd_source->pollfd.events = G_IO_IN; +- g_source_add_poll (source, &sd_source->pollfd); +- } +- +- return source; +-} +- +-struct _PolkitBackendSessionMonitor +-{ +- GObject parent_instance; +- +- GDBusConnection *system_bus; +- +- GSource *sd_source; +-}; +- +-struct _PolkitBackendSessionMonitorClass +-{ +- GObjectClass parent_class; +- +- void (*changed) (PolkitBackendSessionMonitor *monitor); +-}; +- +- +-enum +-{ +- CHANGED_SIGNAL, +- LAST_SIGNAL, +-}; +- +-static guint signals[LAST_SIGNAL] = {0}; +- +-G_DEFINE_TYPE (PolkitBackendSessionMonitor, polkit_backend_session_monitor, G_TYPE_OBJECT); +- +-/* ---------------------------------------------------------------------------------------------------- */ +- +-static gboolean +-sessions_changed (gpointer user_data) +-{ +- PolkitBackendSessionMonitor *monitor = POLKIT_BACKEND_SESSION_MONITOR (user_data); +- +- g_signal_emit (monitor, signals[CHANGED_SIGNAL], 0); +- +- return TRUE; +-} +- +- +-static void +-polkit_backend_session_monitor_init (PolkitBackendSessionMonitor *monitor) +-{ +- GError *error; +- +- error = NULL; +- monitor->system_bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, &error); +- if (monitor->system_bus == NULL) +- { +- g_printerr ("Error getting system bus: %s", error->message); +- g_error_free (error); +- } +- +- monitor->sd_source = sd_source_new (); +- g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); +- g_source_attach (monitor->sd_source, NULL); +-} +- +-static void +-polkit_backend_session_monitor_finalize (GObject *object) +-{ +- PolkitBackendSessionMonitor *monitor = POLKIT_BACKEND_SESSION_MONITOR (object); +- +- if (monitor->system_bus != NULL) +- g_object_unref (monitor->system_bus); +- +- if (monitor->sd_source != NULL) +- { +- g_source_destroy (monitor->sd_source); +- g_source_unref (monitor->sd_source); +- } +- +- if (G_OBJECT_CLASS (polkit_backend_session_monitor_parent_class)->finalize != NULL) +- G_OBJECT_CLASS (polkit_backend_session_monitor_parent_class)->finalize (object); +-} +- +-static void +-polkit_backend_session_monitor_class_init (PolkitBackendSessionMonitorClass *klass) +-{ +- GObjectClass *gobject_class; +- +- gobject_class = G_OBJECT_CLASS (klass); +- +- gobject_class->finalize = polkit_backend_session_monitor_finalize; +- +- /** +- * PolkitBackendSessionMonitor::changed: +- * @monitor: A #PolkitBackendSessionMonitor +- * +- * Emitted when something changes. +- */ +- signals[CHANGED_SIGNAL] = g_signal_new ("changed", +- POLKIT_BACKEND_TYPE_SESSION_MONITOR, +- G_SIGNAL_RUN_LAST, +- G_STRUCT_OFFSET (PolkitBackendSessionMonitorClass, changed), +- NULL, /* accumulator */ +- NULL, /* accumulator data */ +- g_cclosure_marshal_VOID__VOID, +- G_TYPE_NONE, +- 0); +-} +- +-PolkitBackendSessionMonitor * +-polkit_backend_session_monitor_new (void) +-{ +- PolkitBackendSessionMonitor *monitor; +- +- monitor = POLKIT_BACKEND_SESSION_MONITOR (g_object_new (POLKIT_BACKEND_TYPE_SESSION_MONITOR, NULL)); +- +- return monitor; +-} +- +-/* ---------------------------------------------------------------------------------------------------- */ +- +-GList * +-polkit_backend_session_monitor_get_sessions (PolkitBackendSessionMonitor *monitor) +-{ +- /* TODO */ +- return NULL; +-} +- +-/* ---------------------------------------------------------------------------------------------------- */ +- +-/** +- * polkit_backend_session_monitor_get_user: +- * @monitor: A #PolkitBackendSessionMonitor. +- * @subject: A #PolkitSubject. +- * @error: Return location for error. +- * +- * Gets the user corresponding to @subject or %NULL if no user exists. +- * +- * Returns: %NULL if @error is set otherwise a #PolkitUnixUser that should be freed with g_object_unref(). +- */ +-PolkitIdentity * +-polkit_backend_session_monitor_get_user_for_subject (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *subject, +- GError **error) +-{ +- PolkitIdentity *ret; +- guint32 uid; +- +- ret = NULL; +- +- if (POLKIT_IS_UNIX_PROCESS (subject)) +- { +- uid = polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)); +- if ((gint) uid == -1) +- { +- g_set_error (error, +- POLKIT_ERROR, +- POLKIT_ERROR_FAILED, +- "Unix process subject does not have uid set"); +- goto out; +- } +- ret = polkit_unix_user_new (uid); +- } +- else if (POLKIT_IS_SYSTEM_BUS_NAME (subject)) +- { +- GVariant *result; +- +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.DBus", +- "/org/freedesktop/DBus", +- "org.freedesktop.DBus", +- "GetConnectionUnixUser", +- g_variant_new ("(s)", polkit_system_bus_name_get_name (POLKIT_SYSTEM_BUS_NAME (subject))), +- G_VARIANT_TYPE ("(u)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(u)", &uid); +- g_variant_unref (result); +- +- ret = polkit_unix_user_new (uid); +- } +- else if (POLKIT_IS_UNIX_SESSION (subject)) +- { +- +- if (sd_session_get_uid (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject)), &uid) < 0) +- { +- g_set_error (error, +- POLKIT_ERROR, +- POLKIT_ERROR_FAILED, +- "Error getting uid for session"); +- goto out; +- } +- +- ret = polkit_unix_user_new (uid); +- } +- +- out: +- return ret; +-} +- +-/** +- * polkit_backend_session_monitor_get_session_for_subject: +- * @monitor: A #PolkitBackendSessionMonitor. +- * @subject: A #PolkitSubject. +- * @error: Return location for error. +- * +- * Gets the session corresponding to @subject or %NULL if no session exists. +- * +- * Returns: %NULL if @error is set otherwise a #PolkitUnixSession that should be freed with g_object_unref(). +- */ +-PolkitSubject * +-polkit_backend_session_monitor_get_session_for_subject (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *subject, +- GError **error) +-{ +- PolkitSubject *session; +- +- session = NULL; +- +- if (POLKIT_IS_UNIX_PROCESS (subject)) +- { +- gchar *session_id; +- pid_t pid; +- +- pid = polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject)); +- if (sd_pid_get_session (pid, &session_id) < 0) +- goto out; +- +- session = polkit_unix_session_new (session_id); +- free (session_id); +- } +- else if (POLKIT_IS_SYSTEM_BUS_NAME (subject)) +- { +- guint32 pid; +- gchar *session_id; +- GVariant *result; +- +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.DBus", +- "/org/freedesktop/DBus", +- "org.freedesktop.DBus", +- "GetConnectionUnixProcessID", +- g_variant_new ("(s)", polkit_system_bus_name_get_name (POLKIT_SYSTEM_BUS_NAME (subject))), +- G_VARIANT_TYPE ("(u)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(u)", &pid); +- g_variant_unref (result); +- +- if (sd_pid_get_session (pid, &session_id) < 0) +- goto out; +- +- session = polkit_unix_session_new (session_id); +- free (session_id); +- } +- else +- { +- g_set_error (error, +- POLKIT_ERROR, +- POLKIT_ERROR_NOT_SUPPORTED, +- "Cannot get user for subject of type %s", +- g_type_name (G_TYPE_FROM_INSTANCE (subject))); +- } +- +- out: +- +- return session; +-} +- +-gboolean +-polkit_backend_session_monitor_is_session_local (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *session) +-{ +- char *seat; +- +- if (!sd_session_get_seat (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session)), &seat)) +- { +- free (seat); +- return TRUE; +- } +- +- return FALSE; +-} +- +- +-gboolean +-polkit_backend_session_monitor_is_session_active (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *session) +-{ +- return sd_session_is_active (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session))); +-} +- diff --git a/gnome-unstable/udisks2/PKGBUILD b/gnome-unstable/udisks2/PKGBUILD new file mode 100644 index 000000000..0bbf3c109 --- /dev/null +++ b/gnome-unstable/udisks2/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 152271 2012-03-06 12:56:19Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=udisks2 +pkgver=1.93.0 +pkgrel=1 +pkgdesc="Disk Management Service, version 2" +arch=('i686' 'x86_64') +url="http://www.freedesktop.org/wiki/Software/udisks" +license=('GPL2') +depends=('glib2' 'udev' 'polkit' 'libatasmart' 'eject') +makedepends=('intltool' 'docbook-xsl' 'gobject-introspection') +optdepends=('parted: partition management' + 'gptfdisk: GUID partition table support') +options=(!libtool) +source=(http://udisks.freedesktop.org/releases/udisks-$pkgver.tar.bz2) +sha256sums=('e2264d06bbf5399d243b0f91628881fa1d95d1a512b2af26f5ab074caf6327d7') + +build() { + cd "udisks-$pkgver" + ./configure --prefix=/usr --sysconfdir=/etc \ + --with-systemdsystemunitdir=/lib/systemd/system \ + --localstatedir=/var --disable-static + make +} + +package() { + cd "udisks-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/gnome-unstable/vala/PKGBUILD b/gnome-unstable/vala/PKGBUILD new file mode 100644 index 000000000..84d3cf5bd --- /dev/null +++ b/gnome-unstable/vala/PKGBUILD @@ -0,0 +1,27 @@ +# $Id: PKGBUILD 152291 2012-03-06 13:41:57Z ibiru $ +# Maintainer : Ionut Biru <ibiru@archlinux.org> +# Contributor: Timm Preetz <timm@preetz.us> + +pkgname=vala +pkgver=0.15.2 +pkgrel=1 +pkgdesc="Compiler for the GObject type system" +arch=('i686' 'x86_64') +url="http://live.gnome.org/Vala" +license=('LGPL') +depends=('glib2') +makedepends=('libxslt') +options=('!libtool') +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('1cc5d62714c2e4297cb458d11372f581f0e65070ed3b0e88133ce3db0cfee13c') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr --enable-vapigen + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/libre/liferea-libre/PKGBUILD b/libre/liferea-libre/PKGBUILD index 8ee55b4ba..b3ee94095 100644 --- a/libre/liferea-libre/PKGBUILD +++ b/libre/liferea-libre/PKGBUILD @@ -1,10 +1,11 @@ -# $Id$ +# $Id: PKGBUILD 144935 2011-12-11 03:21:39Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> -# Contributor: bitlord +# Contributor (Parabola): bitlord +# Contributor (Parabola): André Silva <andre.paulista@adinet.com.uy> pkgbasename=liferea pkgname=liferea-libre -pkgver=1.6.6b +pkgver=1.8.1b pkgrel=1 pkgdesc="A desktop news aggregator for online news feeds and weblogs" arch=('i686' 'x86_64') @@ -13,35 +14,18 @@ provides=("liferea=$pkgver") replaces=('liferea') conflicts=('liferea') license=('GPL') -depends=('gconf' 'libwebkit' 'libxslt' 'libglade' 'sqlite3' 'hicolor-icon-theme') -makedepends=('pkg-config' 'intltool' 'lua' 'libnotify') -optdepends=('lua: for lua scripting support' - 'libnotify: for notification support') +depends=('gconf' 'libwebkit' 'libnotify' 'libunique' 'json-glib' 'hicolor-icon-theme') +makedepends=('intltool') options=('!libtool' '!emptydirs') install=liferea.install -source=(http://repo.parabolagnulinux.org/other/$pkgname-$pkgver.tar.gz - libnotify-0.7.patch +source=(http://downloads.sourceforge.net/sourceforge/liferea/liferea-${pkgver}.tar.gz remove-non-free-suggestions.patch) -md5sums=('3e6a113a30f8d813c3a7ece4691d5afe' - 'fca97e3316c1c51e0179c4c7dcce47a2' - 'e138b67a6bc62d4ba0eb64b781105bf0') - -# source PKGBUILD ; mksource -mksource() { - wget http://downloads.sourceforge.net/sourceforge/liferea/liferea-${pkgver}.tar.gz \ - -O - | tar xzf - - - pushd liferea-$pkgver >/dev/null - patch -Np1 -i "../remove-non-free-suggestions.patch" || return 1 - popd >/dev/null - - tar cvzf $pkgname-$pkgver.tar.gz liferea-$pkgver/ - rm -rvf liferea-$pkgver/ -} +md5sums=('70f27bfda41ff5b3b4e49c49c9dc88af' + 'e2fdcbc485ce6ff7956c8527be152ca6') build() { cd "${srcdir}/liferea-${pkgver}" - patch -Np1 -i "$srcdir/libnotify-0.7.patch" + patch -Np1 -i "$srcdir/remove-non-free-suggestions.patch" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --disable-schemas-install make } diff --git a/libre/liferea-libre/remove-non-free-suggestions.patch b/libre/liferea-libre/remove-non-free-suggestions.patch index 8d1809122..325017567 100644 --- a/libre/liferea-libre/remove-non-free-suggestions.patch +++ b/libre/liferea-libre/remove-non-free-suggestions.patch @@ -1,6 +1,6 @@ ---- liferea-1.6.6b/src/ui/ui_prefs.c_orig 2011-06-23 01:33:39.761555322 +0200 -+++ liferea-1.6.6b/src/ui/ui_prefs.c 2011-06-23 01:38:02.121556890 +0200 -@@ -76,24 +76,10 @@ +--- liferea-1.8.0/src/browser.c_orig 2011-11-28 19:50:57.000000000 -0200 ++++ liferea-1.8.0/src/browser.c 2012-03-07 14:49:31.862987204 -0200 +@@ -35,24 +35,16 @@ NULL, NULL }, { @@ -9,8 +9,12 @@ - NULL, "mozilla -remote openURL(%s)", - NULL, "mozilla -remote 'openURL(%s,new-window)'", - NULL, "mozilla -remote 'openURL(%s,new-tab)'" -- }, -- { ++ "iceweasel", "Iceweasel", "iceweasel %s", ++ NULL, "iceweasel \"%s\"", ++ NULL, "iceweasel -new-window \"%s\"", ++ NULL, "iceweasel -new-tab \"%s\"" + }, + { - /* tested with Firefox 1.5 and 2.0 */ - "firefox", "Firefox","firefox \"%s\"", - NULL, "firefox -a firefox -remote \"openURL(%s)\"", @@ -22,10 +26,10 @@ - "opera \"%s\"", "opera -remote \"openURL(%s)\"", - "opera -newwindow \"%s\"", NULL, - "opera -newpage \"%s\"", NULL -+ "icecat", "IceCat","icecat \"%s\"", -+ NULL, "icecat -a icecat -remote \"openURL(%s)\"", -+ NULL, "icecat -a icecat -remote 'openURL(%s,new-window)'", -+ NULL, "icecat -a icecat -remote 'openURL(%s,new-tab)'" ++ "icecat", "Icecat", "icecat %s", ++ NULL, "icecat \"%s\"", ++ NULL, "icecat -new-window \"%s\"", ++ NULL, "icecat -new-tab \"%s\"" }, { "epiphany", "Epiphany","epiphany \"%s\"", diff --git a/libre/mplayer-libre/.directory b/libre/mplayer-libre/.directory new file mode 100644 index 000000000..724f09760 --- /dev/null +++ b/libre/mplayer-libre/.directory @@ -0,0 +1,2 @@ +[Dolphin] +Timestamp=2012,3,7,11,33,38 diff --git a/libre/mplayer-libre/PKGBUILD b/libre/mplayer-libre/PKGBUILD index 3ca302e09..22142fa75 100644 --- a/libre/mplayer-libre/PKGBUILD +++ b/libre/mplayer-libre/PKGBUILD @@ -1,43 +1,49 @@ -# $Id: PKGBUILD 134009 2011-07-31 18:23:34Z ibiru $ +# $Id: PKGBUILD 152227 2012-03-05 09:38:48Z ibiru $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Hugo Doria <hugo@archlinux.org> +# Contributor (Parabola): André Silva <andre.paulista@adinet.com.uy> # libvdpau is currently useful only with proprietary software _pkgbase=mplayer pkgbase=mplayer-libre pkgname=('mplayer-libre' 'mencoder-libre') -pkgver=34426 -pkgrel=3 +pkgver=34799 +pkgrel=2 arch=('i686' 'x86_64') makedepends=('libxxf86dga' 'libxxf86vm' 'libmad' 'cdparanoia' 'libxinerama' 'sdl' 'lame' 'libtheora' 'xvidcore' 'libmng' 'libxss' 'libgl' 'smbclient' -'aalib' 'jack' 'libcaca' 'x264' 'faad2' 'lirc-utils' 'libxvmc' 'enca' 'opencore-amr' 'libdca' 'a52dec' 'schroedinger' 'libvpx' 'speex' -'libpulse' 'fribidi' 'unzip-libre' 'mesa' 'live-media' 'yasm' 'git' 'fontconfig' 'mpg123' 'ladspa' 'libass' 'libbluray') +'aalib' 'jack' 'libcaca' 'x264' 'faad2' 'lirc-utils' 'libxvmc' 'enca' 'libvdpau' 'opencore-amr' 'libdca' 'a52dec' 'schroedinger' 'libvpx' +'libpulse' 'fribidi' 'unzip-libre' 'mesa' 'live-media' 'yasm' 'git' 'fontconfig' 'mpg123' 'ladspa' 'libass' 'libbluray' 'libcdio') license=('GPL') url="http://www.mplayerhq.hu/" options=(!buildflags !emptydirs) -source=(ftp://ftp.archlinux.org/other/${_pkgbase}/${_pkgbase}-${pkgver}.tar.xz mplayer.desktop) -md5sums=('ff81117293e76b59e54debc439d8e612' - 'c0d6ef795cf6de48e3b87ff7c23f0319') +source=(ftp://ftp.archlinux.org/other/$_pkgbase/$_pkgbase-$pkgver.tar.xz mplayer.desktop + live-media.patch) +md5sums=('e8bd960bcdb48fdc5a1f45390dc13c53' + 'c0d6ef795cf6de48e3b87ff7c23f0319' + 'b6c057633ff7001ee0c102b5f81ec1e3') build() { - cd ${srcdir}/${_pkgbase} + cd "$srcdir/$_pkgbase" + + patch -Np0 -i "$srcdir/live-media.patch" ./configure --prefix=/usr \ --enable-runtime-cpudetection \ --disable-gui \ --disable-arts \ --disable-liblzo \ - --enable-speex \ + --disable-speex \ --disable-openal \ --disable-libdv \ --disable-musepack \ --disable-esd \ --disable-mga \ --disable-ass-internal \ - --disable-vdpau \ + --disable-cdparanoia \ --enable-xvmc \ --enable-radio \ + --enable-radio-capture \ --language=all \ --confdir=/etc/mplayer [ "$CARCH" = "i686" ] && sed 's|-march=i486|-march=i686|g' -i config.mak @@ -46,39 +52,37 @@ build() { } package_mplayer-libre() { - pkgdesc="A movie player for linux (no unfree faac support)" + pkgdesc="A movie player for GNU/Linux (no unfree faac support)" install=mplayer.install backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf') depends=('desktop-file-utils' 'ttf-dejavu' 'enca' 'libxss' 'a52dec' 'libvpx' 'lirc-utils' 'x264' 'libmng' 'libdca' 'aalib' 'lame' 'fontconfig' 'libgl' - 'libxinerama' 'libpulse' 'smbclient' 'xvidcore' 'opencore-amr' 'jack' 'cdparanoia' 'libmad' 'sdl' 'libtheora' 'libcaca' 'libxxf86dga' 'fribidi' - 'libjpeg' 'faad2' 'libxvmc' 'schroedinger' 'mpg123' 'libass' 'libxxf86vm' 'libbluray') + 'libxinerama' 'libvdpau' 'libpulse' 'smbclient' 'xvidcore' 'opencore-amr' 'jack' 'cdparanoia' 'libmad' 'sdl' 'libtheora' 'libcaca' 'libxxf86dga' 'fribidi' + 'libjpeg' 'faad2' 'libxvmc' 'schroedinger' 'mpg123' 'libass' 'libxxf86vm' 'libbluray' 'libcdio') provides=("mplayer=$pkgver") replaces=('mplayer') conflicts=('mplayer') - cd "${srcdir}/${_pkgbase}" + cd "$srcdir/$_pkgbase" - make DESTDIR="${pkgdir}" install-mplayer install-mplayer-man - install -Dm644 etc/{codecs.conf,input.conf,example.conf} "${pkgdir}/etc/mplayer/" - install -dm755 "${pkgdir}/usr/share/mplayer/" - ln -s /usr/share/fonts/TTF/DejaVuSans.ttf "${pkgdir}/usr/share/mplayer/subfont.ttf" - rm -rf "${pkgdir}/usr/share/mplayer/font" + make DESTDIR="$pkgdir" install-mplayer install-mplayer-man + install -Dm644 etc/{codecs.conf,input.conf,example.conf} "$pkgdir/etc/mplayer/" + install -dm755 "$pkgdir/usr/share/mplayer/" + ln -s /usr/share/fonts/TTF/DejaVuSans.ttf "$pkgdir/usr/share/mplayer/subfont.ttf" + rm -rf "$pkgdir/usr/share/mplayer/font" #desktop file FS#14770 - install -Dm644 "${srcdir}/mplayer.desktop" "${pkgdir}/usr/share/applications/mplayer.desktop" - install -Dm644 etc/mplayer.png "${pkgdir}/usr/share/pixmaps/mplayer.png" + install -Dm644 "$srcdir/mplayer.desktop" "$pkgdir/usr/share/applications/mplayer.desktop" + install -Dm644 etc/mplayer256x256.png "$pkgdir/usr/share/pixmaps/mplayer.png" } package_mencoder-libre() { pkgdesc="Free command line video decoding, encoding and filtering tool (without unfree faac support)" depends=('enca' 'a52dec' 'libvpx' 'x264' 'libmng' 'libdca' 'bzip2' 'lame' 'alsa-lib' 'fontconfig' 'giflib' 'libpng' 'smbclient' 'xvidcore' 'opencore-amr' 'cdparanoia' - 'libmad' 'libtheora' 'fribidi' 'libjpeg' 'faad2' 'schroedinger' 'mpg123' 'libass' 'libbluray') + 'libmad' 'libtheora' 'fribidi' 'libjpeg' 'faad2' 'schroedinger' 'mpg123' 'libass' 'libbluray' 'libcdio') provides=("mencoder=$pkgver") replaces=('mencoder') conflicts=('mencoder') - cd "${srcdir}/${_pkgbase}" - make DESTDIR="${pkgdir}" install-mencoder install-mencoder-man + cd "$srcdir/$_pkgbase" + make DESTDIR="$pkgdir" install-mencoder install-mencoder-man find "$pkgdir/usr/share/man" -name 'mplayer.1' -exec bash -c 'mv "$1" "${1/mplayer/mencoder}"' _ {} \; } -md5sums=('ff81117293e76b59e54debc439d8e612' - '647b9f4ab5284a7fef3f84f992214e77') diff --git a/libre/mplayer-libre/live-media.patch b/libre/mplayer-libre/live-media.patch new file mode 100644 index 000000000..b704b5381 --- /dev/null +++ b/libre/mplayer-libre/live-media.patch @@ -0,0 +1,13 @@ +Index: libmpdemux/demux_rtp.cpp +=================================================================== +--- libmpdemux/demux_rtp.cpp (revision 34798) ++++ libmpdemux/demux_rtp.cpp (working copy) +@@ -19,6 +19,8 @@ + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + ++#define RTSPCLIENT_SYNCHRONOUS_INTERFACE 1 ++ + extern "C" { + // on MinGW, we must include windows.h before the things it conflicts + #ifdef __MINGW32__ // with. they are each protected from diff --git a/libre/mplayer-libre/mplayer.desktop b/libre/mplayer-libre/mplayer.desktop index e3229d042..07acea13f 100644 --- a/libre/mplayer-libre/mplayer.desktop +++ b/libre/mplayer-libre/mplayer.desktop @@ -14,7 +14,7 @@ Comment[zh]=多媒体播放器 Comment[pl]=Odtwarzaj filmy i muzykę Icon=mplayer TryExec=mplayer -Exec=mplayer -really-quiet %F +Exec=mplayer %F Terminal=false NoDisplay=true Categories=GTK;AudioVideo;Audio;Video;Player;TV; diff --git a/libre/mplayer-libre/mplayer.install b/libre/mplayer-libre/mplayer.install index f98ba7338..660593cf5 100644 --- a/libre/mplayer-libre/mplayer.install +++ b/libre/mplayer-libre/mplayer.install @@ -3,9 +3,9 @@ post_install() { } post_upgrade() { - post_install $1 + post_install } post_remove() { - post_install $1 + post_install } diff --git a/staging/kdenetwork/PKGBUILD b/staging/kdenetwork/PKGBUILD index 5e4792e8a..5bd26e0ec 100644 --- a/staging/kdenetwork/PKGBUILD +++ b/staging/kdenetwork/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 152096 2012-03-04 14:57:47Z andrea $ +# $Id: PKGBUILD 152431 2012-03-06 21:03:24Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> @@ -11,7 +11,7 @@ pkgname=('kdenetwork-filesharing' 'kdenetwork-krdc' 'kdenetwork-krfb') pkgver=4.8.1 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url='http://www.kde.org' license=('GPL' 'LGPL' 'FDL') @@ -20,7 +20,7 @@ makedepends=('cmake' 'automoc4' 'boost' 'speex' 'ortp' 'libotr' 'ppp' 'qca-ossl' 'kdebase-workspace' 'kdebase-lib' 'libvncserver' 'libmsn' 'v4l-utils' 'libidn' 'rdesktop' 'qimageblitz' 'libxdamage' 'libgadu' 'libktorrent' 'libmms' 'mediastreamer') -source=("http://download.kde.org/stable/${pkgver}/src/xz/${pkgbase}-${pkgver}.tar.xz") +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.xz") sha1sums=('e914a1d990ff42ec88cf37ffc897ae9df9b1fa45') build() { diff --git a/staging/kdepim/PKGBUILD b/staging/kdepim/PKGBUILD index 4fb0847eb..2e5a27241 100644 --- a/staging/kdepim/PKGBUILD +++ b/staging/kdepim/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 152097 2012-03-04 14:58:51Z andrea $ +# $Id: PKGBUILD 152421 2012-03-06 19:04:36Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> @@ -20,15 +20,15 @@ pkgname=('kdepim-akonadiconsole' 'kdepim-ktimetracker' 'kdepim-libkdepim') pkgver=4.8.1 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url='http://pim.kde.org' license=('GPL' 'LGPL' 'FDL') groups=('kde' 'kdepim') makedepends=('cmake' 'automoc4' 'boost' 'kdepim-runtime' 'libxss' 'pilot-link' 'kde-agent') -source=("http://download.kde.org/stable/${pkgver}/src/xz/${pkgbase}-${pkgver}.tar.xz") -sha1sums=('7f687b039a98e6e77e908e698f0c0480defeba04') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.xz") +sha1sums=('93222d56f9adde015cb202a1ad3b194ac52e6bda') build() { cd "${srcdir}" diff --git a/testing/bluez/PKGBUILD b/testing/bluez/PKGBUILD index 7dda003a4..7d3835488 100644 --- a/testing/bluez/PKGBUILD +++ b/testing/bluez/PKGBUILD @@ -1,41 +1,36 @@ -# $Id: PKGBUILD 150304 2012-02-16 20:41:28Z heftig $ -# Maintainer: +# $Id: PKGBUILD 152440 2012-03-06 23:09:43Z tomegun $ +# Maintainer: Tom Gundersen <teg@jklm.no> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Geoffroy Carrier <geoffroy@archlinux.org> pkgname=bluez -pkgver=4.98 -pkgrel=3 +pkgver=4.99 +pkgrel=1 pkgdesc="Libraries and tools for the Bluetooth protocol stack" url="http://www.bluez.org/" arch=('i686' 'x86_64') license=('GPL2') -depends=('dbus-core') +depends=('dbus-core' 'python2' 'udev') makedepends=('gstreamer0.10-base' 'libusb-compat' 'libsndfile') optdepends=("gstreamer0.10-base: bluetooth GStreamer support" - "alsa-lib: Audio bluetooth devices support" - "dbus-python: to run bluez-simple-agent" - "pygobject: to run bluez-simple-agent" - "libusb-compat: USB adapters support" - "cups: CUPS backend") + "alsa-lib: Audio bluetooth devices support" + "dbus-python: to run bluez-simple-agent" + "pygobject: to run bluez-simple-agent" + "libusb-compat: USB adapters support" + "cups: CUPS backend") conflicts=('bluez-libs' 'bluez-utils') provides=('bluez-libs' 'bluez-utils') replaces=('bluez-libs' 'bluez-utils') -options=('!libtool' 'emptydirs') +options=('!libtool') backup=(etc/bluetooth/{main,rfcomm,audio,network,input,serial}.conf 'etc/conf.d/bluetooth' 'etc/dbus-1/system.d/bluetooth.conf') source=("http://www.kernel.org/pub/linux/bluetooth/${pkgname}-${pkgver}.tar.bz2" - 'bluetooth.conf.d' 'rc.bluetooth' 'fix-a2dp.patch') -md5sums=('4aca8a0929250212e9a75fb60dd75b05' - '7412982b440f29fa7f76a41a87fef985' - '8f9498707f809506928b2e480d3b6789' - 'd6a34317e56b7c2bd990791d89d6c3cb') + 'bluetooth.conf.d' + 'rc.bluetooth') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/fix-a2dp.patch" - ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ @@ -84,3 +79,6 @@ package() { # http://mailman.archlinux.org/pipermail/arch-general/2011-April/019787.html rm "${pkgdir}"/lib/udev/rules.d/97-bluetooth.rules } +md5sums=('2387053eb5a7b02f37df4871df022a02' + '7412982b440f29fa7f76a41a87fef985' + '8f9498707f809506928b2e480d3b6789') diff --git a/testing/icedtea-web-java7/PKGBUILD b/testing/icedtea-web-java7/PKGBUILD new file mode 100644 index 000000000..b12233bbb --- /dev/null +++ b/testing/icedtea-web-java7/PKGBUILD @@ -0,0 +1,80 @@ +# $Id: PKGBUILD 136836 2011-09-02 07:59:01Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgbase=icedtea-web-java7 +pkgname=('icedtea-web-java7' 'icedtea-web-java7-doc') +pkgver=1.2 +pkgrel=1 +arch=('i686' 'x86_64') +url="http://icedtea.classpath.org/wiki/IcedTea-Web" +license=('GPL2') +makedepends=('jdk7-openjdk' 'zip' 'gtk2' 'libxtst' 'npapi-sdk' 'rhino' 'junit') +source=(http://icedtea.classpath.org/download/source/${pkgbase/-java7/}-$pkgver.tar.gz) +sha256sums=('3f8d22b655df207409dd3451ba02907f61a12ac051e4df4d44bb5ed47c4f778d') + +_javaver=7 +_jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk + +build() { + cd "${srcdir}"/icedtea-web* + + . /etc/profile.d/jre.sh + . /etc/profile.d/jdk.sh + + ./configure --prefix=${_jvmdir} \ + --datarootdir=/usr/share \ + --with-jdk-home=${_jvmdir} + make +} + +check() { + cd "${srcdir}"/icedtea-web* + # as more tests have been added some are expectged to fail + # see http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2012-March/017566.html + make -k check || /bin/true +} + + +package_icedtea-web-java7() { + + pkgdesc="provides a Free Software web browser plugin running applets written in the Java programming language and an implementation of Java Web Start, originally based on the NetX project" + depends=('jre7-openjdk' 'gtk2' 'desktop-file-utils') + install=${pkgname}.install + + cd "${srcdir}"/icedtea-web* #${pkgname}-${_date}" + # possible make target (see bottom of Makefile.am: install-exec-local install-data-local + make DESTDIR="${pkgdir}" install-exec-local install-data-local + + # Install desktop files. + install -m755 -d ${pkgdir}/usr/share/{applications,pixmaps} + install -m644 javaws.png ${pkgdir}/usr/share/pixmaps + install -m644 {javaws,itweb-settings}.desktop ${pkgdir}/usr/share/applications + # remove splitted doc files + rm -rf ${pkgdir}/usr/share/doc + + # link binaries into /usr/bin + jre/bin + install -m755 -d ${pkgdir}/usr/bin + install -m755 -d ${pkgdir}/${_jvmdir}/jre/bin + pushd ${pkgdir}/${_jvmdir}/bin + for file in *; do + ln -sf ${_jvmdir}/bin/${file} ${pkgdir}/usr/bin + ln -sf ${_jvmdir}/bin/${file} ${pkgdir}/${_jvmdir}/jre/bin + done + popd + + # link the mozilla-plugin - test it here http://www.java.com/en/download/help/testvm.xml + install -m755 -d ${pkgdir}/usr/lib/mozilla/plugins/ + ln -sf ${_jvmdir}/lib/IcedTeaPlugin.so ${pkgdir}/usr/lib/mozilla/plugins/ +} + +package_icedtea-web-java7-doc() { + + pkgdesc="icedtea-web browser plugin + Java WebStart - documentation files" + + cd "${srcdir}"/icedtea-web* + make DESTDIR="${pkgdir}" install-data-local + # remove javaws about and man page + rm -rf ${pkgdir}/usr/lib + rm -rf ${pkgdir}/usr/share/man + rm -rf ${pkgdir}/usr/share/icedtea-web # conflicting and unneeded file it seems +} diff --git a/testing/icedtea-web-java7/icedtea-web-java7.install b/testing/icedtea-web-java7/icedtea-web-java7.install new file mode 100644 index 000000000..80312d4a6 --- /dev/null +++ b/testing/icedtea-web-java7/icedtea-web-java7.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + update-desktop-database -q +} + +post_remove() { + update-desktop-database -q +} diff --git a/testing/icedtea-web/PKGBUILD b/testing/icedtea-web/PKGBUILD new file mode 100644 index 000000000..55be91977 --- /dev/null +++ b/testing/icedtea-web/PKGBUILD @@ -0,0 +1,75 @@ +# $Id: PKGBUILD 152425 2012-03-06 19:33:01Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgbase=icedtea-web +pkgname=('icedtea-web' 'icedtea-web-doc') +pkgver=1.2 +pkgrel=1 +arch=('i686' 'x86_64') +url="http://icedtea.classpath.org/wiki/IcedTea-Web" +license=('GPL2') +makedepends=('openjdk6' 'zip' 'gtk2' 'npapi-sdk' 'rhino' 'junit') +source=(http://icedtea.classpath.org/download/source/$pkgname-$pkgver.tar.gz) +sha256sums=('3f8d22b655df207409dd3451ba02907f61a12ac051e4df4d44bb5ed47c4f778d') + + _javaver=6 + _jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr/lib/jvm/java-6-openjdk \ + --datarootdir=/usr/share + make +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + # as more tests have been added some are expectged to fail + # see http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2012-March/017566.html + make -k check || /bin/true +} + + +package_icedtea-web() { + + pkgdesc="provides a Free Software web browser plugin running applets written in the Java programming language and an implementation of Java Web Start, originally based on the NetX project" + depends=('openjdk6' 'gtk2' 'desktop-file-utils') + install=$pkgname.install + + cd "$srcdir/$pkgname-$pkgver" + # possible make target (see bottom of Makefile.am: install-exec-local install-data-local + make DESTDIR="$pkgdir" install-exec-local install-data-local + + # Install desktop files. + install -m755 -d ${pkgdir}/usr/share/{applications,pixmaps} + install -m644 javaws.png ${pkgdir}/usr/share/pixmaps + install -m644 {javaws,itweb-settings}.desktop ${pkgdir}/usr/share/applications + # remove splitted doc files + rm -rf ${pkgdir}/usr/share/doc + + # link binaries into /usr/bin + jre/bin + install -m755 -d ${pkgdir}/usr/bin + install -m755 -d ${pkgdir}/${_jvmdir}/jre/bin + pushd ${pkgdir}/${_jvmdir}/bin + for file in *; do + ln -sf ${_jvmdir}/bin/${file} ${pkgdir}/usr/bin + ln -sf ${_jvmdir}/bin/${file} ${pkgdir}/${_jvmdir}/jre/bin + done + popd + + # link the mozilla-plugin - test it here http://www.java.com/en/download/help/testvm.xml + install -m755 -d ${pkgdir}/usr/lib/mozilla/plugins/ + ln -sf ${_jvmdir}/lib/IcedTeaPlugin.so ${pkgdir}/usr/lib/mozilla/plugins/ +} + +package_icedtea-web-doc() { + + pkgdesc="icedtea-web browser plugin + Java WebStart - documentation files" + + cd "$srcdir/$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install-data-local + # remove javaws about and man page + rm -rf ${pkgdir}/usr/lib + rm -rf ${pkgdir}/usr/share/man + rm -rf ${pkgdir}/usr/share/icedtea-web # conflicting and unneeded file it seems +} diff --git a/testing/icedtea-web/icedtea-web.install b/testing/icedtea-web/icedtea-web.install new file mode 100644 index 000000000..80312d4a6 --- /dev/null +++ b/testing/icedtea-web/icedtea-web.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + update-desktop-database -q +} + +post_remove() { + update-desktop-database -q +} |