add debug build

This commit is contained in:
lod 2025-07-19 22:25:37 +02:00
parent c1c9789dc6
commit 2a7909c1b5
3 changed files with 175 additions and 0 deletions

52
.SRCINFO Normal file
View file

@ -0,0 +1,52 @@
pkgbase = orca-slicer-git
pkgdesc = G-code generator for 3D printers (Bambu, Prusa, Voron, VzBot, RatRig, Creality, etc.)
pkgver = 2.3.1.r25349.e44ec1f
pkgrel = 1
url = https://github.com/SoftFever/OrcaSlicer
arch = x86_64
license = AGPL-3.0-only
makedepends = cmake
makedepends = extra-cmake-modules
makedepends = git
makedepends = glew
makedepends = libigl
makedepends = m4
makedepends = ninja
makedepends = pkgconf
makedepends = wayland-protocols
depends = bash
depends = cairo
depends = dbus
depends = expat
depends = fontconfig
depends = freetype2
depends = gcc-libs
depends = gdk-pixbuf2
depends = glib2
depends = glibc
depends = gst-plugins-base-libs
depends = gstreamer
depends = gtk3
depends = hicolor-icon-theme
depends = libglvnd
depends = libjpeg-turbo
depends = libspnav
depends = libx11
depends = pango
depends = python
depends = wayland
depends = webkit2gtk-4.1
depends = zlib
optdepends = mesa: Enables Zink fallback workaround for NVIDIA on Wayland
optdepends = mesa-utils: for detecting renderer
optdepends = nvidia-utils: for querying driver version
provides = orca-slicer
conflicts = orca-slicer
options = debug
options = !strip
source = orca-slicer-git::git+https://github.com/SoftFever/OrcaSlicer.git
source = orca-slicer-wrapper.sh
b2sums = SKIP
b2sums = ea635f7745795d535ddf8cf317b27986ae28c177ea3fd7764c3314f9ca152672d17af22541cd9f6efc08a04fd02b2bda502f867fd2dd6888c58cf9b5d7c6c2a4
pkgname = orca-slicer-git

94
PKGBUILD Normal file
View file

@ -0,0 +1,94 @@
# Maintainer: lod <aur@cyber-anlage.de>
pkgname=orca-slicer-git
pkgver=2.3.1.r25349.e44ec1f
pkgrel=1
pkgdesc="G-code generator for 3D printers (Bambu, Prusa, Voron, VzBot, RatRig, Creality, etc.)"
arch=('x86_64')
url="https://github.com/SoftFever/OrcaSlicer"
license=('AGPL-3.0-only')
depends=('bash' 'cairo' 'dbus' 'expat' 'fontconfig' 'freetype2' 'gcc-libs' 'gdk-pixbuf2' 'glib2' 'glibc'
'gst-plugins-base-libs' 'gstreamer' 'gtk3' 'hicolor-icon-theme' 'libglvnd' 'libjpeg-turbo'
'libspnav' 'libx11' 'pango' 'python' 'wayland' 'webkit2gtk-4.1' 'zlib')
makedepends=('cmake' 'extra-cmake-modules' 'git' 'glew' 'libigl' 'm4' 'ninja' 'pkgconf' 'wayland-protocols')
optdepends=('mesa: Enables Zink fallback workaround for NVIDIA on Wayland'
'mesa-utils: for detecting renderer'
'nvidia-utils: for querying driver version')
options=('debug' '!strip')
provides=('orca-slicer')
conflicts=('orca-slicer')
source=($pkgname::git+https://github.com/SoftFever/OrcaSlicer.git
orca-slicer-wrapper.sh)
b2sums=('SKIP'
'ea635f7745795d535ddf8cf317b27986ae28c177ea3fd7764c3314f9ca152672d17af22541cd9f6efc08a04fd02b2bda502f867fd2dd6888c58cf9b5d7c6c2a4')
pkgver() {
cd $pkgname
_version=$(sed -n 's/set(SoftFever_VERSION "\([^"]*\)-.*".*/\1/p' version.inc)
_revision=$(git rev-list --count HEAD)
_commit=$(git rev-parse --short=7 HEAD)
printf "%s.r%s.%s" $_version $_revision $_commit
}
prepare() {
cd $pkgname
}
build() {
cd $pkgname
export CMAKE_POLICY_VERSION_MINIMUM=3.5
cmake \
-G Ninja \
-S deps \
-B deps/build/release \
-DDESTDIR="$PWD/deps/build/destdir" \
-DDEP_DOWNLOAD_DIR="$PWD/deps/DL_CACHE" \
-DCOLORED_OUTPUT=ON \
-DDEP_WX_GTK3=ON
ninja -C deps/build/release
cmake \
-G Ninja \
-S deps \
-B deps/build \
-DCMAKE_BUILD_TYPE=Debug \
-DDESTDIR="$PWD/deps/build/destdir" \
-DDEP_DOWNLOAD_DIR="$PWD/deps/DL_CACHE" \
-DCOLORED_OUTPUT=ON \
-DDEP_WX_GTK3=ON
ninja -C deps/build
cmake \
-G Ninja \
-S . \
-B build \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_FULL_DATAROOTDIR=/usr/share/ \
-DCMAKE_PREFIX_PATH="$PWD/deps/build/destdir/usr/local" \
-DCMAKE_BUILD_TYPE=Debug \
-DBBL_INTERNAL_TESTING=1 \
-DSLIC3R_STATIC=1 \
-DORCA_TOOLS=1 \
-DSLIC3R_FHS=1 \
-DSLIC3R_GTK=3 \
-DCOLORED_OUTPUT=ON
ninja -C build
# add localizations
./run_gettext.sh --full
}
package() {
cd $pkgname
DESTDIR="$pkgdir" ninja -C build install
install -d "$pkgdir/usr/lib/OrcaSlicer/"
mv "$pkgdir/usr/bin/orca-slicer" "$pkgdir/usr/lib/OrcaSlicer/"
install -Dm755 "$srcdir/orca-slicer-wrapper.sh" "$pkgdir/usr/bin/orca-slicer"
install -Dm644 doc/*.md -t "$pkgdir/usr/share/doc/OrcaSlicer/"
install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/OrcaSlicer/LICENSE"
rm -rf "$pkgdir/usr/LICENSE.txt"
}

29
orca-slicer-wrapper.sh Normal file
View file

@ -0,0 +1,29 @@
#!/bin/bash
DIR="/usr/lib/OrcaSlicer"
export LD_LIBRARY_PATH="$DIR/bin:$LD_LIBRARY_PATH"
# OrcaSlicer will segfault on systems where locale info is not as expected
export LC_ALL=C
# Use Zink to run OpenGL on top of Vulkan bypassing the problematic NVIDIA OpenGL stack while retaining hardware acceleration.
if [ "$XDG_SESSION_TYPE" = "wayland" ] && [ "$ZINK_DISABLE_OVERRIDE" != "1" ]; then
if command -v glxinfo >/dev/null 2>&1; then
RENDERER=$(glxinfo | grep "OpenGL renderer string:" | sed 's/.*: //')
if echo "$RENDERER" | grep -qi "NVIDIA"; then
if command -v nvidia-smi >/dev/null 2>&1; then
DRIVER_VERSION=$(nvidia-smi --query-gpu=driver_version --format=csv,noheader | head -n1)
DRIVER_MAJOR=$(echo "$DRIVER_VERSION" | cut -d. -f1)
[ "$DRIVER_MAJOR" -gt 555 ] && ZINK_FORCE_OVERRIDE=1
fi
if [ "$ZINK_FORCE_OVERRIDE" = "1" ]; then
export __GLX_VENDOR_LIBRARY_NAME=mesa
export __EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/50_mesa.json
export MESA_LOADER_DRIVER_OVERRIDE=zink
export GALLIUM_DRIVER=zink
export WEBKIT_DISABLE_DMABUF_RENDERER=1
fi
fi
fi
fi
exec "$DIR/orca-slicer" "$@"