dist-gentoo updates (#2155)

This commit is contained in:
Celestial.y
2025-10-15 15:39:16 +08:00
committed by GitHub
9 changed files with 88 additions and 26 deletions
+10
View File
@@ -26,10 +26,13 @@ Note:
4. gsettings and kwriteconfig6 are set (same as dist-arch). 4. gsettings and kwriteconfig6 are set (same as dist-arch).
## Recommended use flags (useflags) ## Recommended use flags (useflags)
- **The recommended useflags are not required, this is a more out of the box experience with these**
- Pipewire is used, alsa and pulseaudio are disabled (enabling them won't hurt). - Pipewire is used, alsa and pulseaudio are disabled (enabling them won't hurt).
- Init system is not assumed or considered so disabling systemd should be done in make.conf, same with session managers (elogind is recommended). - Init system is not assumed or considered so disabling systemd should be done in make.conf, same with session managers (elogind is recommended).
## Making the dot-files work ## Making the dot-files work
- elogind is expected to be installed and run as a service on OpenRC to set ```XDG_RUNTIME_DIR```
- NOT recommended: seatd will require more manual setup
- pipewire, pipewire-pulse, and wireplumber must be started after a dbus-session is created and before Hyprland is launched. - pipewire, pipewire-pulse, and wireplumber must be started after a dbus-session is created and before Hyprland is launched.
If you want to start after logging into tty1 you can do something like this. If you want to start after logging into tty1 you can do something like this.
@@ -49,3 +52,10 @@ if status --is-interactive; and [ (tty) = "/dev/tty1" ]
exec Hyprland exec Hyprland
end end
``` ```
## Known Issues
- If Hyprland is just blank, rebuild Quickshell (emerge -q gui-apps/quickshell)
- ```Hyprland: error while loading shared libraries: libhyprgraphics.so.0: cannot open shared object file: No such file or directory```
- The Hyprland live ebuild sometimes has linkage issues, deleting _Hyprland_ and _hyprland_ from ```/usr/bin/``` and then re-emerging usually fixes this.
- When emerging Hyprland if you get an issue relating to```undefined reference to `Hyprutils::Math::Vector2D::˜Vector2D()` ```
- Clear the cache folder (```rm -fr /var/tmp/portage/gui-wm/hyprland*```) then try again
+29
View File
@@ -0,0 +1,29 @@
############ Additional needed useflags
x11-libs/cairo X
dev-cpp/cairomm X
dev-python/pycairo X
media-libs/libglvnd X
x11-libs/libxkbcommon X
media-libs/libpulse X
media-plugins/alsa-plugins pulseaudio
kde-frameworks/kcoreaddons dbus
kde-frameworks/prison qml
kde-frameworks/kguiaddons X dbus wayland
kde-frameworks/kidletime X wayland
kde-frameworks/kwindowsystem X wayland
kde-frameworks/kconfig dbus qml
kde-frameworks/sonnet qml
x11-base/xwayland libei
sys-apps/dbus X
sys-libs/zlib minizip
dev-qt/qtquick3d opengl
media-video/ffmpeg X bzip2 dav1d drm fontconfig gnutls gpl libass opencl opengl openh264 opus postproc svg truetype vaapi vpx vulkan x264 x265 xml zlib
media-libs/leptonica jpeg png zlib tiff webp
media-libs/libva X wayland
app-text/xmlto text
app-crypt/gcr gtk
media-video/vlc wayland ogg dbus mp3
dev-libs/qcoro dbus qml
media-libs/freetype harfbuzz
media-libs/mesa wayland
x11-libs/gtk+ wayland
@@ -3,6 +3,7 @@
EAPI=8 EAPI=8
DART_SASS_VER=1.78.0 DART_SASS_VER=1.78.0
SPACE_GROTESK_VER=1.1.4
DESCRIPTION="Illogical Impulse Fonts and Theming Dependencies" DESCRIPTION="Illogical Impulse Fonts and Theming Dependencies"
HOMEPAGE="" HOMEPAGE=""
@@ -11,11 +12,13 @@ https://github.com/Bali10050/Darkly/archive/refs/heads/main.tar.gz -> ${P}-darkl
https://github.com/naipefoundry/gabarito/archive/refs/heads/main.tar.gz -> ${P}-gabarito.tar.gz https://github.com/naipefoundry/gabarito/archive/refs/heads/main.tar.gz -> ${P}-gabarito.tar.gz
https://github.com/googlefonts/rubik/archive/refs/heads/main.tar.gz -> ${P}-rubik.tar.gz https://github.com/googlefonts/rubik/archive/refs/heads/main.tar.gz -> ${P}-rubik.tar.gz
https://github.com/ThomasJockin/readexpro/archive/refs/heads/master.tar.gz -> ${P}-readexpro.tar.gz https://github.com/ThomasJockin/readexpro/archive/refs/heads/master.tar.gz -> ${P}-readexpro.tar.gz
https://github.com/google/material-design-icons/archive/refs/heads/main.tar.gz -> ${P}-material-design-icons.tar.gz
https://github.com/mjkim0727/breeze-plus/archive/refs/heads/main.tar.gz -> ${P}-breeze-plus.tar.gz https://github.com/mjkim0727/breeze-plus/archive/refs/heads/main.tar.gz -> ${P}-breeze-plus.tar.gz
https://github.com/lassekongo83/adw-gtk3/archive/refs/heads/main.tar.gz -> ${P}-adw-gtk3.tar.gz https://github.com/lassekongo83/adw-gtk3/archive/refs/heads/main.tar.gz -> ${P}-adw-gtk3.tar.gz
https://github.com/google/material-design-icons/raw/refs/heads/master/variablefont/MaterialSymbolsOutlined%5BFILL,GRAD,opsz,wght%5D.ttf -> MaterialSymbolsOutlined.ttf
https://github.com/google/material-design-icons/raw/refs/heads/master/variablefont/MaterialSymbolsRounded%5BFILL,GRAD,opsz,wght%5D.ttf -> MaterialSymbolsRounded.ttf
https://github.com/google/material-design-icons/raw/refs/heads/master/variablefont/MaterialSymbolsSharp%5BFILL,GRAD,opsz,wght%5D.ttf -> MaterialSymbolsSharp.ttf
https://github.com/floriankarsten/space-grotesk/archive/refs/tags/${SPACE_GROTESK_VER}.tar.gz -> ${P}-space-grotesk-${SPACE_GROTESK_VER}.tar.gz
" "
LICENSE="GPL-2" LICENSE="GPL-2"
SLOT="0" SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86" KEYWORDS="~amd64 ~arm64 ~x86"
@@ -40,9 +43,9 @@ S_DARKLY="${S}/Darkly-main"
S_GABARITO="${S}/gabarito-main" S_GABARITO="${S}/gabarito-main"
S_RUBIK="${S}/rubik-main" S_RUBIK="${S}/rubik-main"
S_READEXPRO="${S}/readexpro-master" S_READEXPRO="${S}/readexpro-master"
S_MATERIAL_DESIGN_ICONS="${S}/material-design-icons-main"
S_ADW_GTK3="${S}/adw-gtk3-main" S_ADW_GTK3="${S}/adw-gtk3-main"
S_BREEZE_PLUS="${S}/breeze-plus-main" S_BREEZE_PLUS="${S}/breeze-plus-main"
S_SPACE_GROTESK="${S}/space-grotesk-${SPACE_GROTESK_VER}"
src_unpack() { src_unpack() {
default default
@@ -72,8 +75,11 @@ src_install() {
insinto /usr/share/fonts/ttf-readex-pro insinto /usr/share/fonts/ttf-readex-pro
doins "${S_READEXPRO}"/fonts/ttf/*.ttf doins "${S_READEXPRO}"/fonts/ttf/*.ttf
insinto /usr/share/fonts/ttf-material-design-icons insinto /usr/share/fonts/material-symbols
doins "${S_MATERIAL_DESIGN_ICONS}"/font/*.ttf doins "${DISTDIR}"/MaterialSymbols*.ttf
insinto /usr/share/fonts/OTF
doins "${S_SPACE_GROTESK}"/fonts/otf/*.otf
insinto /usr/share/themes insinto /usr/share/themes
doins -r "${S_BREEZE_PLUS}"/src/breeze-plus* doins -r "${S_BREEZE_PLUS}"/src/breeze-plus*
@@ -1,9 +0,0 @@
hyprland
hyprgraphics
hyprutils
hyprlang
hyprwayland-scanner
hyprcursor
hypr-qt-support
hypr-qt-utils
@@ -18,4 +18,5 @@ RDEPEND="
gui-apps/quickshell gui-apps/quickshell
app-i18n/translate-shell app-i18n/translate-shell
gui-apps/wlogout gui-apps/wlogout
media-gfx/imagemagick
" "
+25 -7
View File
@@ -1,21 +1,37 @@
printf "${STY_YELLOW}" printf "${STY_YELLOW}"
printf "============WARNING/NOTE============\n" printf "============WARNING/NOTE (1)============\n"
printf "GCC in use: $(which gcc)\n" printf "GCC in use: $(which gcc)\n"
printf "GCC version info: $(gcc --version | grep gcc)\n" printf "GCC version info: $(gcc --version | grep gcc)\n"
printf "GCC version number: $(gcc --version | grep gcc | awk '{print $3}')\n" printf "GCC version number: $(gcc --version | grep gcc | awk '{print $3}')\n"
printf "GCC-15>= is required for Hyprland\n" printf "GCC-15>= is required for Hyprland\n"
printf "If you have GCC-15>= and it's currently set then you can safely ignore this\n" printf "If you have GCC-15>= and it's currently set then you can safely ignore this\n"
printf "If not, you must ensure you are using the correct GCC version and set it (gcc-config <number>), then emerge re-emerge @world with an empty tree (emerge -e @world)\n" printf "If not, you must ensure you are using the correct GCC version and set it (gcc-config <number>)\n"
printf "It is heavily recommended to re-emerge @world with an empty tree after changing GCC version (emerge -e @world)\n\n"
printf "${STY_RESET}" printf "${STY_RESET}"
pause pause
printf "${STY_YELLOW}"
printf "============WARNING/NOTE (2)============\n"
printf "Ensure you have a global use flag for elogind or systemd in your make.conf for simplicity\n"
printf "Or you can manually add the use flags for each package that requires it\n"
printf "${STY_RESET}"
pause
printf "${STY_YELLOW}"
printf "https://github.com/end-4/dots-hyprland/blob/main/dist-gentoo/README.md"
printf "Checkout the above README for potential bug fixes or additional information"
printf "${STY_RESET}"
pause
x sudo emerge --noreplace --quiet app-eselect/eselect-repository
if [[ -z $(eselect repository list | grep localrepo) ]]; then if [[ -z $(eselect repository list | grep localrepo) ]]; then
v sudo eselect repository create localrepo v sudo eselect repository create localrepo
v sudo eselect repository enable localrepo v sudo eselect repository enable localrepo
fi fi
if [[ -z $(eselect repository list | grep guru) ]]; then if [[ -z $(eselect repository list | grep -E ".*guru \*.*") ]]; then
v sudo eselect repository enable guru v sudo eselect repository enable guru
fi fi
arch=$(portageq envvar ACCEPT_KEYWORDS) arch=$(portageq envvar ACCEPT_KEYWORDS)
@@ -26,16 +42,17 @@ metapkgs=(illogical-impulse-{audio,backlight,basic,bibata-modern-classic-bin,fon
ebuild_dir="/var/db/repos/localrepo" ebuild_dir="/var/db/repos/localrepo"
# Unmasks # Unmasks
x cp ./dist-gentoo/keywords ./dist-gentoo/keywords-user x sudo cp ./dist-gentoo/keywords ./dist-gentoo/keywords-user
x sed -i "s/$/ ~${arch}/" ./dist-gentoo/keywords-user x sed -i "s/$/ ~${arch}/" ./dist-gentoo/keywords-user
v sudo cp ./dist-gentoo/keywords-user /etc/portage/package.accept_keywords/illogical-impulse v sudo cp ./dist-gentoo/keywords-user /etc/portage/package.accept_keywords/illogical-impulse
# Use Flags # Use Flags
v sudo cp ./dist-gentoo/useflags /etc/portage/package.use/illogical-impulse v sudo cp ./dist-gentoo/useflags /etc/portage/package.use/illogical-impulse
v sudo sh -c 'cat ./dist-gentoo/additional-useflags >> /etc/portage/package.use/illogical-impulse'
# Update system # Update system
v sudo emerge --sync v sudo emerge --sync
v sudo emerge --ask --verbose --newuse --update --deep @world v sudo emerge --quiet --newuse --update --deep @world
v sudo emerge --depclean v sudo emerge --depclean
# Remove old ebuilds (if this isn't done the wildcard will fuck upon a version change) # Remove old ebuilds (if this isn't done the wildcard will fuck upon a version change)
@@ -72,4 +89,5 @@ for i in "${metapkgs[@]}"; do
v sudo emerge --quiet app-misc/${i} v sudo emerge --quiet app-misc/${i}
done done
# Currently using 3.12 python, this doesn't need to be default though
v sudo emerge --noreplace --quiet dev-lang/python:3.12
+4 -3
View File
@@ -6,7 +6,10 @@
showfun install-python-packages showfun install-python-packages
v install-python-packages v install-python-packages
v getent group i2c || sudo groupadd i2c if [[ -z $(getent group i2c) ]]; then
v sudo groupadd i2c
fi
v sudo usermod -aG video,i2c,input "$(whoami)" v sudo usermod -aG video,i2c,input "$(whoami)"
if [[ ! -z $(systemctl --version) ]]; then if [[ ! -z $(systemctl --version) ]]; then
@@ -28,8 +31,6 @@ else
pause pause
fi fi
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/hypr/
v sudo chown -R $(whoami):$(whoami) ~/.config/quickshell/ v sudo chown -R $(whoami):$(whoami) ~/.config/quickshell/
+4 -1
View File
@@ -14,6 +14,8 @@ app-misc/illogical-impulse-toolkit
app-misc/illogical-impulse-widgets app-misc/illogical-impulse-widgets
x11-misc/matugen x11-misc/matugen
media-fonts/twemoji media-fonts/twemoji
app-misc/brightnessctl
app-misc/cliphist
gui-apps/hypridle gui-apps/hypridle
gui-apps/hyprlock gui-apps/hyprlock
gui-apps/hyprpicker gui-apps/hyprpicker
@@ -31,8 +33,9 @@ gui-libs/aquamarine **
gui-libs/hyprutils ** gui-libs/hyprutils **
dev-util/hyprwayland-scanner ** dev-util/hyprwayland-scanner **
dev-libs/hyprlang ** dev-libs/hyprlang **
dev-libs/hyprgraphicss ** dev-libs/hyprgraphics **
gui-libs/hyprcursor ** gui-libs/hyprcursor **
gui-libs/hyprland-qt-support ** gui-libs/hyprland-qt-support **
gui-libs/hyprland-qtutils ** gui-libs/hyprland-qtutils **
gui-wm/hyprland ** gui-wm/hyprland **
x11-libs/libxkbcommon
+4 -1
View File
@@ -60,6 +60,9 @@ net-misc/networkmanager concheck introspection nss ppp tools wifi -wext -modemma
kde-apps/dolphin -handbook kde-apps/dolphin -handbook
kde-plasma/systemsettings -handbook kde-plasma/systemsettings -handbook
################### MICROTEX-GIT ###################
dev-cpp/gtkmm X wayland
################### PORTAL ################### ################### PORTAL ###################
sys-apps/xdg-desktop-portal seccomp sys-apps/xdg-desktop-portal seccomp
#sys-plasma/xdg-desktop-portal-kde (nothing needed) #sys-plasma/xdg-desktop-portal-kde (nothing needed)
@@ -74,7 +77,6 @@ gui-libs/libadwaita introspection
net-libs/libsoup brotli introspection ssl net-libs/libsoup brotli introspection ssl
#dev-libs/gobject-introspection (nothing needed) #dev-libs/gobject-introspection (nothing needed)
# dart-sassc handled in the ebuild # dart-sassc handled in the ebuild
eigen ffmpeg jpeg opencl opengl python wayland gtk3 webp
################### SCREENCAPTURE ################### ################### SCREENCAPTURE ###################
@@ -112,3 +114,4 @@ dev-libs/glib dbus elf introspection mime xattr
gui-apps/quickshell -X -i3 -i3-ipc -breakpad bluetooth hyprland hyprland-focus-grab hyprland-global-shortcuts jemalloc layer-shell mpris pam pipewire screencopy session-lock sockets toplevel-management tray wayland gui-apps/quickshell -X -i3 -i3-ipc -breakpad bluetooth hyprland hyprland-focus-grab hyprland-global-shortcuts jemalloc layer-shell mpris pam pipewire screencopy session-lock sockets toplevel-management tray wayland
#app-i18n/translate-shell (nothing needed) #app-i18n/translate-shell (nothing needed)
#gui-apps/wlogout (no use flags) #gui-apps/wlogout (no use flags)
media-gfx/imagemagick xml