summaryrefslogtreecommitdiff
path: root/community
diff options
context:
space:
mode:
Diffstat (limited to 'community')
-rw-r--r--community/arpwatch/PKGBUILD14
-rw-r--r--community/arpwatch/ethercodes.dat.xzbin0 -> 166132 bytes
-rwxr-xr-xcommunity/arpwatch/gen_ethercode.sh32
-rw-r--r--community/audit/PKGBUILD6
-rw-r--r--community/libkkc-data/PKGBUILD5
-rw-r--r--community/libkkc/PKGBUILD6
-rw-r--r--community/linuxsampler/PKGBUILD38
-rw-r--r--community/linuxsampler/license.txt7
-rw-r--r--community/lxsession/PKGBUILD23
-rw-r--r--community/lxsession/lxsession-0.4.6.1-logind-support.patch608
-rw-r--r--community/pidgin-lwqq/PKGBUILD11
-rw-r--r--community/quagga/PKGBUILD8
-rw-r--r--community/skktools/PKGBUILD37
-rw-r--r--community/unrealircd/PKGBUILD8
-rw-r--r--community/uwsgi/PKGBUILD235
-rw-r--r--community/uwsgi/archlinux.ini17
-rw-r--r--community/uwsgi/tmpfilesd1
-rw-r--r--community/uwsgi/uwsgi.install11
-rw-r--r--community/uwsgi/uwsgi@.service13
-rw-r--r--community/uwsgi/uwsgi@.socket9
-rw-r--r--community/uwsgi/uwsgi_fix_rpath.patch66
-rw-r--r--community/uwsgi/uwsgi_ruby20_compatibility.patch42
-rw-r--r--community/uwsgi/uwsgi_trick_chroot.patch16
23 files changed, 523 insertions, 690 deletions
diff --git a/community/arpwatch/PKGBUILD b/community/arpwatch/PKGBUILD
index b99a70eda..526fbc6f2 100644
--- a/community/arpwatch/PKGBUILD
+++ b/community/arpwatch/PKGBUILD
@@ -1,40 +1,44 @@
-# $Id: PKGBUILD 91484 2013-05-23 10:11:13Z spupykin $
+# $Id: PKGBUILD 94834 2013-07-31 01:12:04Z seblu $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
-# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Sébastien Luttringer
pkgname=arpwatch
pkgver=2.1a15
-pkgrel=11
+pkgrel=12
pkgdesc='Ethernet/FDDI station activity monitor'
arch=('i686' 'x86_64')
url='ftp://ftp.ee.lbl.gov/'
license=('BSD')
depends=('libpcap' 'smtp-forwarder')
source=("ftp://ftp.ee.lbl.gov/$pkgname-$pkgver.tar.gz"
+ 'ethercodes.dat.xz'
'LICENSE'
"$pkgname.service")
md5sums=('cebfeb99c4a7c2a6cee2564770415fe7'
+ '0a47a4e7a0f2ede5c8c7f22ec678fa72'
'9359518c500562281e76cdb0b2fa9062'
'43e2358ba0532da38e5296250a7fcfd8')
prepare() {
cd $pkgname-$pkgver
# move arp database in /var/lib/arpwatch
+ # /var is used because arpwatch write its learned mac into this folder
sed -i 's|ARPDIR = $(prefix)/arpwatch|ARPDIR = /var/lib/arpwatch|' Makefile.in
# binary ownership to root
sed -i 's/-\(o\|g\) bin/-\1 root/g' Makefile.in
+ # Update ethercodes with recent OUI. See gen_ethercodes.sh
+ cp -f "$srcdir/ethercodes.dat" ethercodes.dat
}
build() {
cd $pkgname-$pkgver
./configure --prefix=/usr --mandir=/usr/share/man --sbindir=/usr/bin
- make SENDMAIL=`which sendmail`
+ make SENDMAIL=/usr/bin/sendmail
}
package() {
cd $pkgname-$pkgver
- install -d -m 0755 "$pkgdir"/usr/{bin,share/man}
+ install -d -m 0755 "$pkgdir"/usr/{bin,share/man/man8}
make DESTDIR="$pkgdir" install install-man
# install ether prefix database
install -Dm644 ethercodes.dat "$pkgdir/var/lib/$pkgname/ethercodes.dat"
diff --git a/community/arpwatch/ethercodes.dat.xz b/community/arpwatch/ethercodes.dat.xz
new file mode 100644
index 000000000..1838c8194
--- /dev/null
+++ b/community/arpwatch/ethercodes.dat.xz
Binary files differ
diff --git a/community/arpwatch/gen_ethercode.sh b/community/arpwatch/gen_ethercode.sh
new file mode 100755
index 000000000..a5cdeeebe
--- /dev/null
+++ b/community/arpwatch/gen_ethercode.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+# Copyright © 2013 Sébastien Luttringer
+
+# This script is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This script is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with this script. If not, see <http://www.gnu.org/licenses/>.
+
+# Get and format official OUI
+wget -O- 'http://standards.ieee.org/regauth/oui/oui.txt' | \
+sed -nr 's/[ \t]+(..)-(..)-(..)[ \t]+\(hex\)[ \t]+(.*)/\L\1:\2:\3\E\t\4/p' > ethercodes.dat
+
+# Add private OUI
+cat >> ethercodes.dat <<EOF
+52:54:00 QEMU Virtual NIC
+b0:c4:20 Bochs Virtual NIC
+de:ad:ca PearPC Virtual NIC
+00:ff:d1 Cooperative Linux virtual NIC
+EOF
+
+# Sort and compress
+sort ethercodes.dat | xz -9 > ethercodes.dat.xz
+rm ethercodes.dat
diff --git a/community/audit/PKGBUILD b/community/audit/PKGBUILD
index 299e7908c..33e2a59ce 100644
--- a/community/audit/PKGBUILD
+++ b/community/audit/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 92644 2013-06-10 11:55:07Z mtorromeo $
+# $Id: PKGBUILD 94856 2013-07-31 10:33:01Z mtorromeo $
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
# Contributor: Connor Behan <connor.behan@gmail.com>
# Contributor: henning mueller <henning@orgizm.net>
pkgname=audit
pkgver=2.2.3
-pkgrel=3
+pkgrel=4
pkgdesc='User space utilities for storing and searching the audit records generated by the audit subsystem in the Linux kernel.'
url=http://people.redhat.com/sgrubb/$pkgname
arch=(i686 x86_64)
@@ -57,6 +57,8 @@ package() {
etc/audit/*.conf \
etc/audisp/plugins.d/*.conf \
usr/lib/systemd/system/auditd.service
+
+ chmod 644 usr/lib/systemd/system/auditd.service
}
sha256sums=('2fc8f97020121593f516dc011ef61f39043c4cea9b2cb9ab3849bf9e41dedf02'
diff --git a/community/libkkc-data/PKGBUILD b/community/libkkc-data/PKGBUILD
index 0a235cb22..cce108c2b 100644
--- a/community/libkkc-data/PKGBUILD
+++ b/community/libkkc-data/PKGBUILD
@@ -1,8 +1,9 @@
+# $Id: PKGBUILD 94837 2013-07-31 03:58:38Z fyan $
# Maintainer: Felix Yan <felixonmars@gmail.com>
# Contributor: ponsfoot <cabezon dot hashimoto at gmail dot com>
pkgname=libkkc-data
-pkgver=0.2.5
+pkgver=0.2.7
pkgrel=1
pkgdesc="Language model data package for libkkc"
arch=('i686' 'x86_64')
@@ -23,4 +24,4 @@ package() {
make DESTDIR="$pkgdir" install
}
-md5sums=('bb31dca814e72dfcddf88f2da3fc37c5')
+sha512sums=('61c0cd8c0fa41ed8df49cac6709eebb245cc965d7e192b1ba945e95f2fc46aca8aa48c16e1977a12c157c55dab6b9f4c30f4905806725eca6e697b762eb7cbd7')
diff --git a/community/libkkc/PKGBUILD b/community/libkkc/PKGBUILD
index c80ee65ec..91970093b 100644
--- a/community/libkkc/PKGBUILD
+++ b/community/libkkc/PKGBUILD
@@ -1,8 +1,9 @@
+# $Id: PKGBUILD 94838 2013-07-31 03:58:39Z fyan $
# Maintainer: Felix Yan <felixonmars@gmail.com>
# Contributor: ponsfoot <cabezon dot hashimoto at gmail dot com>
pkgname=libkkc
-pkgver=0.2.6
+pkgver=0.2.7
pkgrel=1
pkgdesc="Japanese Kana Kanji conversion library"
arch=('i686' 'x86_64')
@@ -11,6 +12,7 @@ license=('GPL')
options=(!libtool)
depends=('marisa' 'json-glib' 'libgee06')
makedepends=('vala' 'gobject-introspection' 'intltool' 'python2-marisa')
+optdepends=('sh: to use kkc-package-data')
source=(https://bitbucket.org/libkkc/libkkc/downloads/${pkgname}-${pkgver}.tar.gz)
build() {
@@ -29,4 +31,4 @@ package() {
"${pkgdir}/usr/share/doc/${pkgname}-${pkgver}/"
}
-md5sums=('b50f0341596a4e290188a7bf5195cd26')
+sha512sums=('2bb056cf00b6212a18462a5f952d4557944b29f49a92b0701abed5f5d6601fdb3b57c4e09a0b3db8ff39be01e91ab658656b89f576663046e53478ed07fe87af')
diff --git a/community/linuxsampler/PKGBUILD b/community/linuxsampler/PKGBUILD
deleted file mode 100644
index 44be22aac..000000000
--- a/community/linuxsampler/PKGBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# $Id: PKGBUILD 67532 2012-03-13 11:02:12Z lcarlier $
-# Maintainer: Ray Rashif <schiv@archlinux.org>
-# Contributor: svoufff <svoufff at gmail dot com>
-# Contributor: Shinlun Hsieh <yngwiexx@yahoo.com.tw>
-
-pkgname=linuxsampler
-pkgver=1.0.0
-pkgrel=2
-pkgdesc="Professional-grade audio sampler alternative to Gigasampler"
-arch=(i686 x86_64)
-url="http://www.linuxsampler.org/"
-license=('GPL' 'custom')
-depends=('libgig' 'jack' 'sqlite3')
-makedepends=('dssi' 'lv2core')
-options=('libtool') # do NOT slay libtool; required by gigedit
-source=(http://download.linuxsampler.org/packages/$pkgname-$pkgver.tar.bz2
- license.txt)
-md5sums=('a97136791a3228d840b006e5481fc39d'
- '746c1421eb9f6812b5fa411bfb923c75')
-
-build() {
- cd "$srcdir/$pkgname-$pkgver"
-
- ./configure --prefix=/usr
- make
-}
-
-package() {
- cd "$srcdir/$pkgname-$pkgver"
-
- make DESTDIR="$pkgdir/" install
-
- # install GPL exception statement
- install -Dm644 ../license.txt \
- "$pkgdir/usr/share/licenses/$pkgname/GPL-EXCEPTION"
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/community/linuxsampler/license.txt b/community/linuxsampler/license.txt
deleted file mode 100644
index 98031bc95..000000000
--- a/community/linuxsampler/license.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-LinuxSampler is licensed under the GNU GPL with the exception that
-USAGE of the source code, libraries and applications
-FOR COMMERCIAL HARDWARE OR SOFTWARE PRODUCTS IS NOT ALLOWED without
-prior written permission by the LinuxSampler authors.
-
-If you have questions on the subject, that are not yet covered by
-the FAQ, please contact us.
diff --git a/community/lxsession/PKGBUILD b/community/lxsession/PKGBUILD
index 178291ceb..75a03cecb 100644
--- a/community/lxsession/PKGBUILD
+++ b/community/lxsession/PKGBUILD
@@ -1,33 +1,30 @@
-# $Id: PKGBUILD 80231 2012-11-18 09:34:03Z bpiotrowski $
+# $Id: PKGBUILD 94864 2013-07-31 19:43:04Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Angel Velasquez <angvp@archlinux.org>
# Contributor: Juergen Hoetzel <juergen@archlinux.org>
pkgname=lxsession
-pkgver=0.4.6.1
-pkgrel=3
+pkgver=0.4.9.2
+pkgrel=1
pkgdesc='Lightweight X11 session manager'
arch=('i686' 'x86_64')
url="http://lxde.org/"
license=('GPL2')
groups=('lxde')
-depends=('gtk2' 'dbus')
-makedepends=('pkgconfig' 'intltool')
+depends=('gtk2' 'dbus' 'libgee06' 'dbus-glib' 'polkit')
+makedepends=('pkgconfig' 'intltool' 'vala')
replaces=('lxde-settings-daemon' 'lxsession-lite')
conflicts=('lxsession-lite' 'lxde-settings-daemon')
-source=(http://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.gz
- lxsession-0.4.6.1-logind-support.patch)
-md5sums=('e456b64c5ab3652a4dec661ec706dc6e'
- '7459321f5dc263493837768dcb03f852')
+source=(http://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.gz)
+md5sums=('bc3eb71936dbdf813e9ac2f00ab948f0')
build() {
- cd $srcdir/$pkgname-$pkgver
- patch -Np2 -i $srcdir/lxsession-0.4.6.1-logind-support.patch
+ cd $pkgname-$pkgver
./configure --sysconfdir=/etc --prefix=/usr
make
}
package() {
- cd $srcdir/$pkgname-$pkgver
- make DESTDIR=$pkgdir install
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
}
diff --git a/community/lxsession/lxsession-0.4.6.1-logind-support.patch b/community/lxsession/lxsession-0.4.6.1-logind-support.patch
deleted file mode 100644
index 44829e615..000000000
--- a/community/lxsession/lxsession-0.4.6.1-logind-support.patch
+++ /dev/null
@@ -1,608 +0,0 @@
---- src/lxsession-0.4.6.1/lxsession-logout/dbus-interface.c 2011-07-27 21:26:36.000000000 +0200
-+++ src/lxsession-0.4.6.1/lxsession-logout-logind/dbus-interface.c 2012-11-13 17:26:30.807070976 +0100
-@@ -51,13 +51,20 @@
- char * dbus_HAL_Reboot(void);
- char * dbus_HAL_Suspend(void);
- char * dbus_HAL_Hibernate(void);
-+gboolean dbus_logind_CanPowerOff(void);
-+gboolean dbus_logind_CanReboot(void);
-+gboolean dbus_logind_CanSuspend(void);
-+gboolean dbus_logind_CanHibernate(void);
-+char * dbus_logind_PowerOff(void);
-+char * dbus_logind_Reboot(void);
-+char * dbus_logind_Suspend(void);
-+char * dbus_logind_Hibernate(void);
-+char * dbus_LXDE_Logout(void);
- /* End FORWARDS */
-
- /* Connect to the system bus. Once a connection is made, it is saved for reuse. */
--static DBusConnection * dbus_connect(void)
-+static DBusConnection * dbus_connect_system(void)
- {
-- if ((dbus_context.connection == NULL) && ( ! dbus_context.connection_tried))
-- {
- DBusError error;
- dbus_error_init(&error);
- dbus_context.connection = dbus_bus_get(DBUS_BUS_SYSTEM, &error);
-@@ -67,16 +74,57 @@
- dbus_error_free(&error);
- }
- dbus_context.connection_tried = TRUE;
-- }
-
- return dbus_context.connection;
- }
-
-+static DBusConnection * dbus_connect_session(void)
-+{
-+ DBusError error;
-+ dbus_error_init(&error);
-+ dbus_context.connection = dbus_bus_get(DBUS_BUS_SESSION, &error);
-+ if (dbus_context.connection == NULL)
-+ {
-+ g_warning(G_STRLOC ": Failed to connect to the session message bus: %s", error.message);
-+ dbus_error_free(&error);
-+ }
-+ dbus_context.connection_tried = TRUE;
-+
-+ return dbus_context.connection;
-+}
-+
-+
- /* Send a message. */
--static DBusMessage * dbus_send_message(DBusMessage * message, char * * error_text)
-+static DBusMessage * dbus_send_message_system(DBusMessage * message, char * * error_text)
- {
- /* Get a connection handle. */
-- DBusConnection * connection = dbus_connect();
-+ DBusConnection * connection = dbus_connect_system();
-+ if (connection == NULL)
-+ return FALSE;
-+
-+ /* Send the message. */
-+ DBusError error;
-+ dbus_error_init(&error);
-+ DBusMessage * reply = dbus_connection_send_with_reply_and_block(connection, message, DBUS_TIMEOUT, &error);
-+ dbus_message_unref(message);
-+ if (reply == NULL)
-+ {
-+ if ((error.name == NULL) || (strcmp(error.name, DBUS_ERROR_NO_REPLY) != 0))
-+ {
-+ if (error_text != NULL)
-+ *error_text = g_strdup(error.message);
-+ g_warning(G_STRLOC ": DBUS: %s", error.message);
-+ }
-+ dbus_error_free(&error);
-+ }
-+ return reply;
-+}
-+
-+/* Send a message. */
-+static DBusMessage * dbus_send_message_session(DBusMessage * message, char * * error_text)
-+{
-+ /* Get a connection handle. */
-+ DBusConnection * connection = dbus_connect_session();
- if (connection == NULL)
- return FALSE;
-
-@@ -132,6 +180,36 @@
- }
- return result;
- }
-+
-+/* Read a result for a method that returns a string encoded boolean. */
-+static gboolean dbus_read_result_sboolean(DBusMessage * reply)
-+{
-+ gboolean result = FALSE;
-+ char* string_result;
-+ if (reply != NULL)
-+ {
-+ /* Get the string result. */
-+ DBusError error;
-+ dbus_error_init(&error);
-+ dbus_bool_t status = dbus_message_get_args(
-+ reply,
-+ &error,
-+ DBUS_TYPE_STRING, &string_result,
-+ DBUS_TYPE_INVALID);
-+ if ( ! status)
-+ {
-+ g_warning(G_STRLOC ": DBUS: %s", error.message);
-+ dbus_error_free(&error);
-+ }
-+ else
-+ {
-+ if (!strcmp(string_result, "yes"))
-+ result = TRUE;
-+ }
-+ dbus_message_unref(reply);
-+ }
-+ return result;
-+}
- #endif
-
- /*** ConsoleKit mechanism ***/
-@@ -152,7 +230,7 @@
- static gboolean dbus_ConsoleKit_query(const char * const query)
- {
- #ifdef HAVE_DBUS
-- return dbus_read_result_boolean(dbus_send_message(dbus_ConsoleKit_formulate_message(query), NULL));
-+ return dbus_read_result_boolean(dbus_send_message_system(dbus_ConsoleKit_formulate_message(query), NULL));
- #else
- return FALSE;
- #endif
-@@ -163,7 +241,7 @@
- {
- #ifdef HAVE_DBUS
- char * error = NULL;
-- dbus_read_result_void(dbus_send_message(dbus_ConsoleKit_formulate_message(command), &error));
-+ dbus_read_result_void(dbus_send_message_system(dbus_ConsoleKit_formulate_message(command), &error));
- return error;
- #else
- return NULL;
-@@ -225,7 +303,7 @@
- DBUS_TYPE_INVALID);
-
- /* Send the message. */
-- DBusMessage * reply = dbus_send_message(message, NULL);
-+ DBusMessage * reply = dbus_send_message_system(message, NULL);
- if (reply == NULL)
- return FALSE;
-
-@@ -252,7 +330,7 @@
- {
- #ifdef HAVE_DBUS
- char * error = NULL;
-- dbus_read_result_void(dbus_send_message(dbus_UPower_formulate_command(command), &error));
-+ dbus_read_result_void(dbus_send_message_system(dbus_UPower_formulate_command(command), &error));
- return error;
- #else
- return NULL;
-@@ -329,7 +407,7 @@
- DBusMessage * message = dbus_HAL_formulate_string_property_query(property);
- if (message == NULL)
- return FALSE;
-- DBusMessage * reply = dbus_send_message(message, NULL);
-+ DBusMessage * reply = dbus_send_message_system(message, NULL);
- if (reply == NULL)
- return FALSE;
- dbus_message_unref(reply);
-@@ -343,7 +421,7 @@
- static gboolean dbus_HAL_boolean_query(const char * const property)
- {
- #ifdef HAVE_DBUS
-- return dbus_read_result_boolean(dbus_send_message(dbus_HAL_formulate_boolean_property_query(property), NULL));
-+ return dbus_read_result_boolean(dbus_send_message_system(dbus_HAL_formulate_boolean_property_query(property), NULL));
- #else
- return FALSE;
- #endif
-@@ -367,7 +445,7 @@
-
- /* Send the message and wait for a reply. */
- char * error = NULL;
-- dbus_read_result_void(dbus_send_message(message, &error));
-+ dbus_read_result_void(dbus_send_message_system(message, &error));
- return error;
- #else
- return NULL;
-@@ -421,3 +499,185 @@
- {
- return dbus_HAL_command("Hibernate");
- }
-+
-+/*** logind mechanism ***/
-+
-+#ifdef HAVE_DBUS
-+/* Formulate a message to the logind Manager interface to query a property. */
-+static DBusMessage * dbus_logind_formulate_query(const char * const query)
-+{
-+ return dbus_message_new_method_call(
-+ "org.freedesktop.login1",
-+ "/org/freedesktop/login1",
-+ "org.freedesktop.login1.Manager",
-+ query);
-+}
-+
-+/* Formulate a message to the logind Manager interface. */
-+static DBusMessage * dbus_logind_formulate_message(const char * const method)
-+{
-+ static dbus_bool_t interactive = FALSE;
-+ DBusMessage * message = dbus_message_new_method_call(
-+ "org.freedesktop.login1",
-+ "/org/freedesktop/login1",
-+ "org.freedesktop.login1.Manager",
-+ method);
-+ if (message != NULL)
-+ dbus_message_append_args(message, DBUS_TYPE_BOOLEAN, &interactive, DBUS_TYPE_INVALID);
-+ return message;
-+}
-+#endif
-+
-+/* Send a specified query to the logind interface and process a boolean result. */
-+static gboolean dbus_logind_query(const char * const query)
-+{
-+#ifdef HAVE_DBUS
-+ return dbus_read_result_sboolean(dbus_send_message_system(dbus_logind_formulate_query(query), NULL));
-+#else
-+ return FALSE;
-+#endif
-+}
-+
-+/* Send a specified command to the logind interface and process a void result. */
-+static char * dbus_logind_command(const char * const command)
-+{
-+#ifdef HAVE_DBUS
-+ char * error = NULL;
-+ dbus_read_result_void(dbus_send_message_system(dbus_logind_formulate_message(command), &error));
-+ return error;
-+#else
-+ return NULL;
-+#endif
-+}
-+
-+/* Read the can-poweroff property of logind. */
-+gboolean dbus_logind_CanPowerOff(void)
-+{
-+ return dbus_logind_query("CanPowerOff");
-+}
-+
-+/* Read the can-reboot property of logind. */
-+gboolean dbus_logind_CanReboot(void)
-+{
-+ return dbus_logind_query("CanReboot");
-+}
-+
-+/* Read the can-suspend property of logind. */
-+gboolean dbus_logind_CanSuspend(void)
-+{
-+ return dbus_logind_query("CanSuspend");
-+}
-+
-+/* Read the can-hibernate property of logind. */
-+gboolean dbus_logind_CanHibernate(void)
-+{
-+ return dbus_logind_query("CanHibernate");
-+}
-+
-+/* Invoke the PowerOff method on logind. */
-+char * dbus_logind_PowerOff(void)
-+{
-+ return dbus_logind_command("PowerOff");
-+}
-+
-+/* Invoke the Reboot method on logind. */
-+char * dbus_logind_Reboot(void)
-+{
-+ return dbus_logind_command("Reboot");
-+}
-+
-+/* Invoke the Suspend method on logind. */
-+char * dbus_logind_Suspend(void)
-+{
-+ return dbus_logind_command("Suspend");
-+}
-+
-+/* Invoke the Hibernate method on logind. */
-+char * dbus_logind_Hibernate(void)
-+{
-+ return dbus_logind_command("Hibernate");
-+}
-+
-+/*** LXDE mechanism ***/
-+
-+#ifdef HAVE_DBUS
-+/* Formulate a message to the LXDE Session Manager interface. */
-+static DBusMessage * dbus_LXDE_formulate_message(const char * const query)
-+{
-+ return dbus_message_new_method_call(
-+ "org.lxde.SessionManager",
-+ "/org/lxde/SessionManager",
-+ "org.lxde.SessionManager",
-+ query);
-+}
-+#endif
-+
-+/* Send a specified message to the LXDE interface and process a boolean result. */
-+static gboolean dbus_LXDE_query(const char * const query)
-+{
-+#ifdef HAVE_DBUS
-+ return dbus_read_result_boolean(dbus_send_message_session(dbus_LXDE_formulate_message(query), NULL));
-+#else
-+ return FALSE;
-+#endif
-+}
-+
-+/* Send a specified message to the LXDE interface and process a void result. */
-+static char * dbus_LXDE_command(const char * const command)
-+{
-+#ifdef HAVE_DBUS
-+ char * error = NULL;
-+ dbus_read_result_void(dbus_send_message_session(dbus_LXDE_formulate_message(command), &error));
-+ return error;
-+#else
-+ return NULL;
-+#endif
-+}
-+
-+/* Invoke the Logout method on LXDE. */
-+char * dbus_LXDE_Logout(void)
-+{
-+ return dbus_LXDE_command("Logout");
-+}
-+
-+/*** Lightdm mechanism ***/
-+
-+#ifdef HAVE_DBUS
-+/* Formulate a message to the Lightdm interface. */
-+static DBusMessage * dbus_Lightdm_formulate_message(const char * const query)
-+{
-+ return dbus_message_new_method_call(
-+ "org.freedesktop.DisplayManager",
-+ g_getenv ("XDG_SEAT_PATH"),
-+ "org.freedesktop.DisplayManager.Seat",
-+ query);
-+}
-+#endif
-+
-+/* Send a specified message to the Lightdm interface and process a boolean result. */
-+static gboolean dbus_Lightdm_query(const char * const query)
-+{
-+#ifdef HAVE_DBUS
-+ return dbus_read_result_boolean(dbus_send_message_session(dbus_Lightdm_formulate_message(query), NULL));
-+#else
-+ return FALSE;
-+#endif
-+}
-+
-+/* Send a specified message to the Lightdm interface and process a void result. */
-+static char * dbus_Lightdm_command(const char * const command)
-+{
-+#ifdef HAVE_DBUS
-+ char * error = NULL;
-+ dbus_read_result_void(dbus_send_message_session(dbus_Lightdm_formulate_message(command), &error));
-+ return error;
-+#else
-+ return NULL;
-+#endif
-+}
-+
-+/* Invoke the Logout method on LXDE. */
-+char * dbus_Lightdm_SwitchToGreeter(void)
-+{
-+ return dbus_Lightdm_command("SwitchToGreeter");
-+}
---- src/lxsession-0.4.6.1/lxsession-logout/dbus-interface.h 2011-07-27 21:26:36.000000000 +0200
-+++ src/lxsession-0.4.6.1/lxsession-logout-logind/dbus-interface.h 2012-11-13 17:26:30.807070976 +0100
-@@ -44,4 +44,18 @@
- extern char * dbus_HAL_Suspend(void);
- extern char * dbus_HAL_Hibernate(void);
-
-+/* Interface to logind for shutdown, reboot, suspend, and hibernate. */
-+extern gboolean dbus_logind_CanPowerOff(void);
-+extern gboolean dbus_logind_CanRestart(void);
-+extern char * dbus_logind_PowerOff(void);
-+extern char * dbus_logind_Restart(void);
-+extern gboolean dbus_logind_CanSuspend(void);
-+extern gboolean dbus_logind_CanHibernate(void);
-+extern char * dbus_logind_Suspend(void);
-+extern char * dbus_logind_Hibernate(void);
-+
-+extern char * dbus_LXDE_Logout(void);
-+
-+extern char * dbus_Lightdm_SwitchToGreeter();
-+
- #endif
---- src/lxsession-0.4.6.1/lxsession-logout/lxsession-logout.c 2011-07-27 21:26:36.000000000 +0200
-+++ src/lxsession-0.4.6.1/lxsession-logout-logind/lxsession-logout.c 2012-11-13 17:26:30.807070976 +0100
-@@ -69,12 +69,21 @@
- int reboot_HAL : 1; /* Reboot is available via HAL */
- int suspend_HAL : 1; /* Suspend is available via HAL */
- int hibernate_HAL : 1; /* Hibernate is available via HAL */
-+ int shutdown_logind : 1; /* Shutdown is available via logind */
-+ int reboot_logind : 1; /* Reboot is available via logind */
-+ int suspend_logind : 1; /* Suspend is available via logind */
-+ int hibernate_logind : 1; /* Hibernate is available via logind */
- int switch_user_GDM : 1; /* Switch User is available via GDM */
-- int switch_user_KDM : 1; /* Switch User is available via KDM */
-+ int switch_user_LIGHTDM : 1; /* Switch User is available via GDM */
-+ int switch_user_KDM : 1; /* Switch User is available via LIGHTDM */
- int ltsp : 1; /* Shutdown and reboot is accomplished via LTSP */
-+
-+ int lock_screen : 1; /* Lock screen available */
-+
- } HandlerContext;
-
- static gboolean lock_screen(void);
-+static const gchar* determine_lock_screen(void);
- static gboolean verify_running(const char * display_manager, const char * executable);
- static void logout_clicked(GtkButton * button, HandlerContext * handler_context);
- static void change_root_property(GtkWidget* w, const char* prop_name, const char* value);
-@@ -93,13 +102,32 @@
- */
- static gboolean lock_screen(void)
- {
-- if (!g_spawn_command_line_async("lxlock", NULL))
-+ const gchar* program = determine_lock_screen();
-+
-+ if (program)
- {
-+ g_spawn_command_line_async(program, NULL);
- return TRUE;
- }
- return FALSE;
- }
-
-+static const gchar* determine_lock_screen(void)
-+{
-+ const gchar* program = NULL;
-+
-+ if (g_find_program_in_path("xdg-screensaver"))
-+ {
-+ program = "xdg-screensaver lock";
-+ }
-+ else if (g_find_program_in_path("lxlock"))
-+ {
-+ program = "lxlock";
-+ }
-+ return program;
-+}
-+
-+
- /* Verify that a program is running and that an executable is available. */
- static gboolean verify_running(const char * display_manager, const char * executable)
- {
-@@ -187,6 +215,8 @@
- error_result = dbus_ConsoleKit_Stop();
- else if (handler_context->shutdown_HAL)
- error_result = dbus_HAL_Shutdown();
-+ else if (handler_context->shutdown_logind)
-+ error_result = dbus_logind_PowerOff();
-
- if (error_result != NULL)
- gtk_label_set_text(GTK_LABEL(handler_context->error_label), error_result);
-@@ -208,6 +238,8 @@
- error_result = dbus_ConsoleKit_Restart();
- else if (handler_context->reboot_HAL)
- error_result = dbus_HAL_Reboot();
-+ else if (handler_context->reboot_logind)
-+ error_result = dbus_logind_Reboot();
-
- if (error_result != NULL)
- gtk_label_set_text(GTK_LABEL(handler_context->error_label), error_result);
-@@ -225,6 +257,8 @@
- error_result = dbus_UPower_Suspend();
- else if (handler_context->suspend_HAL)
- error_result = dbus_HAL_Suspend();
-+ else if (handler_context->suspend_logind)
-+ error_result = dbus_logind_Suspend();
-
- if (error_result != NULL)
- gtk_label_set_text(GTK_LABEL(handler_context->error_label), error_result);
-@@ -242,6 +276,8 @@
- error_result = dbus_UPower_Hibernate();
- else if (handler_context->hibernate_HAL)
- error_result = dbus_HAL_Hibernate();
-+ else if (handler_context->hibernate_logind)
-+ error_result = dbus_logind_Hibernate();
-
- if (error_result != NULL)
- gtk_label_set_text(GTK_LABEL(handler_context->error_label), error_result);
-@@ -258,6 +294,17 @@
- g_spawn_command_line_sync("gdmflexiserver --startnew", NULL, NULL, NULL, NULL);
- else if (handler_context->switch_user_KDM)
- g_spawn_command_line_sync("kdmctl reserve", NULL, NULL, NULL, NULL);
-+ else if (handler_context->switch_user_LIGHTDM)
-+ dbus_Lightdm_SwitchToGreeter();
-+ gtk_main_quit();
-+}
-+
-+/* Handler for "clicked" signal on Lock button. */
-+static void lock_screen_clicked(GtkButton * button, HandlerContext * handler_context)
-+{
-+ gtk_label_set_text(GTK_LABEL(handler_context->error_label), NULL);
-+
-+ lock_screen();
- gtk_main_quit();
- }
-
-@@ -435,6 +482,28 @@
- handler_context.hibernate_HAL = TRUE;
- }
-
-+ /* Initialize capabilities of the logind mechanism. */
-+ if (!handler_context.shutdown_available && dbus_logind_CanPowerOff())
-+ {
-+ handler_context.shutdown_available = TRUE;
-+ handler_context.shutdown_logind = TRUE;
-+ }
-+ if (!handler_context.reboot_available && dbus_logind_CanReboot())
-+ {
-+ handler_context.reboot_available = TRUE;
-+ handler_context.reboot_logind = TRUE;
-+ }
-+ if (!handler_context.suspend_available && dbus_logind_CanSuspend())
-+ {
-+ handler_context.suspend_available = TRUE;
-+ handler_context.suspend_logind = TRUE;
-+ }
-+ if (!handler_context.hibernate_available && dbus_logind_CanHibernate())
-+ {
-+ handler_context.hibernate_available = TRUE;
-+ handler_context.hibernate_logind = TRUE;
-+ }
-+
- /* If we are under GDM, its "Switch User" is available. */
- if (verify_running("gdm", "gdmflexiserver"))
- {
-@@ -442,6 +511,34 @@
- handler_context.switch_user_GDM = TRUE;
- }
-
-+ /* If we are under GDM3, its "Switch User" is available. */
-+ if (verify_running("gdm3", "gdmflexiserver"))
-+ {
-+ handler_context.switch_user_available = TRUE;
-+ handler_context.switch_user_GDM = TRUE;
-+ }
-+
-+ /* lightdm also use gdmflexiserver */
-+ if (verify_running("lightdm", "gdmflexiserver"))
-+ {
-+ handler_context.switch_user_available = TRUE;
-+ handler_context.switch_user_GDM = TRUE;
-+ }
-+
-+ /* lightdm also use gdmflexiserver */
-+ if (verify_running("lightdm", "gdmflexiserver"))
-+ {
-+ handler_context.switch_user_available = TRUE;
-+ handler_context.switch_user_GDM = TRUE;
-+ }
-+
-+ /* lightdm can also be find by the env */
-+ if (g_getenv("XDG_SEAT_PATH"))
-+ {
-+ handler_context.switch_user_available = TRUE;
-+ handler_context.switch_user_LIGHTDM = TRUE;
-+ }
-+
- /* If we are under KDM, its "Switch User" is available. */
- if (verify_running("kdm", "kdmctl"))
- {
-@@ -451,7 +548,18 @@
-
- /* LTSP support */
- if (g_getenv("LTSP_CLIENT"))
-+ {
- handler_context.ltsp = TRUE;
-+ handler_context.shutdown_available = TRUE;
-+ handler_context.reboot_available = TRUE;
-+ }
-+
-+ /* Lock screen */
-+ const gchar* very_lock_screen = determine_lock_screen();
-+ if (very_lock_screen)
-+ {
-+ handler_context.lock_screen = TRUE;
-+ }
-
- /* Make the button images accessible. */
- gtk_icon_theme_append_search_path(gtk_icon_theme_get_default(), PACKAGE_DATA_DIR "/lxsession/images");
-@@ -596,6 +704,17 @@
- gtk_box_pack_start(GTK_BOX(controls), switch_user_button, FALSE, FALSE, 4);
- }
-
-+ /* Create the Lock Screen button. */
-+ if (handler_context.lock_screen && !handler_context.ltsp)
-+ {
-+ GtkWidget * lock_screen_button = gtk_button_new_with_mnemonic(_("L_ock Screen"));
-+ GtkWidget * image = gtk_image_new_from_icon_name("system-lock-screen", GTK_ICON_SIZE_BUTTON);
-+ gtk_button_set_image(GTK_BUTTON(lock_screen_button), image);
-+ gtk_button_set_alignment(GTK_BUTTON(lock_screen_button), 0.0, 0.5);
-+ g_signal_connect(G_OBJECT(lock_screen_button), "clicked", G_CALLBACK(lock_screen_clicked), &handler_context);
-+ gtk_box_pack_start(GTK_BOX(controls), lock_screen_button, FALSE, FALSE, 4);
-+ }
-+
- /* Create the Logout button. */
- GtkWidget * logout_button = gtk_button_new_with_mnemonic(_("_Logout"));
- GtkWidget * image = gtk_image_new_from_icon_name("system-log-out", GTK_ICON_SIZE_BUTTON);
diff --git a/community/pidgin-lwqq/PKGBUILD b/community/pidgin-lwqq/PKGBUILD
index 1bd0ccd5a..91eb292f0 100644
--- a/community/pidgin-lwqq/PKGBUILD
+++ b/community/pidgin-lwqq/PKGBUILD
@@ -1,20 +1,21 @@
-# $Id: PKGBUILD 94425 2013-07-24 14:45:02Z fyan $
+# $Id: PKGBUILD 94850 2013-07-31 09:33:45Z fyan $
# Maintainer: Felix Yan <felixonmars@gmail.com>
pkgname=pidgin-lwqq
-pkgver=0.1f.20130724
-_commit=ba985662bffa0fe5ec36f276f13fc3d870b11ecf
+pkgver=0.2a
+#_commit=ba985662bffa0fe5ec36f276f13fc3d870b11ecf
pkgrel=1
pkgdesc="A pidgin plugin based on lwqq, a excellent safe useful library for webqq protocol"
arch=('i686' 'x86_64')
url="https://github.com/xiehuc/pidgin-lwqq"
license=('GPL3')
-depends=('libpurple' 'curl' 'libev' 'hicolor-icon-theme' 'gtk-update-icon-cache')
+depends=('libpurple' 'curl' 'hicolor-icon-theme' 'gtk-update-icon-cache' 'libev')
optdepends=('pidgin: Multi-protocol instant messaging client'
'telepathy-haze: Empathy plugin support')
makedepends=('git' 'cmake')
install=$pkgname.install
-source=("git://github.com/xiehuc/pidgin-lwqq.git#commit=$_commit"
+#source=("git://github.com/xiehuc/pidgin-lwqq.git#commit=$_commit"
+source=("git://github.com/xiehuc/pidgin-lwqq.git#tag=$pkgver"
"git://github.com/xiehuc/lwqq.git")
prepare() {
diff --git a/community/quagga/PKGBUILD b/community/quagga/PKGBUILD
index d52fc06ea..ed36c0ca8 100644
--- a/community/quagga/PKGBUILD
+++ b/community/quagga/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 90540 2013-05-13 00:51:44Z seblu $
+# $Id: PKGBUILD 94860 2013-07-31 13:09:35Z seblu $
# Maintainer: Sébastien Luttringer
pkgname=quagga
-pkgver=0.99.22.1
-pkgrel=2
+pkgver=0.99.22.3
+pkgrel=1
pkgdesc='BGP/OSPF/ISIS/RIP/RIPNG routing daemon suite'
arch=('i686' 'x86_64')
url='http://www.quagga.net'
@@ -20,7 +20,7 @@ source=("http://download.savannah.gnu.org/releases/$pkgname/$pkgname-$pkgver.tar
'ripd.service'
'ripngd.service'
'zebra.service')
-md5sums=('d9ab848661720d6da2551c7a4a19c731'
+md5sums=('1467b6828842af59b31252515729bb09'
'20a8e36ad851d4e06467aeb56a84b245'
'cc90c234aac9098c5132d653037d5269'
'67d0ada0f3000b9a86351798786c5256'
diff --git a/community/skktools/PKGBUILD b/community/skktools/PKGBUILD
new file mode 100644
index 000000000..4ea438a52
--- /dev/null
+++ b/community/skktools/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 94840 2013-07-31 05:14:59Z fyan $
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Contributor: noonov <noonov@gmail.com>
+
+pkgname=skktools
+pkgver=1.3.3
+pkgrel=2
+pkgdesc="Dictionary maintenance tools for the SKK Japanese input method"
+arch=('i686' 'x86_64')
+url="http://openlab.ring.gr.jp/skk/"
+license=('GPL2')
+depends=('gdbm' 'glib2')
+optdepends=('ruby' 'python2' 'perl')
+source=(http://openlab.ring.gr.jp/skk/tools/${pkgname}-${pkgver}.tar.gz)
+md5sums=('9011bf096ea3a408169729b54ca605f5')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure --prefix=/usr --with-gdbm
+ make
+
+ sed -i '1s|python|&2|' skk2cdb.py
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ install -d "${pkgdir}/usr/share/skktools"
+ cp -a -t "${pkgdir}/usr/share/skktools" \
+ convert2skk dbm filters \
+ saihenkan.rb skk2cdb.py skkdic-diff.scm unannotation.awk
+
+ install -D -m644 skk-xml.el "${pkgdir}/usr/share/emacs/site-lisp/skk-xml.el"
+}
diff --git a/community/unrealircd/PKGBUILD b/community/unrealircd/PKGBUILD
index 5a40fc5fd..813d6c0bd 100644
--- a/community/unrealircd/PKGBUILD
+++ b/community/unrealircd/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 92284 2013-06-03 13:56:49Z spupykin $
+# $Id: PKGBUILD 94846 2013-07-31 07:46:49Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Zerial <fernando@zerial.org>
pkgname=unrealircd
-pkgver=3.2.10
-pkgrel=5
+pkgver=3.2.10.1
+pkgrel=1
pkgdesc="Open Source IRC Server"
arch=('i686' 'x86_64')
url="http://unrealircd.com"
@@ -17,7 +17,7 @@ backup=('etc/unrealircd/unrealircd.conf'
source=(http://www.unrealircd.com/downloads/Unreal$pkgver.tar.gz
unrealircd.service
arch-fixes.patch)
-md5sums=('05b0bbdbfab9ffc2304f7595951d7cec'
+md5sums=('97b4bd68a804e517355efa756f401a90'
'93276a1cd426e4a811c072c35fc31e94'
'77807313c4578f2c30286b9f9e3fb21c')
diff --git a/community/uwsgi/PKGBUILD b/community/uwsgi/PKGBUILD
new file mode 100644
index 000000000..093f938c0
--- /dev/null
+++ b/community/uwsgi/PKGBUILD
@@ -0,0 +1,235 @@
+# $Id: PKGBUILD 94832 2013-07-30 22:31:20Z dwallace $
+# Maintainer: Daniel Wallace <danielwallace at gtmanfred dot com>
+# Contributor: Valentin Hăloiu <vially.ichb+aur@gmail.com>
+# Contributor: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Kevin Zuber <uKev@knet.eu>
+# Contributor: Vsevolod Balashov <vsevolod@balashov.name>
+
+pkgbase=uwsgi
+pkgname=(uwsgi
+ uwsgi-plugin-common
+ uwsgi-plugin-rack
+ uwsgi-plugin-python2
+ uwsgi-plugin-python
+ uwsgi-plugin-nagios
+ uwsgi-plugin-router
+ uwsgi-plugin-admin
+ uwsgi-plugin-ruby
+ uswgi-plugin-greenlet
+ uswgi-plugin-php
+ uwsgi-plugin-carbon
+ uwsgi-plugin-rrdtool
+ uwsgi-plugin-erlang
+ uwsgi-plugin-pam
+ uwsgi-plugin-jvm
+ uwsgi-plugin-zergpool
+ )
+pkgver=1.9.14
+pkgrel=1
+arch=(i686 x86_64)
+url="http://projects.unbit.it/$pkgbase"
+license=(GPL2)
+conflicts=(python-$pkgbase)
+makedepends=(gcc python python2 ruby python2-greenlet php curl libxml2 libyaml
+ perl lua51 pcre libedit openssl bzip2 gmp erlang pam java-environment=7
+ jansson)
+source=(http://projects.unbit.it/downloads/$pkgbase-$pkgver.tar.gz
+ archlinux.ini
+ tmpfilesd
+ uwsgi@.service
+ uwsgi@.socket
+ uwsgi_fix_rpath.patch
+ uwsgi_ruby20_compatibility.patch
+ uwsgi_trick_chroot.patch)
+
+prepare(){
+ cd $srcdir/$pkgbase-$pkgver
+ cp $srcdir/archlinux.ini buildconf/archlinux.ini
+ sed -i 's/LIBS .*-lphp5.*/LIBS = []/' plugins/php/uwsgiplugin.py
+ for patch in uwsgi_fix_rpath.patch uwsgi_ruby20_compatibility.patch uwsgi_trick_chroot.patch; do
+ patch -Np1 -i $srcdir/$patch
+ done
+ rm -rf plugins/ruby
+ mv plugins/ruby{19,}
+ cp -a plugins/python{,2}
+ sed -i 's:\(ruby\)19:\1:' plugins/ruby/uwsgiplugin.py
+
+}
+build() {
+ pushd $srcdir/$pkgbase-$pkgver
+ python uwsgiconfig.py --build archlinux.ini
+}
+
+package_uwsgi() {
+ backup=(etc/uwsgi/archlinux.ini)
+ pkgdesc="A fast, self-healing and developer/sysadmin-friendly application container server coded in pure C"
+ depends=(python2 libxml2 jansson libyaml systemd)
+ install=uwsgi.install
+ cd $srcdir/$pkgbase-$pkgver
+ install -Dm755 uwsgi $pkgdir/usr/bin/uwsgi
+ install -Dm644 $srcdir/archlinux.ini $pkgdir/etc/uwsgi/archlinux.ini
+ install -Dm644 $srcdir/uwsgi@.service $pkgdir/usr/lib/systemd/system/uwsgi@.service
+ install -Dm644 $srcdir/uwsgi@.socket $pkgdir/usr/lib/systemd/system/uwsgi@.socket
+ install -Dm755 systemd_logger_plugin.so $pkgdir/usr/lib/uwsgi/systemd_logger_plugin.so
+ install -Dm644 $srcdir/archlinux.ini $pkgdir/etc/uwsgi/archlinux.ini
+ install -Dm644 $srcdir/tmpfilesd $pkgdir/usr/lib/tmpfiles.d/uwsgi.conf
+}
+
+package_uwsgi-plugin-common(){
+ depends=(uwsgi)
+ pkgdesc="Common plugins for uWSGI"
+ install -dm755 $pkgdir/usr/bin
+ for plugin in cache cgi rpc ugreen; do
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_${plugin}
+ install -Dm755 $pkgbase-$pkgver/${plugin}_plugin.so $pkgdir/usr/lib/uwsgi/${plugin}_plugin.so
+ done
+}
+
+package_uwsgi-plugin-rack(){
+ depends=(ruby uwsgi-plugin-common)
+ pkgdesc="Ruby rack plugin"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_rack
+ install -Dm755 $pkgbase-$pkgver/rack_plugin.so $pkgdir/usr/lib/uwsgi/rack_plugin.so
+}
+
+package_uwsgi-plugin-python2(){
+ depends=(uwsgi-plugin-common)
+ pkgdesc="Plugin for Python2 support"
+ cd $srcdir/$pkgbase-$pkgver
+ python2 uwsgiconfig.py --plugin plugins/python archlinux python
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_python2
+ install -Dm755 $srcdir/$pkgbase-$pkgver/python_plugin.so $pkgdir/usr/lib/uwsgi/python2_plugin.so
+}
+
+package_uwsgi-plugin-python(){
+ depends=(python uwsgi-plugin-common)
+ pkgdesc="Plugin for Python support"
+ install -dm755 $pkgdir/usr/bin
+ cd $srcdir/$pkgbase-$pkgver
+ python3 uwsgiconfig.py --plugin plugins/python archlinux python
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_python
+ install -Dm755 $srcdir/$pkgbase-$pkgver/python_plugin.so $pkgdir/usr/lib/uwsgi/python_plugin.so
+}
+
+package_uwsgi-plugin-nagios(){
+ depends=( uwsgi-plugin-common)
+ pkgdesc="Plugin for Nagios support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_nagios
+ install -Dm755 $pkgbase-$pkgver/nagios_plugin.so $pkgdir/usr/lib/uwsgi/nagios_plugin.so
+}
+
+package_uwsgi-plugin-router(){
+ depends=( uwsgi-plugin-common)
+ pkgdesc="Plugin for Router support"
+ install -dm755 $pkgdir/usr/lib/uwsgi
+ install -dm755 $pkgdir/usr/bin
+ cd $pkgbase-$pkgver
+ for file in *router*_plugin.so; do
+ install -Dm755 $file $pkgdir/usr/lib/uwsgi/$file
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_${file%_plugin.so}
+ done
+}
+
+package_uwsgi-plugin-admin(){
+ depends=( uwsgi-plugin-common)
+ pkgdesc="Plugin for Admin support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_admin
+ install -Dm755 $pkgbase-$pkgver/admin_plugin.so $pkgdir/usr/lib/uwsgi/admin_plugin.so
+}
+
+package_uwsgi-plugin-ruby(){
+ depends=(ruby uwsgi-plugin-common)
+ pkgdesc="Plugin for Ruby support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_ruby
+ install -Dm755 $pkgbase-$pkgver/ruby_plugin.so $pkgdir/usr/lib/uwsgi/ruby_plugin.so
+}
+
+
+package_uswgi-plugin-lua51(){
+ depends=(lua uwsgi-plugin-common)
+ pkgdesc="Plugin for Lua support"
+ install -dm755 $pkgdir/usr/bin
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_lua51
+ install -Dm755 $pkgbase-$pkgver/lua_plugin.so $pkgdir/usr/lib/uwsgi/lua51_plugin.so
+}
+
+package_uswgi-plugin-greenlet(){
+ depends=(python2-greenlet uwsgi-plugin-common)
+ pkgdesc="Plugin for Python Greenlet support"
+ cd $srcdir/$pkgbase-$pkgver
+ python2 uwsgiconfig.py --plugin plugins/greenlet archlinux.ini greenlet
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_greenlet
+ install -Dm755 greenlet_plugin.so $pkgdir/usr/lib/uwsgi/greenlet_plugin.so
+}
+
+package_uswgi-plugin-php(){
+ depends=(uwsgi-plugin-common)
+ pkgdesc="Plugin for PHP support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_php
+ install -Dm755 $pkgbase-$pkgver/php_plugin.so $pkgdir/usr/lib/uwsgi/php_plugin.so
+}
+
+package_uwsgi-plugin-carbon(){
+ depends=(uwsgi-plugin-common)
+ pkgdesc="Plugin for Carbon support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_carbon
+ install -Dm755 $pkgbase-$pkgver/carbon_plugin.so $pkgdir/usr/lib/uwsgi/carbon_plugin.so
+}
+
+package_uwsgi-plugin-rrdtool(){
+ depends=(uwsgi-plugin-common rrdtool)
+ pkgdesc="Plugin for Rrdtool support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_rrdtool
+ install -Dm755 $pkgbase-$pkgver/rrdtool_plugin.so $pkgdir/usr/lib/uwsgi/rrdtool_plugin.so
+}
+
+package_uwsgi-plugin-erlang(){
+ depends=(uwsgi-plugin-common erlang)
+ pkgdesc="Plugin for Erlang support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_erlang
+ install -Dm755 $pkgbase-$pkgver/erlang_plugin.so $pkgdir/usr/lib/uwsgi/erlang_plugin.so
+}
+
+
+package_uwsgi-plugin-pam(){
+ depends=(uwsgi-plugin-common)
+ pkgdesc="Plugin for Pam support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_pam
+ install -Dm755 $pkgbase-$pkgver/pam_plugin.so $pkgdir/usr/lib/uwsgi/pam_plugin.so
+}
+
+package_uwsgi-plugin-jvm(){
+ depends=(uwsgi-plugin-common java-runtime=7)
+ pkgdesc="Plugin for Jvm support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_jvm
+ install -Dm755 $pkgbase-$pkgver/jvm_plugin.so $pkgdir/usr/lib/uwsgi/jvm_plugin.so
+}
+
+package_uwsgi-plugin-zergpool(){
+ depends=(uwsgi-plugin-common)
+ pkgdesc="Plugin for zergpool support"
+ install -dm755 $pkgdir/usr/bin
+ ln -s uwsgi $pkgdir/usr/bin/uwsgi_zergpool
+ install -Dm755 $pkgbase-$pkgver/zergpool_plugin.so $pkgdir/usr/lib/uwsgi/zergpool_plugin.so
+}
+md5sums=('ec9cf333534604f17ef4e24051d9d65d'
+ '1816524eb13705c20f6abc00557f4ea9'
+ 'b05ba1d796e1ea608a40635bc4f3ec67'
+ '0b79320fbae92715c96086cf51e60bc8'
+ 'db70315bbc8cb886a278ba59d5fd8d57'
+ '1a4516d5cdcf5b95b036f4eae2d0c152'
+ '4d09535ce379c8acd76160f35d5d6b55'
+ '0c09a52fdb88f08c36a8b380f451ce6d')
diff --git a/community/uwsgi/archlinux.ini b/community/uwsgi/archlinux.ini
new file mode 100644
index 000000000..791d4208f
--- /dev/null
+++ b/community/uwsgi/archlinux.ini
@@ -0,0 +1,17 @@
+[uwsgi]
+inherit = core
+bin_name = uwsgi
+xml = true
+yaml = true
+json = true
+pcre = true
+routing = true
+debug = true
+sqlite3 = true
+ssl = true
+xml_implementation = libxml2
+yaml_implementation = auto
+malloc_implementation = libc
+embedded_plugins = echo, ping, corerouter, http
+plugin_dir = /usr/lib/uwsgi
+plugins = rack, python2, python, nagios, fastrouter, admin, lua, ruby, cache, cgi, rpc, ugreen, php, carbon, rrdtool, erlang, pam, jvm, router_uwsgi, router_redirect, router_basicauth, zergpool, router_rewrite, router_http, router_cache, rawrouter, router_static, sslrouter, systemd_logger
diff --git a/community/uwsgi/tmpfilesd b/community/uwsgi/tmpfilesd
new file mode 100644
index 000000000..8609b38f0
--- /dev/null
+++ b/community/uwsgi/tmpfilesd
@@ -0,0 +1 @@
+d /run/uwsgi 0755 - - - -
diff --git a/community/uwsgi/uwsgi.install b/community/uwsgi/uwsgi.install
new file mode 100644
index 000000000..605d7fe2d
--- /dev/null
+++ b/community/uwsgi/uwsgi.install
@@ -0,0 +1,11 @@
+post_install(){
+ systemd-tmpfiles --create /usr/lib/tmpfiles.d/uwsgi.conf
+}
+post_update(){
+ echo "To use uwsgi@.socket and uwsgi@.service:"
+ echo "\tAll you need to do is put the name of your .ini file after the @ sign"
+ echo "\tYou can use either the .socket or .service, but if you use the .socket"
+ echo "\tuwsgi@<sameinifile>.service won't be started until the first time your http"
+ echo "\tserver touches the socket. You will also not need to specify the socket in"
+ echo "\tthe .ini file or in the .service file. Systemd will handle listening to"
+ echo "\tthe socket for you."
diff --git a/community/uwsgi/uwsgi@.service b/community/uwsgi/uwsgi@.service
new file mode 100644
index 000000000..c9e9789a0
--- /dev/null
+++ b/community/uwsgi/uwsgi@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=uWSGI Emperor
+After=syslog.target
+
+[Service]
+ExecStart=/usr/bin/uwsgi --ini /etc/uwsgi/%I.ini
+Restart=always
+Type=notify
+StandardError=syslog
+NotifyAccess=main
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/uwsgi/uwsgi@.socket b/community/uwsgi/uwsgi@.socket
new file mode 100644
index 000000000..012b33a7a
--- /dev/null
+++ b/community/uwsgi/uwsgi@.socket
@@ -0,0 +1,9 @@
+[Unit]
+Description=Socket for uWSGI Cgit
+
+[Socket]
+# Change this to your uwsgi application port or unix socket location
+ListenStream=/run/uwsgi/%I.sock
+
+[Install]
+WantedBy=sockets.target
diff --git a/community/uwsgi/uwsgi_fix_rpath.patch b/community/uwsgi/uwsgi_fix_rpath.patch
new file mode 100644
index 000000000..3de66a771
--- /dev/null
+++ b/community/uwsgi/uwsgi_fix_rpath.patch
@@ -0,0 +1,66 @@
+diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py
+index ac7eb3e..0911288 100644
+--- a/plugins/jvm/uwsgiplugin.py
++++ b/plugins/jvm/uwsgiplugin.py
+@@ -59,11 +59,6 @@ if "-framework JavaVM" in JVM_LIBPATH:
+
+ GCC_LIST = ['jvm_plugin']
+
+-if 'LD_RUN_PATH' in os.environ:
+- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH[0][2:]
+-else:
+- os.environ['LD_RUN_PATH'] = JVM_LIBPATH[0][2:]
+-
+ def post_build(config):
+ if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0:
+ os._exit(1)
+diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py
+index fb9e5bb..fd12c91 100644
+--- a/plugins/php/uwsgiplugin.py
++++ b/plugins/php/uwsgiplugin.py
+@@ -22,7 +22,6 @@ CFLAGS = [os.popen(PHPPATH + ' --includes').read().rstrip(), '-Wno-error=sign-co
+ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split()
+ if ld_run_path:
+ LDFLAGS.append('-L%s' % ld_run_path)
+- os.environ['LD_RUN_PATH'] = ld_run_path
+
+ LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5']
+
+diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py
+index c4f03e1..8d4b2e0 100644
+--- a/plugins/python/uwsgiplugin.py
++++ b/plugins/python/uwsgiplugin.py
+@@ -45,10 +45,8 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ:
+ else:
+ try:
+ LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR'))
+- os.environ['LD_RUN_PATH'] = "%s" % (sysconfig.get_config_var('LIBDIR'))
+ except:
+ LDFLAGS.append("-L%s/lib" % sysconfig.PREFIX)
+- os.environ['LD_RUN_PATH'] = "%s/lib" % sysconfig.PREFIX
+
+ LIBS.append('-lpython%s' % get_python_version())
+ else:
+diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py
+index 8dee214..2375bc9 100644
+--- a/plugins/rack/uwsgiplugin.py
++++ b/plugins/rack/uwsgiplugin.py
+@@ -44,7 +44,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\""
+
+ if has_shared == 'yes':
+ LDFLAGS.append('-L' + libpath )
+- os.environ['LD_RUN_PATH'] = libpath
+ LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip())
+ else:
+ GCC_LIST.append("%s/%s" % (libpath, os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBRUBY_A']\"" % rbconfig).read().rstrip()))
+diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py
+index ecea48d..4f35984 100644
+--- a/plugins/ruby19/uwsgiplugin.py
++++ b/plugins/ruby19/uwsgiplugin.py
+@@ -40,6 +40,5 @@ LDFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LDFLAG
+
+ libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip()
+ LDFLAGS.append('-L' + libpath )
+-os.environ['LD_RUN_PATH'] = libpath
+ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split()
+
diff --git a/community/uwsgi/uwsgi_ruby20_compatibility.patch b/community/uwsgi/uwsgi_ruby20_compatibility.patch
new file mode 100644
index 000000000..b4bf20d38
--- /dev/null
+++ b/community/uwsgi/uwsgi_ruby20_compatibility.patch
@@ -0,0 +1,42 @@
+diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py
+index 2375bc9..b908417 100644
+--- a/plugins/rack/uwsgiplugin.py
++++ b/plugins/rack/uwsgiplugin.py
+@@ -10,13 +10,14 @@ except:
+ rbconfig = 'Config'
+
+ version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip()
+-v = version.split('.')
+
+ GCC_LIST = ['rack_plugin', 'rack_api']
+
+-if (v[0] == '1' and v[1] == '9') or v[0] >= '2':
++if version >= '1.9':
+ CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split()
+ CFLAGS.append('-DRUBY19')
++ if version >= '2.0':
++ CFLAGS.append('-DRUBY20')
+ CFLAGS.append('-Wno-unused-parameter')
+ rbconfig = 'RbConfig'
+ else:
+diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py
+index 4f35984..156018f 100644
+--- a/plugins/ruby19/uwsgiplugin.py
++++ b/plugins/ruby19/uwsgiplugin.py
+@@ -10,13 +10,14 @@ except:
+ rbconfig = 'Config'
+
+ version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip()
+-v = version.split('.')
+
+ GCC_LIST = ['../rack/rack_plugin', '../rack/rack_api']
+
+-if v[0] == '1' and v[1] == '9':
++if version >= '1.9':
+ CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split()
+ CFLAGS.append('-DRUBY19')
++ if version >= '2.0':
++ CFLAGS.append('-DRUBY20')
+ CFLAGS.append('-Wno-unused-parameter')
+ rbconfig = 'RbConfig'
+ else:
diff --git a/community/uwsgi/uwsgi_trick_chroot.patch b/community/uwsgi/uwsgi_trick_chroot.patch
new file mode 100644
index 000000000..3bfb1ac22
--- /dev/null
+++ b/community/uwsgi/uwsgi_trick_chroot.patch
@@ -0,0 +1,16 @@
+diff --git a/uwsgiconfig.py b/uwsgiconfig.py
+index e447123..4d55f2c 100644
+--- a/uwsgiconfig.py
++++ b/uwsgiconfig.py
+@@ -1129,10 +1129,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None):
+ except:
+ pass
+
+- if uc:
+- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin'
+- else:
+- plugin_dest = name + '_plugin'
++ plugin_dest = name + '_plugin'
+
+ shared_flag = '-shared'
+