aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Smith <robertsmith@posteo.net>2020-03-06 17:00:19 +0100
committerJakub Kądziołka <kuba@kadziolka.net>2020-03-07 17:29:34 +0100
commit880a316591650a06c18aeaef1703800784d2c196 (patch)
treee77cdff7b440b95958c6a2071090ac1a5f8a5142
parent262d6ed4652f7274af8f0ec0a8d32f9e895c417f (diff)
downloadguix-880a316591650a06c18aeaef1703800784d2c196.tar.gz
guix-880a316591650a06c18aeaef1703800784d2c196.zip
gnu: anki: Fix mpv audio playback
* gnu/packages/patches/anki-mpv-args.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/education.scm (anki): Adjust accordingly, wrap anki's PATH to include mpv executable. Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/education.scm6
-rw-r--r--gnu/packages/patches/anki-mpv-args.patch42
3 files changed, 48 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 7dd65ac001..a88a0102f6 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -718,6 +718,7 @@ dist_patch_DATA = \
%D%/packages/patches/akonadi-timestamps.patch \
%D%/packages/patches/allegro-mesa-18.2.5-and-later.patch \
%D%/packages/patches/amule-crypto-6.patch \
+ %D%/packages/patches/anki-mpv-args.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
%D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index b2501f2c7b..7c84d832c0 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -738,7 +738,8 @@ adjust the level of difficulty.")
(uri (string-append "https://apps.ankiweb.net/downloads/archive/anki-"
version "-source.tgz"))
(sha256
- (base32 "1gfr51rnllkyzli73p4r51h5ypzfa3m7lic3m3rzpywmqwrxs07k"))))
+ (base32 "1gfr51rnllkyzli73p4r51h5ypzfa3m7lic3m3rzpywmqwrxs07k"))
+ (patches (search-patches "anki-mpv-args.patch"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list (string-append "PREFIX=" %output))
@@ -779,6 +780,9 @@ adjust the level of difficulty.")
(wrap-program program
`("QTWEBENGINEPROCESS_PATH" =
(,qtwebengineprocess))
+ `("PATH" prefix (,(string-append
+ (assoc-ref inputs "mpv")
+ "/bin")))
`("PYTHONPATH" = ,site-packages)))
(find-files bin ".")))
#t)))))
diff --git a/gnu/packages/patches/anki-mpv-args.patch b/gnu/packages/patches/anki-mpv-args.patch
new file mode 100644
index 0000000000..21b9bd0aba
--- /dev/null
+++ b/gnu/packages/patches/anki-mpv-args.patch
@@ -0,0 +1,42 @@
+Modified from upstream commit:
+https://github.com/ankitects/anki/commit/ccd715013609133c55e83924734efa78abc03326
+Fixes mpv argument syntax (support for old syntax removed in mpv 0.31):
+https://anki.tenderapp.com/discussions/ankidesktop/38186-mpvprocesserror-unable-to-start-process
+Necessary because we are currently unable to upgrade anki to the
+latest version in guix (NPM dependencies currently unpackaged).
+---
+ anki/mpv.py | 4 ++--
+ anki/sound.py | 1 -
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/anki/mpv.py b/anki/mpv.py
+index f53d9d0..563fddc 100644
+--- a/anki/mpv.py
++++ b/anki/mpv.py
+@@ -104,9 +104,9 @@ class MPVBase:
+ """
+ self.argv = [self.executable]
+ self.argv += self.default_argv
+- self.argv += ["--input-ipc-server", self._sock_filename]
++ self.argv += ["--input-ipc-server="+self._sock_filename]
+ if self.window_id is not None:
+- self.argv += ["--wid", str(self.window_id)]
++ self.argv += ["--wid="+str(self.window_id)]
+
+ def _start_process(self):
+ """Start the mpv process.
+diff --git a/anki/sound.py b/anki/sound.py
+index aa3431b..a5fce44 100644
+--- a/anki/sound.py
++++ b/anki/sound.py
+@@ -124,7 +124,6 @@ class MpvManager(MPV):
+ def setMpvConfigBase(base):
+ mpvConfPath = os.path.join(base, "mpv.conf")
+ MpvManager.default_argv += [
+- "--no-config",
+ "--include="+mpvConfPath,
+ ]
+
+--
+2.25.1
+