mirror of
https://github.com/YunoHost-Apps/funkwhale_ynh.git
synced 2024-09-03 18:36:24 +02:00
Testing (#130)
* Uprade to 1.1 and fixes Twisted by retrograding it (#129)
This commit is contained in:
parent
1c30dc1a71
commit
8172790fb4
8 changed files with 156 additions and 60 deletions
13
README.md
13
README.md
|
@ -1,7 +1,9 @@
|
||||||
# Funkwhale for YunoHost
|
# Funkwhale for YunoHost
|
||||||
|
|
||||||
[![Integration level](https://dash.yunohost.org/integration/funkwhale.svg)](https://dash.yunohost.org/appci/app/funkwhale) ![](https://ci-apps.yunohost.org/ci/badges/funkwhale.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/funkwhale.maintain.svg)
|
[![Integration level](https://dash.yunohost.org/integration/funkwhale.svg)](https://dash.yunohost.org/appci/app/funkwhale) ![](https://ci-apps.yunohost.org/ci/badges/funkwhale.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/funkwhale.maintain.svg)
|
||||||
[![Install Funkwhale with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=funkwhale)
|
[![Install Funkwhale with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=funkwhale)
|
||||||
|
|
||||||
|
*[Lire ce readme en français.](./README_fr.md)*
|
||||||
|
|
||||||
> *This package allows you to install Funkwhale quickly and simply on a YunoHost server.
|
> *This package allows you to install Funkwhale quickly and simply on a YunoHost server.
|
||||||
If you don't have YunoHost, please see [here](https://yunohost.org/#/install) to know how to install and enjoy it.*
|
If you don't have YunoHost, please see [here](https://yunohost.org/#/install) to know how to install and enjoy it.*
|
||||||
|
@ -11,12 +13,18 @@ A modern, convivial and free music server on YunoHost
|
||||||
|
|
||||||
Installation requires a dedicated domain or subdomain. Installing in a subpath is not supported by the upstream project due to dependency requirements.
|
Installation requires a dedicated domain or subdomain. Installing in a subpath is not supported by the upstream project due to dependency requirements.
|
||||||
|
|
||||||
**Shipped version:** 1.0.1
|
**Shipped version:** 1.1
|
||||||
|
|
||||||
## Screenshots
|
## Screenshots
|
||||||
|
|
||||||
![](https://funkwhale.audio/img/desktop.5e79eb16.jpg)
|
![](https://funkwhale.audio/img/desktop.5e79eb16.jpg)
|
||||||
|
|
||||||
|
## Demo
|
||||||
|
|
||||||
|
* [Official demo](https://demo.funkwhale.audio)
|
||||||
|
|
||||||
|
**Username:** demo **Password:** demo
|
||||||
|
|
||||||
## Admin
|
## Admin
|
||||||
|
|
||||||
The admin uses the login you provided at installation. The password is the same you use for YunoHost.
|
The admin uses the login you provided at installation. The password is the same you use for YunoHost.
|
||||||
|
@ -53,7 +61,6 @@ The admin interface is accessible at the address: `your.domain.fr/api/admin`
|
||||||
## Links
|
## Links
|
||||||
|
|
||||||
* Report a bug about this package: https://github.com/YunoHost-Apps/funkwhale_ynh
|
* Report a bug about this package: https://github.com/YunoHost-Apps/funkwhale_ynh
|
||||||
* Report a bug about Funkwhale itself: https://code.eliotberriot.com/funkwhale/funkwhale/
|
|
||||||
* App website: https://docs.funkwhale.audio
|
* App website: https://docs.funkwhale.audio
|
||||||
* Upstream app repository: https://dev.funkwhale.audio/funkwhale/funkwhale
|
* Upstream app repository: https://dev.funkwhale.audio/funkwhale/funkwhale
|
||||||
* YunoHost website: https://yunohost.org/
|
* YunoHost website: https://yunohost.org/
|
||||||
|
|
81
README_fr.md
Normal file
81
README_fr.md
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
# Funkwhale pour YunoHost
|
||||||
|
|
||||||
|
[![Integration level](https://dash.yunohost.org/integration/funkwhale.svg)](https://dash.yunohost.org/appci/app/funkwhale) ![](https://ci-apps.yunohost.org/ci/badges/funkwhale.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/funkwhale.maintain.svg)
|
||||||
|
[![Install Funkwhale with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=funkwhale)
|
||||||
|
|
||||||
|
*[Read this readme in english.](./README.md)*
|
||||||
|
|
||||||
|
> *Ce package vous permet d'installer Funkwhale rapidement et simplement sur un serveur YunoHost.
|
||||||
|
Si vous n'avez pas YunoHost, consultez [le guide](https://yunohost.org/#/install) pour apprendre comment l'installer.*
|
||||||
|
|
||||||
|
## Vue d'ensemble
|
||||||
|
Un serveur de musique moderne, convivial et gratuit sur YunoHost
|
||||||
|
|
||||||
|
L'installation nécessite un domaine ou un sous-domaine dédié. L'installation dans un chemin du domaine n'est pas prise en charge par le projet en amont en raison des exigences de dépendance.
|
||||||
|
|
||||||
|
**Version incluse :** 1.1
|
||||||
|
|
||||||
|
## Captures d'écran
|
||||||
|
|
||||||
|
![](https://funkwhale.audio/img/desktop.5e79eb16.jpg)
|
||||||
|
|
||||||
|
## Démo
|
||||||
|
|
||||||
|
* [Démo officielle](https://demo.funkwhale.audio)
|
||||||
|
|
||||||
|
**Nom d’utilisateur :** demo **Mot de passe :** demo
|
||||||
|
|
||||||
|
## Admin
|
||||||
|
|
||||||
|
L'administrateur utilise le login que vous avez fourni lors de l'installation. Le mot de passe est le même que celui que vous utilisez pour YunoHost.
|
||||||
|
|
||||||
|
L'interface d'administration est accessible à l'adresse : votre.domaine.fr/api/admin
|
||||||
|
|
||||||
|
# État de ce paquet
|
||||||
|
|
||||||
|
* Les éléments suivants ont été testés avec ce paquet et fonctionnent :
|
||||||
|
|
||||||
|
* [x] installer/supprimer/sauvegarder/supprimer/mettre à jour avec x86_64
|
||||||
|
* [x] importation des fichiers avec l’interface web, importations depuis youtube, interraction avec MusicBrainz
|
||||||
|
* [x] [API Subsonic](https://docs.funkwhale.audio/users/apps.html)
|
||||||
|
* [x] Tests de [Fédération](https://docs.funkwhale.audio/federation.html)
|
||||||
|
* [x] [Import CLI](https://docs.funkwhale.audio/importing-music.html#from-music-directory-on-the-server) N'oubliez pas de `source $final_path/venv/bin/activate`, puis `source $final_path/load_env` avant de taper en utilisant manage.py.
|
||||||
|
|
||||||
|
* à ajouter :
|
||||||
|
* [ ] Stocker les fichiers dans HOME, voir https://github.com/YunoHost-Apps/funkwhale_ynh/issues/15
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
|
||||||
|
* Documentation officielle : https://docs.funkwhale.audio
|
||||||
|
|
||||||
|
## Caractéristiques spécifiques YunoHost
|
||||||
|
|
||||||
|
#### Support multi-utilisateur
|
||||||
|
|
||||||
|
* L'authentification LDAP et HTTP est-elle prise en charge ? **OUI**
|
||||||
|
* L'application peut-elle être utilisée par plusieurs utilisateurs ? **OUI**
|
||||||
|
|
||||||
|
#### Architectures supportées
|
||||||
|
|
||||||
|
* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/funkwhale%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/funkwhale/)
|
||||||
|
* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/funkwhale%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/funkwhale/)
|
||||||
|
|
||||||
|
## Liens
|
||||||
|
|
||||||
|
* Signaler un bug : https://github.com/YunoHost-Apps/funkwhale_ynh
|
||||||
|
* Site de l’application : https://docs.funkwhale.audio
|
||||||
|
* Dépôt de l'application principale : https://dev.funkwhale.audio/funkwhale/funkwhale
|
||||||
|
* Site web YunoHost : https://yunohost.org/
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Informations pour les développeurs
|
||||||
|
|
||||||
|
Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/funkwhale_ynh/tree/testing).
|
||||||
|
|
||||||
|
Pour essayer la branche testing, procédez comme suit.
|
||||||
|
```
|
||||||
|
sudo yunohost app install https://github.com/YunoHost-Apps/funkwhale_ynh/tree/testing --debug
|
||||||
|
or
|
||||||
|
sudo yunohost app upgrade funkwhale -u https://github.com/YunoHost-Apps/funkwhale_ynh/tree/testing --debug
|
||||||
|
```
|
|
@ -1,5 +1,5 @@
|
||||||
SOURCE_URL=https://dev.funkwhale.audio/funkwhale/funkwhale/builds/artifacts/1.0.1/download?job=build_front
|
SOURCE_URL=https://dev.funkwhale.audio/funkwhale/funkwhale/builds/artifacts/1.1/download?job=build_front
|
||||||
SOURCE_SUM=0b77367cb4e8d1b57af59282af90ac41e0915de85cf5337b02f16e6aa0bd0129
|
SOURCE_SUM=cf985340ba0fe477fa5f9b8940102e016c0c75a9941dd8acabb8dc5f77cda000
|
||||||
SOURCE_SUM_PRG=sha256sum
|
SOURCE_SUM_PRG=sha256sum
|
||||||
SOURCE_FORMAT=zip
|
SOURCE_FORMAT=zip
|
||||||
SOURCE_IN_SUBDIR=false
|
SOURCE_IN_SUBDIR=false
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
SOURCE_URL=https://dev.funkwhale.audio/funkwhale/funkwhale/-/archive/1.0.1/funkwhale-1.01.tar.gz
|
SOURCE_URL=https://dev.funkwhale.audio/funkwhale/funkwhale/-/archive/1.1/funkwhale-1.1.tar.gz
|
||||||
SOURCE_SUM=103e45a3c8ae2a1223cb83689ed0a8f35bc7dfa053725a9dfd211e0e0973141b
|
SOURCE_SUM=924a31ba385c9c52204d78aa89a00b5f53240bf91a13b2c08945fde8f770d345
|
||||||
SOURCE_SUM_PRG=sha256sum
|
SOURCE_SUM_PRG=sha256sum
|
||||||
SOURCE_FORMAT=tar.bz2
|
SOURCE_FORMAT=tar.bz2
|
||||||
SOURCE_IN_SUBDIR=true
|
SOURCE_IN_SUBDIR=true
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
"en": "Modern, convivial and free music server",
|
"en": "Modern, convivial and free music server",
|
||||||
"fr": "Serveur de musique moderne, convivial et gratuit"
|
"fr": "Serveur de musique moderne, convivial et gratuit"
|
||||||
},
|
},
|
||||||
"version": "1.0.1~ynh1",
|
"version": "1.1~ynh1",
|
||||||
"url": "https://funkwhale.audio",
|
"url": "https://funkwhale.audio",
|
||||||
"license": "AGPL-3.0-or-later",
|
"license": "AGPL-3.0-or-later",
|
||||||
"maintainer": {
|
"maintainer": {
|
||||||
|
@ -58,4 +58,4 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,7 +48,6 @@ ynh_script_progression --message="Storing installation settings..."
|
||||||
|
|
||||||
ynh_app_setting_set --app="$app" --key=domain --value="$domain"
|
ynh_app_setting_set --app="$app" --key=domain --value="$domain"
|
||||||
ynh_app_setting_set --app="$app" --key=path --value="$path_url"
|
ynh_app_setting_set --app="$app" --key=path --value="$path_url"
|
||||||
ynh_app_setting_set --app="$app" --key=is_public --value="$is_public"
|
|
||||||
ynh_app_setting_set --app="$app" --key=admin --value="$admin"
|
ynh_app_setting_set --app="$app" --key=admin --value="$admin"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
|
@ -56,7 +55,7 @@ ynh_app_setting_set --app="$app" --key=admin --value="$admin"
|
||||||
#=================================================
|
#=================================================
|
||||||
# FIND AND OPEN A PORT
|
# FIND AND OPEN A PORT
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression --message="Configuring firewall..."
|
ynh_script_progression --message="Finding an available port..."
|
||||||
|
|
||||||
# Find a free port
|
# Find a free port
|
||||||
port=$(ynh_find_port --port=5000)
|
port=$(ynh_find_port --port=5000)
|
||||||
|
@ -68,7 +67,7 @@ ynh_app_setting_set --app="$app" --key=port --value="$port"
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression --message="Installing dependencies..."
|
ynh_script_progression --message="Installing dependencies..."
|
||||||
|
|
||||||
ynh_install_app_dependencies $pkg_dependencies
|
ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# CREATE A POSTGRESQL DATABASE
|
# CREATE A POSTGRESQL DATABASE
|
||||||
|
@ -236,14 +235,14 @@ ynh_add_fail2ban_config --logpath="/var/log/nginx/$domain-access.log" --failrege
|
||||||
#=================================================
|
#=================================================
|
||||||
# SETUP SSOWAT
|
# SETUP SSOWAT
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression --message="Configuring SSOwat..."
|
ynh_script_progression --message="Configuring permissions..."
|
||||||
|
|
||||||
# Make app public if necessary or protect it
|
# Make app public if necessary or protect it
|
||||||
if [ $is_public -eq 1 ]
|
if [ $is_public -eq 1 ]
|
||||||
then
|
then
|
||||||
# Everyone can access the app.
|
# Everyone can access the app.
|
||||||
# The "main" permission is automatically created before the install script.
|
# The "main" permission is automatically created before the install script.
|
||||||
ynh_permission_update --permission "main" --add "visitors"
|
ynh_permission_update --permission="main" --add="visitors"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
|
@ -18,7 +18,6 @@ app=$YNH_APP_INSTANCE_NAME
|
||||||
|
|
||||||
domain=$(ynh_app_setting_get --app="$app" --key=domain)
|
domain=$(ynh_app_setting_get --app="$app" --key=domain)
|
||||||
path_url=$(ynh_app_setting_get --app="$app" --key=path)
|
path_url=$(ynh_app_setting_get --app="$app" --key=path)
|
||||||
is_public=$(ynh_app_setting_get --app="$app" --key=is_public)
|
|
||||||
final_path=$(ynh_app_setting_get --app="$app" --key=final_path)
|
final_path=$(ynh_app_setting_get --app="$app" --key=final_path)
|
||||||
db_name=$(ynh_app_setting_get --app="$app" --key=db_name)
|
db_name=$(ynh_app_setting_get --app="$app" --key=db_name)
|
||||||
db_user="$db_name"
|
db_user="$db_name"
|
||||||
|
@ -52,6 +51,13 @@ if [ ! -d "$final_path/code/" ]; then
|
||||||
ynh_app_setting_set --app="$app" --key=code_migration --value=1
|
ynh_app_setting_set --app="$app" --key=code_migration --value=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Cleaning legacy permissions
|
||||||
|
if ynh_legacy_permissions_exists; then
|
||||||
|
ynh_legacy_permissions_delete_all
|
||||||
|
|
||||||
|
ynh_app_setting_delete --app=$app --key=is_public
|
||||||
|
fi
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
|
@ -1,74 +1,77 @@
|
||||||
django~=3.0.8
|
django~=3.0.8
|
||||||
setuptools>=49
|
setuptools>=49
|
||||||
# Configuration
|
# Configuration
|
||||||
django-environ~=0.4
|
django-environ~=0.4.0
|
||||||
|
|
||||||
# Images
|
# Images
|
||||||
Pillow~=7.0
|
Pillow~=7.0.0
|
||||||
|
|
||||||
django-allauth~=0.42
|
django-allauth~=0.42.0
|
||||||
|
|
||||||
psycopg2-binary~=2.8
|
psycopg2-binary~=2.8.0
|
||||||
|
|
||||||
# Time zones support
|
# Time zones support
|
||||||
pytz==2020.1
|
pytz==2020.1
|
||||||
|
|
||||||
# Redis support
|
# Redis support
|
||||||
django-redis~=4.12
|
django-redis~=4.12.0
|
||||||
redis~=3.5
|
redis~=3.5.0
|
||||||
kombu~=4.6
|
kombu~=4.6.0
|
||||||
|
|
||||||
celery~=4.4
|
celery~=4.4.0
|
||||||
|
|
||||||
|
|
||||||
# Your custom requirements go here
|
# Your custom requirements go here
|
||||||
django-cors-headers~=3.4
|
django-cors-headers~=3.4.0
|
||||||
musicbrainzngs~=0.7.1
|
musicbrainzngs~=0.7.1
|
||||||
djangorestframework~=3.11
|
djangorestframework~=3.11.0
|
||||||
djangorestframework-jwt~=1.11
|
djangorestframework-jwt~=1.11.0
|
||||||
arrow~=0.15.5
|
arrow~=0.15.5
|
||||||
persisting-theory~=0.2
|
persisting-theory~=0.2.0
|
||||||
django-versatileimagefield~=2.0
|
django-versatileimagefield~=2.0.0
|
||||||
django-filter~=2.3
|
django-filter~=2.3.0
|
||||||
django-rest-auth~=0.9
|
django-rest-auth~=0.9.0
|
||||||
ipython~=7.10
|
ipython~=7.10.0
|
||||||
mutagen~=1.45
|
mutagen~=1.45.0
|
||||||
|
|
||||||
pymemoize~=1.0
|
pymemoize~=1.0.0
|
||||||
|
|
||||||
django-dynamic-preferences~=1.10
|
django-dynamic-preferences~=1.10
|
||||||
raven~=6.10
|
raven~=6.10.0
|
||||||
python-magic~=0.4
|
python-magic~=0.4.0
|
||||||
channels~=2.4
|
channels~=2.4.0
|
||||||
channels_redis~=3.0
|
channels_redis~=3.0.0
|
||||||
uvicorn[standard]~=0.12
|
uvicorn[standard]~=0.12.0
|
||||||
gunicorn~=20.0
|
gunicorn~=20.0.0
|
||||||
|
|
||||||
cryptography~=2.9
|
cryptography~=2.9.0
|
||||||
# requests-http-signature==0.0.3
|
# requests-http-signature==0.0.3
|
||||||
# clone until the branch is merged and released upstream
|
# clone until the branch is merged and released upstream
|
||||||
git+https://github.com/EliotBerriot/requests-http-signature.git@signature-header-support
|
git+https://github.com/agateblue/requests-http-signature.git@signature-header-support
|
||||||
django-cleanup~=5.0
|
django-cleanup~=5.0.0
|
||||||
requests~=2.24
|
requests~=2.24.0
|
||||||
pyOpenSSL~=19.1
|
pyOpenSSL~=19.1.0
|
||||||
|
|
||||||
# for LDAP authentication
|
# for LDAP authentication
|
||||||
python-ldap~=3.3
|
python-ldap~=3.3.0
|
||||||
django-auth-ldap~=2.2
|
django-auth-ldap~=2.2.0
|
||||||
|
|
||||||
pydub~=0.24
|
pydub~=0.24.0
|
||||||
pyld~=1.0
|
pyld~=1.0.0
|
||||||
aiohttp~=3.6
|
aiohttp~=3.6.0
|
||||||
|
|
||||||
django-oauth-toolkit~=1.3
|
django-oauth-toolkit~=1.3.0
|
||||||
django-storages~=1.9
|
django-storages~=1.9.0
|
||||||
boto3~=1.14
|
boto3~=1.14.0
|
||||||
unicode-slugify~=0.1
|
unicode-slugify~=0.1.0
|
||||||
django-cacheops~=5.0
|
django-cacheops~=5.0.0
|
||||||
|
|
||||||
click~=7.1
|
click~=7.1.0
|
||||||
service_identity~=18.1
|
service_identity~=18.1.0
|
||||||
markdown~=3.2
|
markdown~=3.2.0
|
||||||
bleach~=3.1
|
bleach~=3.1.0
|
||||||
feedparser==6.0.0b3
|
feedparser~=6.0.0
|
||||||
watchdog~=0.10
|
watchdog~=1.0.2
|
||||||
|
|
||||||
|
## Pin third party dependency to avoid issue with latest version
|
||||||
|
twisted==20.3.0
|
||||||
|
|
Loading…
Reference in a new issue