diff mbox series

[bug#58816] gnu: Add new variable scrcpy

Message ID CAGNyvegBRgDDGZCJUfX8epHD8D8F9zOX0-3mo2wtK-8tVS7ckQ@mail.gmail.com
State New
Headers show
Series [bug#58816] gnu: Add new variable scrcpy | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success
cbaines/issue success View issue

Commit Message

路辉 Oct. 27, 2022, 11:48 a.m. UTC

Comments

宋文武 Nov. 1, 2022, 6:39 a.m. UTC | #1
路辉 <luhux76@gmail.com> writes:

Hello,

> From 3adf47b102b0ddcbdee264e6b7f9a1371482adae Mon Sep 17 00:00:00 2001
> [...]
> +     `(#:tests? #f
> +       #:phases (modify-phases %standard-phases
> +                  (add-after 'unpack 'disable-server-build
> +                    ;; because server build need android ndk
> +                    ;; you can use SCRCPY_SERVER_PATH to instead default server binary
> +                    (lambda _
> +                      (truncate-file "server/meson.build" 0))))))

I think without 'scrcpy-server' this package won't be useful.  Require
user to download or compile it via android ndk seems awkward.  Hope we
can find a way to package it properly...
Maxim Cournoyer March 21, 2023, 12:22 p.m. UTC | #2
Hello,

宋文武 <iyzsong@envs.net> writes:

> 路辉 <luhux76@gmail.com> writes:
>
> Hello,
>
>> From 3adf47b102b0ddcbdee264e6b7f9a1371482adae Mon Sep 17 00:00:00 2001
>> [...]
>> +     `(#:tests? #f
>> +       #:phases (modify-phases %standard-phases
>> +                  (add-after 'unpack 'disable-server-build
>> +                    ;; because server build need android ndk
>> +                    ;; you can use SCRCPY_SERVER_PATH to instead default server binary
>> +                    (lambda _
>> +                      (truncate-file "server/meson.build" 0))))))
>
> I think without 'scrcpy-server' this package won't be useful.  Require
> user to download or compile it via android ndk seems awkward.  Hope we
> can find a way to package it properly...

Agreed; and since there hasn't been an update in 20 weeks, I'm closing
this until it can be resubmitted with the server component packaged.
diff mbox series

Patch

From 3adf47b102b0ddcbdee264e6b7f9a1371482adae Mon Sep 17 00:00:00 2001
From: LuHui <luhux76@gmail.com>
Date: Wed, 26 Oct 2022 15:57:09 +0800
Subject: [PATCH] gnu: Add new variable scrcpy

* gnu/packages/android.scm (scrcpy): Add new variable.
---
 gnu/packages/android.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm
index 91aaba089f..fccf71a4cc 100644
--- a/gnu/packages/android.scm
+++ b/gnu/packages/android.scm
@@ -12,6 +12,7 @@ 
 ;;; Copyright © 2020 Sergey Trofimov <sarg@sarg.org.ru>
 ;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
 ;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
+;;; Copyright © 2022 LuHui <luhux76@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -37,6 +38,7 @@  (define-module (gnu packages android)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system go)
+  #:use-module (guix build-system meson)
   #:use-module (guix build-system python)
   #:use-module (guix build-system trivial)
   #:use-module ((guix licenses) #:prefix license:)
@@ -49,14 +51,17 @@  (define-module (gnu packages android)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages image)
   #:use-module (gnu packages java)
+  #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages pcre)
+  #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages sdl)
   #:use-module (gnu packages selinux)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages sphinx)
@@ -64,6 +69,7 @@  (define-module (gnu packages android)
   #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
   #:use-module (gnu packages virtualization)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xml))
@@ -1298,3 +1304,35 @@  (define-public android-file-transfer
 with Android devices using MTP.  It also allows the Android device to be
 mounted via FUSE.")
     (license license:lgpl2.1+)))
+
+(define-public scrcpy
+  (package
+    (name "scrcpy")
+    (version "1.24")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Genymobile/scrcpy")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "069139c66w7myrpx7jwy6xllp1l1r2gkw8mf385wfc0gjm4jbgcq"))))
+    (build-system meson-build-system)
+    (native-inputs
+     (list pkg-config))
+    (inputs
+     (list sdl2 libusb ffmpeg))
+    (arguments
+     `(#:tests? #f
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'disable-server-build
+                    ;; because server build need android ndk
+                    ;; you can use SCRCPY_SERVER_PATH to instead default server binary
+                    (lambda _
+                      (truncate-file "server/meson.build" 0))))))
+    (home-page "https://github.com/Genymobile/scrcpy")
+    (synopsis "Display and control your Android device")
+    (description "This application provides display and control
+of Android devices connected via USB or over TCP/IP.")
+    (license license:asl2.0)))
-- 
2.38.0