Trying to package Airsonic without success, help requested

Since Libresonic has been deprecated in favor of Airsonic, I’m currently attempting to pack the latter, using the installer of Libresonic as a base. However, the installer is still not working, probably because the data structure differs between each other.

The official YunoHost package for Libresonic

My attempt to package Airsonic

You can also ask Massyas, the original packager of Libresonic, who tried to help me package Airsonic as well.

Hello csolisr, the better thing to start would be probably to have a look at the example package. And try to do as its install script. That’ll spare you any common mistakes.

Here you said that you’re install script doesn’t work, but what are the errors or symptoms ?

well, what helped me to start is to learn create a virtual machine with Debian 8 + YunoHost, having an easy way to copy/paste my package and using the great package_check (https://github.com/YunoHost/package_check). Then start by following the example package as Maniack suggested.

This really changes everything.

Process is easy:

  1. Under Linux, I use “Virtual Machine Manager”, and created a virtual machine with it
  2. I changed my “hosts” file and added the link: 192.168.100.186 jb.fr w.jb.fr
  3. I installed and up-to-date YunoHost on it
  4. In my Files manager, I added a link to the server using ssh: ssh://admin@jb.fr it looks like file
  5. Copy paste the package_check code and your package
  6. Run your tests: ./package_check/package_check.sh airsonic_ynh

This will run multiple tests, remember to carefully real the Readme and to correctly write your check_process file: https://github.com/Jibec/package_check#syntax-check_process-file

You can easily ask for package_check to stop on error to see what’s going on: --interrupt

Once it works fine with package_check (basically it install and removes without error), you can go further and run your tests on your virtual machine.

Once it works on both package_check and your virtual machine, you can test it one more time on your personal server :stuck_out_tongue:

Of course, this only is my way of working, and I had no knowledge of sysadmin. (I still have almost none, but at least I did some working packages)

Hello @csolisr and @massyas,

I began to work on an airsonic package and was not aware of your package so I started from scratch in a sandbox.

If you want to have a look and maybe participate, I can publish it soon as it can be installed and removed.

I have a few questions for you as you have experience on this application

  1. I went for the “standalone” version of airsonic as it seems lighter and a simpler setup. What do you think about this?
  2. Have you been able to make airsonic to handle Yunohost users (LDAP integration) ? I am able to see Yunohost users in the airsonic admin panel but I cannot loggin with them. Airsonic logs are really poor with this kibd of error

The main issue I have is with package_check as it cannot test the package properly. The install step fails while it works on a real server. I might have to dig more about this.

Hello,
I personally was able to integrate libresonic (https://github.com/YunoHost-Apps/libresonic_ynh) with yunohost LDAP but not airsonic. Looks like api changed and I was not able to set LDAP correctly with airsonic API.
Idea is to create airsonic admin user via api and tell airsonic to use LDAP as authentication instead of default system.
I’m interested also to migrate to airsonic since libresonic is no more supported. Let me know if I can help.
About standalone or tomcat I think both methods can work. I was using subsonic before with standalone server and now libresonic with tomcat sever. Standalone might be lighter yes.

Hello @massyas,

Package has been added to the community list here https://github.com/YunoHost-Apps/airsonic_ynh. It can be installed but I don’t use it on my server for now.

I was not able to integrate it with LDAP and I used the “standalone mode”. It might run with the “tomcat mode” which I didn’t test.

Hi everyone!

I make a PR: https://github.com/YunoHost-Apps/airsonic_ynh/pull/1

Which fully implement install/remove, backup/restore, upgrade, change_url and integrate LDAP

To test it you can:

sudo yunohost app install https://github.com/YunoHost-Apps/airsonic_ynh/tree/package_upgrade --debug
or
sudo yunohost app upgrade airsonic -u https://github.com/YunoHost-Apps/airsonic_ynh/tree/package_upgrade --debug

Feedbacks are welcome :slight_smile:

2 Likes

Airsonic is now available to everyone.

Dedicated app topic here : Airsonic - Music media streamer

1 Like