[sldev] Packaging the viewer for Linux distributions

Ryan Williams (Which) rdw at lindenlab.com
Fri Oct 12 11:33:50 PDT 2007


Alissa Sabre wrote:
>> you can get much bigger wins by doing a binary delta on the executable.  
>>     
>
> We then need to make sure the _current_version_ is exactly the one the
> patching server considers to be...  Well, SL viewer calculates MD5
> hash of itself upon startup.  It can be a good identiy.
>
>   
Yeah, exactly.  There's no user-modifiable data in the install
directory, and we've decided that there never should be (for good
practice reasons among others). 
> So, the scheme might be:
>
> - The viewer (or an updator?) calculates MD5 hash of the user's viewer
>   executable and send it to the server (as a part of URL, for
>   example.)
>
> - The patch server looks up a version that corresponds to the given
>   MD5 in its own database.  If it finds one, send the suitable binary
>   diff.  If it doesn't, send the whole (no diff) binary as a fallback.
>   
Yeah.  Internally we've asserted that the combination of channel name +
version is just as unique as the md5, so that might be faster/more
convenient as an index.

I copied the internal preliminary design doc to the public wiki here:
http://wiki.secondlife.com/wiki/Patch_Updater_Design
I should reiterate that this is Wiggo's project -- I just shoot my mouth
off about it a lot.

-RYaN


More information about the SLDev mailing list