Re: LibreOffice (code) extensions broken on mips64el/riscv64 (was: Re: unbreaking LibreOffices tests on at least release architectures)

Rene Engelhard <[email protected]> Mon, 10 Jul 2023 18:01:48 +0200
Newsgroups gmane.linux.debian.ports.mips
Organization Debian Project
Message-ID <[email protected]>
Hi,

Am 04.07.23 um 23:56 schrieb Rene Engelhard:
> So
> 
> - Java extension (said TestExtension.oxt used in the smoketest): fails
> - pure dictionary extension: works
> - python extension (hungarian grammarcheck - Python): fails
> - no C++ extension available to test on riscv64 ;-)
> 
> Tested on riscv64 on the porterbox (and later also on eller with acual 
> sids libreoffice). That means it's not just Java:

[...]

Did some more tests (including builds, but they don't get anywhere to 
report yet...)

rene@eller ~ % dd-schroot-cmd -c 
sid_mips64el-dchroot-abefe46d-3e8a-402b-bd94-6fe01d92cdda apt-get 
install libreoffice-nlpsolver libreoffice-lightproof-hu
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
   fonts-opensymbol libreoffice-base-core libreoffice-calc libreoffice-core
   python3-uno
Suggested packages:
   libreoffice-base ocl-icd-libopencl1 | mesa-opencl-icd | 
beignet-opencl-icd
Recommended packages:
   libpaper-utils gstreamer1.0-plugins-base gstreamer1.0-plugins-good
   gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-libav
The following NEW packages will be installed:
   fonts-opensymbol libreoffice-base-core libreoffice-calc libreoffice-core
   libreoffice-lightproof-hu libreoffice-nlpsolver python3-uno
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Inst fonts-opensymbol (4:102.12+LibO7.4.5-3 Debian:unstable [all])
Inst libreoffice-core (4:7.4.5-3 Debian:unstable [mips64el])
Inst libreoffice-base-core (4:7.4.5-3 Debian:unstable [mips64el])
Inst libreoffice-calc (4:7.4.5-3 Debian:unstable [mips64el])
Inst python3-uno (4:7.4.5-3 Debian:unstable [mips64el])
Inst libreoffice-lightproof-hu (1.6.2+1.6-3 Debian:unstable [all])
Inst libreoffice-nlpsolver (4:0.9+LibO7.4.5-3 Debian:unstable [all])
Conf fonts-opensymbol (4:102.12+LibO7.4.5-3 Debian:unstable [all])
Conf libreoffice-core (4:7.4.5-3 Debian:unstable [mips64el])
Conf libreoffice-base-core (4:7.4.5-3 Debian:unstable [mips64el])
Conf libreoffice-calc (4:7.4.5-3 Debian:unstable [mips64el])
Conf python3-uno (4:7.4.5-3 Debian:unstable [mips64el])
Conf libreoffice-lightproof-hu (1.6.2+1.6-3 Debian:unstable [all])
Conf libreoffice-nlpsolver (4:0.9+LibO7.4.5-3 Debian:unstable [all])
Do it for real [Y/n]: y
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
   fonts-opensymbol libreoffice-base-core libreoffice-calc libreoffice-core
   python3-uno
Suggested packages:
   libreoffice-base ocl-icd-libopencl1 | mesa-opencl-icd | 
beignet-opencl-icd
Recommended packages:
   libpaper-utils gstreamer1.0-plugins-base gstreamer1.0-plugins-good
   gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-libav
The following NEW packages will be installed:
   fonts-opensymbol libreoffice-base-core libreoffice-calc libreoffice-core
   libreoffice-lightproof-hu libreoffice-nlpsolver python3-uno
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 36.2 MB of archives.
After this operation, 214 MB of additional disk space will be used.
Get:1 https://deb.debian.org/debian sid/main mips64el fonts-opensymbol 
all 4:102.12+LibO7.4.5-3 [113 kB]
Get:2 https://deb.debian.org/debian sid/main mips64el libreoffice-core 
mips64el 4:7.4.5-3 [28.0 MB]
Get:3 https://deb.debian.org/debian sid/main mips64el 
libreoffice-base-core mips64el 4:7.4.5-3 [673 kB]
Get:4 https://deb.debian.org/debian sid/main mips64el libreoffice-calc 
mips64el 4:7.4.5-3 [6458 kB]
Get:5 https://deb.debian.org/debian sid/main mips64el python3-uno 
mips64el 4:7.4.5-3 [139 kB]
Get:6 https://deb.debian.org/debian sid/main mips64el 
libreoffice-lightproof-hu all 1.6.2+1.6-3 [31.0 kB]
Get:7 https://deb.debian.org/debian sid/main mips64el 
libreoffice-nlpsolver all 4:0.9+LibO7.4.5-3 [712 kB]
Fetched 36.2 MB in 5s (7975 kB/s)
Download complete and in download only mode
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
   fonts-opensymbol libreoffice-base-core libreoffice-calc libreoffice-core
   python3-uno
Suggested packages:
   libreoffice-base ocl-icd-libopencl1 | mesa-opencl-icd | 
beignet-opencl-icd
Recommended packages:
   libpaper-utils gstreamer1.0-plugins-base gstreamer1.0-plugins-good
   gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-libav
The following NEW packages will be installed:
   fonts-opensymbol libreoffice-base-core libreoffice-calc libreoffice-core
   libreoffice-lightproof-hu libreoffice-nlpsolver python3-uno
debconf: delaying package configuration, since apt-utils is not installed
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/36.2 MB of archives.
After this operation, 214 MB of additional disk space will be used.
Selecting previously unselected package fonts-opensymbol.
(Reading database ... 90795 files and directories currently installed.)
Preparing to unpack 
.../0-fonts-opensymbol_4%3a102.12+LibO7.4.5-3_all.deb ...
Unpacking fonts-opensymbol (4:102.12+LibO7.4.5-3) ...
Selecting previously unselected package libreoffice-core.
Preparing to unpack .../1-libreoffice-core_4%3a7.4.5-3_mips64el.deb ...
Unpacking libreoffice-core (4:7.4.5-3) ...
Selecting previously unselected package libreoffice-base-core.
Preparing to unpack .../2-libreoffice-base-core_4%3a7.4.5-3_mips64el.deb ...
Unpacking libreoffice-base-core (4:7.4.5-3) ...
Selecting previously unselected package libreoffice-calc.
Preparing to unpack .../3-libreoffice-calc_4%3a7.4.5-3_mips64el.deb ...
Unpacking libreoffice-calc (4:7.4.5-3) ...
Selecting previously unselected package python3-uno.
Preparing to unpack .../4-python3-uno_4%3a7.4.5-3_mips64el.deb ...
Unpacking python3-uno (4:7.4.5-3) ...
Selecting previously unselected package libreoffice-lightproof-hu.
Preparing to unpack .../5-libreoffice-lightproof-hu_1.6.2+1.6-3_all.deb ...
Unpacking libreoffice-lightproof-hu (1.6.2+1.6-3) ...
Selecting previously unselected package libreoffice-nlpsolver.
Preparing to unpack 
.../6-libreoffice-nlpsolver_4%3a0.9+LibO7.4.5-3_all.deb ...
Unpacking libreoffice-nlpsolver (4:0.9+LibO7.4.5-3) ...
Setting up fonts-opensymbol (4:102.12+LibO7.4.5-3) ...
Setting up libreoffice-core (4:7.4.5-3) ...
Setting up libreoffice-base-core (4:7.4.5-3) ...
Setting up python3-uno (4:7.4.5-3) ...
Setting up libreoffice-calc (4:7.4.5-3) ...
Setting up libreoffice-nlpsolver (4:0.9+LibO7.4.5-3) ...
Setting up libreoffice-lightproof-hu (1.6.2+1.6-3) ...
Processing triggers for man-db (2.11.2-2) ...
Processing triggers for libreoffice-common (4:7.4.5-3) ...
Processing triggers for fontconfig (2.14.1-4) ...

rene@eller ~/libreoffice-7.5.5~rc1 % unopkg list --bundled
All deployed bundled extensions:

Identifier: org.openoffice.comp.pyuno.lightproof.oxt.lightproof_hu
   Version: 1.6.2
   URL: vnd.sun.star.expand:$BUNDLED_EXTENSIONS/lightproof_hu
   is registered: yes
   Media-Type: application/vnd.sun.star.package-bundle
   Description:
   bundled Packages: {
       URL: 
vnd.sun.star.expand:$BUNDLED_EXTENSIONS/lightproof_hu/dialog/OptionsDialog.xcs
       is registered: yes
       Media-Type: application/vnd.sun.star.configuration-schema
       Description:

       URL: 
vnd.sun.star.expand:$BUNDLED_EXTENSIONS/lightproof_hu/dialog/OptionsDialog.xcu
       is registered: yes
       Media-Type: application/vnd.sun.star.configuration-data
       Description:
  and mips64el
       URL: 
vnd.sun.star.expand:$BUNDLED_EXTENSIONS/lightproof_hu/Lightproof.py
       is registered: yes
       Media-Type: application/vnd.sun.star.uno-component;type=Python
       Description:

       URL: 
vnd.sun.star.expand:$BUNDLED_EXTENSIONS/lightproof_hu/Linguistic.xcu
       is registered: yes
       Media-Type: application/vnd.sun.star.configuration-data
       Description:

   }

Identifier: com.sun.star.comp.Calc.NLPSolver
   Version: 0.9
   URL: vnd.sun.star.expand:$BUNDLED_EXTENSIONS/nlpsolver
   is registered: yes
   Media-Type: application/vnd.sun.star.package-bundle
   Description: This extension integrates into Calc and offers new 
Solver engines to use for optimizing nonlinear programming models.

   bundled Packages: {
       URL: vnd.sun.star.expand:$BUNDLED_EXTENSIONS/nlpsolver/help
       is registered: yes
       Media-Type: application/vnd.sun.star.help
       Description:

       URL: vnd.sun.star.expand:$BUNDLED_EXTENSIONS/nlpsolver/components.rdb
       is registered: yes
       Media-Type: application/vnd.sun.star.uno-components
       Description:

   }


  % rm -rf ~/.config/libreoffice

  % debian/tests/test-extension

====== Add the extension ======
Synchronizing repository for shared extensions
Synchronizing repository for shared extensions








  Synchronizing repository for bundled extensions
Synchronizing repository for bundled extensions








   Enabling: Lightproof grammar checker (magyar)
Enabling: Lightproof grammar checker (magyar)

    Enabling: OptionsDialog.xcs
Enabling: OptionsDialog.xcs

    Enabling: OptionsDialog.xcu
Enabling: OptionsDialog.xcu

    Enabling: Lightproof.py
Enabling: Lightproof.py

    Enabling: Linguistic.xcu
Enabling: Linguistic.xcu

   Enabling: Solver for Nonlinear Programming
Enabling: Solver for Nonlinear Programming

    Enabling: help
Enabling: help

    Enabling: components.rdb
Enabling: components.rdb

Copying: TestExtension.oxt

ERROR: Exception occurred: An error occurred while enabling: 
TestExtension.jar: 
com.sun.star.registry.CannotRegisterImplementationException 
"ImplementationRegistration::registerImplementation() 
InvalidRegistryException during registration (destination registry is 
read-only!  cannot merge! at 
./stoc/source/implementationregistration/mergekeys.cxx:160) at 
./stoc/source/implementationregistration/implreg.cxx:1307" at 
./desktop/source/deployment/registry/dp_backend.cxx:670

     Cause: 
(com.sun.star.registry.CannotRegisterImplementationException) { { 
Message = "ImplementationRegistration::registerImplementation() 
InvalidRegistryException during registration (destination registry is 
read-only!  cannot merge! at 
./stoc/source/implementationregistration/mergekeys.cxx:160) at 
./stoc/source/implementationregistration/implreg.cxx:1307", Context = 
(com.sun.star.uno.XInterface) @0 } }

ERROR: unopkg failed.


For both the mips64el and mipsel(!) chroots.

This means "bundled" extensions *SEEMS TO* work, those to be installed 
from .oxt apparently not... The question really is whether they actually 
do work or whether it's just a wrong positive display.

 > So ignoring this test failure is a no-go either since libreoffice- 
lightproof-hu et al. (which is that lightproof-hu-1-6-4.oxt) is a thing 
in Debian, too.

There is some mechanism in place in debian/rules to ignore this error 
but I don't really like it.

Can someone with root on a mips(64)el/riscv64 (and LO installed) try whether

1.

$ apt install libreoffice-core
$ apt install libreoffice-java-common ure-java (just in case)
$ apt install libreoffice-smoketest-data
(or wget it and extract the .oxt from  the .deb)
$ cd /usr/lib/libreoffice/share/extensions
$ mkdir -p TestExtension && cd TestExtension
$ unzip /usr/share/libreoffice/TestExtension.oxt
(or the extracted .oxt)
$ unopkg list --bundled

for the text extension

2.

$ apt install libreoffice-core libreoffice-writer libreoffice-calc
$ apt install libreoffice-java-common ure-java (just in case)
$ apt install libreoffice-nlpsolver libreoffice-lightproof-en
$ unopkg list --bundled
(start LO and see
  - whether Tools->Extension Manager shows something sensbile (both 
"English grammar checker" and "Solver for nonlinear programming" or 
somsuch OKish - not greyed out for example)
  - start a lowriter document, make sure document language is english 
(you can do LANG=C....): Type "This is an test". "an test" should be 
underlined (grammar checked)
  - start a localc document. Tools->Solver->Options. Should have 5 
options instead of 3.

for some real extensions in the archive.

riscv64 packages skipping the extensions part are at 
http://people.debian.org/~rene/libreoffice/test/extensions 
(apt-gettable). mips(64)el should be able to be tested in unstable with 
7.4.x...

@zeha: See above.

Regards

René