GNU bug report logs - #70078
[PATCH] gnu: Add stremio.

Previous Next

Package: guix-patches;

Reported by: Sergio Pastor Pérez <sergio.pastorperez <at> outlook.es>

Date: Fri, 29 Mar 2024 16:32:03 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 70078 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#70078; Package guix-patches. (Fri, 29 Mar 2024 16:32:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sergio Pastor Pérez <sergio.pastorperez <at> outlook.es>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 29 Mar 2024 16:32:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sergio Pastor Pérez <sergio.pastorperez <at> outlook.es>
To: guix-patches <at> gnu.org
Cc: Sergio Pastor Pérez <sergio.pastorperez <at> outlook.es>
Subject: [PATCH] gnu: Add stremio.
Date: Fri, 29 Mar 2024 17:25:11 +0100
* gnu/packages/video.scm (stremio): New variable.

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

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





This bug report was last modified 36 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.