123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- name: freedoom
- version: 0.12.1
- summary: A free and open First-Person Shooter
- description: |
- Freedoom is a completely free and open replacement for DOOM, and is fully compatible with all DOOM levels and modifcations.
- This package contains Freedoom: Phase 1, Freedoom: Phase 2, and FreeDM.
- # The desktop launcher and icon have to be located within snap/gui to be included
- icon: snap/gui/io.github.freedoom.png
- license: "BSD-3-Clause"
- grade: stable
- confinement: strict
- base: core18
- assumes:
- - snapd2.41
- # auto-build architectures
- architectures:
- -build-on: [i386]
- -build-on: [amd64]
- -build-on: [armhf]
- -build-on: [arm64]
- -build-on: [ppc64el]
- apps:
- freedoom:
- command: desktop-launch $SNAP/bin/freedoom
- plugs: [desktop, desktop-legacy, unity7, network, opengl, pulseaudio, audio-playback, joystick, x11, wayland, home]
- environment:
- LD_LIBRARY_PATH: $SNAP/usr/lib/x86_64-linux-gnu/pulseaudio:$LD_LIBRARY_PATH
- parts:
- lzdoom:
- source: https://github.com/drfrag666/gzdoom.git
- source-commit: '797037f'
- plugin: cmake
- configflags: ["-DCMAKE_BUILD_TYPE=Release", "-DNO_FMOD=ON"]
- build-packages:
- - g++
- - make
- - cmake
- - libsdl2-dev
- - git
- - zlib1g-dev
- - libbz2-dev
- - libjpeg-dev
- - libfluidsynth-dev
- - libgme-dev
- - libopenal-dev
- - libmpg123-dev
- - libsndfile1-dev
- - libgtk-3-dev
- - timidity
- - nasm
- - libgl1-mesa-dev
- - tar
- - libsdl1.2-dev
- - libglew-dev
- stage-packages:
- - libsdl2-2.0-0
- - libopenal1
- - libfluidsynth1
- - libgme0
- - libmpg123-0
- - libsndfile1
- - libwildmidi2
- - libgtk-3-0
- - timidity
- - libsdl1.2debian
- - libgl1-mesa-glx
- - libpulse0
- - libgomp1
- - yad
- - libslang2
- - libglu1-mesa
- - freeglut3
- after:
- - desktop-glib-only
- override-build: |
- snapcraftctl build
- mkdir -p $SNAPCRAFT_PART_INSTALL/usr/share/sounds/sf2
- cp $SNAPCRAFT_PART_BUILD/soundfonts/lzdoom.sf2 $SNAPCRAFT_PART_INSTALL/usr/share/sounds/sf2/lzdoom.sf2
- prime:
- #We don't need the default soundfont (which is 140M)
- - -usr/share/sounds/sf2/FluidR3_GM.sf2
- #We don't need the icons (which are 40M)
- - -usr/share/icons
- desktop-glib-only:
- source: https://github.com/ubuntu/snapcraft-desktop-helpers.git
- source-subdir: glib-only
- plugin: make
- build-packages:
- - libglib2.0-dev
- stage-packages:
- - libglib2.0-bin
- #only used for building freedoom
- deutex:
- source: https://github.com/Doom-Utils/deutex.git
- source-tag: v5.2.1
- plugin: autotools
- configflags: ["--disable-man"]
- build-packages:
- - libpng-dev
- prime:
- [-bin/deutex]
- freedoom:
- source: https://github.com/freedoom/freedoom.git
- source-tag: v0.12.1
- plugin: make
- after: [deutex]
- build-packages:
- - deutex
- - python3-pil
- - asciidoc
- - libpng16-16
- # Only copying the wads, not the docs, since they will be
- # inaccessible within the snap.
- override-build: |
- make
- mkdir -p $SNAPCRAFT_PART_INSTALL/share/games/doom
- cp $SNAPCRAFT_PART_BUILD/wads/*.wad $SNAPCRAFT_PART_INSTALL/share/games/doom
- config:
- source: config
- source-type: local
- plugin: dump
- organize:
- "freedoom.wrapper" : bin/freedoom
- # lzdoom.ini contains some sane defaults for lzdoom
- "lzdoom.ini" : config/lzdoom.ini
- layout:
- /usr/share/games/doom: # to locate the wad files
- bind: $SNAP/share/games/doom
- /usr/share/doom/soundfonts: # to locate the soundfonts
- bind: $SNAP/usr/share/sounds/sf2
|