summaryrefslogtreecommitdiff
path: root/community
diff options
context:
space:
mode:
Diffstat (limited to 'community')
-rw-r--r--community/awesome/PKGBUILD5
-rw-r--r--community/freerdp/PKGBUILD11
-rw-r--r--community/freerdp/patch_numblock.patch12
-rw-r--r--community/libvirt/0001-Also-store-user-group-ID-values-in-virIdentity.patch156
-rw-r--r--community/libvirt/0002-Ensure-system-identity-includes-process-start-time.patch70
-rw-r--r--community/libvirt/0003-Add-support-for-using-3-arg-pkcheck-syntax-for-proce.patch159
-rw-r--r--community/libvirt/PKGBUILD22
-rw-r--r--community/nodejs/PKGBUILD6
-rw-r--r--community/tint2/PKGBUILD35
-rw-r--r--community/tint2/fix_defunct_processes.patch31
-rw-r--r--community/tint2/middle_click_on_clock.patch75
-rw-r--r--community/virtualbox-modules-lts/PKGBUILD6
-rw-r--r--community/xboard/PKGBUILD7
13 files changed, 562 insertions, 33 deletions
diff --git a/community/awesome/PKGBUILD b/community/awesome/PKGBUILD
index d308ec13e..fc53a149f 100644
--- a/community/awesome/PKGBUILD
+++ b/community/awesome/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 97098 2013-09-12 18:19:17Z seblu $
+# $Id: PKGBUILD 97620 2013-09-25 19:19:38Z seblu $
# Maintainer: Sébastien Luttringer
# Contributor: xduugu
# Contributor: Ronald van Haren <ronald.archlinux.org>
@@ -6,7 +6,7 @@
pkgname=awesome
pkgver=3.5.1
-pkgrel=2
+pkgrel=3
pkgdesc='Highly configurable framework window manager'
arch=('i686' 'x86_64')
url='http://awesome.naquadah.org/'
@@ -42,6 +42,7 @@ optdepends=(
'vicious: widgets for the Awesome window manager'
)
provides=('notification-daemon')
+backup=('etc/xdg/awesome/rc.lua')
source=("$url/download/$pkgname-$pkgver.tar.xz")
md5sums=('f528f66ddcdb07f24e6f494837371702')
diff --git a/community/freerdp/PKGBUILD b/community/freerdp/PKGBUILD
index 7f6f85ca4..9bee67b95 100644
--- a/community/freerdp/PKGBUILD
+++ b/community/freerdp/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 94879 2013-08-01 06:54:53Z bpiotrowski $
+# $Id: PKGBUILD 97610 2013-09-25 13:56:48Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Stijn Segers <francesco dot borromini at gmail dot com>
pkgname=freerdp
pkgver=1.0.2
-pkgrel=3
+pkgrel=4
pkgdesc="Free RDP client"
arch=('i686' 'x86_64')
url="http://freerdp.sourceforge.net"
@@ -16,13 +16,16 @@ conflicts=('freerdp-git')
changelog=${pkgname}.changelog
options=('!libtool')
source=($pkgname-$pkgver.tar.gz::https://github.com/FreeRDP/FreeRDP/archive/$pkgver.tar.gz
- ffmpeg2.0.patch)
+ ffmpeg2.0.patch
+ patch_numblock.patch)
md5sums=('c260051a94caff590def5caa4fcf59d6'
- '1260eecf01ea5212e2db8ac9c5e7fa6d')
+ '1260eecf01ea5212e2db8ac9c5e7fa6d'
+ 'ac581d445ded7cdbd59082a48d9c28ac')
prepare() {
cd $srcdir/FreeRDP-$pkgver
patch -Np1 -i ../ffmpeg2.0.patch
+ patch -Np1 -i ../patch_numblock.patch
}
build() {
diff --git a/community/freerdp/patch_numblock.patch b/community/freerdp/patch_numblock.patch
new file mode 100644
index 000000000..62a23d582
--- /dev/null
+++ b/community/freerdp/patch_numblock.patch
@@ -0,0 +1,12 @@
+diff -u -r -N old/include/freerdp/kbd/vkcodes.h new/include/freerdp/kbd/vkcodes.h
+--- old/include/freerdp/kbd/vkcodes.h 2013-09-19 12:46:07.124339712 +0200
++++ new/include/freerdp/kbd/vkcodes.h 2013-09-19 12:45:51.621005583 +0200
+@@ -434,7 +434,7 @@
+ { 0x00, 0, "VK_SEPARATOR" , NULL },
+ { 0x4A, 0, "VK_SUBTRACT" , "KPSU" },
+ { 0x53, 0, "VK_DECIMAL" , "KPDL" },
+- { 0x35, 0, "VK_DIVIDE" , "KPDV" },
++ { 0x35, 1, "VK_DIVIDE" , "KPDV" },
+ { 0x3B, 0, "VK_F1" , "FK01" },
+ { 0x3C, 0, "VK_F2" , "FK02" },
+ { 0x3D, 0, "VK_F3" , "FK03" },
diff --git a/community/libvirt/0001-Also-store-user-group-ID-values-in-virIdentity.patch b/community/libvirt/0001-Also-store-user-group-ID-values-in-virIdentity.patch
new file mode 100644
index 000000000..70a613820
--- /dev/null
+++ b/community/libvirt/0001-Also-store-user-group-ID-values-in-virIdentity.patch
@@ -0,0 +1,156 @@
+From 02432e3afa32e9866fbf1317069b422ef552d1d4 Mon Sep 17 00:00:00 2001
+From: "Daniel P. Berrange" <berrange@redhat.com>
+Date: Thu, 22 Aug 2013 16:00:01 +0100
+Subject: [PATCH 1/3] Also store user & group ID values in virIdentity
+
+Future improvements to the polkit code will require access to
+the numeric user ID, not merely user name.
+
+Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
+---
+ src/rpc/virnetserverclient.c | 18 ++++++++++++++++++
+ src/util/viridentity.c | 23 +++++++++++++++++++----
+ src/util/viridentity.h | 2 ++
+ 3 files changed, 39 insertions(+), 4 deletions(-)
+
+diff --git a/src/rpc/virnetserverclient.c b/src/rpc/virnetserverclient.c
+index 83d5cf1..f30dd08 100644
+--- a/src/rpc/virnetserverclient.c
++++ b/src/rpc/virnetserverclient.c
+@@ -652,7 +652,9 @@ virNetServerClientCreateIdentity(virNetServerClientPtr client)
+ char *processid = NULL;
+ char *processtime = NULL;
+ char *username = NULL;
++ char *userid = NULL;
+ char *groupname = NULL;
++ char *groupid = NULL;
+ #if WITH_SASL
+ char *saslname = NULL;
+ #endif
+@@ -672,8 +674,12 @@ virNetServerClientCreateIdentity(virNetServerClientPtr client)
+
+ if (!(username = virGetUserName(uid)))
+ goto cleanup;
++ if (virAsprintf(&userid, "%d", uid) < 0)
++ goto cleanup;
+ if (!(groupname = virGetGroupName(gid)))
+ goto cleanup;
++ if (virAsprintf(&userid, "%d", gid) < 0)
++ goto cleanup;
+ if (virAsprintf(&processid, "%llu",
+ (unsigned long long)pid) < 0)
+ goto cleanup;
+@@ -710,11 +716,21 @@ virNetServerClientCreateIdentity(virNetServerClientPtr client)
+ VIR_IDENTITY_ATTR_UNIX_USER_NAME,
+ username) < 0)
+ goto error;
++ if (userid &&
++ virIdentitySetAttr(ret,
++ VIR_IDENTITY_ATTR_UNIX_USER_ID,
++ userid) < 0)
++ goto error;
+ if (groupname &&
+ virIdentitySetAttr(ret,
+ VIR_IDENTITY_ATTR_UNIX_GROUP_NAME,
+ groupname) < 0)
+ goto error;
++ if (groupid &&
++ virIdentitySetAttr(ret,
++ VIR_IDENTITY_ATTR_UNIX_GROUP_ID,
++ groupid) < 0)
++ goto error;
+ if (processid &&
+ virIdentitySetAttr(ret,
+ VIR_IDENTITY_ATTR_UNIX_PROCESS_ID,
+@@ -745,7 +761,9 @@ virNetServerClientCreateIdentity(virNetServerClientPtr client)
+
+ cleanup:
+ VIR_FREE(username);
++ VIR_FREE(userid);
+ VIR_FREE(groupname);
++ VIR_FREE(groupid);
+ VIR_FREE(processid);
+ VIR_FREE(processtime);
+ VIR_FREE(seccontext);
+diff --git a/src/util/viridentity.c b/src/util/viridentity.c
+index 781f660..03c375b 100644
+--- a/src/util/viridentity.c
++++ b/src/util/viridentity.c
+@@ -133,7 +133,9 @@ int virIdentitySetCurrent(virIdentityPtr ident)
+ virIdentityPtr virIdentityGetSystem(void)
+ {
+ char *username = NULL;
++ char *userid = NULL;
+ char *groupname = NULL;
++ char *groupid = NULL;
+ char *seccontext = NULL;
+ virIdentityPtr ret = NULL;
+ #if WITH_SELINUX
+@@ -147,8 +149,13 @@ virIdentityPtr virIdentityGetSystem(void)
+
+ if (!(username = virGetUserName(getuid())))
+ goto cleanup;
++ if (virAsprintf(&userid, "%d", (int)getuid()) < 0)
++ goto cleanup;
++
+ if (!(groupname = virGetGroupName(getgid())))
+ goto cleanup;
++ if (virAsprintf(&groupid, "%d", (int)getgid()) < 0)
++ goto cleanup;
+
+ #if WITH_SELINUX
+ if (getcon(&con) < 0) {
+@@ -166,16 +173,22 @@ virIdentityPtr virIdentityGetSystem(void)
+ if (!(ret = virIdentityNew()))
+ goto cleanup;
+
+- if (username &&
+- virIdentitySetAttr(ret,
++ if (virIdentitySetAttr(ret,
+ VIR_IDENTITY_ATTR_UNIX_USER_NAME,
+ username) < 0)
+ goto error;
+- if (groupname &&
+- virIdentitySetAttr(ret,
++ if (virIdentitySetAttr(ret,
++ VIR_IDENTITY_ATTR_UNIX_USER_ID,
++ userid) < 0)
++ goto error;
++ if (virIdentitySetAttr(ret,
+ VIR_IDENTITY_ATTR_UNIX_GROUP_NAME,
+ groupname) < 0)
+ goto error;
++ if (virIdentitySetAttr(ret,
++ VIR_IDENTITY_ATTR_UNIX_GROUP_ID,
++ groupid) < 0)
++ goto error;
+ if (seccontext &&
+ virIdentitySetAttr(ret,
+ VIR_IDENTITY_ATTR_SELINUX_CONTEXT,
+@@ -188,7 +201,9 @@ virIdentityPtr virIdentityGetSystem(void)
+
+ cleanup:
+ VIR_FREE(username);
++ VIR_FREE(userid);
+ VIR_FREE(groupname);
++ VIR_FREE(groupid);
+ VIR_FREE(seccontext);
+ VIR_FREE(processid);
+ return ret;
+diff --git a/src/util/viridentity.h b/src/util/viridentity.h
+index 4bae8d6..a240c2d 100644
+--- a/src/util/viridentity.h
++++ b/src/util/viridentity.h
+@@ -29,7 +29,9 @@ typedef virIdentity *virIdentityPtr;
+
+ typedef enum {
+ VIR_IDENTITY_ATTR_UNIX_USER_NAME,
++ VIR_IDENTITY_ATTR_UNIX_USER_ID,
+ VIR_IDENTITY_ATTR_UNIX_GROUP_NAME,
++ VIR_IDENTITY_ATTR_UNIX_GROUP_ID,
+ VIR_IDENTITY_ATTR_UNIX_PROCESS_ID,
+ VIR_IDENTITY_ATTR_UNIX_PROCESS_TIME,
+ VIR_IDENTITY_ATTR_SASL_USER_NAME,
+--
+1.8.3.1
+
diff --git a/community/libvirt/0002-Ensure-system-identity-includes-process-start-time.patch b/community/libvirt/0002-Ensure-system-identity-includes-process-start-time.patch
new file mode 100644
index 000000000..1fba7d56c
--- /dev/null
+++ b/community/libvirt/0002-Ensure-system-identity-includes-process-start-time.patch
@@ -0,0 +1,70 @@
+From f26b6e44bf0c3efe8167a528141224ccb7623b4a Mon Sep 17 00:00:00 2001
+From: "Daniel P. Berrange" <berrange@redhat.com>
+Date: Wed, 28 Aug 2013 15:22:05 +0100
+Subject: [PATCH 2/3] Ensure system identity includes process start time
+
+The polkit access driver will want to use the process start
+time field. This was already set for network identities, but
+not for the system identity.
+
+Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
+---
+ src/util/viridentity.c | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/src/util/viridentity.c b/src/util/viridentity.c
+index 03c375b..f681f85 100644
+--- a/src/util/viridentity.c
++++ b/src/util/viridentity.c
+@@ -35,6 +35,7 @@
+ #include "virthread.h"
+ #include "virutil.h"
+ #include "virstring.h"
++#include "virprocess.h"
+
+ #define VIR_FROM_THIS VIR_FROM_IDENTITY
+
+@@ -142,11 +143,20 @@ virIdentityPtr virIdentityGetSystem(void)
+ security_context_t con;
+ #endif
+ char *processid = NULL;
++ unsigned long long timestamp;
++ char *processtime = NULL;
+
+ if (virAsprintf(&processid, "%llu",
+ (unsigned long long)getpid()) < 0)
+ goto cleanup;
+
++ if (virProcessGetStartTime(getpid(), &timestamp) < 0)
++ goto cleanup;
++
++ if (timestamp != 0 &&
++ virAsprintf(&processtime, "%llu", timestamp) < 0)
++ goto cleanup;
++
+ if (!(username = virGetUserName(getuid())))
+ goto cleanup;
+ if (virAsprintf(&userid, "%d", (int)getuid()) < 0)
+@@ -198,6 +208,11 @@ virIdentityPtr virIdentityGetSystem(void)
+ VIR_IDENTITY_ATTR_UNIX_PROCESS_ID,
+ processid) < 0)
+ goto error;
++ if (processtime &&
++ virIdentitySetAttr(ret,
++ VIR_IDENTITY_ATTR_UNIX_PROCESS_TIME,
++ processtime) < 0)
++ goto error;
+
+ cleanup:
+ VIR_FREE(username);
+@@ -206,6 +221,7 @@ cleanup:
+ VIR_FREE(groupid);
+ VIR_FREE(seccontext);
+ VIR_FREE(processid);
++ VIR_FREE(processtime);
+ return ret;
+
+ error:
+--
+1.8.3.1
+
diff --git a/community/libvirt/0003-Add-support-for-using-3-arg-pkcheck-syntax-for-proce.patch b/community/libvirt/0003-Add-support-for-using-3-arg-pkcheck-syntax-for-proce.patch
new file mode 100644
index 000000000..8882f1227
--- /dev/null
+++ b/community/libvirt/0003-Add-support-for-using-3-arg-pkcheck-syntax-for-proce.patch
@@ -0,0 +1,159 @@
+From 4a061ec8fe94857dd21acf401c66195ec51b1234 Mon Sep 17 00:00:00 2001
+From: "Daniel P. Berrange" <berrange@redhat.com>
+Date: Wed, 28 Aug 2013 15:25:40 +0100
+Subject: [PATCH 3/3] Add support for using 3-arg pkcheck syntax for process
+
+With the existing pkcheck (pid, start time) tuple for identifying
+the process, there is a race condition, where a process can make
+a libvirt RPC call and in another thread exec a setuid application,
+causing it to change to effective UID 0. This in turn causes polkit
+to do its permission check based on the wrong UID.
+
+To address this, libvirt must get the UID the caller had at time
+of connect() (from SO_PEERCRED) and pass a (pid, start time, uid)
+triple to the pkcheck program.
+
+Signed-off-by: Colin Walters <walters@redhat.com>
+Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
+---
+ configure.ac | 8 ++++++++
+ daemon/remote.c | 21 +++++++++++++++++---
+ src/access/viraccessdriverpolkit.c | 40 +++++++++++++++++++++++++++++++++-----
+ 3 files changed, 61 insertions(+), 8 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 94a2e19..3dfbb4d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1184,6 +1184,14 @@ if test "x$with_polkit" = "xyes" || test "x$with_polkit" = "xcheck"; then
+ AC_PATH_PROG([PKCHECK_PATH],[pkcheck], [], [/usr/sbin:$PATH])
+ if test "x$PKCHECK_PATH" != "x" ; then
+ AC_DEFINE_UNQUOTED([PKCHECK_PATH],["$PKCHECK_PATH"],[Location of pkcheck program])
++ AC_MSG_CHECKING([whether pkcheck supports uid value])
++ pkcheck_supports_uid=$($PKG_CONFIG --variable pkcheck_supports_uid polkit-gobject-1)
++ if test "x$pkcheck_supports_uid" = "xtrue"; then
++ AC_MSG_RESULT([yes])
++ AC_DEFINE_UNQUOTED([PKCHECK_SUPPORTS_UID], 1, [Pass uid to pkcheck])
++ else
++ AC_MSG_RESULT([no])
++ fi
+ AC_DEFINE_UNQUOTED([WITH_POLKIT], 1,
+ [use PolicyKit for UNIX socket access checks])
+ AC_DEFINE_UNQUOTED([WITH_POLKIT1], 1,
+diff --git a/daemon/remote.c b/daemon/remote.c
+index 03d5557..6132091 100644
+--- a/daemon/remote.c
++++ b/daemon/remote.c
+@@ -2731,10 +2731,12 @@ remoteDispatchAuthPolkit(virNetServerPtr server ATTRIBUTE_UNUSED,
+ int status = -1;
+ char *ident = NULL;
+ bool authdismissed = 0;
++ bool supportsuid = 0;
+ char *pkout = NULL;
+ struct daemonClientPrivate *priv =
+ virNetServerClientGetPrivateData(client);
+ virCommandPtr cmd = NULL;
++ static bool polkitInsecureWarned = false;
+
+ virMutexLock(&priv->lock);
+ action = virNetServerClientGetReadonly(client) ?
+@@ -2756,14 +2758,27 @@ remoteDispatchAuthPolkit(virNetServerPtr server ATTRIBUTE_UNUSED,
+ goto authfail;
+ }
+
++ if (timestamp == 0) {
++ VIR_WARN("Failing polkit auth due to missing client (pid=%lld) start time",
++ (long long)callerPid);
++ goto authfail;
++ }
++
+ VIR_INFO("Checking PID %lld running as %d",
+ (long long) callerPid, callerUid);
+
+ virCommandAddArg(cmd, "--process");
+- if (timestamp != 0) {
+- virCommandAddArgFormat(cmd, "%lld,%llu", (long long) callerPid, timestamp);
++# ifdef PKCHECK_SUPPORTS_UID
++ supportsuid = 1;
++# endif
++ if (supportsuid) {
++ virCommandAddArgFormat(cmd, "%lld,%llu,%lu", (long long) callerPid, timestamp, (unsigned long) callerUid);
+ } else {
+- virCommandAddArgFormat(cmd, "%lld", (long long) callerPid);
++ if (!polkitInsecureWarned) {
++ VIR_WARN("No support for caller UID with pkcheck. This deployment is known to be insecure.");
++ polkitInsecureWarned = true;
++ }
++ virCommandAddArgFormat(cmd, "%lld,%llu", (long long) callerPid, timestamp);
+ }
+ virCommandAddArg(cmd, "--allow-user-interaction");
+
+diff --git a/src/access/viraccessdriverpolkit.c b/src/access/viraccessdriverpolkit.c
+index 4c76e64..d980820 100644
+--- a/src/access/viraccessdriverpolkit.c
++++ b/src/access/viraccessdriverpolkit.c
+@@ -72,8 +72,12 @@ static char *
+ virAccessDriverPolkitFormatProcess(const char *actionid)
+ {
+ virIdentityPtr identity = virIdentityGetCurrent();
+- const char *process = NULL;
++ const char *callerPid = NULL;
++ const char *callerTime = NULL;
++ const char *callerUid = NULL;
+ char *ret = NULL;
++ bool supportsuid = 0;
++ static bool polkitInsecureWarned = false;
+
+ if (!identity) {
+ virAccessError(VIR_ERR_ACCESS_DENIED,
+@@ -81,17 +85,43 @@ virAccessDriverPolkitFormatProcess(const char *actionid)
+ actionid);
+ return NULL;
+ }
+- if (virIdentityGetAttr(identity, VIR_IDENTITY_ATTR_UNIX_PROCESS_ID, &process) < 0)
++ if (virIdentityGetAttr(identity, VIR_IDENTITY_ATTR_UNIX_PROCESS_ID, &callerPid) < 0)
++ goto cleanup;
++ if (virIdentityGetAttr(identity, VIR_IDENTITY_ATTR_UNIX_PROCESS_TIME, &callerTime) < 0)
++ goto cleanup;
++ if (virIdentityGetAttr(identity, VIR_IDENTITY_ATTR_UNIX_USER_ID, &callerUid) < 0)
+ goto cleanup;
+
+- if (!process) {
++ if (!callerPid) {
+ virAccessError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("No UNIX process ID available"));
+ goto cleanup;
+ }
+-
+- if (VIR_STRDUP(ret, process) < 0)
++ if (!callerTime) {
++ virAccessError(VIR_ERR_INTERNAL_ERROR, "%s",
++ _("No UNIX process start time available"));
++ goto cleanup;
++ }
++ if (!callerUid) {
++ virAccessError(VIR_ERR_INTERNAL_ERROR, "%s",
++ _("No UNIX caller UID available"));
+ goto cleanup;
++ }
++
++#ifdef PKCHECK_SUPPORTS_UID
++ supportsuid = 1;
++#endif
++ if (supportsuid) {
++ if (virAsprintf(&ret, "%s,%s,%s", callerPid, callerTime, callerUid) < 0)
++ goto cleanup;
++ } else {
++ if (!polkitInsecureWarned) {
++ VIR_WARN("No support for caller UID with pkcheck. This deployment is known to be insecure.");
++ polkitInsecureWarned = true;
++ }
++ if (virAsprintf(&ret, "%s,%s", callerPid, callerTime) < 0)
++ goto cleanup;
++ }
+
+ cleanup:
+ virObjectUnref(identity);
+--
+1.8.3.1
+
diff --git a/community/libvirt/PKGBUILD b/community/libvirt/PKGBUILD
index bb7d38bc7..cfeb7738b 100644
--- a/community/libvirt/PKGBUILD
+++ b/community/libvirt/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 96612 2013-09-02 10:46:37Z spupykin $
+# $Id: PKGBUILD 97608 2013-09-25 13:45:00Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Jonathan Wiersma <archaur at jonw dot org>
pkgname=libvirt
pkgver=1.1.2
-pkgrel=1
+pkgrel=2
pkgdesc="API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)"
arch=('i686' 'x86_64')
url="http://libvirt.org/"
@@ -32,11 +32,25 @@ install="libvirt.install"
source=("http://libvirt.org/sources/$pkgname-$pkgver.tar.gz"
libvirtd.conf.d
libvirtd-guests.conf.d
- libvirt.tmpfiles.d)
+ libvirt.tmpfiles.d
+ 0001-Also-store-user-group-ID-values-in-virIdentity.patch
+ 0002-Ensure-system-identity-includes-process-start-time.patch
+ 0003-Add-support-for-using-3-arg-pkcheck-syntax-for-proce.patch)
md5sums=('1835bbfa492099bce12e2934870e5611'
'3ed0e24f5b5e25bf553f5427d64915e6'
'0a96ed876ffb1fcb9dff5a9b3a609c1e'
- '020971887442ebbf1b6949e031c8dd3f')
+ '020971887442ebbf1b6949e031c8dd3f'
+ '60912fc049f0e8cf8d89c919ea619415'
+ 'a42387495f75dd918a6c25b36eb3b428'
+ '2dba51f17f37f59585852092e4c86e44')
+
+prepare() {
+ cd "$srcdir/$pkgname-$pkgver"
+ patch -p1 <$srcdir/0001-Also-store-user-group-ID-values-in-virIdentity.patch
+ patch -p1 <$srcdir/0002-Ensure-system-identity-includes-process-start-time.patch
+ patch -p1 <$srcdir/0003-Add-support-for-using-3-arg-pkcheck-syntax-for-proce.patch
+ autoreconf
+}
build() {
cd "$srcdir/$pkgname-$pkgver"
diff --git a/community/nodejs/PKGBUILD b/community/nodejs/PKGBUILD
index c17656108..1f5b7434a 100644
--- a/community/nodejs/PKGBUILD
+++ b/community/nodejs/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 96776 2013-09-04 21:38:52Z bpiotrowski $
+# $Id: PKGBUILD 97596 2013-09-25 06:59:41Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: James Campos <james.r.campos@gmail.com>
@@ -8,7 +8,7 @@
# Contributor: TIanyi Cui <tianyicui@gmail.com>
pkgname=nodejs
-pkgver=0.10.18
+pkgver=0.10.19
pkgrel=1
pkgdesc='Evented I/O for V8 javascript'
arch=('i686' 'x86_64')
@@ -19,7 +19,7 @@ makedepends=('python2')
checkdepends=('curl')
options=('!emptydirs')
source=(http://nodejs.org/dist/v$pkgver/node-v$pkgver.tar.gz)
-sha256sums=('3ee4436473869d4d84bb5cad4352b09ace00656467eca7d6db7cd7da5b8c5495')
+sha256sums=('e50787672cdf6afa6caeef9345ca40c4a69f96a31829a0884ea6ed63dfdde21e')
prepare() {
cd node-v$pkgver
diff --git a/community/tint2/PKGBUILD b/community/tint2/PKGBUILD
index 09bc4aff4..2571b8dee 100644
--- a/community/tint2/PKGBUILD
+++ b/community/tint2/PKGBUILD
@@ -1,43 +1,50 @@
-# $Id: PKGBUILD 64903 2012-02-18 20:04:04Z bpiotrowski $
+# $Id: PKGBUILD 97618 2013-09-25 18:19:34Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Blue Peppers <bluepeppers@archlinux.us>
# Contributor: Stefan Husmann< stefan-husmann@t-online.de>
pkgname=tint2
pkgver=0.11
-pkgrel=5
-pkgdesc="A basic, good-looking task manager for WMs"
+pkgrel=6
+pkgdesc='Basic, good-looking task manager for WMs'
arch=('i686' 'x86_64')
url="http://code.google.com/p/tint2/"
license=('GPL2')
conflicts=('ttm-svn' 'tint')
replaces=('tint')
depends=('gtk2' 'imlib2')
-optdepends=('pygtk: for using tint2conf')
+optdepends=('pygtk: for tint2wizard')
makedepends=('pygtk' 'cmake')
provides=('tint')
-source=("http://$pkgname.googlecode.com/files/$pkgname-${pkgver}.tar.bz2"
- 'add-power-now-support.patch')
+source=(http://tint2.googlecode.com/files/tint2-$pkgver.tar.bz2
+ add-power-now-support.patch
+ fix_defunct_processes.patch
+ middle_click_on_clock.patch)
md5sums=('6fc5731e7425125fa84a2add5cef4bff'
- '6cfcad028f1bd2f69812167f5395f890')
+ '6cfcad028f1bd2f69812167f5395f890'
+ 'b3d052ac5ada81c56e36133b1ecdee8c'
+ 'f7918d29a87422aab6fb9d922867d8f8')
-build() {
- cd "$srcdir/$pkgname-${pkgver}"
+prepare() {
+ cd $pkgname-$pkgver
- # add support for power_now battery attribute (fixes FS#21954)
patch -Np0 -i ../add-power-now-support.patch
+ patch -Np0 -i ../fix_defunct_processes.patch
+ patch -Np0 -i ../middle_click_on_clock.patch
# python2 fix
sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' src/tint2conf/tintwizard.py
sed -i 's_python _python2 _' src/tint2conf/main.c
+}
+
+build() {
+ cd $pkgname-$pkgver
- [ -d build ] || mkdir build
- cd build
- cmake -DCMAKE_INSTALL_PREFIX=/usr ../
+ cmake -DCMAKE_INSTALL_PREFIX=/usr .
make
}
package() {
- cd "$srcdir/$pkgname-${pkgver}/build"
+ cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
}
diff --git a/community/tint2/fix_defunct_processes.patch b/community/tint2/fix_defunct_processes.patch
new file mode 100644
index 000000000..28ea6c27a
--- /dev/null
+++ b/community/tint2/fix_defunct_processes.patch
@@ -0,0 +1,31 @@
+http://code.google.com/p/tint2/issues/detail?id=430
+Submitted By: David B. Cortarello (Nomius) <dcortarello at gmail dot com>
+Date: 18-05-2013
+Initial Package Version: subversion trunk (revision 652)
+Description: Fix zombie (defunct) processes created in clock_action.
+This patch provides the following bugfixes:
+ * This patch uses waitpid with WNOHANG to eliminate all zombie processes created by tint2 (in particular by the clock -right or left- click). This is done by a small hack in the update_clocks_min, called to "redraw" that area.
+
+--- src/clock/clock.c (revision 652)
++++ src/clock/clock.c (working copy)
+@@ -23,6 +23,8 @@
+ #include <cairo-xlib.h>
+ #include <pango/pangocairo.h>
+ #include <stdlib.h>
++#include <sys/types.h>
++#include <sys/wait.h>
+
+ #include "window.h"
+ #include "server.h"
+@@ -98,6 +103,10 @@
+ // remember old_sec because after suspend/hibernate the clock should be updated directly, and not
+ // on next minute change
+ time_t old_sec = time_clock.tv_sec;
++
++ // Little hack to wait executed commands in clock_action avoiding zombies
++ waitpid(-1, NULL, WNOHANG);
++
+ gettimeofday(&time_clock, 0);
+ if (time_clock.tv_sec % 60 == 0 || time_clock.tv_sec - old_sec > 60) {
+ int i;
+
diff --git a/community/tint2/middle_click_on_clock.patch b/community/tint2/middle_click_on_clock.patch
new file mode 100644
index 000000000..800c15c44
--- /dev/null
+++ b/community/tint2/middle_click_on_clock.patch
@@ -0,0 +1,75 @@
+http://code.google.com/p/tint2/issues/detail?id=430
+Submitted By: David B. Cortarello (Nomius) <dcortarello at gmail dot com>
+Date: 18-05-2013
+Initial Package Version: subversion trunk (revision 652)
+Description: Implemented middle click mouse button in the clock to execute tasks.
+* Implemented middle click mouse button over the clock by accepting the button 2 in the clock_action.
+* A new configuration parameter was created called clock_mclick_command, which works in the same way
+* clock_lclick_command and clock_rclick_command does.
+
+Index: src/clock/clock.c
+===================================================================
+--- src/clock/clock.c (revision 652)
++++ src/clock/clock.c (working copy)
+@@ -39,6 +41,7 @@
+ char *time_tooltip_format;
+ char *time_tooltip_timezone;
+ char *clock_lclick_command;
++char *clock_mclick_command;
+ char *clock_rclick_command;
+ struct timeval time_clock;
+ PangoFontDescription *time1_font_desc;
+@@ -61,6 +64,7 @@
+ time_tooltip_format = 0;
+ time_tooltip_timezone = 0;
+ clock_lclick_command = 0;
++ clock_mclick_command = 0;
+ clock_rclick_command = 0;
+ time1_font_desc = 0;
+ time2_font_desc = 0;
+@@ -77,6 +81,7 @@
+ if (time2_timezone) g_free(time2_timezone);
+ if (time_tooltip_timezone) g_free(time_tooltip_timezone);
+ if (clock_lclick_command) g_free(clock_lclick_command);
++ if (clock_mclick_command) g_free(clock_mclick_command);
+ if (clock_rclick_command) g_free(clock_rclick_command);
+ if (clock_timeout) stop_timeout(clock_timeout);
+ }
+@@ -254,6 +263,9 @@
+ case 1:
+ command = clock_lclick_command;
+ break;
++ case 2:
++ command = clock_mclick_command;
++ break;
+ case 3:
+ command = clock_rclick_command;
+ break;
+Index: src/clock/clock.h
+===================================================================
+--- src/clock/clock.h (revision 652)
++++ src/clock/clock.h (working copy)
+@@ -33,6 +33,7 @@
+ extern PangoFontDescription *time1_font_desc;
+ extern PangoFontDescription *time2_font_desc;
+ extern char *clock_lclick_command;
++extern char *clock_mclick_command;
+ extern char *clock_rclick_command;
+ extern int clock_enabled;
+
+Index: src/config.c
+===================================================================
+--- src/config.c (revision 652)
++++ src/config.c (working copy)
+@@ -396,6 +396,10 @@
+ if (strlen(value) > 0)
+ clock_lclick_command = strdup(value);
+ }
++ else if (strcmp(key, "clock_mclick_command") == 0) {
++ if (strlen(value) > 0)
++ clock_mclick_command = strdup(value);
++ }
+ else if (strcmp(key, "clock_rclick_command") == 0) {
+ if (strlen(value) > 0)
+ clock_rclick_command = strdup(value);
+
diff --git a/community/virtualbox-modules-lts/PKGBUILD b/community/virtualbox-modules-lts/PKGBUILD
index 22476422e..85bee4fb0 100644
--- a/community/virtualbox-modules-lts/PKGBUILD
+++ b/community/virtualbox-modules-lts/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 97440 2013-09-20 06:39:24Z bpiotrowski $
+# $Id: PKGBUILD 97616 2013-09-25 18:03:31Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Sébastien Luttringer
@@ -6,7 +6,7 @@
pkgbase=virtualbox-modules-lts
pkgname=('virtualbox-host-modules-lts' 'virtualbox-guest-modules-lts')
pkgver=4.2.18
-pkgrel=2
+pkgrel=3
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL')
@@ -53,7 +53,7 @@ package_virtualbox-guest-modules-lts(){
depends=('linux-lts>=3.10' 'linux-lts<3.11')
replaces=('virtualbox-archlinux-modules-lts')
conflicts=('virtualbox-archlinux-modules-lts')
- provides=("virtualbox-host-modules=$pkgver")
+ provides=("virtualbox-guest-modules=$pkgver")
install=virtualbox-guest-modules-lts.install
cd "dkms/vboxguest/$pkgver/$_kernver/$CARCH/module"
diff --git a/community/xboard/PKGBUILD b/community/xboard/PKGBUILD
index 13c602417..f9687dc57 100644
--- a/community/xboard/PKGBUILD
+++ b/community/xboard/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 97535 2013-09-23 16:17:42Z spupykin $
+# $Id: PKGBUILD 97605 2013-09-25 13:39:22Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Jason Chu <jason@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=xboard
pkgver=4.7.2
-pkgrel=1
+pkgrel=2
pkgdesc="Graphical user interfaces for chess"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/xboard/"
@@ -29,7 +29,8 @@ build() {
--prefix=/usr \
--mandir=/usr/share/man \
--sysconfdir=/etc \
- --with-gtk
+ --with-gtk \
+ --enable-zippy
make
}