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 override-pull: | printf "\n[Workspace]\n" >> ${SNAPCRAFT_PART_SRC}/Cargo.toml snapcraftctl pull