summaryrefslogtreecommitdiff
path: root/gui-wm
diff options
context:
space:
mode:
authorMartin Väth <martin@mvath.de>2021-08-08 16:11:00 +0200
committerMartin Väth <martin@mvath.de>2021-08-08 16:11:00 +0200
commit3ec13e29f98f601addc19affa90930632374dac9 (patch)
tree4f3c57964202312de440f48068192203594e692e /gui-wm
parentmedia-gfx/ipe: Add dependency to sci-libs/gsl (diff)
downloadmv-3ec13e29f98f601addc19affa90930632374dac9.tar.gz
mv-3ec13e29f98f601addc19affa90930632374dac9.tar.bz2
mv-3ec13e29f98f601addc19affa90930632374dac9.zip
Add gui-wm/wayfire-0.7.2 and compatible gui-libs/wf-config-0.7.1-r1
Signed-off-by: Martin Väth <martin@mvath.de>
Diffstat (limited to 'gui-wm')
-rw-r--r--gui-wm/wayfire/Manifest1
-rw-r--r--gui-wm/wayfire/files/wayfire-session17
-rw-r--r--gui-wm/wayfire/files/wayfire-session.desktop7
-rw-r--r--gui-wm/wayfire/metadata.xml22
-rw-r--r--gui-wm/wayfire/wayfire-0.7.2.ebuild91
5 files changed, 138 insertions, 0 deletions
diff --git a/gui-wm/wayfire/Manifest b/gui-wm/wayfire/Manifest
new file mode 100644
index 00000000..ec4f4fae
--- /dev/null
+++ b/gui-wm/wayfire/Manifest
@@ -0,0 +1 @@
+DIST wayfire-0.7.2.tar.xz 753132 SHA512 e1321605dbae2b9769a54aaacb0e4a4259b1e2ab4304e8a8c1257f7033b2d740b0632053309ecccc75e04f7b6d2bdf6d68dcebad6950fd914c3052b19bc58e24
diff --git a/gui-wm/wayfire/files/wayfire-session b/gui-wm/wayfire/files/wayfire-session
new file mode 100644
index 00000000..8267ea0e
--- /dev/null
+++ b/gui-wm/wayfire/files/wayfire-session
@@ -0,0 +1,17 @@
+#!/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
+
+exec @EPREFIX@/usr/bin/wayfire "$@"
diff --git a/gui-wm/wayfire/files/wayfire-session.desktop b/gui-wm/wayfire/files/wayfire-session.desktop
new file mode 100644
index 00000000..1088c4e0
--- /dev/null
+++ b/gui-wm/wayfire/files/wayfire-session.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Wayfire Session
+Comment=wayfire session with proper env vars
+Exec=@EPREFIX@/usr/bin/wayfire-session $*
+TryExec=@EPREFIX@/usr/bin/wayfire-session
+Type=Application
+DesktopNames=Wayfire
diff --git a/gui-wm/wayfire/metadata.xml b/gui-wm/wayfire/metadata.xml
new file mode 100644
index 00000000..ebb88ce3
--- /dev/null
+++ b/gui-wm/wayfire/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <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>
+ <maintainer type="person" proxied="yes">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="gles">use libglvnd to do animations more efficiently</flag>
+ <flag name="system-wfconfig">use the system-wide wf-config, else build it as a submodule. DO NOT DISABLE UNLESS YOU KNOW WHAT YOU ARE DOING.</flag>
+ <flag name="system-wlroots">use the system wide wlroots, else build it as a submodule. DO NOT DISABLE UNLESS YOU KNOW WHAT YOU ARE DOING.</flag>
+ </use>
+</pkgmetadata>
diff --git a/gui-wm/wayfire/wayfire-0.7.2.ebuild b/gui-wm/wayfire/wayfire-0.7.2.ebuild
new file mode 100644
index 00000000..94726a61
--- /dev/null
+++ b/gui-wm/wayfire/wayfire-0.7.2.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2019-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+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"
+else
+ RESTRICT=mirror
+ SRC_URI="https://github.com/WayfireWM/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="amd64 ~arm64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="+gles +system-wfconfig +system-wlroots X"
+
+DEPEND="
+ dev-libs/libevdev
+ dev-libs/libinput
+ gui-libs/gtk-layer-shell
+ media-libs/glm
+ media-libs/mesa:=[gles2,wayland,X?]
+ media-libs/libglvnd[X?]
+ media-libs/libjpeg-turbo
+ media-libs/libpng
+ media-libs/freetype:=[X?]
+ x11-libs/libdrm
+ x11-libs/gtk+:3=[wayland,X?]
+ x11-libs/cairo:=[X?,svg]
+ x11-libs/libxkbcommon:=[X?]
+ x11-libs/pixman
+ X? ( x11-libs/libxcb )
+ system-wfconfig? ( ~gui-libs/wf-config-0.7.1:= )
+ !system-wfconfig? ( !gui-libs/wf-config )
+ system-wlroots? ( gui-libs/wlroots:0/14[X?] )
+ !system-wlroots? ( !gui-libs/wlroots )
+"
+
+RDEPEND="
+ ${DEPEND}
+ x11-misc/xkeyboard-config
+"
+
+BDEPEND="
+ dev-libs/wayland-protocols
+ virtual/pkgconfig
+"
+
+src_configure() {
+ sed -e "s:@EPREFIX@:${EPREFIX}:" \
+ "${FILESDIR}"/wayfire-session > "${T}"/wayfire-session || die
+ sed -e "s:@EPREFIX@:${EPREFIX}:" \
+ "${FILESDIR}"/wayfire-session.desktop > "${T}"/wayfire-session.desktop || die
+ local emesonargs=(
+ $(meson_feature system-wfconfig use_system_wfconfig)
+ $(meson_feature system-wlroots use_system_wlroots)
+ $(meson_feature X xwayland)
+ $(meson_use gles enable_gles32)
+ )
+ 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
+}
+
+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.ini ~/.config/wayfire.ini"
+ fi
+}