files:
- goginstaller: N/A:Please select the GOG.com Linux installer for Botanicula
- pkg_gtk2:
filename: lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst
url: https://archive.archlinux.org/packages/l/lib32-gtk2/lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst
- pkg_libxml2:
filename: lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst
url: https://archive.archlinux.org/packages/l/lib32-libxml2/lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst
- pkg_icu:
filename: lib32-icu-76.1-1-x86_64.pkg.tar.zst
url: https://archive.archlinux.org/packages/l/lib32-icu/lib32-icu-76.1-1-x86_64.pkg.tar.zst
game:
exe: $GAMEDIR/start.sh
gogid: 1207659024
working_dir: $GAMEDIR
install_complete_text: Botanicula installed. Bundled legacy 32-bit libs (GTK2, libxml2
2.13, ICU 76) live in game/lib32. Other 32-bit dependencies (glib2, pango, cairo,
atk, ...) must come from your distribution's multilib/i386 repositories.
installer:
- extract:
dst: $CACHE/GOG
file: goginstaller
format: zip
- merge:
dst: $GAMEDIR
src: $CACHE/GOG/data/noarch/
- execute:
command: 'set -euo pipefail
work=$(mktemp -d)
trap ''rm -rf "$work"'' EXIT
cp "$pkg_gtk2" "$work/lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst"
cp "$pkg_libxml2" "$work/lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst"
cp "$pkg_icu" "$work/lib32-icu-76.1-1-x86_64.pkg.tar.zst"
cd "$work"
sha256sum -c - <<''EOF''
a2e7dea409f128399b675b93a4800d75183720d3fb336b99e02b393e7f416be4 lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst
983fba3ee0009e23ad174ed2645d9ea79281dcdbf6e3579fcd2246df48aabd40 lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst
61c2edf37c304b47b666ce6d20728b91a1e53dcd2af41847ff73868b1acb83d4 lib32-icu-76.1-1-x86_64.pkg.tar.zst
EOF
mkdir -p "$GAMEDIR/game/lib32"
bsdtar -xf lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst -C "$GAMEDIR/game/lib32"
--strip-components 2 \
''usr/lib32/libgtk-x11-2.0.so.0*'' ''usr/lib32/libgdk-x11-2.0.so.0*''
bsdtar -xf lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst -C "$GAMEDIR/game/lib32"
--strip-components 2 \
''usr/lib32/libxml2.so.2*''
bsdtar -xf lib32-icu-76.1-1-x86_64.pkg.tar.zst -C "$GAMEDIR/game/lib32" --strip-components
2 \
''usr/lib32/libicuuc.so.76*'' ''usr/lib32/libicudata.so.76*''
'
description: Verifying and extracting legacy 32-bit libraries
disable_runtime: true
- chmodx: $GAMEDIR/start.sh
require-binaries: bsdtar, sha256sum
system:
LD_LIBRARY_PATH: $GAMEDIR/game/lib32
env: null
description: GOG Linux version with the legacy 32-bit libraries required by its Adobe
AIR runtime (GTK2, libxml2 2.13, ICU 76) bundled in the game folder. Use this if
the default GOG Linux installer fails with "Error loading the runtime (libgtk-x11-2.0.so.0
...)".
game_slug: botanicula
gogslug: botanicula_collectors_edition
humblestoreid: botanicula
installer_slug: botanicula-gog-linux
name: Botanicula
notes: "- Requires bsdtar (libarchive) and sha256sum on the host.\r\n- Downloads three\
\ official Arch Linux packages from the Arch Linux Archive (lib32-gtk2 2.24.33-5,\
\ lib32-libxml2 2.13.8-1, lib32-icu 76.1-1). Their SHA256 checksums are pinned in\
\ the script and verified before extraction; only the five needed .so files are\
\ extracted to game/lib32. Nothing is installed system-wide.\r\n- The remaining\
\ 32-bit dependencies (e.g. glib2, pango, cairo, atk, gdk-pixbuf2, libx11) must\
\ come from your distribution's multilib/i386 repositories. They are usually already\
\ present if Steam is installed.\r\n- GTK \"Unable to locate theme engine\" warnings\
\ in the log are harmless.\r\n- Tested on CachyOS (Arch-based), Lutris 0.5.22."
runner: linux
script:
files:
- goginstaller: N/A:Please select the GOG.com Linux installer for Botanicula
- pkg_gtk2:
filename: lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst
url: https://archive.archlinux.org/packages/l/lib32-gtk2/lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst
- pkg_libxml2:
filename: lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst
url: https://archive.archlinux.org/packages/l/lib32-libxml2/lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst
- pkg_icu:
filename: lib32-icu-76.1-1-x86_64.pkg.tar.zst
url: https://archive.archlinux.org/packages/l/lib32-icu/lib32-icu-76.1-1-x86_64.pkg.tar.zst
game:
exe: $GAMEDIR/start.sh
gogid: 1207659024
working_dir: $GAMEDIR
install_complete_text: Botanicula installed. Bundled legacy 32-bit libs (GTK2, libxml2
2.13, ICU 76) live in game/lib32. Other 32-bit dependencies (glib2, pango, cairo,
atk, ...) must come from your distribution's multilib/i386 repositories.
installer:
- extract:
dst: $CACHE/GOG
file: goginstaller
format: zip
- merge:
dst: $GAMEDIR
src: $CACHE/GOG/data/noarch/
- execute:
command: 'set -euo pipefail
work=$(mktemp -d)
trap ''rm -rf "$work"'' EXIT
cp "$pkg_gtk2" "$work/lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst"
cp "$pkg_libxml2" "$work/lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst"
cp "$pkg_icu" "$work/lib32-icu-76.1-1-x86_64.pkg.tar.zst"
cd "$work"
sha256sum -c - <<''EOF''
a2e7dea409f128399b675b93a4800d75183720d3fb336b99e02b393e7f416be4 lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst
983fba3ee0009e23ad174ed2645d9ea79281dcdbf6e3579fcd2246df48aabd40 lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst
61c2edf37c304b47b666ce6d20728b91a1e53dcd2af41847ff73868b1acb83d4 lib32-icu-76.1-1-x86_64.pkg.tar.zst
EOF
mkdir -p "$GAMEDIR/game/lib32"
bsdtar -xf lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst -C "$GAMEDIR/game/lib32"
--strip-components 2 \
''usr/lib32/libgtk-x11-2.0.so.0*'' ''usr/lib32/libgdk-x11-2.0.so.0*''
bsdtar -xf lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst -C "$GAMEDIR/game/lib32"
--strip-components 2 \
''usr/lib32/libxml2.so.2*''
bsdtar -xf lib32-icu-76.1-1-x86_64.pkg.tar.zst -C "$GAMEDIR/game/lib32" --strip-components
2 \
''usr/lib32/libicuuc.so.76*'' ''usr/lib32/libicudata.so.76*''
'
description: Verifying and extracting legacy 32-bit libraries
disable_runtime: true
- chmodx: $GAMEDIR/start.sh
require-binaries: bsdtar, sha256sum
system:
LD_LIBRARY_PATH: $GAMEDIR/game/lib32
env: null
slug: botanicula-gog-linux
steamid: 207690
version: GOG Linux
year: 2012
{
"game_slug": "botanicula",
"version": "GOG Linux",
"description": "GOG Linux version with the legacy 32-bit libraries required by its Adobe AIR runtime (GTK2, libxml2 2.13, ICU 76) bundled in the game folder. Use this if the default GOG Linux installer fails with \"Error loading the runtime (libgtk-x11-2.0.so.0 ...)\".",
"notes": "- Requires bsdtar (libarchive) and sha256sum on the host.\r\n- Downloads three official Arch Linux packages from the Arch Linux Archive (lib32-gtk2 2.24.33-5, lib32-libxml2 2.13.8-1, lib32-icu 76.1-1). Their SHA256 checksums are pinned in the script and verified before extraction; only the five needed .so files are extracted to game/lib32. Nothing is installed system-wide.\r\n- The remaining 32-bit dependencies (e.g. glib2, pango, cairo, atk, gdk-pixbuf2, libx11) must come from your distribution's multilib/i386 repositories. They are usually already present if Steam is installed.\r\n- GTK \"Unable to locate theme engine\" warnings in the log are harmless.\r\n- Tested on CachyOS (Arch-based), Lutris 0.5.22.",
"name": "Botanicula",
"year": 2012,
"steamid": 207690,
"gogslug": "botanicula_collectors_edition",
"humblestoreid": "botanicula",
"runner": "linux",
"slug": "botanicula-gog-linux",
"installer_slug": "botanicula-gog-linux",
"script": {
"files": [
{
"goginstaller": "N/A:Please select the GOG.com Linux installer for Botanicula"
},
{
"pkg_gtk2": {
"filename": "lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst",
"url": "https://archive.archlinux.org/packages/l/lib32-gtk2/lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst"
}
},
{
"pkg_libxml2": {
"filename": "lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst",
"url": "https://archive.archlinux.org/packages/l/lib32-libxml2/lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst"
}
},
{
"pkg_icu": {
"filename": "lib32-icu-76.1-1-x86_64.pkg.tar.zst",
"url": "https://archive.archlinux.org/packages/l/lib32-icu/lib32-icu-76.1-1-x86_64.pkg.tar.zst"
}
}
],
"game": {
"exe": "$GAMEDIR/start.sh",
"gogid": 1207659024,
"working_dir": "$GAMEDIR"
},
"install_complete_text": "Botanicula installed. Bundled legacy 32-bit libs (GTK2, libxml2 2.13, ICU 76) live in game/lib32. Other 32-bit dependencies (glib2, pango, cairo, atk, ...) must come from your distribution's multilib/i386 repositories.",
"installer": [
{
"extract": {
"dst": "$CACHE/GOG",
"file": "goginstaller",
"format": "zip"
}
},
{
"merge": {
"dst": "$GAMEDIR",
"src": "$CACHE/GOG/data/noarch/"
}
},
{
"execute": {
"command": "set -euo pipefail\nwork=$(mktemp -d)\ntrap 'rm -rf \"$work\"' EXIT\ncp \"$pkg_gtk2\" \"$work/lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst\"\ncp \"$pkg_libxml2\" \"$work/lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst\"\ncp \"$pkg_icu\" \"$work/lib32-icu-76.1-1-x86_64.pkg.tar.zst\"\ncd \"$work\"\nsha256sum -c - <<'EOF'\na2e7dea409f128399b675b93a4800d75183720d3fb336b99e02b393e7f416be4 lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst\n983fba3ee0009e23ad174ed2645d9ea79281dcdbf6e3579fcd2246df48aabd40 lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst\n61c2edf37c304b47b666ce6d20728b91a1e53dcd2af41847ff73868b1acb83d4 lib32-icu-76.1-1-x86_64.pkg.tar.zst\nEOF\nmkdir -p \"$GAMEDIR/game/lib32\"\nbsdtar -xf lib32-gtk2-2.24.33-5-x86_64.pkg.tar.zst -C \"$GAMEDIR/game/lib32\" --strip-components 2 \\\n'usr/lib32/libgtk-x11-2.0.so.0*' 'usr/lib32/libgdk-x11-2.0.so.0*'\nbsdtar -xf lib32-libxml2-2.13.8-1-x86_64.pkg.tar.zst -C \"$GAMEDIR/game/lib32\" --strip-components 2 \\\n'usr/lib32/libxml2.so.2*'\nbsdtar -xf lib32-icu-76.1-1-x86_64.pkg.tar.zst -C \"$GAMEDIR/game/lib32\" --strip-components 2 \\\n'usr/lib32/libicuuc.so.76*' 'usr/lib32/libicudata.so.76*'\n",
"description": "Verifying and extracting legacy 32-bit libraries",
"disable_runtime": true
}
},
{
"chmodx": "$GAMEDIR/start.sh"
}
],
"require-binaries": "bsdtar, sha256sum",
"system": {
"LD_LIBRARY_PATH": "$GAMEDIR/game/lib32",
"env": null
}
}
}