summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Masłowski <mtjm@mtjm.eu>2012-10-23 15:47:38 +0200
committerMichał Masłowski <mtjm@mtjm.eu>2012-10-23 15:47:38 +0200
commit9b5c97532f512463af83f0daac1e9db22c3307c2 (patch)
tree582f514a154dea23be340cca8abe44a0bf95f132
parentf8ec57e91051f85129d837252605854c888567d0 (diff)
parent3c19af9355ba86a5b99d6e5a57ecaa68a7ea6e8e (diff)
Merge branch 'master' of ssh://parabolagnulinux.org:1863/home/parabola/abslibre-pre-mips64el
Conflicts: community-staging/cegui/PKGBUILD community-staging/darktable/PKGBUILD community-staging/freewrl/PKGBUILD community-staging/gource/PKGBUILD community-staging/openimageio/PKGBUILD community-staging/rss-glx/PKGBUILD community-staging/spring/PKGBUILD community-testing/virtualbox-modules/PKGBUILD community/astromenace/PKGBUILD extra/di/PKGBUILD staging/opencv/PKGBUILD testing/cairo/PKGBUILD testing/gnome-control-center/PKGBUILD testing/gtkmm3/PKGBUILD testing/seahorse/PKGBUILD testing/systemd/PKGBUILD testing/systemd/systemd.install
-rw-r--r--community-staging/devil/PKGBUILD38
-rw-r--r--community-staging/devil/devil.install11
-rw-r--r--community-staging/devil/libpng14.patch33
-rw-r--r--community-staging/supertux/PKGBUILD35
-rw-r--r--community-staging/supertux/supertux2-0.3.3-squirrel-gcc47.patch36
-rw-r--r--community-testing/activity-log-manager/PKGBUILD42
-rw-r--r--community-testing/activity-log-manager/activity-log-manager.install11
-rw-r--r--community-testing/espeakup/PKGBUILD31
-rw-r--r--community-testing/espeakup/espeakup43
-rw-r--r--community-testing/espeakup/espeakup.conf.d6
-rw-r--r--community-testing/espeakup/espeakup.service12
-rw-r--r--community-testing/gedit-plugins/PKGBUILD36
-rw-r--r--community-testing/gedit-plugins/gedit-plugins.install23
-rw-r--r--community-testing/gnome-packagekit/PKGBUILD43
-rw-r--r--community-testing/gnome-packagekit/gnome-packagekit.install19
-rw-r--r--community-testing/gnome-settings-daemon-updates/0001-power-and-media-keys-Use-logind-for-suspending-and-r.patch1473
-rw-r--r--community-testing/gnome-settings-daemon-updates/PKGBUILD52
-rw-r--r--community-testing/gnome-settings-daemon-updates/arch.patch325
-rw-r--r--community-testing/gnome-settings-daemon-updates/gnome-settings-daemon.install12
-rw-r--r--community-testing/gnome-settings-daemon-updates/screensaver.patch145
-rw-r--r--community-testing/gnote/PKGBUILD33
-rw-r--r--community-testing/gnote/gnote.install21
-rw-r--r--community-testing/zeitgeist-datahub/PKGBUILD29
-rw-r--r--community/astromenace/PKGBUILD55
-rw-r--r--community/bitcoin/PKGBUILD6
-rw-r--r--community/darkstat/PKGBUILD7
-rw-r--r--community/darkstat/darkstat.install9
-rw-r--r--community/darkstat/darkstat.service5
-rw-r--r--community/ejabberd/PKGBUILD5
-rw-r--r--community/grace/PKGBUILD8
-rw-r--r--community/grsync/PKGBUILD6
-rw-r--r--community/gsoap/PKGBUILD8
-rw-r--r--community/gummi/PKGBUILD16
-rw-r--r--community/libextractor/PKGBUILD12
-rw-r--r--community/libnet/PKGBUILD8
-rw-r--r--community/mariadb/PKGBUILD6
-rw-r--r--community/opensips/PKGBUILD4
-rw-r--r--community/qlandkartegt/PKGBUILD8
-rw-r--r--community/qlandkartegt/qlandkartegt.changelog3
-rw-r--r--community/spacefm/PKGBUILD6
-rw-r--r--community/torcs/PKGBUILD16
-rw-r--r--community/udevil/PKGBUILD6
-rw-r--r--community/unrealircd/PKGBUILD7
-rw-r--r--community/vifm/PKGBUILD6
-rw-r--r--community/vifm/vifm.changelog3
-rw-r--r--community/yaz/PKGBUILD8
-rw-r--r--extra/di/PKGBUILD10
-rw-r--r--extra/git/PKGBUILD8
-rw-r--r--extra/libkgapi/PKGBUILD11
-rw-r--r--libre/cdfs-libre/PKGBUILD2
-rw-r--r--libre/linux-libre-kmod-alx/PKGBUILD20
-rw-r--r--libre/linux-libre-lts-kmod-alx/PKGBUILD20
-rw-r--r--libre/linux-libre-lts/PKGBUILD17
-rw-r--r--libre/linux-libre-lts/linux-libre-lts.install2
-rw-r--r--libre/linux-libre-lts/module-init-wait-3.0.patch77
-rw-r--r--libre/linux-libre-lts/module-symbol-waiting-3.0.patch66
-rw-r--r--libre/linux-libre/PKGBUILD21
-rw-r--r--libre/linux-libre/config.i6867
-rw-r--r--libre/linux-libre/config.x86_647
-rw-r--r--libre/linux-libre/linux-libre.install2
-rw-r--r--libre/linux-libre/module-init-wait-3.6.patch77
-rw-r--r--libre/linux-libre/module-symbol-waiting-3.6.patch66
-rw-r--r--libre/lirc-libre/PKGBUILD2
-rw-r--r--libre/parabola-keyring/PKGBUILD6
-rw-r--r--libre/parabolaweb-utils/parabolaweb-fcgi4
-rw-r--r--libre/parabolaweb-utils/parabolaweb-update7
-rw-r--r--libre/parabolaweb-utils/parabolaweb.conf1
-rw-r--r--libre/parabolaweb-utils/parabolaweb.rc1
-rw-r--r--libre/parabolaweb-utils/parabolaweb.service3
-rw-r--r--libre/tp_smapi-libre-lts/PKGBUILD2
-rw-r--r--libre/tp_smapi-libre/PKGBUILD2
-rw-r--r--libre/vhba-module-libre/PKGBUILD2
-rw-r--r--libre/virtualbox-libre-modules-lts/PKGBUILD2
-rw-r--r--libre/virtualbox-libre-modules/PKGBUILD2
-rw-r--r--staging/emacs/PKGBUILD41
-rw-r--r--staging/emacs/emacs.install32
-rw-r--r--staging/gegl/gegl-0.2.0-ffmpeg-0.11.diff12
-rw-r--r--staging/obex-data-server/PKGBUILD28
-rw-r--r--staging/pstoedit/PKGBUILD34
-rw-r--r--staging/pstoedit/pstoedit-3.50-parallel.patch47
-rw-r--r--staging/pstoedit/pstoedit-3.50-plugin-close.patch14
-rw-r--r--testing/btrfs-progs/btrfs-progs.install9
-rw-r--r--testing/kmod/0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch165
-rw-r--r--testing/kmod/0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch33
-rw-r--r--testing/usermin/PKGBUILD134
-rw-r--r--testing/usermin/usermin-config.tar.bz2bin951 -> 0 bytes
-rw-r--r--testing/usermin/usermin.install34
-rw-r--r--testing/usermin/usermin.rc44
-rw-r--r--testing/usermin/usermin.service9
89 files changed, 491 insertions, 3319 deletions
diff --git a/community-staging/devil/PKGBUILD b/community-staging/devil/PKGBUILD
deleted file mode 100644
index f2ba5462d..000000000
--- a/community-staging/devil/PKGBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# $Id: PKGBUILD 78557 2012-10-20 21:46:36Z lcarlier $
-# Maintainer: Laurent Carlier <lordheavym@gmail.org>
-# Contributor: damir <damir@archlinux.org>
-# Contributor: TheHoff <forums>
-
-pkgname=devil
-pkgver=1.7.8
-pkgrel=14
-pkgdesc="Library for reading several different image formats"
-arch=('i686' 'x86_64')
-url="http://openil.sourceforge.net/"
-depends=('libpng' 'libmng' 'jasper' 'lcms' 'openexr')
-install=devil.install
-options=('!libtool' '!docs' '!emptydirs')
-license=('GPL')
-source=(http://downloads.sourceforge.net/openil/DevIL-$pkgver.tar.gz libpng14.patch)
-md5sums=('7918f215524589435e5ec2e8736d5e1d'
- '0f839ccefd43b0ee8b4b3f99806147fc')
-
-build() {
- cd ${srcdir}/devil-$pkgver
-
- patch -Np1 -i ${srcdir}/libpng14.patch
-
- if [[ $CARCH == x86_64 ]]; then
- ./configure --prefix=/usr --enable-ILU
- else
- ./configure --prefix=/usr --enable-ILU --disable-sse3
- fi
-
- make
-}
-
-package() {
- cd ${srcdir}/devil-$pkgver
-
- make prefix=${pkgdir}/usr install
-}
diff --git a/community-staging/devil/devil.install b/community-staging/devil/devil.install
deleted file mode 100644
index 8336ac3d1..000000000
--- a/community-staging/devil/devil.install
+++ /dev/null
@@ -1,11 +0,0 @@
-infodir=usr/share/info
-
-post_upgrade() {
- [ -x usr/bin/install-info ] || return 0
- install-info $infodir/DevIL_manual.info.gz $infodir/dir 2> /dev/null
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- install-info --delete $infodir/DevIL_manual.info.gz $infodir/dir 2> /dev/null
-}
diff --git a/community-staging/devil/libpng14.patch b/community-staging/devil/libpng14.patch
deleted file mode 100644
index b8434692b..000000000
--- a/community-staging/devil/libpng14.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff -Nur devil-1.7.8.orig/src-IL/src/il_icon.c devil-1.7.8/src-IL/src/il_icon.c
---- devil-1.7.8.orig/src-IL/src/il_icon.c 2009-03-08 09:10:09.000000000 +0200
-+++ devil-1.7.8/src-IL/src/il_icon.c 2010-01-17 00:54:09.000000000 +0200
-@@ -525,7 +525,7 @@
-
- // Expand low-bit-depth grayscale images to 8 bits
- if (ico_color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) {
-- png_set_gray_1_2_4_to_8(ico_png_ptr);
-+ png_set_expand_gray_1_2_4_to_8(ico_png_ptr);
- }
-
- // Expand RGB images with transparency to full alpha channels
-diff -Nur devil-1.7.8.orig/src-IL/src/il_png.c devil-1.7.8/src-IL/src/il_png.c
---- devil-1.7.8.orig/src-IL/src/il_png.c 2009-03-08 09:10:09.000000000 +0200
-+++ devil-1.7.8/src-IL/src/il_png.c 2010-01-17 00:55:26.000000000 +0200
-@@ -105,7 +105,7 @@
- Read = iread(Signature, 1, 8);
- iseek(-Read, IL_SEEK_CUR);
-
-- return png_check_sig(Signature, 8);
-+ return png_sig_cmp(Signature, 0, 8) == 0;
- }
-
-
-@@ -278,7 +278,7 @@
-
- // Expand low-bit-depth grayscale images to 8 bits
- if (png_color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) {
-- png_set_gray_1_2_4_to_8(png_ptr);
-+ png_set_expand_gray_1_2_4_to_8(png_ptr);
- }
-
- // Expand RGB images with transparency to full alpha channels
diff --git a/community-staging/supertux/PKGBUILD b/community-staging/supertux/PKGBUILD
deleted file mode 100644
index a8e7d7245..000000000
--- a/community-staging/supertux/PKGBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# $Id: PKGBUILD 78608 2012-10-22 02:52:34Z ebelanger $
-# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
-# Contributor: Eric Bélanger <eric@archlinux.org>
-# Contributor: vande198
-# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us>
-
-pkgname=supertux
-pkgver=0.3.3
-pkgrel=7
-pkgdesc="A classic 2D jump'n run sidescroller game in a style similar to the original SuperMario games"
-arch=('i686' 'x86_64')
-url="http://super-tux.sourceforge.net/"
-license=('GPL')
-depends=('sdl_image' 'curl' 'physfs' 'openal' 'libvorbis' 'glew')
-makedepends=('cmake' 'boost' 'mesa')
-source=(http://download.berlios.de/supertux/${pkgname}-${pkgver}.tar.bz2
- supertux2-0.3.3-squirrel-gcc47.patch)
-md5sums=('f3f803e629ee51a9de0b366a036e393d'
- 'eb06315514be4f200428f14b927beb66')
-
-build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- patch -p1 -i "${srcdir}/supertux2-0.3.3-squirrel-gcc47.patch"
- sed -i '1i#include <cstddef>' src/supertux/screen_manager.hpp
- sed -i '/types\.h/d' src/addon/addon_manager.cpp
- cmake -D CMAKE_INSTALL_PREFIX=/usr -D INSTALL_SUBDIR_BIN=bin .
- make
-}
-
-package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- make DESTDIR="${pkgdir}" install
-}
diff --git a/community-staging/supertux/supertux2-0.3.3-squirrel-gcc47.patch b/community-staging/supertux/supertux2-0.3.3-squirrel-gcc47.patch
deleted file mode 100644
index 16781b610..000000000
--- a/community-staging/supertux/supertux2-0.3.3-squirrel-gcc47.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -Naur supertux2-0.3.3.orig/external/squirrel/squirrel/sqmem.h supertux2-0.3.3/external/squirrel/squirrel/sqmem.h
---- supertux2-0.3.3.orig/external/squirrel/squirrel/sqmem.h 1970-01-01 01:00:00.000000000 +0100
-+++ supertux2-0.3.3/external/squirrel/squirrel/sqmem.h 2012-05-01 11:59:37.000000000 +0200
-@@ -0,0 +1,8 @@
-+/* see copyright notice in squirrel.h */
-+#ifndef _SQMEM_H_
-+#define _SQMEM_H_
-+
-+void *sq_vm_malloc(SQUnsignedInteger size);
-+void *sq_vm_realloc(void *p,SQUnsignedInteger oldsize,SQUnsignedInteger size);
-+void sq_vm_free(void *p,SQUnsignedInteger size);
-+#endif //_SQMEM_H_
-diff -Naur supertux2-0.3.3.orig/external/squirrel/squirrel/sqstate.h supertux2-0.3.3/external/squirrel/squirrel/sqstate.h
---- supertux2-0.3.3.orig/external/squirrel/squirrel/sqstate.h 2010-03-01 13:40:58.000000000 +0100
-+++ supertux2-0.3.3/external/squirrel/squirrel/sqstate.h 2012-05-01 11:59:37.000000000 +0200
-@@ -136,8 +136,4 @@
- extern SQObjectPtr _minusone_;
-
- bool CompileTypemask(SQIntVec &res,const SQChar *typemask);
--
--void *sq_vm_malloc(SQUnsignedInteger size);
--void *sq_vm_realloc(void *p,SQUnsignedInteger oldsize,SQUnsignedInteger size);
--void sq_vm_free(void *p,SQUnsignedInteger size);
- #endif //_SQSTATE_H_
-diff -Naur supertux2-0.3.3.orig/external/squirrel/squirrel/squtils.h supertux2-0.3.3/external/squirrel/squirrel/squtils.h
---- supertux2-0.3.3.orig/external/squirrel/squirrel/squtils.h 2010-03-01 13:40:58.000000000 +0100
-+++ supertux2-0.3.3/external/squirrel/squirrel/squtils.h 2012-05-01 11:59:37.000000000 +0200
-@@ -2,6 +2,8 @@
- #ifndef _SQUTILS_H_
- #define _SQUTILS_H_
-
-+#include "sqmem.h"
-+
- #define sq_new(__ptr,__type) {__ptr=(__type *)sq_vm_malloc(sizeof(__type));new (__ptr) __type;}
- #define sq_delete(__ptr,__type) {__ptr->~__type();sq_vm_free(__ptr,sizeof(__type));}
- #define SQ_MALLOC(__size) sq_vm_malloc((__size));
diff --git a/community-testing/activity-log-manager/PKGBUILD b/community-testing/activity-log-manager/PKGBUILD
deleted file mode 100644
index 0b27128a4..000000000
--- a/community-testing/activity-log-manager/PKGBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# $Id: PKGBUILD 78598 2012-10-21 19:12:44Z bgyorgy $
-# Maintainer: Balló György <ballogyor+arch at gmail dot com>
-# Contributor: Ner0
-
-pkgname=activity-log-manager
-pkgver=0.9.4
-pkgrel=2
-pkgdesc="A graphical user interface which lets you easily control what gets logged by Zeitgeist"
-arch=('i686' 'x86_64')
-url="https://launchpad.net/activity-log-manager"
-license=('GPL2')
-depends=('gtk3' 'libgee' 'libzeitgeist' 'zeitgeist' 'hicolor-icon-theme' 'xdg-utils')
-makedepends=('vala' 'intltool')
-install=$pkgname.install
-source=(https://launchpad.net/$pkgname/${pkgver%.*}/$pkgver/+download/$pkgname-$pkgver.tar.gz
- http://pkgbuild.com/~bgyorgy/sources/$pkgname-translations-20121021.tar.gz)
-md5sums=('cf85aecdaa6c0188a53d659709e1f8cd'
- '6167df74ce44659aa94a89f31ff4d351')
-
-build() {
- cd $pkgname-$pkgver
-
- # Fix docdir location
- sed -i 's/almdocdir =.*/almdocdir = ${docdir}/' Makefile.{am,in}
-
- # Update language files
- echo 'af ar ast be bg bn bs ca ca@valencia cs da de el eo es et eu fi fr gd gl he hi hr hu id it ja km ko ku lt lv mi ms my nb nl oc pl pt ro ru se si sk sl sr sv ta te ug uk uz vi zh_CN zh_HK zh_TW' >po/LINGUAS
- rename $pkgname- '' ../po/$pkgname-*.po
- mv -f -t po ../po/*
-
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
- make
-}
-
-package() {
- cd "$srcdir/$pkgname-$pkgver"
-
- make DESTDIR="$pkgdir" install
-
- # We don't have Whoopsie on Arch Linux
- rm -r "$pkgdir/etc" "$pkgdir"/usr/share/{applications/activity-log-manager-ccpanel.desktop,dbus-1,gnome-control-center,polkit-1}
-}
diff --git a/community-testing/activity-log-manager/activity-log-manager.install b/community-testing/activity-log-manager/activity-log-manager.install
deleted file mode 100644
index 2c455e952..000000000
--- a/community-testing/activity-log-manager/activity-log-manager.install
+++ /dev/null
@@ -1,11 +0,0 @@
-post_install() {
- xdg-icon-resource forceupdate
-}
-
-post_upgrade() {
- post_install $1
-}
-
-post_remove() {
- post_install $1
-}
diff --git a/community-testing/espeakup/PKGBUILD b/community-testing/espeakup/PKGBUILD
deleted file mode 100644
index 9ee2d9962..000000000
--- a/community-testing/espeakup/PKGBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# $Id: PKGBUILD 78549 2012-10-20 19:23:23Z tomegun $
-# Contributor: Chris Brannon <chris@the-brannons.com>
-# Contributor: Kyle <kyle@gmx.ca>
-pkgname=espeakup
-pkgver=0.71
-pkgrel=5
-pkgdesc='Allows the Speakup screen review system to use the ESpeak synthesizer.'
-arch=('i686' 'x86_64')
-url="http://github.com/williamh/espeakup"
-license=('GPL3')
-source=("ftp://linux-speakup.org/pub/linux/goodies/${pkgname}-${pkgver}.tar.bz2"
- espeakup espeakup.conf.d espeakup.service)
-depends=(speakup-utils espeak)
-backup=(etc/conf.d/espeakup)
-
-build() {
- cd "$srcdir/$pkgname-$pkgver"
- make
-}
-
-package() {
- cd "$srcdir/$pkgname-$pkgver"
- make DESTDIR="${pkgdir}" install
- install -m755 -D "${srcdir}/espeakup" "${pkgdir}/etc/rc.d/espeakup"
- install -m644 -D "${srcdir}/espeakup.conf.d" "${pkgdir}/etc/conf.d/espeakup"
- install -m644 -D "${srcdir}/espeakup.service" "${pkgdir}/usr/lib/systemd/system/espeakup.service"
-}
-md5sums=('03daa70b3db3f4f6fbb42c2ee428eda7'
- '7cf0abd493710ed924b7bb7c8d279fb3'
- '0f93974845b15efa12f5e7a74cc0eecd'
- '0c11c50b128234cda8e1357e88cf7c43')
diff --git a/community-testing/espeakup/espeakup b/community-testing/espeakup/espeakup
deleted file mode 100644
index 94a71701a..000000000
--- a/community-testing/espeakup/espeakup
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/bash
-
-. /etc/rc.conf
-. /etc/conf.d/espeakup
-. /etc/rc.d/functions
-
-PID=`pidof espeakup`
-PIDFILE=/var/run/espeakup.pid
-case "$1" in
- start)
- stat_busy "Starting Espeakup"
- if [ -z "$PID" ]; then
- if [ -f $PIDFILE ]; then
- rm $PIDFILE
- fi
- /usr/bin/espeakup $ESPEAKUP_ARGS
- if [ $? -gt 0 ]; then
- stat_fail
- else
- add_daemon espeakup
- stat_done
- fi
- fi
- ;;
- stop)
- stat_busy "Stopping Espeakup"
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon espeakup
- stat_done
- fi
- ;;
- restart)
- $0 stop
- sleep 2
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
-esac
-exit 0
diff --git a/community-testing/espeakup/espeakup.conf.d b/community-testing/espeakup/espeakup.conf.d
deleted file mode 100644
index 66f7842c3..000000000
--- a/community-testing/espeakup/espeakup.conf.d
+++ /dev/null
@@ -1,6 +0,0 @@
-#
-# Arguments to be passed to espeakup.
-# Example:
-# ESPEAKUP_ARGS="--default-voice=fr"
-# will tell espeakup to use the French voice.
-ESPEAKUP_ARGS=""
diff --git a/community-testing/espeakup/espeakup.service b/community-testing/espeakup/espeakup.service
deleted file mode 100644
index 58d7d47fa..000000000
--- a/community-testing/espeakup/espeakup.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Software speech output for Speakup
-
-[Service]
-Type=forking
-PIDFile=/run/espeakup.pid
-ExecStart=/usr/bin/espeakup
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=always
-
-[Install]
-WantedBy=multi-user.target
diff --git a/community-testing/gedit-plugins/PKGBUILD b/community-testing/gedit-plugins/PKGBUILD
deleted file mode 100644
index 44dc262a0..000000000
--- a/community-testing/gedit-plugins/PKGBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# $Id: PKGBUILD 78582 2012-10-21 11:43:49Z ibiru $
-# Maintainer: Ionut Biru <ibiru@archlinux.org>
-# Contributor: Alexander Rødseth <rodseth@gmail.com>
-# Contributor: Hugo Doria <hugo@archlinux.org>
-# Contributor: Sergej Chodarev <sergejx@centrum.sk>
-# Contributor: zhuqin <zhuqin83@gmail.com>
-
-pkgname=gedit-plugins
-pkgver=3.6.1
-pkgrel=1
-pkgdesc="Plugins for gedit"
-arch=('x86_64' 'i686')
-license=('GPL')
-url="http://live.gnome.org/GeditPlugins"
-depends=('gedit' 'dbus-python')
-optdepends=('gucharmap: for charmap plugin'
- 'vte3: for embedded terminal')
-makedepends=('intltool' 'gnome-doc-utils' 'vte3')
-options=('!libtool' '!emptydirs')
-install=gedit-plugins.install
-source=("http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver:0:3}/$pkgname-$pkgver.tar.xz")
-sha256sums=('c5e92830e6029110bf1117bd9f31b23a9ad907210b8cb37039772f5bfcf6d174')
-
-build() {
- cd $pkgname-$pkgver
- ./configure --prefix=/usr --sysconfdir=/etc --with-plugins=all \
- --disable-schemas-compile
- make
-}
-
-package() {
- cd $pkgname-$pkgver
- make DESTDIR=$pkgdir install
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/community-testing/gedit-plugins/gedit-plugins.install b/community-testing/gedit-plugins/gedit-plugins.install
deleted file mode 100644
index d5bcc00ae..000000000
--- a/community-testing/gedit-plugins/gedit-plugins.install
+++ /dev/null
@@ -1,23 +0,0 @@
-pkgname=gedit-plugins
-
-post_install() {
- usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
-}
-
-pre_upgrade() {
- if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
- usr/sbin/gconfpkg --uninstall ${pkgname}
- fi
-}
-
-post_upgrade() {
- post_install $1
-}
-
-
-post_remove() {
- post_install $1
-}
-
-
-# vim:set ts=2 sw=2 et:
diff --git a/community-testing/gnome-packagekit/PKGBUILD b/community-testing/gnome-packagekit/PKGBUILD
deleted file mode 100644
index e0a5edfd4..000000000
--- a/community-testing/gnome-packagekit/PKGBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# $Id: PKGBUILD 78514 2012-10-20 07:24:57Z jconder $
-# Maintainer: Jonathan Conder <jonno.conder@gmail.com>
-
-pkgname=gnome-packagekit
-pkgver=3.6.0
-pkgrel=1
-pkgdesc='Collection of graphical tools for PackageKit to be used in the GNOME desktop'
-arch=('i686' 'x86_64')
-url='http://www.packagekit.org/'
-license=('GPL')
-depends=('desktop-file-utils' 'gtk3' 'hicolor-icon-theme' 'libnotify'
- 'packagekit')
-makedepends=('gconf' 'gtk-doc' 'intltool' 'itstool' 'libcanberra' 'upower')
-optdepends=('polkit-gnome: required for privileged actions'
- 'gnome-settings-daemon-updates: update and message notifications')
-options=('!emptydirs' '!libtool')
-install="$pkgname.install"
-source=("http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz")
-sha256sums=('9f096ec72fb81a78c426d9747145405a8b99e1d8418978828796768c8532d676')
-
-build() {
- cd "$srcdir/$pkgname-$pkgver"
-
- _mime='application/x-xz-compressed-tar;application/x-servicepack;'
- sed -i "s@MimeType=.*@MimeType=$_mime@" data/gpk-install-local-file.desktop.in
-
- sed -i 's@python@python2@' python/enum-convertor.py
- sed -i 's@python enum-convertor.py@python2 enum-convertor.py@' python/packagekit/Makefile.{am,in}
-
- export PYTHON=/usr/bin/python2
- ./configure --prefix=/usr \
- --sysconfdir=/etc \
- --disable-gtk-doc \
- --disable-schemas-compile \
- --disable-scrollkeeper
- make -s
-}
-
-package() {
- cd "$srcdir/$pkgname-$pkgver"
-
- make -s DESTDIR="$pkgdir" install
-}
diff --git a/community-testing/gnome-packagekit/gnome-packagekit.install b/community-testing/gnome-packagekit/gnome-packagekit.install
deleted file mode 100644
index 620670d57..000000000
--- a/community-testing/gnome-packagekit/gnome-packagekit.install
+++ /dev/null
@@ -1,19 +0,0 @@
-post_install() {
- usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
- update-desktop-database -q
-}
-
-pre_upgrade() {
- if (( $(vercmp $2 2.91.90) < 0 )); then
- usr/sbin/gconfpkg --uninstall gnome-packagekit
- fi
-}
-
-post_upgrade() {
- post_install
-}
-
-post_remove() {
- post_install
-}
diff --git a/community-testing/gnome-settings-daemon-updates/0001-power-and-media-keys-Use-logind-for-suspending-and-r.patch b/community-testing/gnome-settings-daemon-updates/0001-power-and-media-keys-Use-logind-for-suspending-and-r.patch
deleted file mode 100644
index 293a419df..000000000
--- a/community-testing/gnome-settings-daemon-updates/0001-power-and-media-keys-Use-logind-for-suspending-and-r.patch
+++ /dev/null
@@ -1,1473 +0,0 @@
-From 79ead5309fe21e77cfe58adc6a9340953c2d52f4 Mon Sep 17 00:00:00 2001
-From: Richard Hughes <richard@hughsie.com>
-Date: Fri, 21 Sep 2012 11:56:53 +0100
-Subject: [PATCH] power and media-keys: Use logind for suspending and
- rebooting the system
-
-Use the new logind features to suspend and resume but making sure we opt out
-of logind handling the sleep and power keys, and also inhibiting for lid close
-auto-suspend if there is an external monitor connected.
-
-Also use a delay inihibit for logind so that we can do actions on suspend like
-blanking the screen using the screensaver and also poking the screensaver on
-resume.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=680689
----
- plugins/common/Makefile.am | 4 +-
- plugins/common/gsd-power-helper.c | 203 --------
- plugins/common/gsd-power-helper.h | 35 --
- plugins/media-keys/gsd-media-keys-manager.c | 156 +++++--
- plugins/power/gsd-power-manager.c | 699 +++++++++++++++++++---------
- 5 files changed, 595 insertions(+), 502 deletions(-)
- delete mode 100644 plugins/common/gsd-power-helper.c
- delete mode 100644 plugins/common/gsd-power-helper.h
-
-diff --git a/plugins/common/Makefile.am b/plugins/common/Makefile.am
-index 7e50db4..b0e907c 100644
---- a/plugins/common/Makefile.am
-+++ b/plugins/common/Makefile.am
-@@ -6,9 +6,7 @@ libcommon_la_SOURCES = \
- gsd-keygrab.c \
- gsd-keygrab.h \
- gsd-input-helper.c \
-- gsd-input-helper.h \
-- gsd-power-helper.c \
-- gsd-power-helper.h
-+ gsd-input-helper.h
-
- libcommon_la_CPPFLAGS = \
- $(AM_CPPFLAGS)
-diff --git a/plugins/common/gsd-power-helper.c b/plugins/common/gsd-power-helper.c
-deleted file mode 100644
-index 27d0eda..0000000
---- a/plugins/common/gsd-power-helper.c
-+++ /dev/null
-@@ -1,203 +0,0 @@
--/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
-- *
-- * Copyright (C) 2012 Bastien Nocera <hadess@hadess.net>
-- *
-- * This program is free software; you can redistribute it and/or modify
-- * it under the terms of the GNU General Public License as published by
-- * the Free Software Foundation; either version 2 of the License, or
-- * (at your option) any later version.
-- *
-- * This program is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- * GNU General Public License for more details.
-- *
-- * You should have received a copy of the GNU General Public License
-- * along with this program; if not, write to the Free Software
-- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-- *
-- */
--
--#include "config.h"
--
--#include "gsd-power-helper.h"
--
--#define SYSTEMD_DBUS_NAME "org.freedesktop.login1"
--#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1"
--#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager"
--
--#define CONSOLEKIT_DBUS_NAME "org.freedesktop.ConsoleKit"
--#define CONSOLEKIT_DBUS_PATH_MANAGER "/org/freedesktop/ConsoleKit/Manager"
--#define CONSOLEKIT_DBUS_INTERFACE_MANAGER "org.freedesktop.ConsoleKit.Manager"
--
--#ifdef HAVE_SYSTEMD
--static void
--systemd_stop (void)
--{
-- GDBusConnection *bus;
--
-- bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL);
-- g_dbus_connection_call (bus,
-- SYSTEMD_DBUS_NAME,
-- SYSTEMD_DBUS_PATH,
-- SYSTEMD_DBUS_INTERFACE,
-- "PowerOff",
-- g_variant_new ("(b)", FALSE),
-- NULL, 0, G_MAXINT, NULL, NULL, NULL);
-- g_object_unref (bus);
--}
--
--static void
--systemd_suspend (void)
--{
-- GDBusConnection *bus;
--
-- bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL);
-- g_dbus_connection_call (bus,
-- SYSTEMD_DBUS_NAME,
-- SYSTEMD_DBUS_PATH,
-- SYSTEMD_DBUS_INTERFACE,
-- "Suspend",
-- g_variant_new ("(b)", TRUE),
-- NULL, 0, G_MAXINT, NULL, NULL, NULL);
-- g_object_unref (bus);
--}
--
--static void
--systemd_hibernate (void)
--{
-- GDBusConnection *bus;
--
-- bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL);
-- g_dbus_connection_call (bus,
-- SYSTEMD_DBUS_NAME,
-- SYSTEMD_DBUS_PATH,
-- SYSTEMD_DBUS_INTERFACE,
-- "Hibernate",
-- g_variant_new ("(b)", TRUE),
-- NULL, 0, G_MAXINT, NULL, NULL, NULL);
-- g_object_unref (bus);
--}
--
--#else /* HAVE_SYSTEMD */
--
--static void
--consolekit_stop_cb (GObject *source_object,
-- GAsyncResult *res,
-- gpointer user_data)
--{
-- GVariant *result;
-- GError *error = NULL;
--
-- result = g_dbus_proxy_call_finish (G_DBUS_PROXY (source_object),
-- res,
-- &error);
-- if (result == NULL) {
-- g_warning ("couldn't stop using ConsoleKit: %s",
-- error->message);
-- g_error_free (error);
-- } else {
-- g_variant_unref (result);
-- }
--}
--
--static void
--consolekit_stop (void)
--{
-- GError *error = NULL;
-- GDBusProxy *proxy;
--
-- /* power down the machine in a safe way */
-- proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
-- G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
-- NULL,
-- CONSOLEKIT_DBUS_NAME,
-- CONSOLEKIT_DBUS_PATH_MANAGER,
-- CONSOLEKIT_DBUS_INTERFACE_MANAGER,
-- NULL, &error);
-- if (proxy == NULL) {
-- g_warning ("cannot connect to ConsoleKit: %s",
-- error->message);
-- g_error_free (error);
-- return;
-- }
-- g_dbus_proxy_call (proxy,
-- "Stop",
-- NULL,
-- G_DBUS_CALL_FLAGS_NONE,
-- -1, NULL,
-- consolekit_stop_cb, NULL);
-- g_object_unref (proxy);
--}
--static void
--upower_sleep_cb (GObject *source_object,
-- GAsyncResult *res,
-- gpointer user_data)
--{
-- GVariant *result;
-- GError *error = NULL;
--
-- result = g_dbus_proxy_call_finish (G_DBUS_PROXY (source_object),
-- res,
-- &error);
-- if (result == NULL) {
-- g_warning ("couldn't sleep using UPower: %s",
-- error->message);
-- g_error_free (error);
-- } else {
-- g_variant_unref (result);
-- }
--}
--
--static void
--upower_suspend (GDBusProxy *upower_proxy)
--{
-- g_dbus_proxy_call (upower_proxy,
-- "Suspend",
-- NULL,
-- G_DBUS_CALL_FLAGS_NONE,
-- -1, NULL,
-- upower_sleep_cb, NULL);
--}
--
--static void
--upower_hibernate (GDBusProxy *upower_proxy)
--{
-- g_dbus_proxy_call (upower_proxy,
-- "Hibernate",
-- NULL,
-- G_DBUS_CALL_FLAGS_NONE,
-- -1, NULL,
-- upower_sleep_cb, NULL);
--}
--#endif /* HAVE_SYSTEMD */
--
--void
--gsd_power_suspend (GDBusProxy *upower_proxy)
--{
--#ifdef HAVE_SYSTEMD
-- systemd_suspend ();
--#else
-- upower_suspend (upower_proxy);
--#endif
--}
--
--void
--gsd_power_poweroff (void)
--{
--#ifdef HAVE_SYSTEMD
-- systemd_stop ();
--#else
-- consolekit_stop ();
--#endif
--}
--
--void
--gsd_power_hibernate (GDBusProxy *upower_proxy)
--{
--#ifdef HAVE_SYSTEMD
-- systemd_hibernate ();
--#else
-- upower_hibernate (upower_proxy);
--#endif
--}
-diff --git a/plugins/common/gsd-power-helper.h b/plugins/common/gsd-power-helper.h
-deleted file mode 100644
-index e3be14f..0000000
---- a/plugins/common/gsd-power-helper.h
-+++ /dev/null
-@@ -1,35 +0,0 @@
--/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
-- *
-- * Copyright (C) 2012 Bastien Nocera <hadess@hadess.net>
-- *
-- * This program is free software; you can redistribute it and/or modify
-- * it under the terms of the GNU General Public License as published by
-- * the Free Software Foundation; either version 2 of the License, or
-- * (at your option) any later version.
-- *
-- * This program is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- * GNU General Public License for more details.
-- *
-- * You should have received a copy of the GNU General Public License
-- * along with this program; if not, write to the Free Software
-- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-- */
--
--#ifndef __GSD_POWER_HELPER_H
--#define __GSD_POWER_HELPER_H
--
--#include <glib.h>
--
--G_BEGIN_DECLS
--
--#include <gio/gio.h>
--
--void gsd_power_suspend (GDBusProxy *upower_proxy);
--void gsd_power_hibernate (GDBusProxy *upower_proxy);
--void gsd_power_poweroff (void);
--
--G_END_DECLS
--
--#endif /* __GSD_POWER_HELPER_H */
-diff --git a/plugins/media-keys/gsd-media-keys-manager.c b/plugins/media-keys/gsd-media-keys-manager.c
-index 9c84d7f..a2f277e 100644
---- a/plugins/media-keys/gsd-media-keys-manager.c
-+++ b/plugins/media-keys/gsd-media-keys-manager.c
-@@ -39,6 +39,7 @@
- #include <gdk/gdkx.h>
- #include <gtk/gtk.h>
- #include <gio/gdesktopappinfo.h>
-+#include <gio/gunixfdlist.h>
-
- #ifdef HAVE_GUDEV
- #include <gudev/gudev.h>
-@@ -51,7 +52,6 @@
- #include "shortcuts-list.h"
- #include "gsd-osd-window.h"
- #include "gsd-input-helper.h"
--#include "gsd-power-helper.h"
- #include "gsd-enums.h"
-
- #include <canberra.h>
-@@ -105,6 +105,10 @@ static const gchar introspection_xml[] =
- #define KEY_CURRENT_INPUT_SOURCE "current"
- #define KEY_INPUT_SOURCES "sources"
-
-+#define SYSTEMD_DBUS_NAME "org.freedesktop.login1"
-+#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1"
-+#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager"
-+
- #define GSD_MEDIA_KEYS_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_MEDIA_KEYS_MANAGER, GsdMediaKeysManagerPrivate))
-
- typedef struct {
-@@ -148,10 +152,13 @@ struct GsdMediaKeysManagerPrivate
-
- /* Power stuff */
- GSettings *power_settings;
-- GDBusProxy *upower_proxy;
- GDBusProxy *power_screen_proxy;
- GDBusProxy *power_keyboard_proxy;
-
-+ /* systemd stuff */
-+ GDBusProxy *logind_proxy;
-+ gint inhibit_keys_fd;
-+
- /* Multihead stuff */
- GdkScreen *current_screen;
- GSList *screens;
-@@ -1618,6 +1625,38 @@ do_toggle_contrast_action (GsdMediaKeysManager *manager)
- }
-
- static void
-+power_action_suspend (GsdMediaKeysManager *manager)
-+{
-+#ifndef HAVE_SYSTEMD
-+ g_warning ("no systemd support");
-+ return;
-+#endif
-+ g_dbus_proxy_call (manager->priv->logind_proxy,
-+ "Suspend",
-+ g_variant_new ("(b)", TRUE),
-+ G_DBUS_CALL_FLAGS_NONE,
-+ G_MAXINT,
-+ manager->priv->bus_cancellable,
-+ NULL, NULL);
-+}
-+
-+static void
-+power_action_hibernate (GsdMediaKeysManager *manager)
-+{
-+#ifndef HAVE_SYSTEMD
-+ g_warning ("no systemd support");
-+ return;
-+#endif
-+ g_dbus_proxy_call (manager->priv->logind_proxy,
-+ "Hibernate",
-+ g_variant_new ("(b)", TRUE),
-+ G_DBUS_CALL_FLAGS_NONE,
-+ G_MAXINT,
-+ manager->priv->bus_cancellable,
-+ NULL, NULL);
-+}
-+
-+static void
- do_config_power_action (GsdMediaKeysManager *manager,
- const gchar *config_key)
- {
-@@ -1627,14 +1666,14 @@ do_config_power_action (GsdMediaKeysManager *manager,
- config_key);
- switch (action_type) {
- case GSD_POWER_ACTION_SUSPEND:
-- gsd_power_suspend (manager->priv->upower_proxy);
-+ power_action_suspend (manager);
- break;
- case GSD_POWER_ACTION_INTERACTIVE:
- case GSD_POWER_ACTION_SHUTDOWN:
- gnome_session_shutdown (manager);
- break;
- case GSD_POWER_ACTION_HIBERNATE:
-- gsd_power_hibernate (manager->priv->upower_proxy);
-+ power_action_hibernate (manager);
- break;
- case GSD_POWER_ACTION_BLANK:
- case GSD_POWER_ACTION_NOTHING:
-@@ -2248,6 +2287,7 @@ gsd_media_keys_manager_stop (GsdMediaKeysManager *manager)
- }
- #endif /* HAVE_GUDEV */
-
-+ g_clear_object (&priv->logind_proxy);
- if (priv->settings) {
- g_object_unref (priv->settings);
- priv->settings = NULL;
-@@ -2268,11 +2308,6 @@ gsd_media_keys_manager_stop (GsdMediaKeysManager *manager)
- priv->power_keyboard_proxy = NULL;
- }
-
-- if (priv->upower_proxy) {
-- g_object_unref (priv->upower_proxy);
-- priv->upower_proxy = NULL;
-- }
--
- if (priv->cancellable != NULL) {
- g_cancellable_cancel (priv->cancellable);
- g_object_unref (priv->cancellable);
-@@ -2363,9 +2398,85 @@ gsd_media_keys_manager_class_init (GsdMediaKeysManagerClass *klass)
- }
-
- static void
-+inhibit_done (GObject *source,
-+ GAsyncResult *result,
-+ gpointer user_data)
-+{
-+ GDBusProxy *proxy = G_DBUS_PROXY (source);
-+ GsdMediaKeysManager *manager = GSD_MEDIA_KEYS_MANAGER (user_data);
-+ GError *error = NULL;
-+ GVariant *res;
-+ GUnixFDList *fd_list = NULL;
-+ gint idx;
-+
-+ res = g_dbus_proxy_call_with_unix_fd_list_finish (proxy, &fd_list, result, &error);
-+ if (res == NULL) {
-+ g_warning ("Unable to inhibit keypresses: %s", error->message);
-+ g_error_free (error);
-+ } else {
-+ g_variant_get (res, "(h)", &idx);
-+ manager->priv->inhibit_keys_fd = g_unix_fd_list_get (fd_list, idx, &error);
-+ if (manager->priv->inhibit_keys_fd == -1) {
-+ g_warning ("Failed to receive system inhibitor fd: %s", error->message);
-+ g_error_free (error);
-+ }
-+ g_debug ("System inhibitor fd is %d", manager->priv->inhibit_keys_fd);
-+ g_object_unref (fd_list);
-+ g_variant_unref (res);
-+ }
-+}
-+
-+static void
- gsd_media_keys_manager_init (GsdMediaKeysManager *manager)
- {
-+ GError *error;
-+ GDBusConnection *bus;
-+
-+ error = NULL;
- manager->priv = GSD_MEDIA_KEYS_MANAGER_GET_PRIVATE (manager);
-+
-+ bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, &error);
-+ if (bus == NULL) {
-+ g_warning ("Failed to connect to system bus: %s",
-+ error->message);
-+ g_error_free (error);
-+ return;
-+ }
-+
-+ manager->priv->logind_proxy =
-+ g_dbus_proxy_new_sync (bus,
-+ 0,
-+ NULL,
-+ SYSTEMD_DBUS_NAME,
-+ SYSTEMD_DBUS_PATH,
-+ SYSTEMD_DBUS_INTERFACE,
-+ NULL,
-+ &error);
-+
-+ if (manager->priv->logind_proxy == NULL) {
-+ g_warning ("Failed to connect to systemd: %s",
-+ error->message);
-+ g_error_free (error);
-+ }
-+
-+ g_object_unref (bus);
-+
-+ g_debug ("Adding system inhibitors for power keys");
-+ manager->priv->inhibit_keys_fd = -1;
-+ g_dbus_proxy_call_with_unix_fd_list (manager->priv->logind_proxy,
-+ "Inhibit",
-+ g_variant_new ("(ssss)",
-+ "handle-power-key:handle-suspend-key:handle-hibernate-key",
-+ g_get_user_name (),
-+ "GNOME handling keypresses",
-+ "block"),
-+ 0,
-+ G_MAXINT,
-+ NULL,
-+ NULL,
-+ inhibit_done,
-+ manager);
-+
- }
-
- static void
-@@ -2382,6 +2493,8 @@ gsd_media_keys_manager_finalize (GObject *object)
-
- if (media_keys_manager->priv->start_idle_id != 0)
- g_source_remove (media_keys_manager->priv->start_idle_id);
-+ if (media_keys_manager->priv->inhibit_keys_fd != -1)
-+ close (media_keys_manager->priv->inhibit_keys_fd);
-
- G_OBJECT_CLASS (gsd_media_keys_manager_parent_class)->finalize (object);
- }
-@@ -2401,21 +2514,6 @@ xrandr_ready_cb (GObject *source_object,
- }
-
- static void
--upower_ready_cb (GObject *source_object,
-- GAsyncResult *res,
-- GsdMediaKeysManager *manager)
--{
-- GError *error = NULL;
--
-- manager->priv->upower_proxy = g_dbus_proxy_new_finish (res, &error);
-- if (manager->priv->upower_proxy == NULL) {
-- g_warning ("Failed to get proxy for upower: %s",
-- error->message);
-- g_error_free (error);
-- }
--}
--
--static void
- power_screen_ready_cb (GObject *source_object,
- GAsyncResult *res,
- GsdMediaKeysManager *manager)
-@@ -2517,16 +2615,6 @@ register_manager (GsdMediaKeysManager *manager)
- manager->priv->bus_cancellable,
- (GAsyncReadyCallback) on_bus_gotten,
- manager);
--
-- g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
-- G_DBUS_PROXY_FLAGS_NONE,
-- NULL,
-- "org.freedesktop.UPower",
-- "/org/freedesktop/UPower",
-- "org.freedesktop.UPower",
-- NULL,
-- (GAsyncReadyCallback) upower_ready_cb,
-- manager);
- }
-
- GsdMediaKeysManager *
-diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
-index 070cf32..18fcedf 100644
---- a/plugins/power/gsd-power-manager.c
-+++ b/plugins/power/gsd-power-manager.c
-@@ -1,7 +1,7 @@
- /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 William Jon McCann <mccann@jhu.edu>
-- * Copyright (C) 2011 Richard Hughes <richard@hughsie.com>
-+ * Copyright (C) 2011-2012 Richard Hughes <richard@hughsie.com>
- * Copyright (C) 2011 Ritesh Khadgaray <khadgaray@gmail.com>
- *
- * This program is free software; you can redistribute it and/or modify
-@@ -32,6 +32,7 @@
- #include <libupower-glib/upower.h>
- #include <libnotify/notify.h>
- #include <canberra-gtk.h>
-+#include <gio/gunixfdlist.h>
-
- #define GNOME_DESKTOP_USE_UNSTABLE_API
- #include <libgnome-desktop/gnome-rr.h>
-@@ -43,7 +44,6 @@
- #include "gnome-settings-session.h"
- #include "gsd-enums.h"
- #include "gsd-power-manager.h"
--#include "gsd-power-helper.h"
-
- #define GNOME_SESSION_DBUS_NAME "org.gnome.SessionManager"
- #define GNOME_SESSION_DBUS_PATH "/org/gnome/SessionManager"
-@@ -78,6 +78,10 @@
- #define GSD_POWER_MANAGER_RECALL_DELAY 30 /* seconds */
- #define GSD_POWER_MANAGER_LID_CLOSE_SAFETY_TIMEOUT 30 /* seconds */
-
-+#define SYSTEMD_DBUS_NAME "org.freedesktop.login1"
-+#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1"
-+#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager"
-+
- /* Keep this in sync with gnome-shell */
- #define SCREENSAVER_FADE_TIME 10 /* seconds */
-
-@@ -193,14 +197,20 @@ struct GsdPowerManagerPrivate
- ca_context *canberra_context;
- ca_proplist *critical_alert_loop_props;
- guint32 critical_alert_timeout_id;
-- GDBusProxy *screensaver_proxy;
- GDBusProxy *session_proxy;
- GDBusProxy *session_presence_proxy;
- GpmIdletime *idletime;
- GsdPowerIdleMode current_idle_mode;
-- guint lid_close_safety_timer_id;
- GtkStatusIcon *status_icon;
- guint xscreensaver_watchdog_timer_id;
-+
-+ /* systemd stuff */
-+ GDBusProxy *logind_proxy;
-+ gint inhibit_lid_switch_fd;
-+ gboolean inhibit_lid_switch_taken;
-+ gint inhibit_suspend_fd;
-+ gboolean inhibit_suspend_taken;
-+ guint inhibit_lid_switch_timer_id;
- };
-
- enum {
-@@ -217,8 +227,8 @@ static GIcon *engine_get_icon (GsdPowerManager *manager);
- static gchar *engine_get_summary (GsdPowerManager *manager);
- static void do_power_action_type (GsdPowerManager *manager, GsdPowerActionType action_type);
- static void do_lid_closed_action (GsdPowerManager *manager);
--static void lock_screensaver (GsdPowerManager *manager);
--static void kill_lid_close_safety_timer (GsdPowerManager *manager);
-+static void uninhibit_lid_switch (GsdPowerManager *manager);
-+static gboolean external_monitor_is_connected (GnomeRRScreen *screen);
-
- G_DEFINE_TYPE (GsdPowerManager, gsd_power_manager, G_TYPE_OBJECT)
-
-@@ -2048,6 +2058,57 @@ gnome_session_shutdown (void)
- }
-
- static void
-+action_poweroff (GsdPowerManager *manager)
-+{
-+ if (manager->priv->logind_proxy == NULL) {
-+ g_warning ("no systemd support");
-+ return;
-+ }
-+ g_dbus_proxy_call (manager->priv->logind_proxy,
-+ "PowerOff",
-+ g_variant_new ("(b)", FALSE),
-+ G_DBUS_CALL_FLAGS_NONE,
-+ G_MAXINT,
-+ NULL,
-+ NULL,
-+ NULL);
-+}
-+
-+static void
-+action_suspend (GsdPowerManager *manager)
-+{
-+ if (manager->priv->logind_proxy == NULL) {
-+ g_warning ("no systemd support");
-+ return;
-+ }
-+ g_dbus_proxy_call (manager->priv->logind_proxy,
-+ "Suspend",
-+ g_variant_new ("(b)", FALSE),
-+ G_DBUS_CALL_FLAGS_NONE,
-+ G_MAXINT,
-+ NULL,
-+ NULL,
-+ NULL);
-+}
-+
-+static void
-+action_hibernate (GsdPowerManager *manager)
-+{
-+ if (manager->priv->logind_proxy == NULL) {
-+ g_warning ("no systemd support");
-+ return;
-+ }
-+ g_dbus_proxy_call (manager->priv->logind_proxy,
-+ "Hibernate",
-+ g_variant_new ("(b)", FALSE),
-+ G_DBUS_CALL_FLAGS_NONE,
-+ G_MAXINT,
-+ NULL,
-+ NULL,
-+ NULL);
-+}
-+
-+static void
- do_power_action_type (GsdPowerManager *manager,
- GsdPowerActionType action_type)
- {
-@@ -2056,19 +2117,19 @@ do_power_action_type (GsdPowerManager *manager,
-
- switch (action_type) {
- case GSD_POWER_ACTION_SUSPEND:
-- gsd_power_suspend (manager->priv->upower_proxy);
-+ action_suspend (manager);
- break;
- case GSD_POWER_ACTION_INTERACTIVE:
- gnome_session_shutdown ();
- break;
- case GSD_POWER_ACTION_HIBERNATE:
-- gsd_power_hibernate (manager->priv->upower_proxy);
-+ action_hibernate (manager);
- break;
- case GSD_POWER_ACTION_SHUTDOWN:
- /* this is only used on critically low battery where
- * hibernate is not available and is marginally better
- * than just powering down the computer mid-write */
-- gsd_power_poweroff ();
-+ action_poweroff (manager);
- break;
- case GSD_POWER_ACTION_BLANK:
- ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-@@ -2140,85 +2201,20 @@ upower_kbd_toggle (GsdPowerManager *manager,
- return ret;
- }
-
--static void
--do_lid_open_action (GsdPowerManager *manager)
--{
-- gboolean ret;
-- GError *error = NULL;
--
-- /* play a sound, using sounds from the naming spec */
-- ca_context_play (manager->priv->canberra_context, 0,
-- CA_PROP_EVENT_ID, "lid-open",
-- /* TRANSLATORS: this is the sound description */
-- CA_PROP_EVENT_DESCRIPTION, _("Lid has been opened"),
-- NULL);
--
-- /* ensure we turn the panel back on after lid open */
-- ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-- GNOME_RR_DPMS_ON,
-- &error);
-- if (!ret) {
-- g_warning ("failed to turn the panel on after lid open: %s",
-- error->message);
-- g_clear_error (&error);
-- }
--
-- /* only toggle keyboard if present and already toggled off */
-- if (manager->priv->upower_kdb_proxy != NULL &&
-- manager->priv->kbd_brightness_old != -1) {
-- ret = upower_kbd_toggle (manager, &error);
-- if (!ret) {
-- g_warning ("failed to turn the kbd backlight on: %s",
-- error->message);
-- g_error_free (error);
-- }
-- }
--
-- kill_lid_close_safety_timer (manager);
--}
--
- static gboolean
--is_on (GnomeRROutput *output)
-+inhibit_lid_switch_timer_cb (GsdPowerManager *manager)
- {
-- GnomeRRCrtc *crtc;
--
-- crtc = gnome_rr_output_get_crtc (output);
-- if (!crtc)
-- return FALSE;
-- return gnome_rr_crtc_get_current_mode (crtc) != NULL;
--}
--
--static gboolean
--non_laptop_outputs_are_all_off (GnomeRRScreen *screen)
--{
-- GnomeRROutput **outputs;
-- int i;
--
-- outputs = gnome_rr_screen_list_outputs (screen);
-- for (i = 0; outputs[i] != NULL; i++) {
-- if (gnome_rr_output_is_laptop (outputs[i]))
-- continue;
--
-- if (is_on (outputs[i]))
-- return FALSE;
-+ if (!external_monitor_is_connected (manager->priv->x11_screen) ||
-+ g_settings_get_boolean (manager->priv->settings,
-+ "lid-close-suspend-with-external-monitor")) {
-+ g_debug ("no external monitors for a while; uninhibiting lid close");
-+ uninhibit_lid_switch (manager);
-+ manager->priv->inhibit_lid_switch_timer_id = 0;
-+ return G_SOURCE_REMOVE;
- }
-
-- return TRUE;
--}
--
--/* Timeout callback used to check conditions when the laptop's lid is closed but
-- * the machine is not suspended yet. We try to suspend again, so that the laptop
-- * won't overheat if placed in a backpack.
-- */
--static gboolean
--lid_close_safety_timer_cb (GsdPowerManager *manager)
--{
-- manager->priv->lid_close_safety_timer_id = 0;
--
-- g_debug ("lid has been closed for a while; trying to suspend again");
-- do_lid_closed_action (manager);
--
-- return FALSE;
-+ g_debug ("external monitor still there; trying again later");
-+ return G_SOURCE_CONTINUE;
- }
-
- /* Sets up a timer to be triggered some seconds after closing the laptop lid
-@@ -2226,82 +2222,73 @@ lid_close_safety_timer_cb (GsdPowerManager *manager)
- * again in the timeout handler to see if we can suspend then.
- */
- static void
--setup_lid_close_safety_timer (GsdPowerManager *manager)
-+setup_inhibit_lid_switch_timer (GsdPowerManager *manager)
- {
-- if (manager->priv->lid_close_safety_timer_id != 0)
-+ if (manager->priv->inhibit_lid_switch_timer_id != 0) {
-+ g_debug ("lid close safety timer already set up");
- return;
-+ }
-+
-+ g_debug ("setting up lid close safety timer");
-
-- manager->priv->lid_close_safety_timer_id = g_timeout_add_seconds (GSD_POWER_MANAGER_LID_CLOSE_SAFETY_TIMEOUT,
-- (GSourceFunc) lid_close_safety_timer_cb,
-+ manager->priv->inhibit_lid_switch_timer_id = g_timeout_add_seconds (GSD_POWER_MANAGER_LID_CLOSE_SAFETY_TIMEOUT,
-+ (GSourceFunc) inhibit_lid_switch_timer_cb,
- manager);
-- g_source_set_name_by_id (manager->priv->lid_close_safety_timer_id, "[GsdPowerManager] lid close safety timer");
-+ g_source_set_name_by_id (manager->priv->inhibit_lid_switch_timer_id, "[GsdPowerManager] lid close safety timer");
- }
-
- static void
--kill_lid_close_safety_timer (GsdPowerManager *manager)
-+restart_inhibit_lid_switch_timer (GsdPowerManager *manager)
- {
-- if (manager->priv->lid_close_safety_timer_id != 0) {
-- g_source_remove (manager->priv->lid_close_safety_timer_id);
-- manager->priv->lid_close_safety_timer_id = 0;
-+ if (manager->priv->inhibit_lid_switch_timer_id != 0) {
-+ g_debug ("restarting lid close safety timer");
-+ g_source_remove (manager->priv->inhibit_lid_switch_timer_id);
-+ manager->priv->inhibit_lid_switch_timer_id = 0;
-+ setup_inhibit_lid_switch_timer (manager);
- }
- }
-
- static void
--suspend_with_lid_closed (GsdPowerManager *manager)
-+do_lid_open_action (GsdPowerManager *manager)
- {
- gboolean ret;
- GError *error = NULL;
-- GsdPowerActionType action_type;
-
-- /* maybe lock the screen if the lid is closed */
-- lock_screensaver (manager);
--
-- /* we have different settings depending on AC state */
-- if (up_client_get_on_battery (manager->priv->up_client)) {
-- action_type = g_settings_get_enum (manager->priv->settings,
-- "lid-close-battery-action");
-- } else {
-- action_type = g_settings_get_enum (manager->priv->settings,
-- "lid-close-ac-action");
-- }
--
-- /* check we won't melt when the lid is closed */
-- if (action_type != GSD_POWER_ACTION_SUSPEND &&
-- action_type != GSD_POWER_ACTION_HIBERNATE) {
-- if (up_client_get_lid_force_sleep (manager->priv->up_client)) {
-- g_warning ("to prevent damage, now forcing suspend");
-- do_power_action_type (manager, GSD_POWER_ACTION_SUSPEND);
-- return;
-- }
-- }
-+ /* play a sound, using sounds from the naming spec */
-+ ca_context_play (manager->priv->canberra_context, 0,
-+ CA_PROP_EVENT_ID, "lid-open",
-+ /* TRANSLATORS: this is the sound description */
-+ CA_PROP_EVENT_DESCRIPTION, _("Lid has been opened"),
-+ NULL);
-
-- /* ensure we turn the panel back on after resume */
-+ /* ensure we turn the panel back on after lid open */
- ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-- GNOME_RR_DPMS_OFF,
-+ GNOME_RR_DPMS_ON,
- &error);
- if (!ret) {
-- g_warning ("failed to turn the panel off after lid close: %s",
-+ g_warning ("failed to turn the panel on after lid open: %s",
- error->message);
-- g_error_free (error);
-+ g_clear_error (&error);
- }
-
-- /* only toggle keyboard if present and not already toggled */
-- if (manager->priv->upower_kdb_proxy &&
-- manager->priv->kbd_brightness_old == -1) {
-+ /* only toggle keyboard if present and already toggled off */
-+ if (manager->priv->upower_kdb_proxy != NULL &&
-+ manager->priv->kbd_brightness_old != -1) {
- ret = upower_kbd_toggle (manager, &error);
- if (!ret) {
-- g_warning ("failed to turn the kbd backlight off: %s",
-+ g_warning ("failed to turn the kbd backlight on: %s",
- error->message);
- g_error_free (error);
- }
- }
--
-- do_power_action_type (manager, action_type);
- }
-
- static void
- do_lid_closed_action (GsdPowerManager *manager)
- {
-+ gboolean ret;
-+ GError *error = NULL;
-+
- /* play a sound, using sounds from the naming spec */
- ca_context_play (manager->priv->canberra_context, 0,
- CA_PROP_EVENT_ID, "lid-close",
-@@ -2309,21 +2296,22 @@ do_lid_closed_action (GsdPowerManager *manager)
- CA_PROP_EVENT_DESCRIPTION, _("Lid has been closed"),
- NULL);
-
-+ /* turn the panel off if the lid is closed (mainly for Dells...) */
-+ ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-+ GNOME_RR_DPMS_OFF,
-+ &error);
-+ if (!ret) {
-+ g_warning ("failed to turn the panel off after lid close: %s",
-+ error->message);
-+ g_error_free (error);
-+ }
-+
- /* refresh RANDR so we get an accurate view of what monitors are plugged in when the lid is closed */
- gnome_rr_screen_refresh (manager->priv->x11_screen, NULL); /* NULL-GError */
-
-- /* perform policy action */
-- if (g_settings_get_boolean (manager->priv->settings, "lid-close-suspend-with-external-monitor")
-- || non_laptop_outputs_are_all_off (manager->priv->x11_screen)) {
-- g_debug ("lid is closed; suspending or hibernating");
-- suspend_with_lid_closed (manager);
-- } else {
-- g_debug ("lid is closed; not suspending nor hibernating since some external monitor outputs are still active");
-- setup_lid_close_safety_timer (manager);
-- }
-+ restart_inhibit_lid_switch_timer (manager);
- }
-
--
- static void
- up_client_changed_cb (UpClient *client, GsdPowerManager *manager)
- {
-@@ -2343,6 +2331,7 @@ up_client_changed_cb (UpClient *client, GsdPowerManager *manager)
- if (manager->priv->lid_is_closed == tmp)
- return;
- manager->priv->lid_is_closed = tmp;
-+ g_debug ("up changed: lid is now %s", tmp ? "closed" : "open");
-
- /* fake a keypress */
- if (tmp)
-@@ -3294,30 +3283,6 @@ gsd_power_manager_class_init (GsdPowerManagerClass *klass)
- }
-
- static void
--sleep_cb_screensaver_proxy_ready_cb (GObject *source_object,
-- GAsyncResult *res,
-- gpointer user_data)
--{
-- GError *error = NULL;
-- GsdPowerManager *manager = GSD_POWER_MANAGER (user_data);
--
-- manager->priv->screensaver_proxy = g_dbus_proxy_new_for_bus_finish (res, &error);
-- if (manager->priv->screensaver_proxy == NULL) {
-- g_warning ("Could not connect to gnome-screensaver: %s",
-- error->message);
-- g_error_free (error);
-- return;
-- }
--
-- /* Finish the upower_notify_sleep_cb() call by locking the screen */
-- g_debug ("gnome-screensaver activated, doing gnome-screensaver lock");
-- g_dbus_proxy_call (manager->priv->screensaver_proxy,
-- "Lock",
-- NULL, G_DBUS_CALL_FLAGS_NONE, -1,
-- NULL, NULL, NULL);
--}
--
--static void
- idle_dbus_signal_cb (GDBusProxy *proxy,
- const gchar *sender_name,
- const gchar *signal_name,
-@@ -3469,75 +3434,38 @@ out:
- }
-
- static void
--lock_screensaver (GsdPowerManager *manager)
-+lock_screensaver (GsdPowerManager *manager,
-+ GSourceFunc done_cb)
- {
- gboolean do_lock;
-
- do_lock = g_settings_get_boolean (manager->priv->settings_screensaver,
- "lock-enabled");
-- if (!do_lock)
-+ if (!do_lock && done_cb) {
-+ done_cb (manager);
- return;
--
-- if (manager->priv->screensaver_proxy != NULL) {
-- g_debug ("doing gnome-screensaver lock");
-- g_dbus_proxy_call (manager->priv->screensaver_proxy,
-- "Lock",
-- NULL, G_DBUS_CALL_FLAGS_NONE, -1,
-- NULL, NULL, NULL);
-- } else {
-- /* connect to the screensaver first */
-- g_dbus_proxy_new_for_bus (G_BUS_TYPE_SESSION,
-- G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
-- NULL,
-- GS_DBUS_NAME,
-- GS_DBUS_PATH,
-- GS_DBUS_INTERFACE,
-- NULL,
-- sleep_cb_screensaver_proxy_ready_cb,
-- manager);
- }
--}
--
--static void
--upower_notify_sleep_cb (UpClient *client,
-- UpSleepKind sleep_kind,
-- GsdPowerManager *manager)
--{
-- lock_screensaver (manager);
--}
--
--static void
--upower_notify_resume_cb (UpClient *client,
-- UpSleepKind sleep_kind,
-- GsdPowerManager *manager)
--{
-- gboolean ret;
-- GError *error = NULL;
--
-- /* this displays the unlock dialogue so the user doesn't have
-- * to move the mouse or press any key before the window comes up */
-- if (manager->priv->screensaver_proxy != NULL) {
-- g_dbus_proxy_call (manager->priv->screensaver_proxy,
-- "SimulateUserActivity",
-- NULL,
-- G_DBUS_CALL_FLAGS_NONE,
-- -1, NULL, NULL, NULL);
-- }
--
-- /* close existing notifications on resume, the system power
-- * state is probably different now */
-- notify_close_if_showing (manager->priv->notification_low);
-- notify_close_if_showing (manager->priv->notification_discharging);
-
-- /* ensure we turn the panel back on after resume */
-- ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-- GNOME_RR_DPMS_ON,
-- &error);
-- if (!ret) {
-- g_warning ("failed to turn the panel on after resume: %s",
-- error->message);
-- g_error_free (error);
-- }
-+ g_dbus_connection_call (manager->priv->connection,
-+ GS_DBUS_NAME,
-+ GS_DBUS_PATH,
-+ GS_DBUS_INTERFACE,
-+ "Lock",
-+ NULL, NULL,
-+ G_DBUS_CALL_FLAGS_NONE, -1,
-+ NULL, NULL, NULL);
-+
-+ /* Wait until gnome-shell shield animation is done
-+ *
-+ * FIXME: the shell should mark the lock as active
-+ * when the shield is down, then we could wait for
-+ * that. This would also fix the problem that we wait
-+ * needlessly when the shell has already locked the
-+ * screen because it is initiating the suspend.
-+ *
-+ * https://bugzilla.gnome.org/show_bug.cgi?id=685053
-+ */
-+ g_timeout_add (500, done_cb, manager);
- }
-
- static void
-@@ -3696,6 +3624,287 @@ disable_builtin_screensaver (gpointer unused)
- return TRUE;
- }
-
-+static void
-+inhibit_lid_switch_done (GObject *source,
-+ GAsyncResult *result,
-+ gpointer user_data)
-+{
-+ GDBusProxy *proxy = G_DBUS_PROXY (source);
-+ GsdPowerManager *manager = GSD_POWER_MANAGER (user_data);
-+ GError *error = NULL;
-+ GVariant *res;
-+ GUnixFDList *fd_list = NULL;
-+ gint idx;
-+
-+ res = g_dbus_proxy_call_with_unix_fd_list_finish (proxy, &fd_list, result, &error);
-+ if (res == NULL) {
-+ g_warning ("Unable to inhibit lid switch: %s", error->message);
-+ g_error_free (error);
-+ } else {
-+ g_variant_get (res, "(h)", &idx);
-+ manager->priv->inhibit_lid_switch_fd = g_unix_fd_list_get (fd_list, idx, &error);
-+ if (manager->priv->inhibit_lid_switch_fd == -1) {
-+ g_warning ("Failed to receive system inhibitor fd: %s", error->message);
-+ g_error_free (error);
-+ }
-+ g_debug ("System inhibitor fd is %d", manager->priv->inhibit_lid_switch_fd);
-+ g_object_unref (fd_list);
-+ g_variant_unref (res);
-+ }
-+}
-+
-+static void
-+inhibit_lid_switch (GsdPowerManager *manager)
-+{
-+ GVariant *params;
-+
-+ if (manager->priv->inhibit_lid_switch_taken) {
-+ g_debug ("already inhibited lid-switch");
-+ return;
-+ }
-+ g_debug ("Adding lid switch system inhibitor");
-+ manager->priv->inhibit_lid_switch_taken = TRUE;
-+
-+ params = g_variant_new ("(ssss)",
-+ "handle-lid-switch",
-+ g_get_user_name (),
-+ "Multiple displays attached",
-+ "block");
-+ g_dbus_proxy_call_with_unix_fd_list (manager->priv->logind_proxy,
-+ "Inhibit",
-+ params,
-+ 0,
-+ G_MAXINT,
-+ NULL,
-+ NULL,
-+ inhibit_lid_switch_done,
-+ manager);
-+}
-+
-+static void
-+uninhibit_lid_switch (GsdPowerManager *manager)
-+{
-+ if (manager->priv->inhibit_lid_switch_fd == -1) {
-+ g_debug ("no lid-switch inhibitor");
-+ return;
-+ }
-+ g_debug ("Removing lid switch system inhibitor");
-+ close (manager->priv->inhibit_lid_switch_fd);
-+ manager->priv->inhibit_lid_switch_fd = -1;
-+ manager->priv->inhibit_lid_switch_taken = FALSE;
-+}
-+
-+static void
-+inhibit_suspend_done (GObject *source,
-+ GAsyncResult *result,
-+ gpointer user_data)
-+{
-+ GDBusProxy *proxy = G_DBUS_PROXY (source);
-+ GsdPowerManager *manager = GSD_POWER_MANAGER (user_data);
-+ GError *error = NULL;
-+ GVariant *res;
-+ GUnixFDList *fd_list = NULL;
-+ gint idx;
-+
-+ res = g_dbus_proxy_call_with_unix_fd_list_finish (proxy, &fd_list, result, &error);
-+ if (res == NULL) {
-+ g_warning ("Unable to inhibit suspend: %s", error->message);
-+ g_error_free (error);
-+ } else {
-+ g_variant_get (res, "(h)", &idx);
-+ manager->priv->inhibit_suspend_fd = g_unix_fd_list_get (fd_list, idx, &error);
-+ if (manager->priv->inhibit_suspend_fd == -1) {
-+ g_warning ("Failed to receive system inhibitor fd: %s", error->message);
-+ g_error_free (error);
-+ }
-+ g_debug ("System inhibitor fd is %d", manager->priv->inhibit_suspend_fd);
-+ g_object_unref (fd_list);
-+ g_variant_unref (res);
-+ }
-+}
-+
-+/* We take a delay inhibitor here, which causes logind to send a
-+ * PrepareToSleep signal, which gives us a chance to lock the screen
-+ * and do some other preparations.
-+ */
-+static void
-+inhibit_suspend (GsdPowerManager *manager)
-+{
-+ if (manager->priv->inhibit_suspend_taken) {
-+ g_debug ("already inhibited lid-switch");
-+ return;
-+ }
-+ g_debug ("Adding suspend delay inhibitor");
-+ manager->priv->inhibit_suspend_taken = TRUE;
-+ g_dbus_proxy_call_with_unix_fd_list (manager->priv->logind_proxy,
-+ "Inhibit",
-+ g_variant_new ("(ssss)",
-+ "sleep",
-+ g_get_user_name (),
-+ "GNOME needs to lock the screen",
-+ "delay"),
-+ 0,
-+ G_MAXINT,
-+ NULL,
-+ NULL,
-+ inhibit_suspend_done,
-+ manager);
-+}
-+
-+static void
-+uninhibit_suspend (GsdPowerManager *manager)
-+{
-+ if (manager->priv->inhibit_suspend_fd == -1) {
-+ g_debug ("no suspend delay inhibitor");
-+ return;
-+ }
-+ g_debug ("Removing suspend delay inhibitor");
-+ close (manager->priv->inhibit_suspend_fd);
-+ manager->priv->inhibit_suspend_fd = -1;
-+ manager->priv->inhibit_suspend_taken = TRUE;
-+}
-+
-+static gboolean
-+randr_output_is_on (GnomeRROutput *output)
-+{
-+ GnomeRRCrtc *crtc;
-+
-+ crtc = gnome_rr_output_get_crtc (output);
-+ if (!crtc)
-+ return FALSE;
-+ return gnome_rr_crtc_get_current_mode (crtc) != NULL;
-+}
-+
-+static gboolean
-+external_monitor_is_connected (GnomeRRScreen *screen)
-+{
-+ GnomeRROutput **outputs;
-+ guint i;
-+
-+ if (g_file_test ("/tmp/external_connected", G_FILE_TEST_EXISTS))
-+ return TRUE;
-+
-+ /* see if we have more than one screen plugged in */
-+ outputs = gnome_rr_screen_list_outputs (screen);
-+ for (i = 0; outputs[i] != NULL; i++) {
-+ if (randr_output_is_on (outputs[i]) &&
-+ !gnome_rr_output_is_laptop (outputs[i]))
-+ return TRUE;
-+ }
-+
-+ return FALSE;
-+}
-+
-+static void
-+on_randr_event (GnomeRRScreen *screen, gpointer user_data)
-+{
-+ GsdPowerManager *manager = GSD_POWER_MANAGER (user_data);
-+
-+ /* when a second monitor is plugged in, we take the
-+ * handle-lid-switch inhibitor lock of logind to prevent
-+ * it from suspending.
-+ *
-+ * Uninhibiting is done in the inhibit_lid_switch_timer,
-+ * since we want to give users a few seconds when unplugging
-+ * and replugging an external monitor, not suspend right away.
-+ */
-+ if (external_monitor_is_connected (screen) &&
-+ !g_settings_get_boolean (manager->priv->settings,
-+ "lid-close-suspend-with-external-monitor")) {
-+ inhibit_lid_switch (manager);
-+ setup_inhibit_lid_switch_timer (manager);
-+ }
-+ else {
-+ restart_inhibit_lid_switch_timer (manager);
-+ }
-+}
-+
-+static gboolean
-+screen_lock_done_cb (gpointer data)
-+{
-+ GsdPowerManager *manager = data;
-+
-+ /* lift the delay inhibit, so logind can proceed */
-+ uninhibit_suspend (manager);
-+
-+ return FALSE;
-+}
-+
-+static void
-+handle_suspend_actions (GsdPowerManager *manager)
-+{
-+ gboolean ret;
-+ GError *error = NULL;
-+
-+ /* ensure we turn the panel back on after resume */
-+ ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-+ GNOME_RR_DPMS_ON,
-+ &error);
-+ if (!ret) {
-+ g_warning ("failed to turn the panel on after resume: %s",
-+ error->message);
-+ g_error_free (error);
-+ }
-+
-+ lock_screensaver (manager, screen_lock_done_cb);
-+}
-+
-+static void
-+handle_resume_actions (GsdPowerManager *manager)
-+{
-+ gboolean ret;
-+ GError *error = NULL;
-+
-+ /* this displays the unlock dialogue so the user doesn't have
-+ * to move the mouse or press any key before the window comes up */
-+ g_dbus_connection_call (manager->priv->connection,
-+ GS_DBUS_NAME,
-+ GS_DBUS_PATH,
-+ GS_DBUS_INTERFACE,
-+ "SimulateUserActivity",
-+ NULL, NULL,
-+ G_DBUS_CALL_FLAGS_NONE, -1,
-+ NULL, NULL, NULL);
-+
-+ /* close existing notifications on resume, the system power
-+ * state is probably different now */
-+ notify_close_if_showing (manager->priv->notification_low);
-+ notify_close_if_showing (manager->priv->notification_discharging);
-+
-+ /* ensure we turn the panel back on after resume */
-+ ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-+ GNOME_RR_DPMS_ON,
-+ &error);
-+ if (!ret) {
-+ g_warning ("failed to turn the panel on after resume: %s",
-+ error->message);
-+ g_error_free (error);
-+ }
-+
-+ /* set up the delay again */
-+ inhibit_suspend (manager);
-+}
-+
-+static void
-+logind_proxy_signal_cb (GDBusProxy *proxy,
-+ const gchar *sender_name,
-+ const gchar *signal_name,
-+ GVariant *parameters,
-+ gpointer user_data)
-+{
-+ GsdPowerManager *manager = GSD_POWER_MANAGER (user_data);
-+ gboolean is_about_to_suspend;
-+
-+ if (g_strcmp0 (signal_name, "PrepareForSleep") != 0)
-+ return;
-+ g_variant_get (parameters, "(b)", &is_about_to_suspend);
-+ if (is_about_to_suspend) {
-+ handle_suspend_actions (manager);
-+ } else {
-+ handle_resume_actions (manager);
-+ }
-+}
-+
- gboolean
- gsd_power_manager_start (GsdPowerManager *manager,
- GError **error)
-@@ -3705,6 +3914,25 @@ gsd_power_manager_start (GsdPowerManager *manager,
- g_debug ("Starting power manager");
- gnome_settings_profile_start (NULL);
-
-+ manager->priv->logind_proxy =
-+ g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
-+ 0,
-+ NULL,
-+ SYSTEMD_DBUS_NAME,
-+ SYSTEMD_DBUS_PATH,
-+ SYSTEMD_DBUS_INTERFACE,
-+ NULL,
-+ error);
-+ if (manager->priv->logind_proxy == NULL) {
-+ g_warning ("no systemd support");
-+ return FALSE;
-+ }
-+ g_signal_connect (manager->priv->logind_proxy, "g-signal",
-+ G_CALLBACK (logind_proxy_signal_cb),
-+ manager);
-+ /* Set up a delay inhibitor to be informed about suspend attempts */
-+ inhibit_suspend (manager);
-+
- /* track the active session */
- manager->priv->session = gnome_settings_session_new ();
- g_signal_connect (manager->priv->session, "notify::state",
-@@ -3719,10 +3947,6 @@ gsd_power_manager_start (GsdPowerManager *manager,
- G_CALLBACK (engine_settings_key_changed_cb), manager);
- manager->priv->settings_screensaver = g_settings_new ("org.gnome.desktop.screensaver");
- manager->priv->up_client = up_client_new ();
-- g_signal_connect (manager->priv->up_client, "notify-sleep",
-- G_CALLBACK (upower_notify_sleep_cb), manager);
-- g_signal_connect (manager->priv->up_client, "notify-resume",
-- G_CALLBACK (upower_notify_resume_cb), manager);
- manager->priv->lid_is_closed = up_client_get_lid_is_closed (manager->priv->up_client);
- g_signal_connect (manager->priv->up_client, "device-added",
- G_CALLBACK (engine_device_added_cb), manager);
-@@ -3836,6 +4060,9 @@ gsd_power_manager_start (GsdPowerManager *manager,
- manager->priv->x11_screen = gnome_rr_screen_new (gdk_screen_get_default (), error);
- if (manager->priv->x11_screen == NULL)
- return FALSE;
-+ g_signal_connect (manager->priv->x11_screen, "changed", G_CALLBACK (on_randr_event), manager);
-+ /* set up initial state */
-+ on_randr_event (manager->priv->x11_screen, manager);
-
- /* ensure the default dpms timeouts are cleared */
- ret = gnome_rr_screen_set_dpms_mode (manager->priv->x11_screen,
-@@ -3865,6 +4092,11 @@ gsd_power_manager_stop (GsdPowerManager *manager)
- {
- g_debug ("Stopping power manager");
-
-+ if (manager->priv->inhibit_lid_switch_timer_id != 0) {
-+ g_source_remove (manager->priv->inhibit_lid_switch_timer_id);
-+ manager->priv->inhibit_lid_switch_timer_id = 0;
-+ }
-+
- if (manager->priv->bus_cancellable != NULL) {
- g_cancellable_cancel (manager->priv->bus_cancellable);
- g_object_unref (manager->priv->bus_cancellable);
-@@ -3876,8 +4108,6 @@ gsd_power_manager_stop (GsdPowerManager *manager)
- manager->priv->introspection_data = NULL;
- }
-
-- kill_lid_close_safety_timer (manager);
--
- g_signal_handlers_disconnect_by_data (manager->priv->up_client, manager);
-
- g_clear_object (&manager->priv->connection);
-@@ -3885,6 +4115,19 @@ gsd_power_manager_stop (GsdPowerManager *manager)
- g_clear_object (&manager->priv->settings);
- g_clear_object (&manager->priv->settings_screensaver);
- g_clear_object (&manager->priv->up_client);
-+
-+ if (manager->priv->inhibit_lid_switch_fd != -1) {
-+ close (manager->priv->inhibit_lid_switch_fd);
-+ manager->priv->inhibit_lid_switch_fd = -1;
-+ manager->priv->inhibit_lid_switch_taken = FALSE;
-+ }
-+ if (manager->priv->inhibit_suspend_fd != -1) {
-+ close (manager->priv->inhibit_suspend_fd);
-+ manager->priv->inhibit_suspend_fd = -1;
-+ manager->priv->inhibit_suspend_taken = FALSE;
-+ }
-+
-+ g_clear_object (&manager->priv->logind_proxy);
- g_clear_object (&manager->priv->x11_screen);
-
- g_ptr_array_unref (manager->priv->devices_array);
-@@ -3918,6 +4161,8 @@ static void
- gsd_power_manager_init (GsdPowerManager *manager)
- {
- manager->priv = GSD_POWER_MANAGER_GET_PRIVATE (manager);
-+ manager->priv->inhibit_lid_switch_fd = -1;
-+ manager->priv->inhibit_suspend_fd = -1;
- }
-
- static void
---
-1.7.12.2
-
diff --git a/community-testing/gnome-settings-daemon-updates/PKGBUILD b/community-testing/gnome-settings-daemon-updates/PKGBUILD
deleted file mode 100644
index ad446e3f6..000000000
--- a/community-testing/gnome-settings-daemon-updates/PKGBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# $Id: PKGBUILD 78516 2012-10-20 07:29:43Z jconder $
-# Maintainer: Jonathan Conder <jonno.conder@gmail.com>
-
-_pkgname=gnome-settings-daemon
-pkgname=$_pkgname-updates
-pkgver=3.6.1
-pkgrel=1
-pkgdesc="Updates plugin for the GNOME Settings daemon"
-arch=('i686' 'x86_64')
-license=('GPL')
-depends=('gnome-packagekit' "$_pkgname")
-makedepends=('intltool' 'gtk-doc' 'gnome-desktop' 'gnome-common' 'xf86-input-wacom')
-options=('!emptydirs' '!libtool')
-install=$_pkgname.install
-url="http://www.gnome.org"
-source=("http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver%.*}/$_pkgname-$pkgver.tar.xz"
- 'screensaver.patch'
- '0001-power-and-media-keys-Use-logind-for-suspending-and-r.patch'
- 'arch.patch')
-sha256sums=('1fe96e0709d7c618d90cc1bfcddc46eede3c2cdb305f5e7f4cb388d43dd5526a'
- 'd2c32fa0262e4d0e97fc07fb631ad2627b4f2ae273e2cb3028236d9725711880'
- 'f23db348593f58da755889928d7fa75817479d9ad5be67cc7a2f8cbc5db23632'
- '32f18a02698bb24aa8ae293eb7bf74a8261e3ce2c5149d259a87bd14500089ea')
-
-build() {
- cd "$srcdir/$_pkgname-$pkgver"
-
- patch -Np1 -i "$srcdir/screensaver.patch"
- patch -Np1 -i "$srcdir/0001-power-and-media-keys-Use-logind-for-suspending-and-r.patch"
- patch -Np1 -i "$srcdir/arch.patch"
-
- aclocal
- automake
- ./configure --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --libexecdir=/usr/lib/gnome-settings-daemon \
- --disable-static \
- --enable-systemd
-
- #https://bugzilla.gnome.org/show_bug.cgi?id=656231
- sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
- make -s
-}
-
-package() {
- cd "$srcdir/$_pkgname-$pkgver"
- make -C 'plugins/updates' DESTDIR="${pkgdir}" install
-
- _schema='org.gnome.settings-daemon.plugins.updates.gschema.xml'
- install -D -m644 "data/$_schema" "$pkgdir/usr/share/glib-2.0/schemas/$_schema"
-}
diff --git a/community-testing/gnome-settings-daemon-updates/arch.patch b/community-testing/gnome-settings-daemon-updates/arch.patch
deleted file mode 100644
index df70cd9f8..000000000
--- a/community-testing/gnome-settings-daemon-updates/arch.patch
+++ /dev/null
@@ -1,325 +0,0 @@
-diff --git a/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in b/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in
-index 9af2718..bb45e48 100644
---- a/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in
-+++ b/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in
-@@ -16,7 +16,7 @@
- <_description>Use mobile broadband connections such as GSM and CDMA to check for updates.</_description>
- </key>
- <key name="auto-download-updates" type="b">
-- <default>true</default>
-+ <default>false</default>
- <_summary>Automatically download updates in the background without confirmation</_summary>
- <_description>Automatically download updates in the background without confirmation. Updates will be auto-downloaded when using wired network connnections, and mobile broadband if 'connection-use-mobile' is enabled.</_description>
- </key>
-@@ -36,7 +36,7 @@
- <_description>The last time we notified the user about non-critical updates. Value is in seconds since the epoch, or zero for never.</_description>
- </key>
- <key name="frequency-get-upgrades" type="i">
-- <default>604800</default>
-+ <default>0</default>
- <_summary>How often to check for distribution upgrades</_summary>
- <_description>How often to check for distribution upgrades. Value is in seconds.</_description>
- </key>
-diff --git a/plugins/updates/Makefile.am b/plugins/updates/Makefile.am
-index 81c7179..6fd3534 100644
---- a/plugins/updates/Makefile.am
-+++ b/plugins/updates/Makefile.am
-@@ -15,7 +15,9 @@ libupdates_la_SOURCES = \
- gsd-updates-firmware.h \
- gsd-updates-firmware.c \
- gsd-updates-manager.h \
-- gsd-updates-manager.c
-+ gsd-updates-manager.c \
-+ gsd-updates-watch.h \
-+ gsd-updates-watch.c
-
- libupdates_la_CPPFLAGS = \
- -I$(top_srcdir)/gnome-settings-daemon \
-diff --git a/plugins/updates/gsd-updates-manager.c b/plugins/updates/gsd-updates-manager.c
-index 95ee1c4..7b26c06 100644
---- a/plugins/updates/gsd-updates-manager.c
-+++ b/plugins/updates/gsd-updates-manager.c
-@@ -33,6 +33,7 @@
- #include "gsd-updates-manager.h"
- #include "gsd-updates-firmware.h"
- #include "gsd-updates-refresh.h"
-+#include "gsd-updates-watch.h"
- #include "gsd-updates-common.h"
- #include "gnome-settings-profile.h"
-
-@@ -47,6 +48,7 @@ struct GsdUpdatesManagerPrivate
- GCancellable *cancellable;
- GsdUpdatesRefresh *refresh;
- GsdUpdatesFirmware *firmware;
-+ GsdUpdatesWatch *watch;
- GSettings *settings_proxy;
- GSettings *settings_ftp;
- GSettings *settings_gsd;
-@@ -1360,6 +1362,9 @@ gsd_updates_manager_start (GsdUpdatesManager *manager,
- g_signal_connect (manager->priv->refresh, "get-updates",
- G_CALLBACK (due_get_updates_cb), manager);
-
-+ /* watch transaction progress */
-+ manager->priv->watch = gsd_updates_watch_new ();
-+
- /* get proxy settings */
- manager->priv->settings_proxy = g_settings_new ("org.gnome.system.proxy");
- g_signal_connect (manager->priv->settings_proxy, "changed",
-@@ -1455,6 +1460,7 @@ gsd_updates_manager_stop (GsdUpdatesManager *manager)
- g_clear_object (&manager->priv->task);
- g_clear_object (&manager->priv->refresh);
- g_clear_object (&manager->priv->firmware);
-+ g_clear_object (&manager->priv->watch);
- g_clear_object (&manager->priv->proxy_session);
- g_clear_object (&manager->priv->volume_monitor);
- g_clear_object (&manager->priv->cancellable);
-diff --git a/plugins/updates/gsd-updates-watch.c b/plugins/updates/gsd-updates-watch.c
-new file mode 100644
-index 0000000..d3a0202
---- /dev/null
-+++ b/plugins/updates/gsd-updates-watch.c
-@@ -0,0 +1,186 @@
-+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
-+ *
-+ * Copyright (C) 2011-2012 Jonathan Conder <jonno.conder@gmail.com>
-+ *
-+ * Licensed under the GNU General Public License Version 2
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-+ */
-+
-+#include "config.h"
-+
-+#include <unistd.h>
-+#include <glib/gi18n.h>
-+#include <packagekit-glib2/packagekit.h>
-+#include <libnotify/notify.h>
-+
-+#include "gsd-updates-watch.h"
-+
-+#define GSD_UPDATES_WATCH_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_UPDATES_WATCH, GsdUpdatesWatchPrivate))
-+
-+struct GsdUpdatesWatchPrivate
-+{
-+ PkTransactionList *tlist;
-+ PkClient *client;
-+};
-+
-+G_DEFINE_TYPE (GsdUpdatesWatch, gsd_updates_watch, G_TYPE_OBJECT)
-+
-+static void
-+on_notification_closed (NotifyNotification *notification, gpointer data)
-+{
-+ g_object_unref (notification);
-+}
-+
-+static void
-+gsd_updates_watch_message_cb (PkMessage *item, GsdUpdatesWatch *watch)
-+{
-+ NotifyNotification *notification;
-+ gchar *details = NULL;
-+ const gchar *title, *message;
-+ GError *error = NULL;
-+
-+ g_return_if_fail (PK_IS_MESSAGE (item));
-+ g_return_if_fail (GSD_IS_UPDATES_WATCH (watch));
-+
-+ g_object_get (item, "details", &details, NULL);
-+ title = _("More information");
-+ message = details;
-+
-+ /* use a better title if available */
-+ if (g_str_has_prefix (details, "<b>")) {
-+ gchar *end = g_strstr_len (details, -1, "</b>\n");
-+ if (end != NULL && g_strstr_len (details, end - details, "\n") == NULL) {
-+ title = details + 3;
-+ *end = '\0';
-+ message = end + 5;
-+ }
-+ }
-+
-+ /* display a notification */
-+ notification = notify_notification_new (title, message, NULL);
-+ notify_notification_set_app_name (notification, _("Software Updates"));
-+ notify_notification_set_timeout (notification, NOTIFY_EXPIRES_NEVER);
-+ notify_notification_set_urgency (notification, NOTIFY_URGENCY_NORMAL);
-+
-+ g_signal_connect (notification, "closed", G_CALLBACK (on_notification_closed), NULL);
-+ if (!notify_notification_show (notification, &error)) {
-+ g_warning ("error: %s", error->message);
-+ g_error_free (error);
-+ }
-+
-+ g_free (details);
-+}
-+
-+static void
-+gsd_updates_watch_adopt_cb (PkClient *client, GAsyncResult *res, GsdUpdatesWatch *watch)
-+{
-+ PkResults *results;
-+ PkProgress *progress = NULL;
-+ guint uid;
-+ GPtrArray *array;
-+ GError *error = NULL;
-+
-+ g_return_if_fail (PK_IS_CLIENT (client));
-+ g_return_if_fail (G_IS_ASYNC_RESULT (res));
-+ g_return_if_fail (GSD_IS_UPDATES_WATCH (watch));
-+
-+ results = pk_client_generic_finish (client, res, &error);
-+ if (results == NULL) {
-+ g_warning ("failed to adopt: %s", error->message);
-+ g_error_free (error);
-+ goto out;
-+ }
-+
-+ g_object_get (results, "progress", &progress, NULL);
-+ g_object_get (progress, "uid", &uid, NULL);
-+
-+ /* only display messages from the same user */
-+ if (uid != getuid ()) {
-+ g_printerr ("ignoring messages\n");
-+ goto out;
-+ }
-+
-+ array = pk_results_get_message_array (results);
-+ g_ptr_array_foreach (array, (GFunc) gsd_updates_watch_message_cb, watch);
-+ g_ptr_array_unref (array);
-+
-+out:
-+ if (progress != NULL) {
-+ g_object_unref (progress);
-+ }
-+ if (results != NULL) {
-+ g_object_unref (results);
-+ }
-+}
-+
-+static void
-+gsd_updates_watch_tlist_added_cb (PkTransactionList *tlist, const gchar *tid, GsdUpdatesWatch *watch)
-+{
-+ g_return_if_fail (PK_IS_TRANSACTION_LIST (tlist));
-+ g_return_if_fail (tid != NULL);
-+ g_return_if_fail (GSD_IS_UPDATES_WATCH (watch));
-+
-+ /* listen for messages */
-+ pk_client_adopt_async (watch->priv->client, tid, NULL, NULL, NULL,
-+ (GAsyncReadyCallback) gsd_updates_watch_adopt_cb, watch);
-+}
-+
-+static void
-+gsd_updates_watch_init (GsdUpdatesWatch *watch)
-+{
-+ g_return_if_fail (GSD_IS_UPDATES_WATCH (watch));
-+
-+ watch->priv = GSD_UPDATES_WATCH_GET_PRIVATE (watch);
-+ watch->priv->tlist = pk_transaction_list_new ();
-+ watch->priv->client = pk_client_new ();
-+
-+ g_signal_connect (watch->priv->tlist, "added",
-+ G_CALLBACK (gsd_updates_watch_tlist_added_cb), watch);
-+}
-+
-+static void
-+gsd_updates_watch_finalize (GObject *object)
-+{
-+ GsdUpdatesWatch *watch;
-+
-+ g_return_if_fail (GSD_IS_UPDATES_WATCH (object));
-+
-+ watch = GSD_UPDATES_WATCH (object);
-+ g_return_if_fail (watch->priv != NULL);
-+
-+ if (watch->priv->tlist != NULL) {
-+ g_object_unref (watch->priv->tlist);
-+ }
-+ if (watch->priv->client != NULL) {
-+ g_object_unref (watch->priv->client);
-+ }
-+
-+ G_OBJECT_CLASS (gsd_updates_watch_parent_class)->finalize (object);
-+}
-+
-+GsdUpdatesWatch *
-+gsd_updates_watch_new (void)
-+{
-+ return GSD_UPDATES_WATCH (g_object_new (GSD_TYPE_UPDATES_WATCH, NULL));
-+}
-+
-+static void
-+gsd_updates_watch_class_init (GsdUpdatesWatchClass *klass)
-+{
-+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
-+ object_class->finalize = gsd_updates_watch_finalize;
-+ g_type_class_add_private (klass, sizeof (GsdUpdatesWatchPrivate));
-+}
-diff --git a/plugins/updates/gsd-updates-watch.h b/plugins/updates/gsd-updates-watch.h
-new file mode 100644
-index 0000000..439464f
---- /dev/null
-+++ b/plugins/updates/gsd-updates-watch.h
-@@ -0,0 +1,52 @@
-+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
-+ *
-+ * Copyright (C) 2011-2012 Jonathan Conder <jonno.conder@gmail.com>
-+ *
-+ * Licensed under the GNU General Public License Version 2
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-+ */
-+
-+#ifndef __GSD_UPDATES_WATCH_H
-+#define __GSD_UPDATES_WATCH_H
-+
-+#include <glib-object.h>
-+
-+G_BEGIN_DECLS
-+
-+#define GSD_TYPE_UPDATES_WATCH (gsd_updates_watch_get_type ())
-+#define GSD_UPDATES_WATCH(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSD_TYPE_UPDATES_WATCH, GsdUpdatesWatch))
-+#define GSD_UPDATES_WATCH_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSD_TYPE_UPDATES_WATCH, GsdUpdatesWatchClass))
-+#define GSD_IS_UPDATES_WATCH(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSD_TYPE_UPDATES_WATCH))
-+
-+typedef struct GsdUpdatesWatchPrivate GsdUpdatesWatchPrivate;
-+
-+typedef struct
-+{
-+ GObject parent;
-+ GsdUpdatesWatchPrivate *priv;
-+} GsdUpdatesWatch;
-+
-+typedef struct
-+{
-+ GObjectClass parent_class;
-+} GsdUpdatesWatchClass;
-+
-+GType gsd_updates_watch_get_type (void);
-+GsdUpdatesWatch *gsd_updates_watch_new (void);
-+
-+G_END_DECLS
-+
-+#endif /* __GSD_UPDATES_WATCH_H */
diff --git a/community-testing/gnome-settings-daemon-updates/gnome-settings-daemon.install b/community-testing/gnome-settings-daemon-updates/gnome-settings-daemon.install
deleted file mode 100644
index f7e8c46ac..000000000
--- a/community-testing/gnome-settings-daemon-updates/gnome-settings-daemon.install
+++ /dev/null
@@ -1,12 +0,0 @@
-post_install() {
- 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/community-testing/gnome-settings-daemon-updates/screensaver.patch b/community-testing/gnome-settings-daemon-updates/screensaver.patch
deleted file mode 100644
index bbcfe3430..000000000
--- a/community-testing/gnome-settings-daemon-updates/screensaver.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-From b47e4019a12ac84fba31e1c631d878ce03fa3808 Mon Sep 17 00:00:00 2001
-From: Rui Matos <tiagomatos@gmail.com>
-Date: Wed, 17 Oct 2012 22:44:54 +0000
-Subject: power: Add a watchdog to keep X's builtin screen saver disabled
-
-X's builtin screen saver may activate DPMS. Since we want to activate
-DPMS ourselves according to our own policy we must make sure that X's
-screen saver remains disabled.
-
-This code is a copy of the original found in gs-watcher-x11.c from
-gnome-screensaver which stopped being used in GNOME 3.6.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=686339
----
-diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
-index 0e06495..070cf32 100644
---- a/plugins/power/gsd-power-manager.c
-+++ b/plugins/power/gsd-power-manager.c
-@@ -27,6 +27,7 @@
- #include <stdio.h>
- #include <sys/wait.h>
- #include <glib/gi18n.h>
-+#include <gdk/gdkx.h>
- #include <gtk/gtk.h>
- #include <libupower-glib/upower.h>
- #include <libnotify/notify.h>
-@@ -80,6 +81,8 @@
- /* Keep this in sync with gnome-shell */
- #define SCREENSAVER_FADE_TIME 10 /* seconds */
-
-+#define XSCREENSAVER_WATCHDOG_TIMEOUT 120 /* seconds */
-+
- enum {
- GSD_POWER_IDLETIME_NULL_ID,
- GSD_POWER_IDLETIME_DIM_ID,
-@@ -197,6 +200,7 @@ struct GsdPowerManagerPrivate
- GsdPowerIdleMode current_idle_mode;
- guint lid_close_safety_timer_id;
- GtkStatusIcon *status_icon;
-+ guint xscreensaver_watchdog_timer_id;
- };
-
- enum {
-@@ -3621,6 +3625,77 @@ engine_session_active_changed_cb (GnomeSettingsSession *session,
- idle_set_mode (manager, GSD_POWER_IDLE_MODE_NORMAL);
- }
-
-+/* This timer goes off every few minutes, whether the user is idle or not,
-+ to try and clean up anything that has gone wrong.
-+
-+ It calls disable_builtin_screensaver() so that if xset has been used,
-+ or some other program (like xlock) has messed with the XSetScreenSaver()
-+ settings, they will be set back to sensible values (if a server extension
-+ is in use, messing with xlock can cause the screensaver to never get a wakeup
-+ event, and could cause monitor power-saving to occur, and all manner of
-+ heinousness.)
-+
-+ This code was originally part of gnome-screensaver, see
-+ http://git.gnome.org/browse/gnome-screensaver/tree/src/gs-watcher-x11.c?id=fec00b12ec46c86334cfd36b37771cc4632f0d4d#n530
-+ */
-+static gboolean
-+disable_builtin_screensaver (gpointer unused)
-+{
-+ int current_server_timeout, current_server_interval;
-+ int current_prefer_blank, current_allow_exp;
-+ int desired_server_timeout, desired_server_interval;
-+ int desired_prefer_blank, desired_allow_exp;
-+
-+ XGetScreenSaver (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
-+ &current_server_timeout,
-+ &current_server_interval,
-+ &current_prefer_blank,
-+ &current_allow_exp);
-+
-+ desired_server_timeout = current_server_timeout;
-+ desired_server_interval = current_server_interval;
-+ desired_prefer_blank = current_prefer_blank;
-+ desired_allow_exp = current_allow_exp;
-+
-+ desired_server_interval = 0;
-+
-+ /* I suspect (but am not sure) that DontAllowExposures might have
-+ something to do with powering off the monitor as well, at least
-+ on some systems that don't support XDPMS? Who know... */
-+ desired_allow_exp = AllowExposures;
-+
-+ /* When we're not using an extension, set the server-side timeout to 0,
-+ so that the server never gets involved with screen blanking, and we
-+ do it all ourselves. (However, when we *are* using an extension,
-+ we tell the server when to notify us, and rather than blanking the
-+ screen, the server will send us an X event telling us to blank.)
-+ */
-+ desired_server_timeout = 0;
-+
-+ if (desired_server_timeout != current_server_timeout
-+ || desired_server_interval != current_server_interval
-+ || desired_prefer_blank != current_prefer_blank
-+ || desired_allow_exp != current_allow_exp) {
-+
-+ g_debug ("disabling server builtin screensaver:"
-+ " (xset s %d %d; xset s %s; xset s %s)",
-+ desired_server_timeout,
-+ desired_server_interval,
-+ (desired_prefer_blank ? "blank" : "noblank"),
-+ (desired_allow_exp ? "expose" : "noexpose"));
-+
-+ XSetScreenSaver (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
-+ desired_server_timeout,
-+ desired_server_interval,
-+ desired_prefer_blank,
-+ desired_allow_exp);
-+
-+ XSync (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), FALSE);
-+ }
-+
-+ return TRUE;
-+}
-+
- gboolean
- gsd_power_manager_start (GsdPowerManager *manager,
- GError **error)
-@@ -3778,6 +3853,9 @@ gsd_power_manager_start (GsdPowerManager *manager,
- /* set the initial dim time that can adapt for the user */
- refresh_idle_dim_settings (manager);
-
-+ manager->priv->xscreensaver_watchdog_timer_id = g_timeout_add_seconds (XSCREENSAVER_WATCHDOG_TIMEOUT,
-+ disable_builtin_screensaver,
-+ NULL);
- gnome_settings_profile_end (NULL);
- return TRUE;
- }
-@@ -3829,6 +3907,11 @@ gsd_power_manager_stop (GsdPowerManager *manager)
-
- g_clear_object (&manager->priv->idletime);
- g_clear_object (&manager->priv->status_icon);
-+
-+ if (manager->priv->xscreensaver_watchdog_timer_id > 0) {
-+ g_source_remove (manager->priv->xscreensaver_watchdog_timer_id);
-+ manager->priv->xscreensaver_watchdog_timer_id = 0;
-+ }
- }
-
- static void
---
-cgit v0.9.0.2
diff --git a/community-testing/gnote/PKGBUILD b/community-testing/gnote/PKGBUILD
deleted file mode 100644
index 10875eac1..000000000
--- a/community-testing/gnote/PKGBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# $Id: PKGBUILD 78578 2012-10-21 10:46:20Z ibiru $
-# Maintainer: Ionut Biru <ibiru@archlinux.org>
-# Contributor: uastasi <uastasi@archlinux.us>
-pkgname=gnote
-pkgver=3.6.0
-pkgrel=1
-pkgdesc="A note taking application."
-arch=('i686' 'x86_64')
-url="http://live.gnome.org/Gnote"
-license=('GPL3')
-depends=('gtkmm3' 'libxslt' 'hicolor-icon-theme' 'desktop-file-utils' 'dconf' 'libsecret')
-makedepends=('intltool' 'itstool' 'boost')
-options=('!libtool')
-install=gnote.install
-source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz)
-sha256sums=('ac61c84a4fe8eeae613af76bb11cb481f2f44c8bc64ef4b7aac90b8e68e94957')
-
-build() {
- cd $pkgname-$pkgver
- ./configure --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --libexecdir=/usr/lib/gnote \
- --disable-scrollkeeper \
- --disable-schemas-compile \
- --disable-static
- make
-}
-
-package() {
- cd $pkgname-$pkgver
- make DESTDIR="$pkgdir" install
-}
diff --git a/community-testing/gnote/gnote.install b/community-testing/gnote/gnote.install
deleted file mode 100644
index 0f8eb1012..000000000
--- a/community-testing/gnote/gnote.install
+++ /dev/null
@@ -1,21 +0,0 @@
-pkgname=gnote
-
-post_install() {
- glib-compile-schemas usr/share/glib-2.0/schemas
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
- update-desktop-database -q
-}
-
-pre_upgrade() {
- if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
- usr/sbin/gconfpkg --uninstall ${pkgname}
- fi
-}
-
-post_upgrade() {
- post_install
-}
-
-post_remove() {
- post_install
-}
diff --git a/community-testing/zeitgeist-datahub/PKGBUILD b/community-testing/zeitgeist-datahub/PKGBUILD
deleted file mode 100644
index 35bb0fa68..000000000
--- a/community-testing/zeitgeist-datahub/PKGBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# $Id: PKGBUILD 78600 2012-10-21 20:21:55Z bgyorgy $
-# Maintainer: Balló György <ballogyor+arch at gmail dot com>
-# Contributor: Leontius Adhika Pradhana <leon@leapon.net>
-# Contributor: Ner0
-
-pkgname=zeitgeist-datahub
-pkgver=0.9.5
-pkgrel=2
-pkgdesc="Provides passive plugins which insert events into Zeitgeist"
-arch=('i686' 'x86_64')
-url="https://launchpad.net/zeitgeist-datahub"
-license=('GPL3')
-depends=('libzeitgeist' 'json-glib' 'gtk2' 'telepathy-glib' 'zeitgeist')
-makedepends=('intltool' 'vala')
-source=(http://launchpad.net/$pkgname/${pkgver%.*}/$pkgver/+download/$pkgname-$pkgver.tar.gz)
-md5sums=('b2b76b82b67363c45e5fe4f39a172775')
-
-build() {
- cd "$srcdir/$pkgname-$pkgver"
-
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
- make
-}
-
-package() {
- cd "$srcdir/$pkgname-$pkgver"
-
- make DESTDIR="$pkgdir/" install
-}
diff --git a/community/astromenace/PKGBUILD b/community/astromenace/PKGBUILD
index 3af5f1420..8ec2e0d1d 100644
--- a/community/astromenace/PKGBUILD
+++ b/community/astromenace/PKGBUILD
@@ -1,55 +1,42 @@
-# $Id: PKGBUILD 77621 2012-10-13 11:41:17Z allan $
+# $Id: PKGBUILD 78708 2012-10-23 00:34:23Z svenstaro $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Arkham <arkham at archlinux dot us>
# Contributor: Ivan Bobrov <ibobrik at gmail dot com>
# Contributor: Black_Mage <vleon1 at gmail dot com>
pkgname=astromenace
-pkgver=1.2.0
-pkgrel=6
-pkgdesc="Hardcore 3D space shooter with spaceship upgrade possibilities. English version"
+pkgver=1.3.0
+pkgrel=1
+pkgdesc="Hardcore 3D space shooter with spaceship upgrade possibilities"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.viewizard.com/astromenace/index_linux.php"
license=('GPL3')
-depends=('sdl' 'freealut' 'libjpeg' 'libvorbis' 'glu')
+depends=('sdl' 'freealut' 'libjpeg' 'libvorbis' 'glu' 'freetype2' 'libxinerama')
makedepends=('cmake' 'mesa')
-source=(http://downloads.sourceforge.net/openastromenace/openamenace-src-$pkgver.tar.bz2
- http://downloads.sourceforge.net/openastromenace/oamenace-data-$pkgver.tar.bz2
- http://downloads.sourceforge.net/openastromenace/oamenace-lang-en-$pkgver.tar.bz2
- astromenace.desktop
- astromenace.png
- astromenace.patch
- astromenace.sh)
-md5sums=('3c8e7013aa64fcde7ba8a7750df51ab8'
- 'a8ad3495f8eac419ebcf93473008484d'
- 'f137da529da1345a0243f22fb8bf4913'
- '1edc9367564a6c639a2b8199adf26a08'
- '1643d876d4e21cc0c6ceddc8e7c8ceed'
- '8d23310a2bb9c96dd150d30ab39799a1'
- '2d4504929a620709cd058657bba335b3')
+source=(http://downloads.sourceforge.net/openastromenace/openastromenace-src-$pkgver.tar.bz2
+ astromenace.desktop)
+md5sums=('f48385106da687c12996d25852191e76'
+ '1edc9367564a6c639a2b8199adf26a08')
build() {
- cd $srcdir/OpenAstroMenaceSVN
+ cd $srcdir/AstroMenace
- # Patch build and install the engine
- patch -Np1 -i $srcdir/$pkgname.patch
- cmake . -DCMAKE_INSTALL_PREFIX:PATH=/usr
- sed -i 's/`sdl-config --libs`/-lSDL -lpthread/' CMakeFiles/AstroMenace.dir/link.txt
+ [[ -d build ]] && rm -r build
+ mkdir build && cd build
+ cmake .. \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DDATADIR=/usr/share/astromenace
make
}
package() {
- cd $srcdir/OpenAstroMenaceSVN
+ cd $srcdir/AstroMenace
- # Manually install the engine and data
- install -Dm 755 AstroMenace $pkgdir/usr/bin/astromenace_bin
- install -Dm 644 $srcdir/gamedata.vfs $pkgdir/usr/share/astromenace/gamedata.vfs
- install -Dm 644 $srcdir/gamelang_en.vfs $pkgdir/usr/share/astromenace/gamelang_en.vfs
- install -d $pkgdir/usr/share/astromenace/DATA/SCRIPT
- install -m 644 $srcdir/DATA/SCRIPT/* $pkgdir/usr/share/astromenace/DATA/SCRIPT
+ build/AstroMenace --pack --rawdata=./RAW_VFS_DATA --dir=build
- # Install .desktop, icon and bin
+ install -Dm755 build/AstroMenace $pkgdir/usr/bin/astromenace
+ install -Dm644 build/gamedata.vfs $pkgdir/usr/share/astromenace/gamedata.vfs
+
+ install -Dm 644 astromenace_128.png $pkgdir/usr/share/pixmaps/astromenace.png
install -Dm 644 $srcdir/astromenace.desktop $pkgdir/usr/share/applications/astromenace.desktop
- install -Dm 644 $srcdir/astromenace.png $pkgdir/usr/share/pixmaps/astromenace.png
- install -Dm 755 $srcdir/astromenace.sh $pkgdir/usr/bin/astromenace
}
diff --git a/community/bitcoin/PKGBUILD b/community/bitcoin/PKGBUILD
index 78ef8f840..54a22ddfe 100644
--- a/community/bitcoin/PKGBUILD
+++ b/community/bitcoin/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 76448 2012-09-18 16:21:17Z tredaelli $
+# $Id: PKGBUILD 78662 2012-10-22 14:00:29Z tredaelli $
# Maintainer: Timothy Redaelli <timothy.redaelli@gmail.com>
# Contributor: shahid <helllamer@gmail.com>
pkgbase=bitcoin
pkgname=('bitcoin-daemon' 'bitcoin-qt')
-pkgver=0.7.0
+pkgver=0.7.1
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
url="http://www.bitcoin.org/"
@@ -13,7 +13,7 @@ conflicts=('bitcoin' 'bitcoin-bin' 'bitcoin-git')
replaces=('bitcoin' 'bitcoin-bin' 'bitcoin-git')
license=('MIT')
source=(http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-$pkgver/bitcoin-$pkgver-linux.tar.gz)
-sha256sums=('4b7a44fec28cbd9194a1303dd65bba8f13aa2facd4e06e4a3d1df6d66bc1deb5')
+sha256sums=('431d28cedc76999131fcb34fd7fac2be72e8fa0d0817f1af025569cb3dff7c55')
build() {
cd "$srcdir/$pkgbase-$pkgver-linux/src"
diff --git a/community/darkstat/PKGBUILD b/community/darkstat/PKGBUILD
index a1fc00314..2a9147aac 100644
--- a/community/darkstat/PKGBUILD
+++ b/community/darkstat/PKGBUILD
@@ -1,14 +1,15 @@
-# $Id: PKGBUILD 78362 2012-10-17 15:24:25Z spupykin $
+# $Id: PKGBUILD 78624 2012-10-22 09:39:51Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=darkstat
pkgver=3.0.715
-pkgrel=3
+pkgrel=5
pkgdesc="Network statistics gatherer (packet sniffer)"
url="http://dmr.ath.cx/net/darkstat/"
license=("GPL")
arch=(i686 x86_64 'mips64el')
depends=('libpcap' 'zlib' 'gcc-libs')
+backup=('etc/conf.d/darkstat.conf')
source=(http://dmr.ath.cx/net/darkstat/darkstat-$pkgver.tar.bz2
darkstat
darkstat.service
@@ -16,7 +17,7 @@ source=(http://dmr.ath.cx/net/darkstat/darkstat-$pkgver.tar.bz2
install=darkstat.install
md5sums=('5b7abc7538dcd8e30667dac150e81d77'
'1021f95fabe16cfab4c95f6264d535e5'
- 'd22a09fa1f66b2b1afb8521ceea693d6'
+ '57af85cff73c49d9f87dc4f6fe206bf7'
'aa9a9effd1e8f08860afcd6439fc94c5')
build() {
diff --git a/community/darkstat/darkstat.install b/community/darkstat/darkstat.install
index fa0ccea48..a8e6826ca 100644
--- a/community/darkstat/darkstat.install
+++ b/community/darkstat/darkstat.install
@@ -1,19 +1,20 @@
daemon_name=darkstat
-daemon_chroot=/var/"$daemon_name"
+daemon_chroot=var/darkstat
post_install() {
if [ ! -d "$daemon_chroot" ]; then
install -d "$daemon_chroot"
+ touch "$daemon_chroot/darkstat.dat"
fi
- /usr/sbin/useradd \
+ useradd \
--system \
--home "$daemon_chroot" \
--shell /bin/false \
--no-user-group \
--gid nobody "$daemon_name"
- chown -R "$daemon_name":nobody "$daemon_chroot"
+ chown -R "$daemon_name":nobody "/$daemon_chroot"
}
post_remove() {
- /usr/sbin/userdel "$daemon_name"
+ userdel "$daemon_name"
}
diff --git a/community/darkstat/darkstat.service b/community/darkstat/darkstat.service
index 5e303411f..49630bfd3 100644
--- a/community/darkstat/darkstat.service
+++ b/community/darkstat/darkstat.service
@@ -2,14 +2,15 @@
Description=Network statistics gatherer (packet sniffer)
[Service]
-User=couchdb
-Type=forking
+Type=simple
EnvironmentFile=/etc/conf.d/darkstat.conf
PIDFile=/var/darkstat/darkstat.pid
ExecStart=/usr/sbin/darkstat --user "darkstat" --chroot "/var/darkstat" \
--import "darkstat.dat" --export "darkstat.dat" \
--pidfile /var/darkstat/darkstat.pid \
+ -b 0.0.0.0 \
-i "$DARKSTAT_IFACE" $DARKSTAT_ARGS
+ExecStopPost=rm -f /var/darkstat/darkstat.pid
[Install]
WantedBy=multi-user.target
diff --git a/community/ejabberd/PKGBUILD b/community/ejabberd/PKGBUILD
index abb8aff3f..824542145 100644
--- a/community/ejabberd/PKGBUILD
+++ b/community/ejabberd/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 77108 2012-10-05 10:15:29Z spupykin $
+# $Id: PKGBUILD 78626 2012-10-22 09:47:14Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Jeff 'codemac' Mickey <jeff@archlinux.org>
# Contributor: Alexander Rødseth <rodseth@gmail.com>
pkgname=ejabberd
pkgver=2.1.11
-pkgrel=4
+pkgrel=5
pkgdesc="Jabber server written in Erlang"
arch=('x86_64' 'i686' 'mips64el')
url="http://www.ejabberd.im/"
@@ -36,6 +36,7 @@ package() {
install -d "$pkgdir/var/lib/$pkgname"
install -D -m0644 "$srcdir/$pkgname.logrotate" "$pkgdir/etc/logrotate.d/$pkgname"
chmod ug+r "$pkgdir/etc/$pkgname/"*
+ chmod a+rx "$pkgdir/usr/sbin/ejabberdctl"
rm -rf "$pkgdir/var/lock"
install -Dm0644 $srcdir/ejabberd.service $pkgdir/usr/lib/systemd/system/ejabberd.service
}
diff --git a/community/grace/PKGBUILD b/community/grace/PKGBUILD
index 9e021bb48..9298a82f0 100644
--- a/community/grace/PKGBUILD
+++ b/community/grace/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 63610 2012-02-05 12:00:16Z ibiru $
+# $Id: PKGBUILD 78616 2012-10-22 09:17:58Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: damir <damir@archlinux.org>
# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
pkgname=grace
-pkgver=5.1.22
-pkgrel=6
+pkgver=5.1.23
+pkgrel=1
pkgdesc="2D plotting tool"
arch=(i686 x86_64 'mips64el')
url="http://plasma-gate.weizmann.ac.il/Grace/"
@@ -13,7 +13,7 @@ depends=('libjpeg' 'libpng' 'lesstif' 't1lib' 'netcdf')
makedepends=('netcdf' 'fftw')
license=('GPL')
source=(ftp://plasma-gate.weizmann.ac.il/pub/grace/src/grace5/$pkgname-$pkgver.tar.gz)
-md5sums=('672356466f18fe59ed21a8fb44f9851d')
+md5sums=('e2b28ebe31288952d899fbb5c97858ae')
build() {
cd $srcdir/$pkgname-$pkgver
diff --git a/community/grsync/PKGBUILD b/community/grsync/PKGBUILD
index bd12228fd..9508c1ed8 100644
--- a/community/grsync/PKGBUILD
+++ b/community/grsync/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 62005 2012-01-14 00:21:54Z spupykin $
+# $Id: PKGBUILD 78660 2012-10-22 13:48:12Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: William Rea <sillywilly@gmail.com>
pkgname=grsync
-pkgver=1.2.1
+pkgver=1.2.2
pkgrel=1
pkgdesc="GTK GUI for rsync"
arch=('i686' 'x86_64' 'mips64el')
@@ -13,7 +13,7 @@ depends=('gtk2' 'rsync')
makedepends=('gettext' 'intltool')
install=grsync.install
source=(http://www.opbyte.it/release/grsync-$pkgver.tar.gz)
-md5sums=('e57f46d67f7f9e8df08fdd0b97db10a6')
+md5sums=('1b40ee3c9191dbf6080285ce6dc2383d')
build() {
cd $srcdir/grsync-$pkgver
diff --git a/community/gsoap/PKGBUILD b/community/gsoap/PKGBUILD
index 6b8be0415..7af4d7861 100644
--- a/community/gsoap/PKGBUILD
+++ b/community/gsoap/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 70883 2012-05-18 13:41:50Z spupykin $
+# $Id: PKGBUILD 78618 2012-10-22 09:18:41Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Tor Krill <tor@krill.nu>
# Contributor: Lee.MaRS <leemars@gmail.com>
pkgname=gsoap
-pkgver=2.8.8
+pkgver=2.8.11
pkgrel=1
pkgdesc="Offers an XML language binding to ease the development of SOAP/XML Web services in C and C/C++"
url="http://www.cs.fsu.edu/~engelen/soap.html"
@@ -13,8 +13,8 @@ license=('GPL' 'custom')
depends=('openssl' 'zlib' 'gcc-libs')
makedepends=('autoconf' 'automake')
source=(http://prdownloads.sourceforge.net/gsoap2/${pkgname}_${pkgver}.zip
- LICENSE)
-md5sums=('cffb523b66eb36c51ca455645f1cfeb0'
+ LICENSE)
+md5sums=('ea2d7ee876d274a188b8fbb365702eec'
'27aaa3f5166db94d44044c11a7b2c37b')
build() {
diff --git a/community/gummi/PKGBUILD b/community/gummi/PKGBUILD
index e30fdc0a5..ed9b420d0 100644
--- a/community/gummi/PKGBUILD
+++ b/community/gummi/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 72952 2012-06-25 13:05:56Z arodseth $
+# $Id: PKGBUILD 78640 2012-10-22 12:45:21Z arodseth $
# Maintainer: Alexander Rødseth <rodseth@gmail.com>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: Sergio A. Morales <sergiomorales@archlinux.cl>
# Contributor: soeren <nonick@posteo.de>
pkgname=gummi
-pkgver=0.6.4
+pkgver=0.6.5
pkgrel=1
pkgdesc='Simple LaTex editor for GTK users'
arch=('x86_64' 'i686' 'mips64el')
@@ -14,11 +14,11 @@ license=('MIT')
depends=('texlive-core' 'gtkspell' 'gtksourceview2' 'poppler-glib' 'desktop-file-utils')
makedepends=('glib2' 'gtk2' 'pango' 'poppler' 'intltool')
install=$pkgname.install
-source=("http://dev.midnightcoding.org/projects/$pkgname/latest.tar.gz")
-sha256sums=('ac5c1de476f8689040a185b01515544a5e53da45ff4e10a072b8944e9de8a6ff')
+source=("$pkgname-$pkgver.tar.gz::http://dev.midnightcoding.org/projects/$pkgname/latest.tar.gz")
+sha256sums=('b23c2958376ea43c701a276ad19ceac5b50d9cb32a489a10897b25aa5004fffb')
build() {
- cd "$pkgname-$pkgver"
+ cd $pkgname-$pkgver
find . -type f -exec touch {} \;
./configure --prefix=/usr
@@ -26,10 +26,10 @@ build() {
}
package() {
- cd "$pkgname-$pkgver"
+ cd $pkgname-$pkgver
- make prefix="$pkgdir/usr" install
- install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+ make prefix=$pkgdir/usr install
+ install -Dm644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING
}
# vim:set ts=2 sw=2 et:
diff --git a/community/libextractor/PKGBUILD b/community/libextractor/PKGBUILD
index 51a064c9a..2c1c982c5 100644
--- a/community/libextractor/PKGBUILD
+++ b/community/libextractor/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 78526 2012-10-20 09:33:25Z heftig $
+# $Id: PKGBUILD 78664 2012-10-22 14:19:49Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s@gmail.com>
# Contributor: damir <damir@archlinux.org>
pkgname=libextractor
-pkgver=0.6.3
-pkgrel=8
+pkgver=1.0.1
+pkgrel=1
pkgdesc="A library used to extract meta-data from files of arbitrary type"
arch=("i686" "x86_64" 'mips64el')
license=('GPL')
@@ -21,9 +21,9 @@ optdepends=('flac: flac support'
'libvorbis: ogg/vorbis support')
options=('!libtool' '!makeflags')
install=libextractor.install
-source=("http://ftpmirror.gnu.org/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig})
-md5sums=('7004ff6be06e400050f0ad7016140981'
- '81f95c31831dde62428a98ae32464c51')
+source=("http://ftp.gnu.org/gnu/libextractor/${pkgname}-${pkgver}.tar.gz"{,.sig})
+md5sums=('593c40670fd7fc8c3ae7adc3df557f64'
+ 'ef9bfeb3ade063dc9a5b29b2afd0732e')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
diff --git a/community/libnet/PKGBUILD b/community/libnet/PKGBUILD
index 420d437f7..1f2573445 100644
--- a/community/libnet/PKGBUILD
+++ b/community/libnet/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 68329 2012-03-21 20:31:50Z andrea $
+# $Id: PKGBUILD 78620 2012-10-22 09:19:25Z spupykin $
# Maintainer:
# Contributor: damir <damir@archlinux.org>
pkgname=libnet
-pkgver=1.1.5
-pkgrel=2
+pkgver=1.1.6
+pkgrel=1
pkgdesc="A library which provides API for commonly used low-level net functions"
arch=('i686' 'x86_64' 'mips64el')
url="http://sourceforge.net/projects/libnet-dev/"
@@ -12,7 +12,7 @@ license=('BSD')
depends=('glibc' 'sh')
options=('!libtool')
source=("http://downloads.sourceforge.net/libnet-dev/${pkgname}-${pkgver}.tar.gz")
-md5sums=('a9bc1d75a610efcfee200d3e28d8eb8f')
+md5sums=('710296fe424a49344e5fcc0d09e53317')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/community/mariadb/PKGBUILD b/community/mariadb/PKGBUILD
index 6d7d9549c..c17fc8fbb 100644
--- a/community/mariadb/PKGBUILD
+++ b/community/mariadb/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 76117 2012-09-11 15:49:50Z bpiotrowski $
+# $Id: PKGBUILD 78669 2012-10-22 14:43:04Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
pkgbase=mariadb
pkgname=('libmariadbclient' 'mariadb-clients' 'mariadb')
-pkgver=5.5.27
+pkgver=5.5.28
pkgrel=1
arch=('i686' 'x86_64')
license=('GPL')
@@ -12,7 +12,7 @@ makedepends=('cmake' 'openssl' 'zlib')
options=('!libtool')
source=(http://mirrors.supportex.net/$pkgbase/$pkgbase-$pkgver/kvm-tarbake-jaunty-x86/$pkgbase-$pkgver.tar.gz
service rc.d tmpfiles.conf)
-md5sums=('ad6f3239a1d5af0a667e30f7c0b05037'
+md5sums=('9a4055300ccadf7990167ebd1ce875fa'
'9e7aa0fa646f48662df569259061fcef'
'3bb5a9a96340feb0184bc057ee6e330b'
'32f30449d3111714fe190931d08fdb8c')
diff --git a/community/opensips/PKGBUILD b/community/opensips/PKGBUILD
index 17f8d3473..5233250fd 100644
--- a/community/opensips/PKGBUILD
+++ b/community/opensips/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 78328 2012-10-17 14:22:01Z spupykin $
+# $Id: PKGBUILD 78612 2012-10-22 09:08:59Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=opensips
@@ -26,7 +26,7 @@ options=('!emptydirs' 'zipman' '!makeflags' 'docs')
source=(http://opensips.org/pub/opensips/$pkgver/src/opensips-${pkgver}_src.tar.gz
opensips.init
opensips.service)
-md5sums=('9fa0f8b7c58668ff4669e5c54bf4c00a'
+md5sums=('ec3d0f13bf8198a74aed91e5c38ec445'
'685fbe00826df1285b410d4610dcbb0c'
'0d80ef75b5c10324e6db790b7741c2eb')
diff --git a/community/qlandkartegt/PKGBUILD b/community/qlandkartegt/PKGBUILD
index 3d9fe9505..facf82898 100644
--- a/community/qlandkartegt/PKGBUILD
+++ b/community/qlandkartegt/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 77658 2012-10-13 11:44:51Z allan $
+# $Id: PKGBUILD 78685 2012-10-22 20:51:13Z jlichtblau $
# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
# Contributor: Matthias Maennich <arch@maennich.net>
# Contributor: <boenki@gmx.de>
pkgname=qlandkartegt
-pkgver=1.5.1
-pkgrel=2
+pkgver=1.5.3
+pkgrel=1
pkgdesc="Use your GPS with Linux"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.qlandkarte.org/"
@@ -18,7 +18,7 @@ install=$pkgname.install
changelog=$pkgname.changelog
source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz
$pkgname-mimetypes.xml)
-sha256sums=('095cd2390684eead61b2868e1efc85500d6d61e95f3d54d0fd255cd95f55aadd'
+sha256sums=('9b535d70b362475a1a8f19a142ce03f83757ab442599e6439471e40b544ddc92'
'e8d33948831f8a66edd752c71c653085d6c4d9f1969e70dd8c40b9c7ca37fba0')
build() {
diff --git a/community/qlandkartegt/qlandkartegt.changelog b/community/qlandkartegt/qlandkartegt.changelog
index 47c05ab04..a905f4d0b 100644
--- a/community/qlandkartegt/qlandkartegt.changelog
+++ b/community/qlandkartegt/qlandkartegt.changelog
@@ -1,3 +1,6 @@
+2012-10-22 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * qlandkartegt 1.5.3-1
+
2012-09-06 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
* qlandkartegt 1.5.1-1
diff --git a/community/spacefm/PKGBUILD b/community/spacefm/PKGBUILD
index 38bb767a8..3aa38997a 100644
--- a/community/spacefm/PKGBUILD
+++ b/community/spacefm/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 76236 2012-09-14 19:21:38Z bpiotrowski $
+# $Id: PKGBUILD 78679 2012-10-22 19:59:29Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: IgnorantGuru http://igurublog.wordpress.com/contact-ignorantguru/
# Contributor: ridikulus_rat <the.ridikulus.rat@gmail.com>
pkgname=spacefm
-pkgver=0.8.0
+pkgver=0.8.1
pkgrel=1
pkgdesc='A multi-panel tabbed file manager'
arch=('i686' 'x86_64' 'mips64el')
@@ -22,7 +22,7 @@ optdepends=('lsof: device processes'
'udisks: mount as non-root user'
'udisks2: mount as non-root user')
source=(https://raw.github.com/IgnorantGuru/spacefm/master/packages/${pkgver}/spacefm-${pkgver}.tar.xz)
-md5sums=('e9fe71ecd1f2ac07f4cbda2036279a99')
+md5sums=('4120611f138b3dd530d8f65319366ba1')
build() {
cd $srcdir/$pkgname-$pkgver
diff --git a/community/torcs/PKGBUILD b/community/torcs/PKGBUILD
index 5e418bb35..0d644cad8 100644
--- a/community/torcs/PKGBUILD
+++ b/community/torcs/PKGBUILD
@@ -1,23 +1,21 @@
-# $Id: PKGBUILD 77665 2012-10-13 11:45:51Z allan $
+# $Id: PKGBUILD 78671 2012-10-22 16:39:24Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Shahar Weiss <sweiss4@gmx.net>
pkgname=torcs
-pkgver=1.3.3
-pkgrel=2
+pkgver=1.3.4
+pkgrel=1
pkgdesc="A 3D racing cars simulator using OpenGL"
url="http://torcs.sourceforge.net"
license=("GPL")
arch=('i686' 'x86_64' 'mips64el')
depends=('freeglut' 'libpng' 'freealut' 'libxi' 'libxmu' 'libxrandr' 'libvorbis' 'glu')
-makedepends=('plib')
+makedepends=('plib' 'mesa')
options=('!makeflags')
source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-${pkgver/_/-}.tar.bz2
- torcs.desktop
- torcs-gcc.patch)
-md5sums=('0319c996dac4480f1182c03d2331b14a'
- '328e419e9f985c3e7b69924fe299330d'
- '5ae7e903df37300d3b8744328c756bff')
+ torcs.desktop)
+md5sums=('07dbc9c53e2b177be1f53fe97d53d039'
+ '328e419e9f985c3e7b69924fe299330d')
build() {
cd $srcdir/$pkgname-${pkgver/_/-}
diff --git a/community/udevil/PKGBUILD b/community/udevil/PKGBUILD
index ed2a02ca2..9b903be8d 100644
--- a/community/udevil/PKGBUILD
+++ b/community/udevil/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 76234 2012-09-14 18:50:59Z bpiotrowski $
+# $Id: PKGBUILD 78681 2012-10-22 20:02:54Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: IgnorantGuru http://igurublog.wordpress.com/contact-ignorantguru/
pkgname=udevil
-pkgver=0.3.3
+pkgver=0.3.4
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
pkgdesc='Mount and unmount without password'
@@ -24,7 +24,7 @@ provides=('devmon')
backup=('etc/udevil/udevil.conf')
install=$pkgname.install
source=(https://raw.github.com/IgnorantGuru/$pkgname/master/packages/$pkgver/$pkgname-$pkgver.tar.xz)
-md5sums=('81abe64e0c6d3555f0b66b7d7fa9a340')
+md5sums=('6b2fef714c0ef184086901896e226a80')
build() {
cd $srcdir/$pkgname-$pkgver
diff --git a/community/unrealircd/PKGBUILD b/community/unrealircd/PKGBUILD
index 1a9539897..4b19e62fd 100644
--- a/community/unrealircd/PKGBUILD
+++ b/community/unrealircd/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 78360 2012-10-17 15:21:03Z spupykin $
+# $Id: PKGBUILD 78622 2012-10-22 09:20:20Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Zerial <fernando@zerial.org>
pkgname=unrealircd
pkgver=3.2.9
-pkgrel=3
+pkgrel=4
pkgdesc="Open Source IRC Server"
arch=('i686' 'x86_64' 'mips64el')
url="http://unrealircd.com"
@@ -12,7 +12,8 @@ license=('GPL2')
depends=('openssl' 'curl' 'c-ares')
conflicts=('ircd')
provides=('ircd')
-backup=(etc/unrealircd/unrealircd.conf)
+backup=('etc/unrealircd/unrealircd.conf'
+ 'etc/conf.d/unrealircd')
source=(http://www.unrealircd.com/downloads/Unreal$pkgver.tar.gz
unrealircd.rc
unrealircd.service
diff --git a/community/vifm/PKGBUILD b/community/vifm/PKGBUILD
index 72f698552..37ad57e17 100644
--- a/community/vifm/PKGBUILD
+++ b/community/vifm/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 73402 2012-07-07 08:01:19Z jlichtblau $
+# $Id: PKGBUILD 78687 2012-10-22 20:52:48Z jlichtblau $
# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
pkgname=vifm
-pkgver=0.7.3a
+pkgver=0.7.4a
pkgrel=1
pkgdesc="Ncurses based file manager with vi like keybindings"
arch=('i686' 'x86_64' 'mips64el')
@@ -11,7 +11,7 @@ license=('GPL')
depends=('ncurses' 'gtk2')
changelog=$pkgname.changelog
source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2)
-sha256sums=('77dbf8bb8caaf1b8e805c98dc6c3345d08a855fe1c09e93e6eb5a1b2cf0fd383')
+sha256sums=('fe9b8bcd992f4f34ad83dd3de46064e5d3d8d4a0c468dbd11869f9790f3dcd1f')
build() {
cd ${srcdir}/$pkgname-$pkgver
diff --git a/community/vifm/vifm.changelog b/community/vifm/vifm.changelog
index 767b7b70a..ef4ac0ea9 100644
--- a/community/vifm/vifm.changelog
+++ b/community/vifm/vifm.changelog
@@ -1,3 +1,6 @@
+2012-10-20 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * vifm 0.7.4a-1
+
2012-07-07 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
* vifm 0.7.3a-1
diff --git a/community/yaz/PKGBUILD b/community/yaz/PKGBUILD
index d2aea71eb..660f0b235 100644
--- a/community/yaz/PKGBUILD
+++ b/community/yaz/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 70645 2012-05-13 19:04:54Z jlichtblau $
+# $Id: PKGBUILD 78691 2012-10-22 20:56:11Z jlichtblau $
# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
# Contributor: Ray Rashif <schiv@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
@@ -7,7 +7,7 @@
# Contributor: Robert Emil Berge <filoktetes@linuxophic.org>
pkgname=yaz
-pkgver=4.2.33
+pkgver=4.2.43
pkgrel=1
pkgdesc="A toolkit supporting the development of Z39.50/SRW/SRU clients and servers"
arch=('i686' 'x86_64' 'mips64el')
@@ -15,8 +15,8 @@ url="http://www.indexdata.dk/yaz"
license=('BSD')
depends=('openssl' 'libxslt' 'icu')
options=('!libtool')
-source=("http://ftp.indexdata.dk/pub/$pkgname/$pkgname-$pkgver.tar.gz")
-sha256sums=('77baecaa0b032c0155676e704d39b49415d4793ab65ad6c26e04f6dfb0be1276')
+source=(http://ftp.indexdata.dk/pub/$pkgname/$pkgname-$pkgver.tar.gz)
+sha256sums=('849419a3e647568f2cc9a6097e009f0be8f379759d6d13274eb5d19314b1bfc2')
build() {
cd ${srcdir}/$pkgname-$pkgver
diff --git a/extra/di/PKGBUILD b/extra/di/PKGBUILD
index 37cd0d056..d9246cdb8 100644
--- a/extra/di/PKGBUILD
+++ b/extra/di/PKGBUILD
@@ -1,19 +1,21 @@
-# $Id: PKGBUILD 143044 2011-11-21 22:39:45Z eric $
+# $Id: PKGBUILD 169510 2012-10-22 19:36:13Z eric $
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=di
-pkgver=4.31
-pkgrel=1.1
+pkgver=4.32
+pkgrel=1
pkgdesc="A disk information utility, displaying everything (and more) that your df command does"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gentoo.com/di/"
license=('ZLIB')
depends=('glibc')
source=(http://www.gentoo.com/di/${pkgname}-${pkgver}.tar.gz)
-sha1sums=('2a7212e03286b68ebb4783ae8937999145165c79')
+sha1sums=('b819e877e1135f34f362ba2f72d1e694c1878249')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ sed -i 's|error|//error|' C/di.h
+ sed -i '11i\#include <string.h>' C/di.h
make
}
diff --git a/extra/git/PKGBUILD b/extra/git/PKGBUILD
index 7eed76f46..72c136bbe 100644
--- a/extra/git/PKGBUILD
+++ b/extra/git/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 169122 2012-10-18 14:05:32Z dan $
+# $Id: PKGBUILD 169498 2012-10-22 12:48:27Z dan $
# Maintainer: Dan McGee <dan@archlinux.org>
pkgname=git
-pkgver=1.7.12.4
+pkgver=1.8.0
pkgrel=1
pkgdesc="the fast distributed version control system"
arch=(i686 x86_64 'mips64el')
@@ -109,8 +109,8 @@ package() {
install -D -m 644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket
}
-md5sums=('5f3f0feb59d96f8106e0a56112bc73db'
- '9370b44fa97843c5f8adaaaf29b7a4d3'
+md5sums=('12f4d20f34ae37086d86dd3b9d037bba'
+ '66f0a839d933c7d573fb40cb051b5e66'
'8e2648910fd5dd4f1c41d3c7fa9e9156'
'2e42bf97779a1c6411d89043334c9e78'
'042524f942785772d7bd52a1f02fe5ae'
diff --git a/extra/libkgapi/PKGBUILD b/extra/libkgapi/PKGBUILD
index fd418a3c2..8f5c3c90b 100644
--- a/extra/libkgapi/PKGBUILD
+++ b/extra/libkgapi/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 165471 2012-08-20 13:27:31Z andrea $
+# $Id: PKGBUILD 169492 2012-10-22 07:20:41Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
pkgname=libkgapi
-pkgver=0.4.2
+pkgver=0.4.3
pkgrel=1
pkgdesc="A KDE-based library for accessing various Google services via their public API"
url='https://projects.kde.org/projects/extragear/libs/libkgapi'
@@ -12,11 +12,10 @@ depends=('kdepimlibs' 'qjson')
makedepends=('cmake' 'automoc4' 'boost')
replaces=('akonadi-google' 'libkgoogle')
conflicts=('akonadi-google' 'libkgoogle')
-source=("http://download.kde.org/stable/${pkgname}/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2")
-md5sums=('7da940eb4ed9bdb909d29e93ef6bce67')
+source=("http://download.kde.org/stable/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2")
+md5sums=('99e61ad50edd51f679170db3b997736b')
build() {
- cd "${srcdir}"
mkdir build
cd build
cmake ../${pkgname}-${pkgver} \
@@ -26,6 +25,6 @@ build() {
}
package() {
- cd "${srcdir}"/build
+ cd build
make DESTDIR="${pkgdir}" install
}
diff --git a/libre/cdfs-libre/PKGBUILD b/libre/cdfs-libre/PKGBUILD
index 5afccbcfb..011b94f3a 100644
--- a/libre/cdfs-libre/PKGBUILD
+++ b/libre/cdfs-libre/PKGBUILD
@@ -6,7 +6,7 @@
_pkgname=cdfs
pkgname=cdfs-libre
pkgver=2.6.27
-pkgrel=31
+pkgrel=32
pkgdesc="File system module libre that 'exports' all tracks and boot images on a CD as normal files."
arch=(i686 x86_64)
url="http://www.elis.UGent.be/~ronsse/cdfs/"
diff --git a/libre/linux-libre-kmod-alx/PKGBUILD b/libre/linux-libre-kmod-alx/PKGBUILD
index fc86511e9..7dc94ab41 100644
--- a/libre/linux-libre-kmod-alx/PKGBUILD
+++ b/libre/linux-libre-kmod-alx/PKGBUILD
@@ -1,9 +1,11 @@
# Maintainer: André Silva <emulatorman@lavabit.com>
-_kernver=3.6.2
+_kernver=3.6.3
+_kernrel=1
pkgname=('linux-libre-kmod-alx')
+_pkgver=2012-10-03
pkgver=20121003
-pkgrel=1
+pkgrel=2
pkgdesc='Atheros alx ethernet device driver for linux-libre kernel'
arch=('i686' 'x86_64')
url='http://linuxwireless.org/'
@@ -11,7 +13,7 @@ license=('GPL2')
depends=("linux-libre=$_kernver")
makedepends=("linux-libre-headers=$_kernver")
install=linux-libre-kmod-alx.install
-source=(http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-2012-10-03-pc.tar.bz2)
+source=(http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-$_pkgver-pc.tar.bz2)
md5sums=('7d541af2ae06eeaaadaba5b4fbcbfb13')
@@ -20,17 +22,17 @@ build() {
# current extramodules version
_extraver=extramodules-3.6-LIBRE
- cd ${srcdir}/compat-wireless-2012-10-03-pc
+ cd $srcdir/compat-wireless-$_pkgver-pc
# replacing to specific linux-libre kernel version
- sed -i -e 's/lib\/modules\/\$(shell uname -r)/usr\/lib\/modules\/3.6.2-1-LIBRE/' Makefile
+ sed -i -e "s/lib\/modules\/\$(shell uname -r)/usr\/lib\/modules\/$_kernver-$_kernrel-LIBRE/" Makefile
./scripts/driver-select alx
make
- cd ${srcdir}/compat-wireless-2012-10-03-pc/compat
+ cd $srcdir/compat-wireless-$_pkgver-pc/compat
gzip -9 compat.ko
- install -D -m 0644 compat.ko.gz ${pkgdir}/lib/modules/$_extraver/compat.ko.gz
- cd ${srcdir}/compat-wireless-2012-10-03-pc/drivers/net/ethernet/atheros/alx
+ install -D -m 0644 compat.ko.gz $pkgdir/lib/modules/$_extraver/compat.ko.gz
+ cd $srcdir/compat-wireless-$_pkgver-pc/drivers/net/ethernet/atheros/alx
gzip -9 alx.ko
- install -D -m 0644 alx.ko.gz ${pkgdir}/lib/modules/$_extraver/alx.ko.gz
+ install -D -m 0644 alx.ko.gz $pkgdir/lib/modules/$_extraver/alx.ko.gz
}
diff --git a/libre/linux-libre-lts-kmod-alx/PKGBUILD b/libre/linux-libre-lts-kmod-alx/PKGBUILD
index 646b3658a..c94d23b3d 100644
--- a/libre/linux-libre-lts-kmod-alx/PKGBUILD
+++ b/libre/linux-libre-lts-kmod-alx/PKGBUILD
@@ -1,9 +1,11 @@
# Maintainer: André Silva <emulatorman@lavabit.com>
-_kernver=3.0.46
+_kernver=3.0.47
+_kernrel=1
pkgname=('linux-libre-lts-kmod-alx')
+_pkgver=2012-10-03
pkgver=20121003
-pkgrel=1
+pkgrel=2
pkgdesc='Atheros alx ethernet device driver for linux-libre-lts kernel'
arch=('i686' 'x86_64')
url='http://linuxwireless.org/'
@@ -11,7 +13,7 @@ license=('GPL2')
depends=("linux-libre-lts=$_kernver")
makedepends=("linux-libre-lts-headers=$_kernver")
install=linux-libre-lts-kmod-alx.install
-source=(http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-2012-10-03-pc.tar.bz2)
+source=(http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-$_pkgver-pc.tar.bz2)
md5sums=('7d541af2ae06eeaaadaba5b4fbcbfb13')
@@ -20,17 +22,17 @@ build() {
# current extramodules version
_extraver=extramodules-3.0-LIBRE-LTS
- cd ${srcdir}/compat-wireless-2012-10-03-pc
+ cd ${srcdir}/compat-wireless-$_pkgver-pc
# replacing to specific linux-libre-lts kernel version
- sed -i -e 's/lib\/modules\/\$(shell uname -r)/usr\/lib\/modules\/3.0.46-1-LIBRE-LTS/' Makefile
+ sed -i -e "s/lib\/modules\/\$(shell uname -r)/usr\/lib\/modules\/$_kernver-$_kernrel-LIBRE-LTS/" Makefile
./scripts/driver-select alx
make
- cd ${srcdir}/compat-wireless-2012-10-03-pc/compat
+ cd $srcdir/compat-wireless-$_pkgver-pc/compat
gzip -9 compat.ko
- install -D -m 0644 compat.ko.gz ${pkgdir}/lib/modules/$_extraver/compat.ko.gz
- cd ${srcdir}/compat-wireless-2012-10-03-pc/drivers/net/ethernet/atheros/alx
+ install -D -m 0644 compat.ko.gz $pkgdir/lib/modules/$_extraver/compat.ko.gz
+ cd $srcdir/compat-wireless-$_pkgver-pc/drivers/net/ethernet/atheros/alx
gzip -9 alx.ko
- install -D -m 0644 alx.ko.gz ${pkgdir}/lib/modules/$_extraver/alx.ko.gz
+ install -D -m 0644 alx.ko.gz $pkgdir/lib/modules/$_extraver/alx.ko.gz
}
diff --git a/libre/linux-libre-lts/PKGBUILD b/libre/linux-libre-lts/PKGBUILD
index d544abb26..65e5e55b0 100644
--- a/libre/linux-libre-lts/PKGBUILD
+++ b/libre/linux-libre-lts/PKGBUILD
@@ -7,10 +7,10 @@
pkgbase=linux-libre-lts # Build stock -LIBRE-LTS kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.0
-_sublevel=46
+_sublevel=47
pkgver=${_basekernel}.${_sublevel}
pkgrel=1
-_lxopkgver=${_basekernel}.45 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.46 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -28,9 +28,11 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'change-default-console-loglevel.patch'
'i915-fix-ghost-tv-output.patch'
'ext4-options.patch'
+ 'module-symbol-waiting-3.0.patch'
+ 'module-init-wait-3.0.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
md5sums=('5f64180fe7df4e574dac5911b78f5067'
- 'a2ced38cb23963b9efef79100f5885c5'
+ '6ad7f8f5b7230d1425dcb2c0bc336cf8'
'aed25ab047e1c0b020a1516c235c6a74'
'7d37e8ce0f4bd5a957172b12ae742ea0'
'c072b17032e80debc6a8626299245d46'
@@ -40,7 +42,9 @@ md5sums=('5f64180fe7df4e574dac5911b78f5067'
'9d3c56a4b999c8bfbd4018089a62f662'
'263725f20c0b9eb9c353040792d644e5'
'f36222e7ce20c8e4dc27376f9be60f6c'
- '2fb6f217d649733bd5d977bf32c1f292')
+ '670931649c60fcb3ef2e0119ed532bd4'
+ '8a71abc4224f575008f974a099b5cf6f'
+ '546d9b9893e49bddf13a106f890caf94')
if [ "$CARCH" != "mips64el" ]; then
# Don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
@@ -78,6 +82,11 @@ build() {
# https://bugs.archlinux.org/task/28653
patch -Np1 -i "${srcdir}/ext4-options.patch"
+ # fix module initialisation
+ # https://bugs.archlinux.org/task/32122
+ patch -Np1 -i "${srcdir}/module-symbol-waiting-3.0.patch"
+ patch -Np1 -i "${srcdir}/module-init-wait-3.0.patch"
+
if [ "$CARCH" == "mips64el" ]; then
sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre-lts|" Makefile
sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
diff --git a/libre/linux-libre-lts/linux-libre-lts.install b/libre/linux-libre-lts/linux-libre-lts.install
index 57f19a417..3dc3be117 100644
--- a/libre/linux-libre-lts/linux-libre-lts.install
+++ b/libre/linux-libre-lts/linux-libre-lts.install
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=-lts
-KERNEL_VERSION=3.0.46-1-LIBRE-LTS
+KERNEL_VERSION=3.0.47-1-LIBRE-LTS
# set a sane PATH to ensure that critical utils like depmod will be found
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
diff --git a/libre/linux-libre-lts/module-init-wait-3.0.patch b/libre/linux-libre-lts/module-init-wait-3.0.patch
new file mode 100644
index 000000000..1bcfd2491
--- /dev/null
+++ b/libre/linux-libre-lts/module-init-wait-3.0.patch
@@ -0,0 +1,77 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: wait when loading a module which is currently initializing.
+X-Git-Tag: v3.7-rc1~2^2~32
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=9bb9c3be568346538
+
+module: wait when loading a module which is currently initializing.
+
+The original module-init-tools module loader used a fnctl lock on the
+.ko file to avoid attempts to simultaneously load a module.
+Unfortunately, you can't get an exclusive fcntl lock on a read-only
+fd, making this not work for read-only mounted filesystems.
+module-init-tools has a hacky sleep-and-loop for this now.
+
+It's not that hard to wait in the kernel, and only return -EEXIST once
+the first module has finished loading (or continue loading the module
+if the first one failed to initialize for some reason). It's also
+consistent with what we do for dependent modules which are still loading.
+
+Suggested-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 63cf6e7..74bc195 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2845,6 +2845,20 @@ static int post_relocation(struct module *mod, const struct load_info *info)
+ return module_finalize(info->hdr, info->sechdrs, mod);
+ }
+
++/* Is this module of this name done loading? No locks held. */
++static bool finished_loading(const char *name)
++{
++ struct module *mod;
++ bool ret;
++
++ mutex_lock(&module_mutex);
++ mod = find_module(name);
++ ret = !mod || mod->state != MODULE_STATE_COMING;
++ mutex_unlock(&module_mutex);
++
++ return ret;
++}
++
+ /* Allocate and load the module: note that size of section 0 is always
+ zero, and we rely on this for optional sections. */
+ static struct module *load_module(void __user *umod,
+@@ -2852,7 +2866,7 @@ static struct module *load_module(void __user *umod,
+ const char __user *uargs)
+ {
+ struct load_info info = { NULL, };
+- struct module *mod;
++ struct module *mod, *old;
+ long err;
+
+ pr_debug("load_module: umod=%p, len=%lu, uargs=%p\n",
+@@ -2918,8 +2932,18 @@ static struct module *load_module(void __user *umod,
+ * function to insert in a way safe to concurrent readers.
+ * The mutex protects against concurrent writers.
+ */
++again:
+ mutex_lock(&module_mutex);
+- if (find_module(mod->name)) {
++ if ((old = find_module(mod->name)) != NULL) {
++ if (old->state == MODULE_STATE_COMING) {
++ /* Wait in case it fails to load. */
++ mutex_unlock(&module_mutex);
++ err = wait_event_interruptible(module_wq,
++ finished_loading(mod->name));
++ if (err)
++ goto free_arch_cleanup;
++ goto again;
++ }
+ err = -EEXIST;
+ goto unlock;
+ }
diff --git a/libre/linux-libre-lts/module-symbol-waiting-3.0.patch b/libre/linux-libre-lts/module-symbol-waiting-3.0.patch
new file mode 100644
index 000000000..b87a38ff5
--- /dev/null
+++ b/libre/linux-libre-lts/module-symbol-waiting-3.0.patch
@@ -0,0 +1,66 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: fix symbol waiting when module fails before init
+X-Git-Tag: v3.7-rc1~2^2~33
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=6f13909f4fe9652f1
+
+module: fix symbol waiting when module fails before init
+
+We use resolve_symbol_wait(), which blocks if the module containing
+the symbol is still loading. However:
+
+1) The module_wq we use is only woken after calling the modules' init
+ function, but there are other failure paths after the module is
+ placed in the linked list where we need to do the same thing.
+
+2) wake_up() only wakes one waiter, and our waitqueue is shared by all
+ modules, so we need to wake them all.
+
+3) wake_up_all() doesn't imply a memory barrier: I feel happier calling
+ it after we've grabbed and dropped the module_mutex, not just after
+ the state assignment.
+
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 7f2ee45f..63cf6e7 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2959,7 +2959,7 @@ static struct module *load_module(void __user *umod,
+ /* Unlink carefully: kallsyms could be walking list. */
+ list_del_rcu(&mod->list);
+ module_bug_cleanup(mod);
+-
++ wake_up_all(&module_wq);
+ ddebug:
+ dynamic_debug_remove(info.debug);
+ unlock:
+@@ -3034,7 +3034,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_GOING, mod);
+ free_module(mod);
+- wake_up(&module_wq);
++ wake_up_all(&module_wq);
+ return ret;
+ }
+ if (ret > 0) {
+@@ -3046,9 +3046,8 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ dump_stack();
+ }
+
+- /* Now it's a first class citizen! Wake up anyone waiting for it. */
++ /* Now it's a first class citizen! */
+ mod->state = MODULE_STATE_LIVE;
+- wake_up(&module_wq);
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_LIVE, mod);
+
+@@ -3071,6 +3070,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ mod->init_ro_size = 0;
+ mod->init_text_size = 0;
+ mutex_unlock(&module_mutex);
++ wake_up_all(&module_wq);
+
+ return 0;
+ }
diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD
index 2523cb6ec..0b2250069 100644
--- a/libre/linux-libre/PKGBUILD
+++ b/libre/linux-libre/PKGBUILD
@@ -10,10 +10,10 @@
pkgbase=linux-libre # Build stock -LIBRE kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.6
-_sublevel=2
+_sublevel=3
pkgver=${_basekernel}.${_sublevel}
pkgrel=1
-_lxopkgver=${_basekernel}.1 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.2 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -29,17 +29,21 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'Kbuild.platforms'
'boot-logo.patch'
'change-default-console-loglevel.patch'
+ 'module-symbol-waiting-3.6.patch'
+ 'module-init-wait-3.6.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
md5sums=('a2312edd0265b5b07bd4b50afae2b380'
- '1014a197e2bea449600d7b2cca415eec'
- '600af9b069c8a1c18dd5ef1f25bf7080'
- 'c18004748092bf4ee57ade7e25fdef22'
+ '844bd14e9f58225274e096c31bbb8a8f'
+ 'e4a3a4677e1fac6ecf0e0fb44c41ca08'
+ '68fc36a4efb6ade0eca409b9444fef0c'
'e49ac236dfeef709f91a3d993ea7b62c'
'2967cecc3af9f954ccc822fd63dca6ff'
'8267264d9a8966e57fdacd1fa1fc65c4'
'04b21c79df0a952c22d681dd4f4562df'
'9d3c56a4b999c8bfbd4018089a62f662'
- '1690532ad271b11a87e8824f7da65101')
+ '670931649c60fcb3ef2e0119ed532bd4'
+ '8a71abc4224f575008f974a099b5cf6f'
+ '34508a324c3704662e9fc115d07735a3')
if [ "$CARCH" != "mips64el" ]; then
# Don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
@@ -64,6 +68,11 @@ build() {
# (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
+ # fix module initialisation
+ # https://bugs.archlinux.org/task/32122
+ patch -Np1 -i "${srcdir}/module-symbol-waiting-3.6.patch"
+ patch -Np1 -i "${srcdir}/module-init-wait-3.6.patch"
+
if [ "$CARCH" == "mips64el" ]; then
sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre|" Makefile
sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
diff --git a/libre/linux-libre/config.i686 b/libre/linux-libre/config.i686
index e553c3d44..6533b0402 100644
--- a/libre/linux-libre/config.i686
+++ b/libre/linux-libre/config.i686
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.6.0 Kernel Configuration
+# Linux/i386 3.6.3 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -134,7 +134,10 @@ CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
-# CONFIG_MEMCG is not set
+CONFIG_MEMCG=y
+CONFIG_MEMCG_SWAP=y
+# CONFIG_MEMCG_SWAP_ENABLED is not set
+CONFIG_MEMCG_KMEM=y
# CONFIG_CGROUP_HUGETLB is not set
# CONFIG_CGROUP_PERF is not set
CONFIG_CGROUP_SCHED=y
diff --git a/libre/linux-libre/config.x86_64 b/libre/linux-libre/config.x86_64
index 479c39929..fbc1c7588 100644
--- a/libre/linux-libre/config.x86_64
+++ b/libre/linux-libre/config.x86_64
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 3.6.0 Kernel Configuration
+# Linux/x86_64 3.6.3 Kernel Configuration
#
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
@@ -136,7 +136,10 @@ CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
-# CONFIG_MEMCG is not set
+CONFIG_MEMCG=y
+CONFIG_MEMCG_SWAP=y
+# CONFIG_MEMCG_SWAP_ENABLED is not set
+CONFIG_MEMCG_KMEM=y
# CONFIG_CGROUP_HUGETLB is not set
# CONFIG_CGROUP_PERF is not set
CONFIG_CGROUP_SCHED=y
diff --git a/libre/linux-libre/linux-libre.install b/libre/linux-libre/linux-libre.install
index e5af2a1bd..e327cd7ea 100644
--- a/libre/linux-libre/linux-libre.install
+++ b/libre/linux-libre/linux-libre.install
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=
-KERNEL_VERSION=3.6.2-1-LIBRE
+KERNEL_VERSION=3.6.3-1-LIBRE
# set a sane PATH to ensure that critical utils like depmod will be found
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
diff --git a/libre/linux-libre/module-init-wait-3.6.patch b/libre/linux-libre/module-init-wait-3.6.patch
new file mode 100644
index 000000000..1bcfd2491
--- /dev/null
+++ b/libre/linux-libre/module-init-wait-3.6.patch
@@ -0,0 +1,77 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: wait when loading a module which is currently initializing.
+X-Git-Tag: v3.7-rc1~2^2~32
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=9bb9c3be568346538
+
+module: wait when loading a module which is currently initializing.
+
+The original module-init-tools module loader used a fnctl lock on the
+.ko file to avoid attempts to simultaneously load a module.
+Unfortunately, you can't get an exclusive fcntl lock on a read-only
+fd, making this not work for read-only mounted filesystems.
+module-init-tools has a hacky sleep-and-loop for this now.
+
+It's not that hard to wait in the kernel, and only return -EEXIST once
+the first module has finished loading (or continue loading the module
+if the first one failed to initialize for some reason). It's also
+consistent with what we do for dependent modules which are still loading.
+
+Suggested-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 63cf6e7..74bc195 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2845,6 +2845,20 @@ static int post_relocation(struct module *mod, const struct load_info *info)
+ return module_finalize(info->hdr, info->sechdrs, mod);
+ }
+
++/* Is this module of this name done loading? No locks held. */
++static bool finished_loading(const char *name)
++{
++ struct module *mod;
++ bool ret;
++
++ mutex_lock(&module_mutex);
++ mod = find_module(name);
++ ret = !mod || mod->state != MODULE_STATE_COMING;
++ mutex_unlock(&module_mutex);
++
++ return ret;
++}
++
+ /* Allocate and load the module: note that size of section 0 is always
+ zero, and we rely on this for optional sections. */
+ static struct module *load_module(void __user *umod,
+@@ -2852,7 +2866,7 @@ static struct module *load_module(void __user *umod,
+ const char __user *uargs)
+ {
+ struct load_info info = { NULL, };
+- struct module *mod;
++ struct module *mod, *old;
+ long err;
+
+ pr_debug("load_module: umod=%p, len=%lu, uargs=%p\n",
+@@ -2918,8 +2932,18 @@ static struct module *load_module(void __user *umod,
+ * function to insert in a way safe to concurrent readers.
+ * The mutex protects against concurrent writers.
+ */
++again:
+ mutex_lock(&module_mutex);
+- if (find_module(mod->name)) {
++ if ((old = find_module(mod->name)) != NULL) {
++ if (old->state == MODULE_STATE_COMING) {
++ /* Wait in case it fails to load. */
++ mutex_unlock(&module_mutex);
++ err = wait_event_interruptible(module_wq,
++ finished_loading(mod->name));
++ if (err)
++ goto free_arch_cleanup;
++ goto again;
++ }
+ err = -EEXIST;
+ goto unlock;
+ }
diff --git a/libre/linux-libre/module-symbol-waiting-3.6.patch b/libre/linux-libre/module-symbol-waiting-3.6.patch
new file mode 100644
index 000000000..b87a38ff5
--- /dev/null
+++ b/libre/linux-libre/module-symbol-waiting-3.6.patch
@@ -0,0 +1,66 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: fix symbol waiting when module fails before init
+X-Git-Tag: v3.7-rc1~2^2~33
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=6f13909f4fe9652f1
+
+module: fix symbol waiting when module fails before init
+
+We use resolve_symbol_wait(), which blocks if the module containing
+the symbol is still loading. However:
+
+1) The module_wq we use is only woken after calling the modules' init
+ function, but there are other failure paths after the module is
+ placed in the linked list where we need to do the same thing.
+
+2) wake_up() only wakes one waiter, and our waitqueue is shared by all
+ modules, so we need to wake them all.
+
+3) wake_up_all() doesn't imply a memory barrier: I feel happier calling
+ it after we've grabbed and dropped the module_mutex, not just after
+ the state assignment.
+
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 7f2ee45f..63cf6e7 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2959,7 +2959,7 @@ static struct module *load_module(void __user *umod,
+ /* Unlink carefully: kallsyms could be walking list. */
+ list_del_rcu(&mod->list);
+ module_bug_cleanup(mod);
+-
++ wake_up_all(&module_wq);
+ ddebug:
+ dynamic_debug_remove(info.debug);
+ unlock:
+@@ -3034,7 +3034,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_GOING, mod);
+ free_module(mod);
+- wake_up(&module_wq);
++ wake_up_all(&module_wq);
+ return ret;
+ }
+ if (ret > 0) {
+@@ -3046,9 +3046,8 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ dump_stack();
+ }
+
+- /* Now it's a first class citizen! Wake up anyone waiting for it. */
++ /* Now it's a first class citizen! */
+ mod->state = MODULE_STATE_LIVE;
+- wake_up(&module_wq);
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_LIVE, mod);
+
+@@ -3071,6 +3070,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ mod->init_ro_size = 0;
+ mod->init_text_size = 0;
+ mutex_unlock(&module_mutex);
++ wake_up_all(&module_wq);
+
+ return 0;
+ }
diff --git a/libre/lirc-libre/PKGBUILD b/libre/lirc-libre/PKGBUILD
index d4d91c412..fe03ab28d 100644
--- a/libre/lirc-libre/PKGBUILD
+++ b/libre/lirc-libre/PKGBUILD
@@ -6,7 +6,7 @@ _pkgbase=lirc
pkgbase=lirc-libre
pkgname=('lirc-libre' 'lirc-utils-libre')
pkgver=0.9.0
-pkgrel=31
+pkgrel=32
epoch=1
_extramodules=extramodules-3.6-LIBRE
arch=('i686' 'x86_64' 'mips64el')
diff --git a/libre/parabola-keyring/PKGBUILD b/libre/parabola-keyring/PKGBUILD
index 9d77543ce..cb0930c8c 100644
--- a/libre/parabola-keyring/PKGBUILD
+++ b/libre/parabola-keyring/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: André Silva <emulatorman@lavabit.com>
pkgname=parabola-keyring
-pkgver=20121012
+pkgver=20121023
pkgrel=1
pkgdesc='Parabola GNU/Linux-libre PGP keyring'
arch=('any')
@@ -16,5 +16,5 @@ package() {
cd "${srcdir}/${pkgname}-${pkgver}"
make PREFIX=/usr DESTDIR=${pkgdir} install
}
-md5sums=('386550a6b179ebd158bc7469362bf0b8'
- '4794d17dd40d51069eca315c2243528b')
+md5sums=('8a9036ae921c4f94fbadfaa264801a68'
+ '187123f4517f90ac325da8b58fc6e3e5')
diff --git a/libre/parabolaweb-utils/parabolaweb-fcgi b/libre/parabolaweb-utils/parabolaweb-fcgi
index 3dec02e10..e42aec3cd 100644
--- a/libre/parabolaweb-utils/parabolaweb-fcgi
+++ b/libre/parabolaweb-utils/parabolaweb-fcgi
@@ -3,9 +3,9 @@ set -e
. /etc/conf.d/parabolaweb
-[[ -e /srv/http/web/manage.py ]]
+[[ -e ${WEBDIR}/manage.py ]]
-sudo -u "${WEBUSER:-$USER}" python2 /srv/http/web/manage.py runfcgi \
+sudo -u "${WEBUSER:-$USER}" python2 "${WEBDIR}/manage.py" runfcgi \
host=${HOST} \
port=${PORT} \
--settings=settings \
diff --git a/libre/parabolaweb-utils/parabolaweb-update b/libre/parabolaweb-utils/parabolaweb-update
index e4d65c2d9..b8ac5bf5e 100644
--- a/libre/parabolaweb-utils/parabolaweb-update
+++ b/libre/parabolaweb-utils/parabolaweb-update
@@ -1,8 +1,11 @@
#!/bin/bash
set -e
-_install_dir=/srv/http
-_gitname=web
+. /etc/conf.d/parabolaweb
+
+
+_install_dir=${WEBDIR%/*}
+_gitname=${WEBDIR##*/}
_gitroot=git://parabolagnulinux.org/parabolaweb.git
_gitbranch=master
diff --git a/libre/parabolaweb-utils/parabolaweb.conf b/libre/parabolaweb-utils/parabolaweb.conf
index c53b19cb8..467e62e2c 100644
--- a/libre/parabolaweb-utils/parabolaweb.conf
+++ b/libre/parabolaweb-utils/parabolaweb.conf
@@ -1,3 +1,4 @@
HOST=127.0.0.1
PORT=8090 # 80 is nginx
+WEBDIR=/srv/http/web
WEBUSER=nobody
diff --git a/libre/parabolaweb-utils/parabolaweb.rc b/libre/parabolaweb-utils/parabolaweb.rc
index 087a3fcb0..5e310b01d 100644
--- a/libre/parabolaweb-utils/parabolaweb.rc
+++ b/libre/parabolaweb-utils/parabolaweb.rc
@@ -8,6 +8,7 @@ PIDFILE=/run/web/parabolaweb.pid
case $1 in
start)
stat_busy "Starting ParabolaWeb"
+ install -dm777 ${PIDFILE%/*}
if parabolaweb-fcgi pidfile=${PIDFILE}; then
add_daemon parabolaweb
stat_done
diff --git a/libre/parabolaweb-utils/parabolaweb.service b/libre/parabolaweb-utils/parabolaweb.service
index 4c3fb8c7f..a59d58512 100644
--- a/libre/parabolaweb-utils/parabolaweb.service
+++ b/libre/parabolaweb-utils/parabolaweb.service
@@ -5,8 +5,9 @@ Description=ParabolaWeb
[Service]
Type=forking
-ExecStart=/usr/sbin/parabolaweb-fcgi pidfile=/run/web/parabolaweb.pid
PIDFile=/run/web/parabolaweb.pid
+ExecStartPre=/usr/bin/install -dm777 /run/web
+ExecStart=/usr/sbin/parabolaweb-fcgi pidfile=/run/web/parabolaweb.pid
[Install]
WantedBy=multi-user.target
diff --git a/libre/tp_smapi-libre-lts/PKGBUILD b/libre/tp_smapi-libre-lts/PKGBUILD
index 91ae34864..18b474d64 100644
--- a/libre/tp_smapi-libre-lts/PKGBUILD
+++ b/libre/tp_smapi-libre-lts/PKGBUILD
@@ -12,7 +12,7 @@ pkgname=tp_smapi-libre-lts
_pkgname=tp_smapi
_extramodules=/usr/lib/modules/extramodules-3.0-LIBRE-LTS
pkgver=0.41
-pkgrel=9
+pkgrel=9.1
pkgdesc="linux-libre-lts modules for ThinkPad's SMAPI functionality"
arch=('i686' 'x86_64')
url='https://github.com/evgeni/tp_smapi'
diff --git a/libre/tp_smapi-libre/PKGBUILD b/libre/tp_smapi-libre/PKGBUILD
index 4c8910c2b..9db910c9e 100644
--- a/libre/tp_smapi-libre/PKGBUILD
+++ b/libre/tp_smapi-libre/PKGBUILD
@@ -11,7 +11,7 @@
_pkgname=tp_smapi
pkgname=tp_smapi-libre
pkgver=0.41
-pkgrel=9
+pkgrel=10
pkgdesc="Modules for ThinkPad's SMAPI functionality"
arch=('i686' 'x86_64')
url='https://github.com/evgeni/tp_smapi'
diff --git a/libre/vhba-module-libre/PKGBUILD b/libre/vhba-module-libre/PKGBUILD
index 7405eb52f..98131171f 100644
--- a/libre/vhba-module-libre/PKGBUILD
+++ b/libre/vhba-module-libre/PKGBUILD
@@ -8,7 +8,7 @@ _pkgname=vhba-module
pkgname=vhba-module-libre
pkgver=20120422
_extramodules=extramodules-3.6-LIBRE
-pkgrel=12
+pkgrel=13
pkgdesc="Kernel libre module that emulates SCSI devices"
arch=('i686' 'x86_64' 'mips64el')
url="http://cdemu.sourceforge.net/"
diff --git a/libre/virtualbox-libre-modules-lts/PKGBUILD b/libre/virtualbox-libre-modules-lts/PKGBUILD
index 7a95b4c7b..3067a780e 100644
--- a/libre/virtualbox-libre-modules-lts/PKGBUILD
+++ b/libre/virtualbox-libre-modules-lts/PKGBUILD
@@ -8,7 +8,7 @@
pkgbase=virtualbox-libre-modules-lts
pkgname=('virtualbox-libre-host-modules-lts' 'virtualbox-libre-guest-modules-lts')
pkgver=4.2.2
-pkgrel=1
+pkgrel=1.1
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL')
diff --git a/libre/virtualbox-libre-modules/PKGBUILD b/libre/virtualbox-libre-modules/PKGBUILD
index 3fcbd7069..7c8a53bb5 100644
--- a/libre/virtualbox-libre-modules/PKGBUILD
+++ b/libre/virtualbox-libre-modules/PKGBUILD
@@ -7,7 +7,7 @@
pkgbase=virtualbox-libre-modules
pkgname=('virtualbox-libre-host-modules' 'virtualbox-libre-guest-modules')
pkgver=4.2.2
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL')
diff --git a/staging/emacs/PKGBUILD b/staging/emacs/PKGBUILD
deleted file mode 100644
index 3fa2f0677..000000000
--- a/staging/emacs/PKGBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# $Id: PKGBUILD 169485 2012-10-22 00:40:50Z eric $
-# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
-# Contributor: Renchi Raju <renchi@green.tam.uiuc.edu>
-
-pkgname=emacs
-pkgver=24.2
-pkgrel=2
-pkgdesc="The extensible, customizable, self-documenting real-time display editor"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/emacs/emacs.html"
-license=('GPL3')
-depends=('librsvg' 'gpm' 'giflib' 'libxpm' 'libotf' 'm17n-lib' 'gtk3' 'hicolor-icon-theme' 'gconf' 'desktop-file-utils' 'alsa-lib' 'imagemagick')
-install=emacs.install
-source=(ftp://ftp.gnu.org/gnu/emacs/$pkgname-$pkgver.tar.bz2{,.sig})
-md5sums=('1676803a50e8adc817fdaaebb9234f14' 'ca1766337f419ef827dd96d1ff78f158')
-
-
-build() {
- cd "$srcdir"/$pkgname-$pkgver
- ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib \
- --localstatedir=/var --with-x-toolkit=gtk3 --with-xft
- make
-}
-
-package() {
- cd "$srcdir"/$pkgname-$pkgver
- make DESTDIR="$pkgdir" install
-
- # remove conflict with ctags package
- mv "$pkgdir"/usr/bin/{ctags,ctags.emacs}
- mv "$pkgdir"/usr/share/man/man1/{ctags.1.gz,ctags.emacs.1}
- # fix all the 777 perms on directories
- find "$pkgdir"/usr/share/emacs/$_majorver -type d -exec chmod 755 {} \;
- # fix user/root permissions on usr/share files
- find "$pkgdir"/usr/share/emacs/$_majorver -exec chown root:root {} \;
- # fix perms on /var/games
- chmod 775 "$pkgdir"/var/games
- chmod 775 "$pkgdir"/var/games/emacs
- chmod 664 "$pkgdir"/var/games/emacs/*
- chown -R root:games "$pkgdir"/var/games
-}
diff --git a/staging/emacs/emacs.install b/staging/emacs/emacs.install
deleted file mode 100644
index d84f1de14..000000000
--- a/staging/emacs/emacs.install
+++ /dev/null
@@ -1,32 +0,0 @@
-ICON_PATH=usr/share/icons/hicolor
-INFO_DIR=usr/share/info
-
-INFO_FILES=(ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse
-ede ediff edt efaq eieio eintr elisp emacs emacs-mime epa erc eshell eudc flymake
-forms gnus idlwave info mairix-el message mh-e newsticker nxml-mode
-org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail
-speedbar tramp url vip viper widget woman)
-
-post_install() {
- gtk-update-icon-cache -q -t -f ${ICON_PATH}
- update-desktop-database -q
-
- [[ -x usr/bin/install-info ]] || return 0
- for f in ${INFO_FILES[@]}; do
- install-info ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- gtk-update-icon-cache -q -t -f ${ICON_PATH}
- update-desktop-database -q
-
- [[ -x usr/bin/install-info ]] || return 0
- for f in ${INFO_FILES[@]}; do
- install-info --delete ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null
- done
-}
diff --git a/staging/gegl/gegl-0.2.0-ffmpeg-0.11.diff b/staging/gegl/gegl-0.2.0-ffmpeg-0.11.diff
deleted file mode 100644
index a33ec6f7f..000000000
--- a/staging/gegl/gegl-0.2.0-ffmpeg-0.11.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur gegl-0.2.0/operations/external/ff-load.c gegl-0.2.0-1/operations/external/ff-load.c
---- gegl-0.2.0/operations/external/ff-load.c 2012-04-01 13:17:57.000000000 +0200
-+++ gegl-0.2.0-1/operations/external/ff-load.c 2012-07-11 12:42:05.174756560 +0200
-@@ -271,7 +271,7 @@
- gint err;
-
- ff_cleanup (o);
-- err = av_open_input_file (&p->ic, o->path, NULL, 0, NULL);
-+err = avformat_open_input (&p->ic, o->path, NULL, NULL);
- if (err < 0)
- {
- print_error (o->path, err);
diff --git a/staging/obex-data-server/PKGBUILD b/staging/obex-data-server/PKGBUILD
deleted file mode 100644
index 32d465533..000000000
--- a/staging/obex-data-server/PKGBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# $Id: PKGBUILD 169396 2012-10-20 10:00:06Z andrea $
-# Maintainer: Andrea Scarpino <andrea@archlinux.org>
-# Contributor: Geoffroy Carrier <geoffroy@archlinux.org>
-# Contributor: Roman Kyrylych <roman@archlinux.org>
-# Contributor: Keerthi <keerthi.linux@gmail.com>
-
-pkgname=obex-data-server
-pkgver=0.4.6
-pkgrel=3
-pkgdesc="A D-Bus service providing high-level OBEX client and server side functionality"
-arch=('i686' 'x86_64')
-url="http://wiki.muiline.com/obex-data-server"
-license=('GPL')
-depends=('dbus-glib' 'openobex' 'imagemagick')
-source=("http://tadas.dailyda.com/software/${pkgname}-${pkgver}.tar.gz")
-md5sums=('961ca5db6fe9c97024e133cc6203cc4d')
-
-build() {
- cd ${pkgname}-${pkgver}
- ./configure --prefix=/usr \
- --sysconfdir=/etc
- make
-}
-
-package() {
- cd ${pkgname}-${pkgver}
- make DESTDIR="${pkgdir}" install
-}
diff --git a/staging/pstoedit/PKGBUILD b/staging/pstoedit/PKGBUILD
deleted file mode 100644
index c8cfb6c43..000000000
--- a/staging/pstoedit/PKGBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# $Id: PKGBUILD 169481 2012-10-21 23:53:55Z eric $
-# Maintainer: Ronald van Haren <ronald.archlinux.org>
-# Contributor: damir <damir@archlinux.org>
-# Contributor: Tobias Powalowski <t.powa@gmx.de>
-
-pkgname=pstoedit
-pkgver=3.60
-pkgrel=3
-pkgdesc="Translates PostScript and PDF graphics into other vector formats"
-arch=('i686' 'x86_64')
-url="http://www.pstoedit.net/"
-license=('GPL')
-depends=('gcc-libs' 'plotutils' 'gd' 'imagemagick')
-makedepends=('ghostscript')
-options=('!libtool' '!makeflags')
-source=("http://downloads.sourceforge.net/sourceforge/pstoedit/pstoedit-${pkgver}.tar.gz"
- 'pstoedit-3.50-parallel.patch' 'pstoedit-3.50-plugin-close.patch')
-sha1sums=('649ade3d873429548eb6dd9f3e13cb79a8d6a1a2'
- '6e278b164d3e59fbb11e7fd5ae8ffb038932d69a'
- '54bbe019de66eb4cb8525371462595d21fbd074e')
-
-build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- sed -i 's/-pedantic//' configure
-
- ./configure --prefix=/usr
- make
-}
-
-package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" install
-}
diff --git a/staging/pstoedit/pstoedit-3.50-parallel.patch b/staging/pstoedit/pstoedit-3.50-parallel.patch
deleted file mode 100644
index 4f1f73b04..000000000
--- a/staging/pstoedit/pstoedit-3.50-parallel.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-diff --git a/src/Makefile.am b/src/Makefile.am
-index d6178df..66f377b 100755
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -86,6 +86,7 @@ libp2edrvstd_la_SOURCES= \
- $(sample_drivers_src)
- libp2edrvstd_la_LIBADD=-L. libpstoedit.la
- libp2edrvstd_la_LDFLAGS=-no-undefined -module
-+libp2edrvstd_la_DEPENDENCIES = libpstoedit.la
-
- #libp2edrvplugins_la_SOURCES=drvmif.cpp drvcgm.cpp drvrtf.cpp drvwwmf.cpp
- #libp2edrvplugins_la_LIBADD=
-@@ -95,15 +96,18 @@ libp2edrvstd_la_LDFLAGS=-no-undefined -module
- libp2edrvlplot_la_SOURCES=drvlplot.cpp drvlplot.h initlibrary.cpp
- libp2edrvlplot_la_LIBADD=$(LIBPLOTTER_LDFLAGS) -L. libpstoedit.la
- libp2edrvlplot_la_LDFLAGS=-no-undefined -module
-+libp2edrvlplot_la_DEPENDENCIES = libpstoedit.la
-
- libp2edrvswf_la_SOURCES=drvswf.cpp drvswf.h initlibrary.cpp
- libp2edrvswf_la_LIBADD=$(LIBMING_LDFLAGS) -L. libpstoedit.la
- libp2edrvswf_la_LDFLAGS=-no-undefined -module
-+libp2edrvswf_la_DEPENDENCIES = libpstoedit.la
-
- # note the __ stand for ++ - automake treats all no alphanums chars as _
- libp2edrvmagick___la_SOURCES=drvmagick++.cpp drvmagick++.h initlibrary.cpp
- libp2edrvmagick___la_LIBADD=-L. libpstoedit.la
- libp2edrvmagick___la_LDFLAGS=-no-undefined ${LIBMAGICK_LDFLAGS} -module
-+libp2edrvmagick___la_DEPENDENCIES = libpstoedit.la
- # moved to configure.ac because needed only for g++ libp2edrvmagick___la_CPPFLAGS=$(LIBMAGICK_CFLAGS) $(AM_CPPFLAGS) -Wno-long-long
-
- if USE_EMFBYSOURCE
-@@ -113,6 +117,7 @@ else
- libp2edrvwmf_la_SOURCES=drvwmf.cpp drvwmf.h initlibrary.cpp
- libp2edrvwmf_la_LDFLAGS=-no-undefined $(LIBEMF_LDFLAGS) -L. libpstoedit.la -module
- endif
-+libp2edrvwmf_la_DEPENDENCIES = libpstoedit.la
-
- libpstoedit_la_SOURCES = \
- dynload.cpp dynload.h \
-@@ -135,6 +140,7 @@ libpstoedit_la_LDFLAGS = -no-undefined
-
- pstoedit_SOURCES = cmdmain.cpp
- pstoedit_LDFLAGS = -no-undefined -L. libpstoedit.la ${LIBLD_LDFLAGS}
-+pstoedit_DEPENDENCIES = libpstoedit.la
-
- pkginclude_HEADERS = \
- pstoedit.h \
diff --git a/staging/pstoedit/pstoedit-3.50-plugin-close.patch b/staging/pstoedit/pstoedit-3.50-plugin-close.patch
deleted file mode 100644
index 6787d6aef..000000000
--- a/staging/pstoedit/pstoedit-3.50-plugin-close.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-http://bugzilla.redhat.com/507035
-
-diff --git a/src/dynload.cpp b/src/dynload.cpp
-index c0db355..7c073ef 100644
---- a/src/dynload.cpp
-+++ b/src/dynload.cpp
-@@ -147,7 +147,6 @@ void DynLoader::close()
-
- DynLoader::~DynLoader()
- {
-- close();
- libname=0;
- }
-
diff --git a/testing/btrfs-progs/btrfs-progs.install b/testing/btrfs-progs/btrfs-progs.install
deleted file mode 100644
index d6c0698a0..000000000
--- a/testing/btrfs-progs/btrfs-progs.install
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-post_upgrade() {
- if [ "$(vercmp 0.19.20121005 "$2")" -eq 1 ]; then
- echo "btrfs multi-device support now relies on linux 3.6 or later"
- fi
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/testing/kmod/0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch b/testing/kmod/0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch
deleted file mode 100644
index 8c4ecf83c..000000000
--- a/testing/kmod/0001-depmod-fix-parsing-of-modules.order-with-compressed-.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From 88c247f7f18ac25181ddcaff97fbbecbd3a29f57 Mon Sep 17 00:00:00 2001
-From: Lucas De Marchi <lucas.de.marchi@gmail.com>
-Date: Wed, 3 Oct 2012 16:28:24 -0300
-Subject: [PATCH] depmod: fix parsing of modules.order with compressed modules
-
-We now index the modules by uncompressed-relative-path instead of
-relative-path. This is because the file modules.order, coming from
-kernel, always comes with uncompressed paths. This fixes the issue of
-not sorting the aliases correctly due to paths not matching when using
-compressed modules.
----
- tools/depmod.c | 46 +++++++++++++++++++++++++++++-----------------
- 1 file changed, 29 insertions(+), 17 deletions(-)
-
-diff --git a/tools/depmod.c b/tools/depmod.c
-index 0bf2dea..ff19d6e 100644
---- a/tools/depmod.c
-+++ b/tools/depmod.c
-@@ -39,6 +39,8 @@
- #define DEFAULT_VERBOSE LOG_WARNING
- static int verbose = DEFAULT_VERBOSE;
-
-+#define KMOD_EXT_UNC 0
-+
- static const struct kmod_ext {
- const char *ext;
- size_t len;
-@@ -1001,6 +1003,7 @@ struct mod {
- uint16_t idx; /* index in depmod->modules.array */
- uint16_t users; /* how many modules depend on this one */
- uint8_t dep_loop : 1;
-+ char *uncrelpath; /* same as relpath but ending in .ko */
- char modname[];
- };
-
-@@ -1014,7 +1017,7 @@ struct depmod {
- const struct cfg *cfg;
- struct kmod_ctx *ctx;
- struct array modules;
-- struct hash *modules_by_relpath;
-+ struct hash *modules_by_uncrelpath;
- struct hash *modules_by_name;
- struct hash *symbols;
- unsigned int dep_loops;
-@@ -1025,6 +1028,7 @@ static void mod_free(struct mod *mod)
- DBG("free %p kmod=%p, path=%s\n", mod, mod->kmod, mod->path);
- array_free_array(&mod->deps);
- kmod_module_unref(mod->kmod);
-+ free(mod->uncrelpath);
- free(mod);
- }
-
-@@ -1066,10 +1070,10 @@ static int depmod_init(struct depmod *depmod, struct cfg *cfg,
-
- array_init(&depmod->modules, 128);
-
-- depmod->modules_by_relpath = hash_new(512, NULL);
-- if (depmod->modules_by_relpath == NULL) {
-+ depmod->modules_by_uncrelpath = hash_new(512, NULL);
-+ if (depmod->modules_by_uncrelpath == NULL) {
- err = -errno;
-- goto modules_by_relpath_failed;
-+ goto modules_by_uncrelpath_failed;
- }
-
- depmod->modules_by_name = hash_new(512, NULL);
-@@ -1089,8 +1093,8 @@ static int depmod_init(struct depmod *depmod, struct cfg *cfg,
- symbols_failed:
- hash_free(depmod->modules_by_name);
- modules_by_name_failed:
-- hash_free(depmod->modules_by_relpath);
--modules_by_relpath_failed:
-+ hash_free(depmod->modules_by_uncrelpath);
-+modules_by_uncrelpath_failed:
- return err;
- }
-
-@@ -1100,7 +1104,7 @@ static void depmod_shutdown(struct depmod *depmod)
-
- hash_free(depmod->symbols);
-
-- hash_free(depmod->modules_by_relpath);
-+ hash_free(depmod->modules_by_uncrelpath);
-
- hash_free(depmod->modules_by_name);
-
-@@ -1114,7 +1118,7 @@ static void depmod_shutdown(struct depmod *depmod)
- static int depmod_module_add(struct depmod *depmod, struct kmod_module *kmod)
- {
- const struct cfg *cfg = depmod->cfg;
-- const char *modname;
-+ const char *modname, *lastslash;
- size_t modnamelen;
- struct mod *mod;
- int err;
-@@ -1134,7 +1138,8 @@ static int depmod_module_add(struct depmod *depmod, struct kmod_module *kmod)
- array_init(&mod->deps, 4);
-
- mod->path = kmod_module_get_path(kmod);
-- mod->baselen = strrchr(mod->path, '/') - mod->path;
-+ lastslash = strrchr(mod->path, '/');
-+ mod->baselen = lastslash - mod->path;
- if (strncmp(mod->path, cfg->dirname, cfg->dirnamelen) == 0 &&
- mod->path[cfg->dirnamelen] == '/')
- mod->relpath = mod->path + cfg->dirnamelen + 1;
-@@ -1144,25 +1149,32 @@ static int depmod_module_add(struct depmod *depmod, struct kmod_module *kmod)
- err = hash_add_unique(depmod->modules_by_name, mod->modname, mod);
- if (err < 0) {
- ERR("hash_add_unique %s: %s\n", mod->modname, strerror(-err));
-- free(mod);
-- return err;
-+ goto fail;
- }
-
- if (mod->relpath != NULL) {
-- err = hash_add_unique(depmod->modules_by_relpath,
-- mod->relpath, mod);
-+ size_t uncrelpathlen = lastslash - mod->relpath + modnamelen
-+ + kmod_exts[KMOD_EXT_UNC].len;
-+ mod->uncrelpath = memdup(mod->relpath, uncrelpathlen + 1);
-+ mod->uncrelpath[uncrelpathlen] = '\0';
-+ err = hash_add_unique(depmod->modules_by_uncrelpath,
-+ mod->uncrelpath, mod);
- if (err < 0) {
- ERR("hash_add_unique %s: %s\n",
- mod->relpath, strerror(-err));
- hash_del(depmod->modules_by_name, mod->modname);
-- free(mod);
-- return err;
-+ goto fail;
- }
- }
-
- DBG("add %p kmod=%p, path=%s\n", mod, kmod, mod->path);
-
- return 0;
-+
-+fail:
-+ free(mod->uncrelpath);
-+ free(mod);
-+ return err;
- }
-
- static int depmod_module_del(struct depmod *depmod, struct mod *mod)
-@@ -1170,7 +1182,7 @@ static int depmod_module_del(struct depmod *depmod, struct mod *mod)
- DBG("del %p kmod=%p, path=%s\n", mod, mod->kmod, mod->path);
-
- if (mod->relpath != NULL)
-- hash_del(depmod->modules_by_relpath, mod->relpath);
-+ hash_del(depmod->modules_by_uncrelpath, mod->relpath);
-
- hash_del(depmod->modules_by_name, mod->modname);
-
-@@ -1472,7 +1484,7 @@ static void depmod_modules_sort(struct depmod *depmod)
- continue;
- line[len - 1] = '\0';
-
-- mod = hash_find(depmod->modules_by_relpath, line);
-+ mod = hash_find(depmod->modules_by_uncrelpath, line);
- if (mod == NULL)
- continue;
- mod->sort_idx = idx - total;
---
-1.7.12.4
-
diff --git a/testing/kmod/0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch b/testing/kmod/0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch
deleted file mode 100644
index 4ef3d2775..000000000
--- a/testing/kmod/0001-libkmod-Add-support-for-.-in-module-parameter-on-kcm.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 66f3228d17d66d7e2dd484427259290fbc82b2f0 Mon Sep 17 00:00:00 2001
-From: Lucas De Marchi <lucas.demarchi@profusion.mobi>
-Date: Mon, 8 Oct 2012 19:04:16 -0300
-Subject: [PATCH] libkmod: Add support for '.' in module parameter on kcmdline
-
-Otherwise we fail to parse arguments in kernel command line like
-testmodule.testparam=1.5G
-
-Suggested-by: Selim T. Erdogan <selim@alumni.cs.utexas.edu>
----
- libkmod/libkmod-config.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/libkmod/libkmod-config.c b/libkmod/libkmod-config.c
-index 70044f0..398468e 100644
---- a/libkmod/libkmod-config.c
-+++ b/libkmod/libkmod-config.c
-@@ -567,8 +567,10 @@ static int kmod_config_parse_kcmdline(struct kmod_config *config)
- modname = p + 1;
- break;
- case '.':
-- *p = '\0';
-- param = p + 1;
-+ if (param == NULL) {
-+ *p = '\0';
-+ param = p + 1;
-+ }
- break;
- case '=':
- if (param != NULL)
---
-1.7.12.4
-
diff --git a/testing/usermin/PKGBUILD b/testing/usermin/PKGBUILD
deleted file mode 100644
index 6e5eb6289..000000000
--- a/testing/usermin/PKGBUILD
+++ /dev/null
@@ -1,134 +0,0 @@
-# $Id: PKGBUILD 169457 2012-10-21 13:56:26Z tomegun $
-# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
-pkgname=usermin
-pkgver=1.520
-pkgrel=2
-pkgdesc="a web interface that can be used to easily perform tasks like reading mail, setting up SSH or configuring mail forwarding"
-arch=(i686 x86_64)
-license=('custom:usermin')
-url="http://www.webmin.com/"
-depends=('perl' 'webmin')
-makedepends=('perl-net-ssleay')
-backup=('etc/usermin/miniserv.conf' 'etc/usermin/miniserv.users' 'etc/usermin/config' 'etc/usermin/usermin.cats' \
-'etc/usermin/at/config' \
-'etc/usermin/man/config' \
-'etc/usermin/ssh/config' \
-'etc/usermin/chfn/config' \
-'etc/usermin/cron/config' \
-'etc/usermin/file/config' \
-'etc/usermin/plan/config' \
-'etc/usermin/proc/config' \
-'etc/usermin/spam/config' \
-'etc/usermin/htaccess/config' \
-'etc/usermin/cshrc/config' \
-'etc/usermin/gnupg/config' \
-'etc/usermin/mysql/config' \
-'etc/usermin/quota/config' \
-'etc/usermin/shell/config' \
-'etc/usermin/theme/config' \
-'etc/usermin/mailbox/config' \
-'etc/usermin/schedule/config' \
-'etc/usermin/config' \
-'etc/usermin/commands/config' \
-'etc/usermin/htaccess-htpasswd/config' \
-'etc/usermin/forward/config' \
-'etc/usermin/telnet/config' \
-'etc/usermin/tunnel/config' \
-'etc/usermin/updown/config' \
-'etc/usermin/procmail/config' \
-'etc/usermin/fetchmail/config' \
-'etc/usermin/changepass/config' \
-'etc/usermin/language/config' \
-'etc/usermin/postgresql/config' \
-'etc/usermin/usermount/config' \
-)
-install=usermin.install
-source=(http://downloads.sourceforge.net/sourceforge/webadmin/$pkgname-$pkgver.tar.gz
- usermin.rc
- usermin.service
- ftp://ftp.archlinux.org/other/usermin/usermin-config.tar.bz2)
-
-build() {
- cd $startdir/src/$pkgname-$pkgver
-
- # remove modules we do not support
-
- #remove config files from other distros
- rm -f $(find . ! -name 'config-generic-linux' ! -name 'config-\*-linux' ! -name 'config-lib.pl' -name 'config-*')
-
- # remove caldera theme
- rm -rf caldera
-
- # remove init-scripts from other distros
- rm usermin-init
- rm usermin-daemon
-
- # setting perl path
- (find . -name '*.cgi' ; find . -name '*.pl') | perl perlpath.pl /usr/bin/perl -
-
- # create dirs
- mkdir -p $startdir/pkg/opt/usermin
- mkdir -p $startdir/pkg/var/log/usermin
- mkdir -p $startdir/pkg/etc/usermin
-
- # install pam stuff
- install -D -m 644 usermin-pam $startdir/pkg/etc/pam.d/usermin
-
- # remove other distros and add only Archlinux don't change next line else it will not work!
- rm os_list.txt
- echo 'Archlinux Any version generic-linux * -d "/etc/pacman.d"' >> os_list.txt
-
- # copy stuff to right dirs
- cd $startdir/src/$pkgname-$pkgver
- cp -rp * $startdir/pkg/opt/usermin
- cd $startdir/src/usermin-config
- cp -rfp * $startdir/pkg/opt/usermin
-
- # define parameters for setup.sh
- config_dir=$startdir/pkg/etc/usermin
- var_dir=$startdir/pkg/var/log/usermin
- perl=/usr/bin/perl
- autoos=1
- port=20000
- login=root
- crypt="XXX"
- ssl=1
- atboot=0
- nostart=1
- nochown=1
- autothird=1
- nouninstall=1
- noperlpath=1
- atbootyn=n
- tempdir=$startdir/pkg/tmp
- export config_dir var_dir perl autoos port tempdir ssl nochown autothird nouninstall nostart noperlpath atbootyn login crypt
-
- # Fix setup.sh
- sed -i -e 's:read atbootyn::g' -e 's:exit 13::g' $startdir/pkg/opt/usermin/setup.sh
- $startdir/pkg/opt/usermin/setup.sh
-
- # Fixup the config files to use their real locations
- sed -i 's:^pidfile=.*$:pidfile=/var/run/usermin.pid:' $startdir/pkg/etc/usermin/miniserv.conf
- find $startdir/pkg/etc/usermin -type f -exec sed -i "s:$startdir/pkg::g" {} \;
-
- # make it only accessible by localhost
- echo 'allow=127.0.0.1' >> $startdir/pkg/etc/usermin/miniserv.conf
-
- # enable user and password login
- sed -i -e '/localauth/d' $startdir/pkg/etc/usermin/miniserv.conf
-
- #install systemd service file
- install -D -m 644 $startdir/src/usermin.service $startdir/pkg/usr/lib/systemd/system/usermin.service
-
- #install rc file
- install -D -m 755 $startdir/src/usermin.rc $startdir/pkg/etc/rc.d/usermin
-
- # delete temp dir
- rm -r $startdir/pkg/tmp
- #install license
- install -m 644 -D $startdir/src/$pkgname-$pkgver/LICENCE $startdir/pkg/usr/share/licenses/usermin/LICENCE
-}
-md5sums=('5819ba87796d9373a92116e90d1a35d4'
- 'cfef4490cd1ef9517c0b39a7bd75c968'
- 'a5bd5e5ee779f8a3cf3d776ca77ee36e'
- 'ec37a79f948f778224550930d2a7ca07')
diff --git a/testing/usermin/usermin-config.tar.bz2 b/testing/usermin/usermin-config.tar.bz2
deleted file mode 100644
index 056bb6298..000000000
--- a/testing/usermin/usermin-config.tar.bz2
+++ /dev/null
Binary files differ
diff --git a/testing/usermin/usermin.install b/testing/usermin/usermin.install
deleted file mode 100644
index 3ace10ea2..000000000
--- a/testing/usermin/usermin.install
+++ /dev/null
@@ -1,34 +0,0 @@
-# arg 1: the new package version
-post_install() {
- local crypt=$(grep "^root:" ${ROOT}/etc/shadow | cut -f 2 -d :)
- crypt=${crypt//\\/\\\\}
- crypt=${crypt//\//\\\/}
- sed -i "s/root:XXX/root:${crypt}/" /etc/usermin/miniserv.users
-cat << EOF
-Note:
-==> It is not allowed to install 3rd party modules, or delete existing modules.
-==> Please write your own PKGBUILDS for 3rd party modules and additional themes.
-Setup:
-==> To make usermin start at boot time, add usermin to rc.conf daemons
-==> Point your web browser to http://localhost:20000 to use usermin.
-==> To change the modules setup please use webmin.
-
-==> The access is restricted to localhost, if you want to connect from other locations
-==> change /etc/usermin/miniserv.conf to something like that: allow=127.0.0.1 <your-ip>
-==> If you want to have ssl encryption please install 'perl-net-ssleay' additional.
-EOF
-# fix man module
- cd /opt/usermin/man
- gzip -df $(find . -name '*.gz')
-}
-
-# arg 1: the new package version
-# arg 2: the old package version
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- # uninstall unzipped files
- rm -r /opt/usermin/man
-}
diff --git a/testing/usermin/usermin.rc b/testing/usermin/usermin.rc
deleted file mode 100644
index af365780a..000000000
--- a/testing/usermin/usermin.rc
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/bash
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-start=/etc/usermin/start
-stop=/etc/usermin/stop
-lockfile=/var/lock/usermin
-
-case "$1" in
-'start')
- stat_busy "Starting Usermin daemon"
- $start >/dev/null 2>&1 </dev/null
- RETVAL=$?
- if [ "$RETVAL" = "0" ]; then
- touch $lockfile >/dev/null 2>&1
- stat_done
- else
- stat_fail
-fi
-;;
-
-'stop')
- stat_busy "Stopping Usermin daemon"
- $stop >/dev/null 2>&1 </dev/null
- RETVAL=$?
- if [ "$RETVAL" = "0" ]; then
- rm -f $lockfile
- stat_done
- else
- stat_fail
-fi
-;;
-
-'restart')
- $stop && $start
- RETVAL=$?
-;;
-*)
-echo "Usage: $0 { start | stop | restart }"
-RETVAL=1
-;;
-esac
-exit $RETVAL \ No newline at end of file
diff --git a/testing/usermin/usermin.service b/testing/usermin/usermin.service
deleted file mode 100644
index e91164c63..000000000
--- a/testing/usermin/usermin.service
+++ /dev/null
@@ -1,9 +0,0 @@
-[Unit]
-Description=Usermin
-
-[Service]
-Type=forking
-ExecStart=/opt/usermin/miniserv.pl /etc/usermin/miniserv.conf
-
-[Install]
-WantedBy=multi-user.target