seb3773 / spotify-qt-packages

Debian bookworm packages for spotify-qt
0 stars 0 forks source link

Suggestion to create Q4OS installer #1

Open q4osteam opened 2 weeks ago

q4osteam commented 2 weeks ago

You may also want to create easy to use "qsi" installer for Q4OS users. It would install all the needed by simple clicking the installer. That would need to pack the spotifyd dependencies into the installer. See how to create the installer https://www.q4os.org/dqa009.html , get installers examples https://github.com/q4os-installers , or see /opt/program_files/q4os-devpack/appsetup/q4os_setup.cfg.sample We have also created code for an initial installer, but didn't test it at all, it's really only the first approximation: qsinstaller.zip

seb3773 commented 2 weeks ago

Sure ! I will take a look at how it works and will do that :)

seb3773 commented 2 weeks ago

Question: isn't it better to create two separates qsi installers; because in fact spotify-qt only needs spotifyd if you want to play music on your local computer, but you can use it without spotifyd if you only want to control another spotify machine.

And in the same way, spotifyd can be used too without spotify-qt, for example if it's for a machine only designed to play music remotely controlled by another spotify machine ( not necessary with spotify-qt but with any spotify client)

What do you think ?

q4osteam commented 2 weeks ago

Yes, in such situation a user must decide what packages to install, so no direct dependency is desirable. An installer can run an interactive pre-run script. A user may select what to install in a kdialog window and the script would add required dependencies into the config file "config_1_rc" > [General] > extra_packages= . See the attached obsolete prerun script for nvidia-drivers installer as an example qch_prerun.zip

seb3773 commented 1 week ago

Ok, I took a look at how it works, I have some questions, I'm afraid there are some points I didn't get right ...

In the example provided, I see you set : PK_ARCH="all"

q4osteam commented 1 week ago

How the installer "knows" what .deb .... The installer distinguishes .deb packages architecture by a record in "DEBIAN/control" what it finds in the extracted .deb. So the installer picks up and install the corresponding arch one. In fact it doesn't need to extract all debs, as the info is stored in Packages.gz index file. It works the same way as a regular Apt repository.

What's the différence between .qsh and .qsi formats ? The difference is in the output format and .esh can be ran directly as a script, unlike the .qsi. We consider the .esh format to be deprecated for security reasons.

PK_ARCH line marks what arch will be installer compiled for.