* [bug#29472] [PATCH 2/4] gnu: Add perl-file-desktopentry.
2017-11-27 12:54 ` [bug#29472] [PATCH 1/4] gnu: Add perl-file-basedir Brendan Tildesley
@ 2017-11-27 12:54 ` Brendan Tildesley
2017-11-27 12:54 ` [bug#29472] [PATCH 3/4] gnu: Add perl-file-mimeinfo Brendan Tildesley
` (2 subsequent siblings)
3 siblings, 0 replies; 6+ messages in thread
From: Brendan Tildesley @ 2017-11-27 12:54 UTC (permalink / raw)
To: 29472
* gnu/packages/perl.scm (perl-file-desktopentry): New variable.
---
gnu/packages/perl.scm | 30 +++++++++++++++++++++++++++++-
1 file changed, 29 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index b52d6fd91..bacaaf38a 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -45,7 +45,8 @@
#:use-module (gnu packages perl-check)
#:use-module (gnu packages perl-web)
#:use-module (gnu packages pkg-config)
- #:use-module (gnu packages freedesktop))
+ #:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages web))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -3449,6 +3450,33 @@ mechanism to locate directories for configuration, application data and cache
data.")
(license (package-license perl))))
+(define-public perl-file-desktopentry
+ (package
+ (name "perl-file-desktopentry")
+ (version "0.22")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/M/MI/MICHIELB/"
+ "File-DesktopEntry-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1f1maqix2kbfg2rf008m7mqnvv6nvcf9y6pcgdv2kxp2vbih370n"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-file-basedir" ,perl-file-basedir)
+ ("perl-uri" ,perl-uri)))
+ (home-page "http://search.cpan.org/~michielb/File-DesktopEntry/")
+ (synopsis "Handle .desktop files")
+ (description
+ "File::Desktopentry parses .desktop files defined by the Freedesktop.org
+\"Desktop Entry\" specification. It can also run the applications define in
+those files.")
+ (license (package-license perl))))
+
(define-public perl-file-sharedir
(package
(name "perl-file-sharedir")
--
2.15.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [bug#29472] [PATCH 3/4] gnu: Add perl-file-mimeinfo.
2017-11-27 12:54 ` [bug#29472] [PATCH 1/4] gnu: Add perl-file-basedir Brendan Tildesley
2017-11-27 12:54 ` [bug#29472] [PATCH 2/4] gnu: Add perl-file-desktopentry Brendan Tildesley
@ 2017-11-27 12:54 ` Brendan Tildesley
2017-11-27 12:54 ` [bug#29472] [PATCH 4/4] gnu: xdg-utils: Add perl-file-mimeinfo as an input Brendan Tildesley
2017-11-28 9:44 ` bug#29472: [PATCH 1/4] gnu: Add perl-file-basedir Ludovic Courtès
3 siblings, 0 replies; 6+ messages in thread
From: Brendan Tildesley @ 2017-11-27 12:54 UTC (permalink / raw)
To: 29472
* gnu/packages/perl.scm (perl-file-mimeinfo): New variable.
---
gnu/packages/perl.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index bacaaf38a..f658b9177 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -46,6 +46,7 @@
#:use-module (gnu packages perl-web)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages web))
;;;
@@ -3477,6 +3478,53 @@ data.")
those files.")
(license (package-license perl))))
+(define-public perl-file-mimeinfo
+ (package
+ (name "perl-file-mimeinfo")
+ (version "0.28")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/M/MI/MICHIELB/"
+ "File-MimeInfo-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ipbh63bkh1r2gy5g7q4bzhki8j29mm1jkhbv60p9vwsdys5s91a"))))
+ (build-system perl-build-system)
+ ;; If the tests are fixed, add perl-test-pod, perl-test-pod-coverage, and
+ ;; perl-test-tiny as native-inputs.
+ (propagated-inputs
+ `(("shared-mime-info" ,shared-mime-info)
+ ("perl-file-desktopentry" ,perl-file-desktopentry)))
+ (arguments
+ ;; Some tests fail due to requiring the mimetype of perl files to be
+ ;; text/plain when they are actually application/x-perl.
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'wrap-programs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (for-each (lambda (prog)
+ (wrap-program (string-append out "/bin/" prog)
+ `("PERL5LIB" ":" prefix
+ (,(string-append (getenv "PERL5LIB") ":" out
+ "/lib/perl5/site_perl")))))
+ '("mimeopen" "mimetype")))
+ #t)))))
+ (home-page "http://search.cpan.org/dist/File-MimeInfo/")
+ (synopsis "Determine file type from the file name")
+ (description
+ "File::Mimeinfo can be used to determine the mime type of a file. It
+tries to implement the freedesktop specification for a shared MIME database.
+
+ This package also contains two related utilities:
+@itemize
+@item mimetype: Determine a file's mimetype.
+@item mimeopen: Open files in an appropriate program according to their mimetype.
+@end itemize")
+ (license (package-license perl))))
+
(define-public perl-file-sharedir
(package
(name "perl-file-sharedir")
--
2.15.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [bug#29472] [PATCH 4/4] gnu: xdg-utils: Add perl-file-mimeinfo as an input.
2017-11-27 12:54 ` [bug#29472] [PATCH 1/4] gnu: Add perl-file-basedir Brendan Tildesley
2017-11-27 12:54 ` [bug#29472] [PATCH 2/4] gnu: Add perl-file-desktopentry Brendan Tildesley
2017-11-27 12:54 ` [bug#29472] [PATCH 3/4] gnu: Add perl-file-mimeinfo Brendan Tildesley
@ 2017-11-27 12:54 ` Brendan Tildesley
2017-11-28 9:44 ` bug#29472: [PATCH 1/4] gnu: Add perl-file-basedir Ludovic Courtès
3 siblings, 0 replies; 6+ messages in thread
From: Brendan Tildesley @ 2017-11-27 12:54 UTC (permalink / raw)
To: 29472
* gnu/packages/freedesktop.scm (perl-file-mimeinfo)
[input]: Add perl-file-mimeinfo.
---
gnu/packages/freedesktop.scm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index cac1f67c5..a830cd93e 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -56,6 +56,7 @@
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages m4)
+ #:use-module (gnu packages perl)
#:use-module (gnu packages polkit)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -85,7 +86,8 @@
("w3m" ,w3m)
("xmlto" ,xmlto)))
(propagated-inputs
- `(("xprop" ,xprop) ; for Xfce detecting
+ `(("perl-file-mimeinfo" ,perl-file-mimeinfo) ; for mimeopen fallback
+ ("xprop" ,xprop) ; for Xfce detecting
("xset" ,xset))) ; for xdg-screensaver
(arguments
`(#:tests? #f ; no check target
--
2.15.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* bug#29472: [PATCH 1/4] gnu: Add perl-file-basedir.
2017-11-27 12:54 ` [bug#29472] [PATCH 1/4] gnu: Add perl-file-basedir Brendan Tildesley
` (2 preceding siblings ...)
2017-11-27 12:54 ` [bug#29472] [PATCH 4/4] gnu: xdg-utils: Add perl-file-mimeinfo as an input Brendan Tildesley
@ 2017-11-28 9:44 ` Ludovic Courtès
3 siblings, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2017-11-28 9:44 UTC (permalink / raw)
To: Brendan Tildesley; +Cc: 29472-done
Hi Brendan,
I applied all 4 patches. However I took the liberty (1) to add a bit of
@code etc. markup in descriptions, and (2) to move them to
freedesktop.scm so that perl.scm doesn’t pull in all of
freedesktop/gnome.
Thanks!
Ludo’.
^ permalink raw reply [flat|nested] 6+ messages in thread