Add Snapcraft metadata and install/maintenance hooks (#666)
* Add Snapcraft metadata and install/maintenance hooks * Move set-environment script into snap/local * snap: Remove diesel-cli part. This *was* necessary as of 0.3.0, but now `plm migrations run` does the job. * snap: Add an actual description * snap: Add an 'enabled' config item. Don't try to run until enabled is set, and automatically run the migrations when we are enabled
This commit is contained in:
committed by
Igor Galić
parent
309e1200d0
commit
b5eecbf2e7
@@ -0,0 +1,50 @@
|
||||
name: plume
|
||||
base: core18
|
||||
version: '0.3.0' # just for humans, typically '1.2+git' or '1.3.2'
|
||||
summary: Multi-user blogging platform, federated over ActivityPub
|
||||
description: |
|
||||
Plume is a federated blogging platform, featuring:
|
||||
* A blog-centric approach: you can create as much blogs as you want with your account, to keep your different publications separated.
|
||||
* Media management: you can upload pictures to illustrate your articles, but also audio files if you host a podcast, and manage them all from Plume.
|
||||
* Federation: Plume is part of a network of interconnected websites called the Fediverse. Each of these websites (often called instances) have their own rules and thematics, but they can all communicate with each other.
|
||||
* Collaborative writing: invite other people to your blogs, and write articles together.
|
||||
grade: devel # must be 'stable' to release into candidate/stable channels
|
||||
confinement: strict
|
||||
|
||||
apps:
|
||||
plume:
|
||||
daemon: simple
|
||||
command: set-environment bin/plume
|
||||
plugs:
|
||||
- network
|
||||
- network-bind
|
||||
plm:
|
||||
command: set-environment bin/plm
|
||||
|
||||
parts:
|
||||
plume:
|
||||
plugin: rust
|
||||
source: .
|
||||
rust-revision: nightly-2019-03-23
|
||||
build-packages:
|
||||
- libssl-dev
|
||||
- pkg-config
|
||||
- libsqlite3-dev
|
||||
- gettext
|
||||
after:
|
||||
- cargo-web
|
||||
override-build: |
|
||||
export PATH=$PATH:$SNAPCRAFT_PROJECT_DIR/../.cargo/bin
|
||||
cargo web deploy -p plume-front --release
|
||||
cargo install --force --no-default-features --features sqlite --path . --root ${SNAPCRAFT_PART_INSTALL}
|
||||
cargo install --force --no-default-features --features sqlite --path plume-cli --root ${SNAPCRAFT_PART_INSTALL}
|
||||
cp -a assets migrations static target translations ${SNAPCRAFT_PART_INSTALL}
|
||||
cp snap/local/set-environment ${SNAPCRAFT_PART_INSTALL}
|
||||
stage-packages:
|
||||
- openssl
|
||||
- libsqlite3-0
|
||||
|
||||
cargo-web:
|
||||
plugin: rust
|
||||
source: https://github.com/koute/cargo-web.git
|
||||
source-tag: 0.6.26
|
||||
Reference in New Issue
Block a user