diff --git a/docs/build_docs.sh b/docs/build_docs.sh index c2468db21..6a3354496 100755 --- a/docs/build_docs.sh +++ b/docs/build_docs.sh @@ -3,3 +3,4 @@ python -m sphinx . $BUILD_PATH TARGET_PATH="$BUILD_PATH/swagger" ./build_swagger.sh python ./get-releases-json.py > $BUILD_PATH/releases.json +python ./get-releases-json.py --latest > $BUILD_PATH/latest.txt diff --git a/docs/get-releases-json.py b/docs/get-releases-json.py index 72823da73..4fbfb1de8 100755 --- a/docs/get-releases-json.py +++ b/docs/get-releases-json.py @@ -1,5 +1,6 @@ #!/usr/bin/env python3 +import argparse import json import subprocess @@ -34,11 +35,26 @@ def get_versions(): return sorted(valid, key=lambda tag: StrictVersion(tag["id"]), reverse=True) -def main(): +def main(latest=False): versions = get_versions() - data = {"count": len(versions), "releases": versions} - print(json.dumps(data)) + if latest: + print(versions[0]["id"]) + else: + data = {"count": len(versions), "releases": versions} + print(json.dumps(data, sort_keys=True, indent=2)) if __name__ == "__main__": - main() + parser = argparse.ArgumentParser( + """ + Compile release data and output in in JSON format + """ + ) + parser.add_argument( + "-l", + "--latest", + action="store_true", + help="Only print the latest version then exit", + ) + args = parser.parse_args() + main(latest=args.latest) diff --git a/docs/installation/index.rst b/docs/installation/index.rst index 3a56b4c47..eea43cd70 100644 --- a/docs/installation/index.rst +++ b/docs/installation/index.rst @@ -1,6 +1,52 @@ Installation ============= +Available installation methods +------------------------------- + +Quick install +^^^^^^^^^^^^^ + +To install the latest version of Funkwhale on a recent Debian or Ubuntu server, run:: + + sudo apt-get update + sudo apt-get install curl + sudo sh -c "$(curl -sSL https://get.funkwhale.audio/)" + +This installation script will ask you a few questions, install the required dependencies +and set up your instance. + +Additional info: + +- This script is based on our `Ansible role `_. +- By default, the script installs Nginx, PostgreSQL, Redis and Funkwhale itself but you can customize the installation procedure if you already have some of these services available on your machine +- Upgrade is done using ``sh -c "$(curl -sSL https://get.funkwhale.audio/upgrade.sh)"``. + + +Alternative installation methods +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +We also offer Docker images, an installation guide for Debian 9 and Arch Linux, and `an +Ansible role `_. + +.. toctree:: + :maxdepth: 1 + + external_dependencies + debian + docker + systemd + non_amd64_architectures + +Third-party packages +^^^^^^^^^^^^^^^^^^^^ + +Funkwhale packages are available for the following platforms: + +- `YunoHost 3 `_: https://github.com/YunoHost-Apps/funkwhale_ynh (kindly maintained by `@Jibec `_) +- ArchLinux (as an AUR package): if you'd rather use a package, check out this alternative installation method on ArchLinux: https://wiki.archlinux.org/index.php/Funkwhale (package and wiki kindly maintained by getzee) +- `NixOS `_ (kindly maintained by @mmai) + Project architecture -------------------- @@ -57,29 +103,6 @@ dependencies should be available in your distribution's repositories. Funkwhale works only with Python >= 3.5, as we need support for async/await. Older versions of Python are not supported. - -Available installation methods -------------------------------- - -Docker is the recommended and easiest way to setup your Funkwhale instance. -We also maintain an installation guide for Debian 9 and Arch Linux, and `an -Ansible role `_. - -.. toctree:: - :maxdepth: 1 - - external_dependencies - debian - docker - systemd - non_amd64_architectures - -Funkwhale packages are available for the following platforms: - -- `YunoHost 3 `_: https://github.com/YunoHost-Apps/funkwhale_ynh (kindly maintained by `@Jibec `_) -- ArchLinux (as an AUR package): if you'd rather use a package, check out this alternative installation method on ArchLinux: https://wiki.archlinux.org/index.php/Funkwhale (package and wiki kindly maintained by getzee) -- `NixOS `_ (kindly maintained by @mmai) - Running Funkwhale on the develop branch ---------------------------------------