I want to update SageMath rpm to version 10.2

The current sagemath rpm is a little bit old and have not support Fedora 39 yet sagemath package versions - Repology
I want to package it to version 10.2 on Fedora 39. I am using it on the $ make -j12 && make install way and it runs well.
The problems are, who desides whether I can upload my rpm? How can I upload my built rpm to Fedora noarch repo?

See Fedora Packaging Guidelines :: Fedora Docs

Alternatively, you can make your build available in a copr repo: https://copr.fedorainfracloud.org/

Did you actually see the existing Sagemath build/repo on copr? qsx42/sagemath Copr

I won’t use copr repo because the copr repo download speed is way more slower than 3rd party Fedora repo e.g. this repo can reach 200Mbps. I will pack rpm and upload to package SCM.

Maybe. don’t know what aliyun is, is it an official repo mirror server?

what is SCM?

Added package-maintainers

I mean this git SCM

Aliyun is a brand of Alibaba, it hosts a lot of mirror repos.

at least it’s not an official Fedora mirror, so I personally wouldn’t trust it.

It supports GPG key check, so you may trust its safety.

related topic: Will sagemath return to the Fedora 39 repository?

My compiled sagemath runs under Python 3.12 and I didn’t meet the promblems from that topic. Except that warning, even Windows (msys64) version has that warning but it can still call up picture viewer and generate pictures, so that’s not a problem for me at last.
I think my env is good for pack sagemath rpm.

1 Like

It sounds like you are not a Fedora packager yet. If that is the case, please start working your way through this process: Joining the Package Maintainers :: Fedora Docs. Feel free to ask questions, or ask for help if you get stuck on something.

Ok I will pack it in a few days

Since the rpm of cypari2 is retired too and it is a Python package, which means,

$ pip install cypari2

or

$ pip install cypari2-x.x.x.tar.gz

cannot be installed into /usr/lib64/python3.12/xxx, I’m not able to pass the make process.

Looks like SageMath 10.3 will support pyhton 3.12 … ReleaseTours - Sagemath Wiki … maybe … Python 3.12.x by mkoeppe Β· Pull Request #36181 Β· sagemath/sage Β· GitHub

Working on 10.3 makes more sense as the experts are heavily involved and will help with problems,
while for 10.2 you have less active support.

Part of packaging sagemath is making sure the required packages are available. If you are going to maintain sagemath, you should plan to take over cypari2. For testing, you can install cypari2 locally using a conda environment:

% conda activate
(base) [gnw3@cerberusf39]~% pip install cypari2 
Defaulting to user installation because normal site-packages is not writeable
Collecting cypari2
  Downloading cypari2-2.1.4.tar.gz (127 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 127.0/127.0 kB 1.7 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: cysignals>=1.7 in /usr/lib64/python3.12/site-packages (from cypari2) (1.11.2)
Requirement already satisfied: Cython>=0.28 in /usr/lib64/python3.12/site-packages (from cysignals>=1.7->cypari2) (3.0.6)
Building wheels for collected packages: cypari2
  Building wheel for cypari2 (pyproject.toml) ... done
  Created wheel for cypari2: filename=cypari2-2.1.4-cp312-cp312-linux_x86_64.whl size=2929335 sha256=062d887d24e7cde4a8f35e02560d783a14d3e2eba85b2fad6cabbe0a43f6b1d9
  Stored in directory: /home/gnw3/.cache/pip/wheels/02/12/c5/67c2d9bbd424de8abba5815bba3f66dfba0bfee9003a94cca0
Successfully built cypari2
Installing collected packages: cypari2
Successfully installed cypari2-2.1.4

I recommend getting sagemath 10.3 working in a conda env first, then move to packaging as rpm’s any missing required packages and finally, sagemath.

1 Like