[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gambas3.desktop install idea to detect installed toolkits...


On Wednesday, November 5th, 2025 at 13:10, Tim Dickson <dickson.tim@xxxxxxxxxxxxxx> wrote:

> that may cause some issues. If you create a package, and it is
> installed, then the user installs something extra, like qt5 or 6 for
> example, the desktop would still point to the lib option used when it
> was installed, so you would have to reinstall gambas to fix it. When the
> installer compares old and new files for updating it would fail to
> compare the dynamic desktop file. ( not a massive deal, as it is being
> treated like a config file), but if you wanted to step back to a
> previous config, you would not be able to, so by installing a ui lib
> after install, then reinstalling you would get different behaviour which
> you would have to be aware of for debugging, if say for example there is
> a ui lib related gambas bug in the different ui lib installed.
> Some distro's have many options available, so which one is chosen by the
> script on install?.
>
> The old method of not specifying, then manually specifying by env
> variable or calling option is less prone to confusion in my opinion,
> unless I am misunderstanding the subject.
> regards, Tim

Hi Tim,

I'll try to paint a picture here so you understand what is going on.
First we are talking about the package named gambas3 (the complete IDE).
This packages should install all available toolkits on the system. So, if GTK3, QT5 and QT6 exist on the distro, they will be installed. That is how gambas3 (the IDE) should be packaged. That is also why you can select them in the components tab in IDE, because they are installed.

Upon install, the installer creates a gambas3.desktop that has a 'run with' on right-click defaulting to all toolkits (QT4, QT5, QT6 and GTK3) even if not available on the system. The post install script uses gbx3 to figure out what toolkit components are installed and replaces the default gambas3.desktop with an accurate one. So, if no QT$ available it will not be in the 'run with'.

So far, so good. Now, here is where you go wrong. First this is about the toolkits ONLY, no other libs. When you try to remove QT5 for example (see attached image) on Debian, gambas3 will also be removed as it depends on it. And removing gambas3 also removes the gambas3.desktop.

And to get gambas3 back you will need to reinstall and the post install script will run again as it is part of the gambas3 package.

So, what was the issue?


gbWilly



Attachment: removeqt5.png
Description: PNG image


Follow-Ups:
Re: gambas3.desktop install idea to detect installed toolkits...Benoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx>