New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
If $SAGE_SUDO is set, use it whenever we do "make install" of a package. #21537
Comments
This comment has been minimized.
This comment has been minimized.
New commits:
|
Commit: |
comment:4
Practical matters:
I don't know enough of the mechanics of sage standard output on screen to know how requesting a password will affect the flow. |
comment:5
I guess I should say in the case of parallel make. In which the parallelism of make is translated into installing packages concurrently. |
comment:6
Yes, these issues need addressing in documentation and/or implementation. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:8
Replying to @kiwifb:
The problem of parallel output and prompts has been discussed before in #20884, #21082. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Author: Matthias Koeppe |
This comment has been minimized.
This comment has been minimized.
comment:14
Rebased on 7.4.beta6. |
comment:15
Somehow this makes me feel a bit icky, but I'm not -1 on it either. It's a solution for now. I feel icky because if the Sage distribution were like a "normal" autoconf package I should be able to simply run That said, it would be nice if the Sage distribution did work like On another note, for Python packages installed with pip it still might be best to have separate "build" and "install" phases--in particular for Python packages with extension modules, where one might not want to be running a compiler as root. This could be achieved by running |
comment:16
Fine with me to wait for #21441 and its |
comment:17
Replying to @embray:
Just for reference for other readers (I know that you are aware of that ticket, Erik): Any discussion of separating |
comment:18
Replying to @embray:
Right now, in this patch I am calling An "easier" solution would be to just call Thoughts?
Are you sure that Python packages with extension modules are relocatable in this way? I have no experience with the specifics of the Python distutils world, but I would imagine all kinds of trouble (rpath/sonames, possible hardcoded paths, ...)
Sure, I've made it a dependency. |
Dependencies: #21441 |
comment:19
Right, regardless of how make is invoked, if there are separate I think most packages would be easy enough to split up their |
comment:20
Replying to @mkoeppe:
In general, yes, it should not be a problem. This does not affect rpath or soname for extension modules--I mean in principle it could but that would be a pathological case the likes of which I've never seen, and that is definitely not supported. In principle one could also imagine a module that when installed generates some files containing hard-coded paths, but can't think of anything like that. Most well made Python modules are good about keeping such things relative and dynamic. So I'd be surprised if that's a problem anywhere, though if it is obviously exceptions can be made. (Update: In fact, I should add, this is how distutils builds packages normally anyways--first it builds everything to |
This comment has been minimized.
This comment has been minimized.
Work Issues: redo patch using the method of 21726 |
comment:24
This was implemented in #21726. The present ticket can be closed |
Changed author from Matthias Koeppe to none |
comment:25
Ok. |
Changed branch from u/mkoeppe/if__sage_sudo_is_set__use_it_whenever_we_do__make_install__of_a_package_ to none |
Changed commit from |
Changed work issues from redo patch using the method of 21726 to none |
Changed dependencies from #21726 to none |
Reviewer: Matthias Koeppe, Samuel Lelièvre |
That would be a solution for those who want to install Sage in a prefix that's only writable by root.
In this way, building can take place in unprivileged user account.
It could perhaps also be enabled by
./configure --enable-sudo-install
. (not on this ticket)This ticket makes routine changes to all
spkg-install
scripts. Whenever installing has more steps than justmake install
, it moves the install part to a separate scriptspkg-do-install
.*** See #21726 for a slightly different approach ***
CC: @jdemeyer @kiwifb @embray @nexttime @vbraun @mezzarobba
Component: build
Reviewer: Matthias Koeppe, Samuel Lelièvre
Issue created by migration from https://trac.sagemath.org/ticket/21537
The text was updated successfully, but these errors were encountered: