diff options
author | Gene Pasquet <dev@etenil.net> | 2024-05-29 15:12:34 +0100 |
---|---|---|
committer | Gene Pasquet <dev@etenil.net> | 2024-05-29 15:12:34 +0100 |
commit | 084750dc5c69d081771858c87060bf06242e5d1d (patch) | |
tree | 7422da3d4ac345f2eda1166f9a2a8f4fb0e087f3 | |
parent | 4861b47029be9e2aed29b4c212a69285711ebd19 (diff) |
Getting started with appimage
-rw-r--r-- | AppImageBuilder.yml | 86 | ||||
-rw-r--r-- | turbo-icon.png | bin | 0 -> 38216 bytes | |||
-rw-r--r-- | turbo-racer-3000-1.0-debian.tar.gz | bin | 15660763 -> 0 bytes | |||
-rw-r--r-- | turbo-racer.desktop | 11 | ||||
-rw-r--r-- | turbo.scm | 22 |
5 files changed, 111 insertions, 8 deletions
diff --git a/AppImageBuilder.yml b/AppImageBuilder.yml new file mode 100644 index 0000000..1ab2a56 --- /dev/null +++ b/AppImageBuilder.yml @@ -0,0 +1,86 @@ +# appimage-builder recipe see https://appimage-builder.readthedocs.io for details +version: 1 +script: + # Remove any previous build + - rm -rf $TARGET_APPDIR | true + - mkdir -p $TARGET_APPDIR/usr/share/icons/hicolor/512x512/apps + - mkdir -p $TARGET_APPDIR/usr/share/turbo + - cp -r fonts sound sprites turbo.scm turbo.go $TARGET_APPDIR/usr/share/turbo/ + - cp turbo-icon.png $TARGET_APPDIR/usr/share/icons/hicolor/512x512/apps/ + - wget http://ftp.gnu.org/gnu/guile-opengl/guile-opengl-0.2.0.tar.gz + - wget https://files.dthompson.us/releases/guile-sdl2/guile-sdl2-0.8.0.tar.gz + - wget https://files.dthompson.us/releases/chickadee/chickadee-0.10.0.tar.gz + - tar -xf guile-opengl-0.2.0.tar.gz + - tar -xf guile-sdl2-0.8.0.tar.gz + - tar -xf chickadee-0.10.0.tar.gz + - cd guile-opengl-0.2.0; ./configure --prefix=$(dirname $(pwd))/AppDir/usr; make; make install + - cd ../guile-sdl2-0.8.0; ./configure --prefix=$(dirname $(pwd))/AppDir/usr; make; make install + - cd ../chickadee-0.10.0; ./configure --prefix=$(dirname $(pwd))/AppDir/usr; make; make install + - cd .. + +AppDir: + path: /home/gene/Projects/turbo-racer/AppDir + app_info: + id: net.etenil.Turboracer + name: turbo-racer-3000 + icon: turbo-icon + version: latest + exec: usr/bin/guile-3.0 + exec_args: --no-debug --no-auto-compile $APPDIR/usr/share/turbo/turbo.scm + runtime: + env: + LD_LIBRARY_PATH: $APPDIR/usr/lib/x86_64-linux-gnu + GUILE_LOAD_PATH: $APPDIR/usr/share/guile/site/3.0:$APPDIR/usr/share/guile/3.0 + GUILE_LOAD_COMPILED_PATH: $APPDIR/usr/lib/guile/3.0/site-ccache:$APPDIR/usr/lib/x86_64-linux-gnu/guile/3.0/ccache + CHICKADEE_DATADIR: $APPDIR/usr/share/chickadee + TURBO_DIR: $APPDIR/usr/share/turbo + apt: + arch: amd64 + allow_unauthenticated: true + sources: + - sourceline: deb http://ftp.uk.debian.org/debian/ bookworm main non-free-firmware + - sourceline: deb http://security.debian.org/debian-security bookworm-security + main non-free-firmware + - sourceline: deb http://ftp.uk.debian.org/debian/ bookworm-updates main non-free-firmware + include: + - dash + - guile-3.0 + - guile-3.0-dev + - libfreetype-dev + - libmpg123-dev + - libopenal-dev + - libreadline-dev + - libvorbis-dev + - libsdl2-dev + - libsdl2-ttf-dev + - libsdl2-mixer-dev + - libsdl2-image-dev + - libturbojpeg0-dev + files: + include: [] + exclude: + - usr/share/man + - usr/share/doc/*/README.* + - usr/share/doc/*/changelog.* + - usr/share/doc/*/NEWS.* + - usr/share/doc/*/TODO.* + + test: + fedora-30: + image: appimagecrafters/tests-env:fedora-30 + command: ./AppRun + debian-stable: + image: appimagecrafters/tests-env:debian-stable + command: ./AppRun + archlinux-latest: + image: appimagecrafters/tests-env:archlinux-latest + command: ./AppRun + centos-7: + image: appimagecrafters/tests-env:centos-7 + command: ./AppRun + ubuntu-xenial: + image: appimagecrafters/tests-env:ubuntu-xenial + command: ./AppRun +AppImage: + arch: x86_64 + update-information: guess diff --git a/turbo-icon.png b/turbo-icon.png Binary files differnew file mode 100644 index 0000000..328eea7 --- /dev/null +++ b/turbo-icon.png diff --git a/turbo-racer-3000-1.0-debian.tar.gz b/turbo-racer-3000-1.0-debian.tar.gz Binary files differdeleted file mode 100644 index 62d84be..0000000 --- a/turbo-racer-3000-1.0-debian.tar.gz +++ /dev/null diff --git a/turbo-racer.desktop b/turbo-racer.desktop new file mode 100644 index 0000000..ef7ec03 --- /dev/null +++ b/turbo-racer.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=Turbo Racer 3000 +Comment=A retro racing game +Exec=guile /usr/share/turbo.scm +Icon=turbo-icon +Terminal=false +Categories=Game;ArcadeGame;Simulation +StartupNotify=true + @@ -59,6 +59,12 @@ ;;;; Constants and variables +(define assets-root (if (string=? (getenv "APPDIR") "") + "" + (format #f "~a/usr/share/turbo/" (getenv "APPDIR")))) +(define (asset-path asset) + (format #f "~a~a" assets-root asset)) + (define the-font #f) (define font-7-segments #f) @@ -259,17 +265,17 @@ ;;;; Chickadee hooks (define (load) - (set! the-font (load-bitmap-font "fonts/thick_8x8.xml")) - (set! font-7-segments (load-font "fonts/DSEG7Classic-Regular.ttf" 24)) - (set! road (load-tileset "sprites/road.png" lane-length lane-height)) + (set! the-font (load-bitmap-font (asset-path "fonts/thick_8x8.xml"))) + (set! font-7-segments (load-font (asset-path "fonts/DSEG7Classic-Regular.ttf") 24)) + (set! road (load-tileset (asset-path "sprites/road.png") lane-length lane-height)) (set! road-top (texture-atlas-ref road 2)) (set! road-bottom (texture-atlas-ref road 0)) (set! road-lane (texture-atlas-ref road 1)) - (set! grass (load-image "sprites/grass.png")) - (set! dashboard-set (load-tileset "sprites/dash-background.png" 64 64)) + (set! grass (load-image (asset-path "sprites/grass.png"))) + (set! dashboard-set (load-tileset (asset-path "sprites/dash-background.png") 64 64)) (set! dash-background (texture-atlas-ref dashboard-set 0)) (set! dash-7seg-background (texture-atlas-ref dashboard-set 1)) - (set! vehicles-sprites (load-tileset "sprites/vehicles.png" vehicle-length vehicle-height)) + (set! vehicles-sprites (load-tileset (asset-path "sprites/vehicles.png") vehicle-length vehicle-height)) (set! initial-player-position (vec2 (/ (- (window-width (current-window)) vehicle-length) 6) @@ -283,9 +289,9 @@ #t)) ;; Audio - (set! music-res (load-audio "sound/music.ogg")) + (set! music-res (load-audio (asset-path "sound/music.ogg"))) (set! music (make-source #:audio music-res #:loop? #t)) - (set! engine-res (load-audio "sound/engine-loop-1.ogg")) + (set! engine-res (load-audio (asset-path "sound/engine-loop-1.ogg"))) (set! engine-sound (make-source #:audio engine-res #:loop? #t)) (set-source-volume! music 0.3) |