summaryrefslogtreecommitdiff
path: root/testing/xfburn
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-04-30 00:01:38 +0000
committerroot <root@rshg054.dnsready.net>2012-04-30 00:01:38 +0000
commitb7cd4b184f75d3d2b54b356e08f296df3a9afb38 (patch)
treedc5e84c1f7271cf0c8ec0221b5a22e48a884081a /testing/xfburn
parent4412991f6b4fd655fc1f51f8d79a0be0c10158b7 (diff)
Mon Apr 30 00:01:38 UTC 2012
Diffstat (limited to 'testing/xfburn')
-rwxr-xr-xtesting/xfburn/PKGBUILD46
-rw-r--r--testing/xfburn/fix_empty_dir_segfault.diff48
-rw-r--r--testing/xfburn/xfburn.install14
3 files changed, 108 insertions, 0 deletions
diff --git a/testing/xfburn/PKGBUILD b/testing/xfburn/PKGBUILD
new file mode 100755
index 000000000..b46a5987e
--- /dev/null
+++ b/testing/xfburn/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 157649 2012-04-29 02:53:52Z foutrelis $
+# Maintainer: Tobias Kieslich <tobias funnychar archlinux.org>
+# Contributor: Alois Nespor alois.nespor@gmail.com
+
+pkgname=xfburn
+pkgver=0.4.3
+pkgrel=6
+arch=('i686' 'x86_64')
+pkgdesc="A simple CD/DVD burning tool based on libburnia libraries"
+url="http://goodies.xfce.org/projects/applications/xfburn"
+license=('GPL2')
+groups=('xfce4-goodies')
+install=${pkgname}.install
+depends=('libburn' 'libisofs' 'libxfcegui4' 'exo' 'gstreamer0.10-base'
+ 'hicolor-icon-theme' 'desktop-file-utils' 'librsvg')
+makedepends=('intltool')
+source=(http://archive.xfce.org/src/apps/xfburn/0.4/$pkgname-$pkgver.tar.bz2
+ fix_empty_dir_segfault.diff)
+sha1sums=('52d33e56b7ce9774fba680f50723eaf1a7215091'
+ 'e374dd4942a49b52166fa9f2aa40e9aefb3aa3ec')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # fix https://bugs.archlinux.org/task/26121
+ patch -Np0 -i "$srcdir/fix_empty_dir_segfault.diff"
+
+ # fix build issue
+ sed -i '1 i\
+ #include <glib-object.h>' \
+ xfburn/xfburn-settings.h
+
+ ./configure \
+ --prefix=/usr \
+ --enable-gstreamer \
+ --enable-dbus \
+ --disable-hal
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/testing/xfburn/fix_empty_dir_segfault.diff b/testing/xfburn/fix_empty_dir_segfault.diff
new file mode 100644
index 000000000..af3fe07c8
--- /dev/null
+++ b/testing/xfburn/fix_empty_dir_segfault.diff
@@ -0,0 +1,48 @@
+--- xfburn/xfburn-data-composition.c 2011-02-17 16:37:03.000000000 +0100
++++ xfburn/xfburn-data-composition_patched.c 2011-02-17 16:40:40.000000000 +0100
+@@ -1874,26 +1874,29 @@
+ g_error ("Failed adding %s as a node to the image: code %X!", src, r);
+ }
+
+- basename = g_path_get_basename (src);
++ /* Check names only for items not manually created (#613563) */
++ if (type != DATA_COMPOSITION_TYPE_DIRECTORY || src != NULL) {
++ basename = g_path_get_basename (src);
++
++ /* check if the file has been renamed */
++ if (strcmp (basename, name) != 0) {
++ /* rename the iso_node */
++ r = iso_node_set_name (node, name);
++
++ if (r == 0) {
++ /* The first string is the renamed name, the second one the original name */
++ xfce_warn (_("Duplicate filename '%s' for '%s'"), name, src);
++
++ g_free (basename);
++ g_free (name);
++ g_free (src);
+
+- /* check if the file has been renamed */
+- if (strcmp (basename, name) != 0) {
+- /* rename the iso_node */
+- r = iso_node_set_name (node, name);
+-
+- if (r == 0) {
+- /* The first string is the renamed name, the second one the original name */
+- xfce_warn (_("Duplicate filename '%s' for '%s'"), name, src);
+-
+- g_free (basename);
+- g_free (name);
+- g_free (src);
+-
+- continue;
++ continue;
++ }
+ }
++ g_free (basename);
+ }
+
+- g_free (basename);
+ g_free (name);
+ g_free (src);
+
diff --git a/testing/xfburn/xfburn.install b/testing/xfburn/xfburn.install
new file mode 100644
index 000000000..9bbbab888
--- /dev/null
+++ b/testing/xfburn/xfburn.install
@@ -0,0 +1,14 @@
+post_install() {
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}
+
+# vim:set ts=2 sw=2 et: