Opened 13 months ago

Closed 9 months ago

#32789 closed defect (fixed)

Fix spkg-configure.m4 for singular

Reported by: Matthias Köppe Owned by:
Priority: major Milestone: sage-9.6
Component: build: configure Keywords:
Cc: Dima Pasechnik, François Bissey, Samuel Lelièvre, Isuru Fernando, Michael Orlitzky, Tobias Diez, Tobias Hansen Merged in:
Authors: Dima Pasechnik Reviewers: Matthias Koeppe
Report Upstream: Reported upstream. No feedback yet. Work issues:
Branch: c0ceaf5 (Commits, GitHub, GitLab) Commit: c0ceaf51d8ee6c7a55e60f6f9db2c92ca01245a2
Dependencies: Stopgaps:

Status badges

Description (last modified by Matthias Köppe)

Follow-up from #29024. This time with testing on more than 1 platform.

On Debian 11 (a.k.a. bullseye, stable) Singular's libs have different names, and are failing to be picked up: they all are installed in /usr/lib/x86_64-linux-gnu/ and we have the following: I add Sage's names next to their

Debian                             Sage

libsingular-factory.so             libfactory.so
libsingular-gfan.so                ???
libsingular-omalloc.so             libomalloc.so
libsingular-polys.so               libpolys.so
libsingular-resources.so           libsingular_resources.so
libsingular-Singular.so            libSingular.so            

While it's not hard to test for libsingular-Singular.so in place of libSingular.so, it's some more work to use it.

Library names may be obtained from $ pkg-config --libs-only-l singular, which on Debian produces

-lsingular-Singular -ldl -lsingular-polys -lntl -lgmp -ldl -lsingular-factory -lntl -lgmp -lsingular-omalloc -lsingular-resources

Change History (75)

comment:1 Changed 13 months ago by Dima Pasechnik

Description: modified (diff)

comment:2 Changed 12 months ago by Matthias Köppe

Description: modified (diff)
Priority: majorblocker

comment:3 Changed 12 months ago by Matthias Köppe

Description: modified (diff)

comment:4 Changed 12 months ago by Michael Orlitzky

We already tried to fix the path to libSingular on cygwin once. Where does it really live?

comment:5 Changed 12 months ago by Matthias Köppe

We have a GH Actions workflow for Cygwin that allows you to download logs and the installation in SAGE_LOCAL for inspection, see for example https://github.com/sagemath/sage/actions/runs/1478855916

comment:6 Changed 12 months ago by Samuel Lelièvre

Happy to run any commands under Cygwin too.

comment:7 Changed 12 months ago by Matthias Köppe

From https://github.com/mkoeppe/sage/suites/4487559073/artifacts/119913634: The following DLLs are installed in SAGE_LOCAL/bin:

cygfactory-4-2-1.dll
cygomalloc-0-9-6.dll
cygpolys-4-2-1.dll
cygsingular_resources-4-2-1.dll
cygSingular-4-2-1.dll

comment:8 in reply to:  7 Changed 12 months ago by Michael Orlitzky

Replying to mkoeppe:

cygSingular-4-2-1.dll

Is there a symlink from cygSingular.dll to that file?

comment:9 Changed 12 months ago by Matthias Köppe

No

comment:10 Changed 12 months ago by Matthias Köppe

There is also a file SAGE_LOCAL/lib/libSingular.dll.a, which is used by the linker, and probably contains the information about the name of the actual DLL somehow.

comment:11 Changed 12 months ago by Matthias Köppe

Apparently https://sourceware.org/binutils/docs/binutils/dlltool.html can be used for reading this info.

@slelievre, could you run dlltool --identify local/lib/libSingular.dll.a please?

comment:12 Changed 12 months ago by Michael Orlitzky

The SPKG won't be installed yet, so we can't read local/lib/libSingular.dll.a to obtain the necessary path during ./configure. For the SPKG, we could hard-code the value as a last resort. Their library versioning scheme also corresponds to package-version.txt, but I doubt that's reliable.

Detecting the system copy should be relatively easy in comparison. Unless there's a way to install multiple copies into the system libdir, we can use find to pick out what is hopefully the only copy of cygSingular*.dll during ./configure.

comment:13 Changed 12 months ago by Matthias Köppe

It would probably be a good idea to first test whether this whole symbol visibility issue is even a thing on Cygwin.

comment:14 Changed 12 months ago by Matthias Köppe

Branch: u/mkoeppe/fix_spkg_configure_m4_for_singular

comment:15 Changed 12 months ago by Matthias Köppe

Commit: 47a6598471e55e4084a211a088ff0d9150a6f558
Dependencies: #32944, #32945

New commits:

47a6598src/sage/libs/singular/singular.pyx: On Cygwin, do not try to make singular library symbols global

comment:16 Changed 12 months ago by git

Commit: 47a6598471e55e4084a211a088ff0d9150a6f558d14d0af891584e93c478fe71a91ef26f17a08962

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

fbb8228build/bin/sage-build-env: Do not use SETUPTOOLS_USE_DISTUTILS=local on platforms other than homebrew
d5481d6Merge #32944
28e4fc6build/pkgs/pip/patches: Add upstream PR 10574
1b6ac2cbuild/pkgs/pip/patches/10574.patch: Backport to 21.3.1
d3a6fc3build/pkgs/pip: Update to 21.3.1
5b001a2build/bin/sage-dist-helpers: Remove '--use-feature=in-tree-build' (default since pip 21.3)
f1f4759build/pkgs/distlib: Update to 0.3.3
760ff09Merge #32751
f8400f7Merge #32671
d14d0afMerge #32945

comment:17 Changed 12 months ago by git

Commit: d14d0af891584e93c478fe71a91ef26f17a08962377df3553e8be697de6210497d10f39d16bfd7e0

Branch pushed to git repo; I updated commit sha1. New commits:

377df35src/sage/libs/singular/singular.pyx: Fixup

comment:18 Changed 12 months ago by Matthias Köppe

I've put this on top of other Cygwin fixes for convenience of testing

comment:19 Changed 12 months ago by Matthias Köppe

Reviewers: https://github.com/sagemath/sagetrac-mirror/actions/runs/1517921823

comment:20 Changed 12 months ago by Matthias Köppe

Hm, the test with CYGWIN_VERSION does not seem to have worked https://github.com/sagemath/sagetrac-mirror/runs/4371131888?check_suite_focus=true

comment:21 Changed 12 months ago by git

Commit: 377df3553e8be697de6210497d10f39d16bfd7e033d7d120081feb5a0e199ec46c1003cf4a079824

Branch pushed to git repo; I updated commit sha1. New commits:

33d7d12src/sage/libs/singular/singular.pyx: Use platform.system instead of sage.env.CYGWIN_VERSION

comment:22 Changed 12 months ago by Matthias Köppe

Reviewers: https://github.com/sagemath/sagetrac-mirror/actions/runs/1517921823https://github.com/sagemath/sagetrac-mirror/actions/runs/1523079928

comment:23 Changed 12 months ago by git

Commit: 33d7d120081feb5a0e199ec46c1003cf4a0798243d4f91b09d4f1e7b998fe9fb056657ac6e7cbdb9

Branch pushed to git repo; I updated commit sha1. New commits:

3d4f91bsrc/sage/env.py: Remove unused/defunct variable CYGWIN_VERSION

comment:24 Changed 12 months ago by Matthias Köppe

Branch: u/mkoeppe/fix_spkg_configure_m4_for_singular
Commit: 3d4f91b09d4f1e7b998fe9fb056657ac6e7cbdb9
Dependencies: #32944, #32945
Description: modified (diff)
Priority: blockercritical
Reviewers: https://github.com/sagemath/sagetrac-mirror/actions/runs/1523079928

I've split out the cygwin issue to #32954, ready for review

comment:25 Changed 11 months ago by Matthias Köppe

Cc: Tobias Hansen added
Milestone: sage-9.5sage-9.6
Priority: criticalmajor

Currently on all ubuntu including -jammy, singular's dependency cddlib is rejected - so there's no urgency here

comment:26 in reply to:  25 ; Changed 11 months ago by Tobias Hansen

Replying to mkoeppe:

Currently on all ubuntu including -jammy, singular's dependency cddlib is rejected - so there's no urgency here

I didn't get that. Is there something that needs to be changed in a Debian package?

comment:27 in reply to:  26 ; Changed 11 months ago by Matthias Köppe

Replying to thansen:

Replying to mkoeppe:

Currently on all ubuntu including -jammy, singular's dependency cddlib is rejected - so there's no urgency here

I didn't get that. Is there something that needs to be changed in a Debian package?

Yes, I think Debian's cddlib needs upgrading to 0.94m (see https://repology.org/project/cddlib/versions)

comment:28 in reply to:  27 ; Changed 11 months ago by Tobias Hansen

Replying to mkoeppe:

Yes, I think Debian's cddlib needs upgrading to 0.94m (see https://repology.org/project/cddlib/versions)

Ok, done.

comment:29 in reply to:  28 Changed 11 months ago by Matthias Köppe

Replying to thansen:

Replying to mkoeppe:

Yes, I think Debian's cddlib needs upgrading to 0.94m (see https://repology.org/project/cddlib/versions)

Ok, done.

Great. tox -e docker-ubuntu-jammy-standard -- config.status now gives:

Checking whether SageMath should install SPKG singular...
checking whether any of gmp ntl flint readline mpfr cddlib is installed as or will be installed as SPKG... no
checking for Singular... /usr/bin/Singular
checking for Singular >= 4.1.1... yes
checking if we can dlopen(/usr/lib/x86_64-linux-gnu/libSingular.so)... no
configure: no suitable system package found for SPKG singular

So it makes sense now to work on the present ticket.

comment:30 Changed 10 months ago by Samuel Lelièvre

Priority: majorcritical

Changing to critical in view of #33139.

Last edited 10 months ago by Samuel Lelièvre (previous) (diff)

comment:31 Changed 10 months ago by Michael Orlitzky

What does this have to do with a docbuild failure?

comment:32 Changed 10 months ago by Samuel Lelièvre

Priority: criticalmajor

Right, the link with singular was ruled out in ticket:32954#comment:8.

Sorry for the noise.

comment:33 Changed 10 months ago by Dima Pasechnik

Authors: Dima Pasechnik
Branch: u/dimpase/packages/singular/libpath_fix
Commit: c94e0c5631add37043e97a4dea9e0b4362b92556

still testing. the library on Debian is recognised, at least.


New commits:

c94e0c5added test for libsingular-Singular

comment:34 Changed 10 months ago by git

Commit: c94e0c5631add37043e97a4dea9e0b4362b92556de1640511311c3a455587701c49ecd550f0949c5

Branch pushed to git repo; I updated commit sha1. New commits:

de16405bump the minimal version to get polylib.lib

comment:35 Changed 10 months ago by Dima Pasechnik

Status: newneeds_review

Needs review. I suppose allowing Singular 4.1.1 was to be bumped up, as 4.1.1 doesn't actually have polylib.lib (it's called poly.lib there, but it's anyway too old, I think).

comment:36 Changed 10 months ago by Dima Pasechnik

I actually checked that the branch allows using system Singular 4.1.1 on Debian 11, but then the result has test failures due to that polylib.lib absense.

comment:37 Changed 10 months ago by Matthias Köppe

OK, this still correctly rejects singular on all ubuntu releases earlier than jammy.

comment:38 Changed 10 months ago by Matthias Köppe

Status: needs_reviewneeds_work

With TARGETS_PRE=build-local tox -e docker-ubuntu-jammy-standard -- build ptest I see the following failures:

sage -t --random-seed=75077202530737540355693167266645487963 src/sage/interfaces/singular.py
**********************************************************************
File "src/sage/interfaces/singular.py", line 2243, in sage.interfaces.singular.SingularFunction._instancedoc_
Failed example:
    'groebner' in singular.groebner.__doc__
Exception raised:
    Traceback (most recent call last):
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 694, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 1088, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.interfaces.singular.SingularFunction._instancedoc_[0]>", line 1, in <module>
        'groebner' in singular.groebner.__doc__
      File "sage/docs/instancedoc.pyx", line 211, in sage.docs.instancedoc.InstanceDocDescriptor.__get__ (build/cythonized/sage/docs/instancedoc.c:1878)
        return self.instancedoc(obj)
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2247, in _instancedoc_
        generate_docstring_dictionary()
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2337, in generate_docstring_dictionary
        with io.open(singular_info_file,
    TypeError: expected str, bytes or os.PathLike object, not NoneType
**********************************************************************
File "src/sage/interfaces/singular.py", line 2283, in sage.interfaces.singular.SingularFunctionElement._instancedoc_
Failed example:
    'matrix_expression' in A.nrows.__doc__
Exception raised:
    Traceback (most recent call last):
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 694, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 1088, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.interfaces.singular.SingularFunctionElement._instancedoc_[2]>", line 1, in <module>
        'matrix_expression' in A.nrows.__doc__
      File "sage/docs/instancedoc.pyx", line 211, in sage.docs.instancedoc.InstanceDocDescriptor.__get__ (build/cythonized/sage/docs/instancedoc.c:1878)
        return self.instancedoc(obj)
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2287, in _instancedoc_
        generate_docstring_dictionary()
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2337, in generate_docstring_dictionary
        with io.open(singular_info_file,
    TypeError: expected str, bytes or os.PathLike object, not NoneType
**********************************************************************
File "src/sage/interfaces/singular.py", line 2319, in sage.interfaces.singular.generate_docstring_dictionary
Failed example:
    generate_docstring_dictionary()
Exception raised:
    Traceback (most recent call last):
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 694, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 1088, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.interfaces.singular.generate_docstring_dictionary[1]>", line 1, in <module>
        generate_docstring_dictionary()
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2337, in generate_docstring_dictionary
        with io.open(singular_info_file,
    TypeError: expected str, bytes or os.PathLike object, not NoneType
**********************************************************************
File "src/sage/interfaces/singular.py", line 2371, in sage.interfaces.singular.get_docstring
Failed example:
    'groebner' in get_docstring('groebner')
Exception raised:
    Traceback (most recent call last):
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 694, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 1088, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.interfaces.singular.get_docstring[1]>", line 1, in <module>
        'groebner' in get_docstring('groebner')
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2378, in get_docstring
        generate_docstring_dictionary()
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2337, in generate_docstring_dictionary
        with io.open(singular_info_file,
    TypeError: expected str, bytes or os.PathLike object, not NoneType
**********************************************************************
File "src/sage/interfaces/singular.py", line 2373, in sage.interfaces.singular.get_docstring
Failed example:
    'standard.lib' in get_docstring('groebner')
Exception raised:
    Traceback (most recent call last):
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 694, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/doctest/forker.py", line 1088, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.interfaces.singular.get_docstring[2]>", line 1, in <module>
        'standard.lib' in get_docstring('groebner')
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2378, in get_docstring
        generate_docstring_dictionary()
      File "/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/sage/interfaces/singular.py", line 2337, in generate_docstring_dictionary
        with io.open(singular_info_file,
    TypeError: expected str, bytes or os.PathLike object, not NoneType
**********************************************************************

sage -t --random-seed=75077202530737540355693167266645487963 src/sage/libs/singular/singular.pyx
**********************************************************************
File "src/sage/libs/singular/singular.pyx", line 1583, in sage.libs.singular.singular.get_resource
Failed example:
    get_resource('i')            # SINGULAR_INFO_FILE
Expected:
    '.../singular...'
Got:
    <BLANKLINE>
**********************************************************************

and similar

comment:39 Changed 10 months ago by Dima Pasechnik

this appears to be fixed by

export SINGULAR_INFO_FILE=/usr/share/doc/singular/singular.hlp

before starting Sage. After this, instead of

sage: from sage.libs.singular.singular import get_resource
sage: get_resource('i')
// ** Could not get 'InfoFile'.
// ** Either set environment variable 'SINGULAR_INFO_FILE' to 'InfoFile',
// ** or make sure that 'InfoFile' is at "/usr/bin/../share/info/singular.hlp"

one gets, as it should be:

sage: from sage.libs.singular.singular import get_resource
sage: get_resource('i')
'/usr/share/doc/singular/singular.hlp'

The latter needs singular-doc installed, so it must be added to build/pkgs/singular/distros/debian.txt.

Last edited 10 months ago by Dima Pasechnik (previous) (diff)

comment:40 Changed 10 months ago by Dima Pasechnik

Report Upstream: N/AReported upstream. No feedback yet.

comment:41 Changed 10 months ago by Dima Pasechnik

Should be fixed by

  • src/sage/libs/singular/singular.pyx

    a b def get_resource(id): 
    15871587    """
    15881588    cdef char *result = feGetResource(<char>ord(id))
    15891589    if result == NULL:
    1590         return None
     1590        os.environ['SINGULAR_INFO_FILE']='/usr/share/doc/singular/singular.hlp'
     1591        result = feGetResource(<char>ord(id))
     1592        if result == NULL:
     1593            return None
    15911594    return bytes_to_str(result)

comment:42 Changed 10 months ago by git

Commit: de1640511311c3a455587701c49ecd550f0949c5cb82ed03d722e8e1e1a8fb6e8a0320c28f8a3ea7

Branch pushed to git repo; I updated commit sha1. New commits:

cb82ed0make singular.hlp known to Sage for Debian Singular

comment:43 Changed 10 months ago by Dima Pasechnik

Status: needs_workneeds_review

comment:44 Changed 10 months ago by Dima Pasechnik

Report Upstream: Reported upstream. No feedback yet.Reported upstream. Developers acknowledge bug.

All Debian/Ubuntu Singular 4.2.1 packages are broken, some of them do not install the needed .hlp file at all.

Last edited 10 months ago by Dima Pasechnik (previous) (diff)

comment:45 in reply to:  42 ; Changed 10 months ago by Matthias Köppe

Replying to git:

Branch pushed to git repo; I updated commit sha1. New commits:

cb82ed0make singular.hlp known to Sage for Debian Singular

I don't think we should have this in our code

comment:46 Changed 10 months ago by Matthias Köppe

Status: needs_reviewneeds_info

Probably best to wait until there's a suitable version packaged

comment:47 Changed 10 months ago by Dima Pasechnik

indeed, there are no packages that work for us atm.

comment:48 Changed 10 months ago by Dima Pasechnik

It seems that actually something either goes wrong with dpkg in Ubuntu Jammy, or something is wrong in my Docker setup, but installing singular-doc Ubuntu package results in many (most) missing files. In particular the crucial file "singular.info" is missing.

comment:49 Changed 10 months ago by Antonio Rojas

Cc: Antonio Rojas removed

comment:50 Changed 10 months ago by Dima Pasechnik

Disturbingly, while on my Jammy Docker installing singular-doc leads to missing files, installing the same package on another ("real") Ubuntu system works. So this might be Docker-specific :-(

comment:51 Changed 10 months ago by Matthias Köppe

You can use docker system prune --all to get rid of bad stuff in the cache

comment:52 Changed 10 months ago by Dima Pasechnik

cache? No, it's worse, it's dpkg -i which does not do the job.

If I take the same .deb file, unpack it using ar x and manually install data.tar.zst using tar (one might have to install zstd first, to do un-compression), *all* the files from the package get installed.

comment:53 Changed 10 months ago by Dima Pasechnik

Further inspection shows that the problem is in the official Ubuntu/Jammy Docker image. Both official Ubuntu's and Debian singular-doc_4.2.1-p3+ds-1_all.deb files exhibit the same error (apt used dpkg to install files .deb files, and the same error shows up if installation is done by dpkg -i singular-doc_4.2.1-p3+ds-1_all.deb).

Could you check it's not only my Docker that plays up here? Steps to reproduce:

  • launch official Jammy image
  • get shell prompt there
  • run
    apt install singular-doc
    dpkg -V singular-doc
    

The latter command should not output anything - but for me it outputs a log of missing files.

In Debian/Bookworm image, which carries the same singular-doc version, everything is fine.

PS. It would be good to check on a non-Docker installation of Jammy, too.

comment:54 Changed 10 months ago by Dima Pasechnik

We can go forward with this ticker (at least in Debian unstable it will be working) - but we will want a test to check that Singular docs work out of the box. On a working system

# echo "help;" | Singular | grep error

does not return anything. On a broken one, one sees

# echo "help;" | Singular | grep error
   ? No functioning help browser available.
   ? error occurred in or before STDIN line 1: `help;`

comment:55 in reply to:  45 Changed 10 months ago by Dima Pasechnik

Replying to mkoeppe:

Replying to git:

Branch pushed to git repo; I updated commit sha1. New commits:

cb82ed0make singular.hlp known to Sage for Debian Singular

I don't think we should have this in our code

indeed, I'll remove it.

comment:56 Changed 10 months ago by gh-dkwo

Cc: gh-dkwo removed

comment:57 Changed 10 months ago by git

Commit: cb82ed03d722e8e1e1a8fb6e8a0320c28f8a3ea745f1b198b3e5ff000ef9627bfb89a71b4522eda2

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

45f1b19make sure Singular help works

comment:58 Changed 10 months ago by Dima Pasechnik

Status: needs_infoneeds_review

this should pick up system Singular on Debian/bookworm and sid. (and reject broken one on Jammy)

comment:59 Changed 10 months ago by Dima Pasechnik

By the way, I see the same Jammy failure with singular-doc in Podman running on Fedora, as I see with Docker on macOS. So it really points at a faulty image. Or it's fault in OS itself, for this one needs a non-Docker/Podman test.

Last edited 10 months ago by Dima Pasechnik (previous) (diff)

comment:60 Changed 10 months ago by Dima Pasechnik

Report Upstream: Reported upstream. Developers acknowledge bug.Reported upstream. No feedback yet.

Everything is fine in Jammy run in an lxc container, so that's really Docker/Podman. I filed https://github.com/tianon/docker-brew-ubuntu-core/issues/230

Last edited 10 months ago by Dima Pasechnik (previous) (diff)

comment:61 Changed 10 months ago by Dima Pasechnik

I'm told it's Jammy Ubuntu feature, not a bug, here: https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/1960749

comment:62 Changed 10 months ago by Matthias Köppe

Bizarre, so this means we need to add a test for the availability of the info file to spkg-configure.m4.

comment:63 Changed 10 months ago by Matthias Köppe

Oh, I see you already did this in 45f1b19

comment:65 Changed 10 months ago by Matthias Köppe

We can certainly add this step to build/bin/write-dockerfile.sh for Debian/Ubuntu?

comment:66 Changed 10 months ago by Matthias Köppe

Using their unminimize command, I see

Reinstalling packages with system documentation in /usr/share/doc/ ..
dpkg-query: error: --search needs at least one file name pattern argument

Use --help for help about querying packages.

Clearly commercial-grade work there

comment:67 Changed 10 months ago by Matthias Köppe

Branch: u/dimpase/packages/singular/libpath_fixu/mkoeppe/packages/singular/libpath_fix

comment:68 in reply to:  67 Changed 10 months ago by Dima Pasechnik

Commit: 45f1b198b3e5ff000ef9627bfb89a71b4522eda2c0ceaf51d8ee6c7a55e60f6f9db2c92ca01245a2

It might be quicker just to remove the exclude policy - this won't trigger reinstallation of all the packages already there.


New commits:

c0ceaf5build/bin/write-dockerfile.sh: Use unminimize

comment:69 Changed 10 months ago by Matthias Köppe

Fine with me, go ahead

comment:70 in reply to:  69 Changed 10 months ago by Dima Pasechnik

Replying to mkoeppe:

Fine with me, go ahead

Your branch is actually good (I was worried that images will get much bigger, but I haven't noticed this at all). What worries me is what happens if unminimize is not even present, wouldn't it trigger an error?

comment:71 Changed 10 months ago by Dima Pasechnik

OK, it's ignored if missing. No problem then. I actually tested this branch in a Ubuntu Jammy Docker, all good (with system Singular).

Last edited 10 months ago by Dima Pasechnik (previous) (diff)

comment:72 in reply to:  66 Changed 10 months ago by Dima Pasechnik

Replying to mkoeppe:

Clearly commercial-grade work there

I heard stories from a long-term Canonical insider, such as : "Boss: We're closing down project X, you're fired. Programmer: But, but, I'm also doing projects Y, Z, ...?! Boss: Uhm, OK. You can stay then."

comment:73 Changed 10 months ago by Matthias Köppe

Reviewers: Matthias Koeppe
Status: needs_reviewpositive_review

comment:74 Changed 10 months ago by Dima Pasechnik

Thanks!

comment:75 Changed 9 months ago by Volker Braun

Branch: u/mkoeppe/packages/singular/libpath_fixc0ceaf51d8ee6c7a55e60f6f9db2c92ca01245a2
Resolution: fixed
Status: positive_reviewclosed
Note: See TracTickets for help on using tickets.