[PATCH] gnu: Add stremio.

  • Open
  • quality assurance status badge
Details
One participant
  • Sergio Pastor Pérez
Owner
unassigned
Submitted by
Sergio Pastor Pérez
Severity
normal
S
S
Sergio Pastor Pérez wrote on 29 Mar 17:25 +0100
(address . guix-patches@gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
PAXP251MB0348952161EACC6CA681DA88F33A2@PAXP251MB0348.EURP251.PROD.OUTLOOK.COM
* gnu/packages/video.scm (stremio): New variable.

Change-Id: Ie4c2dc30a0d488e20be21c3802330e993a60df70
---
gnu/packages/video.scm | 105 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 105 insertions(+)

Toggle diff (127 lines)
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 94334e0c97..e0da7a4874 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -169,6 +169,7 @@ (define-module (gnu packages video)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
+ #:use-module (gnu packages node)
#:use-module (gnu packages ocr)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pciutils)
@@ -3751,6 +3752,110 @@ (define-public streamlink
from sites like Twitch.tv and pipes them into a video player of choice.")
(license license:bsd-2)))
+(define-public stremio
+ (define server-js
+ (let ((version "4.20.8"))
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://dl.strem.io/server/v" version
+ "/desktop/server.js"))
+ (file-name (string-append "server-js-" version))
+ (sha256 (base32 "0xmlbx6aib5h78ya369pnpxyn05b12l05i8v2kymijbmaw7j04vi")))))
+ (package
+ (name "stremio")
+ (version "4.4.168")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Stremio/stremio-shell")
+ (commit (string-append "v" version))
+ (recursive? #t)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "14x9i8qvm19sijh7hqppbk8s14dvv7dqlck7x3s8n9i4xn4ncgd7"))))
+ (build-system qt-build-system)
+ (native-inputs (list librsvg))
+ (inputs (list qtbase-5
+ qtdeclarative-5
+ qtwebchannel-5
+ qtwebengine-5
+ qtquickcontrols-5
+ openssl
+ mpv
+ node))
+ (arguments
+ (list
+ #:tests? #f
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'setup-server
+ (lambda _
+ (copy-file #$server-js "server.js")))
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "main.qml"
+ (("var node_executable =.*$")
+ (string-append "var node_executable =\""
+ (search-input-file inputs "bin/node")
+ "\"\n"))
+ (("applicationDirPath \\+\"/server\\.js\"")
+ (string-append "\""
+ #$server-js "\"")))
+ (substitute* "smartcode-stremio.desktop"
+ (("Exec=stremio")
+ (string-append "Exec="
+ #$output "/bin/stremio")))))
+ (replace 'configure
+ (lambda _
+ (invoke "qmake")))
+ (replace 'build
+ (lambda _
+ (invoke "make" "-f" "release.makefile"
+ (string-append "PREFIX="
+ #$output))))
+ (replace 'install
+ (lambda _
+ (invoke "make" "-f" "release.makefile" "install"
+ (string-append "PREFIX="
+ #$output))
+ ;; Setup bin dir.
+ (with-directory-excursion #$output
+ (install-file "opt/stremio/stremio" "bin")
+ (install-file "opt/stremio/smartcode-stremio.desktop"
+ "share/applications")
+ ;; Setup icon dir.
+ (for-each (lambda (size)
+ (let ((dir (string-append #$output
+ "/share/icons/hicolor/"
+ size
+ "x"
+ size
+ "/apps")))
+ (mkdir-p dir)
+ (copy-file (string-append
+ "opt/stremio/icons/smartcode-stremio_"
+ size ".png")
+ (string-append dir
+ "/smartcode-stremio.png"))
+ (copy-file (string-append
+ "opt/stremio/icons/smartcode-stremio-tray_"
+ size ".png")
+ (string-append dir
+ "/smartcode-stremio-tray.png"))))
+ '("16" "22" "24" "32" "64" "128"))
+ ;; Remove unnecessary opt dir.
+ (delete-file-recursively "opt")))))))
+ (home-page "https://www.stremio.com")
+ (synopsis "Modern media center that gives you the freedom to watch
+everything you want")
+ (description
+ "Stremio offers a secure, modern and seamless entertainment experience.
+With its easy-to-use interface and diverse content library, including 4K HDR
+support, users can enjoy their favorite movies and TV shows across all their
+devices. And with its commitment to security, Stremio is the ultimate choice
+for a worry-free, high-quality streaming experience.")
+ (license license:expat)))
+
(define-public twitchy
(let ((commit "9beb36d80b16662414129693e74fa3a2fd97554e")) ; 3.4 has no tag
(package

base-commit: 8ed9ce9d0070b854f0aadc6626e624ba2156c112
--
2.41.0
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 70078@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 70078
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch