added liveebuilds

This commit is contained in:
jwihardi
2025-10-03 14:40:51 -04:00
parent cd622e9f81
commit 4a31d538c6
12 changed files with 308 additions and 20 deletions
@@ -0,0 +1,28 @@
# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake git-r3
DESCRIPTION="Hyprland graphics / resource utilities (live/HEAD)"
HOMEPAGE="https://github.com/hyprwm/hyprgraphics"
# For live ebuilds, Portage clones the git repo
EGIT_REPO_URI="https://github.com/hyprwm/hyprgraphics.git"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
>=gui-libs/hyprutils-0.1.1:=
media-libs/libjpeg-turbo:=
media-libs/libjxl:=
media-libs/libspng
media-libs/libwebp:=
sys-apps/file
x11-libs/cairo
"
DEPEND="${RDEPEND}"
@@ -0,0 +1,35 @@
# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake git-r3
DESCRIPTION="QML style provider for hypr* Qt apps"
HOMEPAGE="https://github.com/hyprwm/hyprland-qt-support"
EGIT_REPO_URI="https://github.com/hyprwm/hyprland-qt-support.git"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64"
RDEPEND="
dev-qt/qtbase:6
dev-qt/qtdeclarative:6
>=dev-libs/hyprlang-0.6.0
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
"
src_configure() {
local mycmakeargs=(
-DINSTALL_QML_PREFIX="${EPFREIX}/$(get_libdir)/qt6/qml"
)
cmake_src_configure
}
@@ -0,0 +1,26 @@
# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake git-r3
DESCRIPTION="Hyprland QT/qml utility apps"
HOMEPAGE="https://github.com/hyprwm/hyprland-qtutils"
EGIT_REPO_URI="https://github.com/hyprwm/hyprland-qtutils.git"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="
dev-qt/qtbase:6
dev-qt/qtdeclarative:6
dev-qt/qtwayland:6
gui-libs/hyprutils:=
gui-libs/hyprland-qt-support
kde-frameworks/qqc2-desktop-style:6
"
DEPEND="${RDEPEND}"
@@ -0,0 +1,25 @@
# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake toolchain-funcs git-r3
DESCRIPTION="Official implementation library for the hypr config language"
HOMEPAGE="https://github.com/hyprwm/hyprlang"
EGIT_REPO_URI="https://github.com/hyprwm/hyprlang.git"
LICENSE="LGPL-3"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND=">=gui-libs/hyprutils-0.7.1:="
DEPEND="${RDEPEND}"
BDEPEND="|| ( >=sys-devel/gcc-14:* >=llvm-core/clang-18:* )"
pkg_setup() {
[[ ${MERGE_TYPE} == binary ]] && return
tc-check-min_ver gcc 14
tc-check-min_ver clang 18
}
@@ -0,0 +1,37 @@
# Copyright 2024-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake toolchain-funcs
DESCRIPTION="A Hyprland implementation of wayland-scanner, in and for C++"
HOMEPAGE="https://github.com/hyprwm/hyprwayland-scanner/"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/hyprwm/hyprwayland-scanner.git"
inherit git-r3
else
SRC_URI="https://github.com/hyprwm/hyprwayland-scanner/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
fi
LICENSE="BSD"
KEYWORDS="amd64 arm64 x86"
SLOT="0"
RDEPEND=">=dev-libs/pugixml-1.14"
DEPEND="${RDEPEND}"
pkg_setup() {
[[ ${MERGE_TYPE} == binary ]] && return
if tc-is-gcc && ver_test $(gcc-version) -lt 13 ; then
eerror "Hyprland requires >=sys-devel/gcc-13 to build"
eerror "Please upgrade GCC: emerge -v1 sys-devel/gcc"
die "GCC version is too old to compile Hyprland!"
elif tc-is-clang && ver_test $(clang-version) -lt 16 ; then
eerror "Hyprland requires >=llvm-core/clang-16 to build"
eerror "Please upgrade Clang: emerge -v1 llvm-core/clang"
die "Clang version is too old to compile Hyprland!"
fi
}
@@ -8,14 +8,13 @@ HOMEPAGE=""
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="amd64 arm64 x86"
RESTRICT="strip"
DEPEND=""
RDEPEND="
gui-apps/hypridle
gui-libs/hyprcursor
gui-wm/hyprland
gui-libs/hyprland-qtutils
gui-libs/hyprland-qt-support
dev-libs/hyprlang
@@ -23,6 +22,10 @@ RDEPEND="
gui-apps/hyprpicker
gui-apps/hyprsunset
gui-libs/hyprutils
dev-libs/hyprland-protocols
dev-libs/hyprgraphics
gui-libs/aquamarine
gui-wm/hyprland
dev-util/hyprwayland-scanner
gui-libs/xdg-desktop-portal-hyprland
gui-apps/wl-clipboard
@@ -0,0 +1,9 @@
hyprland
hyprgraphics
hyprutils
hyprlang
hyprwayland-scanner
hyprcursor
hypr-qt-support
hypr-qt-utils
@@ -0,0 +1,84 @@
# 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.org/"
if [[ "${PV}" = *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/quickshell-mirror/${PN^}.git"
else
SRC_URI="https://github.com/quickshell-mirror/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
fi
LICENSE="LGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
# 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 +bluetooth"
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 )
bluetooth? ( net-wireless/bluez )
"
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)
-DBLUETOOTH=$(usex bluetooth ON OFF)
)
cmake_src_configure
}
+33 -14
View File
@@ -9,9 +9,10 @@ fi
arch=$(portageq envvar ACCEPT_KEYWORDS)
# Exclude hyprland, will deal with that separately
metapkgs=(illogical-impulse-{audio,backlight,basic,bibata-modern-classic-bin,fonts-themes,hyprland,kde,microtex-git,oneui4-icons-git,portal,python,screencapture,toolkit,widgets})
ebuild_dir="/var/db/repos/localrepo/app-misc"
ebuild_dir="/var/db/repos/localrepo"
# Unmasks
x cp ./dist-gentoo/keywords ./dist-gentoo/keywords-user
@@ -22,24 +23,42 @@ v sudo cp ./dist-gentoo/keywords-user /etc/portage/package.accept_keywords/end4
v sudo cp ./dist-gentoo/useflags /etc/portage/package.use/end4
# Update system
#v sudo emerge --sync
#v sudo emerge --ask --verbose --newuse --update --deep @world
#v sudo emerge --depclean
v sudo emerge --sync
v sudo emerge --ask --verbose --newuse --update --deep @world
v sudo emerge --depclean
# Remove old ebuilds (if this isn't done the wildcard will fuck upon a version change)
x sudo rm -r ${ebuild_dir}/illogical-impulse-*
x sudo rm -fr ${ebuild_dir}/app-misc/illogical-impulse-*
###### LIVE EBUILDS START
HYPR_DIR="illogical-impulse-hyprland"
x sudo mkdir -p ${ebuild_dir}/dev-libs/hyprgraphics/
x sudo mkdir -p ${ebuild_dir}/gui-libs/hyprland-qt-support
x sudo mkdir -p ${ebuild_dir}/gui-libs/hyprland-qtutils
x sudo mkdir -p ${ebuild_dir}/dev-libs/hyprlang
x sudo mkdir -p ${ebuild_dir}/dev-libs/hyprlang
x sudo mkdir -p ${ebuild_dir}/dev-util/hyprwayland-scanner
v sudo cp ./dist-gentoo/${HYPR_DIR}/hyprgraphics*.ebuild ${ebuild_dir}/dev-libs/hyprgraphics
v sudo cp ./dist-gentoo/${HYPR_DIR}/hyprland-qt-support*.ebuild ${ebuild_dir}/gui-libs/hyprland-qt-support
v sudo cp ./dist-gentoo/${HYPR_DIR}/hyprland-qtutils*.ebuild ${ebuild_dir}/gui-libs/hyprland-qtutils
v sudo cp ./dist-gentoo/${HYPR_DIR}/hyprlang*.ebuild ${ebuild_dir}/dev-libs/hyprlang
v sudo cp ./dist-gentoo/${HYPR_DIR}/hyprwayland-scanner*.ebuild ${ebuild_dir}/dev-util/hyprwayland-scanner
v sudo ebuild ${ebuild_dir}/dev-libs/hyprgraphics/hyprgraphics*9999.ebuild digest
v sudo ebuild ${ebuild_dir}/gui-libs/hyprland-qt-support/hyprland-qt-support*9999.ebuild digest
v sudo ebuild ${ebuild_dir}/gui-libs/hyprland-qtutils/hyprland-qtutils*9999.ebuild digest
v sudo ebuild ${ebuild_dir}/dev-libs/hyprlang/hyprlang*9999.ebuild digest
v sudo ebuild ${ebuild_dir}/dev-util/hyprwayland-scanner/hyprwayland-scanner*9999.ebuild digest
###### LIVE EBUILDS END
# Install dependencies
to_install=""
for i in "${metapkgs[@]}"; do
x sudo mkdir -p ${ebuild_dir}/${i}
v sudo cp ./dist-gentoo/${i}/${i}*.ebuild ${ebuild_dir}/${i}/
v sudo ebuild ${ebuild_dir}/${i}/*.ebuild digest
to_install+="app-misc/${i} "
x sudo mkdir -p ${ebuild_dir}/app-misc/${i}
v sudo cp ./dist-gentoo/${i}/${i}*.ebuild ${ebuild_dir}/app-misc/${i}/
v sudo ebuild ${ebuild_dir}/app-misc/${i}/*.ebuild digest
v sudo emerge --quiet app-misc/${i}
done
# Easier to debug when it's all installed at once
#v sudo emerge --quiet ${to_install}
+4 -2
View File
@@ -25,8 +25,10 @@ else
echo "test"
fi
v sudo chown $(whoami):$(whoami) ~/.local/share/icons
v sudo chown $(whoami):$(whoami) ~/.local/share/konsole
v sudo chown -R $(whoami):$(whoami) ~/.local/share/icons/
v sudo chown -R $(whoami):$(whoami) ~/.local/share/konsole/
v sudo chown -R $(whoami):$(whoami) ~/.config/hypr/
v sudo chown -R $(whoami):$(whoami) ~/.config/quickshell/
v gsettings set org.gnome.desktop.interface font-name 'Rubik 11'
v gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
+11 -1
View File
@@ -23,6 +23,16 @@ gui-apps/hyprshot
gui-apps/wf-recorder
gui-apps/wtype
gui-apps/fuzzel
gui-apps/quickshell
gui-apps/quickshell **
gui-apps/wlogout
dev-cpp/sdbus-c++
dev-libs/hyprland-protocols **
gui-libs/aquamarine **
gui-libs/hyprutils **
dev-util/hyprwayland-scanner **
dev-libs/hyprlang **
dev-libs/hyprgraphicss **
gui-libs/hyprcursor **
gui-libs/hyprland-qt-support **
gui-libs/hyprland-qtutils **
gui-wm/hyprland **
+11 -1
View File
@@ -23,6 +23,16 @@ gui-apps/hyprshot ~amd64
gui-apps/wf-recorder ~amd64
gui-apps/wtype ~amd64
gui-apps/fuzzel ~amd64
gui-apps/quickshell ~amd64
gui-apps/quickshell ** ~amd64
gui-apps/wlogout ~amd64
dev-cpp/sdbus-c++ ~amd64
dev-libs/hyprland-protocols ** ~amd64
gui-libs/aquamarine ** ~amd64
gui-libs/hyprutils ** ~amd64
dev-util/hyprwayland-scanner ** ~amd64
dev-libs/hyprlang ** ~amd64
dev-libs/hyprgraphicss ** ~amd64
gui-libs/hyprcursor ** ~amd64
gui-libs/hyprland-qt-support ** ~amd64
gui-libs/hyprland-qtutils ** ~amd64
gui-wm/hyprland ** ~amd64