From 5bec786074867dca3b236bcc19048866f6db343a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ciar=C3=A1n=20Ainsworth?= Date: Wed, 13 Feb 2019 08:17:09 +0100 Subject: [PATCH 1/6] Spelling corrections, user guides for apps --- docs/developers/index.rst | 15 +++++ docs/{developpers => developers}/subsonic.rst | 0 docs/developpers/index.rst | 15 ----- docs/index.rst | 2 +- docs/installation/index.rst | 2 +- docs/users/apps.rst | 56 ++++++++++++++++++- docs/users/upload.rst | 10 ++-- 7 files changed, 75 insertions(+), 25 deletions(-) create mode 100644 docs/developers/index.rst rename docs/{developpers => developers}/subsonic.rst (100%) delete mode 100644 docs/developpers/index.rst diff --git a/docs/developers/index.rst b/docs/developers/index.rst new file mode 100644 index 000000000..65512923e --- /dev/null +++ b/docs/developers/index.rst @@ -0,0 +1,15 @@ +Developer documentation +========================= + +This documentation is targeted primarily at developers who want to understand +how Funkwhale works and how to build apps that integrate with Funkwhale's ecosystem. + +Reference +--------- + +.. toctree:: + :maxdepth: 2 + + ../api + ../federation/index + subsonic diff --git a/docs/developpers/subsonic.rst b/docs/developers/subsonic.rst similarity index 100% rename from docs/developpers/subsonic.rst rename to docs/developers/subsonic.rst diff --git a/docs/developpers/index.rst b/docs/developpers/index.rst deleted file mode 100644 index 6a56edbe1..000000000 --- a/docs/developpers/index.rst +++ /dev/null @@ -1,15 +0,0 @@ -Developpers documentation -========================= - -This documentation is targeted primarily at developpers who want to understand -how Funkwhale work and how to build apps that integrate with Funkwhale's ecosystem. - -Reference ---------- - -.. toctree:: - :maxdepth: 2 - - ../api - ../federation/index - subsonic diff --git a/docs/index.rst b/docs/index.rst index 5eb505c3f..141a11832 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -19,7 +19,7 @@ Funkwhale is a self-hosted, modern free and open-source music server, heavily in configuration troubleshooting importing-music - developpers/index + developers/index third-party contributing translators diff --git a/docs/installation/index.rst b/docs/installation/index.rst index b13f34419..283de8f81 100644 --- a/docs/installation/index.rst +++ b/docs/installation/index.rst @@ -154,7 +154,7 @@ On docker deployments, run the following commands: export FUNKWHALE_VERSION="|version|" # download the needed files - curl -L -o /etc/nginx/funkwhale_proxy.conf "https://dev.funkwhale.audio/funkwhale/funkwhale/raw/|version|/deploy/funkwhale_proxy.conf" + curl -L -o /etc/nginx/funkwhale_proxy.conf "https://dev.funkwhale.audio/funkwhale/funkwhale/raw/|version|/deploy/docker.funkwhale_proxy.conf" curl -L -o /etc/nginx/sites-available/funkwhale.template "https://dev.funkwhale.audio/funkwhale/funkwhale/raw/|version|/deploy/docker.proxy.template" .. code-block:: shell diff --git a/docs/users/apps.rst b/docs/users/apps.rst index 60ce05e10..493a5f6a2 100644 --- a/docs/users/apps.rst +++ b/docs/users/apps.rst @@ -69,13 +69,19 @@ Ultrasonic (Android) - Google Play: https://play.google.com/store/apps/details?id=org.moire.ultrasonic - Sources: https://github.com/ultrasonic/ultrasonic - Ultrasonic is a full-featured Subsonic client with Playlists, Stars, Search, Offline mode, etc. It's one of the recommended Android client to use with Funkwhale, as we are doing our Android tests on this one. +To enable playback from Funkwhale, enter the following information in the server settings: + +- Server address: the root URL of your instance +- Username: your username on the instance +- Password: this will be your subsonic password + +Then in the general settings select "Browse Using ID3 Tags" DSub (Android) ^^^^^^^^^^^^^^ @@ -95,6 +101,13 @@ DSub is a full-featured Subsonic client that works great, and has a lot of featu It's one of the recommended Android client to use with Funkwhale, as we are doing our Android tests on this one. +To enable playback from Funkwhale, enter the following information in the server settings: + +- Server address: the root URL of your instance +- Username: your username on the instance +- Password: this will be your subsonic password +- Browse By Tags: enabled + play:Sub (iOS) ^^^^^^^^^^^^^^ @@ -102,8 +115,7 @@ play:Sub (iOS) - App Store: https://itunes.apple.com/us/app/play-sub-subsonic-music-streamer/id955329386 - Website: http://michaelsapps.dk/playsubapp/ -Although paying, this app is known to work great with Funkwhale as the maintainer, Michael Bech Hansen implements Funkwhale -specific logic and checks. +Although paid, this app is known to work great with Funkwhale as the maintainer, Michael Bech Hansen, implements Funkwhale-specific logic and checks. Substreamer (iOS) ^^^^^^^^^^^^^^^^^ @@ -122,3 +134,41 @@ music from your Funkwhale instance. However, it does not implement advanced features such as playlist management, search or stars. This is the client we use for our desktop tests. + +To enable playback from Funkwhale, enter the following information in the Internet -> subsonic settings: + +- Server address: the root URL of your instance +- Username: your username on the instance +- Password: this will be your subsonic password + +Mopidy (CLI) +^^^^^^^^^^^^ +- Price: free +- Website: https://www.mopidy.com/ + +Mopidy is a Python-based music server which you can run on your machine in order +to access your music through a CLI such as `ncmpcpp `_. + +In order to use Mopidy to stream from the CLI, you will need to install the following dependencies: + +- Mopidy +- mopidy-subidy: a plugin for Subsonic https://github.com/Prior99/mopidy-subidy +- ncmpcpp + +Once installed, add the following to your /etc/mopidy/mopidy.conf:: + + [subidy] + enabled=True + url=https://path.to/your/funkwhale/server + username=funkwhale + password=your_subsonic_password + #legacy_auth=(optional - setting to yes may solve some connection errors) + #api_version=(optional - specify which API version to use. Subsonic 6.2 uses 1.14.0) + +Then in your .config/ncmpcpp/config, change the startup_screen value so that it doesn't default to the built-in media library:: + + startup_screen = browser + +This will show your artists, albums, and playlists when you start ncmpcpp. + +[Optional]: enable and start mopidy as a service to start the server at boot. \ No newline at end of file diff --git a/docs/users/upload.rst b/docs/users/upload.rst index 5699686d4..08c2e3ab8 100644 --- a/docs/users/upload.rst +++ b/docs/users/upload.rst @@ -21,7 +21,7 @@ default upload quota (1GB by default). This default quota can be increased, reduced or completely removed by your instance admins depending on their policy. Additionnaly, instance admins can grant you storage space manually. Get in touch with them -if you'd like some additionnal storage space. +if you'd like some additional storage space. You can view your current quota and usage at any time by visiting ``/content/libraries/`` on your instance, or clicking the "Add content" link in the sidebar, then visiting the "Upload audio content" section. @@ -31,13 +31,13 @@ or clicking the "Add content" link in the sidebar, then visiting the "Upload aud Creating a library ------------------ -In Funkwhale's world, a library is a collection of audio files with an associated visibility level. A library can either be: +In Funkwhale's world, a library is a collection of audio files with an associated visibility level. A library can be: - Public: anyone can follow the library to automatically access its content (including users on other instances) - Local: other users from your instance can follow the library to automatically access its content -- Private: nobody will access the library content +- Private: nobody apart from you can access the library content -Regardless of this visibility settings, you can share the library link to specific users +Regardless of visibility settings, you can share the library link to specific users and accept their follow request in order to grant then access to its content. Typically, this is useful when you have a private library you want to share with friends or family. @@ -68,7 +68,7 @@ The minimum required tags are: - Artist - Album -However, Funkwhale can understand and use additionnal tags to enhance user experience and display more information. The full list of supported tags is available below: +However, Funkwhale can understand and use additional tags to enhance user experience and display more information. The full list of supported tags is available below: +----------------------------------+--------------------------------------------+---------------------------------------------------------------+ | Name | Example value | Description | From 436e77a8a3111b857b15eb622868269ee0d92eb0 Mon Sep 17 00:00:00 2001 From: Eliot Berriot Date: Mon, 25 Feb 2019 15:12:15 +0100 Subject: [PATCH 2/6] Added link/documentation for Mobydick --- docs/users/apps.rst | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/users/apps.rst b/docs/users/apps.rst index 493a5f6a2..4fad3b45b 100644 --- a/docs/users/apps.rst +++ b/docs/users/apps.rst @@ -171,4 +171,13 @@ Then in your .config/ncmpcpp/config, change the startup_screen value so that it This will show your artists, albums, and playlists when you start ncmpcpp. -[Optional]: enable and start mopidy as a service to start the server at boot. \ No newline at end of file +[Optional]: enable and start mopidy as a service to start the server at boot. + +Mobydick (Desktop) +^^^^^^^^^^^^^^^^^^ + +- Price: free +- Website: https://github.com/BaptisteGelez/mobydick + +Mobydick is a free and open-source desktop application for linux (based on GTK+) to easily download +tracks, albums and discography from a Funkwhale instance. From 102b2da34a843c36575b29e938ac0f917b785ff9 Mon Sep 17 00:00:00 2001 From: Eliot Berriot Date: Thu, 7 Mar 2019 10:09:31 +0100 Subject: [PATCH 3/6] Fix #713: Added documentation on mono-container docker upgrade --- changes/changelog.d/713.doc | 1 + docs/upgrading/index.rst | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 changes/changelog.d/713.doc diff --git a/changes/changelog.d/713.doc b/changes/changelog.d/713.doc new file mode 100644 index 000000000..ad3db61a2 --- /dev/null +++ b/changes/changelog.d/713.doc @@ -0,0 +1 @@ +Added documentation on mono-container docker upgrade (#713) diff --git a/docs/upgrading/index.rst b/docs/upgrading/index.rst index 577066fc3..01ed47a4a 100644 --- a/docs/upgrading/index.rst +++ b/docs/upgrading/index.rst @@ -36,6 +36,39 @@ Docker setup If you've followed the setup instructions in :doc:`Docker`, upgrade path is easy: +Mono-container installation +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Basically, you need to pull the new container image, stop and delete your existing container, +and relaunch a new one: + +.. parsed-literal:: + export FUNKWHALE_VERSION="|version|" + +.. code-block:: shell + + docker pull funkwhale/all-in-one:$FUNKWHALE_VERSION + docker stop funkwhale + docker rm funkwhale + docker run \ + --name=funkwhale \ + --restart=unless-stopped \ + --env-file=/srv/funkwhale/.env \ + -v /srv/funkwhale/data:/data \ + -v /path/to/your/music/dir:/music:ro \ + -e PUID=$UID \ + -e PGID=$GID \ + -p 5000:80 \ + -d \ + funkwhale/all-in-one:$FUNKWHALE_VERSION + +If you are not managing the container directly by hand, but use a third party tool such as Portainer, +instructions will vary, but, as a rule of thumb, pulling the new version of the image, and relaunch +a new container with the same arguments as the previous one (except for the image version) is enough. + +Multi-container installation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + .. parsed-literal:: cd /srv/funkwhale From a3a7ec0873572c430db1e01d7ff9d924300ee674 Mon Sep 17 00:00:00 2001 From: Eliot Berriot Date: Thu, 7 Mar 2019 10:35:33 +0100 Subject: [PATCH 4/6] Fix #716: constant and unpredictable reordering during file upload --- changes/changelog.d/716.bugfix | 1 + front/src/components/library/FileUpload.vue | 13 ++++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 changes/changelog.d/716.bugfix diff --git a/changes/changelog.d/716.bugfix b/changes/changelog.d/716.bugfix new file mode 100644 index 000000000..1b9b182c9 --- /dev/null +++ b/changes/changelog.d/716.bugfix @@ -0,0 +1 @@ +Fixed constant and unpredictable reordering during file upload (#716) diff --git a/front/src/components/library/FileUpload.vue b/front/src/components/library/FileUpload.vue index b7c164eb1..06fbdbad6 100644 --- a/front/src/components/library/FileUpload.vue +++ b/front/src/components/library/FileUpload.vue @@ -279,15 +279,18 @@ export default { }, sortedFiles() { // return errored files on top - return this.files.sort(f => { + + return _.sortBy(this.files.map(f => { + let statusIndex = 0 if (f.errored) { - return -5; + statusIndex = -1 } if (f.success) { - return 5; + statusIndex = 1 } - return 0; - }); + f.statusIndex = statusIndex + return f + }), ['statusIndex', 'name']) } }, watch: { From 9e6bbb48330369ab59b2a40316a1db6f6d768de9 Mon Sep 17 00:00:00 2001 From: Eliot Berriot Date: Thu, 7 Mar 2019 11:03:45 +0100 Subject: [PATCH 5/6] Fix #729: Display new notifications immediatly on notifications page --- changes/changelog.d/729.bugfix | 1 + front/src/views/Notifications.vue | 17 ++++++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) create mode 100644 changes/changelog.d/729.bugfix diff --git a/changes/changelog.d/729.bugfix b/changes/changelog.d/729.bugfix new file mode 100644 index 000000000..a0209cb95 --- /dev/null +++ b/changes/changelog.d/729.bugfix @@ -0,0 +1 @@ +Display new notifications immediatly on notifications page (#729) diff --git a/front/src/views/Notifications.vue b/front/src/views/Notifications.vue index 98e666943..2ba075b34 100644 --- a/front/src/views/Notifications.vue +++ b/front/src/views/Notifications.vue @@ -1,10 +1,7 @@