;;; Copyright © 2017 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com>
-;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system waf)
+ #:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages audio)
;; XXX We need to run ./bootstrap because of the build
;; system fixes above.
(replace 'bootstrap
- (lambda _ (zero? (system* "sh" "bootstrap")))))))
+ (lambda _ (invoke "sh" "bootstrap"))))))
(home-page "http://liba52.sourceforge.net/")
(synopsis "ATSC A/52 stream decoder")
(description "liba52 is a library for decoding ATSC A/52 streams. The
(define-public x265
(package
(name "x265")
- (version "2.6")
+ (version "2.8")
(source
(origin
(method url-fetch)
"x265_" version ".tar.gz"))
(sha256
(base32
- "1gyd94jkwdii9308m07nymsbxrmrcl81c0j8i10zhslr2mj07w0v"))
+ "0qx8mavwdzdpkkby7n29i9av7zsnklavacwfz537mf62q2pzjnbf"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "source/compat/getopt")
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; tests are skipped if cpu-optimized code isn't built
- ;; Currently the source code doesn't check for aarch64
+ ;; Currently the source code doesn't check for aarch64.
,@(if (string-prefix? "aarch64" (or (%current-target-system) (%current-system)))
'(#:configure-flags '("-DENABLE_PIC=TRUE"))
'())
(define-public libdca
(package
(name "libdca")
- (version "0.0.5")
+ (version "0.0.6")
(source (origin
(method url-fetch)
(uri (string-append
version "/libdca-" version ".tar.bz2"))
(sha256
(base32
- "0hh6a7l8vvccsd5i1fkv9av2gzv9fy8m0b8jpsn5p6hh4bh2586v"))))
+ "0h0zvcn97i9kyljdpifzi8in9xnw31fx3b3ggj96p8h0l2d8mycq"))))
(build-system gnu-build-system)
(home-page "https://www.videolan.org/developers/libdca.html")
(synopsis "DTS Coherent Acoustics decoder")
(define-public libmatroska
(package
(name "libmatroska")
- (version "1.4.8")
+ (version "1.4.9")
(source
(origin
(method url-fetch)
name "/" name "-" version ".tar.xz"))
(sha256
(base32
- "14n9sw974prr3yp4yjb7aadi6x2yz5a0hjw8fs3qigy5shh2piyq"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("pkg-config" ,pkg-config)))
+ "1j4mjzx6mjzfjf9hz8g4w84krf5jccmr5cyynll0j1vwv3aiv9iq"))))
+ (build-system cmake-build-system)
(inputs
`(("libebml" ,libebml)))
+ (arguments
+ `(#:configure-flags
+ (list "-DBUILD_SHARED_LIBS=YES")
+ #:tests? #f)) ; no test suite
(home-page "https://www.matroska.org")
(synopsis "C++ library to parse Matroska files (.mkv and .mka)")
(description
("libx11" ,libx11)
("libxext" ,libxext)
("libxfixes" ,libxfixes)
- ("mesa" ,mesa)))
+ ("mesa" ,mesa)
+ ("wayland" ,wayland)))
(arguments
`(#:phases
(modify-phases %standard-phases
(define-public ffmpeg
(package
(name "ffmpeg")
- (version "3.4.2")
+ (version "4.0")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
- "0h6prjn1ijkzzhkyj8mazp0wpx7m0n9ycadjxagf9czqirbyk4ib"))))
+ "0gx4ngnhi5glmxh38603qy5n6vq8bl1cr4sqd1xff95i82pmv57d"))))
(build-system gnu-build-system)
(inputs
`(("fontconfig" ,fontconfig)
audio/video codec library.")
(license license:gpl2+)))
+(define-public ffmpeg-3.4
+ (package
+ (inherit ffmpeg)
+ (version "3.4.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0h6prjn1ijkzzhkyj8mazp0wpx7m0n9ycadjxagf9czqirbyk4ib"))))))
+
(define-public ffmpeg-2.8
(package
(inherit ffmpeg)
flag))
,flags))))))
-;; Annoyingly enough, the latest mpv release does not build with the stable
-;; release of ffmpeg. Use a git commit until the situation is fixed.
-(define-public ffmpeg-git
- (let ((commit "3f887440677328c9cfed97ad81d14051ffa32aae")
- (revision "1"))
- (package
- (inherit ffmpeg)
- (name "ffmpeg-git")
- (version (string-append "3.4-" revision "." (string-take commit 9)))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/FFmpeg/FFmpeg.git")
- (commit commit)))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "1b7n3g4m2rbvrwsgbfl8wl91z42g1ld42clwxs8qpl9ny5rwz6sq")))))))
-
(define-public vlc
(package
(name "vlc")
(inputs
`(("alsa-lib" ,alsa-lib)
("enca" ,enca)
- ("ffmpeg" ,ffmpeg-git)
+ ("ffmpeg" ,ffmpeg)
("jack" ,jack-1)
("ladspa" ,ladspa)
("lcms" ,lcms)
'configure 'setup-waf
(lambda* (#:key inputs #:allow-other-keys)
(copy-file (assoc-ref inputs "waf") "waf")
- (setenv "CC" "gcc"))))
+ (setenv "CC" "gcc")
+ #t)))
#:configure-flags (list "--enable-libmpv-shared"
"--enable-cdda"
"--enable-dvdread"
(define-public youtube-dl
(package
(name "youtube-dl")
- (version "2018.03.14")
+ (version "2018.05.09")
(source (origin
(method url-fetch)
(uri (string-append "https://yt-dl.org/downloads/"
version ".tar.gz"))
(sha256
(base32
- "0j8j797gqc29fd5ra3cjvwkp8dgvigdydsj0zzjs05zccfqrj9lh"))))
+ "0sl4bi2jls3417rd62awbqdq1b6wskkjbfwpnyw4a61qarfxid1d"))))
(build-system python-build-system)
(arguments
;; The problem here is that the directory for the man page and completion
(define-public you-get
(package
(name "you-get")
- (version "0.4.1040")
+ (version "0.4.1060")
(source (origin
(method url-fetch)
(uri (string-append
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0257p9bn426rv0cjk2j5hsx6cg7dz5gpjwlqq0sy1axa47phis46"))))
+ "1pq7c2ay42aan7ykpmddzh6ylq0qsq8a27pk68m5imaxi6abbwsz"))))
(build-system python-build-system)
(inputs
`(("ffmpeg" ,ffmpeg))) ; for multi-part and >=1080p videos
(define-public youtube-viewer
(package
(name "youtube-viewer")
- (version "3.3.3")
+ (version "3.3.4")
(source (origin
(method url-fetch)
(uri (string-append
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1j572his6qmazlmyrbnfq62s9bqml875ay7wy26byy9hfc7m0vgk"))))
+ "1dqaxkz5svv0lmxds6lppcpzhkq6gar2raw9gx6imrd7yz02fpgn"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-build" ,perl-module-build)))
(define-public libdvdcss
(package
(name "libdvdcss")
- (version "1.4.1")
+ (version "1.4.2")
(source (origin
(method url-fetch)
(uri (string-append "https://download.videolan.org/pub/"
name "-" version ".tar.bz2"))
(sha256
(base32
- "1b7awvyahivglp7qmgx2g5005kc5npv257gw7wxdprjsnx93f1zb"))))
+ "0x957zzpf4w2cp8zlk29prj8i2q6hay3lzdzsyz8y3cwxivyvhkq"))))
(build-system gnu-build-system)
(home-page "https://www.videolan.org/developers/libdvdcss.html")
(synopsis "Library for accessing DVDs as block devices")
(define-public streamlink
(package
(name "streamlink")
- (version "0.10.0")
+ (version "0.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "streamlink" version))
(sha256
(base32
- "17299xnd9jzi7m1d2rr4xdlj47q64bzj2957nlsrhw0hskds1s6h"))))
+ "02h8b3k8l5zz4vjm0nhxvl1pm924jms8y7sjl40fbybrzvsa4mg2"))))
(build-system python-build-system)
(home-page "https://github.com/streamlink/streamlink")
(native-inputs
("python-iso3166" ,python-iso3166)
("python-iso639" ,python-iso639)
("python-pycryptodome" ,python-pycryptodome)
- ("python-requests" ,python-requests)))
+ ("python-requests" ,python-requests)
+ ("python-urllib3" ,python-urllib3)))
(synopsis "Extract streams from various services")
(description "Streamlink is command-line utility that extracts streams
from sites like Twitch.tv and pipes them into a video player of choice.")
(define-public livestreamer
(deprecated-package "livestreamer" streamlink))
+(define-public twitchy
+ (let ((commit "0c0f925b9c7ff2aed4a3b0046561cb794143c398")) ;Fixes tests.
+ (package
+ (name "twitchy")
+ (version (git-version "3.2" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/BasioMeusPuga/twitchy.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02aizvsr744sh8bdqvwwsmp2qpczlzn8fy76h5dyd3517n9nlcz9"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'check-setup
+ (lambda _
+ (setenv "HOME" (getcwd)) ;Needs to write to ‘$HOME’.
+ #t)))))
+ (inputs
+ `(("python-requests" ,python-requests)
+ ("streamlink" ,streamlink)))
+ (home-page "https://github.com/BasioMeusPuga/twitchy")
+ (synopsis "Command-line interface for Twitch.tv")
+ (description
+ "This package provides a command-line interface for Twitch.tv")
+ (license license:gpl3+))))
+
(define-public mlt
(package
(name "mlt")
#t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
- ("ffmpeg" ,ffmpeg)
+ ("ffmpeg" ,ffmpeg-3.4)
("fftw" ,fftw)
("libxml2" ,libxml2)
("jack" ,jack-1)
(define-public simplescreenrecorder
(package
(name "simplescreenrecorder")
- (version "0.3.10")
+ (version "0.3.11")
(source
(origin
(method url-fetch)
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "02rl9yyx3hlz9fqvgzv7ipmvx2qahj7ws5wx2m7zs3lssq3qag3g"))))
+ "0l6irdadqpajvv0dj3ngs1231n559l0y1pykhs2h7526qm4w7xal"))))
(build-system cmake-build-system)
;; Although libx11, libxfixes, libxext are listed as build dependencies in
;; README.md, the program builds and functions properly without them.
(define-public mps-youtube
(package
(name "mps-youtube")
- (version "0.2.7.1")
+ (version "0.2.8")
(source
(origin
(method url-fetch)
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1s7h35yx6f0szf8mm8612ic913w3v05m2kwphjfcxnpq0ammhyci"))))
+ "0x7cmfh199q9j396v7bz81nnvanfllhsg86489i5dw2p3yyc9wnm"))))
(build-system python-build-system)
(arguments
;; Tests need to be disabled until #556 upstream is fixed. It reads as if the
("pkg-config" ,pkg-config)))
(inputs
`(("libjpeg" ,libjpeg)
- ("ffmpeg" ,ffmpeg)
+ ("ffmpeg" ,ffmpeg-3.4)
("sqlite" ,sqlite)))
(arguments
'(#:phases (modify-phases %standard-phases
;; Some files say "version 2" and others "version 2 or later".
(license license:gpl2)))
+
+(define-public subdl
+ (let ((commit "4cf5789b11f0ff3f863b704b336190bf968cd471")
+ (revision "1"))
+ (package
+ (name "subdl")
+ (version (git-version "1.0.3" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/alexanderwink/subdl.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0kmk5ck1j49q4ww0lvas2767kwnzhkq0vdwkmjypdx5zkxz73fn8"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder (begin
+ (use-modules (guix build utils))
+ (let* ((out (assoc-ref %outputs "out"))
+ (bin (string-append out "/bin"))
+ (source (assoc-ref %build-inputs "source"))
+ (python (assoc-ref %build-inputs "python")))
+ (install-file (string-append source "/subdl") bin)
+ (patch-shebang (string-append bin "/subdl")
+ (list (string-append python "/bin")))))))
+ (inputs `(("python" ,python)))
+ (synopsis "Command-line tool for downloading subtitles from opensubtitles.org")
+ (description "Subdl is a command-line tool for downloading subtitles from
+opensubtitles.org. By default, it will search for English subtitles, display
+the results, download the highest-rated result in the requested language and
+save it to the appropriate filename.")
+ (license license:gpl3+)
+ (home-page "https://github.com/alexanderwink/subdl"))))
+
+(define-public l-smash
+ (package
+ (name "l-smash")
+ (version "2.14.5")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/" name "/" name "/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0dary0h65kq6sv93iabv25djlvzr5ckdcp3ywagbix44wqfw7xz6"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;no tests
+ #:make-flags
+ (list (string-append "LDFLAGS=-Wl,-L.,-rpath="
+ (assoc-ref %outputs "out") "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ ;; configure fails if it is followed by CONFIG_SHELL
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (invoke "./configure" (string-append "--prefix=" out)
+ "--disable-static")))))))
+ (native-inputs
+ `(("which" ,which)))
+ (home-page "https://l-smash.github.io/l-smash/")
+ (synopsis "MP4 multiplexer and demultiplexer library")
+ (description
+ "L-SMASH is a cross-platform library that handles the ISO base media file
+format and some of its derived file formats, including MP4. It operates as a
+multiplexer and demultiplexer, and can mux video and audio in several formats
+using standalone executable files.")
+ (license license:isc)))