[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