[PATCH] gnu: xorriso: Build gui frontend.

  • Done
  • quality assurance status badge
Details
2 participants
  • Efraim Flashner
  • Thomas Schmitt
Owner
unassigned
Submitted by
Efraim Flashner
Severity
normal
E
E
Efraim Flashner wrote on 24 Mar 2020 15:53
(address . guix-patches@gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200324145321.7569-1-efraim@flashner.co.il
* gnu/packages/cdrom.scm (xorriso)[outputs]: Add gui.
[arguments]: Add custom phase to install gui files to separate output
and wrap the binary.
[inputs]: Add tk.
---

A while ago I had to burn a CD (or I thought I did) and I realized I
didn't know how to do it anymore and for some reason it was easier to
build the GUI front-end for xorriso than other options.

Adding tk as an input increases the closure size from about 80 MiB to about
150 MiB so I moved it to a separate output. Creating a separate package
entirely would be easier, it's literally just adding "tk" as an input.

---
gnu/packages/cdrom.scm | 25 ++++++++++++++++++++++++-
1 file changed, 24 insertions(+), 1 deletion(-)

Toggle diff (63 lines)
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index d6127d11f9..c760725ba3 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Taylan Ulrich Bay?rl?/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
-;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
@@ -66,6 +66,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages image)
#:use-module (gnu packages photo)
+ #:use-module (gnu packages tcl)
#:use-module (gnu packages video)
#:use-module (gnu packages wget)
#:use-module (gnu packages xiph))
@@ -156,6 +157,7 @@ libcdio.")
(package
(name "xorriso")
(version "1.5.2")
+ (outputs '("out" "gui"))
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/xorriso/xorriso-"
@@ -172,10 +174,31 @@ libcdio.")
(let* ((out (assoc-ref outputs "out"))
(out-bin (string-append out "/bin")))
(install-file "frontend/grub-mkrescue-sed.sh" out-bin)
+ #t)))
+ (add-after 'install 'move-gui-to-separate-output
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (gui (assoc-ref outputs "gui"))
+ (name "xorriso-tcltk"))
+ (mkdir-p (string-append gui "/bin"))
+ (mkdir-p (string-append gui "/share/info"))
+ (mkdir-p (string-append gui "/share/man/man1"))
+ (rename-file
+ (string-append out "/bin/" name)
+ (string-append gui "/bin/" name))
+ (rename-file
+ (string-append out "/share/info/" name ".info")
+ (string-append gui "/share/info/" name ".info"))
+ (rename-file
+ (string-append out "/share/man/man1/" name ".1")
+ (string-append gui "/share/man/man1/" name ".1"))
+ (wrap-program (string-append gui "/bin/" name)
+ `("PATH" ":" prefix (,(string-append out "/bin"))))
#t))))))
(inputs
`(("acl" ,acl)
("readline" ,readline)
+ ("tk" ,tk)
("zlib" ,zlib)))
(home-page "https://www.gnu.org/software/xorriso/")
(synopsis "Create, manipulate, burn ISO-9660 file systems")
--
2.26.0
T
T
Thomas Schmitt wrote on 26 Mar 2020 18:55
(address . 40212@debbugs.gnu.org)
17709718915499559460@scdbackup.webframe.org
Hi,

the "[/]" buttons of xorriso-tcltk need the Tcl/Tk package "BWidget"
to display a file browser.

Without it, the up-popping windows only offer a text input field for
entering an absolute file path. That's quite unusual for a GUI program.
The file browser widget does not look fancy but provides the interface
which a GUI user probably expects.


Have a nice day :)

Thomas
E
E
Efraim Flashner wrote on 10 Apr 2020 12:51
[PATCH] gnu: xorriso: Build gui frontend.
(address . 40212-done@debbugs.gnu.org)
20200410105112.GB1518@E5400
Patch pushed with some code cleanup to make the phase shorter.

--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl6QT6AACgkQQarn3Mo9
g1FB+Q/+Ja+Pn40cRDl1hSyd2IOvT3XDjawIS+iBOqj2PYRZ74XqGC8fyOGQerAA
jRGDO9T7L3E0u2jYZ8l81CjalutnVsd9SleIicOWytNmEReLYEA8lcCZ/BW2Bl+N
ti0w1HQ+fVZ+5w0wVTHtxI0JkHSmFCa193N8gMfz5q6JCD5WrfAf1oK0+O8Wn1Pz
zEHhn5/RME71cvg9ZK5JeCB4wng3jAOSDhsqPICe0XEVP8PYRuvHrslt75bhX+Na
2MLSMUvP6XZklgJPzd2M6/YNe2R4mc84hr2xwbtmanOpRlIs6vrlzMh0VYnP8q8l
ijTO2Yi6H+2sOXw1p6kHyUmDLmk/RLzl/dEgrTZ1TmsRnLpj2Jq7b9h6y9T8GL4t
DOX+87RsbHcx/C8SWEDDOLx1Oidt/akS85a1u/2RUhRsmKJxsD0A+L/is+QRtFKU
+fu4F1SAjMoBZMMd0/YmVJSbV/b+a5nbNaSafIvMT6M6KSl7neO7uxbiiiFLYF31
ub86yp8Xuf52t5dXCfN7RebsYo/A0tZwzuoYCOjsZijTKy6uam9DzfrMZY/A4DXr
mrcpTqpca7W/0LcaIrNPC2Lq4WIl0mdgt5zCto4W3ZbP1j6N2pEwPDY9+mGm7huM
e6ZEqapDPylybp6/l4IG460vhoHKK4a/oYJ87j2qc9hHz/bFg1A=
=KnSL
-----END PGP SIGNATURE-----


Closed
?