Creating installers when packaging a Levure application

Anything beyond the basics in using the LiveCode language. Share your handlers, functions and magic here.

Moderators: Klaus, FourthWorld, heatherlaine, kevinmiller, robinmiller

Post Reply
trevordevore
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 851
Joined: Sat Apr 08, 2006 3:06 pm
Location: Overland Park, Kansas
Contact:

Creating installers when packaging a Levure application

Post by trevordevore » Mon Jun 26, 2017 3:49 pm

If you attended my session on Levure at LiveCode Global Jam you may have heard me mention that installers couldn’t be automated yet. Well, now they can. Levure 0.9.2 was pushed out today and it adds some features to “helpers” that allow the creation of installers during the packaging process.

I’ve created helpers for DropDMG on macOS and Inno Setup on Windows.

Follow the links below for more information.

Levure wiki:
https://github.com/trevordevore/levure/wiki

Link to wiki page with screencast and links to the GitHub repos for DropDMG and Inno Setup helpers Github:
https://github.com/trevordevore/levure/ ... Installers

Learn more about what Helpers are in Levure:
https://github.com/trevordevore/levure/wiki/helpers
Trevor DeVore
ScreenSteps - http://www.screensteps.com

Levure Application Framework: https://github.com/trevordevore/levure
LiveCode Resources for Developers: http://livecode.bluemangolearning.com

bhall2001
Posts: 99
Joined: Thu Oct 30, 2014 3:54 pm

Re: Creating installers when packaging a Levure application

Post by bhall2001 » Tue Nov 21, 2017 12:34 am

I can't get the Inno Setup .iss file to build and was wondering what might be the most common things you've run into that could make the .iss file not be created.I'm not trying to compile the .iss just generate it.

I'm on a Mac (10.13.1) with LC 8.1.7 Biz. The drop DMG side is working great.

I've reverted back to trying to get the .iss file for the sample app to build following the screencast to the T but no luck. I'm sure I'm missing something simple but I can't figure it out for the life of me.

Thanks in advance for any suggestions,
Bob

trevordevore
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 851
Joined: Sat Apr 08, 2006 3:06 pm
Location: Overland Park, Kansas
Contact:

Re: Creating installers when packaging a Levure application

Post by trevordevore » Tue Nov 21, 2017 4:18 am

Without knowing what steps you’ve taken it is hard to say. Did you add an entry to the copy files not section?

https://github.com/trevordevore/levureh ... es-section
Trevor DeVore
ScreenSteps - http://www.screensteps.com

Levure Application Framework: https://github.com/trevordevore/levure
LiveCode Resources for Developers: http://livecode.bluemangolearning.com

bhall2001
Posts: 99
Joined: Thu Oct 30, 2014 3:54 pm

Re: Creating installers when packaging a Levure application

Post by bhall2001 » Tue Nov 21, 2017 1:36 pm

Got it figured out -- kind of...

I forgot to put a "-" before "filename" in the copy files section. Once I did that I could see things were starting to work.

However, to get the inno setup to create the .iss file, I found the path to the "template" .iss file needs to be in "../build files" (the root contains app, build files, builds and levure directories).

I was following the screencast and did what I saw there. The template MyApp.iss is at "./helpers/inno_setup/samples" and the copy files section reflects this directory. This doesn't work on my system.

When I do this, I end up with the file "builds/beta/0.0.1-1/helpers/inno_setup/samples/MyApp.iss that is incomplete (everything is filled in except the files and dir sections which are blank).

I'd like to raise my hand to either correct the documentation saying the template must be in the "build files" directory or update the script so the template can be anywhere and the resulting .iss file ends up in the correct builds directory.

I've attached a screen shot of the directory structure I ended up with when using ./helpers/inno_setup/samples/MyApp.iss in the copy files section.

Bob
Attachments
Screen Shot 2017-11-21 at 7.33.36 AM.png
Resulting dirs when using path in screencast

trevordevore
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 851
Joined: Sat Apr 08, 2006 3:06 pm
Location: Overland Park, Kansas
Contact:

Re: Creating installers when packaging a Levure application

Post by trevordevore » Tue Nov 21, 2017 2:15 pm

It looks like the copy files section isn't set up correctly. Based on where the .iss file is ending up and the fact that it isn't being filled in it looks as though it isn't being processed by the inno_setup helper. Two things -

1) Are you using the latest version of the Levure framework? You can check the top of the levure.livecodescript file.
2) Can you attach your app.yml file so I can take a look?
Trevor DeVore
ScreenSteps - http://www.screensteps.com

Levure Application Framework: https://github.com/trevordevore/levure
LiveCode Resources for Developers: http://livecode.bluemangolearning.com

bhall2001
Posts: 99
Joined: Thu Oct 30, 2014 3:54 pm

Re: Creating installers when packaging a Levure application

Post by bhall2001 » Wed Nov 22, 2017 1:25 am

0.9.4 is the version in levure.livecodescript.

I did some more troubleshooting and here's what I came up with:

For my setup, I have the same MyApp.iss file in both locations (using sample app with framework in fresh install from repo). I was able to get things working when I use the following:
...
android:
inno setup:
- filename: ../build files/MyApp.iss
...

What isn't working (resulting in the prior screenshot) is:
...
android:
inno setup:
- filename: ./helpers/inno_setup/samples/MyApp.iss
...

what does work is (note -- this references the same file as above)
...
android:
inno setup:
- filename: ../app/helpers/inno_setup/samples/MyApp.iss
...

Looks like I have a relative path reference error? As you can see I installed the helper in the app helpers and not the framework helpers directory if that matters.

I've attached 2 app.yml's but I don't think they will help as I can see it's a relative path issue. Am I not referencing the file correctly in the one that isn't working?

Thanks in advance again for looking at this. LOVE THE LEVURE FRAMEWORK!!!!!

Bob
Attachments
app.yml-path-question.zip
(1.86 KiB) Downloaded 4 times

trevordevore
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 851
Joined: Sat Apr 08, 2006 3:06 pm
Location: Overland Park, Kansas
Contact:

Re: Creating installers when packaging a Levure application

Post by trevordevore » Wed Nov 22, 2017 4:45 pm

Thanks for the details. I believe I have found the problem. The inno_setup helper should always be outputting the .iss file to the root build folder (e.g. 0.1.1). I always use a particular folder structure in my apps that didn't reveal this bug. Can you do the following to confirm?

1. Replace inno_setup helper with latest from https://github.com/trevordevore/levurehelper-inno_setup

2. Update the ./packager/packager.livecodescript in the levure folder with the script from the following url:

https://raw.githubusercontent.com/trevo ... codescript

You should then be able to reference the MyApp.iss sample file in your app.yml and it should work. If it does then I will update the main levure repo with the update.
Trevor DeVore
ScreenSteps - http://www.screensteps.com

Levure Application Framework: https://github.com/trevordevore/levure
LiveCode Resources for Developers: http://livecode.bluemangolearning.com

trevordevore
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 851
Joined: Sat Apr 08, 2006 3:06 pm
Location: Overland Park, Kansas
Contact:

Re: Creating installers when packaging a Levure application

Post by trevordevore » Thu Nov 30, 2017 4:38 pm

@bhall2001 Have you had a chance to test the updates yet?
Trevor DeVore
ScreenSteps - http://www.screensteps.com

Levure Application Framework: https://github.com/trevordevore/levure
LiveCode Resources for Developers: http://livecode.bluemangolearning.com

Post Reply

Return to “Talking LiveCode”