Resurrecting --enable-online-update-mar

Stephan Bergmann stephan.bergmann at allotropia.de
Wed Dec 20 21:52:54 UTC 2023


On 12/15/23 13:53, Stephan Bergmann wrote:
> A Windows (or Linux, mostly for testing purposes) build that configures 
> --enable-online-update-mar will now generate a build that includes the 
> relevant code and UI, but, lacking further 
> --with-online-update-mar-...=... configure options, will not provide 
> that feature in a working form.  Recent Windows nightly builds generated 
> from distro-configs/LibreOfficeWin64.conf should be in that state, with 
> the UI to "Enable automatic upate" at "Tools - Options... - LibreOffice 
> - Online Update".  (For non-GTK VCL backends, there's still a bug that 
> the "Automatic Update" section on that options page is mixed into the 
> traditional --enable-online-update options at the top of the page, 
> instead of down at the bottom; fixing of 
> cui/uiconfig/ui/optonlineupdatepage.ui welcome...)

(The UI has meanwhile been hidden behind experimental mode with 
<https://git.libreoffice.org/core/+/9800a7106223bd7759aa851574ef720d15a146cd%5E%21> 
"Hide --enable-online-updaet-mar GUI behind ExperimentalMode for now".)

> To have a working feature, one would at least need to provide additional 
> --enable-online-update-mar-certificateder=... and 
> --enable-online-update-mar-channel=... configure options.  (In the past, 
> such additional configuration data had to be provided in an ini file 
> referenced by a --with-update-config=... configure option.  I have 
> dropped the need for that additional ini file now, turning its entries 
> into individual --enable-online-update-mar-...=... configure options.) 
> The certificateder option's value must be the pathname of an existing 
> certificate in DER format (that will be compiled into the code) (what 
> the certificte-der=... line used to specify in the --with-update-config 
> ini file).  The channel option's value must match the channel name under 
> which updates are available on the server (see below).

For builds based on distro-configs/LibreOfficeWin64.conf, a 
--with-online-update-mar-channel=LOOnlineUpdater has meanwhile been set 
with 
<https://git.libreoffice.org/core/+/1913ad7cfbf8d101f7e7bc8832b57bdded7ab389%5E%21> 
"Set --with-online-update-mar-channel for 
distro-configs/LibreOfficeWin64.conf"...

> @Cloph:  We'll need to find a way to specify a certificate there for TDF 
> builds that enable that feature.

...but we'll still need to pass an appropriate 
--with-online-update-mar-certificateder=... into such builds, ideally 
for the upcoming LO 24.2.0 RC1 builds.

> The server that is contacted by LO is still hardcoded (in 
> officecfg/registry/schema/org/openoffice/Office/Update.xcs) to 
> <http://vm195.documentfoundation.org/> (but can be overridden with a 
> LIBO_UPDATER_URL env var for testing).  On that server, LO expects to 
> find a /update/check/1/LibreOffice/$SHA/$PLATFORM/$CHANNEL file 
> containing the relevant update information (where $SHA is the LO 
> installation's buildid, i.e., git SHA, $PLATFORM is e.g. Windows_X86_64, 
> and $CHANNEL is the above --albne-online-update-mar-channel value). 
> There apparently still are old Makefile.in targets (create-mar et al) to 
> create such files and the actual mar files they reference, but those 
> also appear to have rotten, and I still need to look into them deeper.
> 
> @Cloph:  We'll need to set up a server (and update its URL in 
> Update.xcs) and set up a process to generate mar files.  It would be 
> great if you find time to help me with that.

The hardcoded server URL has meanwhile been updated to an appropriate 
value with 
<https://git.libreoffice.org/core/+/1c069c14a130010ec6cf53bd1b7d84a9df589f36%5E%21> 
"Update --enable-online-update-mar server URL".


More information about the LibreOffice mailing list