Hi,

70924 is merged

Figuring out which patches from V3 56729 may be easy pass forward

Thanks,
Oleg


On Wed, 10 Jul 2024, 00:55 Vinicius Monego, <monego@posteo.net> wrote:
Hi Ada,

Em ter, 2024-07-09 às 07:27 +0000, Ada Stevenson escreveu:
> Hi Vinicus,
>
> On 01/06/2024 6:43 am, Vinicius Monego wrote:
> > Em qua, 2024-05-22 às 09:19 +0000, Ada Stevenson escreveu:
> > > Hi Guix, science team!
> > >
> > > I was reaching for SageMath today and couldn't find it in the
> > > package
> > > repository. I notice there's a sagemath.scm file, but no actual
> > > SageMath
> > > package proper. Is there any work being done on packaging it at
> > > the
> > > moment? Are there any particular blockers preventing its
> > > packaging
> > > (excessive dependencies, difficult build etc.)?
> > >
> > > Having SageMath in Guix would be really handy for me, so I'm
> > > happy to
> > > give packaging it a go if the only reason is that there's not
> > > enough
> > > interest (I will just have to wait until after exams, so in about
> > > 3-4
> > > weeks).
> > >
> > > Hope you are all doing well!
> > >
> > > Warmly,
> > > Ada
> > >
> >
> > Hi Ada,
> >
> > SageMath has a lot of dependencies which you can see on
> > https://doc.sagemath.org/html/en/reference/spkg/
> >
> > These are my current notes (I'm not sure how to organize them
> > online):
>
> Thank you! This is a great resource. Sorry for not responding
> earlier, I
> was in the midst of exams. I just want to check if this is still up
> to
> date, as far as you know. I want to start helping out with this
> effort.
>

Yes, it is up to date.

I am still waiting for the python-team branch to be merged because it
also introduces dependencies for jupyterlab, which I am interested in
packaging. Issue 70924 could be merged already, if anyone wants to
review, and then I merge it in the weekend.

> >
> > Standard packages:
> >
> > + Available in the python-team branch (not yet merged):
> >
> > - fqdn (python-team)
> > - isoduration (python-team)
> > - jupyter-events (python-team)
> > - jupyter-server-terminals (python-team)
> > - notebook-shim (python-team)
> > - overrides (python-team)
> > - referencing (python-team)
> > - rfc3986-validator (python-team)
> > - uri-template (python-team)
> >
> > + Series 1 (submitted as issue 70924):
> >
> > - async-lru (review)
> > - calver (review)
> > - memory-allocator (review)
> > - pplpy (review)
> > - primecount (review)
> > - primecountpy (review)
> > - pyproject-api (review)
> > - types-python-dateutils (review)
> >
> > + Series 2 (currently working on, not yet submitted):
>
> How are you going with this series? Is there anything I can help
> with?
>

I think the best approach right now is to update the packages from
issue 56729. Some of these have been submitted there but are out of
date, and some others I updated in 70924. I'll help reviewing your
submission. Also, I didn't go any further on the list since my last
message.

> >
> > - gfan (NEXT)
> > - gnumake-tokenpool (v0.0.7+ needs Python 3.11+)
> > - jupyter-lsp (needs updated jupyter-core)
> > - palp http://hep.itp.tuwien.ac.at/~kreuzer/CY/CYpalp.html (NEXT)
> > - pytz-deprecation-shim (OK but temporary usage only)
> > - sympow
> > - tachyon: http://jedi.ks.uiuc.edu/~johns/raytracer/files/
> >   
> > + Remaining standard packages:
> >
>
> I'll give these a go.
>

Sounds good.

> > - combinatorial-designs
> > - comm
> > - conway-polynomials
> > - elliptic-curves
> > - graphs
> > - jmol
> > - jsonschema-specifications
> > - jupyter-jsmol
> > - jupyterlab
> > - jupyterlab-mathjax2
> > - pari-galdata
> > - pari-seadata-small
> > - polytopes-db
> > - pplpy-doc
> > - sage-conf
> > - sage-docbuild
> > - sage-setup
> > - sagenb-export
> > - sagetex
> > - sphinx-inline-tabs
> > - threejs
> >
> > Optional packages:
>
> Wow, that is a lot!
> >
> > - admcycles
> > - benzene
> > - buckygen
> > - coxeter3
> > - csdp
> > - cunningham-tables
> > - cylp
> > - d3js
> > - database-cremona-ellcurve
> > - database-cubic-hecke
> > - database-jones-numfield
> > - database-knotinfo
> > - database-kohel
> > - database-mutation-class
> > - database-stein-watkins
> > - database-stein-watkins-mini
> > - database-symbolic-data
> > - dsdp
> > - e-antic
> > - frobby
> > - gap-jupyter
> > - gap-packages
> > - github-cli
> > - glucose [looks easy]
> > - jupymake
> > - kenzo
> > - latte-int
> > - libsemigroups [looks easy]
> > - lidia
> > - mathics
> > - mathics-scanner
> > - matroid-database
> > - mcqd
> > - meataxe
> > - msolve
> > - nibabel [looks easy]
> > - normaliz [looks easy]
> > - notedown
> > - onetbb
> > - ore-algebra
> > - p-group-cohomology
> > - pandoc-attributes
> > - papilo
> > - pari-elldata
> > - pari-galpol
> > - pari-nftables
> > - pari-seadata
> > - perl-cpan-polymake-prereq
> > - perl-mongodb
> > - phitigra
> > - plantri [looks easy]
> > - polymake [looks easy]
> > - polytopes-db-4d
> > - pycryptosat [looks easy]
> > - pynormaliz [looks easy]
> > - pyppeteer
> > - pyscipopt
> > - pysingular
> > - pyx [looks easy]
> > - qepcad
> > - rst2ipynb
> > - rubiks
> > - saclib
> > - sage-flatsurf
> > - sage-numerical-backends-coin
> > - sage-numerical-backends-cplex
> > - sage-numerical-backends-gurobi
> > - sage-sws2rst
> > - scip
> > - scip-sdp
> > - singular-jupyter
> > - sirocco
> > - slabbe
> > - snappy
> > - soplex
> > - tides
> > - topcom
> >
> > As you can see, it's a lot of packages and dependencies, and these
> > are
> > only the missing ones. Some of them are outdated, abandoned, or too
> > recent. Some of the already packaged dependencies may be too old or
> > need patches. We need at least the standard packages. Finally, we
> > have
> > to glue them all in the sagemath package. So it's a lot of work and
> > nontrivial.
> >
> > If you'd like to help, you can choose to package one of those
> > "looks
> > easy" (but optional) packages, if you're new to Guix. Or try to
> > help
> > with the more complex, yet more important, standard packages. You
> > can
> > see the source link to every dependency in that sagemath packages
> > link.
> > Issue 56729 is a good starting point.
>
> Thanks! I'll start with issue 56729, and hopefully bring it up to
> speed.
>

Have fun :)

> >
> > The blockers are all of those you listed: excessive dependencies,
> > difficult building and lack of interest.
> >
> > Vinicius
>
> Warmly,
> Ada

Vinicius