Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/appimage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@ jobs:
uses: softprops/action-gh-release@v3
if: "${{ github.event_name != 'workflow_dispatch' }}"
with:
files: Skyscraper-*.AppImage
files: Skyscraper-*.AppImage*
4 changes: 2 additions & 2 deletions src/compositor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ GameEntry::Types Compositor::saveAll(GameEntry &game, QString completeBaseName,
bool esdeMiximage) {
bool createSubfolder = false;
QString fn = "/" % completeBaseName;
QString subPath = getSubpath(game.path);
QString subPath = getMediaSubpath(game.path);
if (subPath != ".") {
fn.prepend("/" % subPath);
createSubfolder = true;
Expand Down Expand Up @@ -581,7 +581,7 @@ void Compositor::processChildLayers(GameEntry &game, Layer &layer) {
}
}

QString Compositor::getSubpath(const QString &absPath) {
QString Compositor::getMediaSubpath(const QString &absPath) {
QString subPath = ".";
if (config->frontend == "esde") {
// ES-DE expects media files in same subpath (tree structure) as
Expand Down
3 changes: 1 addition & 2 deletions src/compositor.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,7 @@ class Compositor : public QObject {
void processXml();
GameEntry::Types saveAll(GameEntry &game, QString completeBaseName,
bool isEsde);
// TODO: check, does member fit in here?
QString getSubpath(const QString &absPath);
QString getMediaSubpath(const QString &absPath);

private:
void addChildLayers(Layer &layer, QXmlStreamReader &xml);
Expand Down
2 changes: 1 addition & 1 deletion src/scraperworker.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@ void ScraperWorker::run() {
}
// copy extra media files (not part of compositor/artwork)
const QString baseName = info.completeBaseName();
const QString subPath = compositor.getSubpath(game.path);
const QString subPath = compositor.getMediaSubpath(game.path);
frontend->copyMedia(mediaSaved, baseName, subPath, game);
}

Expand Down
24 changes: 17 additions & 7 deletions supplementary/workflows/appimage
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@ function build_appimage() {
local _xdg="${1:-}"
make --ignore-errors distclean || true
#sed -i "0,/CONFIG += /{s/CONFIG.*/CONFIG += debug/}" skyscraper.pro
#sed '/claudio/{s//claudia/;:p;n;bp}'
# set XDG
[[ -n "$_xdg" ]] && sed -i "/DEFINES += XDG/{s/#DEFINES/DEFINES/}" skyscraper.pro
# unset XDG
[[ -z "$_xdg" ]] && sed -i "/#*DEFINES += XDG/{s//#DEFINES += XDG/}" skyscraper.pro

PREFIX=/usr SYSCONFDIR=/etc qmake6 skyscraper.pro
jobs=$(getconf _NPROCESSORS_ONLN 2>/dev/null || sysctl -n hw.ncpu)
rm -rf "$app_dir" || true
Expand All @@ -44,7 +44,9 @@ function build_appimage() {
GLIBC_BASE="2.35" # Ubuntu 22.04 / Debian Bookworm (12)
#GLIBC_BASE="2.39" # Ubuntu 24.04 / Debian Trixie (13)
build_host_glibc=$(readelf -V "$app_dir"/usr/bin/Skyscraper 2>/dev/null | grep -o 'GLIBC_[0-9.]*' | sort -V | tail -1| cut -d _ -f2)
echo "[*] Testing if Glibc baseline version is matched ..."
dpkg --compare-versions "$build_host_glibc" le $GLIBC_BASE
echo "[+] ... OK"

cat >skyscraper.desktop <<EOF
[Desktop Entry]
Expand Down Expand Up @@ -98,19 +100,27 @@ EOF
printf -v excl_libs_str ';%s' "${excl_libs2[@]}"
export LINUXDEPLOY_EXCLUDED_LIBRARIES="${excl_libs_str:1}"
export DISABLE_COPYRIGHT_FILES_DEPLOYMENT=1

local output_fn_base="Skyscraper-$VERSION-$ARCH"
local zsync_base="gh-releases-zsync|gemba|skyscraper|latest|${output_fn_base}"
if [[ -n "$_xdg" ]]; then
export LDAI_OUTPUT="${output_fn_base}-$_xdg.AppImage"
export LDAI_UPDATE_INFORMATION="${zsync_base}-$_xdg.AppImage.zsync"
else
export LDAI_OUTPUT="${output_fn_base}.AppImage"
export LDAI_UPDATE_INFORMATION="${zsync_base}.AppImage.zsync"
fi
./linuxdeploy-"$ARCH".AppImage \
--appdir "$(basename "$app_dir")" \
--desktop-file skyscraper.desktop \
--output appimage --plugin checkrt \
--output appimage \
--plugin checkrt \
--plugin qt \
--verbosity 2
--verbosity 3
rm skyscraper.desktop
if [[ -n "$_xdg" ]]; then
mv Skyscraper-"$VERSION"-"$ARCH".AppImage Skyscraper-"$VERSION"-"$ARCH"-"$_xdg".AppImage
./Skyscraper-"$VERSION"-"$ARCH"-"$_xdg".AppImage --buildinfo
./"${output_fn_base}"-"$_xdg".AppImage --buildinfo
else
./Skyscraper-"$VERSION"-"$ARCH".AppImage --buildinfo
./"${output_fn_base}".AppImage --buildinfo
fi
}

Expand Down
1 change: 1 addition & 0 deletions supplementary/workflows/deps
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ main() {
"linux")
_install build-essential qtbase5-dev qt5-qmake qtbase5-dev-tools
_install qt6-base-dev qmake6 qt6-base-dev-tools
_install zsync # for AppImage Build
;;
esac
}
Expand Down
Loading