Right now it's plain impossible to install official Lazarus releases on most Linux environments, unless you're using FPCUPDLX. Again, it is exactly the same for Apple Silicon native macOS installations - for which there's no PKG installer available, period. FPCUPDLX is a heroic effort, but has a track record of backing itself into corners it cannot get itself out of (I've been seeing error 512 and/or outright hangs of the compilation process on virtually every Linux system I've tried it on, when using FPC 3.3.1 and Trunk/Stable Lazarus).
I replied about changing the working windows to something else. I don't see the point of that, since the shared aspect will be low as I said as every OS has its own files and directories.
But be my guest, start building and iterating installers, and we'll see how it goes.
I would love to try that, but I'm not sure how to do it properly. Who are some people that might be able to provide guidance?
InstallAware Multi Platform does have its own Setup Capture tool, but I'm wary of using this - as it will just dump a list of files (and folders) and not really contribute anything beyond that.
Am I the only one in thinking this investment would pay off dividends over time? Instead of maintaining multiple - and disparate - PKG, DEB, RPM installation scripts
Since the distributions only integrate those(deb,pkg), and most users install via their distro tools this is a strange statement. I don't know much about OSX practicalities.
Why do we have to care about the distribution-specific package formats when InstallAware builds native code, Windows-esque "setup" (without the .exe) binaries that run directly and install regardless of which package formats the distribution has built-in support for?
This is the native code power of Lazarus at work, people!
I would fathom the only matter at hand would be whether Lazarus has particular dependencies for each individual distribution, in which case, it could turn into a spaghetti mess of untangling those dependencies. For example, Qt5 editions of Lazarus on Linux require the installation of a Qt5Pas library - which seems distribution agnostic - and is therefore good news. But what of other potential GTK2/Qt5 libs that might be required on some distributions (and not others)?
I've tested InstallAware itself and seen that if it cannot boot its GUI setup for some reason, it'll still go ahead and display console renderings of whatever (custom) setup dialogs that are a part of your project. So this gives me confidence that the tool at hand, at least, can cope with missing mandatory GUI dependencies, and at least get to the point of installing them (without instantly breaking).
But this won't answer what the specific Linux dependencies are, and what the best practices would be to install them.
For example with the Setup Capture route, you could obtain a full list of binaries required for each particular scenario. But Setup Capture doesn't tell you which of those binaries are encapsulated in which Linux packages on which platforms...and distributing ready-compiled-binaries made for one distribution on other distributions seems like that could be a bit of a brute forcing.
Ideally, we'd only be including Lazarus (and Free Pascal) binaries (and sources) in our distribution...and use the underlying operating system package manager to install missing dependencies "natively", if that makes sense?
And I think the different iterations of the installer scripts for various OSes and distros should not be underestimated either.
Anyway, the only thing is just go out and try if you feel strong about it.
I would love to get started, but I can hardly see myself pulling this off alone.
Maybe macOS would be far easier to do, as InstallAware already includes sample projects to install Xcode Command Line Tools - as part of an InstallAware setup - which is the only dependency Lazarus has on macOS.
The irony there being FPCUPDLX already works fine on macOS, and the real problem I'd like to solve here is how to get the job done on Linux.