openrocket/snap/snapcraft.yaml
Billy Olsen 82fea89bf0 Adjustments to snap stuff
Drop gcc as a build-dependency as LP#1883392 was fixed and delivered.
Additionally, change personal-files interfaces to be more explicit which
should allow for the snap store assertions which will possibly allow the
auto-connecting of the interfaces upon install for the OpenRocket app.

Signed-off-by: Billy Olsen <billy.olsen@gmail.com>
2020-07-26 10:06:10 -07:00

92 lines
2.4 KiB
YAML

name: openrocket
adopt-info: openrocket
grade: stable
summary: A free, fully featured model rocket simulator.
description: |
OpenRocket is a free, fully featured model rocket simulator that allows you
to design and simulate your rockets before actually building and flying them.
The main features include
* Six-degree-of-freedom flight simulation
* Automatic design optimization
* Realtime simulated altitude, velocity and acceleration display
* Staging and clustering support
* Cross-platform (Java-based)
* Read more about it on the OpenRocket.info.
license: GPL-3.0
base: core18
grade: stable
confinement: strict
plugs:
dot-java-user-prefs:
interface: personal-files
read:
- $HOME/.java/.userPrefs/OpenRocket
write:
- $HOME/.java/.userPrefs/OpenRocket
dot-openrocket-db:
interface: personal-files
read:
- $HOME/.openrocket
write:
- $HOME/.openrocket
apps:
openrocket:
extensions:
- gnome-3-28
command: bin/launcher
plugs:
- home
- network
- cups-control
- opengl
- dot-java-user-prefs
- dot-openrocket-db
environment:
JAVA_HOME: "$SNAP/usr/lib/jvm/java-11-openjdk-amd64"
parts:
openrocket:
plugin: ant
source: .
ant-build-targets:
- clean
- check
- unittest
- jar
override-pull: |
# Override the pull in order to set the version and the grade.
# In the future, the releases can be annotated tags and snapcraft
# will use those for the version numbers.
#
# This can be extended to other parts of OpenRocket (to use the
# git describe --tags command) but the build should be updated at
# the same time so its consistent across all artifacts. Will defer
# that to a later pull request.
#
# Until then, just use the build.version value
snapcraftctl pull
VERSION=$(cat core/resources/build.properties | awk -F'=' '/build\.version/ { print $2 }')
snapcraftctl set-version "$VERSION"
override-build: |
snapcraftctl build
mv swing/build/jar/OpenRocket.jar $SNAPCRAFT_PART_INSTALL/OpenRocket.jar
stage-packages:
- openjdk-11-jre
- ca-certificates
- ca-certificates-java
prime:
- -usr/lib/jvm/java-*/lib/security/cacerts
- -usr/lib/jvm/java-*/jre/lib/security/cacerts
launcher:
plugin: dump
source: snap/local
organize:
'launcher': 'bin/'