summaryrefslogtreecommitdiff
path: root/gui-wm/wayfire
diff options
context:
space:
mode:
Diffstat (limited to 'gui-wm/wayfire')
-rw-r--r--gui-wm/wayfire/Manifest7
-rw-r--r--gui-wm/wayfire/files/wayfire-session-226
-rw-r--r--gui-wm/wayfire/files/wayfire.env2
-rw-r--r--gui-wm/wayfire/metadata.xml35
-rw-r--r--gui-wm/wayfire/wayfire-0.8.1-r2.ebuild102
-rw-r--r--gui-wm/wayfire/wayfire-9999.ebuild23
6 files changed, 162 insertions, 33 deletions
diff --git a/gui-wm/wayfire/Manifest b/gui-wm/wayfire/Manifest
index 4d8b12700a6d..403e745e54d8 100644
--- a/gui-wm/wayfire/Manifest
+++ b/gui-wm/wayfire/Manifest
@@ -1,11 +1,14 @@
AUX wayfire-0.8.0-dont-use-installed-config-h.patch 1999 BLAKE2B 6f87e25841dfcd266a7507d72d5c6602fd11a24b8a5e7f90c51e8b93592355f2971ee2eb0c9088a17921f5cf6dd690ebd0d54ea03f6fe026794d5d7c2eafaeb0 SHA512 0cbdf8bcf54491969ad5d0da9d2736775112ea168bbeb03bc252961cbe011b16bcf193ed3bef9effeeaac870405141819d1cb2dc2cb3cab20fc97dcb33639fdd
AUX wayfire-0.8.0-fix-duplicate-manpage.patch 755 BLAKE2B c4e3fec4c5861eadd58480d098f92ae5d24b798d29e2e5898eda80132df53705e440516b6af67de4eadd7d788c106b72693e315467f3397be12ab6d03da5082c SHA512 77930c892938d3f27e12e9a2f1ac31f9552c91869e011b933d2bb1f6b986abda75f71d1bb008f71665d3edf9a2fb0e650ad1fc397f4dc0c9bcb77f94d7f8ea24
AUX wayfire-session 540 BLAKE2B 02970ebece43c8643ab68f0108d2166f7946d54cea7c6143c9badf0e9852bed4af14bb0c4dd3101a179958b06904889204915e965c46f64073fb8f05800553e3 SHA512 616bbf244a358fb7fbeb1230a3ba862a7ca373fdf3b181819a05ca63da82c78fcd80d0f7167d50488c38820559f007702d2c86ac861f214775c3a6271351bb1d
+AUX wayfire-session-2 871 BLAKE2B cb2db6d1a2944d0ce60e67328e9353d3e4c69b5d5f9e4fee4351e51d78dc9deb3f8ddd338bbbd7b047cd029360b66d02ec9791f049f59eed8155992c89062e11 SHA512 380708daacc92cf8c94c9fee9c1e374dddb90f83438277c360d904dd34cf30634f90caf9e53ca3511b679f499f0044e35f80516bea1f1bbe8057fae85cad9963
AUX wayfire-session.desktop 204 BLAKE2B a8e01f911881c651ec67b5945b91dca6151866599c0a7d0ef5b17c2b88ff6178c6f6d42506f1d6f6cbce8f9231388fa63e2a870116a45c677bd9faee94eabfac SHA512 0c7fd2f04c5b2c413bda02f2c43090dc8c64503d372e8eb19df8a4d7190f6ba703db672753bfa0629a2f627b505886c33f874a933cc6cf7f876caf60a4e70039
+AUX wayfire.env 80 BLAKE2B ff44da0d760ab3ba5e68009e4eea3112d4882331fd678b286f741bb87e2319c87e48d689318fe99a79bb6af3127ec97a99de8994f5c18d96086cc7f3d1e68160 SHA512 2118195fb4ceb6a994043a4bd5608ee9bb104dd769cf3ffba449b053fa05a6e7464ab9c3f812bd0f9bf4ed73eb7f5e2afa1ee48373765b8429317efa11089cd6
DIST wayfire-0.8.0.tar.xz 828576 BLAKE2B 4d80a0d43061a4564d45f7c077fd97737b426c4036c12f004815dbad120f51b38b2fac9a010e2df27a6a96205cd0dcceb81864bdccbd6e337d81f6c37926e019 SHA512 fab55f6112c462312edf43d41b29f476d493449eca8f0c5cfee8f3aae73dcb98be46c589fc23d10d961f738bdf6d1fe78286b4c96e1d4444fdc8b1b898d998a9
DIST wayfire-0.8.1.tar.xz 856364 BLAKE2B 1b596b28878789ca26eeb57c6c24e0b69508731de2144e1477f8071b41f17757b2125f2f4f99670ca8b7f85172a9f641b9be1f9190eeff5b261bcc2df1bec4ab SHA512 7bce5656b6a7a7fe53b37492465dee3e591eb386666fdd3d6876f4a589f059510fb2d0c0a326df260ca6a293edf4ba43bb55f813e85d4d2d38d6ef1319280254
EBUILD wayfire-0.8.0-r1.ebuild 3710 BLAKE2B 5f64dbdb42209d9b05a0eaa30f47fdbf0d3622e242cf5eb31598efdc615201a53c733d4ba0a4d5710d0131e91bcc3bd242e524493d37652e0a8110ba3c8bc1d7 SHA512 968704fbb1d2145064e98da1f0aad422eac38ecd2aac4009663a97efe5f11f9d1420e2a251815255b47afcd326646119a94769e0f4b569fb4c83326e08f1e56c
EBUILD wayfire-0.8.0-r2.ebuild 3776 BLAKE2B b848744075d055977581665f1b4cccaf5608e0ad0516730c11970a56bde7394b28201f43850a154ea3094e7333e8903576bbb3d32f9415835232aa9617f3b970 SHA512 2ece76e1779c0259a14be3599961cbd7ddd2cb7c2481a1e60009074669b4f1e265a93886999223d8894c96f115ee0b6fe642204323babb53bf2b534bfc5aea27
EBUILD wayfire-0.8.1-r1.ebuild 2471 BLAKE2B 49d1238ea8136959b2acd3504a2a72a81b340660de7ba28c8935833e984a1b95272db93793bdc685aa9f9de7ef2c8500b3eccae143199f94a5f5dfa5a6dd3c19 SHA512 a8ac07b6ea9c6397345b5913dda1910a89976d36d37414f8debaca2c225c7ce545dc472b92aafec66f611fd91097dfbfdc7706d33e4abfb98aa14c70e164a947
-EBUILD wayfire-9999.ebuild 2396 BLAKE2B 2b03a83746372fc3bb0c67809831136890b5b493f6240db4624b0a9a8ba8f0a02cd5b1cd1b5c92b90286ab61d6ee9cb19ffeeb32616c868d9cbaa1e01c92214e SHA512 aaf374d7a6b4688e010763e760fc5718570f629194553aa259f69a00ec203a7087e589a658f8ee28b85896fa528ed9a4bb9ab93ba9af2158a5e8fda62975f84d
-MISC metadata.xml 1165 BLAKE2B 1c0dbff3530ca68ac4999298a136ccbb12c7901aa089a74360b9576cb68ba7d0f9a7491f959b23c3e6b3fcc9b64455482863dbb1a9586c5debb23e7b2a34cd3c SHA512 b422127c711314f118afe73f6697b0a566458c1f36bf5dd92cecdc7be82c9bd4406188ff0a02be30317abd7a835bff3b4e5d2614598233aa2e79a200276af42c
+EBUILD wayfire-0.8.1-r2.ebuild 2280 BLAKE2B 147c76241aa0465a6e48a423fb33f63358d5b64f187b180c5f5baec38b9b361da191e87d16215699b9bdb36cdedf48eec483de13130e6a0dd415c7db50ae4619 SHA512 96e0ef86dd0b8b298c11389a6929b07e1182eccd8375b156838e7b03377411171967787af61a5e6daea232f9ce3b00f485f08ee370bf4ecadbba87222021d7a0
+EBUILD wayfire-9999.ebuild 2204 BLAKE2B f99a53028c1b2cac6922f71a9e250857767c45692bc2d252fc58c9a6c855a2966ccbf78c364d9c9bcdf5e9c21c4048307e6a2ccb15bb44c9e4b575615acea2d3 SHA512 65f8095127deaa1433c0625e059322bb0ce73ef485677c5e848191330eee0df0682cbed29610b177b2257a5b6e204d9bf7cba689cc8fe5852a109966487dacc0
+MISC metadata.xml 1171 BLAKE2B 9517f1c85eb2f85a578d512d163a3f104ed8d621ce19ac42450897b499c033eff8bd121dd472946154c49b75151a01f282f39af5c3967e3192ec029db38b2d0a SHA512 9481f8f77574f9224b6e5ee3f4feabf2960b21b8331e16c4031b7d1f0068564a1567319d0e4246c5c918d4294d5dd7cca94fe015ca0327944c6047aa2c1b5f12
diff --git a/gui-wm/wayfire/files/wayfire-session-2 b/gui-wm/wayfire/files/wayfire-session-2
new file mode 100644
index 000000000000..0713ca0bbb93
--- /dev/null
+++ b/gui-wm/wayfire/files/wayfire-session-2
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+# output to syslog and stderr
+# with PID and syslog identity 'wayfire'
+exec 1> >(logger --id=$$ --stderr --tag wayfire) 2>&1
+
+# if undefined, or empty, set to freedesktop specification defaults
+[ -z "$XDG_DATA_DIRS" ] && export XDG_DATA_DIRS="/usr/local/share:/usr/share"
+
+# freedesktop specifications mandate that the definition
+# of XDG_SESSION_TYPE should be respected
+export XDG_SESSION_TYPE=wayland
+export GDK_BACKEND=wayland
+export QT_QPA_PLATFORM=wayland
+export MOZ_ENABLE_WAYLAND=1
+
+# copy wayfire.ini to $HOME/.config/ if not already there
+configdir="${XDG_CONFIG_HOME:=${HOME}/.config}"
+if [[ ! -f ${configdir}/wayfire.ini ]]; then
+ cp /usr/share/wayfire/wayfire.ini "${configdir}"
+fi
+
+# override or add environment variables
+[[ -f @EPREFIX@/etc/wayfire.env ]] && . @EPREFIX@/etc/wayfire.env
+
+exec @DBUS_RUN_SESSION@ @EPREFIX@/usr/bin/wayfire "$@"
diff --git a/gui-wm/wayfire/files/wayfire.env b/gui-wm/wayfire/files/wayfire.env
new file mode 100644
index 000000000000..47ce61e3183c
--- /dev/null
+++ b/gui-wm/wayfire/files/wayfire.env
@@ -0,0 +1,2 @@
+# Uncomment if the mouse cursor is invisible:
+#export WLR_NO_HARDWARE_CURSORS=1
diff --git a/gui-wm/wayfire/metadata.xml b/gui-wm/wayfire/metadata.xml
index fb1df8affac5..ed72465ca08f 100644
--- a/gui-wm/wayfire/metadata.xml
+++ b/gui-wm/wayfire/metadata.xml
@@ -1,20 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription>
- compiz like eye-candy 3D wayland, with low memory footprint.
- Aims to bring desktop features such as 3D cube, fire burn,
- fisheye, wrot and all other desktop effects to wayland.
- </longdescription>
- <use>
- <flag name="gles">use libglvnd to do animations more efficiently</flag>
- <flag name="gles3">Enable OpenGL ES 3.x Features.</flag>
- <flag name="system-wfconfig">Use the system-wide <pkg>gui-libs/wf-config</pkg> instead of building as a submodule. It will block system-wide <pkg>gui-libs/wf-config</pkg> from being installed.</flag>
- <flag name="system-wlroots">Use the system-wide <pkg>gui-libs/wlroots</pkg> instead of building as a submodule. It will block system-wide <pkg>gui-libs/wlroots</pkg> from being installed.</flag>
- <flag name="X">Enable support for X11 applications (XWayland).</flag>
- </use>
- <upstream>
- <remote-id type="github">WayfireWM/wayfire</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <name>Viorel Munteanu</name>
+ </maintainer>
+ <longdescription>
+ compiz like eye-candy 3D wayland, with low memory footprint.
+ Aims to bring desktop features such as 3D cube, fire burn,
+ fisheye, wrot and all other desktop effects to wayland.
+ </longdescription>
+ <use>
+ <flag name="gles">use libglvnd to do animations more efficiently</flag>
+ <flag name="gles3">Enable OpenGL ES 3.x Features.</flag>
+ <flag name="system-wfconfig">Use the system-wide <pkg>gui-libs/wf-config</pkg> instead of building as a submodule. It will block system-wide <pkg>gui-libs/wf-config</pkg> from being installed.</flag>
+ <flag name="system-wlroots">Use the system-wide <pkg>gui-libs/wlroots</pkg> instead of building as a submodule. It will block system-wide <pkg>gui-libs/wlroots</pkg> from being installed.</flag>
+ <flag name="X">Enable support for X11 applications (XWayland).</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">WayfireWM/wayfire</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/gui-wm/wayfire/wayfire-0.8.1-r2.ebuild b/gui-wm/wayfire/wayfire-0.8.1-r2.ebuild
new file mode 100644
index 000000000000..ff1a84e65576
--- /dev/null
+++ b/gui-wm/wayfire/wayfire-0.8.1-r2.ebuild
@@ -0,0 +1,102 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="compiz like 3D wayland compositor"
+HOMEPAGE="https://github.com/WayfireWM/wayfire"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/WayfireWM/${PN}.git"
+ SLOT="0/0.8"
+else
+ SRC_URI="https://github.com/WayfireWM/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~riscv"
+ SLOT="0/$(ver_cut 1-2)"
+fi
+
+LICENSE="MIT"
+IUSE="+dbus +gles3 test X"
+RESTRICT="!test? ( test )"
+
+# bundled wlroots has the following dependency string according to included headers.
+# wlroots[drm,gles2-renderer,libinput,x11-backend?,X?]
+# enable x11-backend with X and vice versa
+CDEPEND="
+ dev-cpp/nlohmann_json
+ dev-libs/glib:2
+ dev-libs/libevdev
+ >=dev-libs/libinput-1.7.0:=
+ dev-libs/wayland
+ >=dev-libs/wayland-protocols-1.12
+ gui-libs/wf-config:${SLOT}
+ gui-libs/wlroots:0/17[drm(+),libinput(+),x11-backend,X?]
+ media-libs/glm
+ media-libs/libglvnd
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
+ x11-libs/cairo
+ x11-libs/libxkbcommon
+ x11-libs/pango
+ x11-libs/pixman
+ dbus? ( sys-apps/dbus )
+ X? ( x11-libs/libxcb:= )
+"
+
+RDEPEND="
+ ${CDEPEND}
+ x11-misc/xkeyboard-config
+"
+DEPEND="
+ ${CDEPEND}
+ test? ( dev-cpp/doctest )
+"
+BDEPEND="
+ dev-util/wayland-scanner
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}/wayfire-0.8.0-dont-use-installed-config-h.patch"
+)
+
+src_prepare() {
+ default
+
+ local dbusrunsession=$(usev dbus dbus-run-session)
+ sed -e "s:@EPREFIX@:${EPREFIX}:g" -e "s:@DBUS_RUN_SESSION@:${dbusrunsession}:" \
+ "${FILESDIR}"/wayfire-session-2 > "${T}"/wayfire-session || die
+ sed -e "s:@EPREFIX@:${EPREFIX}:" \
+ "${FILESDIR}"/wayfire-session.desktop > "${T}"/wayfire-session.desktop || die
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature test tests)
+ $(meson_feature X xwayland)
+ $(meson_use gles3 enable_gles32)
+ -Duse_system_wfconfig=enabled
+ -Duse_system_wlroots=enabled
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dobin "${T}"/wayfire-session
+
+ insinto "/usr/share/wayland-sessions/"
+ insopts -m644
+ doins wayfire.desktop
+ doins "${T}"/wayfire-session.desktop
+
+ insinto "/usr/share/wayfire/"
+ doins wayfire.ini
+
+ insinto "/etc"
+ doins "${FILESDIR}"/wayfire.env
+}
diff --git a/gui-wm/wayfire/wayfire-9999.ebuild b/gui-wm/wayfire/wayfire-9999.ebuild
index 6a2f5696709d..bce466406ffd 100644
--- a/gui-wm/wayfire/wayfire-9999.ebuild
+++ b/gui-wm/wayfire/wayfire-9999.ebuild
@@ -19,7 +19,7 @@ else
fi
LICENSE="MIT"
-IUSE="+gles3 test X"
+IUSE="+dbus +gles3 test X"
RESTRICT="!test? ( test )"
# bundled wlroots has the following dependency string according to included headers.
@@ -42,9 +42,8 @@ CDEPEND="
x11-libs/libxkbcommon
x11-libs/pango
x11-libs/pixman
- X? (
- x11-libs/libxcb:=
- )
+ dbus? ( sys-apps/dbus )
+ X? ( x11-libs/libxcb:= )
"
RDEPEND="
@@ -63,8 +62,9 @@ BDEPEND="
src_prepare() {
default
- sed -e "s:@EPREFIX@:${EPREFIX}:" \
- "${FILESDIR}"/wayfire-session > "${T}"/wayfire-session || die
+ local dbusrunsession=$(usev dbus dbus-run-session)
+ sed -e "s:@EPREFIX@:${EPREFIX}:g" -e "s:@DBUS_RUN_SESSION@:${dbusrunsession}:" \
+ "${FILESDIR}"/wayfire-session-2 > "${T}"/wayfire-session || die
sed -e "s:@EPREFIX@:${EPREFIX}:" \
"${FILESDIR}"/wayfire-session.desktop > "${T}"/wayfire-session.desktop || die
}
@@ -92,14 +92,7 @@ src_install() {
insinto "/usr/share/wayfire/"
doins wayfire.ini
-}
-pkg_postinst() {
- if [ -z "${REPLACING_VERSIONS}" ]; then
- elog "Wayfire has been installed but the session cannot be used"
- elog "until you install a configuration file. The default config"
- elog "file is installed at \"/usr/share/wayfire/wayfire.ini\""
- elog "To install the file execute"
- elog "\$ cp /usr/share/wayfire/wayfire.ini ~/.config/wayfire.ini"
- fi
+ insinto "/etc"
+ doins "${FILESDIR}"/wayfire.env
}