Merge updates from master

This commit is contained in:
Repository mirror & CI
2024-01-03 15:33:49 +00:00
22 changed files with 649 additions and 3 deletions

View File

@@ -0,0 +1,12 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit acct-user
ACCT_USER_ID=-1
ACCT_USER_GROUPS=( turnserver )
ACCT_USER_HOME="/opt/eturnal/home"
acct-user_add_deps

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>cyber+gentoo@sysrq.in</email>
<name>Anna</name>
</maintainer>
</pkgmetadata>

View File

@@ -1 +1 @@
DIST gentoo_update-0.2.2.gh.tar.gz 24757 BLAKE2B f6c8b0732f08af8ebe32ffd44a0331b71f8150107f6a66918f09fdd4987a4ee4e687ab807b100df879395cee1de4e26c9c99f6a7622500118d128887379cb2d7 SHA512 e3cc34e668de955389ca0b0b39eee3db31715e0f65c445fac7ee355b82c0ed9ab224cb9cff60cc170aa1632426566f6202bcea7d4bf9078c3faf3229f21007b8
DIST gentoo_update-0.2.3.gh.tar.gz 25581 BLAKE2B a647627c6436f8c497b6970dea284399c98a7590804a8a1bfb965e692526554ef972766b6d6464307985b1d048d1a5e9d86175697b856f65ee524476f292b1b6 SHA512 373d58d27fd68912da6225a0a060a6cab472f232cb36461b711f1ae180fa58d3fadf5d10f8398319d6dedd6ef6949bf33903be172f3e0e35afed67e7a66fe4d7

1
dev-erlang/conf/Manifest Normal file
View File

@@ -0,0 +1 @@
DIST conf-0.2.6.tar.gz 23221 BLAKE2B acab57dc348e2690d093c4918a98556c1bd5ed267cb14d65132c18fcedc4af79aafc6d5fc6de999ea606b22ef275399b7ec6272a97be4d9f8bad26b1502c54cf SHA512 7e6f40ebf43fa90d2ad7d454388fee05e433c4800eb9484b82e6bd9280a6723c021e0e08dec47e40ca69f38c34b80708a4540fa39018d9051c9395535f0d48d6

View File

@@ -0,0 +1,23 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit rebar3
DESCRIPTION="YAML configuration for Erlang applications"
HOMEPAGE="https://github.com/processone/conf"
SRC_URI="https://github.com/processone/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
# Broken test
RESTRICT="test"
DEPEND="
dev-erlang/fast_yaml
dev-erlang/yval
"
RDEPEND="${DEPEND}"

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>cyber+gentoo@sysrq.in</email>
<name>Anna</name>
</maintainer>
<upstream>
<remote-id type="github">processone/conf</remote-id>
<doc>https://hexdocs.pm/conf/readme.html</doc>
</upstream>
</pkgmetadata>

1
dev-erlang/yval/Manifest Normal file
View File

@@ -0,0 +1 @@
DIST yval-1.0.10.tar.gz 18477 BLAKE2B 57396a18473da25ac0d9aad606e63930247e47ff289048cd0e21a744756b70faa377315a861b35be55c8a3f2f7d22b879da9c3cb7af6cb62d5cbf9cfc4275538 SHA512 1cc229a67521aad4fc22b1ba06ca2edca10306926d69d31d647160ff458eddf86df8e963a8b5f7fdcad9e527288e0933892d3fe1ee97b939a6da9274d9ba7b98

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>cyber+gentoo@sysrq.in</email>
<name>Anna</name>
</maintainer>
<upstream>
<remote-id type="github">processone/yval</remote-id>
<doc>https://hexdocs.pm/yval/yval.html</doc>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,20 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit rebar3
DESCRIPTION="YAML validator"
HOMEPAGE="https://github.com/processone/yval"
SRC_URI="https://github.com/processone/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
# Broken tests
RESTRICT="test"
DEPEND=">=dev-lang/erlang-21"
RDEPEND="${DEPEND}"

295
eclass/rebar3.eclass Normal file
View File

@@ -0,0 +1,295 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: rebar3.eclass
# @MAINTAINER:
# Anna (cybertailor) Vyalkova <cyber+gentoo@sysrq.in>
# @AUTHOR:
# Amadeusz Żołnowski <aidecoe@gentoo.org>
# @SUPPORTED_EAPIS: 8
# @BLURB: Build Erlang/OTP projects using dev-util/rebar:3.
# @DESCRIPTION:
# An eclass providing functions to build Erlang/OTP projects using
# dev-util/rebar:3.
#
# rebar is a tool which tries to resolve dependencies itself which is by
# cloning remote git repositories. Dependent projects are usually expected to
# be in sub-directory 'deps' rather than looking at system Erlang lib
# directory. Projects relying on rebar usually don't have 'install' make
# targets. The eclass workarounds some of these problems. It handles
# installation in a generic way for Erlang/OTP structured projects.
case ${EAPI} in
8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
if [[ -z ${_REBAR3_ECLASS} ]]; then
inherit edo
RDEPEND="dev-lang/erlang:="
DEPEND="${RDEPEND}"
BDEPEND="
dev-util/rebar:3
>=sys-apps/gawk-4.1
"
# @ECLASS_VARIABLE: REBAR_PROFILE
# @DESCRIPTION:
# Rebar profile to use.
: "${REBAR_PROFILE:=default}"
# @ECLASS_VARIABLE: REBAR_APP_SRC
# @DESCRIPTION:
# Relative path to .app.src description file.
: "${REBAR_APP_SRC:=src/${PN}.app.src}"
# @FUNCTION: get_erl_libs
# @RETURN: the path to Erlang lib directory
# @DESCRIPTION:
# Get the full path without EPREFIX to Erlang lib directory.
get_erl_libs() {
echo "/usr/$(get_libdir)/erlang/lib"
}
# @FUNCTION: _rebar_find_dep
# @INTERNAL
# @USAGE: <project_name>
# @RETURN: 0 success, 1 dependency not found, 2 multiple versions found
# @DESCRIPTION:
# Find a Erlang package/project by name in Erlang lib directory. Project
# directory is usually suffixed with version. It is matched to '<project_name>'
# or '<project_name>-*'.
_rebar_find_dep() {
local pn="${1}"
local p
local result
pushd "${EPREFIX}/$(get_erl_libs)" >/dev/null || return 1
for p in ${pn} ${pn}-*; do
if [[ -d ${p} ]]; then
# Ensure there's at most one matching.
[[ ${result} ]] && return 2
result="${p}"
fi
done
popd >/dev/null || die
[[ ${result} ]] || return 1
echo "${result}"
}
# @FUNCTION: rebar_disable_coverage
# @USAGE: [<rebar_config>]
# @DESCRIPTION:
# Disable coverage in rebar.config. This is a workaround for failing coverage.
# Coverage is not relevant in this context, so there's no harm to disable it,
# although the issue should be fixed.
rebar_disable_coverage() {
debug-print-function ${FUNCNAME} "${@}"
local rebar_config="${1:-rebar.config}"
sed -e 's/{cover_enabled, true}/{cover_enabled, false}/' \
-i "${rebar_config}" \
|| die "failed to disable coverage in ${rebar_config}"
}
# @FUNCTION: erebar3
# @USAGE: <targets>
# @DESCRIPTION:
# Run rebar with verbose flag. Die on failure.
erebar3() {
debug-print-function ${FUNCNAME} "${@}"
(( $# > 0 )) || die "erebar: at least one target is required"
case ${1} in
eunit|ct)
local -x ERL_LIBS="." ;;
*)
local -x ERL_LIBS="${EPREFIX}/$(get_erl_libs)" ;;
esac
edo rebar3 "$@"
}
# @FUNCTION: rebar_fix_include_path
# @USAGE: <project_name> [<rebar_config>]
# @DESCRIPTION:
# Fix path in rebar.config to 'include' directory of dependent project/package,
# so it points to installation in system Erlang lib rather than relative 'deps'
# directory.
#
# <rebar_config> is optional. Default is 'rebar.config'.
#
# The function dies on failure.
rebar_fix_include_path() {
debug-print-function ${FUNCNAME} "${@}"
local pn="${1}"
local rebar_config="${2:-rebar.config}"
local erl_libs="${EPREFIX}/$(get_erl_libs)"
local p
p="$(_rebar_find_dep "${pn}")" \
|| die "failed to unambiguously resolve dependency of '${pn}'"
gawk -i inplace \
-v erl_libs="${erl_libs}" -v pn="${pn}" -v p="${p}" '
/^{[[:space:]]*erl_opts[[:space:]]*,/, /}[[:space:]]*\.$/ {
pattern = "\"(./)?deps/" pn "/include\"";
if (match($0, "{i,[[:space:]]*" pattern "[[:space:]]*}")) {
sub(pattern, "\"" erl_libs "/" p "/include\"");
}
print $0;
next;
}
1
' "${rebar_config}" || die "failed to fix include paths in ${rebar_config} for '${pn}'"
}
# @FUNCTION: rebar_remove_deps
# @USAGE: [<rebar_config>]
# @DESCRIPTION:
# Remove dependencies list from rebar.config and deceive build rules that any
# dependencies are already fetched and built. Otherwise rebar tries to fetch
# dependencies and compile them.
#
# <rebar_config> is optional. Default is 'rebar.config'.
#
# The function dies on failure.
rebar_remove_deps() {
debug-print-function ${FUNCNAME} "${@}"
local rebar_config="${1:-rebar.config}"
mkdir -p "${S}/deps" && :>"${S}/deps/.got" && :>"${S}/deps/.built" || die
gawk -i inplace '
/^{[[:space:]]*deps[[:space:]]*,/, /}[[:space:]]*\.$/ {
if ($0 ~ /}[[:space:]]*\.$/) {
print "{deps, []}.";
}
next;
}
1
' "${rebar_config}" || die "failed to remove deps from ${rebar_config}"
}
# @FUNCTION: rebar_set_vsn
# @USAGE: [<version>]
# @DESCRIPTION:
# Set version in project description file if it's not set.
#
# <version> is optional. Default is PV stripped from version suffix.
#
# The function dies on failure.
rebar_set_vsn() {
debug-print-function ${FUNCNAME} "${@}"
local version="${1:-${PV%_*}}"
sed -e "s/vsn, git/vsn, \"${version}\"/" \
-i "${S}/${REBAR_APP_SRC}" \
|| die "failed to set version in src/${PN}.app.src"
}
# @FUNCTION: rebar3_src_prepare
# @DESCRIPTION:
# Prevent rebar from fetching and compiling dependencies. Set version in
# project description file if it's not set.
#
# Existence of rebar.config is optional, but file description file must exist
# at 'src/${PN}.app.src'.
rebar3_src_prepare() {
debug-print-function ${FUNCNAME} "${@}"
default_src_prepare
rebar_set_vsn
rm -f rebar.lock
if [[ -f rebar.config ]]; then
rebar_disable_coverage
rebar_remove_deps
fi
}
# @FUNCTION: rebar3_src_configure
# @DESCRIPTION:
# Configure with ERL_LIBS set.
rebar3_src_configure() {
debug-print-function ${FUNCNAME} "${@}"
local -x ERL_LIBS="${EPREFIX}/$(get_erl_libs)"
default_src_configure
}
# @FUNCTION: rebar3_src_compile
# @DESCRIPTION:
# Compile project with rebar.
rebar3_src_compile() {
debug-print-function ${FUNCNAME} "${@}"
erebar3 as "${REBAR_PROFILE}" release --all
}
# @FUNCTION: rebar3_src_test
# @DESCRIPTION:
# Run unit tests.
rebar3_src_test() {
debug-print-function ${FUNCNAME} "${@}"
erebar3 eunit -v
}
# @FUNCTION: rebar3_install_lib
# @USAGE: <dir>
# @DESCRIPTION:
# Install BEAM files, include headers and native libraries.
#
# Function expects that project conforms to Erlang/OTP structure.
rebar3_install_lib() {
debug-print-function ${FUNCNAME} "${@}"
local dest="$(get_erl_libs)/${P}"
insinto "${dest}"
pushd "${1?}" >/dev/null || die
for dir in ebin include priv; do
if [[ -d ${dir} && ! -L ${dir} ]]; then
cp -pR ${dir} "${ED%/}/${dest}/" || die "failed to install ${dir}/"
fi
done
popd >/dev/null || die
}
# @FUNCTION: rebar3_src_install
# @DESCRIPTION:
# Install built release or library.
#
# Function expects that project conforms to Erlang/OTP structure.
rebar3_src_install() {
debug-print-function ${FUNCNAME} "${@}"
pushd "_build/${REBAR_PROFILE}" >/dev/null || die
if [[ -d rel/${PN} ]]; then
if ! declare -f rebar3_install_release >/dev/null; then
die "${FUNCNAME}: a custom function named 'rebar3_install_release' is required to install a release"
fi
pushd rel/${PN} >/dev/null || die
rebar3_install_release || die
popd >/dev/null || die
elif [[ -d lib/${PN} ]]; then
rebar3_install_lib lib/${PN}
else
die "No releases or libraries to install"
fi
popd >/dev/null || die
einstalldocs
}
_REBAR3_ECLASS=1
fi
EXPORT_FUNCTIONS src_prepare src_compile src_test src_install

View File

@@ -25,8 +25,8 @@ SLOT="0"
RDEPEND="
net-dns/c-ares
media-video/ffmpeg
x11-libs/gtk+
media-video/ffmpeg[alsa]
x11-libs/gtk+[cups]
net-libs/http-parser
dev-libs/libappindicator
dev-libs/libevent
@@ -34,6 +34,7 @@ RDEPEND="
media-libs/libvpx
dev-libs/libxslt
x11-libs/libXScrnSaver
x11-libs/libxkbcommon
sys-libs/zlib[minizip]
dev-libs/nss
dev-libs/re2

View File

@@ -0,0 +1 @@
DIST phosh-tour-v0.28.0.tar.bz2 120380 BLAKE2B 629bd6eae4cca4d65d0725299d6d6303d32056b46c5df9109ffd9558f81d1e206acbd160c3ff244a328f42d33438d44642f31a2f77389cebb3dd60d793229ca8 SHA512 0c49f8bf0d89399fec5e67480374f1f396d01bb47a01906111395b7df37e33eaac6255c7374a7313edd6c1c7e3b5b829695e7a564b2b204036d045484bc77a63

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>cyber+gentoo@sysrq.in</email>
<name>Anna</name>
</maintainer>
<upstream>
<remote-id type="gnome-gitlab">guidog/phosh-tour</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,47 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit gnome2-utils meson xdg
MY_P="${PN}-v${PV}"
DESCRIPTION="Introduction to phosh on smartphones"
HOMEPAGE="https://gitlab.gnome.org/guidog/phosh-tour"
SRC_URI="https://gitlab.gnome.org/guidog/${PN}/-/archive/v${PV}/${MY_P}.tar.bz2"
S="${WORKDIR}/${MY_P}"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64"
DEPEND="
dev-libs/glib:2
>=gui-libs/gtk-4.4:4
>=gui-libs/libadwaita-1.1:1
"
RDEPEND="${DEPEND}"
BDEPEND="sys-devel/gettext"
src_configure() {
local emesonargs=(
-Dbrand="smartphone"
-Dvendor="Gentoo"
)
meson_src_configure
}
src_test() {
# No useful tests
:
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}

1
net-im/eturnal/Manifest Normal file
View File

@@ -0,0 +1 @@
DIST eturnal-1.12.0.tar.gz 919050 BLAKE2B 76c7f0709f82231cff47609e234e2555d68f86df8efa6117351cea8e632b91d023bf22542953a083b0172f9b55f0b1a24dd4abee94cbfde8b86ff4e76b233b82 SHA512 b990fd010d26dc29ab69124dd6db354ab018c1b8882ef7f82631c06234b79027ba838a746d6c606a9f6678feffb6bcaa2b879270c3abe407ef509a5f50367774

View File

@@ -0,0 +1,66 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit rebar3 systemd
DESCRIPTION="STUN/TURN server"
HOMEPAGE="
https://eturnal.net/
https://github.com/processone/eturnal
"
SRC_URI="https://eturnal.net/download/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
DEPEND="
>=dev-lang/erlang-21[ssl]
dev-libs/libyaml
dev-libs/openssl:=
>=dev-erlang/conf-0.1
dev-erlang/fast_tls
dev-erlang/fast_yaml
dev-erlang/p1_utils
>=dev-erlang/stun-1.2
dev-erlang/yval
"
RDEPEND="${DEPEND}
acct-user/eturnal
"
DOCS=( {CHANGELOG,README}.md doc/. )
REBAR_PROFILE=distro
src_configure() {
export ETURNAL_USER=eturnal
export ETURNAL_PREFIX="${EPREFIX}"/opt/eturnal
export ETURNAL_ETC_DIR="${EPREFIX}"/etc
export ERL_EPMD_ADDRESS=""
export CODE_LOADING=dynamic
export SKIP_DEPS=true
rebar3_src_configure
}
rebar3_install_release() {
mkdir -p "${ED}"/opt/eturnal || die
cp -pR bin lib releases "${ED}"/opt/eturnal/ || die
systemd_dounit etc/systemd/system/eturnal.service
newinitd etc/openrc/eturnal.initd eturnal
newconfd etc/openrc/eturnal.confd eturnal
insinto /etc
doins etc/eturnal.yml
doins -r etc/logrotate.d
keepdir /opt/eturnal/{log,run}
fowners eturnal:turnserver /opt/eturnal/{log,run}
dosym -r /opt/eturnal/bin/eturnalctl /usr/sbin/eturnalctl
}

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>cyber+gentoo@sysrq.in</email>
<name>Anna</name>
</maintainer>
<upstream>
<remote-id type="github">processone/eturnal</remote-id>
<bugs-to>https://github.com/processone/eturnal/issues</bugs-to>
<doc>https://eturnal.net/doc/</doc>
</upstream>
</pkgmetadata>

View File

@@ -8,3 +8,4 @@ DIST limine-5.20230811.0.tar.xz 1289484 BLAKE2B 3044bef68ce62a701df30774d35ce886
DIST limine-5.20231103.0.tar.xz 1349960 BLAKE2B 72348e39ad8cd614e19d88c840580c58b3dbd5d4796f2fb525bb6333bd60d641cb0e3fb2abacbef209637708754a52aadc626c625ae3b548d4d3b3db08e474f1 SHA512 e1a7a5ecfca30bf9246e3e9f6ae92a7f788a9c0f896c408ad0f98de08d76137d18627cbe8c0d9c7b322c6e5674c0a6c1cc0d24a2fb9b082e7e4753988e9f2fd8
DIST limine-5.20231121.0.tar.xz 1366372 BLAKE2B b47b4da7be451d60c6da2c0c0d2df57fce9e767e6ae1b9a59e3e823bfcc492292363560bac70960399d23f5ff6f02ce94985f7f955e18d71c0c48f0e8faa3be7 SHA512 5ab7d0b578af39af0ffb980ecae282431bcaf463a60211d35ed229ef3e1c5f8d9392bbbee64732e70dd87411bedf233e32e953f714cecc44edad4b254221e761
DIST limine-5.20231124.0.tar.xz 1322812 BLAKE2B 8f15e8a77107a0b49cc58372d59b0fdfedaaaea0c82e46c8e86324e6fee1587f0d878ba77d70f3f24a19cc1a08cd5fc604d21f2252a53fc89f33a0a613874b62 SHA512 af37524f0d59de83f36921939c78421ce864343ef621a4b9ff1437c89080f9ef6467a04ea31f44f3904820dface10703f43b185d11a679bb7536d4573d2295c5
DIST limine-6.20231227.0.tar.xz 1318188 BLAKE2B ff7c35fbe9b1ace85450b1e568b2acb8e8165d6465300e6401c2255390dfce981b1cba2cb3065614d422904c20b75c42bf6702884bdda0a9b0b7056df19ae1f8 SHA512 b716631c371774e3d48eee1aa6ff16234f9f9572a191b9cb39a9c18c8f60f08ab07a1e351f2e5efbc616a739a32f6e24cfaaf4ca9b04688018d2728a156f9677

View File

@@ -0,0 +1,44 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Limine is a modern, advanced, and portable BIOS/UEFI multiprotocol bootloader"
HOMEPAGE="https://limine-bootloader.org/"
SRC_URI="https://github.com/limine-bootloader/limine/releases/download/v${PV}/limine-${PV}.tar.xz"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+bios +bios-pxe +bios-cd +cd-efi +uefi32 +uefi64 +uefiaa64 +uefirv64"
MY_LLVM_TARGETS="AArch64 ARM X86 RISCV"
MY_LLVM_FLAGS="llvm_targets_${MY_LLVM_TARGETS// /(-),llvm_targets_}(-)"
BDEPEND="
app-alternatives/gzip
dev-lang/nasm
sys-apps/findutils
sys-devel/clang[${MY_LLVM_FLAGS}]
sys-devel/lld
sys-devel/llvm[${MY_LLVM_FLAGS}]
cd-efi? ( sys-fs/mtools )
"
src_configure() {
local myconf=(
"$(use_enable bios)"
"$(use_enable bios-cd)"
"$(use_enable bios-pxe)"
"$(use_enable uefi32 uefi-ia32)"
"$(use_enable uefi64 uefi-x86-64)"
"$(use_enable uefiaa64 uefi-aarch64)"
"$(use_enable uefirv64 uefi-riscv64)"
"$(use_enable cd-efi uefi-cd)"
)
TOOLCHAIN_FOR_TARGET=llvm \
econf "${myconf[@]}"
}

View File

@@ -1,2 +1,3 @@
DIST phoc-0.33.0.tar.xz 646148 BLAKE2B 74e6ac8eec5a37a9dd255d48b1bca65f992399eeb9dc19b22bb84e746f7cae95306c0a487aae828d939be2a0736408476aba6b947c1f44d825340bfcb1873d49 SHA512 7907c116b426383843b6782bafe5f416e7cb8b4039c9ee81ace35476df3b4d0ef92a968f57edef91094cd28387ceff03f1cdd802de65e0e9e3840eab03a78ac9
DIST phoc-v0.13.1.tar.gz 166867 BLAKE2B 6606855efe7099d12c8be3ee16c401bbcc618aaed2f264abe982cc4a49ccbc0e65fac1b7d8da62de4261bdf3a322f4313a15723c7b7cb7a9ce279957dbf89c78 SHA512 0da68ac4d0601e91ed5f59eeb0beea64180b546f58b300631495084d366fe515c26fe9d58d0ca20687032f6824ae98dcc82edd8a6c80caa95178d24d27ee2650
DIST wlroots-c9cd3502ba6113070020de50e41f0af72e0f5031.tar.gz 506612 BLAKE2B 70589e63cf223aa5b3634e057cc8c9d1f52d0f6c0fd3bbf66739bc1c934036bab0e8fc8337f51b1d4bb0d73c008b16421c354194cf215741e84ad88345465870 SHA512 af610233ec2343a3baefbb30db4b9a3f30dac4f8656293849be603fbcad0cdd65e91d80702c35e4aaf47437e8c301229c4933b7c8b5df3a7128979c94bcfcddc

View File

@@ -0,0 +1,76 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit gnome2-utils meson virtualx xdg
DESCRIPTION="Wayland compositor for mobile phones"
HOMEPAGE="https://gitlab.gnome.org/World/Phosh/phoc"
SRC_URI="https://sources.phosh.mobi/releases/${PN}/${P}.tar.xz"
LICENSE="|| ( GPL-3+ MIT ) GPL-3+ LGPL-2.1+ MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="+X gtk-doc man test"
RESTRICT="!test? ( test )"
DEPEND="
>=dev-libs/glib-2.70:2
dev-libs/json-glib
dev-libs/libinput:=
dev-libs/wayland
>=gnome-base/gnome-desktop-3.26:3
gnome-base/gsettings-desktop-schemas
>=gui-libs/wlroots-0.16.0:=[X?]
<gui-libs/wlroots-0.17.0
media-libs/libglvnd
x11-libs/libdrm
x11-libs/pixman
x11-libs/libxkbcommon[X?,wayland]
"
RDEPEND="${DEPEND}"
BDEPEND="
dev-libs/glib:2
dev-libs/wayland-protocols
dev-util/wayland-scanner
sys-devel/gettext
gtk-doc? ( dev-util/gi-docgen )
man? ( dev-python/docutils )
test? ( x11-wm/mutter )
"
src_configure() {
local emesonargs=(
$(meson_feature X xwayland)
$(meson_use gtk-doc gtk_doc)
$(meson_use man)
$(meson_use test tests)
-Dembed-wlroots=disabled
)
meson_src_configure
}
src_test() {
local -x LC_ALL="C.UTF-8"
local -x WLR_RENDERER="pixman"
virtx meson_src_test
}
src_install() {
meson_src_install
newbin helpers/auto-maximize phoc-auto-maximize
newbin helpers/scale-to-fit phoc-scale-to-fit
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}