Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Online installer error, "cannot retrieve remote tree."



  • I'm trying to release my project with an online installer and followed the online documentation: http://doc.qt.io/qtinstallerframework/ifw-online-installers.html

    I have a working offline installer, and tried to use the tutorial example to see if I could get a working online installer with a online repository.

    My config.xml

    <?xml version="1.0" encoding="UTF-8"?>
    
    -<Installer>
    
    <Name>Your application</Name>
    
    <Version>1.0.0</Version>
    
    <Title>Online Installer Test</Title>
    
    <Publisher>Your vendor</Publisher>
    
    <StartMenuDir>Super App</StartMenuDir>
    
    <TargetDir>@HomeDir@/InstallationDirectory</TargetDir>
    
    
    -<RemoteRepositories>
    
    
    -<Repository>
    
    <Url>https://drive.google.com/open?id=1zMydyqMoce0fRQ3TsRP5BVrBcQnb-Gqb</Url>
    
    </Repository>
    
    </RemoteRepositories>
    
    </Installer>
    

    This is the command I use with the binarycreator tool:

    C:\Users\<username>\Desktop\tutorial>C:\Qt\QtIFW-3.0.2\bin\binarycreator.exe --online-only -c config/config.xml -p packages installer.exe
    

    The link points to a shared folder named "OnlineInstallerTest", containing Updates.xml and repo folder "com.vendor.product" with 3 7z zip files.

    When I run the installer, I get this error message: "cannot retrieve remote tree."

    I think the problem might be that I'm sharing my repo folder and the Updates.xml in a shared Google Drive folder, but I'm not sure if I have have configured the installer, xml files and repo folder correct.
    Any ideas on how I can get this working. Is it possible to use Google Drive or DropBox with Qt online installer? If not, any suggestion on other places to host a online repo?

    My goal is to have my project check for updates via maintenance tool when the program starts.



  • I gave up trying Google Drive or Dropbox. I believe the way they are sharing files is not suitable for this purpose.
    The solution was to register an account on drivehq.com, set the ftp address and login in the config file . Now it works, and when I update the repo with new content and increased version nr and check for updates via the maintenance tool, it updates the project successfully from the online repo.


  • Lifetime Qt Champion

    Hi
    Cool. didnt know u could use ftp.
    Can user see this file ?
    Its more so account is not hijacked.



  • All you give to user is the generated installer executable, either directly or from download link. They will, as far as I have understood, not be able to see any of the config.xml file with the server url and login info as long as you only provide the installer file generated from binarycreator.exe
    I'm not finished learning and testing the installer framework yet, so I'm not familiar with all aspects of it.


  • Lifetime Qt Champion

    @Cute
    Me neither and hence my surprise you can use ftp also.
    I guess you are right and its encrypted in the exe.
    just wondered for a moment.
    Thank you for testing with drivehq.com. surely will be handy for others to knowu can host there for free.



  • Hi guys!

    I'm trying to use drivehq.com with online installer. However, when installer tries to get the SHA1 for the first package, I get a "Permission Denied" error. If I try to download any file on the repo with Filezilla, I have no issues. This is my config.xml Repository section:

        <RemoteRepositories>
            <Repository>
                    <Url>ftp://myUser:myPass@ftp.drivehq.com/myRepoFolder</Url>
                    <Username>myUser</Username>
                    <Password>myPass</Password>
                    <Enabled>1</Enabled>
                    <DisplayName>Test</DisplayName>
            </Repository>
        </RemoteRepositories>
    

    Any Ideas? Thanks in advance!


Log in to reply