ranfdev / raddiu

Radio program for GNU/Linux made in gtk3
GNU General Public License v3.0
11 stars 3 forks source link

Change required for AppCenter: Require mpv in meson #3

Closed cassidyjames closed 5 years ago

cassidyjames commented 5 years ago

Throwing a dialog about unmet dependencies that aren't in the stock elementary OS install and directing users to the Terminal to install them is not a great user experience; instead, you should include any necessary dependencies in your Debian packaging to ensure they're automatically installed along with your app.

ranfdev commented 5 years ago

Depends: ${misc:Depends}, ${shlibs:Depends}, mpv isn't this enough? (in debian/control) mpv is not installed when running ninja, but it should still be installed when a user installs the deb package, as required by the dependencies listed above. I think...

cassidyjames commented 5 years ago

@ranfdev ah, I meant meson, not Debian. My bad! You should be able to add it to the dependencies here:

https://github.com/ranfdev/raddiu/blob/da50f200cef60677ed27655d7d19fea6a10f7165/meson.build#L28-L34

ranfdev commented 5 years ago

The dependencies listed there are libraries needed for the compilation. mpv is not a library (i am running the program as a subprocess during runtime), so it doesn't work.

Meson can check if a program is installed by using find_program and stop the compilation if it doesn't find it. But still, mpv is needed only during runtime, so it doesn't seem correct to stop the compilation. Using find_program would also probably cause errors on the CI, because mpv is not installed there.

Anyway, from what i understand, the end user shouldn't have any problem when installing the program from the AppCenter because mpv is listed as a dependency in the debian/control file.

cassidyjames commented 5 years ago

@ranfdev ah alright. If issues crop top in testing the built Debian packages I'll let you know, otherwise I'll close this.