Github messages for voidlinux
 help / color / mirror / Atom feed
From: tornaria <tornaria@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [RFC] maxima: add a subpkg maxima-ecl needed for sagemath
Date: Sat, 11 Dec 2021 19:56:40 +0100	[thread overview]
Message-ID: <20211211185640.6JrVdK1oCCQQsli3MIdgy0Q7-i022gs0GpiQT96mFLQ@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-34273@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1843 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/34273#issuecomment-991748622

Comment:
In the old version there was an executable `maxima` and a library `maxima.fas` which where almost copies of each other.

In the new version I moved the common code to a shared library. The new package `maxima-ecl` contains:
 - `/usr/lib/maxima/5.45.1/binary-ecl/libmaxima-ecl.so`: shared library (13M)
 - `/usr/lib/maxima/5.45.1/binary-ecl/maxima`: binary for maxima -l ecl (20K)
 - `/usr/lib/maxima/5.45.1/binary-ecl/maxima.fas`: fasl for `(require 'maxima)` in ecl (20K)
 - `/usr/lib/ecl-21.2.1/maxima-fas` symlink to `maxima.fas` where ecl can find it

The way this is acomplished is placing all binaries (shared lib, executable, and fasl) in the same directory; the last two have `rpath=$ORIGIN` so they find the shared. An alternative is to place the shared library in `/usr/lib` to avoid the need for rpath.

Note that this change does _not_ affect current users of `maxima` pkg. All that changes is adding these four new files in a separate package `maxima-ecl`. Even installing this package doesn't affect current users of maxima since just running `maxima` in the cmdline will use the SBCL version by default. Only when doing `maxima -l ecl` will the ecl version be run. Alternatively, running ecl and doing `(require 'maxima)` loads maxima into ecl.

Given that the pkg `maxima-ecl` is just 10% size of the pkg `maxima`, it's also possible to just include those four files in the main pkg. That wouldn't be a problem and the only cost is this 10% extra space for users of `maxima` not interested in the ecl version of maxima.

This works well with sagemath and it would be really nice to have it available on the system, since maxima doesn't change as often as sagemath itself.

  parent reply	other threads:[~2021-12-11 18:56 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-27 23:25 [PR PATCH] " tornaria
2021-11-28 12:51 ` tornaria
2021-11-28 13:01 ` tornaria
2021-11-28 20:28 ` dkwo
2021-12-01 21:24 ` knusbaum
2021-12-01 23:02 ` tornaria
2021-12-11 18:38 ` [PR PATCH] [Updated] " tornaria
2021-12-11 18:56 ` tornaria [this message]
2021-12-13 13:09 ` tornaria
2021-12-21 13:08 ` tornaria
2021-12-21 13:19 ` [PR PATCH] [Merged]: " leahneukirchen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211211185640.6JrVdK1oCCQQsli3MIdgy0Q7-i022gs0GpiQT96mFLQ@z \
    --to=tornaria@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).