On Wed, 8 Jul 2020, 13:08 Nico Van Cleemput, <[email protected]> wrote:
> Dear list > > Due to various reasons I haven't been able to keep up to date with the > development of Sage. However, I still use Sage in my research and mainly > various of my co-authors use Sage. Our workflow often consists of me > writing some external programs (usually in C) and additional several Python > scripts which interface with these programs. When the program and scripts > are mature enough, some of these are released as supplementary material for > some papers, but usually they are too niche to be included in Sage. The way > this needs to be handled has changed several times through the years, and I > wanted to inform myself as to what the best way to handle this would be. > > It used to be that my co-authors could simply install such a package with > the command: > > sage -f my-package.spkg > > This changed about five years ago, and since then my instructions to them > read roughly as > > * copy the folder mypackage (containing ) into SAGE_ROOT/build/pkgs > * copy the file mypackage.tar.gz (containing the source code) into > SAGE_ROOT/upstream. > * run the command: $ sage --package fix-checksum mypackage > * run the command: $ sage -i mypackage > > The third step changed at version 7.3 (it used to be $ sage -sh sage-fix- > pkg-checksums) > > Nowadays, it seems that this has changed again, because I get reports that > installing the package this way hangs indefinitely. > > I mainly have two questions: > * Is there another way to handle this, or am I doing the right thing and > do I just need to keep the instructions up to date. > * Is there a clear place where this is documented? As I said I haven't > been able to keep up with Sage development recently, so each time I had to > dive into the documentation and puzzle the instructions for these kinds of > external packages together from different places in the documentation. > There is the repository https://github.com/sagemath/sage_sample which > gives a sample of how to create a package for Sage, however this is about > packaging Python code and not about binaries that need to be compiled and > made available to Sage. > pip is able to install more than just python, it basically can do arbitrary data installs. People routinely use pip to install scripts in ~/.local/bin/, say. We should add this to https://github.com/sagemath/sage_sample Unfortunately it needs hands to work on: https://github.com/sagemath/sage_sample/issues/37 Then there is pipx, a pip-installable package that could come to your rescue - something that specifically takes care of the PATH stuff. https://pipxproject.github.io/pipx/installation/ Not sure how well it plays along with Sage, though. > > Kind regards > Nico > > -- > You received this message because you are subscribed to the Google Groups > "sage-devel" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sage-devel/CADXCEk-uOqo7duHXtV5W8hP3R8OeM3O6b986b_8oQ-w0sQviWA%40mail.gmail.com > <https://groups.google.com/d/msgid/sage-devel/CADXCEk-uOqo7duHXtV5W8hP3R8OeM3O6b986b_8oQ-w0sQviWA%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CAAWYfq1v3XwT1DGUoj1BPKCopSmKWc1-9O7%2B9grYY5hO8si4Eg%40mail.gmail.com.
