Subject: Xfburn

From: ng0 <[email-masked]>
Date: Sat, 9 Sep 2017 14:15:04 +0000

This adds Xfburn + 2 libburnia packages it depends on.

What I could not test was actually burning a disk,
as I can't afford to buy new optical disks at the moment.

It builds.
-- 
ng0
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
GnuPG: https://n0is.noblogs.org/my-keys
https://www.infotropique.org https://krosos.org
From 512f0217741a18eb66dd92cecab556118bcc8928 Mon Sep 17 00:00:00 2001
From: ng0 <[email-masked]>
Date: Sat, 9 Sep 2017 13:47:31 +0000
Subject: [PATCH 1/3] gnu: Add libburn.

* gnu/packages/cdrom.scm (libburn): New variable.
---
 gnu/packages/cdrom.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index 704e8ad36..478685a24 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2016 Marius Bakke <[email-masked]>
 ;;; Copyright © 2017 John Darrington <[email-masked]>
 ;;; Copyright © 2017 Thomas Danckaert <[email-masked]>
+;;; Copyright © 2017 ng0 <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -693,3 +694,30 @@ distributed with CD images and are used to describe how tracks are
 laid out on the image.")
     (home-page "https://www.gnu.org/software/ccd2cue/")
     (license gpl3+)))
+
+(define-public libburn
+  (package
+    (name "libburn")
+    (version "1.4.6")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "http://files.libburnia-project.org/releases/"
+                                 "libburn-" version ".tar.gz"))
+             (sha256
+              (base32
+               "0wbh49s3az3sfpai09z1zdgynq7wnwrk31v5589033274nmzldlx"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags (list "--enable-libcdio")))
+    (inputs
+     `(("libcdio" ,libcdio)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://dev.lovelyhq.com/libburnia/libburn")
+    (synopsis "library for reading, mastering and writing optical discs")
+    (description
+     "libburn is the library by which preformatted data get onto optical media.
+It uses either @file{/dev/sgN} (e.g. on kernel 2.4 with ide-scsi) or @file{/dev/srM}
+or @file{/dev/hdX} (e.g. on kernel 2.6).  libburn is the foundation of the
+libburnia-project cdrecord emulation.  Its code is independent of cdrecord.")
+    (license gpl2)))
-- 
2.14.1

From 00eb5b67c78fe8e15d3e03ff4ff450d106fad690 Mon Sep 17 00:00:00 2001
From: ng0 <[email-masked]>
Date: Sat, 9 Sep 2017 13:59:39 +0000
Subject: [PATCH 2/3] gnu: Add libisofs.

* gnu/packages/cdrom.scm (libisofs): New variable.
---
 gnu/packages/cdrom.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index 478685a24..5b387f107 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -721,3 +721,30 @@ It uses either @file{/dev/sgN} (e.g. on kernel 2.4 with ide-scsi) or @file{/dev/
 or @file{/dev/hdX} (e.g. on kernel 2.6).  libburn is the foundation of the
 libburnia-project cdrecord emulation.  Its code is independent of cdrecord.")
     (license gpl2)))
+
+(define-public libisofs
+  (package
+    (name "libisofs")
+    (version "1.4.6")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "http://files.libburnia-project.org/releases/"
+                                 "libisofs-" version ".tar.gz"))
+             (sha256
+              (base32
+               "02m5g6lbmmkh2xc5xzq5zaf3ma6v31gls66aj886b3cq9qw0paql"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("zlib" ,zlib)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://dev.lovelyhq.com/libburnia/libisofs")
+    (synopsis "library for reading, mastering and writing optical discs")
+    (description
+     "libisofs is a library to create an ISO-9660 filesystem, supports extensions
+like RockRidge or Joliet, and introduces an own extension AAIP.  It is a full
+featured ISO-9660 editor which composes and changes the directory tree of an
+ISO image.  This tree and its newly imported data file contents get then
+written as independent single-session image or as add-on session for the image
+from where the tree was originally loaded.")
+    (license gpl2+)))
-- 
2.14.1

From aeca4ac117bf66aae4656d311e39135f29d24fab Mon Sep 17 00:00:00 2001
From: ng0 <[email-masked]>
Date: Sat, 9 Sep 2017 14:11:36 +0000
Subject: [PATCH 3/3] gnu: Add xfburn.

* gnu/packages/xfce.scm (xfburn): New variable.
---
 gnu/packages/xfce.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index b936dc45d..03d8c79b6 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2016 Kei Kebreau <[email-masked]>
 ;;; Copyright © 2017 Ricardo Wurmus <[email-masked]>
 ;;; Copyright © 2017 Petter <[email-masked]>
+;;; Copyright © 2017 ng0 <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -32,6 +33,7 @@
   #:use-module (guix build-system trivial)
   #:use-module (gnu packages)
   #:use-module (gnu packages calendar)
+  #:use-module (gnu packages cdrom)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gtk)
@@ -902,3 +904,37 @@ bubble in a standard way can implicitly make use of xfce4-notifyd to do so by
 sending standard messages over D-Bus using the
 @code{org.freedesktop.Notifications} interface.")
     (license gpl2)))
+
+(define-public xfburn
+  (package
+    (name "xfburn")
+    (version "0.5.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://archive.xfce.org/src/apps/xfburn/"
+                                  (version-major+minor version) "/"
+                                  name "-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "1xn1kwxa3dl5r9bfj90a5322ynkwbn6k5v9b3a3pbr3a23zm604s"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("intltool" ,intltool)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("exo" ,exo)
+       ("gstreamer" ,gstreamer)
+       ("gst-plugins-base" ,gst-plugins-base)
+       ("glib" ,glib)
+       ("gtk+" ,gtk+-2)
+       ("libburn" ,libburn)
+       ("libisofs" ,libisofs)
+       ("libxfce4ui" ,libxfce4ui)))
+    (home-page "https://goodies.xfce.org/projects/applications/xfburn")
+    (synopsis "GTK+ based CD and DVD burning application")
+    (description
+     "Xfburn is a simple CD/DVD burning tool based on libburnia
+libraries.  It can blank CD/DVD(-RW)s, burn and create iso images,
+audio CDs, as well as burn personal compositions of data to either
+CD or DVD.")
+    (license gpl2+)))
-- 
2.14.1