Closed xinstein closed 2 years ago
I have no idea about the answer to your question, but incase it helps, here is how I install ample:
cd /var/www/ampache/public
sudo rm -rf ample*
curl -s https://api.github.com/repos/mitchray/ample/releases/latest | grep "browser_download_url.*ample_.*zip" | cut -d : -f 2,3 | tr -d \" | sudo wget -i -
sudo unzip ample_*
sudo rm ample_*
sudo sed -i 's/border-radius:50\%/border-radius:9px/' /var/www/ampache/public/ample/public/build/bundle.css
sudo chown -R www-data:www-data /var/www/ampache
Hey, Ample is designed as a drop-in companion client for an Ampache server specifically, so my assumption is it wouldn't work
If Nextcloud/music has support for the entire Ampache API, including things like user_preferences then maybe... though I'm guessing it would just be more general artists/albums/songs
If you're interested and able to test it, override the server URL and see what happens
I tried it, here's my Dockerfile:
FROM php:8-apache
RUN apt-get update ;
RUN apt-get install -y git ;
RUN cd /var/www/html/; \
git clone https://github.com/mitchray/ample.git ;
RUN apt-get remove --purge -y git; \
apt-get autoremove --purge -y;
RUN a2enmod rewrite ;
##### clear cache
RUN rm -rf /var/lib/apt/lists/* ;
Then I open https://mydomain:myport/ample/index.php (the protocol and the domain and port are my reverse proxy):
Some error occurs on the browser console:
bundle.js:1
Uncaught SyntaxError: Unexpected token '<' (at bundle.js:1:1)
cqfill.min.js:1
Uncaught (in promise) Error: (https://mydomain:myport/ample/public/build/bundle.css): Advanced beyond the end
at S (cqfill.min.js:1:4083)
at L (cqfill.min.js:1:3637)
at z (cqfill.min.js:1:3712)
at B (cqfill.min.js:1:3849)
at Q (cqfill.min.js:1:3916)
at C (cqfill.min.js:1:2655)
at t (cqfill.min.js:2:444)
S @ cqfill.min.js:1
L @ cqfill.min.js:1
z @ cqfill.min.js:1
B @ cqfill.min.js:1
Q @ cqfill.min.js:1
C @ cqfill.min.js:1
t @ cqfill.min.js:2
await in t (async)
(anonymous) @ cqfill.min.js:2
p @ cqfill.min.js:2
(anonymous) @ cqfill.min.js:2
(anonymous) @ cqfill.min.js:2
site.webmanifest:1
Manifest: Line: 1, column: 1, Syntax error.
-
I'm going to say it isn't feasible to support anything other than a standard Ampache server
Sorry to necro-post, but as the developer of Nextcloud Music, I find this topic interesting. I'm currently in the process of adding support for Ampache API versions 5 and 6 to Nextcloud Music. While doing that, I'd like to make it compatible also with Ample.
I actually already have a partially compatible version on my work area, where some of the views of Ample work fine. But to make it complete, some significant effort is still needed. The most important missing piece is the advanced_search
which is used heavily on Ample but not yet supported on Nextcloud Music. Before this, I haven't seen any client using this part of the API, and hence I have opted not to invest time and effort on it.
Interesting to learn you were able to get it at least partially working with Ample 👍
Keep me posted if/when you add advanced_search support
The Nextcloud/ownCloud Music v1.9.1 was released a couple of days ago and it works rather nicely together with Ample.
There are a few limitations, though:
It's possible to set up Nextcloud or ownCloud server to use either MySQL/MariaDB, PostgreSQL, or SQLite as the DB backend. Out of these, SQLite does not have native support for regular expressions, and hence, the Ampache advanced search with regex pattern will not work on installations using SQLite. In addition to being available in the Advanced search view, Ample uses regex searches under the hood in a few places and these features will not work with SQLite.
The advanced search rules "sounds like" and "doesn't sound like" work only with MySQL/MariaDB.
In the advanced search view, majority of the available rules are supported but some are not.
The format used for the method user_preference
is that of Ampache 6.0.1 or later. Hence, the view using this method does not work on the latest Ample release 2.0.2 but I can see that there is already on unreleased API update in this repository.
Edit: This is fixed in Ample 2.0.3
Update: Nextcloud Music v1.11.0 now fixes the DB-type limitations mentioned above. That is, the regexp searches now work fine also on SQLite, and "sounds like"-type of searches work also on SQLite and PostgreSQL. On the latter, this requires installing the extension fuzzystrmatch
, though. Also, quite a few bugs were fixed from various cases of the advanced search.
I understand that this has to be installed alongside ampache server. But it seems the only coherence with the ampache server is the serverURL in stores/server (correct me if I'm wrong).
Nextcloud on the other hand also uses php and there's the music app which provides both ampache and subsonic interface, as well as a not-so-satisfactory webui.
I'm thinking if this could be installed standalone and the serverURL be made configurable, it might just work well with nextcloud music.
Is this doable?