diff options
96 files changed, 4016 insertions, 448 deletions
diff --git a/community-testing/directfb/DirectFB-1.4.9-libpng-1.5.patch b/community-testing/directfb/DirectFB-1.4.9-libpng-1.5.patch new file mode 100644 index 000000000..65470ea8f --- /dev/null +++ b/community-testing/directfb/DirectFB-1.4.9-libpng-1.5.patch @@ -0,0 +1,252 @@ +From 83180b25e90721e717bf37c5332c22713508786e Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sun, 20 Feb 2011 19:18:19 -0500 +Subject: [PATCH] png: add support for libpng 1.5.x + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + .../idirectfbimageprovider_png.c | 56 ++++++++++++------- + 1 files changed, 35 insertions(+), 21 deletions(-) + +diff --git a/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c b/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c +index 6d65ea3..7d82c5c 100644 +--- a/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c ++++ b/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c +@@ -207,7 +207,7 @@ Construct( IDirectFBImageProvider *thiz, + if (!data->png_ptr) + goto error; + +- if (setjmp( data->png_ptr->jmpbuf )) { ++ if (setjmp( png_jmpbuf( data->png_ptr ))) { + D_ERROR( "ImageProvider/PNG: Error reading header!\n" ); + goto error; + } +@@ -292,7 +292,7 @@ IDirectFBImageProvider_PNG_RenderTo( IDirectFBImageProvider *thiz, + rect = dst_data->area.wanted; + } + +- if (setjmp( data->png_ptr->jmpbuf )) { ++ if (setjmp( png_jmpbuf( data->png_ptr ))) { + D_ERROR( "ImageProvider/PNG: Error during decoding!\n" ); + + if (data->stage < STAGE_IMAGE) +@@ -327,6 +327,7 @@ IDirectFBImageProvider_PNG_RenderTo( IDirectFBImageProvider *thiz, + } + else { + CoreSurfaceBufferLock lock; ++ png_byte bit_depth = png_get_bit_depth( data->png_ptr, data->info_ptr ); + + ret = dfb_surface_lock_buffer( dst_surface, CSBR_BACK, CSAID_CPU, CSAF_WRITE, &lock ); + if (ret) +@@ -334,7 +335,7 @@ IDirectFBImageProvider_PNG_RenderTo( IDirectFBImageProvider *thiz, + + switch (data->color_type) { + case PNG_COLOR_TYPE_PALETTE: +- if (dst_surface->config.format == DSPF_LUT8 && data->info_ptr->bit_depth == 8) { ++ if (dst_surface->config.format == DSPF_LUT8 && bit_depth == 8) { + /* + * Special indexed PNG to LUT8 loading. + */ +@@ -377,7 +378,7 @@ IDirectFBImageProvider_PNG_RenderTo( IDirectFBImageProvider *thiz, + } + else { + if (data->color_type == PNG_COLOR_TYPE_GRAY) { +- int num = 1 << data->info_ptr->bit_depth; ++ int num = 1 << bit_depth; + + for (x=0; x<num; x++) { + int value = x * 255 / (num - 1); +@@ -386,7 +387,7 @@ IDirectFBImageProvider_PNG_RenderTo( IDirectFBImageProvider *thiz, + } + } + +- switch (data->info_ptr->bit_depth) { ++ switch (bit_depth) { + case 8: + for (y=0; y<data->height; y++) { + u8 *S = data->image + data->pitch * y; +@@ -441,7 +442,7 @@ IDirectFBImageProvider_PNG_RenderTo( IDirectFBImageProvider *thiz, + + default: + D_ERROR( "ImageProvider/PNG: Unsupported indexed bit depth %d!\n", +- data->info_ptr->bit_depth ); ++ bit_depth ); + } + + dfb_scale_linear_32( image_argb, data->width, data->height, +@@ -594,16 +595,26 @@ png_info_callback( png_structp png_read_ptr, + NULL, NULL, NULL ); + + if (png_get_valid( data->png_ptr, data->info_ptr, PNG_INFO_tRNS )) { ++ png_bytep trans; ++ png_color_16p trans_color; ++ int num_trans; ++ ++ png_get_tRNS( data->png_ptr, data->info_ptr, &trans, &num_trans, &trans_color ); ++ + data->color_keyed = true; + + /* generate color key based on palette... */ + if (data->color_type == PNG_COLOR_TYPE_PALETTE) { + u32 key; +- png_colorp palette = data->info_ptr->palette; +- png_bytep trans = data->info_ptr->trans_alpha; +- int num_colors = MIN( MAXCOLORMAPSIZE, +- data->info_ptr->num_palette ); +- u8 cmap[3][num_colors]; ++ png_colorp palette; ++ int num_colors; ++ u8 *cmap[3]; ++ ++ png_get_PLTE( data->png_ptr, data->info_ptr, &palette, &num_colors ); ++ num_colors = MIN( MAXCOLORMAPSIZE, num_colors ); ++ cmap[0] = alloca (num_colors); ++ cmap[1] = alloca (num_colors); ++ cmap[2] = alloca (num_colors); + + for (i=0; i<num_colors; i++) { + cmap[0][i] = palette[i].red; +@@ -613,7 +624,7 @@ png_info_callback( png_structp png_read_ptr, + + key = FindColorKey( num_colors, &cmap[0][0] ); + +- for (i=0; i<data->info_ptr->num_trans; i++) { ++ for (i=0; i<num_trans; i++) { + if (!trans[i]) { + palette[i].red = (key & 0xff0000) >> 16; + palette[i].green = (key & 0x00ff00) >> 8; + +-- +1.7.4.1 + +From 7a2a36fada3ecdd7f48fcfd782a552598477a8f5 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sun, 20 Feb 2011 19:38:50 -0500 +Subject: [PATCH] tools: add support for libpng 1.5.x + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + tools/directfb-csource.c | 20 +++++++++++++------- + tools/mkdfiff.c | 2 +- + tools/mkdgifft.cpp | 2 +- + 3 files changed, 15 insertions(+), 9 deletions(-) + +diff --git a/tools/directfb-csource.c b/tools/directfb-csource.c +index 8f2cbf0..487ea3c 100644 +--- a/tools/directfb-csource.c ++++ b/tools/directfb-csource.c +@@ -338,7 +338,7 @@ static DFBResult load_image (const char *filename, + if (!png_ptr) + goto cleanup; + +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf (png_ptr))) { + if (desc->preallocated[0].data) { + free (desc->preallocated[0].data); + desc->preallocated[0].data = NULL; +@@ -405,17 +405,22 @@ static DFBResult load_image (const char *filename, + } + + switch (src_format) { +- case DSPF_LUT8: +- if (info_ptr->num_palette) { ++ case DSPF_LUT8: { ++ png_colorp png_palette; ++ int num_palette; ++ ++ png_get_PLTE( png_ptr, info_ptr, &png_palette, &num_palette ); ++ ++ if (num_palette) { + png_byte *alpha; + int i, num; + +- *palette_size = MIN (info_ptr->num_palette, 256); ++ *palette_size = MIN (num_palette, 256); + for (i = 0; i < *palette_size; i++) { + palette[i].a = 0xFF; +- palette[i].r = info_ptr->palette[i].red; +- palette[i].g = info_ptr->palette[i].green; +- palette[i].b = info_ptr->palette[i].blue; ++ palette[i].r = png_palette[i].red; ++ palette[i].g = png_palette[i].green; ++ palette[i].b = png_palette[i].blue; + } + if (png_get_valid (png_ptr, info_ptr, PNG_INFO_tRNS)) { + png_get_tRNS (png_ptr, info_ptr, &alpha, &num, NULL); +@@ -424,6 +429,7 @@ static DFBResult load_image (const char *filename, + } + } + break; ++ } + case DSPF_RGB32: + png_set_filler (png_ptr, 0xFF, + #ifdef WORDS_BIGENDIAN +diff --git a/tools/mkdfiff.c b/tools/mkdfiff.c +index 68a3b4f..edb58a7 100644 +--- a/tools/mkdfiff.c ++++ b/tools/mkdfiff.c +@@ -97,7 +97,7 @@ load_image (const char *filename, + if (!png_ptr) + goto cleanup; + +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf (png_ptr))) { + if (desc->preallocated[0].data) { + free (desc->preallocated[0].data); + desc->preallocated[0].data = NULL; +diff --git a/tools/mkdgifft.cpp b/tools/mkdgifft.cpp +index 96e4220..d4b6bf4 100644 +--- a/tools/mkdgifft.cpp ++++ b/tools/mkdgifft.cpp +@@ -595,7 +595,7 @@ load_image (const char *filename, + if (!png_ptr) + goto cleanup; + +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf (png_ptr))) { + if (desc->preallocated[0].data) { + free (desc->preallocated[0].data); + desc->preallocated[0].data = NULL; +-- +1.7.4.1 + +--- a/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c 2012-02-14 19:04:52.000000000 -0500 ++++ b/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c 2012-02-14 19:07:18.000000000 -0500 +@@ -710,10 +709,15 @@ + + switch (data->color_type) { + case PNG_COLOR_TYPE_PALETTE: { +- png_colorp palette = data->info_ptr->palette; +- png_bytep trans = data->info_ptr->trans_alpha; +- int num_trans = data->info_ptr->num_trans; +- int num_colors = MIN( MAXCOLORMAPSIZE, data->info_ptr->num_palette ); ++ png_colorp palette; ++ png_bytep trans; ++ png_color_16p trans_color; ++ int num_trans; ++ int num_colors; ++ ++ png_get_PLTE( data->png_ptr, data->info_ptr, &palette, &num_colors ); ++ num_colors = MIN( MAXCOLORMAPSIZE, num_colors ); ++ png_get_tRNS( data->png_ptr, data->info_ptr, &trans, &num_trans, &trans_color ); + + for (i=0; i<num_colors; i++) { + data->colors[i].a = (i < num_trans) ? trans[i] : 0xff; +--- a/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c.old 2012-02-14 22:40:30.000000000 -0500 ++++ b/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c 2012-02-14 23:37:19.000000000 -0500 +@@ -638,12 +638,10 @@ + data->color_key = key; + } + else { +- /* ...or based on trans rgb value */ +- png_color_16p trans = &data->info_ptr->trans_color; + +- data->color_key = (((trans->red & 0xff00) << 8) | +- ((trans->green & 0xff00)) | +- ((trans->blue & 0xff00) >> 8)); ++ data->color_key = (((trans_color->red & 0xff00) << 8) | ++ ((trans_color->green & 0xff00)) | ++ ((trans_color->blue & 0xff00) >> 8)); + } + } + diff --git a/community-testing/directfb/PKGBUILD b/community-testing/directfb/PKGBUILD new file mode 100644 index 000000000..779bc141c --- /dev/null +++ b/community-testing/directfb/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 67846 2012-03-15 01:59:34Z ebelanger $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Maintainer: Eric Bélanger <eric@archlinux.org> + +pkgname=directfb +pkgver=1.5.3 +pkgrel=1 +pkgdesc="A thin library that provides hardware graphics acceleration, input device handling and abstraction, integrated windowing system on top of the Linux Framebuffer Device" +arch=('i686' 'x86_64') +url="http://www.directfb.org" +license=('LGPL') +depends=('gcc-libs' 'libjpeg' 'sdl' 'sysfsutils' 'libpng' 'freetype2') +options=('!libtool') +source=(http://www.directfb.org/downloads/Core/DirectFB-${pkgver%.*}/DirectFB-${pkgver}.tar.gz \ + DirectFB-1.4.9-libpng-1.5.patch directfb-missing_include.patch) +md5sums=('54a9ec931c8e3c82adb924194e65120e' + '82f552ae306871382a6a8e05cffee723' + '6b7ceca416c28a3791a145c15bf6f462') + +build() { + cd "${srcdir}/DirectFB-${pkgver}" + patch -p1 -i ../DirectFB-1.4.9-libpng-1.5.patch + patch -p1 -i ../directfb-missing_include.patch + CFLAGS+="-fno-inline" ./configure --prefix=/usr --sysconfdir=/etc --enable-static \ + --enable-zlib --enable-x11 --enable-sdl --disable-vnc --disable-osx \ + --enable-video4linux2 --enable-voodoo + make +} + +package() { + cd "${srcdir}/DirectFB-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/community-testing/directfb/directfb-missing_include.patch b/community-testing/directfb/directfb-missing_include.patch new file mode 100644 index 000000000..4b1af5a30 --- /dev/null +++ b/community-testing/directfb/directfb-missing_include.patch @@ -0,0 +1,376 @@ +--- /dev/null 2012-02-14 14:47:01.028967126 -0500 ++++ b/lib/voodoo/link.h 2012-02-14 21:19:05.000000000 -0500 +@@ -0,0 +1,85 @@ ++/* ++ (c) Copyright 2001-2009 The world wide DirectFB Open Source Community (directfb.org) ++ (c) Copyright 2000-2004 Convergence (integrated media) GmbH ++ ++ All rights reserved. ++ ++ Written by Denis Oliver Kropp <dok@directfb.org>, ++ Andreas Hundt <andi@fischlustig.de>, ++ Sven Neumann <neo@directfb.org>, ++ Ville Syrjälä <syrjala@sci.fi> and ++ Claudio Ciccani <klan@users.sf.net>. ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2 of the License, or (at your option) any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with this library; if not, write to the ++ Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++ Boston, MA 02111-1307, USA. ++*/ ++ ++#ifndef __VOODOO__LINK_H__ ++#define __VOODOO__LINK_H__ ++ ++#include <voodoo/types.h> ++ ++ ++typedef struct { ++ void *ptr; ++ size_t length; ++ size_t done; ++} VoodooChunk; ++ ++ ++struct __V_VoodooLink { ++ void *priv; ++ u32 code; ++ ++ void (*Close)( VoodooLink *link ); ++ ++ /* See 'read(2)', blocking */ ++ ssize_t (*Read) ( VoodooLink *link, ++ void *buffer, ++ size_t count ); ++ ++ /* See 'write(2)', blocking */ ++ ssize_t (*Write)( VoodooLink *link, ++ const void *buffer, ++ size_t count ); ++ ++ ++ /* For later... */ ++ DirectResult (*SendReceive)( VoodooLink *link, ++ VoodooChunk *send, ++ size_t num_send, ++ VoodooChunk *recv, ++ size_t num_recv ); ++ ++ DirectResult (*WakeUp) ( VoodooLink *link ); ++ ++ DirectResult (*WaitForData)( VoodooLink *link, ++ int timeout_ms ); ++}; ++ ++ ++DirectResult VOODOO_API voodoo_link_init_connect( VoodooLink *link, ++ const char *hostname, ++ int port, ++ bool raw ); ++ ++DirectResult VOODOO_API voodoo_link_init_local ( VoodooLink *link, ++ const char *path, ++ bool raw ); ++ ++DirectResult VOODOO_API voodoo_link_init_fd ( VoodooLink *link, ++ int fd[2] ); ++ ++#endif +--- /dev/null 2012-02-14 14:47:01.028967126 -0500 ++++ b/lib/voodoo/packet.h 2012-02-14 21:37:45.000000000 -0500 +@@ -0,0 +1,285 @@ ++/* ++ (c) Copyright 2001-2011 The world wide DirectFB Open Source Community (directfb.org) ++ (c) Copyright 2000-2004 Convergence (integrated media) GmbH ++ ++ All rights reserved. ++ ++ Written by Denis Oliver Kropp <dok@directfb.org>, ++ Andreas Hundt <andi@fischlustig.de>, ++ Sven Neumann <neo@directfb.org>, ++ Ville Syrjälä <syrjala@sci.fi> and ++ Claudio Ciccani <klan@users.sf.net>. ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2 of the License, or (at your option) any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with this library; if not, write to the ++ Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++ Boston, MA 02111-1307, USA. ++*/ ++ ++#ifndef __VOODOO__PACKET_H__ ++#define __VOODOO__PACKET_H__ ++ ++extern "C" { ++#include <direct/fastlz.h> ++#include <direct/list.h> ++#include <direct/mem.h> ++#include <direct/memcpy.h> ++ ++ ++#include <voodoo/types.h> ++} ++ ++ ++typedef enum { ++ VPHF_NONE = 0x00000000, ++ ++ VPHF_COMPRESSED = 0x00000001, ++ ++ VPHF_ALL = 0x00000001 ++} VoodooPacketHeaderFlags; ++ ++ ++typedef struct { ++ u32 size; ++ u32 flags; ++ u32 uncompressed; ++ u32 align; ++} VoodooPacketHeader; ++ ++ ++class VoodooPacket { ++public: ++ DirectLink link; ++ bool sending; ++ ++private: ++ void *data; ++ void *current; ++ VoodooPacketHeader header; ++ ++ VoodooPacket( u32 size, ++ void *data ) ++ : ++ sending(false), ++ data(data), ++ current(data) ++ { ++ memset( &link, 0, sizeof(link) ); ++ ++ header.size = size; ++ header.flags = VPHF_NONE; ++ header.uncompressed = size; ++ } ++ ++ VoodooPacket( u32 size, ++ u32 flags, ++ u32 uncompressed, ++ void *data ) ++ : ++ sending(false), ++ data(data), ++ current(data) ++ { ++ memset( &link, 0, sizeof(link) ); ++ ++ header.size = size; ++ header.flags = VPHF_COMPRESSED; ++ header.uncompressed = uncompressed; ++ } ++ ++ ~VoodooPacket() {}; ++ ++public: ++/* ++ static VoodooPacket * ++ New( u32 size ) ++ { ++ VoodooPacket *packet = (VoodooPacket*) D_MALLOC( sizeof(VoodooPacket) + size ); ++ ++ if (!packet) { ++ D_OOM(); ++ return NULL; ++ } ++ ++ return new (packet) VoodooPacket( size, packet + 1 ); ++ ++ ++ if (data) ++ this->data = data; ++ else ++ this->data = header + 1; ++ } ++*/ ++ static VoodooPacket * ++ New( u32 size, ++ void *data ) ++ { ++ return new VoodooPacket( size, data ); ++ } ++ ++ static VoodooPacket * ++ Reset( VoodooPacket *packet, ++ u32 size, ++ void *data ) ++ { ++ return new (packet) VoodooPacket( size, data ); ++ } ++ ++ static VoodooPacket * ++ New( void *header, ++ u32 size ) ++ { ++ VoodooPacketHeader *h = (VoodooPacketHeader*) header; ++ ++ h->size = size; ++ h->flags = VPHF_NONE; ++ h->uncompressed = size; ++ ++ return new VoodooPacket( size, (char*) header + sizeof(VoodooPacketHeader) ); ++ } ++ ++ static VoodooPacket * ++ New( u32 size ) ++ { ++ VoodooPacket *p = (VoodooPacket*) D_MALLOC( sizeof(VoodooPacket) + VOODOO_PACKET_MAX ); ++ ++ if (!p) { ++ D_OOM(); ++ return NULL; ++ } ++ ++ return new (p) VoodooPacket( size, p + 1 ); ++ } ++ ++ static VoodooPacket * ++ Compressed( VoodooPacket *packet ) ++ { ++ VoodooPacket *p = (VoodooPacket*) D_MALLOC( sizeof(VoodooPacket) + packet->header.size * 4 / 3 ); ++ ++ if (!p) { ++ D_OOM(); ++ return NULL; ++ } ++ ++ int compressed = direct_fastlz_compress( packet->data, packet->header.uncompressed, p + 1 ); ++ ++ if ((size_t) compressed < packet->header.uncompressed) ++ return new (p) VoodooPacket( compressed, VPHF_COMPRESSED, packet->header.uncompressed, p + 1 ); ++ ++ D_FREE( p ); ++ ++ return packet; ++ } ++ ++ static VoodooPacket * ++ Copy( VoodooPacket *packet ) ++ { ++ VoodooPacket *p = (VoodooPacket*) D_MALLOC( sizeof(VoodooPacket) + packet->header.size ); ++ ++ if (!p) { ++ D_OOM(); ++ return NULL; ++ } ++ ++ direct_memcpy( p + 1, packet->data_start(), packet->header.size ); ++ ++ return new (p) VoodooPacket( packet->header.size, packet->header.flags, packet->header.uncompressed, p + 1 ); ++ } ++ ++ static VoodooPacket * ++ Copy( u32 size, ++ u32 flags, ++ u32 uncompressed, ++ void *data ) ++ { ++ VoodooPacket *p = (VoodooPacket*) D_MALLOC( sizeof(VoodooPacket) + size ); ++ ++ if (!p) { ++ D_OOM(); ++ return NULL; ++ } ++ ++ direct_memcpy( p + 1, data, size ); ++ ++ return new (p) VoodooPacket( size, flags, uncompressed, p + 1 ); ++ } ++ ++ inline u32 ++ size() const ++ { ++ return header.size; ++ } ++ ++ inline u32 ++ flags() const ++ { ++ return header.flags; ++ } ++ ++ inline u32 ++ uncompressed() const ++ { ++ return header.uncompressed; ++ } ++ ++ inline const void * ++ data_header() const ++ { ++ D_ASSERT( data == this + 1 ); ++ ++ return &header; ++ } ++ ++ inline const void * ++ data_start() const ++ { ++ return data; ++ } ++ ++ inline void * ++ data_raw() const ++ { ++ return current; ++ } ++ ++ ++ inline bool ++ append( size_t size ) ++ { ++ D_ASSERT( data == this + 1 ); ++ ++ if (header.size + size > VOODOO_PACKET_MAX) ++ return false; ++ ++ current = (char*) data + header.size; ++ ++ header.size += size; ++ header.uncompressed += size; ++ ++ return true; ++ } ++ ++ inline void ++ reset( size_t size ) ++ { ++ D_ASSERT( data == this + 1 ); ++ ++ current = (char*) data; ++ ++ header.size = size; ++ header.uncompressed = size; ++ } ++}; ++ ++ ++#endif diff --git a/community-testing/qingy/PKGBUILD b/community-testing/qingy/PKGBUILD new file mode 100644 index 000000000..280c38bdd --- /dev/null +++ b/community-testing/qingy/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 67844 2012-03-15 01:20:15Z ebelanger $ +# Maintainer: Eric Bélanger <eric@archlinux.org> +# Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + +pkgname=qingy +pkgver=1.0.0 +pkgrel=3 +pkgdesc="A DirectFB getty replacement" +arch=('i686' 'x86_64') +url="http://qingy.sourceforge.net/" +license=('GPL') +depends=('directfb' 'openssl' 'libxss') +makedepends=('emacs') +backup=('etc/qingy/settings' 'etc/qingy/welcomes') +options=('!libtool') +install=qingy.install +source=(http://downloads.sourceforge.net/sourceforge/qingy/${pkgname}-${pkgver}.tar.bz2 \ + qingy.logrotate) +md5sums=('1e0912655e240adfd0ce5ced30bbc685' + 'a9bdfd0ac9f29380eafa97a4a056789d') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + XFREE=/usr/bin/Xorg XINIT=/usr/bin/xinit \ + ./configure --prefix=/usr --sbindir=/sbin --sysconfdir=/etc \ + --disable-optimizations --enable-pam \ + --disable-static-build --enable-gpm-lock --enable-emacs + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -D -m644 "${srcdir}/qingy.logrotate" "${pkgdir}/etc/logrotate.d/qingy" +} diff --git a/community-testing/qingy/qingy.install b/community-testing/qingy/qingy.install new file mode 100644 index 000000000..5cf234b72 --- /dev/null +++ b/community-testing/qingy/qingy.install @@ -0,0 +1,18 @@ +infodir=usr/share/info +filelist=(qingy.info.gz) + +post_install() { + for file in ${filelist[@]}; do + install-info $infodir/$file $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install +} + +pre_remove() { + for file in ${filelist[@]}; do + install-info --delete $infodir/$file $infodir/dir 2> /dev/null + done +} diff --git a/community-testing/qingy/qingy.logrotate b/community-testing/qingy/qingy.logrotate new file mode 100644 index 000000000..e16fb8d2a --- /dev/null +++ b/community-testing/qingy/qingy.logrotate @@ -0,0 +1,9 @@ +/var/log/qingy.log { + compress + rotate 1 + size=+1024k + notifempty + missingok + copytruncate + noolddir +} diff --git a/community/gnunet-gtk/PKGBUILD b/community/gnunet-gtk/PKGBUILD index 2fee0c8bb..ef785244e 100644 --- a/community/gnunet-gtk/PKGBUILD +++ b/community/gnunet-gtk/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 61360 2011-12-28 17:15:03Z spupykin $ +# $Id: PKGBUILD 67760 2012-03-14 10:41:59Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: wahnby <wahnby@yahoo.fr> pkgname=gnunet-gtk -pkgver=0.9.1 +pkgver=0.9.2 pkgrel=1 pkgdesc="A frontend for GNUnet" arch=('i686' 'x86_64') @@ -12,15 +12,11 @@ options=('!libtool') license=('GPL') depends=('gnunet' 'glade' 'adns') makedepends=('pkgconfig') -source=(ftp://ftp.gnu.org/gnu/gnunet/$pkgname-$pkgver.tar.gz - drop_gtk2.patch) -md5sums=('7034d34dbc4cdb219b23873d8056bba5' - 'f709c0195beffd0ca64d498be83a118b') +source=(ftp://ftp.gnu.org/gnu/gnunet/$pkgname-$pkgver.tar.gz) +md5sums=('bc16671ed9f28808a262f2c88b018687') build() { cd $srcdir/$pkgname-$pkgver -# patch -Np1 -i $srcdir/drop_gtk2.patch -# autoreconf -fi ./configure --prefix=/usr --with-gnunet=/usr make } diff --git a/community/gnunet/PKGBUILD b/community/gnunet/PKGBUILD index fa60b32b3..de4c1913a 100644 --- a/community/gnunet/PKGBUILD +++ b/community/gnunet/PKGBUILD @@ -1,15 +1,16 @@ -# $Id: PKGBUILD 61358 2011-12-28 17:14:11Z spupykin $ +# $Id: PKGBUILD 67758 2012-03-14 10:41:00Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: wahnby <wahnby@yahoo.fr> pkgname=gnunet -pkgver=0.9.1 +pkgver=0.9.2 pkgrel=1 pkgdesc="A framework for secure peer-to-peer networking" arch=('i686' 'x86_64') url="http://gnunet.org" license=('GPL') -depends=('gmp' 'libgcrypt' 'libextractor' 'sqlite3' 'curl' 'libmicrohttpd') +depends=('gmp' 'libgcrypt' 'libextractor' 'sqlite3' 'curl' + 'libmicrohttpd' 'libunistring') makedepends=('gettext' 'pkgconfig') backup=(etc/gnunetd.conf) options=('!libtool' '!makeflags') @@ -18,7 +19,7 @@ source=(ftp://ftp.gnu.org/gnu/gnunet/gnunet-$pkgver.tar.gz gnunet.rc gnunet.conf.d defaults.conf) -md5sums=('f5ff4c6a87e7b24047319af46113e5c3' +md5sums=('ecb3c0853e3b8feae6e6b16e69e0d527' '5baf691913b007fb33e365239e3f7217' 'f161b46915736e4017e77ad735521453' '0fe23b2ca5b3fc47a0b5645e04406da0') diff --git a/community/gtk-engine-unico/PKGBUILD b/community/gtk-engine-unico/PKGBUILD new file mode 100644 index 000000000..aea29b9f9 --- /dev/null +++ b/community/gtk-engine-unico/PKGBUILD @@ -0,0 +1,27 @@ +# Maintainer: Bartlomiej Piotrowski +# Contributor: Hilinus <itahilinus[at]hotmail[dot]it> + +pkgname=gtk-engine-unico +pkgver=1.0.1 +pkgrel=2 +pkgdesc="Unico GTK3 theme engine" +arch=('i686' 'x86_64') +url="https://launchpad.net/unico" +license=('GPL') +depends=("gtk3") +source=("http://launchpad.net/unico/1.0/$pkgver/+download/${pkgname#gtk-engine-}-$pkgver.tar.gz") +md5sums=('1e56ff86337120dcf1b04dd443ea4b71') +options=(!libtool) + + +build() { + cd ${srcdir}/${pkgname#gtk-engine-}-$pkgver + + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd ${srcdir}/${pkgname#gtk-engine-}-$pkgver + make DESTDIR=${pkgdir} install +} diff --git a/community/gtkwave/PKGBUILD b/community/gtkwave/PKGBUILD index 63b99f4ca..c0f29e5b2 100644 --- a/community/gtkwave/PKGBUILD +++ b/community/gtkwave/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 66978 2012-03-03 05:41:51Z kkeen $ +# $Id: PKGBUILD 67842 2012-03-15 00:01:16Z kkeen $ # Maintainer: Kyle Keen <keenerd@gmail.com> # Contributor: Thomas Dziedzic < gostrc at gmail > # Contributor: Jared Casper <jaredcasper@gmail.com> pkgname=gtkwave -pkgver=3.3.33 +pkgver=3.3.34 pkgrel=1 pkgdesc='A wave viewer which reads LXT, LXT2, VZT, GHW and VCD/EVCD files' arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ depends=('bzip2' 'xz' 'gtk2') makedepends=('gperf') install='gtkwave.install' source=("http://gtkwave.sourceforge.net/gtkwave-${pkgver}.tar.gz") -md5sums=('18a8acc803814d4873fd342bc70b6b8a') +md5sums=('eef932f2e4826d10acb05d96d7a4e665') build() { cd "${srcdir}/gtkwave-${pkgver}" diff --git a/community/libunistring/PKGBUILD b/community/libunistring/PKGBUILD new file mode 100644 index 000000000..c08199c03 --- /dev/null +++ b/community/libunistring/PKGBUILD @@ -0,0 +1,27 @@ +# $Id: PKGBUILD 67762 2012-03-14 10:42:36Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Former Maintainer: Emmanuel 'guinness' Boudreault +# Current Maintainer: Patrick McCarty <pnorcks at gmail dot com> + +pkgname=libunistring +pkgver=0.9.3 +pkgrel=4 +pkgdesc="Library for manipulating Unicode strings and C strings." +url="http://www.gnu.org/software/libunistring/" +arch=('i686' 'x86_64') +license=('GPL') +depends=('glibc') +install=${pkgname}.install +source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz) +md5sums=('db8eca3b64163abadf8c40e5cecc261f') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/community/libunistring/libunistring.install b/community/libunistring/libunistring.install new file mode 100644 index 000000000..58dd2ef8e --- /dev/null +++ b/community/libunistring/libunistring.install @@ -0,0 +1,22 @@ +infodir=usr/share/info +filelist=(libunistring.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/community/libvirt/PKGBUILD b/community/libvirt/PKGBUILD index 611a2a158..b73a8900c 100644 --- a/community/libvirt/PKGBUILD +++ b/community/libvirt/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 67039 2012-03-03 14:31:16Z giovanni $ +# $Id: PKGBUILD 67806 2012-03-14 13:44:05Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Jonathan Wiersma <archaur at jonw dot org> pkgname=libvirt pkgver=0.9.10 -pkgrel=2 +pkgrel=4 pkgdesc="API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)" arch=('i686' 'x86_64') url="http://libvirt.org/" @@ -40,7 +40,7 @@ source=("http://libvirt.org/sources/$pkgname-$pkgver.tar.gz" md5sums=('a424bb793521e637349da47e93dd5fff' 'c43244c40a0437038c82089618e7beaa' '3ed0e24f5b5e25bf553f5427d64915e6' - '737ec24aa56871fbabfa892789457db4' + '4091cf082b1b743f5e7af060b3760276' 'bc2971dacdbac967fc3474e50affc345' 'b0be50eb9dfe4d133decf23b60880f7d' 'db95aecdf2ccf3693fef5821cdcb7eba' @@ -63,10 +63,8 @@ build() { [ $NOEXTRACT -eq 1 ] || patch -Np1 -i "$srcdir"/openbsd-netcat-default.patch - # fixes for yajl 2.0 API changes -# [ $NOEXTRACT -eq 1 ] || patch -Np1 -i "$srcdir/yajl-2.x.patch" - export LDFLAGS=-lX11 + export RADVD=/usr/sbin/radvd [ -f Makefile ] || ./configure --prefix=/usr --libexec=/usr/lib/"$pkgname" \ --with-storage-lvm --without-xen --with-udev --without-hal --disable-static find -name Makefile -exec sed -i 's#-L /usr#-L/usr#' {} \; diff --git a/community/libvirt/libvirtd-guests.rc.d b/community/libvirt/libvirtd-guests.rc.d index b4331964a..e07478534 100755 --- a/community/libvirt/libvirtd-guests.rc.d +++ b/community/libvirt/libvirtd-guests.rc.d @@ -41,7 +41,7 @@ libvirt_shutdown() sleep 1 timeout=$((timeout - 1)) state=`libvirt_get_guest_state "$1"` - [ "x$state" != "xshut" ] && return 0 + [ "x$state" == "xshut" ] && return 0 done return 1 } diff --git a/community/lomoco/PKGBUILD b/community/lomoco/PKGBUILD index 094547913..a5916c2f0 100644 --- a/community/lomoco/PKGBUILD +++ b/community/lomoco/PKGBUILD @@ -1,9 +1,10 @@ +# $Id: PKGBUILD 67826 2012-03-14 16:31:38Z spupykin $ # Maintainer: Jeff Mickey <j@codemac.net> # Contributor: Shadowhand <woody.gilk@gmail.com> pkgname=lomoco pkgver=1.0 -pkgrel=6 +pkgrel=7 url="http://www.lomoco.org/" pkgdesc="Logitech USB mouse configuration program" license=('GPL') @@ -13,14 +14,17 @@ arch=('i686' 'x86_64') options=(!libtool) backup=(etc/udev/lomoco_mouse.conf) source=(http://www.lomoco.org/${pkgname}-${pkgver}.tar.gz + "lomoco_mx518.patch::https://bugs.archlinux.org/task/28180?getfile=8163" lomoco_mouse.conf lomoco.sh) md5sums=('f5197d0a3ee81229c3eecc1e03f7b08d' + '87aeccb99413faf9e49453215c3d0b8a' '182b10a7e4a1828a93c1d55ef7f81b97' 'bc92f661641265b33b27895ef24028fd') build() { cd ${srcdir}/${pkgname}-${pkgver} + patch -p1 <$srcdir/lomoco_mx518.patch ./autogen.sh --prefix=/usr --mandir=/usr/share/man make make udev-rules diff --git a/community/luabind/PKGBUILD b/community/luabind/PKGBUILD new file mode 100644 index 000000000..15b9e9888 --- /dev/null +++ b/community/luabind/PKGBUILD @@ -0,0 +1,37 @@ +# Maintainer: Jakob Gruber <jakob.gruber@gmail.com> +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: rayte <rabyte.at.gmail.dot.com> + +pkgname=luabind +pkgver=0.9.1 +pkgrel=2 +pkgdesc="A library that helps you create bindings between C++ and Lua" +arch=('i686' 'x86_64') +url="http://www.rasterbar.com/products/luabind.html" +license=('MIT') +makedepends=('unzip' 'boost' 'boost-build') +depends=('lua' 'gcc-libs') +source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz" + "luabind_boost.patch") + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + patch -Np1 -i ${srcdir}/luabind_boost.patch + + # build luabind + bjam release --prefix=${pkgdir}/usr/ link=static,shared +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + + bjam release --prefix=${pkgdir}/usr/ link=static,shared install + + # copy license + install -Dm644 ${srcdir}/${pkgname}-${pkgver}/LICENSE \ + ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE +} + +md5sums=('8a323fb51d07dad5cfdb12c432793d55' + 'd62ae6fc635300bc659df9dbb587ac53') diff --git a/community/luabind/luabind_boost.patch b/community/luabind/luabind_boost.patch new file mode 100644 index 000000000..92e32828a --- /dev/null +++ b/community/luabind/luabind_boost.patch @@ -0,0 +1,59 @@ +diff --git luabind-0.9.1/luabind/detail/call_function.hpp luabind-0.9.1-fixed/luabind/detail/call_function.hpp +index 1b45ec1..8f5afff 100644 +--- luabind-0.9.1/luabind/detail/call_function.hpp ++++ luabind-0.9.1-fixed/luabind/detail/call_function.hpp +@@ -323,7 +323,8 @@ namespace luabind + + #endif // LUABIND_CALL_FUNCTION_HPP_INCLUDED + +-#elif BOOST_PP_ITERATION_FLAGS() == 1 ++#else ++#if BOOST_PP_ITERATION_FLAGS() == 1 + + #define LUABIND_TUPLE_PARAMS(z, n, data) const A##n * + #define LUABIND_OPERATOR_PARAMS(z, n, data) const A##n & a##n +@@ -440,4 +441,5 @@ namespace luabind + + + #endif ++#endif + +diff --git luabind-0.9.1/luabind/detail/call_member.hpp luabind-0.9.1-fixed/luabind/detail/call_member.hpp +index de8d563..e63555b 100644 +--- luabind-0.9.1/luabind/detail/call_member.hpp ++++ luabind-0.9.1-fixed/luabind/detail/call_member.hpp +@@ -316,7 +316,8 @@ namespace luabind + + #endif // LUABIND_CALL_MEMBER_HPP_INCLUDED + +-#elif BOOST_PP_ITERATION_FLAGS() == 1 ++#else ++#if BOOST_PP_ITERATION_FLAGS() == 1 + + #define LUABIND_TUPLE_PARAMS(z, n, data) const A##n * + #define LUABIND_OPERATOR_PARAMS(z, n, data) const A##n & a##n +@@ -360,4 +361,5 @@ namespace luabind + #undef LUABIND_TUPLE_PARAMS + + #endif ++#endif + +diff --git luabind-0.9.1/luabind/wrapper_base.hpp luabind-0.9.1-fixed/luabind/wrapper_base.hpp +index d54c668..0f88cc5 100755 +--- luabind-0.9.1/luabind/wrapper_base.hpp ++++ luabind-0.9.1-fixed/luabind/wrapper_base.hpp +@@ -89,7 +89,8 @@ namespace luabind + + #endif // LUABIND_WRAPPER_BASE_HPP_INCLUDED + +-#elif BOOST_PP_ITERATION_FLAGS() == 1 ++#else ++#if BOOST_PP_ITERATION_FLAGS() == 1 + + #define LUABIND_TUPLE_PARAMS(z, n, data) const A##n * + #define LUABIND_OPERATOR_PARAMS(z, n, data) const A##n & a##n +@@ -188,3 +189,4 @@ namespace luabind + #undef N + + #endif ++#endif diff --git a/community/openbsd-netcat/PKGBUILD b/community/openbsd-netcat/PKGBUILD index 95e4e13bf..35f531dea 100644 --- a/community/openbsd-netcat/PKGBUILD +++ b/community/openbsd-netcat/PKGBUILD @@ -1,35 +1,37 @@ -# $Id: PKGBUILD 66256 2012-02-23 05:29:19Z spupykin $ +# $Id: PKGBUILD 67793 2012-03-14 13:02:34Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Andrej Gelenberg <andrej.gelenberg@udo.edu> pkgname="openbsd-netcat" -pkgver=1.89 -pkgrel=5 +pkgver=1.105 +pkgrel=1 _patch=4 pkgdesc="TCP/IP swiss army knife. OpenBSD variant." arch=('i686' 'x86_64') url="http://packages.debian.org/sid/netcat-openbsd" license=('BSD') -depends=('glib2') +depends=('glib2' 'libbsd') makedepends=('gcc' 'make') source=("http://ftp.debian.org/debian/pool/main/n/netcat-openbsd/netcat-openbsd_${pkgver}.orig.tar.gz" - "http://ftp.debian.org/debian/pool/main/n/netcat-openbsd/netcat-openbsd_${pkgver}-${_patch}.diff.gz") -md5sums=('7238ce15aae43069e96ba7faf03f153e' - '00c65aa22243b76998174c733cbb64cc') + "http://ftp.debian.org/debian/pool/main/n/netcat-openbsd/netcat-openbsd_${pkgver}-${_patch}.debian.tar.gz") +md5sums=('7e67b22f1ad41a1b7effbb59ff28fca1' + '76b88083b77eb2e6f014cdb3020a96ac') build() { - cd $srcdir/netcat-openbsd-${pkgver}.orig - patch -p1 < ../netcat-openbsd_${pkgver}-${_patch}.diff - for i in `cat debian/patches/series` - do - echo "** patch $i" 1>&2 - cat "debian/patches/$i" - done | patch -p1 - make CFLAGS="$CFLAGS -DDEBIAN_VERSION=\"\\\"${pkgrel}\\\"\"" - install -d $pkgdir/usr/bin/ - install -d $pkgdir/usr/share/man/man1/ - install nc $pkgdir/usr/bin/nc.openbsd - install nc.1 $pkgdir/usr/share/man/man1/nc.openbsd.1 - mkdir -p $pkgdir/usr/share/licenses/$pkgname/ - head -n28 netcat.c | tail -n+2 >$pkgdir/usr/share/licenses/$pkgname/LICENSE + cd $srcdir/netcat-openbsd-${pkgver} + for i in `cat ../debian/patches/series`; do + echo "** patch $i" 1>&2 + cat "../debian/patches/$i" + done | patch -p1 + make \ + CFLAGS="$CFLAGS -DDEBIAN_VERSION=\"\\\"${pkgrel}\\\"\" -I/usr/include/libbsd" \ + LDFLAGS="$LDFLAGS -lbsd" +} + +package() { + cd $srcdir/netcat-openbsd-${pkgver} + install -Dm0755 nc $pkgdir/usr/bin/nc.openbsd + install -Dm0644 nc.1 $pkgdir/usr/share/man/man1/nc.openbsd.1 + install -dm0755 $pkgdir/usr/share/licenses/$pkgname/ + head -n28 netcat.c | tail -n+2 >$pkgdir/usr/share/licenses/$pkgname/LICENSE } diff --git a/community/osdbattery/PKGBUILD b/community/osdbattery/PKGBUILD index 62eced75b..8e45267ef 100644 --- a/community/osdbattery/PKGBUILD +++ b/community/osdbattery/PKGBUILD @@ -1,22 +1,31 @@ -# $Id: PKGBUILD 7260 2010-01-03 16:12:31Z ibiru $ +# $Id: PKGBUILD 67719 2012-03-14 08:59:42Z giovanni $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: dibblethewrecker <dibblethewrecker@jiwe.org> + pkgname=osdbattery pkgver=1.4 -pkgrel=3 +pkgrel=4 pkgdesc="Displays battery information in the OSD style" arch=('i686' 'x86_64') url="http://osdbattery.sourceforge.net" -license=("GPL2") +license=('GPL2') depends=('xosd') install=osdbattery.install -source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname\_$pkgver.tar.gz showbatt) -md5sums=('43f9cc0428b6cb25baf1e6e2286e88b1' 'a786cd645135a369c8ed55b837174c92') +source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}_${pkgver}.tar.gz" + 'showbatt') +md5sums=('43f9cc0428b6cb25baf1e6e2286e88b1' + 'a786cd645135a369c8ed55b837174c92') build() { - cd $startdir/src/$pkgname\_$pkgver - make || return 1 - install -D -m755 $startdir/src/$pkgname\_$pkgver/$pkgname $startdir/pkg/usr/bin/$pkgname - install -D -m755 $startdir/src/showbatt $startdir/pkg/usr/bin/showbatt - install -D -m644 $startdir/src/$pkgname\_$pkgver/$pkgname.cfg $startdir/pkg/etc/$pkgname/$pkgname.cfg + cd "${srcdir}/${pkgname}_${pkgver}" + + make +} + +package() { + cd "${srcdir}/${pkgname}_${pkgver}" + + install -D -m755 $pkgname "${pkgdir}/usr/bin/${pkgname}" + install -D -m755 ${srcdir}/showbatt "${pkgdir}/usr/bin/showbatt" + install -D -m644 $pkgname.cfg "${pkgdir}/etc/${pkgname}/${pkgname}.cfg" } -# vim:syntax=sh diff --git a/community/passenger/PKGBUILD b/community/passenger/PKGBUILD index 4fcab1d40..8c9684bc3 100644 --- a/community/passenger/PKGBUILD +++ b/community/passenger/PKGBUILD @@ -1,30 +1,31 @@ -# $Id: PKGBUILD 59679 2011-11-29 10:41:58Z spupykin $ +# $Id: PKGBUILD 67809 2012-03-14 13:50:13Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=passenger pkgver=3.0.11 -pkgrel=1 +pkgrel=2 _pkgdlnr=75548 pkgdesc="mod_rails passenger" arch=('i686' 'x86_64') url="http://www.modrails.com" license=('GPL') depends=('apache' 'ruby' 'ruby-rack' 'curl') -install=$pkgname.install +install=passenger.install options=('!emptydirs') -source=(http://rubyforge.org/frs/download.php/${_pkgdlnr}/$pkgname-$pkgver.tar.gz - $pkgname-install-apache2-module.patch) +source=(http://rubyforge.org/frs/download.php/${_pkgdlnr}/passenger-$pkgver.tar.gz + passenger-install-apache2-module.patch) md5sums=('9186d799e065ccad803cbc0289954f40' '3d04eba10c55a955c378678d5df8497f') build(){ - cd $srcdir/$pkgname-$pkgver + cd $srcdir/passenger-$pkgver patch bin/passenger-install-apache2-module <$srcdir/passenger-install-apache2-module.patch ./bin/passenger-install-apache2-module - mkdir -p $pkgdir/etc/httpd/modules/ - cp ext/apache2/mod_passenger.so $pkgdir/etc/httpd/modules/mod_passenger.so + rake nginx + mkdir -p $pkgdir/usr/lib/passenger/ cp -R * $pkgdir/usr/lib/passenger/ - mkdir -p $pkgdir/usr/lib/httpd - mv $pkgdir/etc/httpd/modules $pkgdir/usr/lib/httpd/modules + + mkdir -p $pkgdir/usr/lib/httpd/modules + ln -sf /usr/lib/passenger/ext/apache2/mod_passenger.so $pkgdir/usr/lib/httpd/modules/mod_passenger.so } diff --git a/community/passenger/passenger.install b/community/passenger/passenger.install index 9c683e7cd..6faaab1b6 100644 --- a/community/passenger/passenger.install +++ b/community/passenger/passenger.install @@ -1,9 +1,9 @@ post_install() { echo "Please edit your Apache configuration file, and add these lines:" echo "" - echo "LoadModule passenger_module /var/aur/passenger3/src/passenger-3.0.0/ext/apache2/mod_passenger.so" - echo "PassengerRoot /var/aur/passenger3/src/passenger-3.0.0" - echo "PassengerRuby /opt/ruby1.8/bin/ruby" + echo "LoadModule passenger_module /usr/lib/httpd/modules/mod_passenger.so" + echo "PassengerRoot /usr/lib/passenger" + echo "PassengerRuby /usr/bin/ruby" echo "" echo "After you restart Apache, you are ready to deploy any number of Ruby on Rails" echo "applications on Apache, without any further Ruby on Rails-specific" @@ -28,5 +28,5 @@ post_install() { echo "And that's it! You may also want to check the Users Guide for security and" echo "optimization tips, troubleshooting and other useful information:" echo "" - echo "/var/aur/passenger3/src/passenger-3.0.0/doc/Users guide Apache.html" + echo "/usr/lib/passenger/doc/Users guide Apache.html" } diff --git a/community/pdf2svg/PKGBUILD b/community/pdf2svg/PKGBUILD index c15c7af0f..ad3c3d259 100644 --- a/community/pdf2svg/PKGBUILD +++ b/community/pdf2svg/PKGBUILD @@ -1,16 +1,18 @@ +# $Id: PKGBUILD 67717 2012-03-14 08:30:56Z giovanni $ # Maintainer: Stefan Husmann <stefan-husmann@t-online.de> # Contributor: corvolino <corvolino@archlinux.com.br> # Contributor: Joel Schaerer pkgname=pdf2svg pkgver=0.2.1 -pkgrel=6 +pkgrel=7 pkgdesc="A pdf to svg converter" arch=('i686' 'x86_64') url="http://www.cityinthesky.co.uk/pdf2svg.html" license=('GPL') depends=('poppler-glib' 'gtk2' 'glib2') source=("http://www.cityinthesky.co.uk/_media/opensource/$pkgname-$pkgver.tar.gz") +md5sums=('59b3b9768166f73b77215e95d91f0a9d') build() { cd "$srcdir/$pkgname-$pkgver" @@ -22,6 +24,3 @@ package() { cd "$srcdir/$pkgname-$pkgver" make DESTDIR="$pkgdir/" install } - - -md5sums=('59b3b9768166f73b77215e95d91f0a9d') diff --git a/community/pspshrink/PKGBUILD b/community/pspshrink/PKGBUILD index 9b6ba9540..af5b54a16 100644 --- a/community/pspshrink/PKGBUILD +++ b/community/pspshrink/PKGBUILD @@ -1,22 +1,30 @@ -#$Id: PKGBUILD 6008 2009-11-25 09:49:07Z angvp $ -# Maintainer: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve> +# $Id: PKGBUILD 67730 2012-03-14 09:57:46Z giovanni $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve> # Contributor: Tomas Acauan Schertel <tschertel@gmail.com> + pkgname=pspshrink pkgver=1.1.2 -pkgrel=2 +pkgrel=3 pkgdesc="PSP Shrink allows you to shrink your isos to the cso format." arch=('i686' 'x86_64') url="http://code.google.com/p/pspshrink/" license=('GPL2') -makedepends=(gtkmm) +makedepends=('gtkmm') optdepends=('gtkmm: To use pspshrinkui ') install=$pkgname.install source=(http://pspshrink.googlecode.com/files/$pkgname-$pkgver.tar.gz) md5sums=('c9f7dc58c983016047ceebbacb9856e9') build() { - cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="$pkgdir" install || return 1 + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install } diff --git a/community/pympd/PKGBUILD b/community/pympd/PKGBUILD index 742a74a63..d83139b8c 100644 --- a/community/pympd/PKGBUILD +++ b/community/pympd/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 27187 2010-09-18 15:58:45Z schuay $ +# $Id: PKGBUILD 67738 2012-03-14 10:05:54Z giovanni $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Allan McRae <allan@archlinux.org> # Contributor: whatah <whatah@gmail.com> @@ -6,18 +6,18 @@ pkgname=pympd pkgver=0.08.1 -pkgrel=2 +pkgrel=3 pkgdesc="A Rhythmbox-like PyGTK+ client for Music Player Daemon" arch=('i686' 'x86_64') url="http://pympd.sourceforge.net/" license=('GPL') -depends=('libglade' 'pygtk>=2.6') +depends=('libglade' 'pygtk') makedepends=('pkgconfig') options=('!emptydirs') source=(http://pympd.sourceforge.net/files/$pkgname-$pkgver.tar.gz) md5sums=('388c2882ffbacffb27b491441a2b2a23') -build() { +package() { cd ${srcdir}/$pkgname-$pkgver # python2 fix @@ -30,4 +30,3 @@ build() { make PREFIX=/usr DESTDIR=${pkgdir} install } - diff --git a/community/pysol-sound-server/PKGBUILD b/community/pysol-sound-server/PKGBUILD index b3f7c814c..05a3faafa 100644 --- a/community/pysol-sound-server/PKGBUILD +++ b/community/pysol-sound-server/PKGBUILD @@ -1,16 +1,15 @@ -# $Id: PKGBUILD 25949 2010-09-12 02:51:50Z ebelanger $ -# Maintainer: Eric Belanger <eric@archlinux.org> +# $Id: PKGBUILD 67709 2012-03-14 07:44:01Z ebelanger $ +# Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=pysol-sound-server pkgver=3.01 -pkgrel=7 +pkgrel=8 pkgdesc="A Python extension module that plays WAV samples together with MP3 or MOD background music" arch=('i686' 'x86_64') url="http://www.pysol.org/" license=('GPL' 'LGPL') depends=('python2' 'smpeg') source=(http://www.pysol.org/download/pysol/$pkgname-$pkgver.tar.bz2) -md5sums=('5ef963dbf5d5c2f032a7e5a90afb536f') sha1sums=('010cc2d9634a1796fb9d44c8925b4b62c9568611') build() { diff --git a/community/pystatgrab/PKGBUILD b/community/pystatgrab/PKGBUILD index 5ea3fbbde..661976425 100644 --- a/community/pystatgrab/PKGBUILD +++ b/community/pystatgrab/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 27121 2010-09-17 15:17:17Z schuay $ +# $Id: PKGBUILD 67748 2012-03-14 10:19:17Z giovanni $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Hugo Ideler <hugoideler@dse.nl> pkgname=pystatgrab pkgver=0.5 -pkgrel=4 +pkgrel=5 pkgdesc="Python bindings for libstatgrab" arch=('i686' 'x86_64') url="http://www.i-scream.org/pystatgrab" diff --git a/community/python-pysqlite-legacy/PKGBUILD b/community/python-pysqlite-legacy/PKGBUILD index c87ce7793..308e229be 100644 --- a/community/python-pysqlite-legacy/PKGBUILD +++ b/community/python-pysqlite-legacy/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 26298 2010-09-14 17:18:19Z schuay $ +# $Id: PKGBUILD 67757 2012-03-14 10:40:45Z giovanni $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor : Aaron Griffin <aaron.archlinux.org> pkgname=python-pysqlite-legacy pkgver=1.0.1 -pkgrel=7 +pkgrel=8 pkgdesc="A Python DB-API 2.0 interface for the legacy SQLite 2" arch=('i686' 'x86_64') url="http://initd.org/tracker/pysqlite" diff --git a/community/qingy/PKGBUILD b/community/qingy/PKGBUILD index 24be5d84b..a9ac59201 100644 --- a/community/qingy/PKGBUILD +++ b/community/qingy/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 35052 2010-12-14 22:08:35Z jlichtblau $ +# $Id: PKGBUILD 67766 2012-03-14 10:49:05Z giovanni $ # Maintainer: Eric Belanger <eric@archlinux.org> # Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Eric Belanger <eric@archlinux.org> pkgname=qingy pkgver=1.0.0 -pkgrel=1 +pkgrel=2 pkgdesc="A DirectFB getty replacement" arch=('i686' 'x86_64') url="http://qingy.sourceforge.net/" @@ -14,8 +14,9 @@ depends=('directfb' 'pam' 'openssl' 'ncurses' 'libxss') backup=('etc/qingy/settings' 'etc/qingy/welcomes') options=('!libtool') install=$pkgname.install -source=(http://downloads.sourceforge.net/sourceforge/qingy/${pkgname}-${pkgver}.tar.bz2 \ - qingy.logrotate README) +source=("http://downloads.sourceforge.net/sourceforge/qingy/${pkgname}-${pkgver}.tar.bz2" + 'qingy.logrotate' + 'README') md5sums=('1e0912655e240adfd0ce5ced30bbc685' 'a9bdfd0ac9f29380eafa97a4a056789d' 'f54865d71ea34e2f68e53ef60248701b') diff --git a/community/qsvn/PKGBUILD b/community/qsvn/PKGBUILD index ebb582bce..5ade74953 100644 --- a/community/qsvn/PKGBUILD +++ b/community/qsvn/PKGBUILD @@ -1,30 +1,37 @@ -# $Id: PKGBUILD 9075 2010-01-23 12:43:08Z foutrelis $ +# $Id: PKGBUILD 67770 2012-03-14 11:19:01Z giovanni $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Jakub Schmidtke <sjakub-at-gmail.com> pkgname=qsvn pkgver=0.8.3 -pkgrel=2 +pkgrel=3 pkgdesc="Qt4 GUI for Subversion." arch=('i686' 'x86_64') url="http://www.anrichter.net/projects/qsvn/" license=('GPL') -depends=('qt' 'subversion' 'db>=4.7') +depends=('qt' 'subversion') makedepends=('cmake') #options=('!makeflags') -source=(http://www.anrichter.net/projects/qsvn/chrome/site/$pkgname-$pkgver-src.tar.gz - lib64-fix.patch) +source=("http://www.anrichter.net/projects/qsvn/chrome/site/$pkgname-$pkgver-src.tar.gz" + 'lib64-fix.patch') md5sums=('cfdc9dab7c5f1cbf20b249901e10c04e' 'f2833303f01331538d1f6f2150b58e4f') + build() { cd ${srcdir}/$pkgname-$pkgver/src - patch -Np2 -i $srcdir/lib64-fix.patch || return 1 - cmake -D CMAKE_INSTALL_PREFIX=/usr/ -D CMAKE_BUILD_TYPE="Release" ../src || return 1 - make || return 1 + patch -Np2 -i "${srcdir}/lib64-fix.patch" + + cmake -D CMAKE_INSTALL_PREFIX=/usr/ -D CMAKE_BUILD_TYPE="Release" ../src + make +} + +package() { + cd ${srcdir}/$pkgname-$pkgver/src + make DESTDIR=${pkgdir} install -#desktop file + #desktop file install -D -m644 ${srcdir}/$pkgname-$pkgver/src/$pkgname.desktop \ - ${pkgdir}/usr/share/applications/$pkgname.desktop || return 1 + ${pkgdir}/usr/share/applications/$pkgname.desktop } diff --git a/community/qtmpc/PKGBUILD b/community/qtmpc/PKGBUILD index 95900ba1a..4755f681e 100644 --- a/community/qtmpc/PKGBUILD +++ b/community/qtmpc/PKGBUILD @@ -1,24 +1,27 @@ -# $Id: PKGBUILD 47054 2011-05-14 19:45:44Z jlichtblau $ +# $Id: PKGBUILD 67768 2012-03-14 11:08:26Z giovanni $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Shaika-Dzari <shaikadzari at gmail dot com> pkgname=qtmpc pkgver=0.6.1 -pkgrel=2 +pkgrel=3 pkgdesc="Qt4-based front-end for MPD" arch=('i686' 'x86_64') url="http://qtmpc.lowblog.nl/" license=('GPL') -depends=('hicolor-icon-theme' 'kdebase-runtime' 'qt') +depends=('kdebase-runtime') makedepends=('automoc4' 'cmake') install=$pkgname.install -changelog=$pkgname.changelog -source=(http://files.lowblog.nl/$pkgname/QtMPC-$pkgver.tar.bz2) -sha256sums=('82287a26788b36d49db26518b66203f332cf686eefb81ee2d9be095e61123a62') +source=("http://files.lowblog.nl/$pkgname/QtMPC-$pkgver.tar.bz2" + 'qtmpc-0.6.1-underlinking.patch') +sha256sums=('82287a26788b36d49db26518b66203f332cf686eefb81ee2d9be095e61123a62' + '8295218ebeeb14372c36c34510a9eed7210e82d8e474ef3caae1bd58327780d3') build() { cd ${srcdir}/QtMPC + patch -Np1 -i "${srcdir}/qtmpc-0.6.1-underlinking.patch" + cmake . -DCMAKE_INSTALL_PREFIX=/usr make } diff --git a/community/qtmpc/qtmpc-0.6.1-underlinking.patch b/community/qtmpc/qtmpc-0.6.1-underlinking.patch new file mode 100644 index 000000000..881187d1f --- /dev/null +++ b/community/qtmpc/qtmpc-0.6.1-underlinking.patch @@ -0,0 +1,40 @@ +diff -ruN QtMPC-0-vanilla/CMakeLists.txt QtMPC/CMakeLists.txt +--- QtMPC-0-vanilla/CMakeLists.txt 2010-11-02 17:00:58.000000000 +0100 ++++ QtMPC/CMakeLists.txt 2011-11-20 23:27:18.000000000 +0100 +@@ -81,6 +81,11 @@ + + # this command finds Qt4 libraries and sets all required variables + FIND_PACKAGE( Qt4 REQUIRED ) ++ ++# add some useful macros and variables ++# (QT_USE_FILE is a variable defined by FIND_PACKAGE( Qt4 ) that contains a path to CMake script) ++INCLUDE( ${QT_USE_FILE} ) ++ + FIND_PACKAGE( KDE4 ) + + IF( NOT DEFINED WANT_KDE_SUPPORT ) +@@ -134,12 +139,6 @@ + ADD_DEFINITIONS( -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -Wall -Wextra ) + ENDIF( NOT ENABLE_KDE_SUPPORT ) + +-# add some useful macros and variables +-# (QT_USE_FILE is a variable defined by FIND_PACKAGE( Qt4 ) that contains a path to CMake script) +-IF( NOT ENABLE_KDE_SUPPORT ) +- INCLUDE( ${QT_USE_FILE} ) +-ENDIF( NOT ENABLE_KDE_SUPPORT ) +- + ADD_SUBDIRECTORY( external/libmaia ) + + # Compile the resource files +@@ -169,9 +168,9 @@ + + # Last but not least, link everything. Based on whether we are using KDE or not. + IF( ENABLE_KDE_SUPPORT ) +- TARGET_LINK_LIBRARIES( QtMPC ${QT_LIBRARIES} ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBS} Maia ) ++ TARGET_LINK_LIBRARIES( QtMPC Maia ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBS} ${QT_LIBRARIES} ) + ELSE( ENABLE_KDE_SUPPORT ) +- TARGET_LINK_LIBRARIES( QtMPC ${QT_LIBRARIES} Maia ) ++ TARGET_LINK_LIBRARIES( QtMPC Maia ${QT_LIBRARIES} ) + ENDIF( ENABLE_KDE_SUPPORT ) + + IF( ENABLE_KDE_SUPPORT ) diff --git a/community/shake/PKGBUILD b/community/shake/PKGBUILD index cc8f72da6..55336da5f 100644 --- a/community/shake/PKGBUILD +++ b/community/shake/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 43460 2011-03-26 10:32:40Z jlichtblau $ +# $Id: PKGBUILD 67776 2012-03-14 11:42:05Z giovanni $ # Maintainer : Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor : Allan McRae <allan@archlinux.org> # Contributor: Julien MISCHKOWITZ <wain@archlinux.fr> pkgname=shake pkgver=0.999 -pkgrel=1 +pkgrel=2 pkgdesc="Userspace defragmenter that can be run while system is in use" arch=('i686' 'x86_64') url="http://vleu.net/shake/" diff --git a/community/shake/shake.install b/community/shake/shake.install index 572430c7f..0ca53862b 100644 --- a/community/shake/shake.install +++ b/community/shake/shake.install @@ -3,6 +3,5 @@ post_install() { } post_upgrade() { - post_install + post_install } - diff --git a/community/shapelib/PKGBUILD b/community/shapelib/PKGBUILD index 7021f6efa..c421ae23a 100644 --- a/community/shapelib/PKGBUILD +++ b/community/shapelib/PKGBUILD @@ -1,9 +1,10 @@ -# $Id: PKGBUILD 21347 2010-07-16 01:42:18Z tdziedzic $ -#Contributor: Bob Finch <w9ya@arrl.net> +# $Id: PKGBUILD 67779 2012-03-14 11:48:39Z giovanni $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Contributor: Bob Finch <w9ya@arrl.net> pkgname=shapelib pkgver=1.2.10 -pkgrel=4 +pkgrel=5 pkgdesc='simple C API for reading and writing ESRI Shapefiles' arch=('i686' 'x86_64') url='http://shapelib.maptools.org/' @@ -19,9 +20,13 @@ build() { sed -i -e s:'-O2':"${CFLAGS}": Makefile make lib +} + +package() { + cd ${pkgname}-${pkgver} sed -i -e s:/usr/local:${pkgdir}/usr: Makefile sed -i -e s:/usr/bin/install:/bin/install: Makefile make lib_install - install -D -m644 ../LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + install -D -m644 ${srcdir}/LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE } diff --git a/community/sunpinyin/PKGBUILD b/community/sunpinyin/PKGBUILD index 55c909ffe..572cd76a2 100644 --- a/community/sunpinyin/PKGBUILD +++ b/community/sunpinyin/PKGBUILD @@ -1,12 +1,14 @@ +# $Id: PKGBUILD 67784 2012-03-14 12:19:33Z giovanni $ # Maintainer: Thomas Dziedzic < gostrc at gmail > pkgname=sunpinyin pkgver=2.0.3 -pkgrel=1 -pkgdesc='SunPinYin is a Statistical Language Model based pinyin IME by Sun.' +pkgrel=2 +pkgdesc="Statistical Language Model based pinyin IME by Sun" arch=('i686' 'x86_64') -url='http://sunpinyin.googlecode.com' +url="http://sunpinyin.googlecode.com" license=('LGPL') +depends=('sqlite3' 'gcc-libs') makedepends=('scons') source=("http://sunpinyin.googlecode.com/files/sunpinyin-${pkgver}.tar.gz") md5sums=('bc1cd4d7d48a73276dfe4c9f5a434cc7') diff --git a/community/tilda/PKGBUILD b/community/tilda/PKGBUILD index 7e58700e9..6878c3375 100644 --- a/community/tilda/PKGBUILD +++ b/community/tilda/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 54949 2011-08-28 17:21:28Z jlichtblau $ +# $Id: PKGBUILD 67790 2012-03-14 12:36:28Z giovanni $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org> # Contributor: William Rea <sillywilly@gmail.com> pkgname=tilda pkgver=0.9.6 -pkgrel=4 +pkgrel=5 pkgdesc="Linux terminal based on classic terminals from first person shooter games" arch=('i686' 'x86_64') url="http://tilda.sourceforge.net" @@ -20,14 +20,14 @@ sha256sums=('b3bd0f63eb83a5001ef26056ca116e5f8005d454f8f82a94f334868862068411' build() { cd ${srcdir}/$pkgname-$pkgver - patch -Np1 -i ${srcdir}/fix.patch + patch -Np1 -i "${srcdir}/fix.patch" ./configure --prefix=/usr make } package() { - cd ${srcdir}/tilda-$pkgver + cd ${srcdir}/$pkgname-$pkgver make DESTDIR=${pkgdir} install } diff --git a/community/tuxcards/PKGBUILD b/community/tuxcards/PKGBUILD index 929269c6e..a1b216c8d 100644 --- a/community/tuxcards/PKGBUILD +++ b/community/tuxcards/PKGBUILD @@ -1,18 +1,17 @@ -# $Id: PKGBUILD 27541 2010-09-25 02:00:20Z ebelanger $ -# Maintainer: Eric Belanger <eric@archlinux.org> +# $Id: PKGBUILD 67712 2012-03-14 07:57:27Z ebelanger $ +# Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=tuxcards pkgver=2.2.1 -pkgrel=1 +pkgrel=2 pkgdesc="A hierarchical notebook to enter and manage notes and ideas in a structured manner" arch=('i686' 'x86_64') url="http://www.tuxcards.de" license=('GPL') depends=('qt') -changelog=ChangeLog source=(http://www.tuxcards.de/src/tuxcards-${pkgver}/${pkgname}-${pkgver}.tar.gz tuxcards.desktop) -md5sums=('e10630d0ce8038e75aeaef228e10e5d9' 'c6d9d6752b8e7affb733b0f9a46a176c') -sha1sums=('c0410f28b51d58b4f372ffae0ce0d2a7329f2c45' '565419ac6b24d61fc038462a783cb80d44b4fe7e') +sha1sums=('c0410f28b51d58b4f372ffae0ce0d2a7329f2c45' + '565419ac6b24d61fc038462a783cb80d44b4fe7e') build() { cd "${srcdir}/${pkgname}" diff --git a/community/tuxcmd-modules/PKGBUILD b/community/tuxcmd-modules/PKGBUILD index ea811c041..39a8b5dd2 100644 --- a/community/tuxcmd-modules/PKGBUILD +++ b/community/tuxcmd-modules/PKGBUILD @@ -1,6 +1,9 @@ +# $Id: PKGBUILD 67804 2012-03-14 13:37:17Z giovanni $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + pkgname=tuxcmd-modules pkgver=0.6.70 -pkgrel=1 +pkgrel=2 pkgdesc='Modules for Tux Commander' arch=('i686' 'x86_64') url='http://tuxcmd.sourceforge.net/' diff --git a/community/tuxcmd/PKGBUILD b/community/tuxcmd/PKGBUILD index 488cddc44..5eefb36b3 100644 --- a/community/tuxcmd/PKGBUILD +++ b/community/tuxcmd/PKGBUILD @@ -1,11 +1,14 @@ +# $Id: PKGBUILD 67802 2012-03-14 13:31:15Z giovanni $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + pkgname=tuxcmd pkgver=0.6.70 -pkgrel=3 +pkgrel=4 pkgdesc='A GTK2 file manager with two panels' arch=('i686' 'x86_64') url='http://tuxcmd.sourceforge.net/' license=('GPL') -depends=('gtk2') +depends=('gtk2' 'hicolor-icon-theme') makedepends=('fpc' 'desktop-file-utils') optdepends=('gnome-vfs: support for gvfs' 'tuxcmd-modules: modules for tuxcmd') diff --git a/community/tuxcmd/tuxcmd.install b/community/tuxcmd/tuxcmd.install index f3cb9db7c..6507863a5 100644 --- a/community/tuxcmd/tuxcmd.install +++ b/community/tuxcmd/tuxcmd.install @@ -3,10 +3,9 @@ post_install() { } post_upgrade() { - post_install $1 + post_install } post_remove() { - post_install $1 + post_install } - diff --git a/community/uudeview/PKGBUILD b/community/uudeview/PKGBUILD index 8626aa347..1123c1614 100644 --- a/community/uudeview/PKGBUILD +++ b/community/uudeview/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 65361 2012-02-21 02:21:19Z spupykin $ +# $Id: PKGBUILD 67722 2012-03-14 09:04:31Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: kmaster <kmaster12@sasktel.net> pkgname=uudeview pkgver=0.5.20 pkgrel=10 -pkgdesc="UUDeview helps transmitting & recieving binary files using mail or newsgroups. Includes library files." +pkgdesc="UUDeview helps transmitting & receiving binary files using mail or newsgroups. Includes library files." arch=('i686' 'x86_64') url="http://www.fpx.de/fp/Software/UUDeview/" license=('GPL') diff --git a/community/virtualbox-modules/PKGBUILD b/community/virtualbox-modules/PKGBUILD index dbaaa736e..2cfa18b6a 100644 --- a/community/virtualbox-modules/PKGBUILD +++ b/community/virtualbox-modules/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 67305 2012-03-08 13:29:02Z ibiru $ +# $Id: PKGBUILD 67731 2012-03-14 09:59:00Z ibiru $ #Maintainer: Ionut Biru <ibiru@archlinux.org> pkgbase=virtualbox-modules pkgname=('virtualbox-modules' 'virtualbox-archlinux-modules') -pkgver=4.1.8 -pkgrel=5 +pkgver=4.1.10 +pkgrel=1 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL') @@ -12,7 +12,7 @@ makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libpng' 'l [[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc') source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2 LocalConfig.kmk 60-vboxguest.rules) -md5sums=('2092bba46baa62fab5520d67dee2ece8' +md5sums=('263e495ef3a7ab75943af28d446ee702' '4c88bd122677a35f68abd76eb01b378b' 'ed1341881437455d9735875ddf455fbe') @@ -23,7 +23,7 @@ export KERN_DIR=/lib/modules/${_kernver}/build export KERN_INCL=/usr/src/linux-${_kernver}/include/ build() { - cd "$srcdir/VirtualBox-${pkgver}_OSE" + cd "$srcdir/VirtualBox-${pkgver}" cp "$srcdir/LocalConfig.kmk" . @@ -43,8 +43,8 @@ build() { source ./env.sh kmk all - make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" - make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" + make -C "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + make -C "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" } package_virtualbox-archlinux-modules(){ @@ -55,9 +55,9 @@ package_virtualbox-archlinux-modules(){ replaces=('virtualbox-guest-modules') conflicts=('virtualbox-guest-modules') - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" for module in vboxguest.ko vboxsf.ko vboxvideo.ko; do install -D -m644 ${module} \ @@ -78,10 +78,10 @@ package_virtualbox-modules(){ install=virtualbox-modules.install depends=('linux>=3.2' 'linux<3.3') - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" install -D -m644 vboxdrv.ko \ "$pkgdir/lib/modules/${_extramodules}/vboxdrv.ko" diff --git a/community/xmms-volnorm/PKGBUILD b/community/xmms-volnorm/PKGBUILD index 2d8003258..01e680d1a 100644 --- a/community/xmms-volnorm/PKGBUILD +++ b/community/xmms-volnorm/PKGBUILD @@ -1,25 +1,23 @@ -# $Id: PKGBUILD 18019 2010-05-29 09:10:47Z ebelanger $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: forest76 <forestt@poczta.onet.pl> +# $Id: PKGBUILD 67715 2012-03-14 08:23:40Z ebelanger $ +# Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=xmms-volnorm pkgver=0.8.3 -pkgrel=4 +pkgrel=5 pkgdesc="A XMMS plug-in to normalize the volume" arch=('i686' 'x86_64') url="http://volnorm.sourceforge.net/" license=('GPL') +depends=('xmms') +groups=('xmms-plugins') options=('!libtool') -depends=('glibc' 'xmms') -groups=('xmms-plugins' 'xmms-effect-plugins') source=(http://downloads.sourceforge.net/volnorm/volnorm-${pkgver}.tar.gz) -md5sums=('369e6b814143a94ff4d6666734e6af9a') sha1sums=('6c5ba86aed257514c6f94febeea1668f1b18a04d') build() { cd "${srcdir}/volnorm-${pkgver}" ./configure --prefix=/usr - make || return 1 + make } package() { diff --git a/community/zathura-djvu/PKGBUILD b/community/zathura-djvu/PKGBUILD new file mode 100644 index 000000000..4d6635ff7 --- /dev/null +++ b/community/zathura-djvu/PKGBUILD @@ -0,0 +1,21 @@ +# $Id: PKGBUILD 67824 2012-03-14 16:28:32Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: karnath <karnathtorjian@gmail.com> + +pkgname=zathura-djvu +pkgver=0.1.0 +pkgrel=1 +pkgdesc="Adds DjVu support to zathura by using the djvulibre library" +arch=('i686' 'x86_64') +url="https://pwmt.org/projects/zathura/plugins/zathura-djvu/" +license=('custom') +depends=('djvulibre' 'zathura') +source=(https://pwmt.org/projects/zathura/plugins/download/zathura-djvu-$pkgver.tar.gz) +md5sums=('be4d5966ba353f83b261a389789e0260') + +build(){ + cd ${srcdir}/zathura-djvu-$pkgver + make + make DESTDIR="$pkgdir" install +} + diff --git a/community/zathura-pdf-poppler/PKGBUILD b/community/zathura-pdf-poppler/PKGBUILD new file mode 100644 index 000000000..a461d153a --- /dev/null +++ b/community/zathura-pdf-poppler/PKGBUILD @@ -0,0 +1,21 @@ +# $Id: PKGBUILD 67819 2012-03-14 16:22:14Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: karnath <karnathtorjian@gmail.com> + +pkgname=zathura-pdf-poppler +pkgver=0.1.1 +pkgrel=1 +pkgdesc="Adds pdf support to zathura by using the poppler engine" +arch=('i686' 'x86_64') +url="https://pwmt.org/projects/zathura/plugins/zathura-pdf-poppler/" +license=('custom') +depends=('poppler-glib' 'zathura') +source=(https://pwmt.org/projects/zathura/plugins/download/zathura-pdf-poppler-$pkgver.tar.gz) +md5sums=('a43db96a893e0b37c446f23202b930d2') + +build(){ + cd ${srcdir}/zathura-pdf-poppler-$pkgver + make + make DESTDIR="$pkgdir" install +} + diff --git a/community/zathura-ps/PKGBUILD b/community/zathura-ps/PKGBUILD new file mode 100644 index 000000000..89809661f --- /dev/null +++ b/community/zathura-ps/PKGBUILD @@ -0,0 +1,21 @@ +# $Id: PKGBUILD 67819 2012-03-14 16:22:14Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: karnath <karnathtorjian@gmail.com> + +pkgname=zathura-ps +pkgver=0.1.0 +pkgrel=1 +pkgdesc="Adds ps support to zathura by using the libspectre library" +arch=('i686' 'x86_64') +url="https://pwmt.org/projects/zathura/plugins/zathura-ps/" +license=('custom') +depends=('libspectre' 'zathura') +source=(https://pwmt.org/projects/zathura/plugins/download/zathura-ps-$pkgver.tar.gz) +md5sums=('103d2e25529492cdba702484aab643f5') + +build(){ + cd ${srcdir}/zathura-ps-$pkgver + make + make DESTDIR="$pkgdir" install +} + diff --git a/community/zathura/PKGBUILD b/community/zathura/PKGBUILD index 48296a9d0..dca7894fe 100644 --- a/community/zathura/PKGBUILD +++ b/community/zathura/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 67648 2012-03-13 15:18:47Z spupykin $ +# $Id: PKGBUILD 67724 2012-03-14 09:06:05Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: ML <neldoreth> pkgname=zathura pkgver=0.1.1 -pkgrel=2 -pkgdesc="a PDF viewer" +pkgrel=3 +pkgdesc="a document viewer" arch=('i686' 'x86_64') url="http://pwmt.org/projects/zathura/" license=('custom') -depends=('girara-gtk3' 'cairo' 'sqlite3') +depends=('girara-gtk2' 'cairo' 'sqlite3') makedepends=('docutils') install=zathura.install source=(http://pwmt.org/projects/zathura/download/zathura-$pkgver.tar.gz) @@ -17,7 +17,7 @@ md5sums=('1379dfb1657b323da3b521ed251bb87a') build() { cd $srcdir/zathura-$pkgver - make ZATHURA_GTK_VERSION=3 + make ZATHURA_GTK_VERSION=2 } package() { diff --git a/core/libedit/PKGBUILD b/core/libedit/PKGBUILD index 280b04ec4..3ea5bbf48 100644 --- a/core/libedit/PKGBUILD +++ b/core/libedit/PKGBUILD @@ -1,19 +1,19 @@ -# $Id: PKGBUILD 135574 2011-08-15 23:39:35Z bisson $ +# $Id: PKGBUILD 153493 2012-03-15 00:07:12Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Maintainer: Vesa Kaihlavirta <vesa@archlinux.org> # Contributor: Roman Cheplyaka <roma@ro-che.info> pkgname=libedit -pkgver=20110802_3.0 +pkgver=20120311_3.0 pkgrel=1 pkgdesc='Command line editor library providing generic line editing, history, and tokenization functions' -arch=('i686' 'x86_64') url='http://www.thrysoee.dk/editline/' +arch=('i686' 'x86_64') license=('BSD') depends=('ncurses') options=('!libtool') source=("http://www.thrysoee.dk/editline/libedit-${pkgver/_/-}.tar.gz") -sha1sums=('b06e3cf248a4235617c71454e15ca3a54a61d467') +sha1sums=('2a4be10c33af5e3b09c1d3c8829b02fe5b41796b') build() { cd "${srcdir}/${pkgname}-${pkgver/_/-}" @@ -26,5 +26,5 @@ package() { make prefix="${pkgdir}"/usr install cp "${pkgdir}"/usr/share/man/man3/editline.3 "${pkgdir}"/usr/share/man/man3/el.3 - install -D -m0644 COPYING "${pkgdir}"/usr/share/licenses/libedit/LICENSE + install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/libedit/LICENSE } diff --git a/core/mkinitcpio-busybox/PKGBUILD b/core/mkinitcpio-busybox/PKGBUILD index eb4f651d9..436add0c5 100644 --- a/core/mkinitcpio-busybox/PKGBUILD +++ b/core/mkinitcpio-busybox/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 141112 2011-10-24 09:59:21Z dreisner $ +# $Id: PKGBUILD 153485 2012-03-14 23:26:22Z tomegun $ # Maintainer: Dave Reisner <dreisner@archlinux.org> # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=mkinitcpio-busybox -pkgver=1.19.2 -pkgrel=1 +pkgver=1.19.4 +pkgrel=2 pkgdesc="base initramfs tools" arch=('i686' 'x86_64') url="http://www.busybox.net/" @@ -13,8 +13,8 @@ depends=('glibc') options=('!buildflags') source=("http://busybox.net/downloads/busybox-$pkgver.tar.bz2" 'config') -sha256sums=('ea7ec9b6df70b8c528f4a2b6300e9913431c7223308fb08dfafa7508d75a0cb9' - '21ae2cd21e33ba1ef9500a9b14273579fc554bf995cfd7907fb3fe94fc162cf8') +sha256sums=('9b853406da61ffb59eb488495fe99cbb7fb3dd29a31307fcfa9cf070543710ee' + '28dc775e12c40718b48e1dd6a63544ca9d8aa128f786577b27e4df73e1e8766a') build() { cd "$srcdir/busybox-$pkgver" @@ -28,7 +28,7 @@ build() { } package() { - install -Dm755 "$srcdir/busybox-$pkgver/busybox" "$pkgdir/lib/initcpio/busybox" + install -Dm755 "$srcdir/busybox-$pkgver/busybox" "$pkgdir/usr/lib/initcpio/busybox" } # vim:set ts=2 sw=2 et: diff --git a/core/mkinitcpio-busybox/config b/core/mkinitcpio-busybox/config index 86160a203..3cd776e03 100644 --- a/core/mkinitcpio-busybox/config +++ b/core/mkinitcpio-busybox/config @@ -486,14 +486,14 @@ CONFIG_LAST_SYSTEM_ID=0 # # Linux Module Utilities # -CONFIG_MODINFO=y +# CONFIG_MODINFO is not set # CONFIG_MODPROBE_SMALL is not set # CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set # CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set -CONFIG_INSMOD=y -CONFIG_RMMOD=y -CONFIG_LSMOD=y -CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y +# CONFIG_INSMOD is not set +# CONFIG_RMMOD is not set +# CONFIG_LSMOD is not set +# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set # CONFIG_MODPROBE is not set # CONFIG_FEATURE_MODPROBE_BLACKLIST is not set # CONFIG_DEPMOD is not set @@ -508,11 +508,11 @@ CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y # CONFIG_FEATURE_INSMOD_LOADINKMEM is not set # CONFIG_FEATURE_INSMOD_LOAD_MAP is not set # CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set -CONFIG_FEATURE_CHECK_TAINTED_MODULE=y +# CONFIG_FEATURE_CHECK_TAINTED_MODULE is not set # CONFIG_FEATURE_MODUTILS_ALIAS is not set # CONFIG_FEATURE_MODUTILS_SYMBOLS is not set -CONFIG_DEFAULT_MODULES_DIR="" -CONFIG_DEFAULT_DEPMOD_FILE="" +# CONFIG_DEFAULT_MODULES_DIR is not set +# CONFIG_DEFAULT_DEPMOD_FILE is not set # # Linux System Utilities @@ -570,15 +570,15 @@ CONFIG_LOSETUP=y # CONFIG_MKSWAP is not set # CONFIG_FEATURE_MKSWAP_UUID is not set # CONFIG_MORE is not set -CONFIG_MOUNT=y -CONFIG_FEATURE_MOUNT_FAKE=y -CONFIG_FEATURE_MOUNT_VERBOSE=y -CONFIG_FEATURE_MOUNT_HELPERS=y -CONFIG_FEATURE_MOUNT_LABEL=y -CONFIG_FEATURE_MOUNT_NFS=y -CONFIG_FEATURE_MOUNT_CIFS=y -CONFIG_FEATURE_MOUNT_FLAGS=y -CONFIG_FEATURE_MOUNT_FSTAB=y +# CONFIG_MOUNT is not set +# CONFIG_FEATURE_MOUNT_FAKE is not set +# CONFIG_FEATURE_MOUNT_VERBOSE is not set +# CONFIG_FEATURE_MOUNT_HELPERS is not set +# CONFIG_FEATURE_MOUNT_LABEL is not set +# CONFIG_FEATURE_MOUNT_NFS is not set +# CONFIG_FEATURE_MOUNT_CIFS is not set +# CONFIG_FEATURE_MOUNT_FLAGS is not set +# CONFIG_FEATURE_MOUNT_FSTAB is not set # CONFIG_PIVOT_ROOT is not set # CONFIG_RDATE is not set # CONFIG_RDEV is not set @@ -589,7 +589,7 @@ CONFIG_FEATURE_MOUNT_FSTAB=y # CONFIG_SETARCH is not set # CONFIG_SWAPONOFF is not set # CONFIG_FEATURE_SWAPON_PRI is not set -CONFIG_SWITCH_ROOT=y +# CONFIG_SWITCH_ROOT is not set CONFIG_UMOUNT=y CONFIG_FEATURE_UMOUNT_ALL=y @@ -599,7 +599,7 @@ CONFIG_FEATURE_UMOUNT_ALL=y CONFIG_FEATURE_MOUNT_LOOP=y CONFIG_FEATURE_MOUNT_LOOP_CREATE=y # CONFIG_FEATURE_MTAB_SUPPORT is not set -CONFIG_VOLUMEID=y +# CONFIG_VOLUMEID is not set # # Filesystem/Volume identification diff --git a/core/openssl/PKGBUILD b/core/openssl/PKGBUILD index c622f21c6..28986aebb 100644 --- a/core/openssl/PKGBUILD +++ b/core/openssl/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 146957 2012-01-19 17:48:26Z pierre $ +# $Id: PKGBUILD 153454 2012-03-14 16:44:04Z pierre $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=openssl -_ver=1.0.0g +_ver=1.0.0h # use a pacman compatible version scheme pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} pkgrel=1 @@ -19,15 +19,12 @@ source=("https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz" 'fix-manpages.patch' 'no-rpath.patch' 'ca-dir.patch') -md5sums=('07ecbe4324f140d157478637d6beccf1' - '34315cf0fbbd1d18435948eb9712fcdf' +md5sums=('a5bc483c570f2ac3758ce5c19b667fab' + 'ed51bb7b3ed58f5e1e1b642050bdd7c1' '5bbc0655bda2af95bc8eb568963ce8ba' 'dc78d3d06baffc16217519242ce92478' '3bf51be3a1bbd262be46dc619f92aa90') -# keep an upgrade path for older installations -PKGEXT='.pkg.tar.gz' - build() { cd $srcdir/$pkgname-$_ver diff --git a/core/udev/PKGBUILD b/core/udev/PKGBUILD index 8e4448343..bc45f9f4e 100644 --- a/core/udev/PKGBUILD +++ b/core/udev/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 150105 2012-02-12 15:37:11Z dreisner $ +# $Id: PKGBUILD 153480 2012-03-14 23:26:14Z tomegun $ # Maintainer: Tom Gundersen <teg@jklm.no> # Contributor: Aaron Griffin <aaron@archlinux.org> # Contributor: Tobias Powalowski <tpowa@archlinux.org> @@ -6,9 +6,9 @@ pkgname=udev pkgver=181 -pkgrel=2 +pkgrel=4 pkgdesc="The userspace dev tools (udev)" -depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'pciutils') +depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'pciutils' 'acl') install=udev.install arch=(i686 x86_64) license=('GPL') @@ -39,15 +39,12 @@ package() { cd $srcdir/$pkgname-$pkgver make DESTDIR=${pkgdir} install - # /dev/loop0 is created for convenience, to autoload the module if necessary - # this is no longer needed when util-linux-2.21 is released as /dev/loop-control - # will be used instead. Support for this will go away in a future version of udev - install -d -m755 ${pkgdir}/lib/udev/devices/ - mknod ${pkgdir}/lib/udev/devices/loop0 b 7 0 - chgrp disk ${pkgdir}/lib/udev/devices/loop0 - # udevd moved, symlink to make life easy for restarting udevd manually - ln -s /lib/udev/udevd ${pkgdir}/usr/bin/udevd + ln -s ../../lib/udev/udevd ${pkgdir}/usr/bin/udevd + + # the path to udevadm is hardcoded in some places + install -d ${pkgdir}/sbin + ln -s ../usr/bin/udevadm ${pkgdir}/sbin/udevadm # Replace dialout/tape/cdrom group in rules with uucp/storage/optical group for i in $pkgdir/lib/udev/rules.d/*.rules; do diff --git a/core/udev/udev.install b/core/udev/udev.install index 7c866c2a3..557efe9e1 100644 --- a/core/udev/udev.install +++ b/core/udev/udev.install @@ -2,72 +2,58 @@ # arg 2: the old package version post_upgrade() { - if [ "$(vercmp $2 181)" -lt 0 ]; then - echo "ATTENTION UDEV:" - echo "----------" + if [ "$(vercmp $2 181-3)" -lt 0 ]; then + echo "udev changes:" if [ "$(vercmp $2 168)" -lt 0 ]; then - echo "Kernel 2.6.32 or newer is now required." - echo " --" - echo "OSS emulation modules are not loaded by default, add to rc.conf if needed." - echo " --" - echo "Arch specific cd symlinks are now no longer created." - echo " --" - echo "cd and net persistent rules will no longer be autogenerated," - echo "see <https://wiki.archlinux.org/index.php/Udev> for details." - echo " --" - echo "Errors are now logged (possibly to the console) by default." - echo " --" + echo " * Kernel 2.6.32 or newer is now required." + echo " * OSS emulation modules are not loaded by default, add to rc.conf if needed." + echo " * Arch specific cd symlinks are now no longer created." + echo " * cd and net persistent rules will no longer be autogenerated," + echo " see <https://wiki.archlinux.org/index.php/Udev> for details." + echo " * Errors are now logged (possibly to the console) by default." fi if [ "$(vercmp $2 171)" -lt 0 ]; then - echo "Arch's custom blacklisting logic has been removed. MOD_AUTOLOAD and" - echo "blacklisting in MODULES no longer works." - echo "See 'man modprobe.conf' for a replacement to blacklisting." - echo "To disable a module mod1 on the kernel command line, use" - echo "mod1.disable=1" - echo "or" - echo "modprobe.blacklist=mod1" - echo " --" - echo "The following modules are no longer unconditionally loaded:" - echo " pcspkr irtty-sir analog lp ppdev ide-generic" - echo "Add them to MODULES in rc.conf if you need them." - echo " --" + echo " * Arch's custom blacklisting logic has been removed. MOD_AUTOLOAD and" + echo " blacklisting in MODULES no longer works." + echo " See 'man modprobe.conf' for a replacement to blacklisting." + echo " To disable a module mod1 on the kernel command line, use" + echo " mod1.disable=1" + echo " or" + echo " modprobe.blacklist=mod1" + echo " * The following modules are no longer unconditionally loaded:" + echo " pcspkr irtty-sir analog lp ppdev ide-generic" + echo " Add them to MODULES in rc.conf if you need them." fi if [ "$(vercmp $2 172)" -lt 0 ]; then - echo "Blacklisting of framebuffer devices has moved from /etc/modprobe.d to" - echo "/lib/modprobe.d. Any customizations shoud be done to the file in /etc, as it" - echo "takes precedence." - echo " --" - echo "kbd and rtc devices are no longer world readable." - echo " --" - echo "rtc is no longer in the audio group and fb devices are no longer in" - echo "the video group, as permissions and ownership of fb devices are controlled" - echo "by X." - echo " --" + echo " * Blacklisting of framebuffer devices has moved from /etc/modprobe.d to" + echo " /lib/modprobe.d. Any customizations shoud be done to the file in /etc, as it" + echo " takes precedence." + echo " * kbd and rtc devices are no longer world readable." + echo " * rtc is no longer in the audio group and fb devices are no longer in" + echo " the video group, as permissions and ownership of fb devices are controlled" + echo " by X." fi if [ "$(vercmp $2 174)" -lt 0 ]; then - echo "We now use upstream rules for assigning devices to the 'disk', 'optical'," - echo "'scanner' and 'video' groups. Beware of any changes." - echo " --" - echo "We no longer create symlinks from /dev/<dev> to /dev/<dev>0." - echo " --" - echo "For security reasons, we no longer add devices to the 'storage' group. Use" - echo "udisks and friends, or add custom rules to /etc/udev.d/rules/, if you want" - echo "this functionality back." - echo " --" - echo "We no longer create the static nodes on install needed for an initrd-less boot" - echo "where devtmpfs is not mounted by the kernel, this only affects fresh installs." - echo " --" + echo " * We now use upstream rules for assigning devices to the 'disk', 'optical'," + echo " 'scanner' and 'video' groups. Beware of any changes." + echo " * We no longer create symlinks from /dev/<dev> to /dev/<dev>0." + echo " * For security reasons, we no longer add devices to the 'storage' group. Use" + echo " udisks and friends, or add custom rules to /etc/udev.d/rules/, if you want" + echo " this functionality back." + echo " * We no longer create the static nodes on install needed for an initrd-less" + echo " boot where devtmpfs is not mounted by the kernel, this only affects fresh" + echo " installs." fi if [ "$(vercmp $2 175)" -lt 0 ]; then - echo "devtmpfs support is now a hard requirement. Users of the official Arch kernels" - echo "have this enabled." - echo " --" + echo " * devtmpfs support is now a hard requirement. Users of the official Arch" + echo " kernels have this enabled." fi - echo "udev-compat has been removed, and should be uninstalled." - echo " --" - echo "Framebuffers are no longer blacklisted by default." - echo " --" - echo "binaries moved from /sbin to /usr/bin" - echo "---------------" + if [ "$(vercmp $2 181)" -lt 0 ]; then + echo " * udev-compat has been removed, and should be uninstalled." + echo " * Framebuffers are no longer blacklisted by default." + echo " * binaries moved from /sbin to /usr/bin" + fi + echo " * if your kernel does not provide /dev/loop-control, you need to manually" + echo " load the 'loop' module before using losetup" fi } diff --git a/core/util-linux/PKGBUILD b/core/util-linux/PKGBUILD index 26faab001..d0d499374 100644 --- a/core/util-linux/PKGBUILD +++ b/core/util-linux/PKGBUILD @@ -1,23 +1,21 @@ -# $Id: PKGBUILD 146393 2012-01-10 11:39:59Z tomegun $ +# $Id: PKGBUILD 153482 2012-03-14 23:26:17Z tomegun $ # Maintainer: Tom Gundersen <teg@jklm.no> # Contributor: judd <jvinet@zeroflux.org> pkgname=util-linux -pkgver=2.20.1 -pkgrel=2 +pkgver=2.21 +pkgrel=5 pkgdesc="Miscellaneous system utilities for Linux" -url="http://userweb.kernel.org/~kzak/util-linux-ng/" +url="http://www.kernel.org/pub/linux/utils/util-linux/" arch=('i686' 'x86_64') groups=('base') -depends=('filesystem') -replaces=('linux32' 'util-linux-ng') -conflicts=('linux32' 'util-linux-ng' 'e2fsprogs<1.41.8-2') -provides=('linux32' "util-linux-ng=${pkgver}") +depends=('udev') +conflicts=('util-linux-ng') +provides=("util-linux-ng=${pkgver}") license=('GPL2') options=('!libtool') -#source=(ftp://ftp.kernel.org/pub/linux/utils/${pkgname}/v${pkgver}/${pkgname}-${pkgver}.tar.bz2) -source=(ftp://ftp.infradead.org/pub/${pkgname}/v2.20/${pkgname}-${pkgver}.tar.bz2 - 0001-findmnt-support-alternative-location-of-fstab.patch) +source=(ftp://ftp.kernel.org/pub/linux/utils/${pkgname}/v${pkgver}/${pkgname}-${pkgver}.tar.xz + stable-fixes-2.21.patch) optdepends=('perl: for chkdupexe support') build() { @@ -26,15 +24,13 @@ build() { # hardware clock sed -e 's%etc/adjtime%var/lib/hwclock/adjtime%' -i include/pathnames.h - # backport patch needed for usr support in initramfs - patch -p1 -i ../0001-findmnt-support-alternative-location-of-fstab.patch + patch -p1 -i ../stable-fixes-2.21.patch - ./configure --enable-arch\ - --enable-write\ - --enable-raw\ - --disable-wall\ - --enable-partx\ - --enable-libmount-mount + ./configure --prefix=/usr \ + --libdir=/usr/lib \ + --enable-write \ + --enable-raw \ + --disable-wall make } @@ -42,9 +38,14 @@ build() { package() { cd "${srcdir}/${pkgname}-${pkgver}" - install -dm755 "${pkgdir}/var/lib/hwclock" - make DESTDIR="${pkgdir}" install + + cd "${pkgdir}" + + install -dm755 var/lib/hwclock + + # delete stray empty dir, fixed upstream + rm -r usr/share/man/ru } -md5sums=('079b37517fd4e002a2e6e992e8b4e361' - '823e2d87885b81f245b8c368e28f8cab') +md5sums=('208aa058f4117759d2939d1be7d662fc' + '415b850a4efa9174cd9c34022949f177') diff --git a/core/util-linux/stable-fixes-2.21.patch b/core/util-linux/stable-fixes-2.21.patch new file mode 100644 index 000000000..3c6c32483 --- /dev/null +++ b/core/util-linux/stable-fixes-2.21.patch @@ -0,0 +1,1516 @@ +diff --git a/configure.ac b/configure.ac +index d3b298c..9da5b24 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -387,6 +387,8 @@ AC_CACHE_VAL([scanf_cv_alloc_modifier], + [scanf_cv_alloc_modifier=as], + [scanf_cv_alloc_modifier=no] + ) ++ , ++ [scanf_cv_alloc_modifier=no] + ) + ) + +@@ -833,6 +835,8 @@ AC_ARG_ENABLE([ddate], + ) + UL_BUILD_INIT([ddate]) + AM_CONDITIONAL(BUILD_DDATE, test "x$build_ddate" = xyes) ++ruman1dir='${mandir}/ru/man1' ++AC_SUBST([ruman1dir]) + + + AC_ARG_ENABLE([agetty], +diff --git a/fdisk/fdiskbsdlabel.h b/fdisk/fdiskbsdlabel.h +index 9f9e091..e58e2ff 100644 +--- a/fdisk/fdiskbsdlabel.h ++++ b/fdisk/fdiskbsdlabel.h +@@ -46,7 +46,7 @@ + + #define BSD_LINUX_BOOTDIR "/usr/ucb/mdec" + +-#if defined (i386) || defined (__sparc__) || defined (__arm__) || \ ++#if defined (__i386__) || defined (__sparc__) || defined (__arm__) || \ + defined (__mips__) || defined (__s390__) || defined (__sh__) || \ + defined(__x86_64__) || defined (__avr32__) || defined(__cris__) + #define BSD_LABELSECTOR 1 +diff --git a/include/list.h b/include/list.h +index 3ce46ca..d8c3bf0 100644 +--- a/include/list.h ++++ b/include/list.h +@@ -166,6 +166,10 @@ _INLINE_ void list_splice(struct list_head *list, struct list_head *head) + #define list_entry(ptr, type, member) \ + ((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member))) + ++ ++#define list_first_entry(head, type, member) \ ++ ((head) && (head)->next != (head) ? list_entry((head)->next, type, member) : NULL) ++ + /** + * list_for_each - iterate over elements in a list + * @pos: the &struct list_head to use as a loop counter. +diff --git a/lib/canonicalize.c b/lib/canonicalize.c +index ab32c10..fd18af4 100644 +--- a/lib/canonicalize.c ++++ b/lib/canonicalize.c +@@ -174,9 +174,16 @@ canonicalize_path(const char *path) + if (path == NULL) + return NULL; + +- if (!myrealpath(path, canonical, PATH_MAX+1)) +- return strdup(path); +- ++ if (!myrealpath(path, canonical, PATH_MAX+1)) { ++ char *res = strdup(path); ++ if (res) { ++ p = strrchr(res, '/'); ++ /* delete trailing slash */ ++ if (p && p > res && *(p + 1) == '\0') ++ *p = '\0'; ++ } ++ return res; ++ } + + p = strrchr(canonical, '/'); + if (p && strncmp(p, "/dm-", 4) == 0 && isdigit(*(p + 4))) { +diff --git a/libblkid/src/probe.c b/libblkid/src/probe.c +index 763f75c..6bd69d3 100644 +--- a/libblkid/src/probe.c ++++ b/libblkid/src/probe.c +@@ -388,6 +388,7 @@ void blkid_reset_probe(blkid_probe pr) + return; + + blkid_probe_reset_vals(pr); ++ blkid_probe_set_wiper(pr, 0, 0); + + pr->cur_chain = NULL; + +@@ -989,7 +990,7 @@ int blkid_do_wipe(blkid_probe pr, int dryrun) + len = sizeof(buf); + + DBG(DEBUG_LOWPROBE, printf( +- "wiping [offset=0x%jx, len=%zd, chain=%s, idx=%d, dryrun=%s]\n", ++ "do_wipe [offset=0x%jx, len=%zd, chain=%s, idx=%d, dryrun=%s]\n", + offset, len, chn->driver->name, chn->idx, dryrun ? "yes" : "not")); + + l = lseek(fd, offset, SEEK_SET); +@@ -1008,10 +1009,23 @@ int blkid_do_wipe(blkid_probe pr, int dryrun) + if (chn->idx >= 0) { + chn->idx--; + DBG(DEBUG_LOWPROBE, +- printf("wipe: moving %s chain index to %d\n", ++ printf("do_wipe: moving %s chain index to %d\n", + chn->driver->name, + chn->idx)); + } ++ if (chn->idx == -1) { ++ /* blkid_do_probe() goes to the next chain if the index ++ * of the current chain is -1, so we have to set the ++ * chain pointer to the previos chain. ++ */ ++ size_t idx = chn->driver->id > 0 ? ++ chn->driver->id - 1 : 0; ++ ++ if (idx > 0) ++ pr->cur_chain = &pr->chains[idx]; ++ else if (idx == 0) ++ pr->cur_chain = NULL; ++ } + } + return 0; + } +@@ -1579,8 +1593,9 @@ size_t blkid_rtrim_whitespace(unsigned char *str) + * for later resolution to conflicts between superblocks. + * + * For example we found valid LVM superblock, LVM wipes 8KiB at the begin of +- * the device. If we found another signature (for example MBR) this wiped area +- * then the signature has been added later and LVM superblock should be ignore. ++ * the device. If we found another signature (for example MBR) within the ++ * wiped area then the signature has been added later and LVM superblock ++ * should be ignore. + * + * Note that this heuristic is not 100% reliable, for example "pvcreate --zero + * n" allows to keep the begin of the device unmodified. It's probably better +@@ -1588,6 +1603,16 @@ size_t blkid_rtrim_whitespace(unsigned char *str) + * than for conflicts between filesystem superblocks -- existence of unwanted + * partition table is very unusual, because PT is pretty visible (parsed and + * interpreted by kernel). ++ * ++ * Note that we usually expect only one signature on the device, it means that ++ * we have to remember only one wiped area from previously successfully ++ * detected signature. ++ * ++ * blkid_probe_set_wiper() -- defines wiped area (e.g. LVM) ++ * blkid_probe_use_wiper() -- try to use area (e.g. MBR) ++ * ++ * Note that there is not relation between _wiper and blkid_to_wipe(). ++ * + */ + void blkid_probe_set_wiper(blkid_probe pr, blkid_loff_t off, blkid_loff_t size) + { +@@ -1638,12 +1663,17 @@ int blkid_probe_is_wiped(blkid_probe pr, struct blkid_chain **chn, + return 0; + } + ++/* ++ * Try to use any area -- if the area has been previously wiped then the ++ * previous probing result should be ignored (reseted). ++ */ + void blkid_probe_use_wiper(blkid_probe pr, blkid_loff_t off, blkid_loff_t size) + { + struct blkid_chain *chn = NULL; + + if (blkid_probe_is_wiped(pr, &chn, off, size) && chn) { +- DBG(DEBUG_LOWPROBE, printf("wiped area detected -- ignore previous results\n")); ++ DBG(DEBUG_LOWPROBE, printf("previously wiped area modified " ++ " -- ignore previous results\n")); + blkid_probe_set_wiper(pr, 0, 0); + blkid_probe_chain_reset_vals(pr, chn); + } +diff --git a/libmount/src/context.c b/libmount/src/context.c +index 1f30292..f97dd36 100644 +--- a/libmount/src/context.c ++++ b/libmount/src/context.c +@@ -1165,6 +1165,10 @@ int mnt_context_prepare_srcpath(struct libmnt_context *cxt) + + src = mnt_fs_get_source(cxt->fs); + ++ if (!src && (cxt->mountflags & MS_PROPAGATION)) ++ /* mount --make-{shared,private,...} */ ++ return mnt_fs_set_source(cxt->fs, "none"); ++ + /* ignore filesystems without source or filesystems + * where the source is quasi-path (//foo/bar) + */ +@@ -1203,7 +1207,7 @@ int mnt_context_prepare_srcpath(struct libmnt_context *cxt) + + if ((cxt->mountflags & (MS_BIND | MS_MOVE | MS_PROPAGATION)) || + mnt_fs_is_pseudofs(cxt->fs)) { +- DBG(CXT, mnt_debug_h(cxt, "PROPAGATION/pseudo FS source: %s", path)); ++ DBG(CXT, mnt_debug_h(cxt, "BIND/MOVE/pseudo FS source: %s", path)); + return rc; + } + +diff --git a/libmount/src/context_mount.c b/libmount/src/context_mount.c +index 8cbc25b..c56ffd4 100644 +--- a/libmount/src/context_mount.c ++++ b/libmount/src/context_mount.c +@@ -369,7 +369,12 @@ static int exec_helper(struct libmnt_context *cxt) + args[i++] = mnt_fs_get_srcpath(cxt->fs);/* 2 */ + args[i++] = mnt_fs_get_target(cxt->fs); /* 3 */ + +- if (mnt_context_is_sloppy(cxt)) ++ /* ++ * TODO: remove the exception for "nfs", -s is documented ++ * for years should be usable everywhere. ++ */ ++ if (mnt_context_is_sloppy(cxt) && ++ type && startswith(type, "nfs")) + args[i++] = "-s"; /* 4 */ + if (mnt_context_is_fake(cxt)) + args[i++] = "-f"; /* 5 */ +@@ -446,9 +451,14 @@ static int do_mount(struct libmnt_context *cxt, const char *try_type) + src = mnt_fs_get_srcpath(cxt->fs); + target = mnt_fs_get_target(cxt->fs); + +- if (!src || !target) ++ if (!target) + return -EINVAL; +- ++ if (!src) { ++ /* unnecessary, should be already resolved in ++ * mnt_context_prepare_srcpath(), but for sure... */ ++ DBG(CXT, mnt_debug_h(cxt, "WARNING: source is NULL -- using \"none\"!")); ++ src = "none"; ++ } + type = try_type ? : mnt_fs_get_fstype(cxt->fs); + + if (!(flags & MS_MGC_MSK)) +diff --git a/libmount/src/fs.c b/libmount/src/fs.c +index a28e66c..19650cb 100644 +--- a/libmount/src/fs.c ++++ b/libmount/src/fs.c +@@ -304,11 +304,7 @@ int __mnt_fs_set_source_ptr(struct libmnt_fs *fs, char *source) + + assert(fs); + +- if (source && !strcmp(source, "none")) { +- free(source); +- source = NULL; +- +- } else if (source && strchr(source, '=')) { ++ if (source && strchr(source, '=')) { + if (blkid_parse_tag_string(source, &t, &v) != 0) + return -1; + } +@@ -341,6 +337,7 @@ int mnt_fs_set_source(struct libmnt_fs *fs, const char *source) + + if (!fs) + return -EINVAL; ++ + if (source) { + p = strdup(source); + if (!p) +@@ -353,6 +350,41 @@ int mnt_fs_set_source(struct libmnt_fs *fs, const char *source) + return rc; + } + ++/* ++ * Compares @fs source path with @path. The tailing slash is ignored. ++ * See also mnt_fs_match_source(). ++ * ++ * Returns: 1 if @fs source path equal to @path, otherwise 0. ++ */ ++int mnt_fs_streq_srcpath(struct libmnt_fs *fs, const char *path) ++{ ++ const char *p; ++ ++ if (!fs) ++ return 0; ++ ++ p = mnt_fs_get_srcpath(fs); ++ ++ if (!mnt_fs_is_pseudofs(fs)) ++ return streq_except_trailing_slash(p, path); ++ ++ if (!p && !path) ++ return 1; ++ ++ return p && path && strcmp(p, path) == 0; ++} ++ ++/* ++ * Compares @fs target path with @path. The tailing slash is ignored. ++ * See also mnt_fs_match_target(). ++ * ++ * Returns: 1 if @fs target path equal to @path, otherwise 0. ++ */ ++int mnt_fs_streq_target(struct libmnt_fs *fs, const char *path) ++{ ++ return fs && streq_except_trailing_slash(mnt_fs_get_target(fs), path); ++} ++ + /** + * mnt_fs_get_tag: + * @fs: fs +@@ -1114,7 +1146,7 @@ int mnt_fs_match_target(struct libmnt_fs *fs, const char *target, + return 0; + + /* 1) native paths */ +- rc = !strcmp(target, fs->target); ++ rc = mnt_fs_streq_target(fs, target); + + if (!rc && cache) { + /* 2) - canonicalized and non-canonicalized */ +@@ -1146,10 +1178,6 @@ int mnt_fs_match_target(struct libmnt_fs *fs, const char *target, + * The 2nd, 3rd and 4th attempts are not performed when @cache is NULL. The + * 2nd and 3rd attempts are not performed if @fs->source is tag. + * +- * Note that valid source path is NULL; the libmount uses NULL instead of +- * "none". The "none" is used in /proc/{mounts,self/mountninfo} for pseudo +- * filesystems. +- * + * Returns: 1 if @fs source is equal to @source else 0. + */ + int mnt_fs_match_source(struct libmnt_fs *fs, const char *source, +@@ -1161,15 +1189,15 @@ int mnt_fs_match_source(struct libmnt_fs *fs, const char *source, + if (!fs) + return 0; + +- /* undefined source -- "none" in /proc */ +- if (source == NULL && fs->source == NULL) ++ /* 1) native paths... */ ++ if (mnt_fs_streq_srcpath(fs, source) == 1) + return 1; + +- if (source == NULL || fs->source == NULL) ++ if (!source || !fs->source) + return 0; + +- /* 1) native paths/tags */ +- if (streq_except_trailing_slash(source, fs->source)) ++ /* ... and tags */ ++ if (fs->tagname && strcmp(source, fs->source) == 0) + return 1; + + if (!cache) +@@ -1183,7 +1211,7 @@ int mnt_fs_match_source(struct libmnt_fs *fs, const char *source, + + /* 2) canonicalized and native */ + src = mnt_fs_get_srcpath(fs); +- if (src && streq_except_trailing_slash(cn, src)) ++ if (src && mnt_fs_streq_srcpath(fs, cn)) + return 1; + + /* 3) canonicalized and canonicalized */ +diff --git a/libmount/src/mountP.h b/libmount/src/mountP.h +index fa0edf5..a7b5c0d 100644 +--- a/libmount/src/mountP.h ++++ b/libmount/src/mountP.h +@@ -367,6 +367,11 @@ extern struct libmnt_fs *mnt_copy_mtab_fs(const struct libmnt_fs *fs); + extern int __mnt_fs_set_source_ptr(struct libmnt_fs *fs, char *source); + extern int __mnt_fs_set_fstype_ptr(struct libmnt_fs *fs, char *fstype); + ++/* exported in v2.22 */ ++extern int mnt_fs_streq_srcpath(struct libmnt_fs *fs, const char *path); ++extern int mnt_fs_streq_target(struct libmnt_fs *fs, const char *path); ++ ++ + /* context.c */ + extern int mnt_context_prepare_srcpath(struct libmnt_context *cxt); + extern int mnt_context_prepare_target(struct libmnt_context *cxt); +diff --git a/libmount/src/tab.c b/libmount/src/tab.c +index 37f47bd..f3ec573 100644 +--- a/libmount/src/tab.c ++++ b/libmount/src/tab.c +@@ -286,6 +286,11 @@ int mnt_table_next_child_fs(struct libmnt_table *tb, struct libmnt_iter *itr, + + id = mnt_fs_get_id(fs); + ++ /* avoid infinite loop. This only happens in rare cases ++ * such as in early userspace when the rootfs is its own parent */ ++ if (id == parent_id) ++ continue; ++ + if ((!lastchld_id || id > lastchld_id) && + (!*chld || id < chld_id)) { + *chld = fs; +@@ -438,7 +443,7 @@ struct libmnt_fs *mnt_table_find_target(struct libmnt_table *tb, const char *pat + /* native @target */ + mnt_reset_iter(&itr, direction); + while(mnt_table_next_fs(tb, &itr, &fs) == 0) { +- if (fs->target && strcmp(fs->target, path) == 0) ++ if (mnt_fs_streq_target(fs, path)) + return fs; + } + if (!tb->cache || !(cn = mnt_resolve_path(path, tb->cache))) +@@ -447,7 +452,7 @@ struct libmnt_fs *mnt_table_find_target(struct libmnt_table *tb, const char *pat + /* canonicalized paths in struct libmnt_table */ + mnt_reset_iter(&itr, direction); + while(mnt_table_next_fs(tb, &itr, &fs) == 0) { +- if (fs->target && strcmp(fs->target, cn) == 0) ++ if (mnt_fs_streq_target(fs, cn)) + return fs; + } + +@@ -456,12 +461,13 @@ struct libmnt_fs *mnt_table_find_target(struct libmnt_table *tb, const char *pat + while(mnt_table_next_fs(tb, &itr, &fs) == 0) { + char *p; + +- if (!fs->target || !mnt_fs_is_swaparea(fs) || ++ if (!fs->target || mnt_fs_is_swaparea(fs) || + (*fs->target == '/' && *(fs->target + 1) == '\0')) + continue; + + p = mnt_resolve_path(fs->target, tb->cache); +- if (strcmp(cn, p) == 0) ++ /* both canonicalized, strcmp() is fine here */ ++ if (p && strcmp(cn, p) == 0) + return fs; + } + return NULL; +@@ -480,9 +486,8 @@ struct libmnt_fs *mnt_table_find_target(struct libmnt_table *tb, const char *pat + * The 2nd, 3rd and 4th iterations are not performed when @tb cache is not + * set (see mnt_table_set_cache()). + * +- * Note that valid source path is NULL; the libmount uses NULL instead of +- * "none". The "none" is used in /proc/{mounts,self/mountninfo} for pseudo +- * filesystems. ++ * Note that NULL is a valid source path; it will be replaced with "none". The ++ * "none" is used in /proc/{mounts,self/mountinfo} for pseudo filesystems. + * + * Returns: a tab entry or NULL. + */ +@@ -501,16 +506,10 @@ struct libmnt_fs *mnt_table_find_srcpath(struct libmnt_table *tb, const char *pa + /* native paths */ + mnt_reset_iter(&itr, direction); + while(mnt_table_next_fs(tb, &itr, &fs) == 0) { +- const char *src = mnt_fs_get_source(fs); +- +- p = mnt_fs_get_srcpath(fs); +- +- if (path == NULL && src == NULL) +- return fs; /* source is "none" */ +- if (path && p && streq_except_trailing_slash(p, path)) ++ if (mnt_fs_streq_srcpath(fs, path)) + return fs; +- if (!p && src) +- ntags++; /* mnt_fs_get_srcpath() returs nothing, it's TAG */ ++ if (mnt_fs_get_tag(fs, NULL, NULL) == 0) ++ ntags++; + } + + if (!path || !tb->cache || !(cn = mnt_resolve_path(path, tb->cache))) +@@ -520,8 +519,7 @@ struct libmnt_fs *mnt_table_find_srcpath(struct libmnt_table *tb, const char *pa + if (ntags < mnt_table_get_nents(tb)) { + mnt_reset_iter(&itr, direction); + while(mnt_table_next_fs(tb, &itr, &fs) == 0) { +- p = mnt_fs_get_srcpath(fs); +- if (p && streq_except_trailing_slash(p, cn)) ++ if (mnt_fs_streq_srcpath(fs, cn)) + return fs; + } + } +@@ -552,7 +550,9 @@ struct libmnt_fs *mnt_table_find_srcpath(struct libmnt_table *tb, const char *pa + if (mnt_fs_get_tag(fs, &t, &v)) + continue; + x = mnt_resolve_tag(t, v, tb->cache); +- if (x && streq_except_trailing_slash(x, cn)) ++ ++ /* both canonicalized, strcmp() is fine here */ ++ if (x && strcmp(x, cn) == 0) + return fs; + } + } +@@ -567,7 +567,9 @@ struct libmnt_fs *mnt_table_find_srcpath(struct libmnt_table *tb, const char *pa + p = mnt_fs_get_srcpath(fs); + if (p) + p = mnt_resolve_path(p, tb->cache); +- if (p && streq_except_trailing_slash(cn, p)) ++ ++ /* both canonicalized, strcmp() is fine here */ ++ if (p && strcmp(p, cn) == 0) + return fs; + } + } +@@ -702,16 +704,18 @@ struct libmnt_fs *mnt_table_find_pair(struct libmnt_table *tb, const char *sourc + } + + /* +- * @tb: /proc/self/mountinfo +- * @fs: filesystem +- * @mountflags: MS_BIND or 0 +- * @fsroot: fs-root that will be probably used in the mountinfo file ++ * tb: /proc/self/mountinfo ++ * fs: filesystem ++ * mountflags: MS_BIND or 0 ++ * fsroot: fs-root that will be probably used in the mountinfo file + * for @fs after mount(2) + * + * For btrfs subvolumes this function returns NULL, but @fsroot properly set. + * + * Returns: entry from @tb that will be used as a source for @fs if the @fs is + * bindmount. ++ * ++ * Don't export to library API! + */ + struct libmnt_fs *mnt_table_get_fs_root(struct libmnt_table *tb, + struct libmnt_fs *fs, +@@ -814,6 +818,20 @@ err: + return NULL; + } + ++static int is_mountinfo(struct libmnt_table *tb) ++{ ++ struct libmnt_fs *fs; ++ ++ if (!tb) ++ return 0; ++ ++ fs = list_first_entry(&tb->ents, struct libmnt_fs, ents); ++ if (fs && mnt_fs_is_kernel(fs) && mnt_fs_get_root(fs)) ++ return 1; ++ ++ return 0; ++} ++ + /** + * mnt_table_is_mounted: + * @tb: /proc/self/mountinfo file +@@ -829,10 +847,9 @@ err: + int mnt_table_is_fs_mounted(struct libmnt_table *tb, struct libmnt_fs *fstab_fs) + { + char *root = NULL; +- struct libmnt_fs *src_fs; +- const char *src, *tgt; +- char *xsrc = NULL; +- int flags = 0, rc = 0; ++ const char *src = NULL; ++ char *xsrc = NULL, *tgt; ++ int rc = 0; + + assert(tb); + assert(fstab_fs); +@@ -840,39 +857,49 @@ int mnt_table_is_fs_mounted(struct libmnt_table *tb, struct libmnt_fs *fstab_fs) + if (mnt_fs_is_swaparea(fstab_fs)) + return 0; + +- if (mnt_fs_get_option(fstab_fs, "bind", NULL, NULL) == 0) +- flags = MS_BIND; ++ if (is_mountinfo(tb)) { ++ /* @tb is mountinfo, so we can try to use fs-roots */ ++ struct libmnt_fs *fs; ++ int flags = 0; ++ ++ if (mnt_fs_get_option(fstab_fs, "bind", NULL, NULL) == 0) ++ flags = MS_BIND; + +- src_fs = mnt_table_get_fs_root(tb, fstab_fs, flags, &root); +- if (src_fs) +- src = mnt_fs_get_srcpath(src_fs); ++ fs = mnt_table_get_fs_root(tb, fstab_fs, flags, &root); ++ if (fs) ++ src = mnt_fs_get_srcpath(fs); ++ } ++ ++ if (src) ++ src = xsrc = mnt_resolve_spec(src, tb->cache); + else if (mnt_fs_is_pseudofs(fstab_fs)) + src = mnt_fs_get_source(fstab_fs); + else + src = xsrc = mnt_resolve_spec(mnt_fs_get_source(fstab_fs), + tb->cache); + +- tgt = mnt_fs_get_target(fstab_fs); ++ tgt = mnt_resolve_path(mnt_fs_get_target(fstab_fs), tb->cache); + +- if (tgt && src && root) { ++ if (tgt && src) { + struct libmnt_iter itr; + struct libmnt_fs *fs; + + mnt_reset_iter(&itr, MNT_ITER_FORWARD); + + while(mnt_table_next_fs(tb, &itr, &fs) == 0) { +- const char *s = mnt_fs_get_srcpath(fs), +- *t = mnt_fs_get_target(fs), +- *r = mnt_fs_get_root(fs); +- +- /* +- * Note that kernel can add tailing slash to the +- * network filesystem source paths. +- */ +- if (t && s && r && +- strcmp(t, tgt) == 0 && +- streq_except_trailing_slash(s, src) && +- strcmp(r, root) == 0) ++ ++ if (root) { ++ /* mountinfo: compare root, source and target */ ++ const char *r = mnt_fs_get_root(fs); ++ ++ if (r && strcmp(r, root) == 0 && ++ mnt_fs_streq_srcpath(fs, src) && ++ mnt_fs_streq_target(fs, tgt)) ++ break; ++ } ++ /* mtab: compare source and target */ ++ else if (mnt_fs_streq_srcpath(fs, src) && ++ mnt_fs_streq_target(fs, tgt)) + break; + } + if (fs) +@@ -881,6 +908,8 @@ int mnt_table_is_fs_mounted(struct libmnt_table *tb, struct libmnt_fs *fstab_fs) + + if (xsrc && !tb->cache) + free(xsrc); ++ if (!tb->cache) ++ free(tgt); + + free(root); + return rc; +diff --git a/libmount/src/tab_parse.c b/libmount/src/tab_parse.c +index 0f618bb..28c8536 100644 +--- a/libmount/src/tab_parse.c ++++ b/libmount/src/tab_parse.c +@@ -180,12 +180,7 @@ static int mnt_parse_mountinfo_line(struct libmnt_fs *fs, char *s) + unmangle_string(fs->vfs_optstr); + unmangle_string(fstype); + unmangle_string(src); +- +- if (!strcmp(fs->fs_optstr, "none")) { +- free(fs->fs_optstr); +- fs->fs_optstr = NULL; +- } else +- unmangle_string(fs->fs_optstr); ++ unmangle_string(fs->fs_optstr); + + rc = __mnt_fs_set_fstype_ptr(fs, fstype); + if (!rc) { +@@ -733,21 +728,14 @@ static struct libmnt_fs *mnt_table_merge_user_fs(struct libmnt_table *tb, struct + mnt_reset_iter(&itr, MNT_ITER_BACKWARD); + + while(mnt_table_next_fs(tb, &itr, &fs) == 0) { +- const char *s = mnt_fs_get_srcpath(fs), +- *t = mnt_fs_get_target(fs), +- *r = mnt_fs_get_root(fs); ++ const char *r = mnt_fs_get_root(fs); + + if (fs->flags & MNT_FS_MERGED) + continue; + +- /* +- * Note that kernel can add tailing slash to the network +- * filesystem source path +- */ +- if (s && t && r && +- strcmp(t, target) == 0 && +- streq_except_trailing_slash(s, src) && +- strcmp(r, root) == 0) ++ if (r && strcmp(r, root) == 0 ++ && mnt_fs_streq_target(fs, target) ++ && mnt_fs_streq_srcpath(fs, src)) + break; + } + +diff --git a/libmount/src/utils.c b/libmount/src/utils.c +index c7a1fd1..4d316d1 100644 +--- a/libmount/src/utils.c ++++ b/libmount/src/utils.c +@@ -235,6 +235,7 @@ int mnt_fstype_is_pseudofs(const char *type) + strcmp(type, "binfmt_misc") == 0 || + strcmp(type, "fuse.gvfs-fuse-daemon") == 0 || + strcmp(type, "debugfs") == 0 || ++ strcmp(type, "nfsd") == 0 || + strcmp(type, "spufs") == 0) + return 1; + return 0; +diff --git a/login-utils/login.c b/login-utils/login.c +index 84d8b1b..4f448f8 100644 +--- a/login-utils/login.c ++++ b/login-utils/login.c +@@ -128,6 +128,22 @@ static int timeout = LOGIN_TIMEOUT; + static int child_pid = 0; + static volatile int got_sig = 0; + ++#ifdef LOGIN_CHOWN_VCS ++/* true if the filedescriptor fd is a console tty, very Linux specific */ ++static int is_consoletty(int fd) ++{ ++ struct stat stb; ++ ++ if ((fstat(fd, &stb) >= 0) ++ && (major(stb.st_rdev) == TTY_MAJOR) ++ && (minor(stb.st_rdev) < 64)) { ++ return 1; ++ } ++ return 0; ++} ++#endif ++ ++ + /* + * Robert Ambrose writes: + * A couple of my users have a problem with login processes hanging around +@@ -316,15 +332,15 @@ static void chown_tty(struct login_context *cxt) + + #ifdef LOGIN_CHOWN_VCS + if (is_consoletty(0)) { +- if (chown(cxt->vcs, uid, gid)) /* vcs */ +- chown_err(cxt->vcs, uid, gid); +- if (chmod(cxt->vcs, cxt->tty_mode)) +- chmod_err(cxt->vcs, cxt->tty_mode); +- +- if (chown(cxt->vcsa, uid, gid)) /* vcsa */ +- chown_err(cxt->vcsa, uid, gid); +- if (chmod(cxt->vcsa, cxt->tty_mode)) +- chmod_err(cxt->vcsa, cxt->tty_mode); ++ if (chown(cxt->vcsn, uid, gid)) /* vcs */ ++ chown_err(cxt->vcsn, uid, gid); ++ if (chmod(cxt->vcsn, cxt->tty_mode)) ++ chmod_err(cxt->vcsn, cxt->tty_mode); ++ ++ if (chown(cxt->vcsan, uid, gid)) /* vcsa */ ++ chown_err(cxt->vcsan, uid, gid); ++ if (chmod(cxt->vcsan, cxt->tty_mode)) ++ chmod_err(cxt->vcsan, cxt->tty_mode); + } + #endif + } +@@ -403,21 +419,6 @@ static void init_tty(struct login_context *cxt) + } + + +-#ifdef LOGIN_CHOWN_VCS +-/* true if the filedescriptor fd is a console tty, very Linux specific */ +-static int is_consoletty(int fd) +-{ +- struct stat stb; +- +- if ((fstat(fd, &stb) >= 0) +- && (major(stb.st_rdev) == TTY_MAJOR) +- && (minor(stb.st_rdev) < 64)) { +- return 1; +- } +- return 0; +-} +-#endif +- + /* + * Log failed login attempts in _PATH_BTMP if that exists. + * Must be called only with username the name of an actual user. +@@ -1145,13 +1146,10 @@ static void init_environ(struct login_context *cxt) + setenv("TERM", termenv, 1); + + if (pwd->pw_uid) +- setenv("PATH", getlogindefs_str("ENV_PATH", _PATH_DEFPATH), 1); +- else { +- const char *x = getlogindefs_str("ENV_ROOTPATH", NULL); +- if (!x) +- x = getlogindefs_str("ENV_SUPATH", _PATH_DEFPATH_ROOT); +- setenv("PATH", x, 1); +- } ++ logindefs_setenv("PATH", "ENV_PATH", _PATH_DEFPATH); ++ ++ else if (logindefs_setenv("PATH", "ENV_ROOTPATH", NULL) != 0) ++ logindefs_setenv("PATH", "ENV_SUPATH", _PATH_DEFPATH_ROOT); + + /* mailx will give a funny error msg if you forget this one */ + len = snprintf(tmp, sizeof(tmp), "%s/%s", _PATH_MAILDIR, pwd->pw_name); +diff --git a/login-utils/logindefs.c b/login-utils/logindefs.c +index fe590e9..e9517ac 100644 +--- a/login-utils/logindefs.c ++++ b/login-utils/logindefs.c +@@ -211,6 +211,43 @@ const char *getlogindefs_str(const char *name, const char *dflt) + return ptr->value; + } + ++/* ++ * For compatibililty with shadow-utils we have tu support additional ++ * syntax for environment variables in login.defs(5) file. The standard ++ * syntax is: ++ * ++ * ENV_FOO data ++ * ++ * but shadow-utils supports also ++ * ++ * ENV_FOO FOO=data ++ * ++ * the FOO= prefix has to be remove before we call setenv(). ++ */ ++int logindefs_setenv(const char *name, const char *conf, const char *dflt) ++{ ++ const char *val = getlogindefs_str(conf, dflt); ++ const char *p; ++ ++ if (!val) ++ return -1; ++ ++ p = strchr(val, '='); ++ if (p) { ++ size_t sz = strlen(name); ++ ++ if (strncmp(val, name, sz) == 0 && *(p + 1)) { ++ val = p + 1; ++ if (*val == '"') ++ val++; ++ if (!*val) ++ val = dflt; ++ } ++ } ++ ++ return val ? setenv(name, val, 1) : -1; ++} ++ + #ifdef TEST_PROGRAM + int main(int argc, char *argv[]) + { +diff --git a/login-utils/logindefs.h b/login-utils/logindefs.h +index 37d19e1..163869d 100644 +--- a/login-utils/logindefs.h ++++ b/login-utils/logindefs.h +@@ -5,5 +5,6 @@ extern int getlogindefs_bool(const char *name, int dflt); + extern long getlogindefs_num(const char *name, long dflt); + extern const char *getlogindefs_str(const char *name, const char *dflt); + extern void free_getlogindefs_data(void); ++extern int logindefs_setenv(const char *name, const char *conf, const char *dflt); + + #endif /* UTIL_LINUX_LOGINDEFS_H */ +diff --git a/man/ru/Makefile.am b/man/ru/Makefile.am +index 799feca..281ec23 100644 +--- a/man/ru/Makefile.am ++++ b/man/ru/Makefile.am +@@ -1,9 +1,6 @@ + include $(top_srcdir)/config/include-Makefile.am + +-mandir = @mandir@/ru +- +-dist_man_MANS = +- + if BUILD_DDATE +-dist_man_MANS += ddate.1 ++ruman1_DATA = ddate.1 ++EXTRA_DIST = $(ruman1_DATA) + endif +diff --git a/misc-utils/lsblk.8 b/misc-utils/lsblk.8 +index 028b19f..286d54b 100644 +--- a/misc-utils/lsblk.8 ++++ b/misc-utils/lsblk.8 +@@ -59,7 +59,7 @@ Use key="value" output format. + Use the raw output format. + .IP "\fB\-t, \-\-topology\fP" + Output info about block device topology. +-This option is equivalent to "-o NAME,ALIGNMENT,MIN-IO,OPT-IO,PHY-SEC,LOG-SEC,ROTA,SCHED". ++This option is equivalent to "-o NAME,ALIGNMENT,MIN-IO,OPT-IO,PHY-SEC,LOG-SEC,ROTA,SCHED,RQ-SIZE". + .SH NOTES + For the partitions are some information (e.g. queue attributes) inherited from + parental device. +diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c +index 8468b3f..54bf360 100644 +--- a/misc-utils/lsblk.c ++++ b/misc-utils/lsblk.c +@@ -478,9 +478,14 @@ static void set_tt_data(struct blkdev_cxt *cxt, int col, int id, struct tt_line + switch(id) { + case COL_NAME: + if (cxt->dm_name) { +- snprintf(buf, sizeof(buf), "%s (%s)", ++ if ((lsblk->tt->flags & TT_FL_RAW) || ++ (lsblk->tt->flags & TT_FL_EXPORT)) ++ tt_line_set_data(ln, col, xstrdup(cxt->dm_name)); ++ else { ++ snprintf(buf, sizeof(buf), "%s (%s)", + cxt->dm_name, cxt->name); +- tt_line_set_data(ln, col, xstrdup(buf)); ++ tt_line_set_data(ln, col, xstrdup(buf)); ++ } + break; + } + case COL_KNAME: +diff --git a/mount/fstab.5 b/mount/fstab.5 +index b0cd763..c618947 100644 +--- a/mount/fstab.5 ++++ b/mount/fstab.5 +@@ -167,7 +167,7 @@ support filesystem + The subtype is defined by '.subtype' suffix. For + example 'fuse.sshfs'. It's recommended to use subtype notation rather than add + any prefix to the first fstab field (for example 'sshfs#example.com' is +-depreacated). ++deprecated). + .RE + + .B The fourth field +diff --git a/sys-utils/losetup.8 b/sys-utils/losetup.8 +index a68836e..f50b072 100644 +--- a/sys-utils/losetup.8 ++++ b/sys-utils/losetup.8 +@@ -80,6 +80,8 @@ for non-root users. + force loop driver to reread size of the file associated with the specified loop device + .IP "\fB\-d, \-\-detach\fP \fIloopdev\fP..." + detach the file or device associated with the specified loop device(s) ++.IP "\fB\-D, \-\-detach-all\fP" ++detach all associated loop devices + .IP "\fB\-e, \-E, \-\-encryption \fIencryption_type\fP" + enable data encryption with specified name or number + .IP "\fB\-f, \-\-find\fP" +diff --git a/sys-utils/losetup.c b/sys-utils/losetup.c +index 16ace6f..9f03151 100644 +--- a/sys-utils/losetup.c ++++ b/sys-utils/losetup.c +@@ -362,7 +362,7 @@ int main(int argc, char **argv) + if (flags & LOOPDEV_FL_OFFSET) + loopcxt_set_offset(&lc, offset); + if (flags & LOOPDEV_FL_SIZELIMIT) +- loopcxt_set_offset(&lc, sizelimit); ++ loopcxt_set_sizelimit(&lc, sizelimit); + if (lo_flags) + loopcxt_set_flags(&lc, lo_flags); + if ((res = loopcxt_set_backing_file(&lc, file))) { +diff --git a/sys-utils/mount.8 b/sys-utils/mount.8 +index 78e7a41..44d4402 100644 +--- a/sys-utils/mount.8 ++++ b/sys-utils/mount.8 +@@ -2760,6 +2760,10 @@ mount failure + .TP + .BR 64 + some mount succeeded ++.RE ++ ++The command mount -a returns 0 (all success), 32 (all failed) or 64 (some ++failed, some success). + + .SH NOTES + The syntax of external mount helpers is: +diff --git a/sys-utils/mount.c b/sys-utils/mount.c +index 15510e0..12ec372 100644 +--- a/sys-utils/mount.c ++++ b/sys-utils/mount.c +@@ -182,6 +182,8 @@ static int mount_all(struct libmnt_context *cxt) + struct libmnt_fs *fs; + int mntrc, ignored, rc = MOUNT_EX_SUCCESS; + ++ int nsucc = 0, nerrs = 0; ++ + itr = mnt_new_iter(MNT_ITER_FORWARD); + if (!itr) { + warn(_("failed to initialize libmount iterator")); +@@ -197,31 +199,40 @@ static int mount_all(struct libmnt_context *cxt) + printf(ignored == 1 ? _("%-25s: ignored\n") : + _("%-25s: already mounted\n"), + tgt); +- + } else if (mnt_context_is_fork(cxt)) { + if (mnt_context_is_verbose(cxt)) + printf("%-25s: mount successfully forked\n", tgt); + } else { +- rc |= mk_exit_code(cxt, mntrc); ++ mk_exit_code(cxt, mntrc); /* to print warnings */ + + if (mnt_context_get_status(cxt)) { +- rc |= MOUNT_EX_SOMEOK; ++ nsucc++; + + if (mnt_context_is_verbose(cxt)) + printf("%-25s: successfully mounted\n", tgt); +- } ++ } else ++ nerrs++; + } + } + + if (mnt_context_is_parent(cxt)) { + /* wait for mount --fork children */ +- int nerrs = 0, nchildren = 0; ++ int nchildren = 0; ++ ++ nerrs = 0, nsucc = 0; + + rc = mnt_context_wait_for_children(cxt, &nchildren, &nerrs); + if (!rc && nchildren) +- rc = nchildren == nerrs ? MOUNT_EX_FAIL : MOUNT_EX_SOMEOK; ++ nsucc = nchildren - nerrs; + } + ++ if (nerrs == 0) ++ rc = MOUNT_EX_SUCCESS; /* all success */ ++ else if (nsucc == 0) ++ rc = MOUNT_EX_FAIL; /* all failed */ ++ else ++ rc = MOUNT_EX_SOMEOK; /* some success, some failed */ ++ + mnt_free_iter(itr); + return rc; + } +@@ -290,6 +301,25 @@ static void selinux_warning(struct libmnt_context *cxt, const char *tgt) + # define selinux_warning(_x, _y) + #endif + ++/* temporary in mount(8) for v2.21.x releases, in v2.22 will be in libmount ++ */ ++static int mnt_fs_streq_srcpath(struct libmnt_fs *fs, const char *path) ++{ ++ const char *p; ++ ++ if (!fs) ++ return 0; ++ ++ p = mnt_fs_get_srcpath(fs); ++ ++ if (!mnt_fs_is_pseudofs(fs)) ++ return streq_except_trailing_slash(p, path); ++ ++ if (!p && !path) ++ return 1; ++ ++ return p && path && strcmp(p, path) == 0; ++} + + /* + * rc = 0 success +@@ -336,7 +366,11 @@ try_readonly: + return MOUNT_EX_USAGE; + } + +- if (src == NULL || tgt == NULL) { ++ /* ++ * TODO: add mnt_context_fstab_applied() to check if we found ++ * target/source in the file. ++ */ ++ if (!tgt) { + if (mflags & MS_REMOUNT) + warnx(_("%s not mounted"), src ? src : tgt); + else +@@ -408,7 +442,7 @@ try_readonly: + const char *s = mnt_fs_get_srcpath(fs), + *t = mnt_fs_get_target(fs); + +- if (t && s && streq_except_trailing_slash(s, src)) ++ if (t && s && mnt_fs_streq_srcpath(fs, src)) + fprintf(stderr, _( + " %s is already mounted on %s\n"), s, t); + } +@@ -697,7 +731,7 @@ int main(int argc, char **argv) + longopts, NULL)) != -1) { + + /* only few options are allowed for non-root users */ +- if (mnt_context_is_restricted(cxt) && !strchr("hlLUVvpr", c)) ++ if (mnt_context_is_restricted(cxt) && !strchr("hlLUVvpri", c)) + exit_non_root(option_to_longopt(c, longopts)); + + switch(c) { +diff --git a/sys-utils/mountpoint.c b/sys-utils/mountpoint.c +index 5cc833d..d0a0069 100644 +--- a/sys-utils/mountpoint.c ++++ b/sys-utils/mountpoint.c +@@ -40,12 +40,12 @@ + + static int quiet; + +-static dev_t dir_to_device(const char *spec) ++static int dir_to_device(const char *spec, dev_t *dev) + { + struct libmnt_table *tb = mnt_new_table_from_file("/proc/self/mountinfo"); + struct libmnt_fs *fs; + struct libmnt_cache *cache; +- dev_t res = 0; ++ int rc = -1; + + if (!tb) { + /* +@@ -57,7 +57,7 @@ static dev_t dir_to_device(const char *spec) + int len; + + if (stat(spec, &st) != 0) +- return 0; ++ return -1; + + cn = mnt_resolve_path(spec, NULL); /* canonicalize */ + +@@ -65,15 +65,17 @@ static dev_t dir_to_device(const char *spec) + free(cn); + + if (len < 0 || (size_t) len + 1 > sizeof(buf)) +- return 0; ++ return -1; + if (stat(buf, &pst) !=0) +- return 0; ++ return -1; + + if ((st.st_dev != pst.st_dev) || +- (st.st_dev == pst.st_dev && st.st_ino == pst.st_ino)) +- return st.st_dev; ++ (st.st_dev == pst.st_dev && st.st_ino == pst.st_ino)) { ++ *dev = st.st_dev; ++ return 0; ++ } + +- return 0; ++ return -1; + } + + /* to canonicalize all necessary paths */ +@@ -81,12 +83,14 @@ static dev_t dir_to_device(const char *spec) + mnt_table_set_cache(tb, cache); + + fs = mnt_table_find_target(tb, spec, MNT_ITER_BACKWARD); +- if (fs && mnt_fs_get_target(fs)) +- res = mnt_fs_get_devno(fs); ++ if (fs && mnt_fs_get_target(fs)) { ++ *dev = mnt_fs_get_devno(fs); ++ rc = 0; ++ } + + mnt_free_table(tb); + mnt_free_cache(cache); +- return res; ++ return rc; + } + + static int print_devno(const char *devname, struct stat *st) +@@ -185,8 +189,8 @@ int main(int argc, char **argv) + errx(EXIT_FAILURE, _("%s: not a directory"), spec); + return EXIT_FAILURE; + } +- src = dir_to_device(spec); +- if (!src) { ++ ++ if ( dir_to_device(spec, &src)) { + if (!quiet) + printf(_("%s is not a mountpoint\n"), spec); + return EXIT_FAILURE; +diff --git a/term-utils/script.c b/term-utils/script.c +index 58f9790..0d891b8 100644 +--- a/term-utils/script.c ++++ b/term-utils/script.c +@@ -437,6 +437,16 @@ doshell(void) { + else + shname = shell; + ++ /* ++ * When invoked from within /etc/csh.login, script spawns a csh shell ++ * that spawns programs that cannot be killed with a SIGTERM. This is ++ * because csh has a documented behaviour wherein it disables all ++ * signals when processing the /etc/csh.* files. ++ * ++ * Let's restore the default behavior. ++ */ ++ signal(SIGTERM, SIG_DFL); ++ + if (cflg) + execl(shell, shname, "-c", cflg, NULL); + else +diff --git a/tests/Makefile.am b/tests/Makefile.am +index fd62519..2c72318 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -7,5 +7,5 @@ EXTRA_DIST = expected \ + functions.sh \ + run.sh + +-distclean-local: ++clean-local: + rm -rf output diff +diff --git a/tests/expected/libmount/tabfiles-find-target2 b/tests/expected/libmount/tabfiles-find-target2 +new file mode 100644 +index 0000000..8a6c57b +--- /dev/null ++++ b/tests/expected/libmount/tabfiles-find-target2 +@@ -0,0 +1,5 @@ ++------ fs: ++source: /dev/foo ++target: /any/foo/ ++fstype: auto ++optstr: defaults +diff --git a/tests/expected/libmount/tabfiles-find-target3 b/tests/expected/libmount/tabfiles-find-target3 +new file mode 100644 +index 0000000..8a6c57b +--- /dev/null ++++ b/tests/expected/libmount/tabfiles-find-target3 +@@ -0,0 +1,5 @@ ++------ fs: ++source: /dev/foo ++target: /any/foo/ ++fstype: auto ++optstr: defaults +diff --git a/tests/expected/libmount/tabfiles-parse-fstab b/tests/expected/libmount/tabfiles-parse-fstab +index 14bdfb4..d661526 100644 +--- a/tests/expected/libmount/tabfiles-parse-fstab ++++ b/tests/expected/libmount/tabfiles-parse-fstab +@@ -58,3 +58,8 @@ target: /mnt/gogogo + fstype: cifs + optstr: user=SRGROUP/baby,noauto + user-optstr: user=SRGROUP/baby,noauto ++------ fs: ++source: /dev/foo ++target: /any/foo/ ++fstype: auto ++optstr: defaults +diff --git a/tests/expected/libmount/tabfiles-parse-mountinfo b/tests/expected/libmount/tabfiles-parse-mountinfo +index 95182dd..4470801 100644 +--- a/tests/expected/libmount/tabfiles-parse-mountinfo ++++ b/tests/expected/libmount/tabfiles-parse-mountinfo +@@ -296,7 +296,7 @@ id: 41 + parent: 20 + devno: 253:0 + ------ fs: +-source: (null) ++source: none + target: /proc/sys/fs/binfmt_misc + fstype: binfmt_misc + optstr: rw,relatime +diff --git a/tests/expected/libmount/tabfiles-parse-mtab b/tests/expected/libmount/tabfiles-parse-mtab +index d7171ea..ffd0c13 100644 +--- a/tests/expected/libmount/tabfiles-parse-mtab ++++ b/tests/expected/libmount/tabfiles-parse-mtab +@@ -42,7 +42,7 @@ fstype: ext4 + optstr: rw,noatime + VFS-optstr: rw,noatime + ------ fs: +-source: (null) ++source: none + target: /proc/sys/fs/binfmt_misc + fstype: binfmt_misc + optstr: rw +diff --git a/tests/expected/libmount/update-utab-mount b/tests/expected/libmount/update-utab-mount +index 1784e00..58a0179 100644 +--- a/tests/expected/libmount/update-utab-mount ++++ b/tests/expected/libmount/update-utab-mount +@@ -1,3 +1,3 @@ + SRC=/dev/sdb1 TARGET=/mnt/bar ROOT=/ OPTS=user + SRC=/dev/sda2 TARGET=/mnt/xyz ROOT=/ OPTS=loop=/dev/loop0,uhelper=hal +-TARGET=/proc ROOT=/ OPTS=user ++SRC=none TARGET=/proc ROOT=/ OPTS=user +diff --git a/tests/expected/libmount/update-utab-move b/tests/expected/libmount/update-utab-move +index 12917cc..6008140 100644 +--- a/tests/expected/libmount/update-utab-move ++++ b/tests/expected/libmount/update-utab-move +@@ -1,3 +1,3 @@ + SRC=/dev/sdb1 TARGET=/mnt/newbar ROOT=/ OPTS=user + SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=loop=/dev/loop0,uhelper=hal +-TARGET=/proc ROOT=/ OPTS=user ++SRC=none TARGET=/proc ROOT=/ OPTS=user +diff --git a/tests/expected/libmount/update-utab-remount b/tests/expected/libmount/update-utab-remount +index 737e2a3..8e344b3 100644 +--- a/tests/expected/libmount/update-utab-remount ++++ b/tests/expected/libmount/update-utab-remount +@@ -1,3 +1,3 @@ + SRC=/dev/sdb1 TARGET=/mnt/newbar ROOT=/ OPTS=user + SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=user +-TARGET=/proc ROOT=/ OPTS=user ++SRC=none TARGET=/proc ROOT=/ OPTS=user +diff --git a/tests/expected/mount/fstab-none b/tests/expected/mount/fstab-none +new file mode 100644 +index 0000000..3582111 +--- /dev/null ++++ b/tests/expected/mount/fstab-none +@@ -0,0 +1 @@ ++Success +diff --git a/tests/expected/mount/shared-subtree b/tests/expected/mount/shared-subtree +new file mode 100644 +index 0000000..3582111 +--- /dev/null ++++ b/tests/expected/mount/shared-subtree +@@ -0,0 +1 @@ ++Success +diff --git a/tests/expected/mount/shared-subtree-make-private b/tests/expected/mount/shared-subtree-make-private +new file mode 100644 +index 0000000..39cdd0d +--- /dev/null ++++ b/tests/expected/mount/shared-subtree-make-private +@@ -0,0 +1 @@ ++- +diff --git a/tests/expected/mount/shared-subtree-make-shared b/tests/expected/mount/shared-subtree-make-shared +new file mode 100644 +index 0000000..8a205e8 +--- /dev/null ++++ b/tests/expected/mount/shared-subtree-make-shared +@@ -0,0 +1 @@ ++shared +diff --git a/tests/expected/mount/shared-subtree-make-unbindable b/tests/expected/mount/shared-subtree-make-unbindable +new file mode 100644 +index 0000000..376cfac +--- /dev/null ++++ b/tests/expected/mount/shared-subtree-make-unbindable +@@ -0,0 +1 @@ ++unbindable +diff --git a/tests/functions.sh b/tests/functions.sh +index 85b1621..6556e4e 100644 +--- a/tests/functions.sh ++++ b/tests/functions.sh +@@ -93,6 +93,8 @@ function ts_init_core_subtest_env { + TS_MOUNTPOINT="$TS_OUTDIR/${TS_TESTNAME}-${TS_SUBNAME}-mnt" + + rm -f $TS_OUTPUT $TS_VGDUMP ++ [ -d "$TS_OUTDIR" ] || mkdir -p "$TS_OUTDIR" ++ + touch $TS_OUTPUT + [ -n "$TS_VALGRIND_CMD" ] && touch $TS_VGDUMP + } +@@ -127,8 +129,6 @@ function ts_init_env { + + BLKID_FILE="$TS_OUTDIR/${TS_TESTNAME}.blkidtab" + +- [ -d "$TS_OUTDIR" ] || mkdir -p "$TS_OUTDIR" +- [ -d "$TS_DIFFDIR" ] || mkdir -p "$TS_DIFFDIR" + + declare -a TS_SUID_PROGS + declare -a TS_SUID_USER +@@ -141,6 +141,8 @@ function ts_init_env { + export BLKID_FILE + + rm -f $TS_OUTPUT $TS_VGDUMP ++ [ -d "$TS_OUTDIR" ] || mkdir -p "$TS_OUTDIR" ++ + touch $TS_OUTPUT + [ -n "$TS_VALGRIND_CMD" ] && touch $TS_VGDUMP + +@@ -219,8 +221,15 @@ function ts_gen_diff { + local res=0 + + if [ -s "$TS_OUTPUT" ]; then ++ ++ [ -d "$TS_DIFFDIR" ] || mkdir -p "$TS_DIFFDIR" + diff -u $TS_EXPECTED $TS_OUTPUT > $TS_DIFF +- [ -s $TS_DIFF ] && res=1 ++ ++ if [ -s $TS_DIFF ]; then ++ res=1 ++ else ++ rm -f $TS_DIFF; ++ fi + else + res=1 + fi +diff --git a/tests/ts/build-sys/config b/tests/ts/build-sys/config +index 7ede38c..e2c2b00 100755 +--- a/tests/ts/build-sys/config ++++ b/tests/ts/build-sys/config +@@ -52,9 +52,18 @@ for conf in $config_gen_dir/config-gen.d/*.conf; do + esac + fi + done ++ ++ # clean the tree, but exclude tests/{diff,output} dirs ++ # ++ [ -d tests/diff ] && mv tests/diff tests/diff.save ++ [ -d tests/output ] && mv tests/output tests/output.save ++ + make -j clean &> /dev/null +- cd $olddir + ++ [ -d tests/diff.save ] && mv tests/diff.save tests/diff ++ [ -d tests/output.save ] && mv tests/output.save tests/output ++ ++ cd $olddir + ts_finalize_subtest + done + +diff --git a/tests/ts/libmount/context-utab b/tests/ts/libmount/context-utab +index aa49806..4c1d117 100755 +--- a/tests/ts/libmount/context-utab ++++ b/tests/ts/libmount/context-utab +@@ -67,6 +67,8 @@ grep -q $DEVICE /proc/mounts || \ + echo "(by device) cannot find $DEVICE in /proc/mounts" >> $TS_OUTPUT 2>&1 + ts_finalize_subtest + ++sleep 1 ++ + ts_init_subtest "umount-by-devname" + ts_valgrind $TESTPROG --umount $DEVICE >> $TS_OUTPUT 2>&1 + grep -q $DEVICE /proc/mounts && +@@ -81,6 +83,8 @@ grep -q $DEVICE $LIBMOUNT_UTAB || \ + echo "(by label) cannot find $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1 + ts_finalize_subtest + ++sleep 1 ++ + ts_init_subtest "umount" + ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1 + grep -q $DEVICE $LIBMOUNT_UTAB && \ +@@ -94,6 +98,8 @@ if [ -x "/sbin/mkfs.btrfs" ]; then + /sbin/btrfsctl -S sub $MOUNTPOINT &> /dev/null + umount $MOUNTPOINT &> /dev/null + ++ sleep 1 ++ + ts_init_subtest "mount-uhelper-subvol" + mkdir -p $MOUNTPOINT &> /dev/null + ts_valgrind $TESTPROG --mount -o uhelper=foo,rw,subvol=sub $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1 +@@ -105,6 +111,8 @@ if [ -x "/sbin/mkfs.btrfs" ]; then + $TS_CMD_FINDMNT --mtab $MOUNTPOINT -o OPTIONS -n >> $TS_OUTPUT 2>&1 + ts_log "---" + ++ sleep 1 ++ + ts_init_subtest "umount-subvol" + ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1 + grep -q $DEVICE $LIBMOUNT_UTAB && \ +diff --git a/tests/ts/libmount/files/fstab b/tests/ts/libmount/files/fstab +index 2503065..a8f73bc 100644 +--- a/tests/ts/libmount/files/fstab ++++ b/tests/ts/libmount/files/fstab +@@ -10,3 +10,5 @@ proc /proc proc defaults 0 0 + + foo.com:/mnt/share /mnt/remote nfs noauto + //bar.com/gogogo /mnt/gogogo cifs user=SRGROUP/baby,noauto ++ ++/dev/foo /any/foo/ auto defaults 0 0 +diff --git a/tests/ts/libmount/tabfiles b/tests/ts/libmount/tabfiles +index 7f4913e..671c649 100755 +--- a/tests/ts/libmount/tabfiles ++++ b/tests/ts/libmount/tabfiles +@@ -47,6 +47,16 @@ ts_valgrind $TESTPROG --find-forward "$TS_SELF/files/fstab" target /home/foo &> + sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT + ts_finalize_subtest + ++ts_init_subtest "find-target2" ++ts_valgrind $TESTPROG --find-forward "$TS_SELF/files/fstab" target /any/foo &> $TS_OUTPUT ++sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT ++ts_finalize_subtest ++ ++ts_init_subtest "find-target3" ++ts_valgrind $TESTPROG --find-forward "$TS_SELF/files/fstab" target /any/foo/ &> $TS_OUTPUT ++sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT ++ts_finalize_subtest ++ + ts_init_subtest "find-pair" + ts_valgrind $TESTPROG --find-pair "$TS_SELF/files/mtab" /dev/mapper/kzak-home /home/kzak &> $TS_OUTPUT + sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT +diff --git a/tests/ts/mount/fstab-none b/tests/ts/mount/fstab-none +new file mode 100755 +index 0000000..62a89ca +--- /dev/null ++++ b/tests/ts/mount/fstab-none +@@ -0,0 +1,30 @@ ++#!/bin/bash ++ ++TS_TOPDIR="$(dirname $0)/../.." ++TS_DESC="none" ++ ++. $TS_TOPDIR/functions.sh ++ts_init "$*" ++ts_skip_nonroot ++ ++set -o pipefail ++ ++ts_fstab_add "none" "$TS_MOUNTPOINT" "tmpfs" "rw,nosuid,nodev,relatime" ++ ++mkdir -p $TS_MOUNTPOINT ++ ++$TS_CMD_MOUNT $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT ++ ++$TS_CMD_FINDMNT --target "$TS_MOUNTPOINT" &> /dev/null ++[ $? -eq 0 ] || ts_die "Not found target (mount failed?)" ++ ++$TS_CMD_FINDMNT --source "none" --target "$TS_MOUNTPOINT" &> /dev/null ++[ $? -eq 0 ] || ts_die "Not found source and target" ++ ++$TS_CMD_UMOUNT $TS_MOUNTPOINT || ts_die "Cannot umount $TS_MOUNTPOINT" ++ ++ts_fstab_clean ++ ++ts_log "Success" ++ts_finalize ++ +diff --git a/tests/ts/mount/shared-subtree b/tests/ts/mount/shared-subtree +new file mode 100755 +index 0000000..a0a76c5 +--- /dev/null ++++ b/tests/ts/mount/shared-subtree +@@ -0,0 +1,58 @@ ++#!/bin/bash ++ ++TS_TOPDIR="$(dirname $0)/../.." ++TS_DESC="shared-subtree" ++ ++. $TS_TOPDIR/functions.sh ++ts_init "$*" ++ts_skip_nonroot ++ ++function get_attr() ++{ ++ # It's usually stupid idea to use 'grep | awk', ++ # but use paths in awk /regex/ is too tricky... ++ # ++ # TODO; improve libmount and findmnt to return the ++ # shared-subtree flags ++ # ++ echo $(grep "$1" /proc/self/mountinfo | \ ++ awk '{print $7}' | \ ++ awk -F ':' '{ print $1 }') ++} ++ ++[ -d $TS_MOUNTPOINT ] || mkdir -p $TS_MOUNTPOINT ++ ++# bind ++$TS_CMD_MOUNT --bind $TS_MOUNTPOINT $TS_MOUNTPOINT ++ ++# check the bind ++$TS_CMD_FINDMNT --kernel --target $TS_MOUNTPOINT &> /dev/null ++[ "$?" == "0" ] || ts_die "Cannot find binded $TS_MOUNTPOINT in /proc/self/mountinfo" ++ ++# use the same mounpoint for all sub-tests ++MOUNTPOINT="$TS_MOUNTPOINT" ++ ++ ++ts_init_subtest "make-shared" ++$TS_CMD_MOUNT --make-shared $MOUNTPOINT >> $TS_OUTPUT 2>&1 ++echo "$(get_attr $MOUNTPOINT)" >> $TS_OUTPUT ++ts_finalize_subtest ++ ++ts_init_subtest "make-private" ++$TS_CMD_MOUNT --make-private $MOUNTPOINT >> $TS_OUTPUT 2>&1 ++echo "$(get_attr $MOUNTPOINT)" >> $TS_OUTPUT ++ts_finalize_subtest ++ ++ts_init_subtest "make-unbindable" ++$TS_CMD_MOUNT --make-unbindable $MOUNTPOINT >> $TS_OUTPUT 2>&1 ++echo "$(get_attr $MOUNTPOINT)" >> $TS_OUTPUT ++ts_finalize_subtest ++ ++ ++# clean up ++$TS_CMD_UMOUNT $TS_MOUNTPOINT ++rmdir $TS_MOUNTPOINT ++ ++ts_log "Success" ++ts_finalize ++ diff --git a/extra/audacity/PKGBUILD b/extra/audacity/PKGBUILD index 1f03ee557..1fc579a12 100644 --- a/extra/audacity/PKGBUILD +++ b/extra/audacity/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 146761 2012-01-17 05:11:17Z eric $ +# $Id: PKGBUILD 153456 2012-03-14 17:16:21Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=audacity -pkgver=1.3.14 -pkgrel=2 +pkgver=2.0.0 +pkgrel=1 pkgdesc="A program that lets you manipulate digital audio waveforms" arch=('i686' 'x86_64') url="http://audacity.sourceforge.net/" @@ -12,14 +12,11 @@ depends=('libmad' 'libid3tag' 'wxgtk' 'lame' 'hicolor-icon-theme' 'desktop-file-utils' 'jack' 'soundtouch' 'ffmpeg') options=('!makeflags') install=audacity.install -source=(http://audacity.googlecode.com/files/${pkgname}-minsrc-${pkgver}-beta.tar.bz2 \ - audacity-1.3.13-ffmpeg.patch) -sha1sums=('a0fb22a0cfbb8a72abac8bbc01b3ad8b0bb7e11e' - '67f209d362ece6961b154a7c62e23ac856c2fa94') +source=(http://audacity.googlecode.com/files/${pkgname}-minsrc-${pkgver}.tar.bz2) +sha1sums=('0175474e63c51aaa97df9b45574f7f307f1d3bc8') build() { - cd "${srcdir}/${pkgname}-src-${pkgver}-beta" - patch -p0 -i "${srcdir}/audacity-1.3.13-ffmpeg.patch" + cd "${srcdir}/${pkgname}-src-${pkgver}" WX_CONFIG=/usr/bin/wx-config ./configure --prefix=/usr \ --with-portaudio --with-libsamplerate \ --without-libresample --with-libmad \ @@ -31,6 +28,6 @@ build() { } package() { - cd "${srcdir}/${pkgname}-src-${pkgver}-beta" + cd "${srcdir}/${pkgname}-src-${pkgver}" make DESTDIR="${pkgdir}" install } diff --git a/extra/gimp-devel/PKGBUILD b/extra/gimp-devel/PKGBUILD index 4583941cd..4d120263d 100644 --- a/extra/gimp-devel/PKGBUILD +++ b/extra/gimp-devel/PKGBUILD @@ -1,27 +1,28 @@ -# $Id: PKGBUILD 148738 2012-02-05 11:48:46Z ibiru $ +# $Id: PKGBUILD 153442 2012-03-14 06:47:26Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=gimp-devel -pkgver=2.7.4 -pkgrel=2 +pkgver=2.7.5 +pkgrel=1 pkgdesc="GNU Image Manipulation Program (Development Version)" arch=('i686' 'x86_64') url="http://www.gimp.org/" license=('GPL3' 'LGPL3') depends=('pygtk' 'lcms' 'libxpm' 'libwmf' 'librsvg' 'libmng' 'dbus-glib' \ 'jasper' 'libexif' 'gegl' 'desktop-file-utils' 'hicolor-icon-theme') -makedepends=('intltool' 'libwebkit' 'poppler-glib' 'alsa-lib' 'iso-codes' 'curl') +makedepends=('intltool' 'libwebkit' 'poppler-glib' 'alsa-lib' 'iso-codes' 'curl' 'ghostscript') optdepends=('gutenprint: for sophisticated printing only as gimp has built-in cups print support' 'libwebkit: for the help browser or web-page plug-ins' 'poppler-glib: for pdf support' 'alsa-lib: for MIDI event controller module' - 'curl: for URI support') + 'curl: for URI support' + 'ghostscript: for postscript support') options=('!libtool' '!makeflags') conflicts=('gimp') provides=("gimp=${pkgver}") install=gimp-devel.install source=(ftp://ftp.gimp.org/pub/gimp/v${pkgver%.*}/gimp-${pkgver}.tar.bz2 linux.gpl) -md5sums=('bda95a29c3483b8ff458b06b1543f867' +md5sums=('55c3ce1402890665464d9aad74ea63b6' 'bb27bc214261d36484093e857f015f38') build() { diff --git a/extra/lua/PKGBUILD b/extra/lua/PKGBUILD index 2020b0270..cb2ea2c01 100644 --- a/extra/lua/PKGBUILD +++ b/extra/lua/PKGBUILD @@ -1,11 +1,10 @@ -# $Id: PKGBUILD 142952 2011-11-19 04:33:22Z eric $ +# $Id: PKGBUILD 153491 2012-03-14 23:43:56Z eric $ # Maintainer: Juergen Hoetzel <juergen@archlinux.org> # Contributor: Damir Perisa <damir.perisa@bluewin.ch> pkgname=lua -pkgver=5.1.4 -pkgrel=9 -_patchver=5.1.4-4 +pkgver=5.1.5 +pkgrel=1 pkgdesc="A powerful light-weight programming language designed for extending applications" arch=('i686' 'x86_64') url="http://www.lua.org/" @@ -13,19 +12,17 @@ depends=('readline') license=('MIT') options=('!makeflags' '!emptydirs') source=(http://www.lua.org/ftp/${pkgname}-${pkgver}.tar.gz - http://www.lua.org/ftp/patch-lua-${_patchver} lua-arch.patch lua-5.1-cflags.diff) -md5sums=('d0870f2de55d59c1c8419f36e8fac150' - '329d8695e3e6f1267190e220559f7b6c' +md5sums=('2e115fe26e435e33b0d5c022e4490567' '6c5953f63904bf20a0183cdab05b80de' '249582bf1fd861ccf492d2c35a9fe732') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -p0 -i "${srcdir}/patch-lua-${_patchver}" -d src patch -p1 -i "${srcdir}/lua-arch.patch" - [ "$CARCH" == "x86_64" ] && patch -p1 -i "${srcdir}/lua-5.1-cflags.diff" - [ "$CARCH" == "x86_64" ] && export CFLAGS="$CFLAGS -fPIC" + patch -p1 -i "${srcdir}/lua-5.1-cflags.diff" + export CFLAGS="$CFLAGS -fPIC" + make INSTALL_DATA="cp -d" TO_LIB="liblua.a liblua.so liblua.so.5.1" LUA_SO=liblua.so \ INSTALL_TOP="${pkgdir}/usr" INSTALL_MAN="${pkgdir}/usr/share/man/man1" \ linux diff --git a/extra/mtdev/PKGBUILD b/extra/mtdev/PKGBUILD new file mode 100644 index 000000000..7e49b6371 --- /dev/null +++ b/extra/mtdev/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 153465 2012-03-14 17:58:06Z andyrtr $ +# Maintainer: AndyRTR <andyrtr@archlinux.org> +# Contributor: SpepS <dreamspepser at yahoo dot it> + +pkgname=mtdev +pkgver=1.1.2 +pkgrel=1 +pkgdesc="A stand-alone library which transforms all variants of kernel MT events to the slotted type B protocol" +arch=('i686' 'x86_64') +url="http://bitmath.org/code/mtdev/" +license=('custom:MIT') +depends=('glibc') +options=('!libtool') +source=("$url$pkgname-$pkgver.tar.bz2") +md5sums=('d9c7700918fc392e29da7477ae20c5c2') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install + + # license + install -Dm644 COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/extra/pidgin/PKGBUILD b/extra/pidgin/PKGBUILD index b15b93d53..7fffa6465 100644 --- a/extra/pidgin/PKGBUILD +++ b/extra/pidgin/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 144934 2011-12-10 23:19:27Z foutrelis $ +# $Id: PKGBUILD 153444 2012-03-14 12:02:02Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Ionut Biru <ibiru@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> @@ -6,7 +6,7 @@ # Contributor: Lucien Immink <l.immink@student.fnt.hvu.nl> pkgname=('pidgin' 'libpurple' 'finch') -pkgver=2.10.1 +pkgver=2.10.2 pkgrel=1 arch=('i686' 'x86_64') url="http://pidgin.im/" @@ -17,24 +17,24 @@ makedepends=('startup-notification' 'gtkspell' 'libxss' 'nss' 'libsasl' 'libsm' 'networkmanager') options=('!libtool') source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2 - nm09-more.patch) -sha256sums=('2f28bddc5edcd714d607d74126c8958ae7c258602b3929e3e6e783d3cb1beac8' - '7e173ea37b86b604284da18ea015ee03ccd444f3e980f440c201957d37ee820e') + port-to-farstream-v2.patch) +sha256sums=('e5cdd29056d36677cb81225c3b36b1bcde64605e201492f6e2fdf27ff24d32b8' + '03ba48e0da1331a976efc28a66810be4f51599a2b8065ac449965e0aefca4482') build() { cd "$srcdir/$pkgname-$pkgver" - # Further fixes for NetworkManager 0.9 - # http://developer.pidgin.im/ticket/13859 - patch -Np1 -i "$srcdir/nm09-more.patch" + # Apply patch for farsight -> farstream transition + # http://developer.pidgin.im/ticket/14936 + #patch -Np1 -i "$srcdir/port-to-farstream-v2.patch" + + # The farstream patch changes configure.ac + #autoreconf -vi # Use Python 2 sed -i 's/env python$/&2/' */plugins/*.py \ libpurple/purple-{remote,notifications-example,url-handler} - # Pidgin doesn't explicitly link to libm - LDFLAGS+=' -Wl,--copy-dt-needed-entries' - ./configure \ --prefix=/usr \ --sysconfdir=/etc \ diff --git a/extra/pidgin/port-to-farstream-v2.patch b/extra/pidgin/port-to-farstream-v2.patch new file mode 100644 index 000000000..49ae60906 --- /dev/null +++ b/extra/pidgin/port-to-farstream-v2.patch @@ -0,0 +1,447 @@ +diff -upr pidgin-2.10.1.orig/configure.ac pidgin-2.10.1/configure.ac +--- pidgin-2.10.1.orig/configure.ac 2011-12-06 10:44:32.000000000 +0200 ++++ pidgin-2.10.1/configure.ac 2012-03-10 18:21:12.000000000 +0200 +@@ -780,18 +780,18 @@ else + fi + + dnl ####################################################################### +-dnl # Check for Farsight ++dnl # Check for Farstream + dnl ####################################################################### +-AC_ARG_ENABLE(farsight, +- [AC_HELP_STRING([--disable-farsight], [compile without farsight support])], +- enable_farsight="$enableval", enable_farsight="yes") +-if test "x$enable_farsight" != "xno"; then +- PKG_CHECK_MODULES(FARSIGHT, [farsight2-0.10 >= 0.0.9], [ +- AC_DEFINE(USE_FARSIGHT, 1, [Use Farsight for voice and video]) +- AC_SUBST(FARSIGHT_CFLAGS) +- AC_SUBST(FARSIGHT_LIBS) ++AC_ARG_ENABLE(farstream, ++ [AC_HELP_STRING([--disable-farstream], [compile without farstream support])], ++ enable_farstream="$enableval", enable_farstream="yes") ++if test "x$enable_farstream" != "xno"; then ++ PKG_CHECK_MODULES(FARSTREAM, [farstream-0.1], [ ++ AC_DEFINE(USE_FARSTREAM, 1, [Use Farstream for voice and video]) ++ AC_SUBST(FARSTREAM_CFLAGS) ++ AC_SUBST(FARSTREAM_LIBS) + ], [ +- enable_farsight="no" ++ enable_farstream="no" + ]) + fi + +@@ -802,20 +802,20 @@ AC_ARG_ENABLE(vv, + [AC_HELP_STRING([--disable-vv], [compile without voice and video support])], + enable_vv="$enableval", enable_vv="yes") + if test "x$enable_vv" != "xno"; then +- if test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farsight" != "xno"; then ++ if test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farstream" != "xno"; then + AC_DEFINE(USE_VV, 1, [Use voice and video]) + else + enable_vv="no" + if test "x$force_deps" = "xyes"; then + AC_MSG_ERROR([ + Dependencies for voice/video were not met. +-Install the necessary gstreamer and farsight packages first. ++Install the necessary gstreamer and farstream packages first. + Or use --disable-vv if you do not need voice/video support. + ]) + fi + fi + fi +-AM_CONDITIONAL(USE_VV, test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farsight" != "xno") ++AM_CONDITIONAL(USE_VV, test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farstream" != "xno") + + dnl ####################################################################### + dnl # Check for Internationalized Domain Name support +diff -upr pidgin-2.10.1.orig/libpurple/Makefile.am pidgin-2.10.1/libpurple/Makefile.am +--- pidgin-2.10.1.orig/libpurple/Makefile.am 2011-12-06 10:44:33.000000000 +0200 ++++ pidgin-2.10.1/libpurple/Makefile.am 2012-03-10 18:21:19.000000000 +0200 +@@ -306,7 +306,7 @@ libpurple_la_LIBADD = \ + $(LIBXML_LIBS) \ + $(NETWORKMANAGER_LIBS) \ + $(INTLLIBS) \ +- $(FARSIGHT_LIBS) \ ++ $(FARSTREAM_LIBS) \ + $(GSTREAMER_LIBS) \ + $(GSTINTERFACES_LIBS) \ + $(IDN_LIBS) \ +@@ -322,7 +322,7 @@ AM_CPPFLAGS = \ + $(DEBUG_CFLAGS) \ + $(DBUS_CFLAGS) \ + $(LIBXML_CFLAGS) \ +- $(FARSIGHT_CFLAGS) \ ++ $(FARSTREAM_CFLAGS) \ + $(GSTREAMER_CFLAGS) \ + $(GSTINTERFACES_CFLAGS) \ + $(IDN_CFLAGS) \ +diff -upr pidgin-2.10.1.orig/libpurple/media/backend-fs2.c pidgin-2.10.1/libpurple/media/backend-fs2.c +--- pidgin-2.10.1.orig/libpurple/media/backend-fs2.c 2011-12-06 10:44:33.000000000 +0200 ++++ pidgin-2.10.1/libpurple/media/backend-fs2.c 2012-03-10 18:21:19.000000000 +0200 +@@ -1,5 +1,5 @@ + /** +- * @file backend-fs2.c Farsight 2 backend for media API ++ * @file backend-fs2.c Farstream backend for media API + * @ingroup core + */ + +@@ -34,8 +34,9 @@ + #include "network.h" + #include "media-gst.h" + +-#include <gst/farsight/fs-conference-iface.h> +-#include <gst/farsight/fs-element-added-notifier.h> ++#include <farstream/fs-conference.h> ++#include <farstream/fs-element-added-notifier.h> ++#include <farstream/fs-utils.h> + + /** @copydoc _PurpleMediaBackendFs2Class */ + typedef struct _PurpleMediaBackendFs2Class PurpleMediaBackendFs2Class; +@@ -112,6 +113,8 @@ struct _PurpleMediaBackendFs2Stream + gchar *participant; + FsStream *stream; + ++ gboolean supports_add; ++ + GstElement *src; + GstElement *tee; + GstElement *volume; +@@ -147,6 +150,8 @@ struct _PurpleMediaBackendFs2Private + FsConference *conference; + gchar *conference_type; + ++ FsElementAddedNotifier *notifier; ++ + GHashTable *sessions; + GHashTable *participants; + +@@ -212,6 +217,11 @@ purple_media_backend_fs2_dispose(GObject + + purple_debug_info("backend-fs2", "purple_media_backend_fs2_dispose\n"); + ++ if (priv->notifier) { ++ g_object_unref(priv->notifier); ++ priv->notifier = NULL; ++ } ++ + if (priv->confbin) { + GstElement *pipeline; + +@@ -846,7 +856,7 @@ gst_handle_message_element(GstBus *bus, + priv->conference != FS_CONFERENCE(src)) + return; + +- if (gst_structure_has_name(msg->structure, "farsight-error")) { ++ if (gst_structure_has_name(msg->structure, "farstream-error")) { + FsError error_no; + gst_structure_get_enum(msg->structure, "error-no", + FS_TYPE_ERROR, (gint*)&error_no); +@@ -867,16 +877,9 @@ gst_handle_message_element(GstBus *bus, + " strict.")); + purple_media_end(priv->media, NULL, NULL); + break; +- case FS_ERROR_UNKNOWN_CNAME: +- /* +- * Unknown CName is only a problem for the +- * multicast transmitter which isn't used. +- * It is also deprecated. +- */ +- break; + default: + purple_debug_error("backend-fs2", +- "farsight-error: %i: %s\n", ++ "farstream-error: %i: %s\n", + error_no, + gst_structure_get_string( + msg->structure, "error-msg")); +@@ -885,11 +888,11 @@ gst_handle_message_element(GstBus *bus, + + if (FS_ERROR_IS_FATAL(error_no)) { + purple_media_error(priv->media, _("A non-recoverable " +- "Farsight2 error has occurred.")); ++ "Farstream error has occurred.")); + purple_media_end(priv->media, NULL, NULL); + } + } else if (gst_structure_has_name(msg->structure, +- "farsight-new-local-candidate")) { ++ "farstream-new-local-candidate")) { + const GValue *value; + FsStream *stream; + FsCandidate *local_candidate; +@@ -924,7 +927,7 @@ gst_handle_message_element(GstBus *bus, + session->id, name, candidate); + g_object_unref(candidate); + } else if (gst_structure_has_name(msg->structure, +- "farsight-local-candidates-prepared")) { ++ "farstream-local-candidates-prepared")) { + const GValue *value; + FsStream *stream; + FsParticipant *participant; +@@ -942,7 +945,7 @@ gst_handle_message_element(GstBus *bus, + g_signal_emit_by_name(self, "candidates-prepared", + session->id, name); + } else if (gst_structure_has_name(msg->structure, +- "farsight-new-active-candidate-pair")) { ++ "farstream-new-active-candidate-pair")) { + const GValue *value; + FsStream *stream; + FsCandidate *local_candidate; +@@ -976,7 +979,7 @@ gst_handle_message_element(GstBus *bus, + g_object_unref(lcandidate); + g_object_unref(rcandidate); + } else if (gst_structure_has_name(msg->structure, +- "farsight-recv-codecs-changed")) { ++ "farstream-recv-codecs-changed")) { + const GValue *value; + GList *codecs; + FsCodec *codec; +@@ -986,10 +989,10 @@ gst_handle_message_element(GstBus *bus, + codec = codecs->data; + + purple_debug_info("backend-fs2", +- "farsight-recv-codecs-changed: %s\n", ++ "farstream-recv-codecs-changed: %s\n", + codec->encoding_name); + } else if (gst_structure_has_name(msg->structure, +- "farsight-component-state-changed")) { ++ "farstream-component-state-changed")) { + const GValue *value; + FsStreamState fsstate; + guint component; +@@ -1025,11 +1028,11 @@ gst_handle_message_element(GstBus *bus, + } + + purple_debug_info("backend-fs2", +- "farsight-component-state-changed: " ++ "farstream-component-state-changed: " + "component: %u state: %s\n", + component, state); + } else if (gst_structure_has_name(msg->structure, +- "farsight-send-codec-changed")) { ++ "farstream-send-codec-changed")) { + const GValue *value; + FsCodec *codec; + gchar *codec_str; +@@ -1039,12 +1042,12 @@ gst_handle_message_element(GstBus *bus, + codec_str = fs_codec_to_string(codec); + + purple_debug_info("backend-fs2", +- "farsight-send-codec-changed: codec: %s\n", ++ "farstream-send-codec-changed: codec: %s\n", + codec_str); + + g_free(codec_str); + } else if (gst_structure_has_name(msg->structure, +- "farsight-codecs-changed")) { ++ "farstream-codecs-changed")) { + const GValue *value; + FsSession *fssession; + GList *sessions; +@@ -1220,8 +1223,12 @@ stream_info_cb(PurpleMedia *media, Purpl + purple_media_is_initiator(media, sid, name)) + return; + +- fs_stream_set_remote_candidates(stream->stream, +- stream->remote_candidates, &err); ++ if (stream->supports_add) ++ fs_stream_add_remote_candidates(stream->stream, ++ stream->remote_candidates, &err); ++ else ++ fs_stream_force_remote_candidates(stream->stream, ++ stream->remote_candidates, &err); + + if (err == NULL) + return; +@@ -1301,6 +1308,7 @@ init_conference(PurpleMediaBackendFs2 *s + GstElement *pipeline; + GstBus *bus; + gchar *name; ++ GKeyFile *default_props; + + priv->conference = FS_CONFERENCE( + gst_element_factory_make(priv->conference_type, NULL)); +@@ -1343,6 +1351,14 @@ init_conference(PurpleMediaBackendFs2 *s + return FALSE; + } + ++ default_props = fs_utils_get_default_element_properties(GST_ELEMENT(priv->conference)); ++ if (default_props != NULL) { ++ priv->notifier = fs_element_added_notifier_new(); ++ fs_element_added_notifier_add(priv->notifier, ++ GST_BIN(priv->confbin)); ++ fs_element_added_notifier_set_properties_from_keyfile(priv->notifier, default_props); ++ } ++ + g_signal_connect(G_OBJECT(bus), "message", + G_CALLBACK(gst_bus_cb), self); + gst_object_unref(bus); +@@ -1559,7 +1575,7 @@ create_session(PurpleMediaBackendFs2 *se + * receiving the src-pad-added signal. + * Only works for non-multicast FsRtpSessions. + */ +- if (is_nice || !strcmp(transmitter, "rawudp")) ++ if (!!strcmp(transmitter, "multicast")) + g_object_set(G_OBJECT(session->session), + "no-rtcp-timeout", 0, NULL); + +@@ -1612,7 +1628,7 @@ create_participant(PurpleMediaBackendFs2 + GError *err = NULL; + + participant = fs_conference_new_participant( +- priv->conference, name, &err); ++ priv->conference, &err); + + if (err) { + purple_debug_error("backend-fs2", +@@ -1622,6 +1638,12 @@ create_participant(PurpleMediaBackendFs2 + return FALSE; + } + ++ if (g_object_class_find_property(G_OBJECT_GET_CLASS(participant), ++ "cname")) { ++ g_object_set(participant, "cname", &name, NULL); ++ } ++ ++ + if (!priv->participants) { + purple_debug_info("backend-fs2", + "Creating hash table for participants\n"); +@@ -1786,6 +1808,40 @@ create_stream(PurpleMediaBackendFs2 *sel + } + } + ++ ++ session = get_session(self, sess_id); ++ ++ if (session == NULL) { ++ purple_debug_error("backend-fs2", ++ "Couldn't find session to create stream.\n"); ++ return FALSE; ++ } ++ ++ participant = get_participant(self, who); ++ ++ if (participant == NULL) { ++ purple_debug_error("backend-fs2", "Couldn't find " ++ "participant to create stream.\n"); ++ return FALSE; ++ } ++ ++ fsstream = fs_session_new_stream(session->session, participant, ++ initiator == TRUE ? type_direction : ++ (type_direction & FS_DIRECTION_RECV), &err); ++ ++ if (fsstream == NULL) { ++ if (err) { ++ purple_debug_error("backend-fs2", ++ "Error creating stream: %s\n", ++ err && err->message ? ++ err->message : "NULL"); ++ g_error_free(err); ++ } else ++ purple_debug_error("backend-fs2", ++ "Error creating stream\n"); ++ return FALSE; ++ } ++ + memcpy(_params, params, sizeof(GParameter) * num_params); + + /* set the controlling mode parameter */ +@@ -1840,45 +1896,22 @@ create_stream(PurpleMediaBackendFs2 *sel + _num_params++; + } + +- session = get_session(self, sess_id); + +- if (session == NULL) { +- purple_debug_error("backend-fs2", +- "Couldn't find session to create stream.\n"); +- return FALSE; +- } +- +- participant = get_participant(self, who); +- +- if (participant == NULL) { +- purple_debug_error("backend-fs2", "Couldn't find " +- "participant to create stream.\n"); +- return FALSE; ++ if(!fs_stream_set_transmitter(fsstream, transmitter, ++ _params, _num_params, &err)) { ++ purple_debug_error("backend-fs2", "Could not set transmitter %s: %s.\n", transmitter, err->message); ++ g_clear_error(&err); ++ g_free(_params); ++ return FALSE; + } +- +- fsstream = fs_session_new_stream(session->session, participant, +- initiator == TRUE ? type_direction : +- (type_direction & FS_DIRECTION_RECV), transmitter, +- _num_params, _params, &err); + g_free(_params); + +- if (fsstream == NULL) { +- if (err) { +- purple_debug_error("backend-fs2", +- "Error creating stream: %s\n", +- err && err->message ? +- err->message : "NULL"); +- g_error_free(err); +- } else +- purple_debug_error("backend-fs2", +- "Error creating stream\n"); +- return FALSE; +- } + + stream = g_new0(PurpleMediaBackendFs2Stream, 1); + stream->participant = g_strdup(who); + stream->session = session; + stream->stream = fsstream; ++ stream->supports_add = !strcmp(transmitter, "nice"); + + priv->streams = g_list_append(priv->streams, stream); + +@@ -1991,7 +2024,11 @@ purple_media_backend_fs2_add_remote_cand + if (purple_media_is_initiator(priv->media, sess_id, participant) || + purple_media_accepted( + priv->media, sess_id, participant)) { +- fs_stream_set_remote_candidates(stream->stream, ++ if (stream->supports_add) ++ fs_stream_add_remote_candidates(stream->stream, ++ stream->remote_candidates, &err); ++ else ++ fs_stream_force_remote_candidates(stream->stream, + stream->remote_candidates, &err); + + if (err) { +diff -upr pidgin-2.10.1.orig/libpurple/media.c pidgin-2.10.1/libpurple/media.c +--- pidgin-2.10.1.orig/libpurple/media.c 2011-12-06 10:44:33.000000000 +0200 ++++ pidgin-2.10.1/libpurple/media.c 2012-03-10 18:21:19.000000000 +0200 +@@ -1067,7 +1067,6 @@ purple_media_add_stream(PurpleMedia *med + { + #ifdef USE_VV + PurpleMediaSession *session; +- PurpleMediaStream *stream = NULL; + + g_return_val_if_fail(PURPLE_IS_MEDIA(media), FALSE); + +@@ -1103,7 +1102,7 @@ purple_media_add_stream(PurpleMedia *med + } + + if (purple_media_get_stream(media, sess_id, who) == NULL) { +- stream = purple_media_insert_stream(session, who, initiator); ++ purple_media_insert_stream(session, who, initiator); + + g_signal_emit(media, purple_media_signals[STATE_CHANGED], + 0, PURPLE_MEDIA_STATE_NEW, +diff -upr pidgin-2.10.1.orig/libpurple/mediamanager.c pidgin-2.10.1/libpurple/mediamanager.c +--- pidgin-2.10.1.orig/libpurple/mediamanager.c 2011-12-06 10:44:33.000000000 +0200 ++++ pidgin-2.10.1/libpurple/mediamanager.c 2012-03-10 18:27:05.000000000 +0200 +@@ -39,7 +39,7 @@ + #ifdef USE_VV + #include <media/backend-fs2.h> + +-#include <gst/farsight/fs-element-added-notifier.h> ++#include <farstream/fs-element-added-notifier.h> + #include <gst/interfaces/xoverlay.h> + + /** @copydoc _PurpleMediaManagerPrivate */ diff --git a/extra/xf86-input-synaptics/PKGBUILD b/extra/xf86-input-synaptics/PKGBUILD index a3da84b14..28e169f2c 100644 --- a/extra/xf86-input-synaptics/PKGBUILD +++ b/extra/xf86-input-synaptics/PKGBUILD @@ -1,18 +1,17 @@ -# $Id: PKGBUILD 153311 2012-03-12 20:52:51Z andyrtr $ +# $Id: PKGBUILD 153467 2012-03-14 18:01:52Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Tobias Powalowski <tpowa@archlinux.org> # Contributor: Thomas Bächler <thomas@archlinux.org> # Contributor: Alexander Baldeck <alexander@archlinux.org> pkgname=xf86-input-synaptics -pkgver=1.5.99 -pkgrel=0.2 -_gitver=dfc3a8ed713c2878407c6443c4d3092da3125e0c +pkgver=1.5.99.901 +pkgrel=1 pkgdesc="Synaptics driver for notebook touchpads" arch=('i686' 'x86_64') license=('custom') url="http://xorg.freedesktop.org/" -depends=('libxtst') +depends=('libxtst' 'mtdev') makedepends=('xorg-server-devel>=1.11.99.902' 'libxi' 'libx11') conflicts=('xorg-server<1.11.99.902') replaces=('synaptics') @@ -21,23 +20,19 @@ conflicts=('synaptics') groups=('xorg-drivers' 'xorg') options=(!libtool) backup=('etc/X11/xorg.conf.d/10-synaptics.conf') -source=(#http://xorg.freedesktop.org/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 - http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/snapshot/xf86-input-synaptics-${_gitver}.tar.gz +source=(http://xorg.freedesktop.org/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 10-synaptics.conf) -md5sums=('5e21cc5c7f61802ac340968caf9db7de' - '3b81a81b958dfe3cac3cdef7ee85f1ce') +sha1sums=('8836b1c2bf443b2c11f38457e203c5309698d9d0' + '68e1f4ef5e1038231d210eb422fa4d18c5922f0f') build() { -# cd "${srcdir}/${pkgname}-${pkgver}" - cd ${srcdir}/${pkgname}* - autoreconf -fi + cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr make } package() { - #cd "${srcdir}/${pkgname}-${pkgver}" - cd ${srcdir}/${pkgname}* + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/etc/X11/xorg.conf.d" install -m644 "${srcdir}/10-synaptics.conf" "${pkgdir}/etc/X11/xorg.conf.d/" diff --git a/gnome-unstable/pidgin/PKGBUILD b/gnome-unstable/pidgin/PKGBUILD index f01631fdc..7309d80d8 100644 --- a/gnome-unstable/pidgin/PKGBUILD +++ b/gnome-unstable/pidgin/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 152945 2012-03-10 19:11:33Z ibiru $ +# $Id: PKGBUILD 153446 2012-03-14 12:10:51Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Ionut Biru <ibiru@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> @@ -6,8 +6,8 @@ # Contributor: Lucien Immink <l.immink@student.fnt.hvu.nl> pkgname=('pidgin' 'libpurple' 'finch') -pkgver=2.10.1 -pkgrel=3 +pkgver=2.10.2 +pkgrel=2 arch=('i686' 'x86_64') url="http://pidgin.im/" license=('GPL') @@ -17,19 +17,13 @@ makedepends=('startup-notification' 'gtkspell' 'libxss' 'nss' 'libsasl' 'libsm' 'networkmanager') options=('!libtool') source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2 - nm09-more.patch port-to-farstream-v2.patch) -sha256sums=('2f28bddc5edcd714d607d74126c8958ae7c258602b3929e3e6e783d3cb1beac8' - '7e173ea37b86b604284da18ea015ee03ccd444f3e980f440c201957d37ee820e' +sha256sums=('e5cdd29056d36677cb81225c3b36b1bcde64605e201492f6e2fdf27ff24d32b8' '03ba48e0da1331a976efc28a66810be4f51599a2b8065ac449965e0aefca4482') build() { cd "$srcdir/$pkgname-$pkgver" - # Further fixes for NetworkManager 0.9 - # http://developer.pidgin.im/ticket/13859 - patch -Np1 -i "$srcdir/nm09-more.patch" - # Apply patch for farsight -> farstream transition # http://developer.pidgin.im/ticket/14936 patch -Np1 -i "$srcdir/port-to-farstream-v2.patch" @@ -41,9 +35,6 @@ build() { sed -i 's/env python$/&2/' */plugins/*.py \ libpurple/purple-{remote,notifications-example,url-handler} - # Pidgin doesn't explicitly link to libm - LDFLAGS+=' -Wl,--copy-dt-needed-entries' - ./configure \ --prefix=/usr \ --sysconfdir=/etc \ diff --git a/kernels/linux-libre-rt/PKGBUILD b/kernels/linux-libre-rt/PKGBUILD index 6f14461fe..1b18356e4 100644 --- a/kernels/linux-libre-rt/PKGBUILD +++ b/kernels/linux-libre-rt/PKGBUILD @@ -13,11 +13,11 @@ pkgname=('linux-libre-rt' 'linux-libre-rt-headers') # Build stock -LIBRE kernel # pkgname=linux-custom # Build kernel with a different name _kernelname=-LIBRE-RT _basekernel=3.2 -_releasever=6 -_rtpatchver=rt13 +_releasever=11 +_rtpatchver=rt20 _pkgver=${_basekernel}.${_releasever} pkgver=${_basekernel}.${_releasever}_${_rtpatchver} -pkgrel=2 +pkgrel=1 arch=('i686' 'x86_64') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -33,17 +33,19 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-li 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' - 'i915-gpu-finish.patch') + 'i915-gpu-finish.patch' + 'ext4-options.patch') md5sums=('27c641c4f6785fc647cdd3e44963a55c' - 'c4b411e90294fcb768d5242a6c21c0d7' - '28f2792000aa309437d8aefdcba65634' - 'b82b72aed2edc07797f7c29adf0b8793' - '92071f14b33bf6d18be512e61989d0c4' + '09abd6a4e9ae7373a3151b61781ab2fe' + 'b469c9b82f05abe5491154ea18aa06c9' + '6141ab0cb60a5cf9e6ee3bdf8c8c79b1' + 'c2f3423d7c7d8e5776e961b75a52a3fc' '0d001b0277f318bc40a263aaa980d44e' '04b21c79df0a952c22d681dd4f4562df' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' - '4cd79aa147825837dc8bc9f6b736c0a0') + '4cd79aa147825837dc8bc9f6b736c0a0' + 'c8299cf750a84e12d60b372c8ca7e1e8') build() { cd "${srcdir}/linux-${_basekernel}" @@ -74,6 +76,10 @@ build() { # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch" + # fix ext4 module to mount ext3/2 correct + # https://bugs.archlinux.org/task/28653 + patch -Np1 -i "${srcdir}/ext4-options.patch" + cat "${srcdir}/config.${CARCH}" > ./.config # simpler if [ "${_kernelname}" != "" ]; then @@ -109,7 +115,7 @@ build() { } package_linux-libre-rt() { - pkgdesc="The Linux-libre Kernel and modules with RT patches" + pkgdesc="The Linux-libre Kernel and modules (with realtime preemption)" depends=('coreutils' 'module-init-tools>=3.16' 'mkinitcpio>=0.7') optdepends=('crda: to set the correct wireless channels of your country') provides=('kernel26-rt' "linux-rt=$_pkgver") @@ -156,7 +162,7 @@ package_linux-libre-rt() { } package_linux-libre-rt-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre-rt kernel" + pkgdesc="Header files and scripts for building modules for linux-libre kernel (with realtime preemption)" provides=('kernel26-rt-headers' "linux-rt-headers=${_pkgver}") conflicts=('kernel26-rt-headers' 'kernel26-libre-rt-headers' 'linux-rt-headers') replaces=('kernel26-rt-headers' 'kernel26-libre-rt-headers' 'linux-rt-headers') diff --git a/kernels/linux-libre-rt/config.i686 b/kernels/linux-libre-rt/config.i686 index dfb099e19..749ad1e09 100644 --- a/kernels/linux-libre-rt/config.i686 +++ b/kernels/linux-libre-rt/config.i686 @@ -60,7 +60,7 @@ CONFIG_IRQ_WORK=y CONFIG_EXPERIMENTAL=y CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="libre-rt" +CONFIG_LOCALVERSION="-LIBRE-RT" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y diff --git a/kernels/linux-libre-rt/config.x86_64 b/kernels/linux-libre-rt/config.x86_64 index 37cea6fa0..13386d7f3 100644 --- a/kernels/linux-libre-rt/config.x86_64 +++ b/kernels/linux-libre-rt/config.x86_64 @@ -62,7 +62,7 @@ CONFIG_IRQ_WORK=y CONFIG_EXPERIMENTAL=y CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="-libre-rt" +CONFIG_LOCALVERSION="-LIBRE-RT" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y diff --git a/kernels/linux-libre-rt/ext4-options.patch b/kernels/linux-libre-rt/ext4-options.patch new file mode 100644 index 000000000..812b05f04 --- /dev/null +++ b/kernels/linux-libre-rt/ext4-options.patch @@ -0,0 +1,49 @@ +Report: https://bbs.archlinux.org/profile.php?id=33804 +Signed-off-by: Tom Gundersen <teg@jklm.no> +Cc: Thomas Baechler <thomas@archlinux.org> +Cc: Tobias Powalowski <tobias.powalowski@googlemail.com> +Cc: Dave Reisner <d@falconindy.com> +--- + fs/ext4/super.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/fs/ext4/super.c b/fs/ext4/super.c +index 502c61f..30de9cd 100644 +--- a/fs/ext4/super.c ++++ b/fs/ext4/super.c +@@ -1333,6 +1333,7 @@ enum { + Opt_inode_readahead_blks, Opt_journal_ioprio, + Opt_dioread_nolock, Opt_dioread_lock, + Opt_discard, Opt_nodiscard, Opt_init_itable, Opt_noinit_itable, ++ Opt_nocheck, Opt_reservation, Opt_noreservation, Opt_journal_inum, + }; + + static const match_table_t tokens = { +@@ -1408,6 +1409,10 @@ static const match_table_t tokens = { + {Opt_init_itable, "init_itable=%u"}, + {Opt_init_itable, "init_itable"}, + {Opt_noinit_itable, "noinit_itable"}, ++ {Opt_nocheck, "nocheck"}, ++ {Opt_reservation, "reservation"}, ++ {Opt_noreservation, "noreservation"}, ++ {Opt_journal_inum, "journal=%u"}, + {Opt_err, NULL}, + }; + +@@ -1904,6 +1909,16 @@ set_qf_format: + case Opt_noinit_itable: + clear_opt(sb, INIT_INODE_TABLE); + break; ++#ifdef CONFIG_EXT4_USE_FOR_EXT23 ++ case Opt_nocheck: ++ case Opt_reservation: ++ case Opt_noreservation: ++ case Opt_journal_inum: ++ ext4_msg(sb, KERN_WARNING, ++ "ext3 mount option \"%s\" ignored " ++ "by ext4 module", p); ++ break; ++#endif + default: + ext4_msg(sb, KERN_ERR, + "Unrecognized mount option \"%s\" "
\ No newline at end of file diff --git a/kernels/linux-libre-rt/linux-libre-rt.install b/kernels/linux-libre-rt/linux-libre-rt.install index 79c6aea4d..8ae1568d8 100644 --- a/kernels/linux-libre-rt/linux-libre-rt.install +++ b/kernels/linux-libre-rt/linux-libre-rt.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-rt -KERNEL_VERSION=3.2.6-2-LIBRE-RT +KERNEL_VERSION=3.2.11-1-LIBRE-RT post_install () { # updating module dependencies diff --git a/libre/linux-libre-lts/.directory b/libre/linux-libre-lts/.directory new file mode 100644 index 000000000..60156bc93 --- /dev/null +++ b/libre/linux-libre-lts/.directory @@ -0,0 +1,2 @@ +[Dolphin] +Timestamp=2012,3,15,16,10,14 diff --git a/libre/linux-libre-lts/PKGBUILD b/libre/linux-libre-lts/PKGBUILD index cbbaa63b0..28cb4339d 100644 --- a/libre/linux-libre-lts/PKGBUILD +++ b/libre/linux-libre-lts/PKGBUILD @@ -9,10 +9,10 @@ pkgname=('linux-libre-lts' 'linux-libre-lts-headers') # Build stock -LIBRE kerne # pkgname=linux-custom # Build kernel with a different name _kernelname=-LIBRE-LTS _basekernel=3.0 -_sublevel=23 +_sublevel=24 pkgver=${_basekernel}.${_sublevel} -_lxopkgver=${_basekernel}.22 # nearly always the same as pkgver -pkgrel=3 +_lxopkgver=${_basekernel}.24 # nearly always the same as pkgver +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -32,7 +32,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-li 'ext4-options.patch' "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-libre-lemote_0lxo_mipsel.tar.bz2") md5sums=('44e7bc20c235a193f9b6123a8d5e9509' - '5b6f929403ddad35a65b934ed5df2f8a' + '6e746bffa81b08f165d3a5328eac0454' '054af37f538b74a8090fc3e783a2edfa' 'e195768d5b8cbe788dbe615561d4314f' 'd2c0701480bce49fd4b40dc46b9863f1' @@ -42,7 +42,7 @@ md5sums=('44e7bc20c235a193f9b6123a8d5e9509' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' '74d2b710d6c97aee441d7566f8f68815' - '248d057fd2341d315ada5e844cdbdc1f') + '0b11552c826f65b666dfb53f2c8c12bb') if [ "$CARCH" != "mips64el" ]; then # Don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] @@ -92,7 +92,7 @@ build() { sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \ - -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"-LIBRE\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" \ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else diff --git a/libre/linux-libre-lts/linux-libre-lts.install b/libre/linux-libre-lts/linux-libre-lts.install index ab23b07a1..642e9d52d 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.23-3-LIBRE-LTS +KERNEL_VERSION=3.0.24-1-LIBRE-LTS post_install () { # updating module dependencies diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index 8e2cbd99e..36be2cd14 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -12,10 +12,10 @@ pkgname=('linux-libre' 'linux-libre-headers' 'linux-libre-docs') # Build stock - # pkgname=linux-custom # Build kernel with a different name _kernelname=-LIBRE _basekernel=3.2 -_sublevel=9 +_sublevel=11 pkgver=${_basekernel}.${_sublevel} -_lxopkgver=${_basekernel}.7 # nearly always the same as pkgver -pkgrel=3 +_lxopkgver=${_basekernel}.11 # nearly always the same as pkgver +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -36,7 +36,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-li 'ext4-options.patch' "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-libre-lemote_0lxo_mipsel.tar.bz2") md5sums=('27c641c4f6785fc647cdd3e44963a55c' - '8e601878ccdd37111cc84500ebd81387' + '09abd6a4e9ae7373a3151b61781ab2fe' '921f108c7a4985f7f8b41d72ca9bf915' 'f18ac3f790b0daa43f21dda04cceb90b' 'a8a3843046926eb7ab81312cd438c5c5' @@ -47,7 +47,7 @@ md5sums=('27c641c4f6785fc647cdd3e44963a55c' '263725f20c0b9eb9c353040792d644e5' '4cd79aa147825837dc8bc9f6b736c0a0' 'f36222e7ce20c8e4dc27376f9be60f6c' - '690e6201d219638544d2fba3996dc822') + 'd796d625ace45a4e0aa676df9248d703') if [ "$CARCH" != "mips64el" ]; then # Don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] @@ -101,7 +101,7 @@ build() { sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \ - -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"-LIBRE\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" \ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else diff --git a/libre/linux-libre/linux-libre.install b/libre/linux-libre/linux-libre.install index 9e530d55f..83df617a2 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.2.9-3-LIBRE +KERNEL_VERSION=3.2.11-1-LIBRE post_install () { # updating module dependencies diff --git a/libre/virtualbox-libre/LocalConfig.kmk b/libre/virtualbox-libre/LocalConfig.kmk index e5cbcebcd..d42cd3e1f 100644 --- a/libre/virtualbox-libre/LocalConfig.kmk +++ b/libre/virtualbox-libre/LocalConfig.kmk @@ -14,6 +14,6 @@ VBOX_WITH_REGISTRATION_REQUEST = VBOX_WITH_UPDATE_REQUEST = VBOX_WITH_VNC := 1 VBOX_BLD_PYTHON = python2 -VBOX_JAVA_HOME = /usr/lib/jvm/java-6-openjdk +VBOX_JAVA_HOME = /usr/lib/jvm/java-7-openjdk VBOX_GCC_WERR = VBOX_GCC_WARN = diff --git a/libre/virtualbox-libre/PKGBUILD b/libre/virtualbox-libre/PKGBUILD index edf35ff62..73e443d6a 100644 --- a/libre/virtualbox-libre/PKGBUILD +++ b/libre/virtualbox-libre/PKGBUILD @@ -1,5 +1,6 @@ # $Id: PKGBUILD 63763 2012-02-05 12:13:00Z ibiru $ -# Maintainer: Nicolas Reynolds <fauno@kiwwwi.com.ar> +# Maintainer (Parabola): Nicolas Reynolds <fauno@kiwwwi.com.ar> +# Contributor (Parabola): Jorge López <jorginho@adinet.com.uy> # Changes: # * Adapt to linux-libre # * virtualbox-{archlinux,parabola}-* @@ -9,35 +10,41 @@ #Maintainer: Ionut Biru <ibiru@archlinux.org> pkgbase=virtualbox-libre pkgname=('virtualbox-libre' 'virtualbox-parabola-additions' 'virtualbox-sdk' 'virtualbox-source') -pkgver=4.1.8 -pkgrel=2 +pkgver=4.1.10 +pkgrel=1 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL' 'custom') makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libxcursor' 'qt' 'libidl2' 'sdl_ttf' 'alsa-lib' 'libpulse' 'libxtst' -'xalan-c' 'sdl' 'libxmu' 'curl' 'python2' 'linux-libre-headers' 'mesa' 'libxrandr' 'libxinerama' 'libvncserver' 'openjdk6' 'gsoap' 'vde2') +'xalan-c' 'sdl' 'libxmu' 'curl' 'python2' 'linux-libre-headers' 'mesa' 'libxrandr' 'libxinerama' 'libvncserver' 'jdk7-openjdk' 'gsoap' 'vde2') #'xorg-server-devel' 'xf86driproto' 'libxcomposite') [[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc') source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2 - 10-vboxdrv.rules vboxdrv-reference.patch LocalConfig.kmk vboxbuild - change_default_driver_dir.patch vbox-service.conf vbox-service.rc) -md5sums=('2092bba46baa62fab5520d67dee2ece8' + 10-vboxdrv.rules vboxdrv-reference.patch gsoap.patch LocalConfig.kmk vboxbuild + change_default_driver_dir.patch vbox-service.conf vbox-service.rc + vboxweb.conf vboxweb.rc) + +md5sums=('263e495ef3a7ab75943af28d446ee702' '5f85710e0b8606de967716ded7b2d351' - '6ab2455c391d8cc005e2f4461ae26a3b' - '78ffa67ff131680f1d2b6f06d4325c5b' - '67688bff176d3c6fac5664dc282fea52' + '755ab0dd9bcacf2c00d2275b1ca69547' + 'b9f4da759d23b60b69b12005213c3aa7' + 'a1ff1d1b4423556887e48a32978226a6' + '3c96faa76894c182c1bb56bb30d9a17e' '97e193f050574dd272a38e5ee5ebe62b' '3c08ad30b89add47d3f45121200a5360' - 'e7416331d0bc331f3b5aae3e5d104642') + '208cf5f842eb2e3a5b6dcfc59080d26c' + '3ac185709bfe688bb753c46e170d0546' + 'c159d683ba1947290fc2ad2c64194150') _extramodules=extramodules-3.2-LIBRE _kernver="$(cat /lib/modules/${_extramodules}/version)" build() { - cd "$srcdir/VirtualBox-${pkgver}_OSE" + cd "$srcdir/VirtualBox-${pkgver}" patch -Np1 -i "$srcdir/vboxdrv-reference.patch" patch -Np1 -i "$srcdir/change_default_driver_dir.patch" + patch -Np0 -i "$srcdir//gsoap.patch" cp "$srcdir/LocalConfig.kmk" . @@ -66,11 +73,12 @@ package_virtualbox-libre() { provides=("virtualbox=$pkgver") install=virtualbox.install - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin" mkdir -p "$pkgdir"/usr/{bin,lib/virtualbox/components,lib/virtualbox/ExtensionPacks,share/virtualbox/nls} + #Binaries and Wrapper with Launchers install -m 0755 VBox.sh "$pkgdir/usr/bin/VBox" @@ -116,23 +124,30 @@ package_virtualbox-libre() { echo 'INSTALL_DIR=/usr/lib/virtualbox' > "$pkgdir/etc/vbox/vbox.cfg" #udev and licence - install -D -m 0644 "$srcdir/VirtualBox-${pkgver}_OSE/COPYING" \ + install -D -m 0644 "$srcdir/VirtualBox-${pkgver}/COPYING" \ "$pkgdir/usr/share/licenses/virtualbox/LICENSE" install -D -m 0644 "$srcdir/10-vboxdrv.rules" \ "$pkgdir/lib/udev/rules.d/10-vboxdrv.rules" + + # install rc.d script + install -D -m755 "$srcdir/vboxweb.rc" "$pkgdir/etc/rc.d/vboxweb" + # install sample config + install -D -m644 "$srcdir/vboxweb.conf" "$pkgdir/etc/conf.d/vboxweb" + } package_virtualbox-source() { pkgdesc="VirtualBox kernel modules source" depends=(gcc make) provides=(virtualbox-modules) - optdepends=('linux-libre-headers') + optdepends=('linux-libre-headers' + 'linux-libre-lts-headers') install=virtualbox-source.install - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + source "$srcdir/VirtualBox-${pkgver}/env.sh" mkdir -p $pkgdir/usr/lib/virtualbox - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin" #sources for modules cp -r src ${pkgdir}/usr/lib/virtualbox @@ -146,8 +161,8 @@ package_virtualbox-sdk() { mkdir -p "$pkgdir/usr/lib/virtualbox" - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + source "$srcdir/VirtualBox-${pkgver}/env.sh" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin" install -D -m 0755 vboxshell.py "$pkgdir/usr/lib/virtualbox/vboxshell.py" #python sdk @@ -165,19 +180,19 @@ package_virtualbox-parabola-additions(){ conflicts=('virtualbox-guest-additions' 'virtualbox-archlinux-additions') provides=("virtualbox-archlinux-additions=${pkgver}") - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" install -d "$pkgdir"/{usr/bin,sbin} install -m755 VBoxClient VBoxControl VBoxService "$pkgdir/usr/bin" install -m755 mount.vboxsf "$pkgdir/sbin" - install -m755 -D "$srcdir"/VirtualBox-${pkgver}_OSE/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ + install -m755 -D "$srcdir"/VirtualBox-${pkgver}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ "$pkgdir"/usr/bin/VBoxClient-all - install -m755 -D "$srcdir"/VirtualBox-${pkgver}_OSE/src/VBox/Additions/x11/Installer/vboxclient.desktop \ + install -m755 -D "$srcdir"/VirtualBox-${pkgver}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ "$pkgdir"/etc/xdg/autostart/vboxclient.desktop - install -D vboxvideo_drv_111.so \ + install -D vboxvideo_drv_112.so \ "$pkgdir/usr/lib/xorg/modules/drivers/vboxvideo.so" install -d "$pkgdir/usr/lib/xorg/modules/dri" install -m755 VBoxOGL*.so "$pkgdir/usr/lib" @@ -185,8 +200,9 @@ package_virtualbox-parabola-additions(){ install -m755 -D pam_vbox.so "$pkgdir/lib/security/pam_vbox.so" # install rc.d script - install -D -m755 "${srcdir}/vbox-service.rc" "${pkgdir}/etc/rc.d/vbox-service" + install -D -m755 "$srcdir/vbox-service.rc" "$pkgdir/etc/rc.d/vbox-service" # install sample config - install -D -m644 "${srcdir}/vbox-service.conf" "${pkgdir}/etc/conf.d/vbox-service" + install -D -m644 "$srcdir/vbox-service.conf" "$pkgdir/etc/conf.d/vbox-service" } + diff --git a/libre/virtualbox-libre/gsoap.patch b/libre/virtualbox-libre/gsoap.patch new file mode 100644 index 000000000..c49caa720 --- /dev/null +++ b/libre/virtualbox-libre/gsoap.patch @@ -0,0 +1,11 @@ +--- configure.orig 2012-03-14 08:40:02.447527213 +0000 ++++ configure 2012-03-14 09:05:01.535432453 +0000 +@@ -1959,7 +1959,7 @@ + else + cnf_append "VBOX_GSOAP_CXX_SOURCES" "" + fi +- cnf_append "VBOX_GSOAP_CXX_LIBS" "libgsoap++" ++ cnf_append "VBOX_GSOAP_CXX_LIBS" "libgsoapssl++ libz" + log_success "found" + else + log_failure "stlvector.h not found -- disabling webservice" diff --git a/libre/virtualbox-libre/vbox-service.rc b/libre/virtualbox-libre/vbox-service.rc index 6f1b8d892..96233f66d 100644 --- a/libre/virtualbox-libre/vbox-service.rc +++ b/libre/virtualbox-libre/vbox-service.rc @@ -27,7 +27,7 @@ case "$1" in ;; status) stat_busy "Checking $name status"; - ck_status $name + ck_status vbox-service ;; *) echo "usage: $0 {start|stop|restart|status}" diff --git a/libre/virtualbox-libre/vboxbuild b/libre/virtualbox-libre/vboxbuild index e6fb94edd..4bc8e0c9d 100644 --- a/libre/virtualbox-libre/vboxbuild +++ b/libre/virtualbox-libre/vboxbuild @@ -83,4 +83,3 @@ if (( ${#MODLIST[*]} )); then stat_busy "Reloading VirtualBox kernel modules" modprobe -a "${MODLIST[@]}" && stat_done || stat_fail fi - diff --git a/libre/virtualbox-libre/vboxdrv-reference.patch b/libre/virtualbox-libre/vboxdrv-reference.patch index 710e2e511..682175798 100644 --- a/libre/virtualbox-libre/vboxdrv-reference.patch +++ b/libre/virtualbox-libre/vboxdrv-reference.patch @@ -16,7 +16,7 @@ diff -Nur VirtualBox-4.1.6_OSE.orig/src/VBox/Frontends/VirtualBox/src/main.cpp V QString g_QStrHintOtherWrongDriverVersion = QApplication::tr( @@ -90,11 +89,8 @@ - + QString g_QStrHintLinuxWrongDriverVersion = QApplication::tr( "The VirtualBox kernel modules do not match this version of " - "VirtualBox. The installation of VirtualBox was apparently not " @@ -27,7 +27,7 @@ diff -Nur VirtualBox-4.1.6_OSE.orig/src/VBox/Frontends/VirtualBox/src/main.cpp V + "VirtualBox. Reload the modules or if you don't use our stock kernel execute<br/><br/> " + " <font color=blue>'/usr/bin/vboxbuild'</font><br/><br/>" ); - + QString g_QStrHintOtherNoDriver = QApplication::tr( diff -Nur VirtualBox-4.1.6_OSE.orig/src/VBox/Installer/linux/VBox.sh VirtualBox-4.1.6_OSE/src/VBox/Installer/linux/VBox.sh --- VirtualBox-4.1.6_OSE.orig/src/VBox/Installer/linux/VBox.sh 2011-11-04 17:22:13.549415814 +0000 diff --git a/libre/virtualbox-libre/vboxweb.conf b/libre/virtualbox-libre/vboxweb.conf new file mode 100644 index 000000000..49d82d828 --- /dev/null +++ b/libre/virtualbox-libre/vboxweb.conf @@ -0,0 +1,11 @@ +# WebService Mandatory Variables +#VBOXWEB_USER= + +# WebService Variables +#VBOXWEB_LOGFILE= +#$VBOXWEB_HOST= +#$VBOXWEB_PORT= +#$VBOXWEB_TIMEOUT= +#$VBOXWEB_CHECK_INTERVAL= +#$VBOXWEB_THREADS= +#$VBOXWEB_KEEPALIVE= diff --git a/libre/virtualbox-libre/vboxweb.rc b/libre/virtualbox-libre/vboxweb.rc new file mode 100644 index 000000000..97273e3c7 --- /dev/null +++ b/libre/virtualbox-libre/vboxweb.rc @@ -0,0 +1,86 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/vbox/vbox.cfg +. /etc/conf.d/vboxweb + +BINARY="$INSTALL_DIR/vboxwebsrv" + +start() { + stat_busy "Starting VirtualBox Web Service"; + if ! pidof -o %PPID $BINARY >/dev/null; then + [[ "$VBOXWEB_USER" ]] || stat_die + lsmod | grep -q "vboxdrv[^_-]" || stat_die + PARAMS="--background" + [[ "$VBOXWEB_HOST" ]] && PARAMS+=" -H $VBOXWEB_HOST" + [[ "$VBOXWEB_PORT" ]] && PARAMS+=" -p $VBOXWEB_PORT" + [[ "$VBOXWEB_TIMEOUT" ]] && PARAMS+=" -t $VBOXWEB_TIMEOUT" + [[ "$VBOXWEB_CHECK_INTERVAL" ]] && PARAMS+=" -i $VBOXWEB_CHECK_INTERVAL" + [[ "$VBOXWEB_THREADS" ]] && PARAMS+=" -T $VBOXWEB_THREADS" + [[ "$VBOXWEB_KEEPALIVE" ]] && PARAMS+=" -k $VBOXWEB_KEEPALIVE" + [[ "$VBOXWEB_LOGFILE" ]] && PARAMS+=" -F $VBOXWEB_LOGFILE" + # prevent inheriting this setting to VBoxSVC + unset VBOX_RELEASE_LOG_DEST + su - $VBOXWEB_USER -c "$BINARY $PARAMS" &>/dev/null + # ugly: wait until the final process has forked + sleep .2 + if pidof -o %PPID $BINARY >/dev/null; then + add_daemon vboxweb + stat_done + else + stat_die + fi + else + stat_die + fi +} + +stop() { + stat_busy "Stopping VirtualBox Web Service" + PID=$(pidof -o %PPID $BINARY) + [[ $PID ]] && kill $PID &>/dev/null + if ! pidof -o %PPID $BINARY >/dev/null; then + rm_daemon vboxweb + stat_done + else + stat_die + fi +} + +restart() { + stop && start +} + +status() { + stat_busy "Checking for VirtualBox Web Service" + if pidof -o %PPID $BINARY >/dev/null; then + stat_done + else + stat_fail + false + fi +} + +case "$1" in +start) + start + ;; +stop) + stop + ;; +restart) + restart + ;; +force-reload) + restart + ;; +status) + status + ;; +*) + echo "Usage: $0 {start|stop|restart|status}" + exit 1 +esac + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/libre/virtualbox-libre/virtualbox.install b/libre/virtualbox-libre/virtualbox.install index 29646e973..6c9baa21e 100644 --- a/libre/virtualbox-libre/virtualbox.install +++ b/libre/virtualbox-libre/virtualbox.install @@ -20,7 +20,7 @@ post_install() { post_upgrade() { getent group vboxusers >> /dev/null || usr/sbin/groupadd -g 108 vboxusers utils - if [ "$(vercmp $2 4.1.6-1)" -lt 0 ]; then + if [ "$(vercmp $2 4.1.10-1)" -lt 0 ]; then /bin/cat << EOF ===> Starting with virtualbox version 4.1.6-1, kernel modules handling is done by virtualbox-modules. ===> Use virtualbox-source package if you don't use our stock linux-libre package. diff --git a/libre/virtualbox-modules/PKGBUILD b/libre/virtualbox-modules/PKGBUILD index 9359edfb2..a99a9ecaf 100644 --- a/libre/virtualbox-modules/PKGBUILD +++ b/libre/virtualbox-modules/PKGBUILD @@ -1,18 +1,22 @@ # $Id: PKGBUILD 62846 2012-01-27 17:21:04Z ibiru $ #Maintainer: Ionut Biru <ibiru@archlinux.org> +#Contributor (Parabola): Jorge López <jorginho@adinet.com.uy> pkgbase=virtualbox-modules -pkgname=('virtualbox-modules' 'virtualbox-parabola-modules') -pkgver=4.1.8 -pkgrel=3 +pkgname=('virtualbox-modules' 'virtualbox-libre-modules') +pkgver=4.1.10 +pkgrel=1 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL') +replaces=('virtualbox-modules') +conflicts=('virtualbox-modules') +provides=("virtualbox-modules=$pkgver") makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libpng' 'libidl2' 'xalan-c' 'sdl' 'linux-headers') [[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc') source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2 LocalConfig.kmk 60-vboxguest.rules) -md5sums=('2092bba46baa62fab5520d67dee2ece8' +md5sums=('263e495ef3a7ab75943af28d446ee702' '4c88bd122677a35f68abd76eb01b378b' 'ed1341881437455d9735875ddf455fbe') @@ -23,7 +27,7 @@ export KERN_DIR=/lib/modules/${_kernver}/build export KERN_INCL=/usr/src/linux-${_kernver}/include/ build() { - cd "$srcdir/VirtualBox-${pkgver}_OSE" + cd "$srcdir/VirtualBox-${pkgver}" cp "$srcdir/LocalConfig.kmk" . @@ -43,22 +47,22 @@ build() { source ./env.sh kmk all - make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" - make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" + make -C "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + make -C "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" } -package_virtualbox-parabola-modules(){ +package_virtualbox-libre-modules(){ pkgdesc="Additions only for Parabola guests (kernel modules)" license=('GPL') - install=virtualbox-parabola-modules.install + install=virtualbox-libre-modules.install depends=('linux>=3.2' 'linux<3.3') replaces=('virtualbox-guest-modules' 'virtualbox-archlinux-modules') conflicts=('virtualbox-guest-modules' 'virtualbox-archlinux-modules') provides=("virtualbox-archlinux-modules=$pkgver") - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" for module in vboxguest.ko vboxsf.ko vboxvideo.ko; do install -D -m644 ${module} \ @@ -70,7 +74,7 @@ package_virtualbox-parabola-modules(){ find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; - sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-parabola-modules.install" + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-libre-modules.install" } package_virtualbox-modules(){ @@ -79,10 +83,10 @@ package_virtualbox-modules(){ install=virtualbox-modules.install depends=('linux>=3.2' 'linux<3.3') - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" install -D -m644 vboxdrv.ko \ "$pkgdir/lib/modules/${_extramodules}/vboxdrv.ko" diff --git a/libre/virtualbox-modules/virtualbox-libre-modules.install b/libre/virtualbox-modules/virtualbox-libre-modules.install new file mode 100644 index 000000000..b542db1ca --- /dev/null +++ b/libre/virtualbox-modules/virtualbox-libre-modules.install @@ -0,0 +1,17 @@ +post_install() { +cat << EOF +===> You may want to load vboxguest, vboxsf and vboxvideo +EOF + EXTRAMODULES='extramodules-3.2-LIBRE' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} + +post_upgrade() { + EXTRAMODULES='extramodules-3.2-LIBRE' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} + +post_remove() { + EXTRAMODULES='extramodules-3.2-LIBRE' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} diff --git a/libre/virtualbox-modules/virtualbox-modules.install b/libre/virtualbox-modules/virtualbox-modules.install index 671c129d6..bc2adbe64 100644 --- a/libre/virtualbox-modules/virtualbox-modules.install +++ b/libre/virtualbox-modules/virtualbox-modules.install @@ -10,7 +10,7 @@ EOF post_upgrade() { EXTRAMODULES='extramodules-3.2-LIBRE' depmod $(cat /lib/modules/$EXTRAMODULES/version) - rmmod vboxdrv || echo 'In order to use the new version, reload all virtualbox modules manually.' + echo 'In order to use the new version, reload all virtualbox modules manually.' } post_remove() { diff --git a/testing/lvm2/11-dm-initramfs.rules b/testing/lvm2/11-dm-initramfs.rules new file mode 100644 index 000000000..d2c167324 --- /dev/null +++ b/testing/lvm2/11-dm-initramfs.rules @@ -0,0 +1,3 @@ +# needed with new udev/mkinitcpio and as implemented in dracut: +# <http://git.kernel.org/?p=boot/dracut/dracut.git;a=commitdiff;h=12b9736228f2b34c15a9cb63be79cf7b6e865b54> +SUBSYSTEM=="block", KERNEL=="dm-[0-9]*", ACTION=="add|change", OPTIONS="db_persist" diff --git a/testing/lvm2/PKGBUILD b/testing/lvm2/PKGBUILD new file mode 100644 index 000000000..6f73b9a38 --- /dev/null +++ b/testing/lvm2/PKGBUILD @@ -0,0 +1,61 @@ +# $Id: PKGBUILD 153478 2012-03-14 22:43:14Z eric $ +# Maintainer: Eric Bélanger <eric@archlinux.org> +# Maintainer: Thomas Bächler <thomas@archlinux.org> + +pkgbase=lvm2 +pkgname=('lvm2' 'device-mapper') +pkgver=2.02.95 +pkgrel=1 +arch=('i686' 'x86_64') +url="http://sourceware.org/lvm2/" +license=('GPL2' 'LGPL2.1') +groups=('base') +source=(ftp://sources.redhat.com/pub/lvm2/LVM2.${pkgver}.tgz{,.asc} + lvm2_install + lvm2_hook + 11-dm-initramfs.rules) +sha1sums=('f61dfbd8e9219291d11de3d70f0b3d20a29fae85' + '45f5e31045065e7bdf5d6f2e21c857b4978024b4' + '7f108b2f2056eb050fc898bf5190ecf9145aed8a' + '7d63aa838703c9f986531a78164b556f765f5cce' + 'f6a554eea9557c3c236df2943bb6e7e723945c41') + +build() { + cd "${srcdir}/LVM2.${pkgver}" + sed -i 's|/usr/bin/tr|/bin/tr|' scripts/lvmdump.sh + unset LDFLAGS + ./configure --prefix= --sysconfdir=/etc --localstatedir=/var --datarootdir=/usr/share \ + --includedir=/usr/include --with-usrlibdir=/usr/lib \ + --enable-pkgconfig --enable-readline --enable-dmeventd --enable-cmdlib --enable-applib \ + --with-udevdir=/lib/udev/rules.d/ --enable-udev_sync --enable-udev_rules + make +} + +package_device-mapper() { + pkgdesc="Device mapper userspace library and tools" + url="http://sourceware.org/dm/" + depends=('glibc' 'udev') + + cd "${srcdir}/LVM2.${pkgver}" + make DESTDIR="${pkgdir}" install_device-mapper + # extra udev rule for device-mapper in initramfs + install -D -m644 "${srcdir}/11-dm-initramfs.rules" "${pkgdir}/lib/initcpio/udev/11-dm-initramfs.rules" +} + +package_lvm2() { + pkgdesc="Logical Volume Manager 2 utilities" + depends=('bash' "device-mapper>=${pkgver}" 'udev' 'readline') + conflicts=('lvm' 'mkinitcpio<0.7') + backup=('etc/lvm/lvm.conf') + options=('!makeflags') + + cd "${srcdir}/LVM2.${pkgver}" + make DESTDIR="${pkgdir}" install_lvm2 + # install applib + make -C liblvm DESTDIR="${pkgdir}" install + # /etc directories + install -d "${pkgdir}"/etc/lvm/{archive,backup} + # mkinitcpio hook + install -D -m644 "${srcdir}/lvm2_hook" "${pkgdir}/lib/initcpio/hooks/lvm2" + install -D -m644 "${srcdir}/lvm2_install" "${pkgdir}/lib/initcpio/install/lvm2" +} diff --git a/testing/lvm2/lvm2_hook b/testing/lvm2/lvm2_hook new file mode 100644 index 000000000..efb104998 --- /dev/null +++ b/testing/lvm2/lvm2_hook @@ -0,0 +1,25 @@ +# vim:set ft=sh: +run_hook () +{ + /sbin/modprobe -q dm-mod >/dev/null 2>&1 + if [ -e "/sys/class/misc/device-mapper" ]; then + if [ ! -e "/dev/mapper/control" ]; then + local major minor + IFS=: read major minor < /sys/class/misc/device-mapper/dev + mkdir /dev/mapper + mknod "/dev/mapper/control" c ${major} ${minor} + fi + + # If the lvmwait= parameter has been specified on the command line + # wait for the device(s) before trying to activate the volume group(s) + for pvdev in ${lvmwait//,/ }; do + poll_device ${pvdev} ${rootdelay} + done + + [ "${quiet}" = "y" ] && LVMQUIET=">/dev/null" + + msg "Activating logical volumes..." + [ -d /etc/lvm ] && /sbin/lvm vgscan + eval /sbin/lvm vgchange --sysinit -a y $LVMQUIET + fi +} diff --git a/testing/lvm2/lvm2_install b/testing/lvm2/lvm2_install new file mode 100644 index 000000000..94175b523 --- /dev/null +++ b/testing/lvm2/lvm2_install @@ -0,0 +1,29 @@ +# vim: set ft=sh: + +build() +{ + MODULES=" dm-mod dm-snapshot dm-mirror" + BINARIES="" + FILES="" + SCRIPT="lvm2" + + add_binary "/sbin/lvm" + add_binary "/sbin/dmsetup" + add_file "/lib/udev/rules.d/10-dm.rules" + add_file "/lib/udev/rules.d/13-dm-disk.rules" + add_file "/lib/udev/rules.d/95-dm-notify.rules" + add_file "/lib/udev/rules.d/11-dm-lvm.rules" + add_file "/lib/initcpio/udev/11-dm-initramfs.rules" "/lib/udev/rules.d/11-dm-initramfs.rules" +} + +help () +{ +cat<<HELPEOF + This hook loads the necessary modules for an LVM2 root device. + + The optional lvmwait= parameter followed by a comma-separated + list of device names can be given on the command line. + It will cause the hook to wait until all given devices exist + before trying to scan and activate any volume groups. +HELPEOF +} diff --git a/testing/openssh/PKGBUILD b/testing/openssh/PKGBUILD new file mode 100644 index 000000000..9d03737c7 --- /dev/null +++ b/testing/openssh/PKGBUILD @@ -0,0 +1,67 @@ +# $Id: PKGBUILD 153489 2012-03-14 23:42:15Z pierre $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: Aaron Griffin <aaron@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +pkgname=openssh +pkgver=5.9p1 +pkgrel=6 +pkgdesc='Free version of the SSH connectivity tools' +arch=('i686' 'x86_64') +license=('custom:BSD') +url='http://www.openssh.org/portable.html' +backup=('etc/ssh/ssh_config' 'etc/ssh/sshd_config' 'etc/pam.d/sshd' 'etc/conf.d/sshd') +depends=('krb5' 'openssl' 'libedit') +optdepends=('x11-ssh-askpass: input passphrase in X without a terminal') +source=("ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz" + 'sshd.confd' + 'sshd.pam' + 'sshd') +sha1sums=('ac4e0055421e9543f0af5da607a72cf5922dcc56' + 'ec102deb69cad7d14f406289d2fc11fee6eddbdd' + '3413909fd45a28701c92e6e5b59c6b65346ddb0f' + '21fa88de6cc1c7912e71655f50896ba17991a1c2') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --libexecdir=/usr/lib/ssh \ + --sysconfdir=/etc/ssh \ + --with-privsep-user=nobody \ + --with-md5-passwords \ + --with-pam \ + --with-mantype=man \ + --with-xauth=/usr/bin/xauth \ + --with-kerberos5=/usr \ + --with-ssl-engine \ + --with-libedit=/usr/lib \ + --disable-strip # stripping is done by makepkg + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + install -Dm755 ../sshd "${pkgdir}"/etc/rc.d/sshd + install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd + install -Dm644 ../sshd.confd "${pkgdir}"/etc/conf.d/sshd + install -Dm644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENCE" + + rm "${pkgdir}"/usr/share/man/man1/slogin.1 + ln -sf ssh.1.gz "${pkgdir}"/usr/share/man/man1/slogin.1.gz + + # additional contrib scripts that we like + install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/findssl.sh + install -Dm755 contrib/ssh-copy-id "${pkgdir}"/usr/bin/ssh-copy-id + install -Dm644 contrib/ssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1 + + # PAM is a common, standard feature to have + sed \ + -e '/^#ChallengeResponseAuthentication yes$/c ChallengeResponseAuthentication no' \ + -e '/^#UsePAM no$/c UsePAM yes' \ + -i "${pkgdir}"/etc/ssh/sshd_config +} diff --git a/testing/openssh/sshd b/testing/openssh/sshd new file mode 100755 index 000000000..1d68fb877 --- /dev/null +++ b/testing/openssh/sshd @@ -0,0 +1,45 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/sshd + +PIDFILE=/var/run/sshd.pid +PID=$(cat $PIDFILE 2>/dev/null) +if ! readlink -q /proc/$PID/exe | grep -q '^/usr/sbin/sshd'; then + PID= + rm $PIDFILE 2>/dev/null +fi + +case "$1" in + start) + stat_busy 'Starting Secure Shell Daemon' + /usr/bin/ssh-keygen -A + [[ -d /var/empty ]] || mkdir -p /var/empty + [[ -z $PID ]] && /usr/sbin/sshd $SSHD_ARGS + if [[ $? -gt 0 ]]; then + stat_fail + else + add_daemon sshd + stat_done + fi + ;; + stop) + stat_busy 'Stopping Secure Shell Daemon' + [[ ! -z $PID ]] && kill $PID &> /dev/null + if [[ $? -gt 0 ]]; then + stat_fail + else + rm_daemon sshd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/openssh/sshd.confd b/testing/openssh/sshd.confd new file mode 100644 index 000000000..5ce7c0079 --- /dev/null +++ b/testing/openssh/sshd.confd @@ -0,0 +1,4 @@ +# +# Parameters to be passed to sshd +# +SSHD_ARGS="" diff --git a/testing/openssh/sshd.pam b/testing/openssh/sshd.pam new file mode 100644 index 000000000..c7b91cdfb --- /dev/null +++ b/testing/openssh/sshd.pam @@ -0,0 +1,12 @@ +#%PAM-1.0 +#auth required pam_securetty.so #Disable remote root +auth required pam_unix.so +auth required pam_env.so +account required pam_nologin.so +account required pam_unix.so +account required pam_time.so +password required pam_unix.so +session required pam_unix_session.so +session required pam_limits.so +-session optional pam_ck_connector.so nox11 +-session optional pam_systemd.so diff --git a/testing/openssl/PKGBUILD b/testing/openssl/PKGBUILD index 1e12fc78f..37dcf5c27 100644 --- a/testing/openssl/PKGBUILD +++ b/testing/openssl/PKGBUILD @@ -1,10 +1,11 @@ -# $Id: PKGBUILD 153275 2012-03-12 20:24:11Z pierre $ +# $Id: PKGBUILD 153487 2012-03-14 23:42:13Z pierre $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=openssl -_ver=1.0.0h +_ver=1.0.1 # use a pacman compatible version scheme -pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} +# pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} +pkgver=$_ver pkgrel=1 pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security' arch=('i686' 'x86_64') @@ -19,8 +20,8 @@ source=("https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz" 'fix-manpages.patch' 'no-rpath.patch' 'ca-dir.patch') -md5sums=('a5bc483c570f2ac3758ce5c19b667fab' - 'ed51bb7b3ed58f5e1e1b642050bdd7c1' +md5sums=('134f168bc2a8333f19f81d684841710b' + 'efbe93c11747fed52e60567819409d8a' '5bbc0655bda2af95bc8eb568963ce8ba' 'dc78d3d06baffc16217519242ce92478' '3bf51be3a1bbd262be46dc619f92aa90') @@ -30,8 +31,10 @@ build() { if [ "${CARCH}" == 'x86_64' ]; then openssltarget='linux-x86_64' + optflags='enable-ec_nistp_64_gcc_128' elif [ "${CARCH}" == 'i686' ]; then openssltarget='linux-elf' + optflags='' fi # avoid conflicts with other man pages @@ -43,7 +46,7 @@ build() { patch -p0 -i $srcdir/ca-dir.patch # mark stack as non-executable: http://bugs.archlinux.org/task/12434 ./Configure --prefix=/usr --openssldir=/etc/ssl --libdir=lib \ - shared zlib enable-md2 \ + shared zlib enable-md2 ${optflags} \ "${openssltarget}" \ -Wa,--noexecstack "${CFLAGS}" "${LDFLAGS}" diff --git a/testing/udev/0001-reinstate-TIMEOUT-handling.patch b/testing/udev/0001-reinstate-TIMEOUT-handling.patch new file mode 100644 index 000000000..9b251b283 --- /dev/null +++ b/testing/udev/0001-reinstate-TIMEOUT-handling.patch @@ -0,0 +1,126 @@ +From 86617453cd78bf88d347f0e75a5be8b5ebac6c2e Mon Sep 17 00:00:00 2001 +From: Tom Gundersen <teg@jklm.no> +Date: Thu, 15 Mar 2012 02:12:43 +0100 +Subject: [PATCH] reinstate TIMEOUT= handling + +This reverts 43d5c5f03645c4b842659f9b5bd0ae465e885e92 and +57c6f8ae5f52a6e8ffc66a54966346f733dded39. + +Signed-off-by: Tom Gundersen <teg@jklm.no> +--- + src/libudev-device.c | 19 +++++++++++++++++++ + src/libudev-private.h | 1 + + src/udevd.c | 13 ++++++++++--- + 3 files changed, 30 insertions(+), 3 deletions(-) + +diff --git a/src/libudev-device.c b/src/libudev-device.c +index 10f28b8..639c367 100644 +--- a/src/libudev-device.c ++++ b/src/libudev-device.c +@@ -68,6 +68,7 @@ struct udev_device { + struct udev_list tags_list; + unsigned long long int seqnum; + unsigned long long int usec_initialized; ++ int timeout; + int devlink_priority; + int refcount; + dev_t devnum; +@@ -160,6 +161,21 @@ static int udev_device_set_devnum(struct udev_device *udev_device, dev_t devnum) + return 0; + } + ++int udev_device_get_timeout(struct udev_device *udev_device) ++{ ++ return udev_device->timeout; ++} ++ ++static int udev_device_set_timeout(struct udev_device *udev_device, int timeout) ++{ ++ char num[32]; ++ ++ udev_device->timeout = timeout; ++ snprintf(num, sizeof(num), "%u", timeout); ++ udev_device_add_property(udev_device, "TIMEOUT", num); ++ return 0; ++} ++ + const char *udev_device_get_devpath_old(struct udev_device *udev_device) + { + return udev_device->devpath_old; +@@ -414,6 +430,8 @@ void udev_device_add_property_from_string_parse(struct udev_device *udev_device, + udev_device_set_devpath_old(udev_device, &property[12]); + } else if (strncmp(property, "SEQNUM=", 7) == 0) { + udev_device_set_seqnum(udev_device, strtoull(&property[7], NULL, 10)); ++ } else if (strncmp(property, "TIMEOUT=", 8) == 0) { ++ udev_device_set_timeout(udev_device, strtoull(&property[8], NULL, 10)); + } else if (strncmp(property, "IFINDEX=", 8) == 0) { + udev_device_set_ifindex(udev_device, strtoull(&property[8], NULL, 10)); + } else if (strncmp(property, "DEVMODE=", 8) == 0) { +@@ -599,6 +617,7 @@ struct udev_device *udev_device_new(struct udev *udev) + udev_list_init(udev, &udev_device->sysattr_value_list, true); + udev_list_init(udev, &udev_device->sysattr_list, false); + udev_list_init(udev, &udev_device->tags_list, true); ++ udev_device->timeout = -1; + udev_device->watch_handle = -1; + /* copy global properties */ + udev_list_entry_foreach(list_entry, udev_get_properties_list_entry(udev)) +diff --git a/src/libudev-private.h b/src/libudev-private.h +index 5f5c64a..ec63b67 100644 +--- a/src/libudev-private.h ++++ b/src/libudev-private.h +@@ -87,6 +87,7 @@ const char *udev_device_get_id_filename(struct udev_device *udev_device); + void udev_device_set_is_initialized(struct udev_device *udev_device); + int udev_device_add_tag(struct udev_device *udev_device, const char *tag); + void udev_device_cleanup_tags_list(struct udev_device *udev_device); ++int udev_device_get_timeout(struct udev_device *udev_device); + unsigned long long udev_device_get_usec_initialized(struct udev_device *udev_device); + void udev_device_set_usec_initialized(struct udev_device *udev_device, unsigned long long usec_initialized); + int udev_device_get_devlink_priority(struct udev_device *udev_device); +diff --git a/src/udevd.c b/src/udevd.c +index 1702217..88e9272 100644 +--- a/src/udevd.c ++++ b/src/udevd.c +@@ -401,7 +401,7 @@ out: + } + } + +-static void event_run(struct event *event) ++static void event_run(struct event *event, bool force) + { + struct udev_list_node *loop; + +@@ -427,7 +427,7 @@ static void event_run(struct event *event) + return; + } + +- if (children >= children_max) { ++ if (!force && children >= children_max) { + if (children_max > 1) + info(event->udev, "maximum number (%i) of children reached\n", children); + return; +@@ -461,6 +461,13 @@ static int event_queue_insert(struct udev_device *dev) + + event->state = EVENT_QUEUED; + udev_list_node_append(&event->node, &event_list); ++ ++ /* run all events with a timeout set immediately */ ++ if (udev_device_get_timeout(dev) > 0) { ++ event_run(event, true); ++ return 0; ++ } ++ + return 0; + } + +@@ -577,7 +584,7 @@ static void event_queue_start(struct udev *udev) + continue; + } + +- event_run(event); ++ event_run(event, false); + } + } + +-- +1.7.9.4 + diff --git a/testing/udev/PKGBUILD b/testing/udev/PKGBUILD index 026d3b7cd..5418f329c 100644 --- a/testing/udev/PKGBUILD +++ b/testing/udev/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 151745 2012-03-01 23:28:16Z tomegun $ +# $Id: PKGBUILD 153496 2012-03-15 01:33:05Z tomegun $ # Maintainer: Tom Gundersen <teg@jklm.no> # Contributor: Aaron Griffin <aaron@archlinux.org> # Contributor: Tobias Powalowski <tpowa@archlinux.org> @@ -6,14 +6,15 @@ pkgname=udev pkgver=181 -pkgrel=4 +pkgrel=5 pkgdesc="The userspace dev tools (udev)" -depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'pciutils' 'acl') +depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'acl') install=udev.install arch=(i686 x86_64) license=('GPL') makedepends=('gobject-introspection' 'gperf' 'libxslt' 'usbutils' 'kmod') source=(ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/$pkgname-$pkgver.tar.xz + 0001-reinstate-TIMEOUT-handling.patch initcpio-hooks-udev initcpio-install-udev) url="http://git.kernel.org/?p=linux/hotplug/udev.git;a=summary" @@ -24,6 +25,8 @@ options=(!makeflags !libtool) build() { cd $srcdir/$pkgname-$pkgver + patch -p1 -i ../0001-reinstate-TIMEOUT-handling.patch + ./configure --prefix=/usr \ --with-rootprefix= \ --sysconfdir=/etc \ @@ -39,6 +42,10 @@ package() { cd $srcdir/$pkgname-$pkgver make DESTDIR=${pkgdir} install + # install the mkinitpcio hook + install -D -m644 ../initcpio-hooks-udev ${pkgdir}/usr/lib/initcpio/hooks/udev + install -D -m644 ../initcpio-install-udev ${pkgdir}/usr/lib/initcpio/install/udev + # udevd moved, symlink to make life easy for restarting udevd manually ln -s ../../lib/udev/udevd ${pkgdir}/usr/bin/udevd @@ -52,11 +59,8 @@ package() { s#GROUP="tape"#GROUP="storage"#g; s#GROUP="cdrom"#GROUP="optical"#g' $i done - - # install the mkinitpcio hook - install -D -m644 ../initcpio-hooks-udev ${pkgdir}/lib/initcpio/hooks/udev - install -D -m644 ../initcpio-install-udev ${pkgdir}/lib/initcpio/install/udev } md5sums=('0d7af750702620a871b9f9b98d8ad859' + 'f758b3e62ab77a1a6b7be12bb900cb2d' 'a4dd853050bf2e0ae6b2e3d2c75499c2' 'ee0bfe91a20fff12cc25ab1d1e024853') |