From 2eee121080f0cfd7d1161c18fa89311cfa381e72 Mon Sep 17 00:00:00 2001 From: Maxwell Blake Date: Sat, 21 Jun 2025 18:20:15 +0200 Subject: [PATCH] gui-apps/quickshell: new package, add 0.1.0 Signed-off-by: Maxwell Blake --- 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(+) create mode 100644 gui-apps/quickshell/Manifest create mode 100644 gui-apps/quickshell/metadata.xml create mode 100644 gui-apps/quickshell/quickshell-0.1.0.ebuild 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 @@ + + + + + frailedev@proton.me + Maxwell Blake + + + 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. + + + Enable Google's dev-util/breakpad crash reporter + Enable Unix Sockets (WARNING: Disabling is unsafe!) + Enable wlroots layershell integration through the zwlr-layer-shell-v1 protocol + Enable session lock support through the ext-session-lock-v1 protocol + Enable management of windows through zwlr-foreign-toplevel-management-v1 protocol + Enable streaming video from monitors and toplevel windows through various protocols + Enable viewing and management of media-video/pipewire nodes + Enable system tray support using the status notifier dbus protocol + Enable access to MPRIS compatible media players using its dbus protocol + Enable gui-wm/hyprland specific integrations + Enable creation of global shortcuts under gui-wm/hyprland through the hyprland-global-shortcuts-v1 protocol + Enables windows to grab focus on gui-wm/hyprland through the hyprland-focus-grab-v1 protocol + Enable x11-wm/i3 and gui-wm/sway specific features + Enable interfacing with x11-wm/i3 and gui-wm/sway's IPC + + + https://quickshell.outfoxxed.me/docs/types/ + https://github.com/quickshell-mirror/quickshell/issues + quickshell-mirror/quickshell + + 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 +}