;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2017 Feng Shu <tumashu@163.com>
+;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages dejagnu)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
#:use-module (gnu packages m4)
+ #:use-module (gnu packages man)
#:use-module (gnu packages mp3)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ocr)
(%current-system))
'("--host=mips64el-unknown-linux-gnu")
'())
+ ;; The same is also true with aarch64.
+ ,@(if (string=? "aarch64-linux"
+ (%current-system))
+ '("--host=aarch64-unknown-linux-gnu")
+ '())
(string-append "--with-ncurses="
ncurses)))))))))
(home-page "http://aa-project.sourceforge.net/aalib/")
(define-public libx264
(package
(name "libx264")
- (version "20161205-2245")
+ (version "20170316-2245")
(source (origin
(method url-fetch)
(uri (string-append "https://download.videolan.org/pub/x264/snapshots/"
"x264-snapshot-" version ".tar.bz2"))
(sha256
(base32
- "0jjzdwag59kqlk09bb2pykm1ss8bw3p9q7bsks2kjgdwbj121a44"))))
+ "1s1nnvl3axz38sv4g09skijl6k9mbbngbb1nsh26w4dr2w2gyzad"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
(define-public x265
(package
(name "x265")
- (version "2.1")
+ (version "2.3")
(source
(origin
(method url-fetch)
"x265_" version ".tar.gz"))
(sha256
(base32
- "0hx6sr9l7586gs4qds2sj0i1m5brxkaqq3cwmibhfb559fpvkz48"))
+ "07z4ydxg0lk6j43h0wlh2xddb91cy4y4mny2ln71d4278b1hllj7"))
(modules '((guix build utils)))
(snippet
'(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
+ ,@(if (string-prefix? "aarch64" (or (%current-target-system) (%current-system)))
+ '(#:configure-flags '("-DENABLE_PIC=TRUE"))
+ '())
#:phases
(modify-phases %standard-phases
(add-before 'configure 'prepare-build
(define-public libass
(package
(name "libass")
- (version "0.13.4")
+ (version "0.13.6")
(source (origin
(method url-fetch)
(uri (string-append
version "/libass-" version ".tar.xz"))
(sha256
(base32
- "1dlzkjybnpl2fkvyjq0qblb7qw12cs893bs7zj3rvf8ij342yjnq"))))
+ "0b9cj5xfsa7zwlk5m146fhv102v51iqs3rapq0n2xrz30k8p9a7q"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
(source (origin
(method url-fetch)
(uri (string-append
- "http://download.videolan.org/pub/videolan/libdca/"
+ "https://download.videolan.org/pub/videolan/libdca/"
version "/libdca-" version ".tar.bz2"))
(sha256
(base32
"0hh6a7l8vvccsd5i1fkv9av2gzv9fy8m0b8jpsn5p6hh4bh2586v"))))
(build-system gnu-build-system)
- (home-page "http://www.videolan.org/developers/libdca.html")
+ (home-page "https://www.videolan.org/developers/libdca.html")
(synopsis "DTS Coherent Acoustics decoder")
(description "libdca is a library for decoding DTS Coherent Acoustics
streams.")
(define-public libva
(package
(name "libva")
- (version "1.7.1")
+ (version "1.7.3")
(source
(origin
(method url-fetch)
"https://www.freedesktop.org/software/vaapi/releases/libva/libva-"
version".tar.bz2"))
(sha256
- (base32 "1j8mb3p9kafhp30r3kmndnrklvzycc2ym0w6xdqz6m7jap626028"))))
+ (base32 "1ndrf136rlw03xag7j1xpmf9015d1h0dpnv6v587jnh6k2a17g12"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(define-public ffmpeg
(package
(name "ffmpeg")
- (version "3.2.2")
+ (version "3.2.4")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
- "1z7d5y5crhsl5fm74236rdwbkd4jj5frx1l4iizjfym1w4gvs09z"))))
+ "0ymg1mkg1n0770gmjfqp79p5ijxq04smfrsrrxc8pjc0y0agyf3f"))))
(build-system gnu-build-system)
(inputs
`(("fontconfig" ,fontconfig)
("mesa" ,mesa)
("openal" ,openal)
("pulseaudio" ,pulseaudio)
+ ("sdl" ,sdl2)
("soxr" ,soxr)
("speex" ,speex)
("twolame" ,twolame)
(define-public ffmpeg-2.8
(package
(inherit ffmpeg)
- (version "2.8.10")
+ (version "2.8.11")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
- "1ca84kc715xm7wmbnj1z4jfhxj8c7rxhy4cqwrd8cnih0l196j1c"))))
+ "1rhz7rhmhhh8bjcj3dc82haisn3qjbzqlr7k6d6v7064jgn3maiq"))))
(arguments
(substitute-keyword-arguments (package-arguments ffmpeg)
((#:configure-flags flags)
(define-public mpv
(package
(name "mpv")
- (version "0.23.0")
+ (version "0.24.0")
(source (origin
(method url-fetch)
(uri (string-append
".tar.gz"))
(sha256
(base32
- "1629v5l0rmphxra7chmfm7bnn59zc1mp529b9m2zqzaqf1czxvla"))
+ "059zblcj98fhrns1rwa66mf4km68czpam4nnk8q9qny31bx58654"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system waf-build-system)
(native-inputs
(lambda* (#:key inputs #:allow-other-keys)
(copy-file (assoc-ref inputs "waf") "waf")
(setenv "CC" "gcc"))))
- #:configure-flags (list "--enable-libmpv-shared" "--enable-zsh-comp")
+ #:configure-flags (list "--enable-libmpv-shared"
+ "--enable-zsh-comp"
+ "--disable-build-date")
;; No check function defined.
#:tests? #f))
(home-page "https://mpv.io/")
(define-public libvpx
(package
(name "libvpx")
- (version "1.6.0")
+ (version "1.6.1")
(source (origin
(method url-fetch)
(uri (string-append "http://storage.googleapis.com/"
name "-" version ".tar.bz2"))
(sha256
(base32
- "1basd6dda5di9p7jhc0f4f52wzm9c3hsravqspw6ibpcn5gbpbyh"))
+ "06d8hqjkfs6wl45qf4pwh1kpbvkx6cwywd5y8d4lgagvjwm0qb0w"))
(patches (search-patches "libvpx-CVE-2016-2818.patch"))))
(build-system gnu-build-system)
(arguments
(define-public youtube-dl
(package
(name "youtube-dl")
- (version "2017.02.07")
+ (version "2017.04.16")
(source (origin
(method url-fetch)
(uri (string-append "https://yt-dl.org/downloads/"
version ".tar.gz"))
(sha256
(base32
- "1grq3aqa1zc0xdq1y6vqnk0y0vcd1j2jjn85696hw98mi0w1am73"))))
+ "1pgdfspzv15772q7kakfq5qx1r70lcviwzk6sz9z1cddxzffxgdd"))))
(build-system python-build-system)
(arguments
;; The problem here is that the directory for the man page and completion
(home-page "https://yt-dl.org")
(license license:public-domain)))
+(define-public you-get
+ (package
+ (name "you-get")
+ (version "0.4.652")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/soimort/you-get/releases/download/v"
+ version "/you-get-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0brkz98lycx8mmxjwmn7jlhqfdbvl0hy070n7skwr1k75kh99q30"))))
+ (build-system python-build-system)
+ (arguments
+ ;; no tests
+ '(#:tests? #f))
+ (inputs
+ `(("ffmpeg" ,ffmpeg)))
+ (synopsis "Download videos, audios, or images from Web sites")
+ (description
+ "You-Get is a command-line utility to download media contents (videos,
+audio, images) from the Web. It can use either mpv or vlc for playback.")
+ (home-page "https://you-get.org/")
+ (license license:expat)))
+
(define-public libbluray
(package
(name "libbluray")
- (version "0.9.3")
+ (version "1.0.0")
(source (origin
(method url-fetch)
(uri (string-append "https://download.videolan.org/videolan/"
name "-" version ".tar.bz2"))
(sha256
(base32
- "1q1whviqv5sr9nr372h31zwid1rvbfbx3z4lzr8lnj25xha6cdm6"))))
+ "1k3lag4lxi2jjd3zh4wcb5l3hadzm54j5kagh92yzfy76p9svqzp"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--disable-bdjava")
(version "5.0.3")
(source (origin
(method url-fetch)
- (uri (string-append "http://download.videolan.org/videolan/"
+ (uri (string-append "https://download.videolan.org/videolan/"
name "/" version "/"
name "-" version ".tar.bz2"))
(sha256
(version "5.0.3")
(source (origin
(method url-fetch)
- (uri (string-append "http://download.videolan.org/videolan/"
+ (uri (string-append "https://download.videolan.org/videolan/"
name "/" version "/"
name "-" version ".tar.bz2"))
(sha256
(method url-fetch)
(uri
(string-append
- "http://download.videolan.org/videolan/libdvdnav/libdvdnav-"
+ "https://download.videolan.org/videolan/libdvdnav/libdvdnav-"
version ".tar.xz"))
(sha256
(base32
(version "1.4.0")
(source (origin
(method url-fetch)
- (uri (string-append "http://download.videolan.org/pub/"
+ (uri (string-append "https://download.videolan.org/pub/"
name "/" version "/"
name "-" version ".tar.bz2"))
(sha256
(base32
"0nl45ifc4xcb196snv9d6hinfw614cqpzcqp92dg43c0hickg290"))))
(build-system gnu-build-system)
- (home-page "http://www.videolan.org/developers/libdvdcss.html")
+ (home-page "https://www.videolan.org/developers/libdvdcss.html")
(synopsis "Library for accessing DVDs as block devices")
(description
"libdvdcss is a simple library designed for accessing DVDs like a block
(define-public vapoursynth
(package
(name "vapoursynth")
- (version "35")
+ (version "37")
(source (origin
(method url-fetch)
(uri (string-append
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0629ys2lf618n9cc644xlvx0vx52v2fp3sx14p4mx5rg9nlasb3n"))))
+ "1g3hc079jw4mz1cmkv2y28pdb556wqc8ql7iravgh1rg8j3f1zi5"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
(define-public v4l-utils
(package
(name "v4l-utils")
- (version "1.10.1")
+ (version "1.12.3")
(source (origin
(method url-fetch)
(uri (string-append "https://linuxtv.org/downloads/v4l-utils"
"/v4l-utils-" version ".tar.bz2"))
(sha256
(base32
- "1h1nhg5cmmzlbipak526nk4bm6d0yb217mll75f3rpg7kz1cqiv1"))))
+ "0vpl3jl0x441y7b5cn7zhdsyi954hp9h2p30jhnr1zkx1rpxsiss"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
"/lib/udev")
"CXXFLAGS=-std=gnu++11")))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("perl" ,perl)
+ ("pkg-config" ,pkg-config)))
(inputs
`(("alsa-lib" ,alsa-lib)
("glu" ,glu)
(define-public obs
(package
(name "obs")
- (version "17.0.2")
+ (version "18.0.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jp9000/obs-studio"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "02cfhpkcsq718zwhwwsm48gjggf95qr38hqpi0kwrvsy18ll0msm"))))
+ "043f8mfdh4ll0hpivpyg3iniirckwsgri0gzamyrba1yhf2c2ibr"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no tests
(inputs
`(("libgcrypt" ,libgcrypt)))
(build-system gnu-build-system)
- (home-page "http://www.videolan.org/developers/libbdplus.html")
+ (home-page "https://www.videolan.org/developers/libbdplus.html")
(synopsis "Library for decrypting certain Blu-Ray discs")
(description "libbdplus is a library which implements the BD+ System
specifications.")
`(("bison" ,bison)
("flex" ,flex)))
(build-system gnu-build-system)
- (home-page "http://www.videolan.org/developers/libaacs.html")
+ (home-page "https://www.videolan.org/developers/libaacs.html")
(synopsis "Library for decrypting certain Blu-Ray discs")
(description "libaacs is a library which implements the Advanced Access
Content System specification.")
(description
"Openh264 is a library which can decode H264 video streams.")
(license license:bsd-2)))
+
+(define-public libmp4v2
+ (package
+ (name "libmp4v2")
+ (version "2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ ;; XXX: The new location of upstream is uncertain and will become relevant the
+ ;; moment when the googlecode archive shuts down. It is past the date it
+ ;; should've been turned off. I tried to communicate with upstream, but this
+ ;; wasn't very responsive and not very helpful. The short summary is, it is
+ ;; chaos when it comes to the amount of forks and only time will tell where
+ ;; the new upstream location is.
+ (uri (string-append "https://storage.googleapis.com/google-"
+ "code-archive-downloads/v2/"
+ "code.google.com/mp4v2/mp4v2-" version ".tar.bz2"))
+ (file-name (string-append name "-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0f438bimimsvxjbdp4vsr8hjw2nwggmhaxgcw07g2z361fkbj683"))))
+ (build-system gnu-build-system)
+ (outputs '("out"
+ "static")) ; 3.7MiB .a file
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-dates
+ (lambda _
+ ;; Make the build reproducible.
+ (substitute* "configure"
+ (("PROJECT_build=\"`date`\"") "PROJECT_build=\"\"")
+ (("ac_abs_top_builddir=$ac_pwd") "ac_abs_top_builddir=\"\""))
+ #t))
+ (add-after 'install 'move-static-libraries
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Move static libraries to the "static" output.
+ (let* ((out (assoc-ref outputs "out"))
+ (lib (string-append out "/lib"))
+ (static (assoc-ref outputs "static"))
+ (slib (string-append static "/lib")))
+ (mkdir-p slib)
+ (for-each (lambda (file)
+ (install-file file slib)
+ (delete-file file))
+ (find-files lib "\\.a$"))
+ #t))))))
+ (native-inputs
+ `(("help2man" ,help2man)
+ ("dejagnu" ,dejagnu)))
+ (home-page "https://code.google.com/archive/p/mp4v2/")
+ (synopsis "API to create and modify mp4 files")
+ (description
+ "The MP4v2 library provides an API to create and modify mp4 files as defined by
+ISO-IEC:14496-1:2001 MPEG-4 Systems. This file format is derived from Apple's QuickTime
+file format that has been used as a multimedia file format in a variety of platforms and
+applications. It is a very powerful and extensible format that can accommodate
+practically any type of media.")
+ (license license:mpl1.1)))