commit: 4ed90d44b0784eb5f344b1a2cfa5613509f8aa9b
Author: dsaf <ghostyn678+git <AT> gmail <DOT> com>
AuthorDate: Mon Mar 9 23:32:53 2026 +0000
Commit: dsaf <ghostyn678+git <AT> gmail <DOT> com>
CommitDate: Mon Mar 9 23:32:53 2026 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4ed90d44
gui-apps/quickshell: remake use flags, add 0.2.1-r1, drop 0.2.1
* Missing USE flags were added and others merged (i.e. Hyprland)
* Add myself as a maintainer
Signed-off-by: dsaf <ghostyn678+git <AT> gmail.com>
gui-apps/quickshell/metadata.xml | 13 +++--
...ell-0.2.1.ebuild => quickshell-0.2.1-r1.ebuild} | 56 +++++++++++++++-------
gui-apps/quickshell/quickshell-9999.ebuild | 54 +++++++++++++++------
3 files changed, 86 insertions(+), 37 deletions(-)
diff --git a/gui-apps/quickshell/metadata.xml b/gui-apps/quickshell/metadata.xml
index fc4338c216..f995d3bfd8 100644
--- a/gui-apps/quickshell/metadata.xml
+++ b/gui-apps/quickshell/metadata.xml
@@ -5,13 +5,16 @@
<email>[email protected]</email>
<name>Maxwell Blake</name>
</maintainer>
+ <maintainer type="person">
+ <email>[email protected]</email>
+ <name>dsaf</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.
+ 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>
@@ -23,11 +26,11 @@
<flag name="pam">Enable <pkg>sys-libs/pam</pkg> integration for
user authentication</flag>
<flag name="polkit">Enable creating <pkg>sys-auth/polkit</pkg>
agents that can prompt user for authentication</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>
<flag name="bluetooth">Enable Bluetooth integration using
<pkg>net-wireless/bluez</pkg></flag>
+ <flag name="greetd">Enable <pkg>gui-libs/greetd</pkg>
integration</flag>
+ <flag name="network">Enable Network integration using
<pkg>net-misc/networkmanager</pkg></flag>
+ <flag name="notifications">Enable notifications service
integration</flag>
</use>
<upstream>
<doc>https://quickshell.org/about/</doc>
diff --git a/gui-apps/quickshell/quickshell-0.2.1.ebuild
b/gui-apps/quickshell/quickshell-0.2.1-r1.ebuild
similarity index 61%
rename from gui-apps/quickshell/quickshell-0.2.1.ebuild
rename to gui-apps/quickshell/quickshell-0.2.1-r1.ebuild
index e3537919fb..257f51d00f 100644
--- a/gui-apps/quickshell/quickshell-0.2.1.ebuild
+++ b/gui-apps/quickshell/quickshell-0.2.1-r1.ebuild
@@ -20,15 +20,23 @@ fi
LICENSE="LGPL-3"
SLOT="0"
+
# 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 +polkit +hyprland
- +hyprland-global-shortcuts +hyprland-focus-grab
- +i3 +i3-ipc +bluetooth
+ +jemalloc +sockets
+ +wayland +layer-shell +session-lock +toplevel-management
+ +hyprland +screencopy
+ +X +i3
+ +tray +pipewire +mpris +pam +greetd +upower +notifications
+ +bluetooth +breakpad
+"
+REQUIRED_USE="
+ layer-shell? ( wayland )
+ session-lock? ( wayland )
+ toplevel-management? ( wayland )
+ hyprland? ( wayland )
+ screencopy? ( wayland )
"
-REQUIRED_USE="screencopy? ( toplevel-management )"
RDEPEND="
dev-qt/qtbase:6=[dbus]
@@ -46,17 +54,15 @@ RDEPEND="
X? ( x11-libs/libxcb )
pipewire? ( media-video/pipewire )
pam? ( sys-libs/pam )
- polkit? (
- sys-auth/polkit
- dev-libs/glib
- )
bluetooth? ( net-wireless/bluez )
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
dev-cpp/cli11
+ dev-util/spirv-tools
dev-qt/qtshadertools:6
+ screencopy? ( dev-util/vulkan-headers )
breakpad? ( dev-util/breakpad )
wayland? (
dev-util/wayland-scanner
@@ -65,6 +71,13 @@ BDEPEND="
"
src_configure() {
+ # hyprland controls all Hyprland sub-features as a group.
+ # i3 controls I3/Sway IPC.
+ # screencopy controls all screencopy backends (icc, wlr,
hyprland-toplevel).
+ local _hyprland=$(usex hyprland ON OFF)
+ local _screencopy=$(usex screencopy ON OFF)
+ local _i3=$(usex i3 ON OFF)
+
local mycmakeargs=(
-DCMAKE_BUILD_TYPE=Release
-DDISTRIBUTOR="${BRANDING_OS_NAME} GURU"
@@ -77,18 +90,25 @@ src_configure() {
-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)
+ -DHYPRLAND=${_hyprland}
+ -DHYPRLAND_IPC=${_hyprland}
+ -DHYPRLAND_GLOBAL_SHORTCUTS=${_hyprland}
+ -DHYPRLAND_FOCUS_GRAB=${_hyprland}
+ -DHYPRLAND_SURFACE_EXTENSIONS=${_hyprland}
+ -DSCREENCOPY=${_screencopy}
+ -DSCREENCOPY_ICC=${_screencopy}
+ -DSCREENCOPY_WLR=${_screencopy}
+ -DSCREENCOPY_HYPRLAND_TOPLEVEL=${_screencopy}
-DX11=$(usex X ON OFF)
- -DSERVICE_PIPEWIRE=$(usex pipewire ON OFF)
+ -DI3=${_i3}
+ -DI3_IPC=${_i3}
-DSERVICE_STATUS_NOTIFIER=$(usex tray ON OFF)
+ -DSERVICE_PIPEWIRE=$(usex pipewire ON OFF)
-DSERVICE_MPRIS=$(usex mpris ON OFF)
-DSERVICE_PAM=$(usex pam ON OFF)
- -DSERVICE_POLKIT=$(usex polkit 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)
+ -DSERVICE_GREETD=$(usex greetd ON OFF)
+ -DSERVICE_UPOWER=$(usex upower ON OFF)
+ -DSERVICE_NOTIFICATIONS=$(usex notifications ON OFF)
-DBLUETOOTH=$(usex bluetooth ON OFF)
)
cmake_src_configure
diff --git a/gui-apps/quickshell/quickshell-9999.ebuild
b/gui-apps/quickshell/quickshell-9999.ebuild
index 6c54ac13f1..111ab001b9 100644
--- a/gui-apps/quickshell/quickshell-9999.ebuild
+++ b/gui-apps/quickshell/quickshell-9999.ebuild
@@ -20,16 +20,23 @@ LICENSE="LGPL-3"
SLOT="0"
# Upstream recommends leaving all build options enabled by default
IUSE="
- +jemalloc +sockets +wayland +layer-shell
- +session-lock +toplevel-management +screencopy +X
- +pipewire +tray +mpris +pam +polkit +hyprland
- +hyprland-global-shortcuts +hyprland-focus-grab
- +i3 +i3-ipc +bluetooth
+ +jemalloc +sockets
+ +wayland +layer-shell +session-lock +toplevel-management
+ +hyprland +screencopy
+ +X +i3
+ +tray +pipewire +mpris +pam +polkit +greetd +upower +notifications
+ +bluetooth +network
+"
+REQUIRED_USE="
+ layer-shell? ( wayland )
+ session-lock? ( wayland )
+ toplevel-management? ( wayland )
+ hyprland? ( wayland )
+ screencopy? ( wayland )
"
-REQUIRED_USE="screencopy? ( toplevel-management )"
RDEPEND="
- dev-qt/qtbase:6=[dbus]
+ dev-qt/qtbase:6=[dbus,vulkan]
dev-qt/qtsvg:6=
dev-qt/qtdeclarative:6=
jemalloc? ( dev-libs/jemalloc )
@@ -49,12 +56,15 @@ RDEPEND="
dev-libs/glib
)
bluetooth? ( net-wireless/bluez )
+ network? ( net-misc/networkmanager )
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
dev-cpp/cli11
+ dev-util/spirv-tools
dev-qt/qtshadertools:6
+ screencopy? ( dev-util/vulkan-headers )
wayland? (
dev-util/wayland-scanner
dev-libs/wayland-protocols
@@ -67,6 +77,13 @@ src_configure() {
append-flags -fno-strict-aliasing
filter-lto
+ # hyprland controls all Hyprland sub-features as a group.
+ # i3 controls I3/Sway IPC.
+ # screencopy controls all screencopy backends (icc, wlr,
hyprland-toplevel).
+ local _hyprland=$(usex hyprland ON OFF)
+ local _screencopy=$(usex screencopy ON OFF)
+ local _i3=$(usex i3 ON OFF)
+
local mycmakeargs=(
-DCMAKE_BUILD_TYPE=Release
-DDISTRIBUTOR="${BRANDING_OS_NAME} GURU"
@@ -78,19 +95,28 @@ src_configure() {
-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)
+ -DHYPRLAND=${_hyprland}
+ -DHYPRLAND_IPC=${_hyprland}
+ -DHYPRLAND_GLOBAL_SHORTCUTS=${_hyprland}
+ -DHYPRLAND_FOCUS_GRAB=${_hyprland}
+ -DHYPRLAND_SURFACE_EXTENSIONS=${_hyprland}
+ -DSCREENCOPY=${_screencopy}
+ -DSCREENCOPY_ICC=${_screencopy}
+ -DSCREENCOPY_WLR=${_screencopy}
+ -DSCREENCOPY_HYPRLAND_TOPLEVEL=${_screencopy}
-DX11=$(usex X ON OFF)
- -DSERVICE_PIPEWIRE=$(usex pipewire ON OFF)
+ -DI3=${_i3}
+ -DI3_IPC=${_i3}
-DSERVICE_STATUS_NOTIFIER=$(usex tray ON OFF)
+ -DSERVICE_PIPEWIRE=$(usex pipewire ON OFF)
-DSERVICE_MPRIS=$(usex mpris ON OFF)
-DSERVICE_PAM=$(usex pam ON OFF)
-DSERVICE_POLKIT=$(usex polkit 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)
+ -DSERVICE_GREETD=$(usex greetd ON OFF)
+ -DSERVICE_UPOWER=$(usex upower ON OFF)
+ -DSERVICE_NOTIFICATIONS=$(usex notifications ON OFF)
-DBLUETOOTH=$(usex bluetooth ON OFF)
+ -DNETWORK=$(usex network ON OFF)
)
cmake_src_configure
}