[Slackbuilds-users] gave up Mathics SlackBuild (was updating Mathics?)

David Chmelik davidnchmelik at gmail.com
Thu Jul 17 04:27:31 UTC 2025


On 1/7/25 8:13 PM, Jeremy Hansen wrote:
> On Tue, Jan 7, 2025 at 4:42 PM <dchmelik at gmail.com 
> <mailto:dchmelik at gmail.com>> wrote:
>
>     On 1/7/25 9:46 AM, Willy Sudiarto Raharjo wrote:
>     >> I want to update mathics, which now consists of mathics-core,
>     >> mathics- django, mathics-scanner, or mathics-omnibus, and
>     others.  I
>     >> checked what I needed while building,and my SlackBuilds (mentioned
>     >> last year are on my website) made packages: determined the set
>     needs
>     >> click, mathics- django, mathics_scanner, python3-mpmath,
>     >> python3-numpy, python3-scipy, python3-sympy, but I don't know what
>     >> goes to what, so I asked mathics' slack chat months ago.  They
>     never
>     >> answered.  I asked their github.  Instead they talked about
>     finding
>     >> python package dependencies in general, such as with pipdeptree,
>     >> which instead lists llvmite, mathics_scanner, mpmath, numpy,
>     >> palettable, pillow, pint, python- dateutil, requests, setuptools,
>     >> sympy (mathics-django is for command- line but might not be needed
>     >> for world wide web interface also for localhost, but I'm unsure).
>     >>          Then they proceeded to say 'standard' dependencies on
>     >> Slackware 14--from 13 years ago--are old!
>     >>          That's without getting to details whether mathics-create-
>     >> database script Urchlay wrote is still needed (maybe not).
>     >>          At this point, I give up: anyone can take over mathics.
>     >> However, if no one does, I'll try to continue.  I just haven't
>     known
>     >> what to do since Mathics 4 (by/after which it doesn't work
>     right) and
>     >> now despite it's called Mathics3, it's mathics 7. It's a 'mess of
>     >> python dependencies' the programmers apparently aren't
>     >> following/using strictly UNIX-like OS, so I'm stuck.  I won't
>     be able
>     >> to submit the new updates (though they work) without finding
>     out what
>     >> the dependencies really are.
>     >>          Maybe WolframEngine is easier (just haven't been able to
>     >> install).
>     >
>     > Start with the core package first
>     > https://github.com/mathics/Mathics/blob/master/setup.py
>     <https://github.com/mathics/Mathics/blob/master/setup.py>
>     >
>     https://github.com/mathics/Mathics/blob/master/requirements-full.txt
>     <https://github.com/mathics/Mathics/blob/master/requirements-full.txt>
>     As said (and in aforementioned SlackBuilds) it's Mathics3 now:
>     http://github.com/Mathics3/mathics-core
>     <http://github.com/Mathics3/mathics-core> , so no longer that
>     simple; I
>     stated last October it no longer uses setup.py.
>
>
> It's really just a matter of going through the dependencies listed in 
> the now pyproject.toml, try building, and see if it complains. Once 
> all the complaints are resolved and it builds, install it, and use 
> `pip check` to see what else is missing that it's asking for. Install 
> those, and then try running the program to see if it complains again. 
> Then just make sure the dependencies are documented in the .info file.
>
> I had some free time this evening, so I tried my hand at this. I 
> created a SlackBuild for mathics-core (using my SlackBuild generator 
> script 
> <https://github.com/bassmadrigal/scripts/blob/master/sbgen.sh> -- 
> *shameless plug*). After running that, I removed the setup.py entries 
> (from the template) and ran the script. It complained about setuptools 
> being too old and missing mathics-scanner. So I added a dependency to 
> mathics-scanner and python3-setuptools-opt and added the command in 
> the script to update the python path for the newer setuptools.
>
> Then I created a script for mathics-scanner using the same slackbuild 
> generator script and went through the same process as I 
> previously did. Once mathics-scanner compiled, I went back to 
> mathics-core and went through that process futher.
>
> Ultimately, I found that mathics-core requires a few packages not on 
> SBo yet (palettable, pint, & pympler, which I've listed with "@" 
> around them in the mathics-core.info <http://mathics-core.info>) and 
> it complained about an outdated pillow version. For testing, I 
> installed them using pip (in an otherwise clean environment that I can 
> reset easily to not have python modules installed via pip in normal 
> operation), and was able to finally start up mathics without error. 
> However, I know absolutely nothing about mathics and don't know what 
> to run to check if it's working properly. I have no idea if having an 
> outdated version of pillow (stock 15.0 package) will cause any issues 
> with output, so that would certainly need to be tested further.
>
> I made a zip file of these two SlackBuilds and attached it (if it 
> isn't blocked) and put it on my server 
> <http://bassmadrigal.duckdns.org/mathics.tar.gz> (for at least a few 
> weeks until I go through and purge unneeded files in there) if you're 
> interested in creating SlackBuilds for pint and palettable and can 
> otherwise test if mathics works once those dependencies are met. I 
> won't be willing to maintain these SlackBuilds since I don't use 
> mathics and wouldn't know how to test it, so feel free to take over if 
> you (or someone else) is interested in continuing it. [...]
Thanks, Jeremy! If you still have them, I would try them, but no 
guarantee I can finish this, because different techniques get different 
dependency lists, and Mathics people just say use Ubuntu to get 
dependency list for Slackware, which I don't think I'm going to do.  We 
need to find the correct technique to get the list for Slackware and 
separate required and optional ones... which I'm still unsure how to 
do.  Is it acceptable to SlackBuild with pip--maybe the Python ones have 
been updated to guide one with that?

On 7/15/25 11:04 AM, Tonus via SlackBuilds-users wrote:
> Le 15 juillet 2025 14:48:47 GMT+02:00, David Chmelik <dchmelik at gmail.com> a écrit:
>> I said before not in subject line: I give up Mathics SlackBuild: has several (undocumented) Python dependencies they don't want to document (saying like use pip on Ubuntu or something there to manually get dependency list) let alone instruct to install old way still theoretically works.  After reading/discussion seems doable with fair bit of work... maybe a few hours/days after learning more.  Thing is, I've never really been a Python fan, so sounds easier to install gratis Mathematica on rpd or ARM to use with remote X Window System or some other remote access (with one of several/few SlackBuilds here for that).  If anyone actually uses Mathics and wants it updated but no one's interested, I can try more later, but more interested either changing Moria SlackBuild to colour Moria or adding unless anyone gets to it first, and testing LuckyCyborgs KDE6 to update KuickShow.
> [...] For the record, I would try a script like that on a virtual machine with full basic Slackware64-15.0
>
> #!/bin/sh
>
> PACKAGE=$1
> pip install $PACKAGE --dry-run --ignore-installed  - d /tmp \
> | grep Collecting \
> | cut -d' ' -f2 \
> | sed -E 's/([><=!]=|[><]).*//g'
>
> Have to try it anyway... [...]
Yes, because '--dry-run' seem to not exist.


More information about the SlackBuilds-users mailing list