1
0
mirror of https://github.com/janet-lang/janet synced 2024-09-29 07:20:41 +00:00
janet/snapcraft.yaml
Zygmunt Krynicki 45a60956a6 Add snapcraft packaging
Snapcraft allows the latest version of Janet to be immediately available
to developers on most popular Linux distributions. This patch provides
the snapcraft.yaml file, which provides information about the package,
how to build it and how to install it.

Both janet and jpm are exposed, though the latter requires a store side
alias to be provided, as snap names also control application names, to
avoid clashes between applications.

For this prototype I've selected classic confinement. Application
language packages are usually provided with classic confinement, as that
is most flexible for developers.

Snaps do not support providing manual pages yet, so no entries for those
were created.

Signed-off-by: Zygmunt Krynicki <me@zygoon.pl>
2020-05-13 19:04:10 +02:00

28 lines
1000 B
YAML

name: janet
adopt-info: janet
summary: functional and imperative programming language and bytecode interpreter
description: |
**Janet** is a functional and imperative programming language and bytecode interpreter. It is a
modern lisp, but lists are replaced
by other data structures (arrays, tables (hash table), struct (immutable hash table), tuples).
The language also supports bridging to native code written in C, meta-programming with macros, and bytecode assembly.
base: core18
confinement: classic
grade: stable
apps:
janet:
command: usr/bin/janet
adapter: none
jpm:
command: usr/bin/jpm
adapter: none
parts:
janet:
plugin: make
source: .
make-parameters: [PREFIX=/usr]
build-packages: [build-essential]
override-build: |
snapcraftctl build
snapcraftctl set-version "$($SNAPCRAFT_PART_INSTALL/usr/bin/janet -e '(print "Version: " janet/version)' | awk '{ print $2 }')"