At 12:15 PM +0100 3/15/15, Marko Käning wrote:
On 15 Mar 2015, at 00:02 , Bradley Giesbrecht <pixi...@macports.org> wrote:
...Imagine you want to ship, say, one of these KDE games. They are nice and small, but need the
whole background of KDE4/KF5 libs for them to function - of course.

Instead of shipping KDE or KF5 as a whole with each and every little game, it would be very nice to have a means to redistributeably install a meta-port like kde4-workspace (as discussed in the before-mentioned parallel thread) which then would include everything needed for properly
running any KDE4 application.

One would then have to ship only the meta-port mdmv package and the several mdmg packages for
the whatever KDE4 application.

All these would - IDEALLY - have to be built in such a way that they can coexist with an existing MacPorts installation, I suppose. This does not only mean that the PREFIX shouldn't be /opt/local, but merely also that the application's configuration data needs to be put in location(s) separate from the standard ones used by a normal MacPorts installŠ Think about

        /Library/Launch(Agents|Daemons)
        [~]/Library/Application Support
        ~/Library/Preferences/KDE
        ~/Library/Caches
        ~/.config
        ~/.(cache|config)

and possibly quite a few others.

Since this is even more complicated, for a start I think, one would surely like to avoid such a coinstallable approach. However, not having it would make testing pretty hard (if not even
close to impossible), I am afraid.

I don't think there is any realistic way to do 'additive' installers (ie install a bunch of base libraries with one installer and then install one or more apps that use those libraries). I think it would be all too common for the user to install the base and one app at one time and then, months or years later, install another app only to find that it is broken due to base upgrades in between.

Another wrinkle that occurred to me is that mdmg installers sometimes need to be built with non-default variants. For example, my standard invocation for Myth is:

sudo port -f mpkg mythtv-pkg.27 +mariadb+mariadb55+python27+perl5_16+startupitem

I _have_ to specify +mariadb+mariadb55+startupitem or the MythTV package will be non-functional. The +python27+perl5_16 ensures that I don't get copies of other versions of perl and python--thus reducing the size of the installer by about 20% (which is still ~400 MB).

I have to use the -f flag to make the horrendous hack in MacPort_daemondo succeed. I'm hoping a GSOC student will figure out a clean fix for the issue.

Craig
_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to