Thanks, Jonathan, might become helpful if I cannot get it up and running with 
the installer.

Von: Jon bae [mailto:[email protected]]
Gesendet: Montag, 3. November 2014 11:25
An: [email protected]
Betreff: Re: [Msys2-users] best practise w.r.t an unattended msys2 install

Maybe not exactly what you want, but you can also take a look in my script. It 
makes all automatic, the download (the newest version), installations and 
writing profiles:
https://github.com/jb-alvarado/media-autobuild_suite/blob/master/media-autobuild_suite.bat
Regards
Jonathan

2014-11-03 11:16 GMT+01:00 Warlich, Christof 
<[email protected]<mailto:[email protected]>>:
Hi Ray,

> If you do manage to come up with something please share it with us as I'm 
> sure others would like to be able to do this.

It almost does work with the following script:

$ cat install.qs
function Controller() {}
Controller.prototype.IntroductionPageCallback = function() {
    //gui.clickButton(buttons.NextButton);
    print("IntroPage\n");
}
Controller.prototype.TargetDirectoryPageCallback = function() {
    var page = gui.pageWidgetByObjectName("TargetDirectoryPage");
    page.TargetDirectoryLineEdit.setText("d:\\mydir");
    gui.clickButton(buttons.NextButton);
    print("TargetDir\n");
}
Controller.prototype.StartMenuDirectoryPageCallback = function() {
    gui.clickButton(buttons.NextButton);
    print("StartMenu\n");
}
Controller.prototype.FinishedPageCallback = function() {
    gui.clickButton(buttons.FinishButton);
    print("Finish\n");
}

It may be called as follows:

$ ./msys2-i686-20141003.exe -v  --script install.qs

The reason why I said "almost": The Intro-Page is still shown, so one click (on 
the initial Next-Button) is still required. Obviously, this is because 
"gui.clickButton(buttons.NextButton);" is commented out in function " 
Controller.prototype.IntroductionPageCallback ". Unfortunately, if uncommenting 
that line as it should be, the installer segfaults after leaving " 
IntroductionPageCallback ", but before entering " TargetDirectoryPageCallback " 
without any further usable notice :-(.

I've no idea why this happens, but I'd very much appreciate if you would use 
your contacts into #qt-sdk to report this issue; maybe someone there could give 
a hint w.r.t. what's going wrong.

Furthermore, I found one thing in the MSYS installer that looks inconsistent to 
me and that might be related to the issue: When looking at

 
https://github.com/Alexpux/MSYS2-packages/blob/master/msys2-installer/qt-ifw/packages/com.msys2.root/meta/installscript.js,

the introduction page seems to be set to be invisible:

installer.setDefaultPageVisible(QInstaller.Introduction, false);

but it _does_ show up nevertheless. Maybe this is the reason why the installer 
segfaults when "clicking" it programmatically? Just a wild guess.

Cheers,

Chris


-----Ursprüngliche Nachricht-----
Von: Ray Donnelly 
[mailto:[email protected]<mailto:[email protected]>]
Gesendet: Dienstag, 28. Oktober 2014 11:53
An: Alexey Pavlov
Cc: Warlich, Christof; 
[email protected]<mailto:[email protected]>
Betreff: Re: [Msys2-users] best practise w.r.t an unattended msys2 install

On Tue, Oct 28, 2014 at 10:23 AM, Alexey Pavlov 
<[email protected]<mailto:[email protected]>> wrote:
>
> 28 окт. 2014 г., в 13:11, Warlich, Christof
> <[email protected]<mailto:[email protected]>>
> написал(а):
>
> Hi,
>
> I need to set up a non-interactive MSYS2 install, i.e. one that does
> not need any user interaction. What is the recommended procedure for this:
>
>
> extracting msys2-base-i686-20141003.tar.xz to the location desired and
> then executing msys2_shell.bat (and maybe autorebase.bat) once to do
> the initial user specific setup calling msys2-i686-20141003.exe with
> some command-line switch that puts it in non-interactive mode
>
>
> While I think I know how to proceed when following the first option,
> I’d prefer the second if possible, i.e. if there is some command line
> switch to support installation non-interactively. But the help
> provided by msys2-i686-20141003.exe is rather terse (see below). Is
> there some more elaborate documentation available?
>
>
>
> MSYS2 installer is based on Qt Installer Framework:
> http://qt-project.org/doc/qtinstallerframework-1.5/index.html
>
>
> As I know it doesn’t have options for silent install.
>

I had a quick chat on #qt-sdk about this, and you can write a script and pass 
that in with --script. The qt-ifw testsuite uses this facility.

>From looking at the files here:
https://qt.gitorious.org/installer-framework/installer-framework/source/368b00f3fc3e4b9635e68bdca8d5f17d7c881d72:tests/test-installer
and here:
https://github.com/Alexpux/MSYS2-packages/tree/master/msys2-installer/qt-ifw

It should be possible to make it work. If you do manage to come up with 
something please share it with us as I'm sure others would like to be able to 
do this.

> Regards,
> Alexey.
>
> Thanks,
>
> Chris
>
> $ ./msys2-i686-20141003.exe -h
> Usage: C:\tmp\msys2-i686-20141003.exe [options] Key=Value
>
> Options:
>   -?, -h, --help                 Displays this help.
>   --version                      Displays version information.
>   -v, --verbose                  Verbose mode. Prints out more information.
>   --proxy                        Use system proxy on Windows and OS X. This
>                                  option has no effect on Linux.
>   --script <file>                Execute the script given as argument.
>   --checkupdates                 Check for updates and return an XML
>                                  description.
>   --updater                      Start application in updater mode.
>   --manage-packages              Start application in package manager mode.
>   --no-force-installations       Allow deselection of components that are
>                                  marked as forced.
>   --show-virtual-components      Show virtual components in installer and
>                                  package manager.
>   --create-offline-repository    Create a local repository inside the
>                                  installation directory. This option has no
>                                  effect on online installers.
>   --addRepository <URI,...>      Add a local or remote repository to the
> list
>                                  of user defined repositories.
>   --addTempRepository <URI,...>  Add a local or remote repository to
> the list
>                                  of temporary available repositories.
>   --setTempRepository <URI,...>  Set a local or remote repository as
> temporary
>                                  repository, it is the only one used during
>                                  fetch.
>                                  Note: URI must be prefixed with the
> protocol,
>                                  i.e. file:///<file:///\\>, https://, http:// 
> or ftp://.
>   --startserver <port,key>       Starts the application as headless process
>                                  waiting for commands to execute.
>
> Arguments:
>   Key=Value                      Key Value pair to be set.
>
>
>
> ----------------------------------------------------------------------
> -------- _______________________________________________
> Msys2-users mailing list
> [email protected]<mailto:[email protected]>
> https://lists.sourceforge.net/lists/listinfo/msys2-users
>
>
>
> ----------------------------------------------------------------------
> --------
>
> _______________________________________________
> Msys2-users mailing list
> [email protected]<mailto:[email protected]>
> https://lists.sourceforge.net/lists/listinfo/msys2-users
>
------------------------------------------------------------------------------
_______________________________________________
Msys2-users mailing list
[email protected]<mailto:[email protected]>
https://lists.sourceforge.net/lists/listinfo/msys2-users

------------------------------------------------------------------------------
_______________________________________________
Msys2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/msys2-users

Reply via email to