<div>Hi All,</div>
<div>&nbsp;</div>
<div>I&#39;ve been looking at installmgr lately, and have a few questions:</div>
<div>&nbsp;</div>
<div>Could&nbsp;there be a consistent ftp site structure?<br>In case you don&#39;t know, the way InstallMgr works is thus:</div>
<div>The location to go use is specified by the install source. It will give a directory to look in.</div>
<div>1) Retrieve the mods.d.tar.gz from the folder specified by the install source on the server</div>
<div>2) Open it up, and see what files are inside by looking at the different &lt;modulename&gt;.conf file</div>
<div>3) When a module needs to be installed, look in the &lt;modulename&gt;.conf file to find the relative path to the module files on the server</div>
<div>4) Copy all the files from the server into the InstallMgr directory</div>
<div>5) Copy from the InstallMgr directory to the destination directory</div>
<div>&nbsp;</div>
<div>Most Bible downloads will have at 4 files I think, and dictionaries 2, which will take a while to download.</div>
<div>What I really don&#39;t like about this approach is the fact that there is a zip of all the files needed available. </div>
<div>This will be much quicker to download, both due to the smaller file size, and the fact fewer connections need to be made.</div>
<div>&nbsp;</div>
<div>However, I have looked at the way to get at the zip file, and every site is a special case:</div>
<div>Relative to the install source path,</div>
<div><a href="http://bible.org">bible.org</a> keeps them under packages/rawzip</div>
<div><a href="ftp://ftp.crosswire.org">ftp.crosswire.org</a>&nbsp;keeps them under ../packages/rawzip for published, and ../betapackages/rawzip for beta ones</div>
<div><a href="ftp://ftp.kleinpaste.org">ftp.kleinpaste.org</a> keeps them under zip/</div>
<div>&nbsp;</div>
<div>Keeping these consistent would make it much easier for InstallMgr to download a .zip if possible.</div>
<div>I think we should make a decision on which is preferred, and put it on the wiki. </div>
<div>While it may be too late to change existing ones, I don&#39;t want to see even more different styles.</div>
<div><br>Also, on the more technical side, while translating to python I found some problems:</div>
<div>installmgr.cpp:462 &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; FileMgr::createPathAndFile(target+&quot;/globals.conf&quot;);<br>Should this file descriptor be closed??? As far as I can see, this will leak a descriptor every remote refresh.</div>
<div>I think it should do something like this:</div>
<div>&nbsp;&nbsp;int desc = FileMgr::createPathAndFile(target+&quot;/globals.conf&quot;);<br>&nbsp;&nbsp;if(desc &gt;= 1) <br>&nbsp;&nbsp;&nbsp;::close(desc);<br><br clear="all">installmgr.cpp:279 &nbsp;&nbsp; SWMgr mgr(sourceDir.c_str());</div>
<div>Should this be SWMgr mgr(sourceDir.c_str(), true, 0, false, false)?<br>Without this, it will download it into the home directory, instead of the correct one. <br>This will mean it then tries to copy from itself onto itself, and presumably delete itself after that.<br clear="all">
Also installmgr:391&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SWMgr newDest(destMgr-&gt;prefixPath);<br>&nbsp;</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>At this stage, it looks like BPBible 0.3 will have InstallMgr support, as the translation of installmgr to python code seems to have got rid of the problems I&#39;ve had with the c++ version. Some things like the GUI still have to be worked out, though.</div>

<div>&nbsp;</div>
<div>Sorry this email is so long :)</div>
<div><br>God Bless,<br>Ben<br>-------------------------------------------------------------------------------------------<br>The Lord is not slow to fulfill his promise as some count slowness,<br>but is patient toward you, not wishing that any should perish,<br>
but that all should reach repentance.<br>2 Peter 3:9 (ESV) </div>