commit: 2eee121080f0cfd7d1161c18fa89311cfa381e72 Author: Maxwell Blake <frailedev <AT> proton <DOT> me> AuthorDate: Sat Jun 21 16:20:15 2025 +0000 Commit: Maxwell Blake <frailedev <AT> proton <DOT> me> CommitDate: Sat Jun 21 16:26:57 2025 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2eee1210
gui-apps/quickshell: new package, add 0.1.0 Signed-off-by: Maxwell Blake <frailedev <AT> proton.me> gui-apps/quickshell/Manifest | 1 + gui-apps/quickshell/metadata.xml | 34 +++++++++++++ gui-apps/quickshell/quickshell-0.1.0.ebuild | 78 +++++++++++++++++++++++++++++ 3 files changed, 113 insertions(+) diff --git a/gui-apps/quickshell/Manifest b/gui-apps/quickshell/Manifest new file mode 100644 index 0000000000..bbc302e262 --- /dev/null +++ b/gui-apps/quickshell/Manifest @@ -0,0 +1 @@ +DIST quickshell-0.1.0.tar.gz 369915 BLAKE2B 70bc328a133b2d6b736d130228a90270e9941d150748497e3e4144568f2c524e726c788c6778b1f3f408a369144548edfe2d98caf4031ed4430b5d1c93d2a990 SHA512 6113f0b7b8860ed301f9c950ba2378b46669280b79088a408ce6410f50df59e615e7003270c0e37cae4e673815dcb0ba863f16a2fa0b11b5a3b9d88069343682 diff --git a/gui-apps/quickshell/metadata.xml b/gui-apps/quickshell/metadata.xml new file mode 100644 index 0000000000..129bd354b5 --- /dev/null +++ b/gui-apps/quickshell/metadata.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Maxwell Blake</name> + </maintainer> + <longdescription> + Quickshell is a toolkit for building status bars, widgets, lockscreens, + and other desktop components using QtQuick. It can be used alongside + your wayland compositor or window manager to build a complete desktop environment. + </longdescription> + <use> + <flag name="breakpad">Enable Google's <pkg>dev-util/breakpad</pkg> crash reporter</flag> + <flag name="sockets">Enable Unix Sockets (WARNING: Disabling is unsafe!)</flag> + <flag name="layer-shell">Enable wlroots layershell integration through the zwlr-layer-shell-v1 protocol</flag> + <flag name="session-lock">Enable session lock support through the ext-session-lock-v1 protocol</flag> + <flag name="toplevel-management">Enable management of windows through zwlr-foreign-toplevel-management-v1 protocol</flag> + <flag name="screencopy">Enable streaming video from monitors and toplevel windows through various protocols</flag> + <flag name="pipewire">Enable viewing and management of <pkg>media-video/pipewire</pkg> nodes</flag> + <flag name="tray">Enable system tray support using the status notifier dbus protocol</flag> + <flag name="mpris">Enable access to MPRIS compatible media players using its dbus protocol</flag> + <flag name="hyprland">Enable <pkg>gui-wm/hyprland</pkg> specific integrations</flag> + <flag name="hyprland-global-shortcuts">Enable creation of global shortcuts under <pkg>gui-wm/hyprland</pkg> through the hyprland-global-shortcuts-v1 protocol</flag> + <flag name="hyprland-focus-grab">Enables windows to grab focus on <pkg>gui-wm/hyprland</pkg> through the hyprland-focus-grab-v1 protocol</flag> + <flag name="i3">Enable <pkg>x11-wm/i3</pkg> and <pkg>gui-wm/sway</pkg> specific features</flag> + <flag name="i3-ipc">Enable interfacing with <pkg>x11-wm/i3</pkg> and <pkg>gui-wm/sway</pkg>'s IPC</flag> + </use> + <upstream> + <doc>https://quickshell.outfoxxed.me/docs/types/</doc> + <bugs-to>https://github.com/quickshell-mirror/quickshell/issues</bugs-to> + <remote-id type="github">quickshell-mirror/quickshell</remote-id> + </upstream> +</pkgmetadata> diff --git a/gui-apps/quickshell/quickshell-0.1.0.ebuild b/gui-apps/quickshell/quickshell-0.1.0.ebuild new file mode 100644 index 0000000000..d23b474831 --- /dev/null +++ b/gui-apps/quickshell/quickshell-0.1.0.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Toolkit for building desktop widgets using QtQuick" +HOMEPAGE="https://quickshell.outfoxxed.me/" +SRC_URI="https://github.com/quickshell-mirror/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +S="${WORKDIR}/${PN}" + +LICENSE="LGPL-3" +SLOT="0" +KEYWORDS="~amd64" +# Upstream recommends leaving all build options enabled by default +IUSE="+breakpad +jemalloc +sockets +wayland +layer-shell +session-lock +toplevel-management +screencopy +X +pipewire +tray +mpris +pam +hyprland +hyprland-global-shortcuts +hyprland-focus-grab +i3 +i3-ipc" + +RDEPEND=" + dev-qt/qtbase:6 + dev-qt/qtsvg:6 + jemalloc? ( dev-libs/jemalloc ) + wayland? ( + dev-libs/wayland + dev-qt/qtwayland:6 + ) + screencopy? ( + x11-libs/libdrm + media-libs/mesa + ) + X? ( x11-libs/libxcb ) + pipewire? ( media-video/pipewire ) + mpris? ( dev-qt/qtdbus ) + pam? ( sys-libs/pam ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + || ( >=sys-devel/gcc-14:* >=llvm-core/clang-17:* ) + dev-build/cmake + dev-build/ninja + virtual/pkgconfig + dev-cpp/cli11 + dev-util/spirv-tools + dev-qt/qtshadertools:6 + breakpad? ( dev-util/breakpad ) + wayland? ( + dev-util/wayland-scanner + dev-libs/wayland-protocols + ) +" + +src_configure(){ + mycmakeargs=( + -DCMAKE_BUILD_TYPE=RelWithDebInfo + -DDISTRIBUTOR="Gentoo GURU" + -DINSTALL_QML_PREFIX="lib64/qt6/qml" + -DCRASH_REPORTER=$(usex breakpad ON OFF) + -DUSE_JEMALLOC=$(usex jemalloc ON OFF) + -DSOCKETS=$(usex sockets ON OFF) + -DWAYLAND=$(usex wayland ON OFF) + -DWAYLAND_WLR_LAYERSHELL=$(usex layer-shell ON OFF) + -DWAYLAND_SESSION_LOCK=$(usex session-lock ON OFF) + -DWAYLAND_TOPLEVEL_MANAGEMENT=$(usex toplevel-management ON OFF) + -DSCREENCOPY=$(usex screencopy ON OFF) + -DX11=$(usex X ON OFF) + -DSERVICE_PIPEWIRE=$(usex pipewire ON OFF) + -DSERVICE_STATUS_NOTIFIER=$(usex tray ON OFF) + -DSERVICE_MPRIS=$(usex mpris ON OFF) + -DSERVICE_PAM=$(usex pam ON OFF) + -DHYPRLAND=$(usex hyprland ON OFF) + -DHYPRLAND_GLOBAL_SHORTCUTS=$(usex hyprland-global-shortcuts) + -DHYPRLAND_FOCUS_GRAB=$(usex hyprland-focus-grab) + -DI3=$(usex i3 ON OFF) + -DI3_IPC=$(usex i3-ipc ON OFF) + ) + cmake_src_configure +}
