Coming soon: native installers

Printer Friendly Version Attach Files

wdavatar?user=leiger
leiger
13 Jul 2010 04:34. Edited 4 times. (Edit, Permalink)

I'm looking into the possibility of stopping the JAR distribution of STE and instead distributing multiple files to download (you would select the right one, depending on which operating system you are using). The benefits of distributing STE as an executable are many, although it's not without some negative side effects.

Compiling to native code means:

  • You do not need to install the Java JRE first, making STE easier to use for anyone that wants to try it.
  • Native code runs a lot faster than Java bytecode running on the Java Virtual Machine.
  • I can add a logo to the program when you're running it.
  • You can set the program to open files with a specific extension by default
  • I can do this for both Windows and Linux

Negatives:

  • I want to use the software Excelsior JET for this, but it doesn't support Mac OS X.
  • The program would be less portable, as you would actually have to install it before using it, just like any other application

There is some other software called GCJ which apparently supports Mac OS X and therefore that is good for Mac owners. Unfortuantely, GCJ isn't as up-to-date with the Java libraries as Excelsior JET is and therefore some things may not work (in particular, anything that results in launching the default browser will most likely not work).

There are some Mac users here that download STE and provide invaluable feedback - and the last thing I want to do is to suddenly cut you out and make STE incompatible with Mac OS X. So, what is your opinion on this?

I am yet to look into GCJ in much detail as I'm still researching Excelsior JET (have just finished downloading a 90-day trial for it).

When I get a chance I'll provide an installer for Mac so that you guys can test out STE and let me know if anything is broken. If some of the major features (e.g. API access) fail to work, I'll have to try to find a workaround for the problem.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=bcammo
bcammo

13 Jul 2010 05:17. Edited 0 times. (Edit, Permalink)
In my quest to give STE a proper icon in the dock, I came across Jar Bundler, which basically lets you turn any .jar file into a native mac app. I decided I'd try it out and it turned out to be a semi-success. I have got it to successfully use the native mac menu bar (instead of being inside of the app), and it now has its own icon, and can be left unopened in the dock (which you can't do with a .jar file).

Here's a screenshot of STE running as a native app…

STE-native-mac.jpg

I still haven't got it to associate with .ste files so they open STE when double clicked - but I'm working on it!

This may not be an option for you Shane because Jar Bundler only works on a mac, but I thought it was worth mentioning.

Cheers,
Bryce

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 06:13. Edited 3 times. (Edit, Permalink)
Well, I have got STE working on Windows as an executable now.

Negative:

  • Because of the bonus of not needing to have the JRE installed, it bundles part of the JRE (only the parts I'm using) into the executable. This makes the file size a lot bigger:
    • 44 MB not compressed
    • 25.1 MB as a Zip file
    • 21.6 MB as a 7-Zip file
  • The JRE logo is still used in the Windows taskbar :( But it shows the STE logo in Windows explorer, making the exe that you double-click on easier to find. Found a way to fix this. It now uses the STE logo in the taskbar as well.

Positives:

  • Runs a LOT faster. I'm impressed with how much faster the app starts. It's competing with my native apps like Notepad for start-up time now.
  • All I had to do was Right-click then "Open with…" and all .ste files are now associated with STE. I just need to double-click on one and it opens in STE! :)
  • I found a way to do this without using an installer - so it's still just copy and paste, and still portable (but to Windows only) for that reason

I think I can only create the Linux executable on Linux, so I'm going to download the trial version of Excelsior tomorrow on Linux and try to do the same thing over there.

For anyone that wants to test the Windows executable of STE on Windows (I'm particularly interested in testers that are using the ancient 10-year-old Windows XP, or that have never installed the JRE as it's meant to work without it) … I'm going to upload it now.

Links:

  • STE-2-01-Windows.7z (uploading…)
  • STE-2-01-Linux.zip (available in 24 hours)
  • STE-2-01-Mac.zip (available in 72 hours)

Included page "inc:signature" does not exist (create it now)

wdavatar?user=tsangk
tsangk

13 Jul 2010 06:33. Edited 0 times. (Edit, Permalink)
I have a Win 2008 Server without Java. I can test that out.
I also have heaps of XP's but gotta check if it has Java or not. xD

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 06:34. Edited 1 times. (Edit, Permalink)
Okay, I've managed to make it a smaller download (sacrificing some performance in the process). It depends on if people want a smaller download or better performance?

Before Now
Not compressed 44 MB 32 MB
Using 7-Zip 21.6 MB 11.4 MB
Using Zip 25.1 MB 14.7 MB
Description Better performance Better download size

For maximum performance, the un-compressed file size would be about 60 MB. I didn't try compressing that one though so I don't have any figures for that.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 06:37. Edited 1 times. (Edit, Permalink)

tsangk wrote:

I have a Win 2008 Server without Java. I can test that out.
I also have heaps of XP's but gotta check if it has Java or not. xD

Well even with the JRE it will work - I just wanted to make sure it was doing what it says it would, and work without needing to install the JRE first.

I'm going to upload the smaller, slightly slower version that I just made. It should still be faster than running as a JAR though, as it's running using code that is native to the OS.

Anything that interacts with the API depends on your Internet speed and the speed at which Wikidot can compute and return the request… so I haven't noticed any improvements there. It's mainly at start-up that you see a difference.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 06:52. Edited 0 times. (Edit, Permalink)
Okay, it's on the Download page.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 07:00. Edited 0 times. (Edit, Permalink)
That performance is terrible!

I just tried using the 11 MB one and it takes ages to load the first thing you try - whether it be a menu, the about dialog, the settings dialog or checking for updates. I'm literally sitting there for 5 seconds waiting for a menu to open.

That's unacceptable, so I'm going to upload the 20 MB version instead which doesn't show such terrible performance problems.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 08:10. Edited 0 times. (Edit, Permalink)
I'm talking to myself again :)

I managed to get the size down from 21.6 MB to 18.5 MB — and will upload that shortly.

And I'm fairly certain that for future versions I can create patches that only include the changes — so you'd download a tiny patch for v2.02 and add it to your v2.01 folder. I haven't tested that feature yet though.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=tsangk
tsangk

13 Jul 2010 08:43. Edited 0 times. (Edit, Permalink)
Cool! That will be an excellent feature xD

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 08:53. Edited 0 times. (Edit, Permalink)
The thing is… how should I offer it for download on the downloads page then? I can offer patches for every release but that would only suit people that have been keeping up with releases.

The easiest way for me is to just keep the 2.01 full version and make new users install a series of patches, but that is seriously bad for the user experience. I'd have to instead offer a full version and a patch for every release, so that new users just download the full version and existing users download the patch…

How did your test go with STE running on XP etc (without the JRE installed)? Did you notice any speed improvements (or slow down) ?

Included page "inc:signature" does not exist (create it now)

wdavatar?user=franknarf
Franknarf

13 Jul 2010 18:18. Edited 0 times. (Edit, Permalink)
Yeah, pretty fast on XP. I'm not on my own comp, but it looks like JRE is not there (in "Add and Remove Programs").

I like the preview feature! Maybe there could be an option to open each preview in the same window (instead of a new window each time I ask for a preview)?

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

13 Jul 2010 22:31. Edited 0 times. (Edit, Permalink)

I like the preview feature! Maybe there could be an option to open each preview in the same window (instead of a new window each time I ask for a preview)?

I was considering doing it that way when I added the feature.

Both methods have their advantages. The way you are suggesting is useful for manually updating the preview as you type, whereas the way it is set up now allows you to preview one page, close it, then preview another — and compare them side-by-side.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=bcammo
bcammo

17 Jul 2010 12:08. Edited 0 times. (Edit, Permalink)
Any chance of getting the .jar file for version 2.01 - it seems to have disappeared from the downloads page??

Bryce

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

18 Jul 2010 05:13. Edited 0 times. (Edit, Permalink)
Will email it to you.

Included page "inc:signature" does not exist (create it now)

wdavatar?user=jnesselr
jnesselr

27 Jul 2010 19:10. Edited 0 times. (Edit, Permalink)
Can I also get a copy of the mac native version? Also, is it an installer or just the app?

Included page "inc:signature" does not exist (create it now)

wdavatar?user=leiger
leiger

11 Oct 2010 22:45. Edited 1 times. (Edit, Permalink)
There is no Mac version - impossible to make a Mac executable because Apple prevents it. Closest thing that can be done is to make it appear like an app, as bcammo has done.

I won't be using native installers any more, didn't get the free upgrade that I was hoping for. Can't afford to buy the software.

Included page "inc:signature" does not exist (create it now)

Post Reply

Add reply on "Coming soon: native installers"

Printer Friendly Version Attach Files

CSS Theme, Images and Code on this website are © Shane Smith 2010-2012. All forum posts by users and documentation licensed under Creative Commons BY-NC-SA 3.0 License.