Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2010-01

cross-distro (and OS) app installation - what would you like?

21 messages · 10 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Phil Hess
----- wrote 6 lines
Please stop this flamewar, nobody is forced to use Graemes code. His only intention was to get some feedback and tell us about his ideas, thats how OSS works.

Another way OSS works is that you're not our mommy.

Okay, here's some feedback: Use a platform-specific tool for installation.

On Windows, Inno Setup is powerful and fairly easy to use. The trickiest parts are if you need to set things in the registry, register .ocx's, run auxiliary installers (Visual C++, etc.) - most of these things are n/a on other platforms.

On Mac, many app do not have or need installers. Instead you just unzip the .zip or open the .dmg and drag and drop the app anywhere you want. If you need user interaction for some reason or want to require someone with the right privileges to do the installing, then use PackageMaker to create a .pkg file (which can also be zipped up into a .dmg).

Most mobile devices will eventually use some kind of App Store type download installation - even with a Linux based device, using the old package managers would seem to be the wrong way to go.

I'm of the opinion more and more that platform-specific approaches, whether installers, help system, and maybe even GUI frameworks, make more sense than trying to fit multiple platforms under one roof, particularly if it's a Linux-imagined roof.

I bring up fpGUI in this context because I don't see it where it (or any Linux way of doing things) would make sense on Mac. Let's review what we already have:

- LCL with existing Carbon widgetset
- LCL with prototype Cocoa widgetset
- LCL with Qt widgetset (if you don't mind the overhead: OOP LCL --> OOP widgetset --> non-OOP QtIntf library --> OOP Qt (C++) --> Cocoa).

All of these are acceptable native solutions, but they're not optimized solutions because they're limited to the VCL Gothic feature set.

With the new ObjP support in FPC trunk and the CocoaAll unit, this opens up two more ways of producing not only native OS X apps, but utilizing full native GUI capabilities:

- ObjP code-only. See NoNib.zip here for source for a simple code-only app - syntax is ObjP so it might look a bit weird in places:

http://web.fastermac.net/~MacPgmr/Lazarus/

- ObjP code with GUI designed with Interface Builder. Look at examples here:

http://thealchemistguild.org/objp.php

Same with iPhone/iPod and future mobile devices of all kinds. They will probably have their own native ways of producing optimized GUIs for the device. With iPhone OS, we have iPhoneAll unit. See Dmitry's example at bottom of previous page for a working code-only iPhone OS app.

Thanks.

-Phil

Reply by email

waldo kitty
to Phil Hess
Phil Hess wrote 11 lines
----- wrote: > Please stop this flamewar, nobody is forced to use Graemes code. > > His only intention was to get some feedback and tell us about his > ideas, > thats how OSS works. > Another way OSS works is that you're not our mommy.

and the other way around... we're not your mommy, either... the main thing to remember about OSS is there is no :( in OSS ;)

Reply by email

Phil Hess
to waldo kitty
----- "waldo kitty" wrote 7 lines
> > Another way OSS works is that you're not our mommy. and the other way around... we're not your mommy, either... the main thing to remember about OSS is there is no :( in OSS ;)

Waldo, I have no idea what that means. Hope it's something funny.

The subtext of what I'm saying is that this list seems more and more like a Linux club. Many of the ideas expressed here seem to start with Linux and end with Linux. That's fine if that's all you have and that's your audience. But then the poster sometimes makes the fatal error of assuming his ideas are universal. From my vantage point over in the Mac/Windows/Web app/iPhone OS universe, it can be a bit exasperating.

Part of this is probably related to the evolution of Lazarus more and more into the best tool for developing Linux apps (which is great) but maybe less and less the best tool for other platforms. And sure, that's no problem either, if that's the direction they want to take it.

Interestingly, FPC appears to going the other direction, producing compiler versions that are more and more targeted at specific platforms. Certainly for OS X and iPhone OS the new {$modeswitch objectivec1} is simply the most exciting thing I've seen in 10 years of using Macs.

Thanks.

-Phil

Reply by email

Paul Ishenin
to Phil Hess
Phil Hess wrote
Part of this is probably related to the evolution of Lazarus more and more into the best tool for developing Linux apps (which is great) but maybe less and less the best tool for other platforms. And sure, that's no problem either, if that's the direction they want to take it.

Sorry, please express better where we are better for Linux and worse for OSX?

Best regards,
Paul Ishenin.

Reply by email

Phil Hess
to Paul Ishenin
----- "Paul Ishenin" wrote 13 lines
21.01.2010 8:06, Phil Hess wrote: > Part of this is probably related to the evolution of Lazarus more and more into the best tool for developing Linux apps (which is great) but maybe less and less the best tool for other platforms. And sure, that's no problem either, if that's the direction they want to take it. Sorry, please express better where we are better for Linux and worse for OSX?

That's not quite what I said and anyway I said "maybe" - kind of a dodge, I know.

Thanks.

-Phil

Reply by email

George Lober
to Phil Hess: Waldo, I have no idea what that means. Hope it's something funny. The subtext of what I'm…
Phil Hess wrote 14 lines
----- "waldo kitty" wrote: >> Another way OSS works is that you're not our mommy. >> > and the other way around... we're not your mommy, either... the main > thing to > remember about OSS is there is no :( in OSS ;) > > Waldo, I have no idea what that means. Hope it's something funny. The subtext of what I'm saying is that this list seems more and more like a Linux club. Many of the ideas expressed here seem to start with Linux and end with Linux. That's fine if that's all you have and that's your audience. But then the poster sometimes makes the fatal error of assuming his ideas are universal.

??? Where do you get that impression. I think you are not understanding what Graeme is trying to accomplish. The idea is to produce something that is easy to use by the average joe computer user whatever the platform is. It is an idea to cater to the end user and the software developer, and not some OSS or other status quo.

Considering what the task is, it is understandable a large focus is on the Linux side of things because of the multitude of distros to target, and their associated different ways of doing things. It is difficult to write software for Linux that targets the majority, and I have no doubt in my mind that this a big factor why we do not see a lot of commercial software in the Linux segment, and why the Linux market share of the desktop computer market is *still* minuscule in comparison to MS.

Show quoted text 18 lines
From my vantage point over in the Mac/Windows/Web app/iPhone OS universe, it can be a bit exasperating. Part of this is probably related to the evolution of Lazarus more and more into the best tool for developing Linux apps (which is great) but maybe less and less the best tool for other platforms. And sure, that's no problem either, if that's the direction they want to take it. Interestingly, FPC appears to going the other direction, producing compiler versions that are more and more targeted at specific platforms. Certainly for OS X and iPhone OS the new {$modeswitch objectivec1} is simply the most exciting thing I've seen in 10 years of using Macs. Thanks. -Phil -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply by email

waldo kitty
to Phil Hess: Waldo, I have no idea what that means. Hope it's something funny. The subtext of what I'm…
Phil Hess wrote 12 lines
----- "waldo kitty" wrote: >> >> Another way OSS works is that you're not our mommy. > > and the other way around... we're not your mommy, either... the main > thing to > remember about OSS is there is no :( in OSS ;) > Waldo, I have no idea what that means. Hope it's something funny.

it is... plainly stated, there is no crying in OSS... you have everything necessary to figure it out and make whatever changes you need/want for you usage ;)

The subtext of what I'm saying is that this list seems more and more like a Linux club. Many of the ideas expressed here seem to start with Linux and end with Linux. That's fine if that's all you have and that's your audience. But then the poster sometimes makes the fatal error of assuming his ideas are universal. From my vantage point over in the Mac/Windows/Web app/iPhone OS universe, it can be a bit exasperating.

it is not a "*nix club" to be sure... not by a long shot... sure many ideas appear to be rooted in *nix lingo but that's also a large audience and many of the winwhatever stuff has already been addressed... for the most part, anyway ;)

Part of this is probably related to the evolution of Lazarus more and more into the best tool for developing Linux apps (which is great) but maybe less and less the best tool for other platforms. And sure, that's no problem either, if that's the direction they want to take it.

this seems to be a misreading of the task and direction of those leading the project where they see it needs to go for their desires of making Lazarus (and FPC) available for as many platforms that are out there... the main goal, as i see it, it to allow pascal coders to still use pascal for whatever platforms they wish to code for and not have to learn other languages like C/C++, java(script), perl, ruby, etc...

Interestingly, FPC appears to going the other direction, producing compiler versions that are more and more targeted at specific platforms. Certainly for OS X and iPhone OS the new {$modeswitch objectivec1} is simply the most exciting thing I've seen in 10 years of using Macs.

this is also a mis-read... there is still a lot of work to be done to support other platforms... granted, reading the list makes it appear that this or that platform is the target but that's only due to that platform being under the eye of the 'scope at that particular point in time...

FWIW: i'm an old TP/BP 6/7 coder and i'm still, after a year+, trying to wrap my head around GUI coding as well as getting accustomed to the newer methods of writing pascal code... yes, without any delphi knowledge or books... i've yet to find a delphi book that reads easily enough for my tastes and has easy to follow and understand examples... much less examples that are also easily adapted to lazarus... especially with the differences, slight as they may be, between the two...

Reply by email

Graeme Geldenhuys
to Phil Hess: Another way OSS works is that you're not our mommy. Okay, here's some feedback: Use a…
Phil Hess wrote
- LCL with Qt widgetset (if you don't mind the overhead: OOP LCL --> OOP widgetset --> non-OOP QtIntf library --> OOP Qt (C++) --> Cocoa). All of these are acceptable native solutions,

Very interesting Phil. You have no problems with Qt and even call it native, yet fpGUI shares a very similar design (or history) to Qt (although a few years behind in features and development staff count).

Another very important point you forgot. We (our company) develop based on our needs. We needed software that works on Linux and Windows. We needed a true "single source" code base, we needed all supported features on all platforms, we needed all platforms to look identical (because our teaching centres can have Linux and Windows side by side in a classroom), we needed the option for total customization/branding, etc..

All the above are things LCL couldn't (and often will not [1]) give us. So we came up with a solution for OUR needs. Just like the requirement for a cross-platform help system and help format, or now for a cross-platform Installer. Needs drive development - this is true even for Lazarus IDE features.

[1]: This list of items keep growing in size, and many do not even appear in the wiki pages, so it is worse than it looks.

http://wiki.lazarus.freepascal.org/Lazarus_known_issues_(things_that_will_never_be_fixed)

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/

Reply by email

Graeme Geldenhuys
to Phil Hess: Waldo, I have no idea what that means. Hope it's something funny. The subtext of what I'm…
Phil Hess wrote
Many of the ideas expressed here seem to start with Linux and end with Linux.

Probably because Linux is becoming a more attractive platform than all others for desktop applications. Also maybe because Lazarus IDE is simply the best tool for the job - hands down!

So live with it!

I guess you would be in favour for a split in mailing list too? lazarus-windows, lazarus-mac, lazarus-linux. By the way, I think that will be a terrible idea.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/

Reply by email

Graeme Geldenhuys
to George Lober: ??? Where do you get that impression. I think you are not understanding what Graeme is…
George Lober wrote 7 lines
that is easy to use by the average joe computer user whatever the platform is. It is an idea to cater to the end user and the software developer, and not some OSS or other status quo. Considering what the task is, it is understandable a large focus is on the Linux side of things because of the multitude of distros to target, and their associated different ways of doing things.

100% correct on both counts!

Windows and Mac has it easy, because there is one governing body and a lot more standardized. Everybody keeps going on about how easy it is to install software on Windows or Mac. So yes, my idea of a new software installer might be more focused at Linux issue at this point in time, because that is where the most problems lie. The average Joe simply doesn't know how to install software on Linux and they hate the command prompt.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/

Reply by email

George Lober
to Graeme Geldenhuys
Graeme Geldenhuys wrote 22 lines
George Lober wrote: > that is easy to use by the average joe computer user whatever the > platform is. It is an idea to cater to the end user and the software > developer, and not some OSS or other status quo. > > Considering what the task is, it is understandable a large focus is on > the Linux side of things because of the multitude of distros to target, > and their associated different ways of doing things. > 100% correct on both counts! Windows and Mac has it easy, because there is one governing body and a lot more standardized. Everybody keeps going on about how easy it is to install software on Windows or Mac. So yes, my idea of a new software installer might be more focused at Linux issue at this point in time, because that is where the most problems lie. The average Joe simply doesn't know how to install software on Linux and they hate the command prompt.

A few years back, I myself was looking around to see if there was a user friendly Windows type, all-distro Linux installer available anywhere, in the same sense of what you are trying to do, and came up with nothing. The few that caught my eye were very basic, and not workable with closed source commercial software.

http://developer.berlios.de/projects/fixinst/
http://autopackage.org/

I don't think these would fit your requirements. I mention these for curiosity's sake only.

Besides the deployment issues, another thing that discourages me from writing software for Linux is the virtual non existence of anti-cracking software.

Reply by email

Graeme Geldenhuys
to George Lober
George Lober wrote 5 lines
The few that caught my eye were very basic, and not workable with closed source commercial software. http://developer.berlios.de/projects/fixinst/ http://autopackage.org/

We looked at projects like AutoPackage (I really liked this one), ZeroInstall, etc... All nice, but unfortunately they first require a "runtime" to be installed *before* you can install *.package files. That's no good, because not a single mainstream distro comes standard with those runtime packages pre-installed.

The Installer itself shouldn't have such requirements, it should just run.

Besides the deployment issues, another thing that discourages me from writing software for Linux is the virtual non existence of anti-cracking software.

I know what you mean. We flew 1200km to the biggest Security Confrence in South Africa and spoke to every single vendor there. Not one had "anti-cracking" security software for Linux. Windows sure, but not Linux. So we had to implemented that ourselves. We can now lease software, lock to hardware, xx-day evaluation, etc... Unfortunately that code is not open source.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/

Reply by email

Unknown author
to Graeme Geldenhuys
Show quoted text 11 lines
[...] > Besides the deployment issues, another thing that discourages me from > writing software for Linux is the virtual non existence of anti-cracking > software. I know what you mean. We flew 1200km to the biggest Security Confrence in South Africa and spoke to every single vendor there. Not one had "anti-cracking" security software for Linux. Windows sure, but not Linux. So we had to implemented that ourselves. We can now lease software, lock to hardware, xx-day evaluation, etc... Unfortunately that code is not open source.

Hmm, I think codemeter has support for linux. They have bindings for Delphi (Windows) but i did not yet try to use the API with fpc & Linux.
The customer-tools are working fine with Linux.

http://www.wibu.de/

regards,

Stefan

Reply by email

Michael Van Canneyt
to Graeme Geldenhuys: We looked at projects like AutoPackage (I really liked this one), ZeroInstall, etc... All…
Graeme Geldenhuys wrote 26 lines
George Lober wrote: > The few that caught my eye were very basic, and not workable with closed > source commercial software. > > http://developer.berlios.de/projects/fixinst/ > http://autopackage.org/ We looked at projects like AutoPackage (I really liked this one), ZeroInstall, etc... All nice, but unfortunately they first require a "runtime" to be installed *before* you can install *.package files. That's no good, because not a single mainstream distro comes standard with those runtime packages pre-installed. The Installer itself shouldn't have such requirements, it should just run. > Besides the deployment issues, another thing that discourages me from > writing software for Linux is the virtual non existence of anti-cracking > software. I know what you mean. We flew 1200km to the biggest Security Confrence in South Africa and spoke to every single vendor there. Not one had "anti-cracking" security software for Linux. Windows sure, but not Linux. So we had to implemented that ourselves. We can now lease software, lock to hardware, xx-day evaluation, etc... Unfortunately that code is not open source.

? OnGuard from turbopower does this. It is Object Pascal, so I don't see what the problem with that could be ?

Michael.

Reply by email

Graeme Geldenhuys
to Michael Van Canneyt
Michael Van Canneyt wrote
? OnGuard from turbopower does this. It is Object Pascal, so I don't see what the problem with that could be ?

That is a sore point. We only found that after we did our implementation. :-(

Is the FPC+Lazarus port usable? Project status on wiki says "beta", but so does Lazarus IDE. ;-)

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/

Reply by email

George Lober
to Graeme Geldenhuys: We looked at projects like AutoPackage (I really liked this one), ZeroInstall, etc... All…
Graeme Geldenhuys wrote 31 lines
George Lober wrote: > The few that caught my eye were very basic, and not workable with closed > source commercial software. > > http://developer.berlios.de/projects/fixinst/ > http://autopackage.org/ > We looked at projects like AutoPackage (I really liked this one), ZeroInstall, etc... All nice, but unfortunately they first require a "runtime" to be installed *before* you can install *.package files. That's no good, because not a single mainstream distro comes standard with those runtime packages pre-installed. The Installer itself shouldn't have such requirements, it should just run. > Besides the deployment issues, another thing that discourages me from > writing software for Linux is the virtual non existence of anti-cracking > software. > I know what you mean. We flew 1200km to the biggest Security Confrence in South Africa and spoke to every single vendor there. Not one had "anti-cracking" security software for Linux. Windows sure, but not Linux. So we had to implemented that ourselves. We can now lease software, lock to hardware, xx-day evaluation, etc... Unfortunately that code is not open source.

The one I know about is called FlexNet, by ROVI (previously MacroVision). It does support multiple platforms including Linux:

http://www.rovicorp.com/company/11082.htm
http://www.flexerasoftware.com/products/flexnet-publisher/features.htm

but is a big league mega buck solution. Four years back when I inquired about cost, it was several thousands of dollars.

Reply by email

Daniel Simoes de Ameida
to George Lober

Some multiplataform installers:

InstallJammer (OpenSource)

InstallBuilder (Comercial, but permits free license for OpenSource projects)

I use InstallBuilder (only for Linux) in my OpenSource Project (ACBr), for Windows, InnoSetup is a natural choice for "Pascal programmers"

[]s Daniel

Conhe?a o Projeto ACBr - Automa?ao Comercial Brasil DJSystem a Loja Patrocinadora do ACBr

Reply by email

Bogusław Brandys
to Graeme Geldenhuys: That is a sore point. We only found that after we did our implementation. :-( Is the…
Graeme Geldenhuys wrote 12 lines
Michael Van Canneyt wrote: > ? OnGuard from turbopower does this. It is Object Pascal, so I don't see what > the problem with that could be ? That is a sore point. We only found that after we did our implementation. :-( Is the FPC+Lazarus port usable? Project status on wiki says "beta", but so does Lazarus IDE. ;-) Regards, - Graeme -

Well,it is usable but need improvements and *mostly* automated testing set (fpcunit based) - because each fpc/lazarus change breaks some code tricks.I have added locking to hdd drive serial but as I not need this package yet, I'm not working on other improvements.

Boguslaw

Reply by email

Marco van de Voort
to Graeme Geldenhuys: We looked at projects like AutoPackage (I really liked this one), ZeroInstall, etc... All…
Graeme Geldenhuys wrote 10 lines
> Besides the deployment issues, another thing that discourages me from > writing software for Linux is the virtual non existence of anti-cracking > software. I know what you mean. We flew 1200km to the biggest Security Confrence in South Africa and spoke to every single vendor there. Not one had "anti-cracking" security software for Linux. Windows sure, but not Linux. So we had to implemented that ourselves. We can now lease software, lock to hardware, xx-day evaluation, etc... Unfortunately that code is not open source.

I've seen that the vendor of the software that we use on window (dinkey) also has linux and OS X bits. (dongling)

Reply by email

Graeme Geldenhuys
to Marco van de Voort
Marco van de Voort wrote
I've seen that the vendor of the software that we use on window (dinkey) also has linux and OS X bits. (dongling)

We didn't want to use hardware dongles - it will work out way to expensive. Also you will be locked-in to a specific vendor (hoping they don't go out of business) - too risky.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/

Reply by email