Archive: libtorrent + nsis-plugin = best onlineinstaller on earth?


libtorrent + nsis-plugin = best onlineinstaller on earth?
Hi there.

When I see good working Platforms like http://www.zudeo.com or http://www.getdemocracy.com/watch/ I think I would like also installers which uses the power of Bittorrent. So you just needed to download a very small installer and the installer would download all the big files (medias, etc) from the torrent before continueing the installation. But the only thing I found is a very old and discontinued Battle Torrent Plug-In.

Is there someone out who can program a plugin-wrapper for e.g. libtorrent?

What do you think?


Hi Denis,
Thanks for the links you have provided above, I think this is not a good idea for the very large installation running 600MB+.

Do you have any other suggestions, I am also looking for web install, where I can fragment the installation into small "units" (like WinRar does it for it's SFXs) and then build them locally on users PC and run it once complete.

Any Ideas?


Originally posted by n_baua
Do you have any other suggestions, I am also looking for web install, where I can fragment the installation into small "units" (like WinRar does it for it's SFXs) and then build them locally on users PC and run it once complete.
Any Ideas?
My idea was to use libtorrent in nsis to get this. But I can't do any c++ or c# code (only php). I found out that libtorrent is already very strong and also supports webseed. Thats why I tought it would wonderful match to NSIS. The download is splitet to users and servers. Also you where able to "replace" the torrent and therefore the whole content (e.g. a newer version of your installation or something similar). That would be very great. You only needed to code one installer and the rest would be in the downloaded package. Or you would write an "initial installer" which only downloads and starts the packaege which it gets. That would be wonderful :)

Do you have any other suggestions, I am also looking for web install, where I can fragment the installation into small "units" (like WinRar does it for it's SFXs) and then build them locally on users PC and run it once complete.
1.Get a command line utility that splits a file into pieces.
2.Split your large install.exe in preferred pieces and upload them to server(s).
3.Create a batch file (e.g. join.bat) and add the command "copy /b piece.1 + piece.2 + piece.3 install.exe."
4.Build a small installer that creates the pluginsdir and extracts there the join.bat, and then starts downloading the pieces from server(s). Once the download is completed, execute the join.bat (e.g. nsexec::exec join.bat).
5.ExecWait the pluginsdir\install.exe and... that's all, when the small setup.exe is terminated, pluginsdir is removed and everything is in tact.
Note that the disadvantage with all these is that temporary you need double space on target than the actual installation.

Hi,

I think the idea which should work

1. Write a small bootstrap(I mean Startup) application and allow user to download it away as it is.
2. Use this exe to download all the stuff from web.
3. Once download is complete, merge all parts and run it to install setup.

This was(may be is) the process of the MS web updater for windows updates where they install a small exe may be a BHO and install the update.

I do not know the work around for the Startup application, which can be a VC++ stand alone exe. but the installation or execution process of it without the security dialogs on diff OSs(and hence browsers) also is a question.


I think the solution I mentioned above is easier because it requires NSIS coding only, no BHO's and susch things.
The reasonable improvement, especially if the installation is very large, should be that the small installer at the beginning, should make all needed calculations for drives and free space, select another drive for temporary use if necessary, or suggest users to quit and free some space etc.


Here is a very good example of using NSIS and BitTorrent together:

Ubuntu Windows Installer:
-> https://wiki.ubuntu.com/install.exe/Prototype
http://www.golem.de/0701/49961-ubuntuinstaller.png

http://omattos.co.uk/ubuntuscreens/6.JPG

Grab the SourceCode here:
http://omattos.co.uk/source.zip


This is pretty close to what i am looking for for my website.... a self contained torrent download utility...

So you can click a link on the website and it will open a torrent downland and download the torrent with out have the user need a torrent app or anything like that.


How do i get the above info to work for me.. i am not a programmer.. any help or advice would be appreciated.


BitComet has a self-executable installer. Blizzard uses it to distribute their trailers and updates. Seeing how some ISPs throttling, shaping, and even injecting RST packets for Bittorrent - its not a reliable method of file distribution for some users.