From: JamiKettunen <JamiKettunen@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] New package: waydroid-1.2.1
Date: Sun, 24 Jul 2022 17:25:16 +0200 [thread overview]
Message-ID: <20220724152516.-T9Q-eBofhgEjxYtiTXjq1ncvKGdQQ0nNjSix-gPI0Q@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-37611@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 1142 bytes --]
There is an updated pull request by JamiKettunen against master on the void-packages repository
https://github.com/JamiKettunen/void-packages waydroid
https://github.com/void-linux/void-packages/pull/37611
New package: waydroid-1.2.1
#### Testing the changes
- I tested the changes in this PR: **YES**
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**
#### Local build testing
- I built this PR locally for my native architecture
- `x86_64-glibc` / `x86_64-musl`
- `i686` (tested with `linux5.15` & `linux5-18`, both for some odd reason needed a rebuild twice, they failed on `cd ${DESTDIR}/usr/lib/modules/${_kernver}` in their templates initially)
- `aarch64` (tested by @CameronNemo and @Johnnynator, thanks!)
<img src="https://i.imgur.com/87hRDmj.jpg" width=500 />
#### To-Do
Test running Waydroid on the following supported archs:
- `armv7l` (glibc or musl)
Supersedes #33135 and closes #33133.
A patch file from https://github.com/void-linux/void-packages/pull/37611.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-waydroid-37611.patch --]
[-- Type: text/x-diff, Size: 11354 bytes --]
From b1621761448c5bf5395f7ce5f2df7db31a1da9b7 Mon Sep 17 00:00:00 2001
From: Jami Kettunen <jami.kettunen@protonmail.com>
Date: Wed, 15 Jun 2022 16:14:05 +0300
Subject: [PATCH 1/5] New package: libglibutil-1.0.66
---
common/shlibs | 1 +
srcpkgs/libglibutil-devel | 1 +
srcpkgs/libglibutil/template | 32 ++++++++++++++++++++++++++++++++
3 files changed, 34 insertions(+)
create mode 120000 srcpkgs/libglibutil-devel
create mode 100644 srcpkgs/libglibutil/template
diff --git a/common/shlibs b/common/shlibs
index c3dd63f542db..519884943b4e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4175,3 +4175,4 @@ libjaylink.so.0 libjaylink-0.2.0_1
libnvidia-container.so.1 libnvidia-container-1.10.0_1
libnvidia-container-go.so.1 libnvidia-container-1.10.0_1
libqtspell-qt5.so.1 qtspell-1.0.1_1
+libglibutil.so.1 libglibutil-1.0.64_1
diff --git a/srcpkgs/libglibutil-devel b/srcpkgs/libglibutil-devel
new file mode 120000
index 000000000000..f4da4cebe81f
--- /dev/null
+++ b/srcpkgs/libglibutil-devel
@@ -0,0 +1 @@
+libglibutil
\ No newline at end of file
diff --git a/srcpkgs/libglibutil/template b/srcpkgs/libglibutil/template
new file mode 100644
index 000000000000..849e9560e5b9
--- /dev/null
+++ b/srcpkgs/libglibutil/template
@@ -0,0 +1,32 @@
+# Template file for 'libglibutil'
+pkgname=libglibutil
+version=1.0.66
+revision=1
+build_style=gnu-makefile
+make_use_env=1
+make_build_args="KEEP_SYMBOLS=1"
+make_build_target="release pkgconfig"
+make_check_target="test"
+make_install_target="install-dev"
+hostmakedepends="pkg-config"
+makedepends="glib-devel"
+short_desc="Library of glib utilities"
+maintainer="Jami Kettunen <jami.kettunen@protonmail.com>"
+license="BSD-3-Clause"
+homepage="https://github.com/sailfishos/libglibutil"
+distfiles="https://github.com/sailfishos/libglibutil/archive/refs/tags/${version}.tar.gz"
+checksum=421879428ef54aabf7e946f3308f408ad09d9438766882cc038d7bc1bc9761ce
+
+post_install() {
+ vlicense LICENSE
+}
+
+libglibutil-devel_package() {
+ depends="${sourcepkg}>=${version}_${revision} glib-devel"
+ short_desc+=" - development files"
+ pkg_install() {
+ vmove usr/include
+ vmove usr/lib/pkgconfig
+ vmove "usr/lib/*.so"
+ }
+}
From 376246904256f9e7bf757e69595173814f9229a9 Mon Sep 17 00:00:00 2001
From: Jami Kettunen <jami.kettunen@protonmail.com>
Date: Wed, 15 Jun 2022 16:35:35 +0300
Subject: [PATCH 2/5] New package: libgbinder-1.1.25
---
common/shlibs | 1 +
srcpkgs/libgbinder-devel | 1 +
srcpkgs/libgbinder/template | 32 ++++++++++++++++++++++++++++++++
3 files changed, 34 insertions(+)
create mode 120000 srcpkgs/libgbinder-devel
create mode 100644 srcpkgs/libgbinder/template
diff --git a/common/shlibs b/common/shlibs
index 519884943b4e..145aa2b7f4c8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4176,3 +4176,4 @@ libnvidia-container.so.1 libnvidia-container-1.10.0_1
libnvidia-container-go.so.1 libnvidia-container-1.10.0_1
libqtspell-qt5.so.1 qtspell-1.0.1_1
libglibutil.so.1 libglibutil-1.0.64_1
+libgbinder.so.1 libgbinder-1.1.20_1
diff --git a/srcpkgs/libgbinder-devel b/srcpkgs/libgbinder-devel
new file mode 120000
index 000000000000..f31e2e6dbb52
--- /dev/null
+++ b/srcpkgs/libgbinder-devel
@@ -0,0 +1 @@
+libgbinder
\ No newline at end of file
diff --git a/srcpkgs/libgbinder/template b/srcpkgs/libgbinder/template
new file mode 100644
index 000000000000..9b7d3a61795b
--- /dev/null
+++ b/srcpkgs/libgbinder/template
@@ -0,0 +1,32 @@
+# Template file for 'libgbinder'
+pkgname=libgbinder
+version=1.1.25
+revision=1
+build_style=gnu-makefile
+make_use_env=1
+make_build_args="KEEP_SYMBOLS=1"
+make_build_target="release pkgconfig"
+make_install_target="install-dev"
+make_check_target="test"
+hostmakedepends="pkg-config bison flex"
+makedepends="libglibutil-devel"
+short_desc="GLib-style interface to binder (Android IPC mechanism)"
+maintainer="Jami Kettunen <jami.kettunen@protonmail.com>"
+license="BSD-3-Clause"
+homepage="https://github.com/mer-hybris/libgbinder"
+distfiles="https://github.com/mer-hybris/libgbinder/archive/refs/tags/${version}.tar.gz"
+checksum=92f3eaedba2d9a6d0c9db22cad4d7dea72259770fb4579d92929d34e2012381d
+
+post_install() {
+ vlicense LICENSE
+}
+
+libgbinder-devel_package() {
+ depends="${sourcepkg}>=${version}_${revision} libglibutil-devel"
+ short_desc+=" - development files"
+ pkg_install() {
+ vmove usr/include
+ vmove usr/lib/pkgconfig
+ vmove "usr/lib/*.so"
+ }
+}
From d585465bb9efb80fabc1428d79e27211e231df31 Mon Sep 17 00:00:00 2001
From: Jami Kettunen <jami.kettunen@protonmail.com>
Date: Wed, 15 Jun 2022 16:43:17 +0300
Subject: [PATCH 3/5] New package: gbinder-python-1.1.0
---
srcpkgs/gbinder-python/template | 15 +++++++++++++++
1 file changed, 15 insertions(+)
create mode 100644 srcpkgs/gbinder-python/template
diff --git a/srcpkgs/gbinder-python/template b/srcpkgs/gbinder-python/template
new file mode 100644
index 000000000000..f83515434e64
--- /dev/null
+++ b/srcpkgs/gbinder-python/template
@@ -0,0 +1,15 @@
+# Template file for 'gbinder-python'
+pkgname=gbinder-python
+version=1.1.0
+revision=1
+build_style=python3-module
+make_build_args="--cython"
+hostmakedepends="python3-Cython pkg-config"
+makedepends="libgbinder-devel python3-devel"
+depends="python3"
+short_desc="Python bindings for libgbinder"
+maintainer="Jami Kettunen <jami.kettunen@protonmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://github.com/erfanoabdi/gbinder-python"
+distfiles="https://github.com/erfanoabdi/gbinder-python/archive/refs/tags/${version}.tar.gz"
+checksum=930028fd2269df331591a5db155775c301d6fbc1b8d5c933be22c7a22e62d4fb
From 246df5e1a83277d1165b717d1526f9e9a89cb622 Mon Sep 17 00:00:00 2001
From: Jami Kettunen <jami.kettunen@protonmail.com>
Date: Wed, 15 Jun 2022 16:57:32 +0300
Subject: [PATCH 4/5] New package: python3-pyclip-0.6.0
---
srcpkgs/python3-pyclip/template | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
create mode 100644 srcpkgs/python3-pyclip/template
diff --git a/srcpkgs/python3-pyclip/template b/srcpkgs/python3-pyclip/template
new file mode 100644
index 000000000000..93f5ffb2547c
--- /dev/null
+++ b/srcpkgs/python3-pyclip/template
@@ -0,0 +1,17 @@
+# Template file for 'python3-pyclip'
+pkgname=python3-pyclip
+version=0.6.0
+revision=1
+wrksrc="pyclip-${version}"
+build_style=python3-module
+hostmakedepends="python3-setuptools"
+depends="python3"
+short_desc="Cross-platform Clipboard module for Python"
+maintainer="Jami Kettunen <jami.kettunen@protonmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/spyoungtech/pyclip"
+distfiles="https://github.com/spyoungtech/pyclip/archive/refs/tags/v${version}.tar.gz"
+checksum=60b02c936dd8e24dc4e4a15f09e5f1e9b49bcde7e032da120630ab1d74c5fa16
+
+# tests are broken due to "pyclip: error: argument command: invalid choice: 'test' (choose from 'copy', 'paste', 'clear')"
+make_check="no"
From d3705411087d9e168c0b9c644b00b8c3fa8a44b3 Mon Sep 17 00:00:00 2001
From: Jami Kettunen <jami.kettunen@protonmail.com>
Date: Wed, 15 Jun 2022 23:28:05 +0300
Subject: [PATCH 5/5] New package: waydroid-1.2.1
---
srcpkgs/waydroid/files/README.voidlinux | 29 ++++++++++++++
srcpkgs/waydroid/files/gbinder.conf | 2 +
.../waydroid/files/waydroid-container/finish | 3 ++
srcpkgs/waydroid/files/waydroid-container/run | 2 +
srcpkgs/waydroid/template | 39 +++++++++++++++++++
5 files changed, 75 insertions(+)
create mode 100644 srcpkgs/waydroid/files/README.voidlinux
create mode 100644 srcpkgs/waydroid/files/gbinder.conf
create mode 100644 srcpkgs/waydroid/files/waydroid-container/finish
create mode 100644 srcpkgs/waydroid/files/waydroid-container/run
create mode 100644 srcpkgs/waydroid/template
diff --git a/srcpkgs/waydroid/files/README.voidlinux b/srcpkgs/waydroid/files/README.voidlinux
new file mode 100644
index 000000000000..e1a3d23c24e1
--- /dev/null
+++ b/srcpkgs/waydroid/files/README.voidlinux
@@ -0,0 +1,29 @@
+To finish Waydroid installation run:
+
+ # waydroid init
+ # ln -s /etc/sv/waydroid-container /var/service
+
+Additionally ensure 'psi=1' is present on your kernel cmdline (unless
+it's configured with CONFIG_PSI_DEFAULT_DISABLED=n).
+
+To successfully boot the Android container on 5.18+ kernels ashmem usage
+needs to manually be disabled for now:
+
+ # echo 'sys.use_memfd=true' >> /var/lib/waydroid/waydroid_base.prop
+ # sv restart waydroid-container
+
+Optionally clipboard syncing between the container and host Wayland compositor
+can be enabled with:
+
+ # xbps-install python3-pyclip wl-clipboard
+
+In case of graphical rendering issues you can try enabling software rendering
+(instead of using Mesa):
+
+ # sed -i /var/lib/waydroid/waydroid_base.prop \
+ -e '/^ro.hardware.gralloc=/ s/gbm/default/' \
+ -e '/^ro.hardware.egl=/ s/mesa/swiftshader/'
+ # sv restart waydroid-container
+
+If not sure confirm your /proc/cpuinfo has the instruction sets required
+by Android: https://developer.android.com/ndk/guides/abis#sa
diff --git a/srcpkgs/waydroid/files/gbinder.conf b/srcpkgs/waydroid/files/gbinder.conf
new file mode 100644
index 000000000000..a95692feb37f
--- /dev/null
+++ b/srcpkgs/waydroid/files/gbinder.conf
@@ -0,0 +1,2 @@
+[General]
+ApiLevel = 29
diff --git a/srcpkgs/waydroid/files/waydroid-container/finish b/srcpkgs/waydroid/files/waydroid-container/finish
new file mode 100644
index 000000000000..73b10fd8e07a
--- /dev/null
+++ b/srcpkgs/waydroid/files/waydroid-container/finish
@@ -0,0 +1,3 @@
+#!/bin/sh
+waydroid session stop
+waydroid container stop
diff --git a/srcpkgs/waydroid/files/waydroid-container/run b/srcpkgs/waydroid/files/waydroid-container/run
new file mode 100644
index 000000000000..ca3afdb35942
--- /dev/null
+++ b/srcpkgs/waydroid/files/waydroid-container/run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec waydroid container start
diff --git a/srcpkgs/waydroid/template b/srcpkgs/waydroid/template
new file mode 100644
index 000000000000..be9c15c6bbb9
--- /dev/null
+++ b/srcpkgs/waydroid/template
@@ -0,0 +1,39 @@
+# Template file for 'waydroid'
+pkgname=waydroid
+version=1.2.1
+revision=1
+# https://developer.android.com/ndk/guides/abis#sa
+archs="aarch64* armv7* i686* x86_64*"
+# the following may be edited to e.g. run a newer Android system image
+conf_files="/etc/gbinder.conf /etc/gbinder.d/anbox.conf"
+depends="python3 gbinder-python python3-gobject lxc dnsmasq"
+short_desc="Container-based approach to boot a full Android system"
+maintainer="Jami Kettunen <jami.kettunen@protonmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://waydro.id"
+distfiles="https://github.com/waydroid/waydroid/archive/refs/tags/${version}.tar.gz"
+checksum=cd9e1c541e1b55329e64f080060974396532474299e708641c587326697fb093
+
+python_version=3
+pycompile_dirs="usr/lib/waydroid"
+
+do_install() {
+ vmkdir usr/lib/waydroid
+ vcopy data usr/lib/waydroid
+ vcopy tools usr/lib/waydroid
+
+ vinstall waydroid.py 755 usr/lib/waydroid
+ vmkdir usr/bin
+ ln -sr ${DESTDIR}/usr/lib/waydroid/waydroid.py ${DESTDIR}/usr/bin/waydroid
+
+ vinstall gbinder/anbox.conf 644 etc/gbinder.d/
+ vinstall ${FILESDIR}/gbinder.conf 644 etc/
+
+ vmkdir usr/share/applications
+ ln -sr ${DESTDIR}/usr/lib/waydroid/data/Waydroid.desktop ${DESTDIR}/usr/share/applications
+
+ vsv waydroid-container
+
+ # Void-specific documentation
+ vdoc ${FILESDIR}/README.voidlinux
+}
next prev parent reply other threads:[~2022-07-24 15:25 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-19 0:51 [PR PATCH] " JamiKettunen
2022-06-19 1:25 ` CameronNemo
2022-06-19 1:42 ` JamiKettunen
2022-06-19 6:35 ` CameronNemo
2022-06-19 6:36 ` CameronNemo
2022-06-19 8:19 ` Johnnynator
2022-06-19 12:45 ` JamiKettunen
2022-06-19 19:25 ` JamiKettunen
2022-06-19 19:36 ` JamiKettunen
2022-06-20 16:40 ` [PR PATCH] [Updated] " JamiKettunen
2022-06-20 19:12 ` JamiKettunen
2022-06-22 15:36 ` JamiKettunen
2022-06-23 18:36 ` JamiKettunen
2022-06-24 21:13 ` JamiKettunen
2022-06-25 20:40 ` JamiKettunen
2022-07-04 22:28 ` JamiKettunen
2022-07-07 0:04 ` JamiKettunen
2022-07-14 0:36 ` JamiKettunen
2022-07-19 15:00 ` JamiKettunen
2022-07-21 12:48 ` JamiKettunen
2022-07-24 14:23 ` sgn
2022-07-24 15:25 ` JamiKettunen [this message]
2022-07-29 16:43 ` sgn
2022-07-29 18:21 ` JamiKettunen
2022-07-29 18:26 ` [PR PATCH] [Updated] " JamiKettunen
2022-07-29 18:41 ` CameronNemo
2022-07-30 0:15 ` sgn
2022-07-30 0:34 ` sgn
2022-08-09 10:58 ` JamiKettunen
2022-08-09 10:59 ` JamiKettunen
2022-08-09 11:01 ` JamiKettunen
2022-08-09 11:01 ` sgn
2022-08-09 11:18 ` JamiKettunen
2022-08-09 11:35 ` JamiKettunen
2022-08-09 14:08 ` sgn
2022-08-09 15:20 ` JamiKettunen
2022-08-09 15:23 ` JamiKettunen
2022-08-09 15:32 ` sgn
2022-08-09 22:12 ` JamiKettunen
2022-08-09 22:21 ` JamiKettunen
2022-08-09 22:22 ` JamiKettunen
2022-08-09 22:23 ` JamiKettunen
2022-08-09 23:17 ` CameronNemo
2022-08-10 0:18 ` sgn
2022-08-10 12:02 ` JamiKettunen
2022-08-11 2:34 ` CameronNemo
2022-08-12 19:31 ` [PR PATCH] [Updated] " JamiKettunen
2022-08-12 22:00 ` JamiKettunen
2022-08-13 18:11 ` New package: waydroid-1.3.0 jcgruenhage
2022-08-13 18:19 ` JamiKettunen
2022-08-13 18:46 ` jcgruenhage
2022-08-13 19:08 ` JamiKettunen
2022-08-21 10:36 ` JamiKettunen
2022-08-21 11:12 ` [PR PATCH] [Merged]: " sgn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220724152516.-T9Q-eBofhgEjxYtiTXjq1ncvKGdQQ0nNjSix-gPI0Q@z \
--to=jamikettunen@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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 NNTP newsgroup(s).