OrcaSlicer/scripts/linux.d/gentoo
panther757 47ab79041b
Some checks failed
Build all / build_linux (push) Waiting to run
Build all / build_windows (push) Waiting to run
Build all / build_macos_arch (arm64) (push) Waiting to run
Build all / build_macos_arch (x86_64) (push) Waiting to run
Build all / Build macOS Universal (push) Blocked by required conditions
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
Shellcheck / Shellcheck (push) Has been cancelled
Linux: add Gentoo dependency installation script (#12558)
Co-authored-by: Alan Vogt <panther7@frocat.com>
2026-03-04 15:51:16 +08:00

75 lines
2 KiB
Bash

#!/bin/bash
if ! command -v qlist > /dev/null 2>&1; then
echo "app-portage/portage-utils is required but not installed. Installing..."
sudo emerge --ask --verbose app-portage/portage-utils
fi
REQUIRED_DEV_PACKAGES=(
app-crypt/libsecret
dev-build/autoconf
dev-build/cmake
dev-build/libtool
dev-build/ninja
dev-cpp/gstreamermm
dev-libs/libmspack
dev-libs/libspnav
dev-libs/openssl
dev-vcs/git
gui-libs/eglexternalplatform
kde-frameworks/extra-cmake-modules
media-libs/glew
media-libs/gst-plugins-base:1.0
media-libs/gstreamer:1.0
net-misc/curl
net-misc/wget
sys-apps/dbus
sys-apps/file
sys-apps/texinfo
sys-devel/gcc
sys-devel/gettext
sys-devel/m4
virtual/libudev
x11-libs/gtk+:3
)
if [[ -n "$UPDATE_LIB" ]]
then
echo -e "Updating Gentoo ...\n"
# Check which version of webkit-gtk is available/preferred
if qlist -I net-libs/webkit-gtk:4 > /dev/null 2>&1; then
REQUIRED_DEV_PACKAGES+=(net-libs/webkit-gtk:4)
elif qlist -I net-libs/webkit-gtk:4.1 > /dev/null 2>&1; then
REQUIRED_DEV_PACKAGES+=(net-libs/webkit-gtk:4.1)
else
# Default to 4.1 if neither is installed
REQUIRED_DEV_PACKAGES+=(net-libs/webkit-gtk:4.1)
fi
if [[ -n "$BUILD_DEBUG" ]]
then
REQUIRED_DEV_PACKAGES+=(dev-libs/openssl net-misc/curl)
fi
# Filter out packages that are already installed
packages_to_install=()
for pkg in "${REQUIRED_DEV_PACKAGES[@]}"; do
if ! qlist -I "$pkg" > /dev/null 2>&1; then
packages_to_install+=("$pkg")
fi
done
# Install them if there are any to install
if [ ${#packages_to_install[@]} -gt 0 ]; then
sudo emerge --ask --verbose --noreplace "${packages_to_install[@]}"
else
echo "All required packages are already installed."
fi
echo -e "done\n"
exit 0
fi
export FOUND_GTK3_DEV
FOUND_GTK3_DEV=$(qlist -I x11-libs/gtk+:3 2>/dev/null || find /usr/lib64/libgtk-3.so 2>/dev/null || true)