Base Frame for AutoHotKey Scripts (Installer ...)

Post your working scripts, libraries and tools for AHK v1.1 and older
lexikos
Posts: 9583
Joined: 30 Sep 2013, 04:07
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

22 Aug 2015, 19:44

Yes, I wrote the AutoHotkey installer. You may use the code as you wish.
User avatar
bichlepa
Posts: 183
Joined: 15 Aug 2014, 06:44
Location: Germany
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

23 Aug 2015, 11:08

Thank you, lexikos.
I have looked through the script. I understand all the code needed for installation. But the GUI is too complicated. I will remove it and create a new simple one. Maybe someone will want to make it more beautiful, later. Now I'll try to make it working.

A little question to lexikos:
I notices, you don't use the fileinstall command. Instead, the Installer of AHK seems to be a self extracting archive, which extracts all files in temporary folder and runs the installation script. Is there a specific reason for that? Or do you think, I can use fileinstall as well?
Scripting is too complicated? Try AutoHotFlow, the graphical automation tool! Written in AutoHotkey.
lexikos
Posts: 9583
Joined: 30 Sep 2013, 04:07
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

24 Aug 2015, 01:58

Is there a specific reason for that?
It's smaller. Much smaller.
User avatar
bichlepa
Posts: 183
Joined: 15 Aug 2014, 06:44
Location: Germany
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

24 Aug 2015, 02:50

alibaba contacted me. He has already written a new GUI and he will make the installer. Thank you, alibaba! :clap: I will continue working on AutoHotFlow then.

@ lexikos:
OK. I see. Currently I use FreeUPX to compress my installation files that were generated by Base Frame. I think, FreeUPX can be integrated into Base Frame, since it has GNU license.
Scripting is too complicated? Try AutoHotFlow, the graphical automation tool! Written in AutoHotkey.
User avatar
bichlepa
Posts: 183
Joined: 15 Aug 2014, 06:44
Location: Germany
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

27 Oct 2015, 03:37

Major update!
Alibaba has made an incredibly good installer. Now I have modified Base Frame to use the installer. See first post for details.
Note, it is currently BETA there are still some issues. More features are coming!

There is one issue if the update checker is included and an ordinary install is made into the Program Files folder.
The main application has access to the folder where it is installed (for example C:\Program Files (x86)\Base Frame) and can make changes there. But the update checker cannot do that. It can't download the update informations and write them to this folder. It can only do that if I run it as administrator. You can test it by installing base frame and running the update checker. You'll see an error message.
So, what should be done to make all installed exe files have full acces to their folder?
Scripting is too complicated? Try AutoHotFlow, the graphical automation tool! Written in AutoHotkey.
lexikos
Posts: 9583
Joined: 30 Sep 2013, 04:07
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

27 Oct 2015, 16:51

Files don't have access to anything. Users have access to files. You have to run the program as the appropriate user, with admin if needed. It would be exactly the same for the program you've installed. The update checker can "elevate" itself (with the user's permission) as shown in the documentation for A_IsAdmin. I would suggest doing this only when you need to install an update, not when you check.

If the installer is running as admin and you have it launch the main application, it will inherit admin rights. You can work around this with something like ShellRun() from the AutoHotkey installer.
User avatar
jNizM
Posts: 3183
Joined: 30 Sep 2013, 01:33
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

28 Oct 2015, 02:51

hey bichlepa...

I tested your Beta Installer and saw the grey border around the normal buttons border because you changed the background color of the gui.

This is how you can get rid of them: Borderless Buttons
[AHK] v2.0.5 | [WIN] 11 Pro (Version 22H2) | [GitHub] Profile
User avatar
bichlepa
Posts: 183
Joined: 15 Aug 2014, 06:44
Location: Germany
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

28 Oct 2015, 15:24

@lexicos:
Thanks for the explanation. I'll try it out as you described.

@jNizM
Thanks for that notice. I don't see any border. Maybe it does not appear in Windows 10. I'll wait for alibaba to read this, cause he wrote the installer code.
Scripting is too complicated? Try AutoHotFlow, the graphical automation tool! Written in AutoHotkey.
User avatar
jNizM
Posts: 3183
Joined: 30 Sep 2013, 01:33
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

29 Oct 2015, 01:50

Here you can see the grey border around the button border
Image
[AHK] v2.0.5 | [WIN] 11 Pro (Version 22H2) | [GitHub] Profile
User avatar
bichlepa
Posts: 183
Joined: 15 Aug 2014, 06:44
Location: Germany
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

29 Oct 2015, 04:05

Oh you're right. I didn't notice it yet.
Scripting is too complicated? Try AutoHotFlow, the graphical automation tool! Written in AutoHotkey.
User avatar
evilC
Posts: 4823
Joined: 27 Feb 2014, 12:30

Re: Base Frame for AutoHotKey Scripts (Installer ...)

02 Nov 2015, 08:41

Hi,
I had a play with this today, I have an app that gets 15K+ runs a month and I currently just package as an EXE inside a zip. I have my own (very crude) update checker, but this looks a lot better so I am thinking of moving over to Base Frame.

Just doing a bit of testing in some VMs, and I am seeing an issue where the EXEs fail to launch. If I just double click the EXE (eg Base Frame.exe), then I get a UAC prompt, but after that, the application does not run.
In order to get it to run on some machines, I have to right click->run as admin.

I have recently added Skan's RunAsTask() to my app am am getting reports of similar behavior from users. Are you doing something in BaseFrame.exe that tries to elevate permissions?
User avatar
bichlepa
Posts: 183
Joined: 15 Aug 2014, 06:44
Location: Germany
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

02 Nov 2015, 12:31

Hi evilC,
thanks for reporting this.
evilC wrote: If I just double click the EXE (eg Base Frame.exe)
Do you mean the Installer exe (eg. Base Frame Setup.exe)? After installation, the installed file Base Frame.exe does not need administrator rights and does not elevate itself.
evilC wrote:Are you doing something in BaseFrame.exe that tries to elevate permissions?
Yes something similar. Alibaba has inserted the function RunAsAdmin() by shajul into the installer code, because the installer needs administrator rights. I noticed this behaviour, too. Is there a solution?

BTW: I'm currently completing the next update. The Update Checker will have a new GUI.
Scripting is too complicated? Try AutoHotFlow, the graphical automation tool! Written in AutoHotkey.
User avatar
evilC
Posts: 4823
Joined: 27 Feb 2014, 12:30

Re: Base Frame for AutoHotKey Scripts (Installer ...)

02 Nov 2015, 14:13

Sorry, yes, I meant the installer EXE.

No, I do not know a solution :(
It does not seem to happen on all machines - it seems more prevalent with Windows 8 and 10, but I am now getting reports of it happening on Win7 too.
I used to use RunAsAdmin myself, and got very few reports of this happening. With the last version of UJR though, I replaced RunAsAdmin with RunAsTask, and now I am getting pretty widespread reports of it not launching.

I have reported this issue on the RunAsTask thread.
Alibaba
Posts: 480
Joined: 29 Sep 2013, 16:15
Location: Germany

Re: Base Frame for AutoHotKey Scripts (Installer ...)

07 Nov 2015, 10:08

Sorry for all the problems. The setup program isn't really completed yet, so thanks for all the feedback. I'll look into the current issues asap.
"Nothing is quieter than a loaded gun." - Heinrich Heine
User avatar
bichlepa
Posts: 183
Joined: 15 Aug 2014, 06:44
Location: Germany
Contact:

Re: Base Frame for AutoHotKey Scripts (Installer ...)

08 Nov 2015, 11:36

New update!
As promised, I have updated the GUI of the Update Checker. It's now more intuitive and offers more possibilities. It also shows the changes from the changelog since last update.
Image

Alibaba will take over the issues concerning the installer.
Scripting is too complicated? Try AutoHotFlow, the graphical automation tool! Written in AutoHotkey.
SOTE
Posts: 1426
Joined: 15 Jun 2015, 06:21

Re: Base Frame for AutoHotKey Scripts (Installer ...)

27 Jul 2019, 03:58

While creating an installer is a great idea and this looks good, putting that installer under the GPL is definitely not. Maybe this is why this installer is not popular, where it might have been. This is an example of how the GPL can wreck havoc, where the MIT or CC0 (Public Domain) licenses are far superior for open source software and don't cause these kind of issues.

By the installer being under the GPL, it instantly creates the infamous viral contamination issue and confusion. Meaning, if a program uses a GPL installer, must it be GPL too? For instance, even if the user wanted to give their program away for free and under a different open source license (let's say BSD), they will have to deal with whether or not their program is contaminated by the GPL and must forcibly be under the GPL too. This includes WTFPL, MPL, CDDL, and various Creative Common licenses.

Also, an installer is such a type of software that users are much more likely to customize it and want to make changes to the installer source code. And again, in this regard, the GPL creates more havoc here too. Because debatably the user needs to specify and link to changes they made to the script's source code.

It could be argued that this installer is still usable, even though under the GPL, but that is sadly subject to debate and where it didn't have to be, if it was under a more clear license that isn't viral. The nature of an installer is that people will be using it to deploy or distribute software to others, thus it will have to be combined with other applications. It would have been much better to avoid any kind of license issues. Something like, "This is just the installer, give us credit, and do whatever you like."

Better to put such an installer script under the MIT or CC0 (Public Domain) license, and avoid any headaches, confusion, or possible controversy. Yes, AutoHotkey is under the GPL, but that's the interpreter programmed with C++ and it contains derivative code from AutoIt's source (previously GPL'd). Thus AutoHotkey's arguably had no choice about the license (derivative work) in the original version. But, AutoHotkey's C++ coded interpreter is a different entity from user created scripts in the AutoHotkey language, so user scripts are not derivative works (under copyright law). In this case, the choice of what license to put the installer script under was vastly more optional. The author(s) could have chose any license, other than the GPL. Any fuss or confusion could have been more easily avoided, making this a vastly more useful and helpful tool to not just the AutoHotkey community, but possibly to a much wider audience around the world.
Alibaba
Posts: 480
Joined: 29 Sep 2013, 16:15
Location: Germany

Re: Base Frame for AutoHotKey Scripts (Installer ...)

03 Aug 2019, 07:31

SOTE wrote:
27 Jul 2019, 03:58
While creating an installer is a great idea and this looks good, putting that installer under the GPL is definitely not.
I agree. But I don’t think that Paul is continuing this project. The installer was originally created in a modular way as “ahksetup” but because I created it for the purpose of BaseFrame, I never published it as a stand-alone. Now, considering the problem that BaseFrame is GPL licensed, it may be a good idea to publish it in the forums, in public domain. Of course it is just the installer and lacks the original BaseFrame functionalities (like Auto Update check)
"Nothing is quieter than a loaded gun." - Heinrich Heine
SOTE
Posts: 1426
Joined: 15 Jun 2015, 06:21

Re: Base Frame for AutoHotKey Scripts (Installer ...)

03 Aug 2019, 08:18

Alibaba wrote:
03 Aug 2019, 07:31
SOTE wrote:
27 Jul 2019, 03:58
While creating an installer is a great idea and this looks good, putting that installer under the GPL is definitely not.
I agree. But I don’t think that Paul is continuing this project. The installer was originally created in a modular way as “ahksetup” but because I created it for the purpose of BaseFrame, I never published it as a stand-alone. Now, considering the problem that BaseFrame is GPL licensed, it may be a good idea to publish it in the forums, in public domain. Of course it is just the installer and lacks the original BaseFrame functionalities (like Auto Update check)
I hope that you do re-publish it in the forums as an installer, under MIT or Public Domain. As just an installer, it's very good, and would be great for the community. In it's present form and licensing, sadly, too many people will probably avoid it because the point of an installer is to be combined with other programs. Also under a more open license, it opens a greater possibility of others adding functionality to it. Lastly, maybe consider putting this up on Source Forge and/or softpedia.com too, in addition to GitHub. This is the kind of tool that might be seen as useful outside of just AutoHotkey circles, so also bringing positive attention to the AutoHotkey language.
Alibaba
Posts: 480
Joined: 29 Sep 2013, 16:15
Location: Germany

Re: Base Frame for AutoHotKey Scripts (Installer ...)

03 Aug 2019, 10:53

Ok, I will publish the "ahksetup" installer as stand-alone tool outside of BaseFrame. It is currently a command line tool, maybe I or somebody else can add a GUI to it someday. There is also still the problem with the elevated permission launch, mentioned by evilC. I don't really have a solution for it currently, but I'll reinvestigate the issue.
SOTE wrote:
03 Aug 2019, 08:18
Lastly, maybe consider putting this up on Source Forge and/or softpedia.com too
Nice idea! :)
"Nothing is quieter than a loaded gun." - Heinrich Heine

Return to “Scripts and Functions (v1)”

Who is online

Users browsing this forum: jchestnut and 72 guests