#29710 closed defect (invalid)

Update mac app installation instructions

Reported by: mkoeppe Owned by:
Priority: critical Milestone: sage-duplicate/invalid/wontfix
Component: documentation Keywords:
Cc: kcrisman, vdelecroix, chapoton, slelievre, gh-rana-aerea, dimpase, vbraun Merged in:
Authors: Reviewers: Dima Pasechnik
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: #30867 Stopgaps:

Status badges

Description (last modified by mkoeppe)

Apparently mac app installation instructions need updating (https://groups.google.com/d/msg/sage-devel/KuZXlKFHofI/WBlq9_yhAgAJ)

This should be done in:

  • the installation manual: src/doc/en/installation/
  • src/mac-app/sage-README-macOS.txt (see #25995)

There is also http://files.sagemath.org/osx/README.txt, which appears to be outdated, and https://github.com/sagemath/website/blob/master/src/download-mac.html

Version-specific troubleshooting instructions for already-released versions such as 9.0 can be added instead to https://wiki.sagemath.org/ReleaseTours/sage-9.0

Previous tickets:

  • #29371 little tweak in mac-app

Change History (31)

comment:1 Changed 17 months ago by mkoeppe

  • Description modified (diff)

comment:2 Changed 17 months ago by mkoeppe

  • Description modified (diff)

comment:3 Changed 17 months ago by mkoeppe

  • Description modified (diff)

comment:4 Changed 17 months ago by mkoeppe

  • Description modified (diff)

comment:5 Changed 17 months ago by kcrisman

Just for clarification, this ticket is about anything needed for the app. Separately we should have instructions relevant to Catalina for ordinary binaries, possibly updated on a relevant Wiki page, as mentioned in the description.

comment:6 Changed 17 months ago by mkoeppe

  • Milestone changed from sage-9.1 to sage-9.2

comment:7 Changed 14 months ago by mkoeppe

  • Priority changed from major to critical

See also: #30099 - remove traces of sws docs from macOS Sage app

comment:8 Changed 14 months ago by mkoeppe

Is someone able to take care of this?

comment:9 Changed 14 months ago by slelievre

On a related note, this Ask Sage question

reports an outdated README file on the download section of the Sage website.

comment:10 Changed 12 months ago by mkoeppe

  • Cc dimpase added

Can we just retire the mac app completely? It seems it is only causing trouble.

comment:11 Changed 12 months ago by dimpase

  • Cc vbraun added

this version of mac app must be retired, sure.

comment:12 Changed 12 months ago by dimpase

Volker, could you at the very least drop sage app from the list of binaries you are building for the releases?

comment:13 Changed 12 months ago by kcrisman

I'm still kind of baffled by why we can't just cut and paste a documentation upgrade as suggested in the description of this ticket. I've had something waiting for approval on the website GH page for months now. I haven't heard anyone say the Mac app doesn't work at all (maybe they have, I just haven't seen those posts).

comment:14 Changed 12 months ago by dimpase

building does not work as advertices in mac-app readme:

% make
mkdir -p sage-9.2.rc3-OSX_10.15.7_x86_64
xcodebuild -target Sage -configuration Debug \
	    ARCHS=x86_64 \
	    ONLY_ACTIVE_ARCH=NO \
	    SDKROOT=
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
make: *** [sage-9.2.rc3-OSX_10.15.7_x86_64/SageMath-9.2.rc3.app] Error 1
Version 0, edited 12 months ago by dimpase (next)

comment:15 Changed 12 months ago by kcrisman

Actually, that makes sense. We could add something that says "In order to separately build the Mac app, you may need to install Xcode itself, not just command line tools, or update said tools. The command xcode-select --install often works; sometimes you may need to uninstall previous installs with sudo rm -rf /Library/Developer/CommandLineTools. Finally, going to https://developer.apple.com/download and installing them separately may also work, though this requires an Apple ID."

Are you able to build the Mac app via binary-pkg, though?

comment:16 Changed 12 months ago by dimpase

I am checking the building now. It is very slow, as it seems that xcode has to "bless" a lot of files...

comment:17 Changed 12 months ago by dimpase

the whole app thing is a kludge right now. I think we need to create a codesigned app that is to be installed in /Applications. As it's not codesigned, running it is very, very slow.

comment:18 follow-up: Changed 12 months ago by kcrisman

Yeah, that is probably something much harder to fix than this ticket doc upgrades. What would even be involved in making an "official" Mac app? Surely more overhead than Sage developers have to offer.

comment:19 in reply to: ↑ 18 Changed 12 months ago by dimpase

Replying to kcrisman:

Yeah, that is probably something much harder to fix than this ticket doc upgrades. What would even be involved in making an "official" Mac app? Surely more overhead than Sage developers have to offer.

First things first, we should ship the commandline Sage installable into /Applications, see https://github.com/sagemath/binary-pkg/issues/26 (or, perhaps, investigate the macOS-specific way to build a relocateable terminal application)

with this, it should be possible to build a codesigned app that uses this location.

At the moment, several parts of the Sage app don't work any more, e.g. one cannot launch a terminal session from Sage app, as one gets

Running command: /Users/dima/sage/sage
2020-10-23 10:24:16.913842+0100 Sage[27682:2147028] terminalRun: Error running Applescript: {
    NSAppleScriptErrorAppName = "System Events";
    NSAppleScriptErrorBriefMessage = "Not authorized to send Apple events to System Events.";
    NSAppleScriptErrorMessage = "Not authorized to send Apple events to System Events.";
    NSAppleScriptErrorNumber = "-1743";
    NSAppleScriptErrorRange = "NSRange: {86, 10}";

yes, I loaded Sage app into XCode 12 to dig this up.

Loading into XCode was not uneventful, there were a number of (legacy) errors, all of them fortunately automatically corrected, and there was also necessary to modify PATH to include $SAGE_ROOT.

comment:20 Changed 12 months ago by kcrisman

Thanks for looking into this. I don't have access to a recent enough Mac for some of these problems. I will be trying binary-pkg on the next full release of Sage and seeing what happens, of course.

Here is a different question; what happens if you download a version of the app built for (say) 9.1 on a previous Mac OS version? Do the same errors occur, or is it Catalina+ specific?

comment:21 Changed 12 months ago by dimpase

I can tell you what happens with our 9.1 app for 10.15.4 on 10.15.7 - it refuses to open, with the message "...cannot be opened because the developer cannot be verified".

I guess only a drastic disabling of the security would allow this to run (if this is at all possible, I don't know), as the default options are either to

  • only allow apps from Apple Store, or
  • only allow apps either from the Store or from verified Apple Developers.

comment:22 Changed 12 months ago by kcrisman

I believe some of the instructions linked to here (and on the PR I have to the website) should address that.

comment:23 Changed 12 months ago by dimpase

I am not sure whether on a managed machine executing these sort of security disabling things is feasible. E.g. I have a department owned machine with an antivirus installed - which I cannot disable. I don't want to brick the machine for rhe 2nd time in a short period.

comment:24 Changed 12 months ago by kcrisman

Yup, understood - I'm not suggesting you personally try them necessarily, just that updating the instructions will be helpful.

comment:25 follow-ups: Changed 12 months ago by dimpase

No, my point is that the app is just too low quality now to be distributed. No amount of instructions is going to help it as it stands.

comment:26 Changed 12 months ago by mkoeppe

  • Milestone changed from sage-9.2 to sage-9.3

comment:27 in reply to: ↑ 25 Changed 11 months ago by mkoeppe

Replying to dimpase:

No, my point is that the app is just too low quality now to be distributed. No amount of instructions is going to help it as it stands.

I have opened #30867 to remove it.

comment:28 Changed 11 months ago by mkoeppe

  • Dependencies set to #30867
  • Milestone changed from sage-9.3 to sage-duplicate/invalid/wontfix
  • Status changed from new to needs_review

comment:29 Changed 11 months ago by dimpase

  • Reviewers set to Dima Pasechnik
  • Status changed from needs_review to positive_review

comment:30 in reply to: ↑ 25 Changed 11 months ago by kcrisman

No, my point is that the app is just too low quality now to be distributed. No amount of instructions is going to help it as it stands.

I sincerely doubt this is true but do not have time or expertise on this codebase to effectively object.

comment:31 Changed 11 months ago by chapoton

  • Resolution set to invalid
  • Status changed from positive_review to closed

mac app has been removed

Note: See TracTickets for help on using tickets.