gui-libs/xdg-desktop-portal-hyprland: new package, add 0.1.0, 9999

Signed-off-by: Remigiusz Micielski <remigiusz.micielski@gmail.com>
This commit is contained in:
Remigiusz Micielski
2023-04-10 22:39:03 +02:00
parent 4e09eb4364
commit fbaa7456ef
4 changed files with 167 additions and 0 deletions

View File

@@ -0,0 +1 @@
DIST xdg-desktop-hyprland-0.1.0.tar.gz 45350 BLAKE2B 7b0349f3d0ff4708df3068d71deecb675109c905e0cea6fa0724a2645267a70038a54e2a9eb536e6dbc0d0a138071ceb91527e0df91c83cda0b57e3cf3b519d2 SHA512 b8cfda484d5d50c7fae33eb020c101990ceb244bdfebac46c9820267697eae76bb1e6261c1b03d8fb0148eb81c64f01c59eb94171cb87407541d20117fa48f18

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>remigiusz.micielski@gmail.com</email>
<name>Remigiusz Micielski</name>
</maintainer>
<upstream>
<doc lang="en">https://wiki.hyprland.org/hyprland-wiki/pages/Useful-Utilities/Hyprland-desktop-portal/</doc>
<remote-id type="github">hyprwm/xdg-desktop-portal-hyprland</remote-id>
<bugs-to>https://github.com/hyprwm/xdg-desktop-portal-hyprland/issues</bugs-to>
</upstream>
<longdescription lang="en">
An XDG Desktop Portal (later called XDP) is a program that lets
other applications communicate swiftly with the compositor through
D-Bus. It's used for stuff like e.g. opening file pickers, screen sharing.
On Wayland, it also requires an implementation. For Hyprland, you'd usually
use xdg-desktop-portal-wlr (later called XDPW). Unfortunately, due to various
reasons the -wlr portal is inferior to the KDE or Gnome ones. In order to
bridge the gap, Hyprland has its own fork of XDPW that has more features,
called xdg-desktop-portal-hyprland.
</longdescription>
<use>
<flag name="elogind">Enable support for rootless session via elogind</flag>
</use>
</pkgmetadata>

View File

@@ -0,0 +1,70 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit meson
DESCRIPTION="xdg-desktop-portal backend for hyprland"
HOMEPAGE="https://github.com/hyprwm/xdg-desktop-portal-hyprland"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/hyprwm/xdg-desktop-portal-hyprland.git"
inherit git-r3
else
SRC_URI="https://github.com/hyprwm/xdg-desktop-portal-hyprland/archive/refs/tags/v${PV}.tar.gz -> xdg-desktop-hyprland-${PV}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="MIT"
SLOT="0/9999"
IUSE="elogind systemd"
REQUIRED_USE="?? ( elogind systemd )"
DEPEND="
dev-libs/inih
dev-libs/wayland
dev-qt/qtcore
dev-qt/qtwidgets
dev-qt/qtgui
media-libs/mesa
>=media-video/pipewire-0.3.41:=
x11-libs/libdrm
|| (
systemd? ( >=sys-apps/systemd-237 )
elogind? ( >=sys-auth/elogind-237 )
sys-libs/basu
)
"
RDEPEND="
${DEPEND}
sys-apps/xdg-desktop-portal
"
BDEPEND="
>=dev-libs/wayland-protocols-1.24
virtual/pkgconfig
"
src_configure() {
local emasonargs=()
if use systemd; then
emasonargs+=(-Dsd-bus-provider=libsystemd)
elif use elogind; then
emasonargs+=(-Dsd-bus-provider=libelogind)
else
emasonargs+=(-Dsd-bus-provider=basu)
fi
meson_src_configure
}
src_compile() {
cd hyprland-share-picker || die
make all || die "Couldn't compile hyprland-share-picker"
cd .. || die
meson_src_compile
}
src_install() {
meson_src_install
dobin "${WORKDIR}"/xdg-desktop-portal-hyprland-${PV}/hyprland-share-picker/build/hyprland-share-picker
}

View File

@@ -0,0 +1,70 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit meson
DESCRIPTION="xdg-desktop-portal backend for hyprland"
HOMEPAGE="https://github.com/hyprwm/xdg-desktop-portal-hyprland"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/hyprwm/xdg-desktop-portal-hyprland.git"
inherit git-r3
else
SRC_URI="https://github.com/hyprwm/xdg-desktop-portal-hyprland/archive/refs/tags/v${PV}.tar.gz -> xdg-desktop-hyprland-${PV}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="MIT"
SLOT="0/9999"
IUSE="elogind systemd"
REQUIRED_USE="?? ( elogind systemd )"
DEPEND="
dev-libs/inih
dev-libs/wayland
dev-qt/qtcore
dev-qt/qtwidgets
dev-qt/qtgui
media-libs/mesa
>=media-video/pipewire-0.3.41:=
x11-libs/libdrm
|| (
systemd? ( >=sys-apps/systemd-237 )
elogind? ( >=sys-auth/elogind-237 )
sys-libs/basu
)
"
RDEPEND="
${DEPEND}
sys-apps/xdg-desktop-portal
"
BDEPEND="
>=dev-libs/wayland-protocols-1.24
virtual/pkgconfig
"
src_configure() {
local emasonargs=()
if use systemd; then
emasonargs+=(-Dsd-bus-provider=libsystemd)
elif use elogind; then
emasonargs+=(-Dsd-bus-provider=libelogind)
else
emasonargs+=(-Dsd-bus-provider=basu)
fi
meson_src_configure
}
src_compile() {
cd hyprland-share-picker || die
make all || die "Couldn't compile hyprland-share-picker"
cd .. || die
meson_src_compile
}
src_install() {
meson_src_install
dobin "${WORKDIR}"/xdg-desktop-portal-hyprland-${PV}/hyprland-share-picker/build/hyprland-share-picker
}