jcorporation / myMPDos

A music player image for Raspberry Pi based on Alpine Linux, MPD and myMPD.
https://jcorporation.github.io/
GNU General Public License v3.0
28 stars 6 forks source link

How to add extra software to the image? #14

Closed pirateradiohack closed 1 year ago

pirateradiohack commented 1 year ago

In another conversation it was mentioned that "extra software" could be installed, by using the EXTRA_SOFTWARE config option.

It looks like the list requires valid Alpine packages to be installed with apk.

I need to install a few Python modules. I understand their dependencies can be installed through apk if I'm lucky. Some dependencies may require pip though, do you have any recommendation in this case?

Regarding the Python modules themselves, I guess the simple way would be to package those to be installable by apk, am I correct? In this case, is there a simple way to provide those packages through a local apk repository?

jcorporation commented 1 year ago

You can simply add your own scripts and files to the bootstrap overlay: https://github.com/jcorporation/myMPDos/tree/master/mympdos/overlay. Scripts in etc/local.d are executed on startup.

Some hints:

I would prefer to package the missing python modules as apk and add a separate repository. Hosting the repository itself on GitHub works like a charm. Running pip should work also, be aware of that lbu does not save all changes, only the changes in directories listed by lbu_include -l and /etc (Reference: https://wiki.alpinelinux.org/wiki/Alpine_local_backup).

pirateradiohack commented 1 year ago

Thanks, that's excellent information. Will try that out soon!