From c9b84634df4bdb226a9ec878e24efd4e7759731c Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Tue, 15 Dec 2020 21:32:52 +0200 Subject: [PATCH 01/12] app-office/onlyoffice-bin: bump to 6.1.0, remove old Package-Manager: Portage-3.0.9, Repoman-3.0.2 Signed-off-by: Alfred Wingate --- app-office/onlyoffice-bin/Manifest | 2 +- .../onlyoffice-bin/files/fixshellsyntax.patch | 13 ------------- ...-6.0.0-r1.ebuild => onlyoffice-bin-6.1.0.ebuild} | 5 ++--- 3 files changed, 3 insertions(+), 17 deletions(-) delete mode 100644 app-office/onlyoffice-bin/files/fixshellsyntax.patch rename app-office/onlyoffice-bin/{onlyoffice-bin-6.0.0-r1.ebuild => onlyoffice-bin-6.1.0.ebuild} (97%) diff --git a/app-office/onlyoffice-bin/Manifest b/app-office/onlyoffice-bin/Manifest index 4c9d32f..3fc5701 100644 --- a/app-office/onlyoffice-bin/Manifest +++ b/app-office/onlyoffice-bin/Manifest @@ -1,2 +1,2 @@ -DIST onlyoffice-bin-6.0.0_amd64.deb 200973674 BLAKE2B 95c8dd8878778190b0e8221d6196027090a43ad722807f0c1f25979ca2d1cf88baafb7d3f8685a7aa6a0b60da6f45a3d2bf4207ff8b52c95a9c86e5418119add SHA512 59dcd4046dfb303b90ca1ef79fe71a3013a529db8a716a8d22a90b71596c1eef51358f7a309559a00fade100b13e4a7b104328593effeac09ce104358279e8c0 DIST onlyoffice-bin-6.0.1_amd64.deb 199113182 BLAKE2B fae4bc8e828ef497f8b91a4f73d2ae6c1e834301c1b5f69acb5f6a77f4d991fa18ea97666005ceda2311928eb1cd3ba60ace837b9235c70a8ac92c8ed3dee341 SHA512 4ee535b0f69cc83b5a4fb2fb42b247d034d50ec13c1b94b4de346f9f8c830dc0c85a4faa172ab17bf21b043e8f47d1b89d3dbb4bb8e2bfd3a21d687ac4c6e9c1 +DIST onlyoffice-bin-6.1.0_amd64.deb 234452942 BLAKE2B c280f017864c0ae01e908bc6070da5e9c3b7e1a749386178a990bc239ce05132735d71c58425cec2d5ef4ecac115454a03dbd3af0fdc0e07ff7c7f4ca6b3f6d8 SHA512 1ce3339b05259813fc3f94bd9a83ea6f7aa6ffff516fc391d8ab51bb8777b88204eddfcaa1da3252b76c708e9b1392a77ec12d0e919645f0da121799cfff062e diff --git a/app-office/onlyoffice-bin/files/fixshellsyntax.patch b/app-office/onlyoffice-bin/files/fixshellsyntax.patch deleted file mode 100644 index 9349e0c..0000000 --- a/app-office/onlyoffice-bin/files/fixshellsyntax.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/usr/bin/onlyoffice-desktopeditors b/usr/bin/onlyoffice-desktopeditors -index 6fa731f..16e7b41 100755 ---- a/usr/bin/onlyoffice-desktopeditors -+++ b/usr/bin/onlyoffice-desktopeditors -@@ -68,7 +68,7 @@ set_names_ru() { - } - - check_templates() { -- if [ $1 != "--new-document-templates" ]; then -+ if [ "$1" != "--new-document-templates" ]; then - return 0 - fi - diff --git a/app-office/onlyoffice-bin/onlyoffice-bin-6.0.0-r1.ebuild b/app-office/onlyoffice-bin/onlyoffice-bin-6.1.0.ebuild similarity index 97% rename from app-office/onlyoffice-bin/onlyoffice-bin-6.0.0-r1.ebuild rename to app-office/onlyoffice-bin/onlyoffice-bin-6.1.0.ebuild index 6e61c70..69caab9 100644 --- a/app-office/onlyoffice-bin/onlyoffice-bin-6.0.0-r1.ebuild +++ b/app-office/onlyoffice-bin/onlyoffice-bin-6.1.0.ebuild @@ -11,7 +11,7 @@ DESCRIPTION="Onlyoffice is an office productivity suite (binary version)" HOMEPAGE="https://www.onlyoffice.com/" SRC_URI=" amd64? ( - https://github.com/ONLYOFFICE/DesktopEditors/releases/download/ONLYOFFICE-DesktopEditors-"${PV}"/onlyoffice-desktopeditors_amd64.deb -> "${P}"_amd64.deb + https://github.com/ONLYOFFICE/DesktopEditors/releases/download/v"${PV}"/onlyoffice-desktopeditors_"${PV}"-90_amd64.deb -> "${P}"_amd64.deb ) " @@ -89,7 +89,6 @@ S="${WORKDIR}" QA_PREBUILT=" opt/onlyoffice/desktopeditors/DesktopEditors opt/onlyoffice/desktopeditors/editors_helper - opt/onlyoffice/desktopeditors/HtmlFileInternal opt/onlyoffice/desktopeditors/libascdocumentscore.so opt/onlyoffice/desktopeditors/libcef.so opt/onlyoffice/desktopeditors/libEGL.so @@ -173,5 +172,5 @@ src_install() { domenu usr/share/applications/onlyoffice-desktopeditors.desktop dobin usr/bin/desktopeditors usr/bin/onlyoffice-desktopeditors doins -r opt - fperms +x /opt/onlyoffice/desktopeditors/{DesktopEditors,editors_helper,HtmlFileInternal,converter/x2t} + fperms +x /opt/onlyoffice/desktopeditors/{DesktopEditors,editors_helper,converter/x2t} } From 9603b2f17b36a9301619b3b173b5ae09d81208d4 Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Tue, 15 Dec 2020 21:39:01 +0200 Subject: [PATCH 02/12] net-im/mirage: update dependencies for live ebuild Package-Manager: Portage-3.0.9, Repoman-3.0.2 Signed-off-by: Alfred Wingate --- net-im/mirage/mirage-9999.ebuild | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/net-im/mirage/mirage-9999.ebuild b/net-im/mirage/mirage-9999.ebuild index 6d8276a..fe2bfc2 100644 --- a/net-im/mirage/mirage-9999.ebuild +++ b/net-im/mirage/mirage-9999.ebuild @@ -3,7 +3,9 @@ EAPI=7 +# Python 3.9 is blocked due to dependencies pyotherside and aiofiles missing targets, otherwise python 3.9 should be supported. PYTHON_COMPAT=( python3_{6..8} ) + inherit qmake-utils python-single-r1 xdg DESCRIPTION="A fancy, customizable, keyboard-operable Qt/QML+Python Matrix chat client." @@ -58,8 +60,7 @@ RDEPEND=" dev-python/matrix-nio[e2e,${PYTHON_USEDEP}] >=dev-python/aiofiles-0.4.0[${PYTHON_USEDEP}] >=dev-python/appdirs-1.4.4[${PYTHON_USEDEP}] - >=dev-python/blist-1.3.6[${PYTHON_USEDEP}] - >=media-gfx/cairosvg-2.4.2[${PYTHON_USEDEP}] + >=dev-python/dbus-python-1.2.16[${PYTHON_USEDEP}] >=dev-python/filetype-1.0.7[${PYTHON_USEDEP}] >=dev-python/html_sanitizer-1.9.1[${PYTHON_USEDEP}] >=dev-python/lxml-4.5.1[${PYTHON_USEDEP}] @@ -67,6 +68,8 @@ RDEPEND=" >=dev-python/pillow-7.0.0[${PYTHON_USEDEP}] >=dev-python/plyer-1.4.3[${PYTHON_USEDEP}] >=dev-python/pymediainfo-4.2.1[${PYTHON_USEDEP}] + >=dev-python/sortedcontainers-2.2.2[${PYTHON_USEDEP}] + >=media-gfx/cairosvg-2.4.2[${PYTHON_USEDEP}] python_single_target_python3_6? ( >=dev-python/async_generator-1.10[python_targets_python3_6] ) python_single_target_python3_6? ( >=dev-python/dataclasses-0.6[python_targets_python3_6] ) python_single_target_python3_6? ( >=dev-python/pyfastcopy-1.0.3[python_targets_python3_6] ) From 2a45bbddb4d8f36769cd5bef28d1b247d1f5720a Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Wed, 23 Dec 2020 17:13:32 +0200 Subject: [PATCH 03/12] app-office/onlyoffice-bin: flesh out metadata.xml Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- app-office/onlyoffice-bin/metadata.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app-office/onlyoffice-bin/metadata.xml b/app-office/onlyoffice-bin/metadata.xml index 097975e..167f3c7 100644 --- a/app-office/onlyoffice-bin/metadata.xml +++ b/app-office/onlyoffice-bin/metadata.xml @@ -1,4 +1,11 @@ + + parona@protonmail.com + Alfred Wingate + + + ONLYOFFICE/DesktopEditors + From 62612d15d0ca275e818fba4bd0116295a788b7aa Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Wed, 23 Dec 2020 17:15:50 +0200 Subject: [PATCH 04/12] net-im/mirage: reformat and fleshen out metadata.xml Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- net-im/mirage/metadata.xml | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/net-im/mirage/metadata.xml b/net-im/mirage/metadata.xml index 6160564..668df21 100644 --- a/net-im/mirage/metadata.xml +++ b/net-im/mirage/metadata.xml @@ -1,12 +1,15 @@ - - parona@protonmail.com - Alfred Wingate - - - hedmoo@yahoo.com - Andreas Westman Dorcsak - + + parona@protonmail.com + Alfred Wingate + + + hedmoo@yahoo.com + Andreas Westman Dorcsak + + + mirukana/mirage + From b0813da4d0db76e8c785348e7ea9061d94397b6b Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Wed, 23 Dec 2020 19:58:36 +0200 Subject: [PATCH 05/12] dev-libs/properties-cpp: add properties-cpp Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- dev-libs/properties-cpp/Manifest | 1 + .../properties-cpp/files/optional_tests.patch | 22 +++++++++++ dev-libs/properties-cpp/metadata.xml | 11 ++++++ .../properties-cpp-0_pre20180409.ebuild | 38 +++++++++++++++++++ .../properties-cpp/properties-cpp-9999.ebuild | 36 ++++++++++++++++++ 5 files changed, 108 insertions(+) create mode 100644 dev-libs/properties-cpp/Manifest create mode 100644 dev-libs/properties-cpp/files/optional_tests.patch create mode 100644 dev-libs/properties-cpp/metadata.xml create mode 100644 dev-libs/properties-cpp/properties-cpp-0_pre20180409.ebuild create mode 100644 dev-libs/properties-cpp/properties-cpp-9999.ebuild diff --git a/dev-libs/properties-cpp/Manifest b/dev-libs/properties-cpp/Manifest new file mode 100644 index 0000000..bb92edd --- /dev/null +++ b/dev-libs/properties-cpp/Manifest @@ -0,0 +1 @@ +DIST properties-cpp-0_pre20180409.tar.gz 41134 BLAKE2B 982b11a3c742547caf141dbaa341c56efc7f76b40e3da0fa8b74e5ebcdb40a3f493dcd1a80274e4f9314cab6e947d655e599d5eb0527d95c90186a0b933fb02b SHA512 5697b9acacb63b801ef531a3741655e67896604c5150a754d9e11f87898ee564a2707fcb8346119b7081ae725e8bbfa671e537e4985a061da7161ff7b12d5985 diff --git a/dev-libs/properties-cpp/files/optional_tests.patch b/dev-libs/properties-cpp/files/optional_tests.patch new file mode 100644 index 0000000..01f1eb4 --- /dev/null +++ b/dev-libs/properties-cpp/files/optional_tests.patch @@ -0,0 +1,22 @@ +diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt +index 180498f..ac5e66c 100644 +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -1,3 +1,11 @@ ++option( ++ PROPERTIES_CPP_BUILD_TESTS ++ "Build tests" ++ ON ++) ++ ++if (PROPERTIES_CPP_BUILD_TESTS) ++ + set (OLD_CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) + # Don't treat warnings as errors in 3rd_party/{gmock,cucumber-cpp} + string (REPLACE " -Werror " " " CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) +@@ -31,3 +39,5 @@ target_link_libraries( + + add_test(properties_test ${CMAKE_CURRENT_BINARY_DIR}/properties_test) + add_test(signals_test ${CMAKE_CURRENT_BINARY_DIR}/signals_test) ++ ++endif (PROPERTIES_CPP_BUILD_TESTS) diff --git a/dev-libs/properties-cpp/metadata.xml b/dev-libs/properties-cpp/metadata.xml new file mode 100644 index 0000000..09eed47 --- /dev/null +++ b/dev-libs/properties-cpp/metadata.xml @@ -0,0 +1,11 @@ + + + + + parona@protonmail.com + Alfred Wingate + + + lib-cpp/properties-cpp + + diff --git a/dev-libs/properties-cpp/properties-cpp-0_pre20180409.ebuild b/dev-libs/properties-cpp/properties-cpp-0_pre20180409.ebuild new file mode 100644 index 0000000..6842de9 --- /dev/null +++ b/dev-libs/properties-cpp/properties-cpp-0_pre20180409.ebuild @@ -0,0 +1,38 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="A very simple convenience library for handling properties and signals in C++11" +HOMEPAGE="https://github.com/lib-cpp/properties-cpp" + +if [[ "${PV}" == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/lib-cpp/properties-cpp" +else + COMMIT="45863e849b39c4921d6553e6d27e267a96ac7d77" # 9.4.2018 + SRC_URI="https://github.com/lib-cpp/properties-cpp/archive/"${COMMIT}".tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${COMMIT}" + KEYWORDS="~amd64" +fi + +LICENSE="LGPL-3" +SLOT="0" +IUSE="doc test" + +DEPEND=" + doc? ( app-doc/doxygen ) + test? ( dev-cpp/gtest ) +" + +PATCHES=( "${FILESDIR}/optional_tests.patch" ) + +src_configure() { + local mycmakeargs=( + -DPROPERTIES_CPP_ENABLE_DOC_GENERATION=$(usex doc) + -DPROPERTIES_CPP_BUILD_TESTS=$(usex test) + ) + cmake_src_configure +} diff --git a/dev-libs/properties-cpp/properties-cpp-9999.ebuild b/dev-libs/properties-cpp/properties-cpp-9999.ebuild new file mode 100644 index 0000000..3de7d23 --- /dev/null +++ b/dev-libs/properties-cpp/properties-cpp-9999.ebuild @@ -0,0 +1,36 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="A very simple convenience library for handling properties and signals in C++11" +HOMEPAGE="https://github.com/lib-cpp/properties-cpp" + +if [[ "${PV}" == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/lib-cpp/properties-cpp" +else + COMMIT="45863e849b39c4921d6553e6d27e267a96ac7d77" # 9.4.2018 + SRC_URI="https://github.com/lib-cpp/properties-cpp/archive/"${COMMIT}".tar.gz -> ${P}.tar.gz" +fi + +LICENSE="LGPL-3" +SLOT="0" +IUSE="doc" + +DEPEND=" + doc? ( app-doc/doxygen ) +" +# test? ( dev-cpp/gtest ) + +#PATCHES=( "${FILESDIR}/optional_tests.patch" ) + +src_configure() { + local mycmakeargs=( + -DPROPERTIES_CPP_ENABLE_DOC_GENERATION=$(usex doc) +# -DPROPERTIES_CPP_BUILD_TESTS=$(usex test) + ) + cmake_src_configure +} From 08c01e77477588693d19949b0d639d36b28e770d Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Wed, 23 Dec 2020 21:39:47 +0200 Subject: [PATCH 06/12] media-libs/pystring: add pystring Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- media-libs/pystring/Manifest | 1 + media-libs/pystring/metadata.xml | 11 +++++++++ media-libs/pystring/pystring-1.1.3.ebuild | 29 +++++++++++++++++++++++ media-libs/pystring/pystring-9999.ebuild | 29 +++++++++++++++++++++++ 4 files changed, 70 insertions(+) create mode 100644 media-libs/pystring/Manifest create mode 100644 media-libs/pystring/metadata.xml create mode 100644 media-libs/pystring/pystring-1.1.3.ebuild create mode 100644 media-libs/pystring/pystring-9999.ebuild diff --git a/media-libs/pystring/Manifest b/media-libs/pystring/Manifest new file mode 100644 index 0000000..eb3773a --- /dev/null +++ b/media-libs/pystring/Manifest @@ -0,0 +1 @@ +DIST pystring-1.1.3.tar.gz 18364 BLAKE2B caab1a3b1dc688ad6ecbb32e5e8139bb883a88b78ce8a021229924d57376e94b17d89277e2fccf4f7ec478c81ee9259c5e56848f4388c44b2eab9cfb841bcfb8 SHA512 a46bb2e96d6eb351a4a8097cde46ac2877d28e88f9e57e0ac36c42e8fc8543517c4be70306a01e2f88a891fc53c612494aeb37f47a200d94b8e1b050ed16eff6 diff --git a/media-libs/pystring/metadata.xml b/media-libs/pystring/metadata.xml new file mode 100644 index 0000000..d644da5 --- /dev/null +++ b/media-libs/pystring/metadata.xml @@ -0,0 +1,11 @@ + + + + + parona@protonmail.com + Alfred Wingate + + + imageworks/pystring + + diff --git a/media-libs/pystring/pystring-1.1.3.ebuild b/media-libs/pystring/pystring-1.1.3.ebuild new file mode 100644 index 0000000..1bcf26b --- /dev/null +++ b/media-libs/pystring/pystring-1.1.3.ebuild @@ -0,0 +1,29 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="C++ functions matching the interface and behavior of python string methods" +HOMEPAGE="https://github.com/imageworks/pystring" + +if [[ "${PV}" == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/imageworks/pystring.git" +else + SRC_URI="https://github.com/imageworks/pystring/archive/v"${PV}".tar.gz -> "${P}".tar.gz" +fi + +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="~amd64" + +src_compile() { + emake LIBDIR="${S}" install + mkdir pystring || die + mv pystring.h pystring || die +} + +src_install() { + dolib.so libpystring.so{,.0{,.0.0}} + doheader -r pystring +} diff --git a/media-libs/pystring/pystring-9999.ebuild b/media-libs/pystring/pystring-9999.ebuild new file mode 100644 index 0000000..1bcf26b --- /dev/null +++ b/media-libs/pystring/pystring-9999.ebuild @@ -0,0 +1,29 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="C++ functions matching the interface and behavior of python string methods" +HOMEPAGE="https://github.com/imageworks/pystring" + +if [[ "${PV}" == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/imageworks/pystring.git" +else + SRC_URI="https://github.com/imageworks/pystring/archive/v"${PV}".tar.gz -> "${P}".tar.gz" +fi + +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="~amd64" + +src_compile() { + emake LIBDIR="${S}" install + mkdir pystring || die + mv pystring.h pystring || die +} + +src_install() { + dolib.so libpystring.so{,.0{,.0.0}} + doheader -r pystring +} From 04e65e615c398b9c1ae42cda1654d76d6c152369 Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Thu, 24 Dec 2020 04:56:38 +0200 Subject: [PATCH 07/12] media-video/olive: update dependencies, improve metadata.xml Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- media-video/olive/metadata.xml | 18 +++++++++++------- media-video/olive/olive-9999.ebuild | 28 +++++++++++++++------------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/media-video/olive/metadata.xml b/media-video/olive/metadata.xml index 7f1f032..375950b 100644 --- a/media-video/olive/metadata.xml +++ b/media-video/olive/metadata.xml @@ -1,11 +1,15 @@ - - parona@protonmail.com - Alfred Wingate - - - Build and install source code documentation - + + parona@protonmail.com + Alfred Wingate + + + olive-editor/olive + + + Build and install source code documentation + Include dependency to OpenTimelineIO + diff --git a/media-video/olive/olive-9999.ebuild b/media-video/olive/olive-9999.ebuild index 5570a0a..be5331f 100644 --- a/media-video/olive/olive-9999.ebuild +++ b/media-video/olive/olive-9999.ebuild @@ -18,40 +18,36 @@ fi LICENSE="GPL-3" SLOT="0" -IUSE="doxygen" - -CMAKE_MIN_VERSION=3.13 -CMAKE_IN_SOURCE_BUILD=YES +IUSE="doxygen otio" COMMON_DEPEND=" - >=dev-qt/qtcore-5.6.0[icu] - >=dev-qt/qtgui-5.6.0[png] + >=dev-qt/qtcore-5.6.0 + >=dev-qt/qtgui-5.6.0 >=dev-qt/qtmultimedia-5.6.0 >=dev-qt/qtopengl-5.6.0 >=dev-qt/qtsvg-5.6.0 >=dev-qt/qtwidgets-5.6.0 - media-libs/opencolorio + >=media-libs/opencolorio-2.0.0 + otio? ( media-video/opentimelineio ) media-libs/openexr - >=media-libs/openimageio-1.6.0[gif,ssl,truetype] - >=media-video/ffmpeg-3.0.0[bzip2] + >=media-libs/openimageio-2.1.12 + >=media-video/ffmpeg-3.0.0 virtual/opengl " - DEPEND=" "${COMMON_DEPEND}" >=dev-qt/qtconcurrent-5.6.0 dev-qt/linguist-tools doxygen? ( app-doc/doxygen[dot] ) " - RDEPEND=" "${COMMON_DEPEND}" - dev-qt/qtnetwork[ssl] - media-libs/harfbuzz[graphite] + dev-qt/qtnetwork " src_configure() { local mycmakeargs=( +# -DUPDATE_TS= -DBUILD_DOXYGEN="$(usex doxygen)" ) cmake_src_configure @@ -64,3 +60,9 @@ src_install() { fi cmake_src_install } + +pkg_postinst() { + elog "Olive crashes at runtime when playing video" + elog "with ~ffmpeg-4.3. The current remedy is to" + elog "use ~ffmpeg-4.2 or ffmpeg-9999 instead." +} From e6f9f992b592f95720fdc71efd2f1e6cd2bb20ba Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Thu, 24 Dec 2020 22:44:10 +0200 Subject: [PATCH 08/12] dev-libs/sdbus-cpp: add sdbus-cpp Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- dev-libs/sdbus-cpp/Manifest | 2 + ...emove_download_from_external_project.patch | 18 ++++++++ dev-libs/sdbus-cpp/metadata.xml | 11 +++++ dev-libs/sdbus-cpp/sdbus-cpp-0.8.3.ebuild | 45 +++++++++++++++++++ 4 files changed, 76 insertions(+) create mode 100644 dev-libs/sdbus-cpp/Manifest create mode 100644 dev-libs/sdbus-cpp/files/remove_download_from_external_project.patch create mode 100644 dev-libs/sdbus-cpp/metadata.xml create mode 100644 dev-libs/sdbus-cpp/sdbus-cpp-0.8.3.ebuild diff --git a/dev-libs/sdbus-cpp/Manifest b/dev-libs/sdbus-cpp/Manifest new file mode 100644 index 0000000..7ee0eec --- /dev/null +++ b/dev-libs/sdbus-cpp/Manifest @@ -0,0 +1,2 @@ +DIST sdbus-cpp-0.8.3.tar.gz 190124 BLAKE2B ad7d3872016471c7b8db0f20609e8debb13d155492655561675add60c9c1e9089553c31f7375136ba696112d17a4bd92a947a600a2c9f2842f7c0ba79f38046d SHA512 bdaccd686aeba9f24284c796fac7d0b6d514365e0b757db91e209e1e15c928d9de8ab1d5f5d21671896b07ea762ab4b7c6a5ce0850b17ad08bacb0f1a668cfb2 +DIST systemd-stable-242.tar.gz 7831827 BLAKE2B cdcb2cb2b2b7b05eb8509faaf9bd5c11fdbab316c4ae61492e1eb5f405c9b2c527acc7105efad13cde1e877febe401a313e3dd43cec4f04aa5a4ea939f20f9a3 SHA512 607d41ce212ea320f51ad3729d86b4b2fb6a3ed78ff493ffe095ac9a7d7b27e56910c1b941c15c2e574b5e8fd8e72ab1d53870112ce604958a717a2f870290ff diff --git a/dev-libs/sdbus-cpp/files/remove_download_from_external_project.patch b/dev-libs/sdbus-cpp/files/remove_download_from_external_project.patch new file mode 100644 index 0000000..1ed5c51 --- /dev/null +++ b/dev-libs/sdbus-cpp/files/remove_download_from_external_project.patch @@ -0,0 +1,18 @@ +diff --git a/cmake/LibsystemdExternalProject.cmake b/cmake/LibsystemdExternalProject.cmake +index dfa56d4..52b6f3c 100644 +--- a/cmake/LibsystemdExternalProject.cmake ++++ b/cmake/LibsystemdExternalProject.cmake +@@ -35,11 +35,8 @@ message(STATUS "Building with embedded libsystemd v${LIBSYSTEMD_VERSION}") + include(ExternalProject) + ExternalProject_Add(LibsystemdBuildProject + PREFIX libsystemd-v${LIBSYSTEMD_VERSION} +- GIT_REPOSITORY https://github.com/systemd/systemd-stable.git +- GIT_TAG v${LIBSYSTEMD_VERSION}-stable +- GIT_SHALLOW 1 +- UPDATE_COMMAND "" +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E remove /* ++ SOURCE_DIR systemd ++ CONFIGURE_COMMAND ${CMAKE_COMMAND} -E remove /* + COMMAND ${MESON} --prefix= --buildtype=${LIBSYSTEMD_BUILD_TYPE} -Dstatic-libsystemd=pic -Dselinux=false + BUILD_COMMAND ${BUILD_VERSION_H} + COMMAND ${NINJA} -C libsystemd.a diff --git a/dev-libs/sdbus-cpp/metadata.xml b/dev-libs/sdbus-cpp/metadata.xml new file mode 100644 index 0000000..e762323 --- /dev/null +++ b/dev-libs/sdbus-cpp/metadata.xml @@ -0,0 +1,11 @@ + + + + + parona@protonmail.com + Alfred Wingate + + + Kistler-Group/sdbus-cpp + + diff --git a/dev-libs/sdbus-cpp/sdbus-cpp-0.8.3.ebuild b/dev-libs/sdbus-cpp/sdbus-cpp-0.8.3.ebuild new file mode 100644 index 0000000..56e0110 --- /dev/null +++ b/dev-libs/sdbus-cpp/sdbus-cpp-0.8.3.ebuild @@ -0,0 +1,45 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="High-level C++ D-Bus library for Linux" +HOMEPAGE="https://github.com/Kistler-Group/sdbus-cpp/" + +SYSTEMDVER="242" +SRC_URI=" + https://github.com/Kistler-Group/sdbus-cpp/archive/v"${PV}".tar.gz -> sdbus-cpp-"${PV}".tar.gz + !systemd? ( https://github.com/systemd/systemd-stable/archive/v"${SYSTEMDVER}".tar.gz -> systemd-stable-"${SYSTEMDVER}".tar.gz ) +" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="systemd" + +RDEPEND=" + systemd? ( sys-apps/systemd ) +" +DEPEND=" + ${RDEPEND} + virtual/pkgconfig +" + +CMAKE_MAKEFILE_GENERATOR=emake # ninja cant handle external projects for some reason + +PATCHES=( "${FILESDIR}/remove_download_from_external_project.patch" ) + +src_prepare() { + cmake_src_prepare + use systemd || mv "${WORKDIR}"/systemd-stable-"${SYSTEMDVER}" "${S}"_build/systemd || die +} + +src_configure() { + local mycmakeargs=( + -DBUILD_CODE_GEN=ON # possibly could be use controlled instead + -DBUILD_LIBSYSTEMD=$(usex !systemd) + ) + cmake_src_configure +} From 104326d8c47d41d6aff97728b9932e60bcc6b001 Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Thu, 24 Dec 2020 22:45:54 +0200 Subject: [PATCH 09/12] dev-python/pyaaf2: add pyaaf2 Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- dev-python/pyaaf2/Manifest | 1 + dev-python/pyaaf2/metadata.xml | 11 +++++++++++ dev-python/pyaaf2/pyaaf2-1.4.0.ebuild | 16 ++++++++++++++++ 3 files changed, 28 insertions(+) create mode 100644 dev-python/pyaaf2/Manifest create mode 100644 dev-python/pyaaf2/metadata.xml create mode 100644 dev-python/pyaaf2/pyaaf2-1.4.0.ebuild diff --git a/dev-python/pyaaf2/Manifest b/dev-python/pyaaf2/Manifest new file mode 100644 index 0000000..ac83218 --- /dev/null +++ b/dev-python/pyaaf2/Manifest @@ -0,0 +1 @@ +DIST pyaaf2-1.4.0.tar.gz 1106445 BLAKE2B 05844b001d942b749205d1b1834725d92d44689d753c00ed44dacca625646224389f7f27ec221dc19fc7498ac4408b38c5c8b086439ae990a0b98e9cf409d521 SHA512 ee7b91cff50cced1b64ac8afa73a9dcc6a4bed4562fa2ab574a3316ad25241077fa761536afda13d71e836c191fe63cd3759156688dab99397b2582c6f5ac963 diff --git a/dev-python/pyaaf2/metadata.xml b/dev-python/pyaaf2/metadata.xml new file mode 100644 index 0000000..50d4c3f --- /dev/null +++ b/dev-python/pyaaf2/metadata.xml @@ -0,0 +1,11 @@ + + + + + parona@protonmail.com + Alfred Wingate + + + markreidvfx/pyaaf2 + + diff --git a/dev-python/pyaaf2/pyaaf2-1.4.0.ebuild b/dev-python/pyaaf2/pyaaf2-1.4.0.ebuild new file mode 100644 index 0000000..9630315 --- /dev/null +++ b/dev-python/pyaaf2/pyaaf2-1.4.0.ebuild @@ -0,0 +1,16 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=(python3_{6..9}) + +inherit distutils-r1 + +DESCRIPTION="Read and write Advanced Authoring Format (AAF) files" +HOMEPAGE="http://pyaaf.readthedocs.io/" +SRC_URI="https://github.com/markreidvfx/pyaaf2/archive/v"${PV}".tar.gz -> "${P}".tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" From 7cdb980ed83dd83ebc0ff31a13c5e967f67278fb Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Fri, 25 Dec 2020 03:24:55 +0200 Subject: [PATCH 10/12] media-libs/opencolorio: add opencolorio Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- media-libs/opencolorio/Manifest | 1 + ....0_libraries_to_lib64_instead_of_lib.patch | 14 +++ media-libs/opencolorio/metadata.xml | 12 +++ .../opencolorio-2.0.0_pre20201211.ebuild | 87 +++++++++++++++++++ .../opencolorio/opencolorio-9999.ebuild | 87 +++++++++++++++++++ 5 files changed, 201 insertions(+) create mode 100644 media-libs/opencolorio/Manifest create mode 100644 media-libs/opencolorio/files/opencolorio-2.0.0_libraries_to_lib64_instead_of_lib.patch create mode 100644 media-libs/opencolorio/metadata.xml create mode 100644 media-libs/opencolorio/opencolorio-2.0.0_pre20201211.ebuild create mode 100644 media-libs/opencolorio/opencolorio-9999.ebuild diff --git a/media-libs/opencolorio/Manifest b/media-libs/opencolorio/Manifest new file mode 100644 index 0000000..3909e90 --- /dev/null +++ b/media-libs/opencolorio/Manifest @@ -0,0 +1 @@ +DIST opencolorio-2.0.0_pre20201211.tar.gz 9810813 BLAKE2B fe3d5be0f00eeffef0123d0969867f945a89e7887b8adeef6d1f859d57ddf9cee04b19cd799525944653b1440b0a519a1ed450f4e81e978d675c5b530b1efa5b SHA512 a3ecb91736ea8826afb3ac8f734e6eda63165895af33975ea92c0c5c77bae0be2db57afd0f8f423297d4450ce9cda51e5ab9cdd8737836429ea868cb362107b6 diff --git a/media-libs/opencolorio/files/opencolorio-2.0.0_libraries_to_lib64_instead_of_lib.patch b/media-libs/opencolorio/files/opencolorio-2.0.0_libraries_to_lib64_instead_of_lib.patch new file mode 100644 index 0000000..3a527a0 --- /dev/null +++ b/media-libs/opencolorio/files/opencolorio-2.0.0_libraries_to_lib64_instead_of_lib.patch @@ -0,0 +1,14 @@ +diff --git a/src/OpenColorIO/CMakeLists.txt b/src/OpenColorIO/CMakeLists.txt +index 107e494e..e014ac31 100755 +--- a/src/OpenColorIO/CMakeLists.txt ++++ b/src/OpenColorIO/CMakeLists.txt +@@ -287,7 +287,7 @@ if(MSVC AND BUILD_SHARED_LIBS) + endif() + + install(TARGETS OpenColorIO +- LIBRARY DESTINATION lib ++ LIBRARY DESTINATION lib64 + RUNTIME DESTINATION bin +- ARCHIVE DESTINATION lib ++ ARCHIVE DESTINATION lib64 + ) diff --git a/media-libs/opencolorio/metadata.xml b/media-libs/opencolorio/metadata.xml new file mode 100644 index 0000000..3669d74 --- /dev/null +++ b/media-libs/opencolorio/metadata.xml @@ -0,0 +1,12 @@ + + + + + parona@protonmail.com + Alfred Wingate + + OpenColorIO (OCIO) is a complete color management solution geared towards motion picture production with an emphasis on visual effects and computer animation. + + AcademySoftwareFoundation/OpenColorIO + + diff --git a/media-libs/opencolorio/opencolorio-2.0.0_pre20201211.ebuild b/media-libs/opencolorio/opencolorio-2.0.0_pre20201211.ebuild new file mode 100644 index 0000000..2bd9fea --- /dev/null +++ b/media-libs/opencolorio/opencolorio-2.0.0_pre20201211.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="A color management framework for visual effects and animation" +HOMEPAGE="https://opencolorio.org/" + +if [[ "${PV}" == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/AcademySoftwareFoundation/OpenColorIO.git" +else + COMMIT="55cbcf18b5d1bcb6e79f70b956f3edd2f7c0cf75" # 11.12.2020 + SRC_URI=" + https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/"${COMMIT}".tar.gz -> "${P}".tar.gz + " + KEYWORDS="~amd64" + S="${WORKDIR}/OpenColorIO-"${COMMIT}"" +fi + +# TODO +# doc, Python and Java bindings + +LICENSE="BSD" +SLOT="0" +IUSE="cpu_flags_x86_sse2 opengl test" +#REQUIRED_USE=" +# doc? ( python ) +# python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + >=dev-cpp/yaml-cpp-0.5 + dev-libs/tinyxml + dev-python/pybind11 + opengl? ( + media-libs/lcms:2 + media-libs/openimageio + media-libs/glew:= + media-libs/freeglut + virtual/opengl + ) + media-libs/pystring +" + +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig +" + +# No doc for now, as sphinx-tabs isnt in the main repo but in guru and due sphinx-press-theme not being done yet. +# + python bindings not working properly so they are omited for now +# doc? ( +# app-doc/doxygen +# $(python_gen_cond_dep ' +# dev-python/six[${PYTHON_USEDEP}] +# dev-python/testresources[${PYTHON_USEDEP}] +# dev-python/recommonmark[${PYTHON_USEDEP}] +# dev-python/sphinx[${PYTHON_USEDEP}] +# dev-python/sphinx-press-theme[${PYTHON_USEDEP}] +# dev-python/sphinx-tabs[${PYTHON_USEDEP}] +# dev-python/breathe[${PYTHON_USEDEP}] +# ') +# ) +#" + +CMAKE_BUILD_TYPE="Release" + +PATCHES=( + "${FILESDIR}/opencolorio-2.0.0_libraries_to_lib64_instead_of_lib.patch" +) + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DOCIO_BUILD_APPS=$(usex opengl) +# -DOCIO_BUILD_DOCS=$(usex doc) +# -DOCIO_BUILD_PYTHON=$(usex python) + -DOCIO_BUILD_TESTS=$(usex test) + -DOCIO_BUILD_GPU_TESTS=$(usex test) + -DOCIO_USE_SSE=$(usex cpu_flags_x86_sse2) + -DOCIO_INSTALL_EXT_PACKAGES=NONE + + ) + cmake_src_configure +} diff --git a/media-libs/opencolorio/opencolorio-9999.ebuild b/media-libs/opencolorio/opencolorio-9999.ebuild new file mode 100644 index 0000000..2bd9fea --- /dev/null +++ b/media-libs/opencolorio/opencolorio-9999.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="A color management framework for visual effects and animation" +HOMEPAGE="https://opencolorio.org/" + +if [[ "${PV}" == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/AcademySoftwareFoundation/OpenColorIO.git" +else + COMMIT="55cbcf18b5d1bcb6e79f70b956f3edd2f7c0cf75" # 11.12.2020 + SRC_URI=" + https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/"${COMMIT}".tar.gz -> "${P}".tar.gz + " + KEYWORDS="~amd64" + S="${WORKDIR}/OpenColorIO-"${COMMIT}"" +fi + +# TODO +# doc, Python and Java bindings + +LICENSE="BSD" +SLOT="0" +IUSE="cpu_flags_x86_sse2 opengl test" +#REQUIRED_USE=" +# doc? ( python ) +# python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + >=dev-cpp/yaml-cpp-0.5 + dev-libs/tinyxml + dev-python/pybind11 + opengl? ( + media-libs/lcms:2 + media-libs/openimageio + media-libs/glew:= + media-libs/freeglut + virtual/opengl + ) + media-libs/pystring +" + +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig +" + +# No doc for now, as sphinx-tabs isnt in the main repo but in guru and due sphinx-press-theme not being done yet. +# + python bindings not working properly so they are omited for now +# doc? ( +# app-doc/doxygen +# $(python_gen_cond_dep ' +# dev-python/six[${PYTHON_USEDEP}] +# dev-python/testresources[${PYTHON_USEDEP}] +# dev-python/recommonmark[${PYTHON_USEDEP}] +# dev-python/sphinx[${PYTHON_USEDEP}] +# dev-python/sphinx-press-theme[${PYTHON_USEDEP}] +# dev-python/sphinx-tabs[${PYTHON_USEDEP}] +# dev-python/breathe[${PYTHON_USEDEP}] +# ') +# ) +#" + +CMAKE_BUILD_TYPE="Release" + +PATCHES=( + "${FILESDIR}/opencolorio-2.0.0_libraries_to_lib64_instead_of_lib.patch" +) + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DOCIO_BUILD_APPS=$(usex opengl) +# -DOCIO_BUILD_DOCS=$(usex doc) +# -DOCIO_BUILD_PYTHON=$(usex python) + -DOCIO_BUILD_TESTS=$(usex test) + -DOCIO_BUILD_GPU_TESTS=$(usex test) + -DOCIO_USE_SSE=$(usex cpu_flags_x86_sse2) + -DOCIO_INSTALL_EXT_PACKAGES=NONE + + ) + cmake_src_configure +} From eb813822429a2b06fa13ebc6faf2b4fca2b4091d Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Fri, 25 Dec 2020 03:27:33 +0200 Subject: [PATCH 11/12] media-video/olive: remove otio for now Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- media-video/olive/metadata.xml | 1 - media-video/olive/olive-9999.ebuild | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/media-video/olive/metadata.xml b/media-video/olive/metadata.xml index 375950b..daa4ab4 100644 --- a/media-video/olive/metadata.xml +++ b/media-video/olive/metadata.xml @@ -10,6 +10,5 @@ Build and install source code documentation - Include dependency to OpenTimelineIO diff --git a/media-video/olive/olive-9999.ebuild b/media-video/olive/olive-9999.ebuild index be5331f..9a28bb4 100644 --- a/media-video/olive/olive-9999.ebuild +++ b/media-video/olive/olive-9999.ebuild @@ -18,7 +18,7 @@ fi LICENSE="GPL-3" SLOT="0" -IUSE="doxygen otio" +IUSE="doxygen" COMMON_DEPEND=" >=dev-qt/qtcore-5.6.0 @@ -28,12 +28,12 @@ COMMON_DEPEND=" >=dev-qt/qtsvg-5.6.0 >=dev-qt/qtwidgets-5.6.0 >=media-libs/opencolorio-2.0.0 - otio? ( media-video/opentimelineio ) media-libs/openexr >=media-libs/openimageio-2.1.12 >=media-video/ffmpeg-3.0.0 virtual/opengl " +#media-video/opentimelineio : The CMakeFile tries to find it, but doesnt do anything yet. DEPEND=" "${COMMON_DEPEND}" >=dev-qt/qtconcurrent-5.6.0 From c98b907e36ad23b99ed869e8a601cfa296ec8a21 Mon Sep 17 00:00:00 2001 From: Alfred Wingate Date: Fri, 25 Dec 2020 21:00:18 +0200 Subject: [PATCH 12/12] app-emulation/anbox: add anbox Package-Manager: Portage-3.0.9, Repoman-3.0.2 --- app-emulation/anbox/Manifest | 2 + .../anbox/anbox-0_pre20201129.ebuild | 112 ++++++++++++++++++ app-emulation/anbox/anbox-9999.ebuild | 112 ++++++++++++++++++ app-emulation/anbox/files/anbox-bridge.netdev | 3 + .../anbox/files/anbox-bridge.network | 7 ++ .../anbox/files/anbox-container-manager.initd | 38 ++++++ .../files/anbox-container-manager.service | 8 ++ app-emulation/anbox/files/anbox-launch.sh | 23 ++++ .../anbox/files/anbox-session-manager.service | 8 ++ app-emulation/anbox/files/anbox.confd | 8 ++ .../elogind_instead_of_systemd_headers.patch | 13 ++ .../anbox/files/no_bundled_sdbus.patch | 58 +++++++++ app-emulation/anbox/metadata.xml | 11 ++ 13 files changed, 403 insertions(+) create mode 100644 app-emulation/anbox/Manifest create mode 100644 app-emulation/anbox/anbox-0_pre20201129.ebuild create mode 100644 app-emulation/anbox/anbox-9999.ebuild create mode 100644 app-emulation/anbox/files/anbox-bridge.netdev create mode 100644 app-emulation/anbox/files/anbox-bridge.network create mode 100644 app-emulation/anbox/files/anbox-container-manager.initd create mode 100644 app-emulation/anbox/files/anbox-container-manager.service create mode 100644 app-emulation/anbox/files/anbox-launch.sh create mode 100644 app-emulation/anbox/files/anbox-session-manager.service create mode 100644 app-emulation/anbox/files/anbox.confd create mode 100644 app-emulation/anbox/files/elogind_instead_of_systemd_headers.patch create mode 100644 app-emulation/anbox/files/no_bundled_sdbus.patch create mode 100644 app-emulation/anbox/metadata.xml diff --git a/app-emulation/anbox/Manifest b/app-emulation/anbox/Manifest new file mode 100644 index 0000000..81369a9 --- /dev/null +++ b/app-emulation/anbox/Manifest @@ -0,0 +1,2 @@ +DIST anbox-0_pre20201129.tar.gz 1024707 BLAKE2B 38153bdc3c011b726bbffefeb9ca439398988945a6f19265d2c6ebd424308a37fa321ab0685660cc67bedf7edbc8793c7cb0c179a5b31dd7aa640cc5286442eb SHA512 c4878745b62719c6cbecde047386858bd2ec7a5dbd37462967cab60fd118f31b89c157b4a00412b51bf130c7b46a83a3c3ab5162ee13baa0e789f773649e8745 +DIST cpu_features-b9593c8b395318bb2bc42683a94f962564cc4664.tar.gz 55211 BLAKE2B b49714863cbebfde09e6ab99f31d9aaace367d84df9ecb12989fffc1326c9c60cfa14d917e490332c2a0b2a3fe267b6327b719652afba9bfa1654fc2564408b8 SHA512 8c12b50741e2979a32b69c788934bee0d00811b7662006c8b493e98d5efeada67ed59460be40c234b2d3bafd85671cb1a1d7c1a6ee535a7fc1cc6ac56a754576 diff --git a/app-emulation/anbox/anbox-0_pre20201129.ebuild b/app-emulation/anbox/anbox-0_pre20201129.ebuild new file mode 100644 index 0000000..84caef0 --- /dev/null +++ b/app-emulation/anbox/anbox-0_pre20201129.ebuild @@ -0,0 +1,112 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit linux-info systemd cmake + +DESCRIPTION="Container-based approach to boot a full Android system" +HOMEPAGE="https://anbox.io/" + +if [[ "${PV}" == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/anbox/anbox.git" + EGIT_SUBMODULES=( 'external/cpu_features' ) + EGIT_COMMIT_DATE="${PV}" +else + COMMIT="6c10125a7f13908d2cbe56d2d9ab09872755f265" # 29.11.2020 + EXTCOMMIT="b9593c8b395318bb2bc42683a94f962564cc4664" + SRC_URI=" + https://github.com/anbox/anbox/archive/"${COMMIT}".tar.gz -> "${P}".tar.gz + https://github.com/google/cpu_features/archive/"${EXTCOMMIT}".tar.gz -> cpu_features-"${EXTCOMMIT}".tar.gz + " + S=""${WORKDIR}"/"${PN}"-"${COMMIT}"" + KEYWORDS="~amd64" +fi + +LICENSE="GPL-3" +SLOT="0" +IUSE="X wayland systemd" + +DEPEND=" + >=app-emulation/lxc-3.0.0 + dev-libs/boost[threads] + dev-libs/expat + dev-libs/protobuf + media-libs/libsdl2 + media-libs/glm + sys-apps/dbus + sys-libs/libcap + || ( sys-apps/systemd sys-auth/elogind ) +" +RDEPEND="${DEPEND}" +CONFIG_CHECK=" + ~ANDROID_BINDERFS + ~ANDROID_BINDER_IPC + ~ASHMEM + ~SQUASHFS + ~SQUASHFS_XZ + ~SQUASHFS_XATTR + ~TMPFS_XATTR +" + +PATCHES=( ""${FILESDIR}"/no_bundled_sdbus.patch" ) + +pkg_pretend() { + if use !systemd; then + # Needed for anbox-bridge.sh + CONFIG_CHECK=" + ~NETFILTER_XT_MATCH_COMMENT + ~NETFILTER_XT_TARGET_CHECKSUM + " + check_extra_config + fi + # Check if ANDROID_BINDER_DEVICES has binder string specicied in it + linux_config_exists && grep -qE '(CONFIG_ANDROID_BINDER_DEVICES=*[^h][^w]binder)' "${KERNEL_DIR}"/.config || eerror " CONFIG_ANDROID_BINDER_DEVICES does not contain string 'binder'" +} + +src_prepare() { + [[ "${PV}" == "9999" ]] || mv "${WORKDIR}"/cpu_features-"${EXTCOMMIT}"/* "${S}"/external/cpu_features || die + use !systemd && eapply "${FILESDIR}"/elogind_instead_of_systemd_headers.patch + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DENABLE_X11=$(usex X) + -DENABLE_WAYLAND=$(usex wayland) + ) + [[ "${PV}" == "9999" ]] || mycmakeargs+=(-DANBOX_VERSION="${PV}") + cmake_src_configure +} + +src_install() { + cmake_src_install + newbin "${FILESDIR}"/anbox-launch.sh anbox-launch + if use systemd; then + systemd_dounit "${FILESDIR}"/anbox-{{container,session}-manager.service,bridge.net{dev,work}} + else + exeinto /usr/share/anbox + doexe "scripts/anbox-bridge.sh" + newinitd "${FILESDIR}"/anbox-container-manager.initd anbox-container-manager + newconfd "${FILESDIR}"/anbox.confd anbox + fi +} + +pkg_postinst() { + einfo "Anbox requires a specially made android image installed to /usr/share/anbox/android.img. " + einfo "You can either download it prebuilt from upstream:" + einfo " https://build.anbox.io/android-images/" + einfo "or to build it manually according to instructions:" + einfo " https://github.com/anbox/anbox/blob/master/docs/build-android.md" + einfo "" + einfo "How to get it running:" + einfo "First start the anbox-container-manager daemon" + if use systemd; then + einfo "# systemctl start anbox-container-manager" + else + einfo "# rc-service anbox-container-manager start" + fi + einfo "Then you can access the image" + einfo "$ anbox-launch" +} diff --git a/app-emulation/anbox/anbox-9999.ebuild b/app-emulation/anbox/anbox-9999.ebuild new file mode 100644 index 0000000..84caef0 --- /dev/null +++ b/app-emulation/anbox/anbox-9999.ebuild @@ -0,0 +1,112 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit linux-info systemd cmake + +DESCRIPTION="Container-based approach to boot a full Android system" +HOMEPAGE="https://anbox.io/" + +if [[ "${PV}" == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/anbox/anbox.git" + EGIT_SUBMODULES=( 'external/cpu_features' ) + EGIT_COMMIT_DATE="${PV}" +else + COMMIT="6c10125a7f13908d2cbe56d2d9ab09872755f265" # 29.11.2020 + EXTCOMMIT="b9593c8b395318bb2bc42683a94f962564cc4664" + SRC_URI=" + https://github.com/anbox/anbox/archive/"${COMMIT}".tar.gz -> "${P}".tar.gz + https://github.com/google/cpu_features/archive/"${EXTCOMMIT}".tar.gz -> cpu_features-"${EXTCOMMIT}".tar.gz + " + S=""${WORKDIR}"/"${PN}"-"${COMMIT}"" + KEYWORDS="~amd64" +fi + +LICENSE="GPL-3" +SLOT="0" +IUSE="X wayland systemd" + +DEPEND=" + >=app-emulation/lxc-3.0.0 + dev-libs/boost[threads] + dev-libs/expat + dev-libs/protobuf + media-libs/libsdl2 + media-libs/glm + sys-apps/dbus + sys-libs/libcap + || ( sys-apps/systemd sys-auth/elogind ) +" +RDEPEND="${DEPEND}" +CONFIG_CHECK=" + ~ANDROID_BINDERFS + ~ANDROID_BINDER_IPC + ~ASHMEM + ~SQUASHFS + ~SQUASHFS_XZ + ~SQUASHFS_XATTR + ~TMPFS_XATTR +" + +PATCHES=( ""${FILESDIR}"/no_bundled_sdbus.patch" ) + +pkg_pretend() { + if use !systemd; then + # Needed for anbox-bridge.sh + CONFIG_CHECK=" + ~NETFILTER_XT_MATCH_COMMENT + ~NETFILTER_XT_TARGET_CHECKSUM + " + check_extra_config + fi + # Check if ANDROID_BINDER_DEVICES has binder string specicied in it + linux_config_exists && grep -qE '(CONFIG_ANDROID_BINDER_DEVICES=*[^h][^w]binder)' "${KERNEL_DIR}"/.config || eerror " CONFIG_ANDROID_BINDER_DEVICES does not contain string 'binder'" +} + +src_prepare() { + [[ "${PV}" == "9999" ]] || mv "${WORKDIR}"/cpu_features-"${EXTCOMMIT}"/* "${S}"/external/cpu_features || die + use !systemd && eapply "${FILESDIR}"/elogind_instead_of_systemd_headers.patch + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DENABLE_X11=$(usex X) + -DENABLE_WAYLAND=$(usex wayland) + ) + [[ "${PV}" == "9999" ]] || mycmakeargs+=(-DANBOX_VERSION="${PV}") + cmake_src_configure +} + +src_install() { + cmake_src_install + newbin "${FILESDIR}"/anbox-launch.sh anbox-launch + if use systemd; then + systemd_dounit "${FILESDIR}"/anbox-{{container,session}-manager.service,bridge.net{dev,work}} + else + exeinto /usr/share/anbox + doexe "scripts/anbox-bridge.sh" + newinitd "${FILESDIR}"/anbox-container-manager.initd anbox-container-manager + newconfd "${FILESDIR}"/anbox.confd anbox + fi +} + +pkg_postinst() { + einfo "Anbox requires a specially made android image installed to /usr/share/anbox/android.img. " + einfo "You can either download it prebuilt from upstream:" + einfo " https://build.anbox.io/android-images/" + einfo "or to build it manually according to instructions:" + einfo " https://github.com/anbox/anbox/blob/master/docs/build-android.md" + einfo "" + einfo "How to get it running:" + einfo "First start the anbox-container-manager daemon" + if use systemd; then + einfo "# systemctl start anbox-container-manager" + else + einfo "# rc-service anbox-container-manager start" + fi + einfo "Then you can access the image" + einfo "$ anbox-launch" +} diff --git a/app-emulation/anbox/files/anbox-bridge.netdev b/app-emulation/anbox/files/anbox-bridge.netdev new file mode 100644 index 0000000..9826cb1 --- /dev/null +++ b/app-emulation/anbox/files/anbox-bridge.netdev @@ -0,0 +1,3 @@ +[NetDev] +Name=anbox0 +Kind=bridge diff --git a/app-emulation/anbox/files/anbox-bridge.network b/app-emulation/anbox/files/anbox-bridge.network new file mode 100644 index 0000000..73c6af0 --- /dev/null +++ b/app-emulation/anbox/files/anbox-bridge.network @@ -0,0 +1,7 @@ +[Match] +Name=anbox0 +Driver=bridge + +[Network] +Address=192.168.250.1/24 +IPMasquerade=yes diff --git a/app-emulation/anbox/files/anbox-container-manager.initd b/app-emulation/anbox/files/anbox-container-manager.initd new file mode 100644 index 0000000..d692e05 --- /dev/null +++ b/app-emulation/anbox/files/anbox-container-manager.initd @@ -0,0 +1,38 @@ +#!/sbin/openrc-run + +supervisor=supervise-daemon + +name="Anbox container manager" +command=/usr/bin/anbox +command_args="container-manager --daemon --privileged --data-path=/var/lib/anbox --android-image=/usr/share/anbox/android.img" + +depend() { + need localmount sysfs cgroups fuse + use net + after firewall +} + +start_pre() { + # that's all you need to avoid the lxc dependency + checkpath --directory /usr/lib/lxc + checkpath --directory /usr/lib/lxc/rootfs + + modprobe loop + modprobe tun + + if ip link show anbox0 >/dev/null 2>&1; then + ewarn "anbox0 network interface already exists" + else + ebegin "Creating anbox0 network interface" + /usr/share/anbox/anbox-bridge.sh start + eend $? + fi +} + +stop_post() { + if ip link show anbox0 >/dev/null 2>&1; then + ebegin "Removing anbox0 network interface" + /usr/share/anbox/anbox-bridge.sh stop + eend $? + fi +} diff --git a/app-emulation/anbox/files/anbox-container-manager.service b/app-emulation/anbox/files/anbox-container-manager.service new file mode 100644 index 0000000..8be6991 --- /dev/null +++ b/app-emulation/anbox/files/anbox-container-manager.service @@ -0,0 +1,8 @@ +[Unit] +Description=Anbox Container Manager + +[Service] +ExecStart=/usr/bin/anbox container-manager --daemon --privileged --data-path=/var/lib/anbox + +[Install] +WantedBy=multi-user.target diff --git a/app-emulation/anbox/files/anbox-launch.sh b/app-emulation/anbox/files/anbox-launch.sh new file mode 100644 index 0000000..ce5286a --- /dev/null +++ b/app-emulation/anbox/files/anbox-launch.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +# https://gitlab.com/postmarketOS/pmaports/-/issues/479 +# EGL_PLATFORM=wayland is broken on desktop as +# Anbox require PBuffer support but Wayland EGL +# doesn't provide it. Unsetting this value +# unbreaks Anbox on e.g. Plasma Mobile. +if [ "$EGL_PLATFORM" = wayland ]; then + export EGL_PLATFORM + unset EGL_PLATFORM +fi + +# This breaks Anbox display if EGL_PLATFORM is not +# set to wayland. Since EGL_PLATFORM is never set +# to wayland, let's unset SDL_VIDEODRIVER if it is. +if [ "$SDL_VIDEODRIVER" = wayland ]; then + export SDL_VIDEODRIVER + unset SDL_VIDEODRIVER +fi + +# We let Anbox autostart the session manager as this +# provides a splash-screen +anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity diff --git a/app-emulation/anbox/files/anbox-session-manager.service b/app-emulation/anbox/files/anbox-session-manager.service new file mode 100644 index 0000000..e31a357 --- /dev/null +++ b/app-emulation/anbox/files/anbox-session-manager.service @@ -0,0 +1,8 @@ +[Unit] +Description=Anbox Session Manager + +[Service] +ExecStart=/usr/bin/anbox session-manager + +[Install] +WantedBy=default.target diff --git a/app-emulation/anbox/files/anbox.confd b/app-emulation/anbox/files/anbox.confd new file mode 100644 index 0000000..a519399 --- /dev/null +++ b/app-emulation/anbox/files/anbox.confd @@ -0,0 +1,8 @@ +# Sample conf.d file for alpine linux + +# +# Specify daemon options here. +# + +sample_opts="" +sample_user="" diff --git a/app-emulation/anbox/files/elogind_instead_of_systemd_headers.patch b/app-emulation/anbox/files/elogind_instead_of_systemd_headers.patch new file mode 100644 index 0000000..68b1e10 --- /dev/null +++ b/app-emulation/anbox/files/elogind_instead_of_systemd_headers.patch @@ -0,0 +1,13 @@ +diff --git a/src/anbox/dbus/bus.h b/src/anbox/dbus/bus.h +index 40b3d94..e798b4b 100644 +--- a/src/anbox/dbus/bus.h ++++ b/src/anbox/dbus/bus.h +@@ -25,7 +25,7 @@ + #include + #include + +-#include ++#include + + namespace anbox::dbus { + class Bus : public DoNotCopyOrMove { diff --git a/app-emulation/anbox/files/no_bundled_sdbus.patch b/app-emulation/anbox/files/no_bundled_sdbus.patch new file mode 100644 index 0000000..01d6059 --- /dev/null +++ b/app-emulation/anbox/files/no_bundled_sdbus.patch @@ -0,0 +1,58 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 713df49..1e8b462 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -59,6 +59,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) + find_package(Boost COMPONENTS filesystem log serialization system thread program_options) + find_package(PkgConfig) + find_package(Threads) ++find_package(SDBus-C++ REQUIRED) + find_package(EGL REQUIRED) + find_package(GLESv2 REQUIRED) + find_package(Protobuf REQUIRED) +@@ -68,7 +69,6 @@ pkg_check_modules(SDL2_IMAGE SDL2_image REQUIRED) + pkg_check_modules(DBUS dbus-1 REQUIRED) + pkg_check_modules(LXC lxc REQUIRED) + pkg_check_modules(PROPERTIES_CPP properties-cpp REQUIRED) +-pkg_check_modules(LIBSYSTEMD libsystemd REQUIRED) + pkg_check_modules(LIBCAP libcap REQUIRED) + + message(STATUS "LXC version: ${LXC_VERSION}") +diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt +index f677aa0..265a2eb 100644 +--- a/external/CMakeLists.txt ++++ b/external/CMakeLists.txt +@@ -6,12 +6,3 @@ add_subdirectory(backward-cpp) + set(BUILD_TESTING OFF) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error") + add_subdirectory(cpu_features) +-include(ExternalProject) +-ExternalProject_Add(sdbus-cpp +- PREFIX sdbus-cpp +- SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/sdbus-cpp" +- INSTALL_COMMAND "" +- CMAKE_CACHE_ARGS +- -DBUILD_CODE_GEN:BOOL=ON +- -DBUILD_SHARED_LIBS:BOOL=OFF +-) +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 796b881..a19da1b 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -26,7 +26,6 @@ include_directories( + ${CMAKE_SOURCE_DIR}/external/android-emugl/host/libs/renderControl_dec + ${CMAKE_BINARY_DIR}/external/android-emugl/host/libs/renderControl_dec + ${CMAKE_SOURCE_DIR}/external/cpu_features/include +- ${CMAKE_SOURCE_DIR}/external/sdbus-cpp/include + ) + + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DBINDERFS_PATH=\"\\\"${BINDERFS_PATH}\\\"\"") +@@ -59,7 +58,7 @@ add_library(anbox-protobuf + target_link_libraries(anbox-protobuf + ${PROTOBUF_LITE_LIBRARIES}) + +-set(XML2CPP ${CMAKE_BINARY_DIR}/external/sdbus-cpp/src/sdbus-cpp-build/tools/sdbus-c++-xml2cpp) ++set(XML2CPP sdbus-c++-xml2cpp) + + macro(DBusServer BaseName) + add_custom_command( diff --git a/app-emulation/anbox/metadata.xml b/app-emulation/anbox/metadata.xml new file mode 100644 index 0000000..ddca324 --- /dev/null +++ b/app-emulation/anbox/metadata.xml @@ -0,0 +1,11 @@ + + + + + parona@protonmail.com + Alfred Wingate + + + anbox/anbox + +