diff options
6 files changed, 88 insertions, 97 deletions
diff --git a/desktop/lxlauncher/doinst.sh b/desktop/lxlauncher/doinst.sh new file mode 100644 index 000000000000..9296dfbd9fc0 --- /dev/null +++ b/desktop/lxlauncher/doinst.sh @@ -0,0 +1,16 @@ +config() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then + # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +config etc/xdg/lxlauncher/gtkrc.new +config etc/xdg/lxlauncher/settings.conf.new +config etc/xdg/menus/lxlauncher-applications.menu.new diff --git a/desktop/lxlauncher/fix-empty-lxlauncher.patch b/desktop/lxlauncher/fix-empty-lxlauncher.patch deleted file mode 100644 index 20efe1a6b307..000000000000 --- a/desktop/lxlauncher/fix-empty-lxlauncher.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 56a244f2aa3c474b2506847ba9a2f5a21cb8efc2 Mon Sep 17 00:00:00 2001 -From: Julien Lavergne <julien.lavergne@gmail.com> -Date: Tue, 26 Jul 2011 01:21:04 +0200 -Subject: [PATCH] Fix GtkAllocation to fix empty lxlauncher - ---- - src/exo-wrap-table.c | 26 ++++++++++++++++---------- - 1 files changed, 16 insertions(+), 10 deletions(-) - -diff --git a/src/exo-wrap-table.c b/src/exo-wrap-table.c -index c691434..f48322f 100644 ---- a/src/exo-wrap-table.c -+++ b/src/exo-wrap-table.c -@@ -326,14 +326,14 @@ exo_wrap_table_size_request (GtkWidget *widget, - if (G_LIKELY (num_children > 0)) - { - #if GTK_CHECK_VERSION(2,18,0) -- GtkAllocation allocation; -- gtk_widget_set_allocation(widget, &allocation); -- num_cols = exo_wrap_table_get_num_fitting (allocation.width -+ GtkAllocation *allocation = g_new0 (GtkAllocation, 1); -+ gtk_widget_get_allocation(GTK_WIDGET(widget), allocation); -+ num_cols = exo_wrap_table_get_num_fitting (allocation->width - - gtk_container_get_border_width(GTK_CONTAINER (widget)) * 2, - table->priv->col_spacing, max_width); - #else - num_cols = exo_wrap_table_get_num_fitting (widget->allocation.width -- - gtk_container_get_border_width(GTK_CONTAINER (widget)) * 2, -+ - GTK_CONTAINER (widget)->border_width * 2, - table->priv->col_spacing, max_width); - #endif - num_rows = num_children / num_cols; -@@ -345,7 +345,12 @@ exo_wrap_table_size_request (GtkWidget *widget, - requisition->width = -1; - requisition->height = (num_rows * max_height) - + (num_rows - 1) * table->priv->col_spacing -+#if GTK_CHECK_VERSION(2,18,0) - + gtk_container_get_border_width(GTK_CONTAINER (widget)) * 2; -+ g_free (allocation); -+#else -+ + GTK_CONTAINER (widget)->border_width * 2; -+#endif - } - else - { -@@ -479,8 +484,8 @@ exo_wrap_table_layout (ExoWrapTable *table) - gint max_height; - gint max_width; - #if GTK_CHECK_VERSION(2,18,0) -- GtkAllocation allocation; -- gtk_widget_set_allocation(GTK_WIDGET(table), &allocation); -+ GtkAllocation *allocation = g_new0 (GtkAllocation, 1); -+ gtk_widget_get_allocation(GTK_WIDGET(table), allocation); - #endif - - /* determine the number of visible children and the max size */ -@@ -490,7 +495,7 @@ exo_wrap_table_layout (ExoWrapTable *table) - - /* determine the number of columns */ - #if GTK_CHECK_VERSION(2,18,0) -- num_cols = exo_wrap_table_get_num_fitting (allocation.width -+ num_cols = exo_wrap_table_get_num_fitting (allocation->width - - gtk_container_get_border_width(GTK_CONTAINER (table)) * 2, - table->priv->col_spacing, max_width); - #else -@@ -509,8 +514,8 @@ exo_wrap_table_layout (ExoWrapTable *table) - - /* determine the horizontal bounds */ - #if GTK_CHECK_VERSION(2,18,0) -- x0 = allocation.x + gtk_container_get_border_width(GTK_CONTAINER (table)); -- x1 = x0 + allocation.width - gtk_container_get_border_width(GTK_CONTAINER (table)); -+ x0 = allocation->x + gtk_container_get_border_width(GTK_CONTAINER (table)); -+ x1 = x0 + allocation->width - gtk_container_get_border_width(GTK_CONTAINER (table)); - #else - x0 = GTK_WIDGET (table)->allocation.x + GTK_CONTAINER (table)->border_width; - x1 = x0 + GTK_WIDGET (table)->allocation.width - GTK_CONTAINER (table)->border_width; -@@ -519,7 +524,8 @@ exo_wrap_table_layout (ExoWrapTable *table) - /* initialize the position */ - x = x0; - #if GTK_CHECK_VERSION(2,18,0) -- y = allocation.y + gtk_container_get_border_width(GTK_CONTAINER (table)); -+ y = allocation->y + gtk_container_get_border_width(GTK_CONTAINER (table)); -+ g_free (allocation); - #else - y = GTK_WIDGET (table)->allocation.y + GTK_CONTAINER (table)->border_width; - #endif --- -1.7.4.1 - diff --git a/desktop/lxlauncher/lxlauncher.SlackBuild b/desktop/lxlauncher/lxlauncher.SlackBuild index 22bbfddf8a0c..c1ebe6e2d4ce 100644 --- a/desktop/lxlauncher/lxlauncher.SlackBuild +++ b/desktop/lxlauncher/lxlauncher.SlackBuild @@ -1,6 +1,7 @@ #!/bin/sh # $Id: lxlauncher.SlackBuild,v 1.3 2009/09/11 20:45:23 root Exp root $ # Copyright (c) 2008-2009 Eric Hameleers, Eindhoven, NL +# Copyright (c) 2010-2014 Matteo Bernardini, Pisa, IT # All rights reserved. # # Permission to use, copy, modify, and distribute this software for @@ -39,6 +40,8 @@ # * updated to git snapshot. # 0.2.2-1: 26/dec/2011 by Matteo Bernardini <ponce@slackbuilds.org> # * update. +# 0.2.3-1: 03/sep/2014 by Matteo Bernardini <ponce@slackbuilds.org> +# * update. # # Run 'sh lxlauncher.SlackBuild' to build a Slackware package. # The package is created in /tmp . @@ -47,7 +50,7 @@ # ----------------------------------------------------------------------------- PRGNAM=lxlauncher -VERSION=${VERSION:-0.2.2} +VERSION=${VERSION:-0.2.3} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -59,8 +62,6 @@ if [ -z "$ARCH" ]; then esac fi -DOCS="AUTHORS COPYING ChangeLog NEWS README" - CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM @@ -80,6 +81,8 @@ else LIBDIRSUFFIX="" fi +DOCS="AUTHORS COPYING NEWS README" + set -e rm -rf $PKG @@ -95,8 +98,8 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; -# fix no displaying of icons -patch -p1 < $CWD/fix-empty-lxlauncher.patch +# apply patches from upstream +for i in $CWD/patches/* ; do patch -p1 < $i ; done sh autogen.sh || true @@ -109,10 +112,20 @@ CFLAGS="$SLKCFLAGS" \ --sysconfdir=/etc \ --program-prefix= \ --program-suffix= \ + --mandir=/usr/man \ --build=$ARCH-slackware-linux make make install-strip DESTDIR=$PKG +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + +# Don't clobber configuration files +( cd $PKG/etc/xdg + for i in lxlauncher/gtkrc lxlauncher/settings.conf menus/lxlauncher-applications.menu; do + mv $i $i.new + done ) + # Add documentation: mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true @@ -122,6 +135,7 @@ find $PKG/usr/doc -type f -exec chmod 644 {} \; mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/desktop/lxlauncher/lxlauncher.info b/desktop/lxlauncher/lxlauncher.info index 10754e6e481c..55347b2587dc 100644 --- a/desktop/lxlauncher/lxlauncher.info +++ b/desktop/lxlauncher/lxlauncher.info @@ -1,8 +1,8 @@ PRGNAM="lxlauncher" -VERSION="0.2.2" +VERSION="0.2.3" HOMEPAGE="http://www.lxde.org/" -DOWNLOAD="http://downloads.sourceforge.net/lxde/lxlauncher-0.2.2.tar.gz" -MD5SUM="16df627447838b170a72cc3a9ee21497" +DOWNLOAD="http://downloads.sourceforge.net/lxde/lxlauncher-0.2.3.tar.xz" +MD5SUM="7f53137fb55ba3f63f42ae63aa4d8191" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="lxmenu-data menu-cache" diff --git a/desktop/lxlauncher/patches/0001-Fix-crash-in-case-libmenu-cache-returned-empty-menu.patch b/desktop/lxlauncher/patches/0001-Fix-crash-in-case-libmenu-cache-returned-empty-menu.patch new file mode 100644 index 000000000000..7278b0641c22 --- /dev/null +++ b/desktop/lxlauncher/patches/0001-Fix-crash-in-case-libmenu-cache-returned-empty-menu.patch @@ -0,0 +1,25 @@ +From 1828b0bf6a0193cf51bad92c034cdff0cf39953d Mon Sep 17 00:00:00 2001 +From: Andriy Grytsenko <andrej@rep.kiev.ua> +Date: Thu, 4 Sep 2014 05:02:42 +0300 +Subject: [PATCH 1/2] Fix crash in case libmenu-cache returned empty menu. + +--- + src/lxlauncher.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/lxlauncher.c b/src/lxlauncher.c +index d48e994..9d5a516 100644 +--- a/src/lxlauncher.c ++++ b/src/lxlauncher.c +@@ -697,6 +697,8 @@ static void create_notebook_pages() + GSList* l; + + // build pages for toplevel groups ++ if (root_dir == NULL) ++ return; + #ifdef HAVE_MENU_CACHE_DIR_LIST_CHILDREN /* menu-cache 0.4.0 or newer */ + children = menu_cache_dir_list_children(root_dir); + for( l = children; l; l = l->next ) +-- +2.1.0 + diff --git a/desktop/lxlauncher/patches/0002-Remove-call-to-libtoolize-from-autogen.sh-it-never-u.patch b/desktop/lxlauncher/patches/0002-Remove-call-to-libtoolize-from-autogen.sh-it-never-u.patch new file mode 100644 index 000000000000..45e57d8475c3 --- /dev/null +++ b/desktop/lxlauncher/patches/0002-Remove-call-to-libtoolize-from-autogen.sh-it-never-u.patch @@ -0,0 +1,25 @@ +From d529db70aa51a8e4f2b89339d7de9a81122414e2 Mon Sep 17 00:00:00 2001 +From: Andriy Grytsenko <andrej@rep.kiev.ua> +Date: Thu, 4 Sep 2014 21:49:08 +0300 +Subject: [PATCH 2/2] Remove call to libtoolize from autogen.sh - it never + used. + +--- + autogen.sh | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/autogen.sh b/autogen.sh +index a282893..7fd9bd6 100755 +--- a/autogen.sh ++++ b/autogen.sh +@@ -26,7 +26,6 @@ set -x + + ${ACLOCAL:-aclocal$AM_VERSION} ${ACLOCAL_ARG} + ${AUTOHEADER:-autoheader$AC_VERSION} --force +-AUTOMAKE=$AUTOMAKE libtoolize -c --automake --force + AUTOMAKE=$AUTOMAKE intltoolize -c --automake --force + $AUTOMAKE --add-missing --copy --include-deps + ${AUTOCONF:-autoconf$AC_VERSION} +-- +2.1.0 + |