rtoy / maxima

A Clone of Maxima's repo
Other
0 stars 0 forks source link

macOS launch script fails when default shell is TCSH #3187

Open rtoy opened 1 month ago

rtoy commented 1 month ago

Imported from SourceForge on 2024-07-07 15:55:29 Created by ljedwards on 2019-01-08 22:27:54 Original: https://sourceforge.net/p/maxima/bugs/3516


Hello,

This bug report is for Maxima 5.42.1 running under macOS 10.13.6 (full build info below).

When a user's default shell is tcsh the main.scpt launch script fails due to execution of bash/sh commands.

I've found two possible solutions: 1) pipe the commands to bash, or 2) use the "do shell script" command (which always uses bash) instead of opening a terminal and using "do script" as is currently done.

Text versions of the script for both solutions are attached.

-Larry

wxMaxima version: 18.10.1 using wxWidgets version: wxWidgets 3.1.1 Maxima version: 5.42.1 Maxima build date: 2018-10-18 19:07:57 Host type: x86_64-apple-darwin13.4.0 System type: Darwin 17.7.0 X86-64 Lisp implementation type: SBCL Lisp implementation version: 1.4.12

Attachments:

rtoy commented 1 month ago

Imported from SourceForge on 2024-07-07 15:55:30 Created by robert_dodier on 2019-01-21 07:08:54 Original: https://sourceforge.net/p/maxima/bugs/3516/#2fbc


rtoy commented 1 month ago

Imported from SourceForge on 2024-07-07 15:55:33 Created by robert_dodier on 2019-01-21 07:08:55 Original: https://sourceforge.net/p/maxima/bugs/3516/#de27


Larry, thanks for working on this problem. What are the commands which cause trouble for tcsh? I think some effort has been made to avoid bash-specific commands and use only sh commands. Perhaps it's possible to modify things so that tcsh is accommodated too.

rtoy commented 1 month ago

Imported from SourceForge on 2024-07-07 15:55:37 Created by ljedwards on 2019-01-22 02:20:53 Original: https://sourceforge.net/p/maxima/bugs/3516/#67fa


Hi Robert,

I replied to your coment in email (I'm on the maxima bugs mailing list), I'm new to this so not sure if my reply will show up here. In case, it doesn't I've included it below. Apologies if this is redundant.

The bash command set is a superset of the sh command set, and I believe it is backwards compatible with sh. Tcsh doesn't use the same syntax or keywords as bash or sh (it is a superset of csh, the other early Unix shell). Below are equivalent bash and tcsh commands.

bash/sh:

bar="hello" export foo="there"

tcsh/csh:

set bar = "hello" setenv foo "there"

Both of the AppleScript scripts I attached in my bug report should work no matter what the user's default shell is (although I've only tested with tcsh), and are fairly minimal modifications of the original AppleScript scripts.

Personally I'd choose the version that doesn't briefly open a Terminal window, but there may have been reasons for opening a Terminal window which I am unaware of (debugging?).

Cheers,

-Larry

rtoy commented 1 month ago

Imported from SourceForge on 2024-07-07 15:55:40 Created by ljedwards on 2019-01-22 02:38:10 Original: https://sourceforge.net/p/maxima/bugs/3516/#2fbc/c392


Hi Robert,

The bash command set is a superset of the sh command set, and I believe it is backwards compatible with sh. Tcsh doesn't use the same syntax or keywords as bash or sh (it is a superset of csh, the other early Unix shell). Below are equivalent bash and tcsh commands.

bash/sh:

bar="hello" export foo="there"

tcsh/csh:

set bar = "hello" setenv foo "there"

Both of the AppleScript scripts I attached in my bug report should work no matter what the user's default shell is (although I've only tested with tcsh), and are fairly minimal modifications of the original AppleScript scripts.

Personally I'd choose the version that doesn't briefly open a Terminal window, but there may have been reasons for opening a Terminal window which I am unaware of (debugging?).

Cheers,

-Larry

On Sun, Jan 20, 2019 at 11:08 PM Robert Dodier < robert_dodier@users.sourceforge.net> wrote:

  • labels: --> Mac, shell
  • Comment:

Larry, thanks for working on this problem. What are the commands which cause trouble for tcsh? I think some effort has been made to avoid bash-specific commands and use only sh commands. Perhaps it's possible to modify things so that tcsh is accommodated too.

Status: open Group: Includes_proposed_fix Labels: Mac shell Created: Tue Jan 08, 2019 10:27 PM UTC by Larry Edwards Last Updated: Tue Jan 08, 2019 10:27 PM UTC Owner: nobody Attachments:

Hello,

This bug report is for Maxima 5.42.1 running under macOS 10.13.6 (full build info below).

When a user's default shell is tcsh the main.scpt launch script fails due to execution of bash/sh commands.

I've found two possible solutions: 1) pipe the commands to bash, or 2) use the "do shell script" command (which always uses bash) instead of opening a terminal and using "do script" as is currently done.

Text versions of the script for both solutions are attached.

-Larry

wxMaxima version: 18.10.1 using wxWidgets version: wxWidgets 3.1.1 Maxima version: 5.42.1 Maxima build date: 2018-10-18 19:07:57 Host type: x86_64-apple-darwin13.4.0 System type: Darwin 17.7.0 X86-64 Lisp implementation type: SBCL Lisp implementation version: 1.4.12

Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/maxima/bugs/3516/

To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/

Attachments: