Opened 13 years ago

Closed 12 years ago

Last modified 12 years ago

#3122 closed defect (fixed)

[with patch, positive review] after make install, sage tries to write in /usr/local

Reported by: zimmerma Owned by: mabshoff
Priority: blocker Milestone: sage-3.2.1
Component: relocation Keywords:
Cc: Merged in:
Authors: Reviewers:
Report Upstream: Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description

I compiled sage-3.0 on the machines of my lab, and installed it under /usr/local/sage-3.0 with make install DESTDIR=/usr/local/sage-3.0. I am the Unix owner of the files under /usr/local/sage-3.0. When I run sage myself, it is ok. However, when other people in my lab run it, they get:

< bissogae@hector:~$ sage
< ----------------------------------------------------------------------
< | SAGE Version 3.0, Release Date: 2008-04-23                         |
< | Type notebook() for the GUI, and license() for information.        |
< ----------------------------------------------------------------------
< Traceback (most recent call last):
<   File "/usr/local/sage-3.0/sage/local/bin/sage-location", line 66, in <module>
<     t, R = install_moved()
<   File "/usr/local/sage-3.0/sage/local/bin/sage-location", line 11, in install_moved
<     O = open(location_file,'w')
< IOError: [Errno 13] Permission denied: '/usr/local/sage-3.0/sage/local/lib/sage-current-location.txt'
<
< sage:

I'm not sure it is ok that SAGE writes in /usr/local...

Attachments (1)

trac_3122.patch (374 bytes) - added by mabshoff 12 years ago.
This patch is to the main makefile and is a classic patch, i.e. no hg here

Download all attachments as: .zip

Change History (10)

comment:1 Changed 13 years ago by mabshoff

  • Owner changed from cwitty to mabshoff
  • Priority changed from minor to blocker
  • Status changed from new to assigned

Hi Paul,

I am curious if you started Sage after running "make install". Starting Sage once after running the make install is needed so that the pyc files are recreated. After that Sage should not need to have write access to anything outside ~/.sage. So I consider this a blocker. We must make the deployment of Sage as simple as possible and this includes having Sage in multi user environments.

Cheers,

Michael

comment:2 Changed 12 years ago by malb

It seems the touching /usr/local is caused by the "Sage moved" script, so I assume that the best "fix" is to print a better error message?

comment:3 Changed 12 years ago by mabshoff

I agree this issue seems closely related to #1830. So fixing this issue will also likely solve that ticket.

Cheers,

Michael

comment:4 Changed 12 years ago by mabshoff

  • Milestone changed from sage-3.2.1 to sage-3.2

comment:5 Changed 12 years ago by mabshoff

  • Milestone changed from sage-3.2.2 to sage-3.2.1

Changed 12 years ago by mabshoff

This patch is to the main makefile and is a classic patch, i.e. no hg here

comment:6 Changed 12 years ago by mabshoff

  • Summary changed from after make install, sage tries to write in /usr/local to [with patch, needs review] after make install, sage tries to write in /usr/local

The hopefully final patch for 3.2.1.rc1 :)

Cheers,

Michael

comment:7 Changed 12 years ago by was

  • Summary changed from [with patch, needs review] after make install, sage tries to write in /usr/local to [with patch, positive review] after make install, sage tries to write in /usr/local

comment:8 Changed 12 years ago by mabshoff

  • Resolution set to fixed
  • Status changed from assigned to closed

Merged in Sage 3.2.1.rc1

comment:9 Changed 12 years ago by mabshoff

Looking at the problem again it seems that there might be another problem here. Several possibilities

  • other people ran sage before Paul did, hence sage-location was executed. We fixed that bug
  • somebody else has mounted the directory with sage in a different location than Paul in which case sage_location will cause the above error. There is nothing we can do in that case since the pyc files have to be recreated

Paul: If this is still a problem please let us know and open a new ticket with specific steps to reproduce and plenty of information.

Cheers,

Michael

Note: See TracTickets for help on using tickets.