* [bug#39814] [PATCH] gnu: anki: Fix mpv audio playback
@ 2020-02-27 20:09 Robert Smith
2020-03-01 21:20 ` Jakub Kądziołka
2020-03-06 16:00 ` [bug#39814] [PATCH v2] " Robert Smith
0 siblings, 2 replies; 4+ messages in thread
From: Robert Smith @ 2020-02-27 20:09 UTC (permalink / raw)
To: 39814; +Cc: Robert Smith
* gnu/packages/patches/anki-mpv-args.patch: New file.
* gnu/packages/education.scm (anki): Adjust accordingly.
---
mpv now requires that the input-ipc-server argument be passed with an
equals sign and without any spaces. This is a slightly out-of-date
version of anki, so presumably mpv used to be more lenient with
command line arguments. mpv was also added to the PATH using
wrap-program to to ensure anki can find it at runtime.
---
gnu/packages/education.scm | 6 ++++-
gnu/packages/patches/anki-mpv-args.patch | 30 ++++++++++++++++++++++++
2 files changed, 35 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/anki-mpv-args.patch
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index 20fc9a3706..d8427f6eab 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..a66632c0e0
--- /dev/null
+++ b/gnu/packages/patches/anki-mpv-args.patch
@@ -0,0 +1,30 @@
+From 0e2c723f2b920f96937725a12e3db13c14795117 Mon Sep 17 00:00:00 2001
+From: Robert Smith <robertsmith@posteo.net>
+Date: Thu, 27 Feb 2020 20:07:08 +0100
+Subject: [PATCH] Fix mpv argument formatting
+
+---
+mpv now requires that the input-ipc-server argument be passed with an
+equals sign and without any spaces. This is a slightly out-of-date
+version of anki, so presumably mpv used to be more lenient with
+command line arguments.
+---
+ anki/mpv.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/anki/mpv.py b/anki/mpv.py
+index f53d9d0..c6e7dd7 100644
+--- a/anki/mpv.py
++++ b/anki/mpv.py
+@@ -104,7 +104,7 @@ 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)]
+
+--
+2.25.0
+
--
2.25.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [bug#39814] [PATCH] gnu: anki: Fix mpv audio playback
2020-02-27 20:09 [bug#39814] [PATCH] gnu: anki: Fix mpv audio playback Robert Smith
@ 2020-03-01 21:20 ` Jakub Kądziołka
2020-03-06 16:00 ` [bug#39814] [PATCH v2] " Robert Smith
1 sibling, 0 replies; 4+ messages in thread
From: Jakub Kądziołka @ 2020-03-01 21:20 UTC (permalink / raw)
To: Robert Smith; +Cc: 39814
[-- Attachment #1: Type: text/plain, Size: 2298 bytes --]
On Thu, Feb 27, 2020 at 09:09:09PM +0100, Robert Smith wrote:
> * gnu/packages/patches/anki-mpv-args.patch: New file.
> * gnu/packages/education.scm (anki): Adjust accordingly.
Please add the new file to gnu/local.mk
> @@ -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)))))
Please mention this in the commit message.
> diff --git a/gnu/packages/patches/anki-mpv-args.patch b/gnu/packages/patches/anki-mpv-args.patch
> new file mode 100644
> index 0000000000..a66632c0e0
> --- /dev/null
> +++ b/gnu/packages/patches/anki-mpv-args.patch
> @@ -0,0 +1,30 @@
> +From 0e2c723f2b920f96937725a12e3db13c14795117 Mon Sep 17 00:00:00 2001
> +From: Robert Smith <robertsmith@posteo.net>
> +Date: Thu, 27 Feb 2020 20:07:08 +0100
> +Subject: [PATCH] Fix mpv argument formatting
> +
> +---
> +mpv now requires that the input-ipc-server argument be passed with an
> +equals sign and without any spaces. This is a slightly out-of-date
> +version of anki, so presumably mpv used to be more lenient with
> +command line arguments.
> +---
> + anki/mpv.py | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
I don't know how I feel about this header for the patch.
> +--- a/anki/mpv.py
> ++++ b/anki/mpv.py
> +@@ -104,7 +104,7 @@ 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)]
It seems that this is not the only place that should be modified,
considering the upstream commit that fixes the same issue:
https://github.com/ankitects/anki/commit/ccd715013609133c55e83924734efa78abc03326
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* [bug#39814] [PATCH v2] gnu: anki: Fix mpv audio playback
2020-02-27 20:09 [bug#39814] [PATCH] gnu: anki: Fix mpv audio playback Robert Smith
2020-03-01 21:20 ` Jakub Kądziołka
@ 2020-03-06 16:00 ` Robert Smith
2020-03-07 16:30 ` bug#39814: " Jakub Kądziołka
1 sibling, 1 reply; 4+ messages in thread
From: Robert Smith @ 2020-03-06 16:00 UTC (permalink / raw)
To: kuba; +Cc: 39814, Robert Smith
* 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.
---
Thanks for the feedback Jakub, I've rewritten the patch based on the
upstream commit and modified the commit message.
---
gnu/local.mk | 1 +
gnu/packages/education.scm | 6 +++-
gnu/packages/patches/anki-mpv-args.patch | 42 ++++++++++++++++++++++++
3 files changed, 48 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/anki-mpv-args.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 857345cfad..bd4796d41d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -716,6 +716,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 20fc9a3706..d8427f6eab 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
+
--
2.25.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* bug#39814: [PATCH v2] gnu: anki: Fix mpv audio playback
2020-03-06 16:00 ` [bug#39814] [PATCH v2] " Robert Smith
@ 2020-03-07 16:30 ` Jakub Kądziołka
0 siblings, 0 replies; 4+ messages in thread
From: Jakub Kądziołka @ 2020-03-07 16:30 UTC (permalink / raw)
To: Robert Smith; +Cc: 39814-done
[-- Attachment #1: Type: text/plain, Size: 563 bytes --]
On Fri, Mar 06, 2020 at 05:00:19PM +0100, Robert Smith wrote:
> * 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.
> ---
> Thanks for the feedback Jakub, I've rewritten the patch based on the
> upstream commit and modified the commit message.
Thanks! The revised patch LGTM, and it indeed helps with audio playback
in anki, so I've pushed it to master as 880a316591650a06c18aeaef1703800784d2c196
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-03-07 16:30 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-02-27 20:09 [bug#39814] [PATCH] gnu: anki: Fix mpv audio playback Robert Smith
2020-03-01 21:20 ` Jakub Kądziołka
2020-03-06 16:00 ` [bug#39814] [PATCH v2] " Robert Smith
2020-03-07 16:30 ` bug#39814: " Jakub Kądziołka
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).