(define-module (xyz euandreh pending) #:use-module (guix licenses) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix build-system perl) #:use-module (guix build-system python) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages boost) #:use-module (gnu packages docbook) #:use-module (gnu packages mail) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) #:use-module (gnu packages gstreamer) #:use-module (gnu packages tex) #:use-module (gnu packages xml) #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages web) #:use-module (gnu packages music) #:use-module (gnu packages check) #:use-module (gnu packages python-build) #:use-module (gnu packages xorg) #:use-module (gnu packages perl-check)) (define-public po4a-text (package (name "po4a-text") (version "0.63") (source (origin (method url-fetch) (uri (string-append "https://github.com/mquinson/po4a/releases/download/v" version "/po4a-" version ".tar.gz")) (sha256 (base32 "1kmlfpdl1i1wrcdn0k1frh44fq10sfwswi3azvibli2lakpf66z2")))) (build-system perl-build-system) (arguments `(#:phases (modify-phases %standard-phases (add-after 'install 'wrap-programs (lambda* (#:key outputs inputs #:allow-other-keys) ;; Make sure all executables in "bin" find the Perl modules ;; provided by this package at runtime. (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin/")) (path (string-append out "/lib/perl5/site_perl" ":" (assoc-ref inputs "perl-yaml-tiny") "/lib/perl5/site_perl" ":" (assoc-ref inputs "perl-pod-parser") "/lib/perl5/site_perl"))) (for-each (lambda (file) (wrap-program file `("PERL5LIB" ":" prefix (,path)))) (find-files bin "\\.*$"))))) (add-before 'reset-gzip-timestamps 'make-compressed-files-writable (lambda* (#:key outputs #:allow-other-keys) (for-each make-file-writable (find-files (string-append (assoc-ref outputs "out") "/share/man") ".*\\.gz$")))) (add-after 'unpack 'patch-docbook-xml (lambda* (#:key inputs #:allow-other-keys) (substitute* (find-files "." ".*\\.xml(-good)?") (("http://www.oasis-open.org/docbook/xml/4.1.2/") (string-append (assoc-ref inputs "docbook-xml") "/xml/dtd/docbook/"))))) (add-before 'check 'disable-failing-tests (lambda _ (delete-file "t/01-classes.t") (delete-file "t/add.t") (delete-file "t/core-porefs.t") (delete-file "t/fmt-asciidoc.t") (delete-file "t/fmt-sgml.t")))))) (native-inputs `(("gettext" ,gettext-minimal) ("perl-module-build" ,perl-module-build) ("docbook-xsl" ,docbook-xsl) ("libxml2" ,libxml2) ("xsltproc" ,libxslt) ;; For tests. ("docbook-xml" ,docbook-xml-4.1.2) ("perl-test-pod" ,perl-test-pod) ("texlive" ,texlive-tiny))) (propagated-inputs `(("perl-yaml-tiny" ,perl-yaml-tiny) ("perl-pod-parser" ,perl-pod-parser))) (home-page "https://po4a.org/") (synopsis "Scripts to ease maintenance of translations") (description "The po4a (PO for anything) project goal is to ease translations (and more interestingly, the maintenance of translations) using gettext tools on areas where they were not expected like documentation.") (license gpl2+))) (define-public quodlibet (package (name "quodlibet") (version "4.5.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/quodlibet/quodlibet") (commit (string-append "release-" version)))) (file-name (git-file-name name version)) (sha256 (base32 "1i5k93k3bfp7hpcwkbr865mbj9jam3jv2a5k1bazcyp4f5vdrb0v")))) (build-system python-build-system) (arguments `(#:modules ((guix build gnu-build-system) (guix build python-build-system) ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) (guix build utils)) #:imported-modules (,@%gnu-build-system-modules (guix build python-build-system) (guix build glib-or-gtk-build-system)) #:tests? #f #:phases (modify-phases %standard-phases (add-before 'check 'start-xorg-server (lambda* (#:key inputs #:allow-other-keys) (setenv "HOME" (getcwd)) ; test suite wants to home directory #t)) (replace 'check (lambda* (#:key tests? inputs #:allow-other-keys) (if tests? (begin (invoke "dbus-run-session" "--" "xvfb-run" "pytest" "-vv" "--disable-warnings" ; ignored upstream "--ignore=tests/test_browsers_iradio.py" ; needs network "--ignore=tests/quality" ; broken upstream )) (format #t "test suite not run~%")))) (add-after 'install 'glib-or-gtk-wrap ; ensure icons loaded (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) (add-after 'install 'wrap-gi-typelib ; GObject Introspection (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) (for-each (lambda (prog) (wrap-program (string-append out "/bin/" prog) `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))) '("exfalso" "quodlibet"))) #t))))) (native-inputs (list xvfb-run gettext-minimal dbus)) (inputs (list adwaita-icon-theme gdk-pixbuf glib gst-plugins-bad gst-plugins-base gst-plugins-good gst-plugins-ugly gstreamer gtk+ hicolor-icon-theme librsvg libsoup-minimal-2 python python-cheetah python-dbus python-feedparser python-gst python-iniconfig python-mutagen python-pycairo python-pygobject python-pytest python-sgmllib3k python-toml)) (home-page "https://github.com/quodlibet/quodlibet") (synopsis "Audio library, manager & player") (description "Quod Libet is a cross-platform audio / music management program. It provides many ways to view your local library, and supports streaming audio and feeds (podcasts etc). It has extremely flexible metadata editing and searching capabilities. Ex Falso is a program that uses the same tag editing back-end as Quod Libet, but isn’t connected to an audio player.") (license gpl2+))) (list quodlibet po4a-text)