default   Racket Bugs
Main PageQuick QueryStandard QueryAdvanced QueryHelp
Log in

View Problem Report: 13356

send email to interested parties or send email followup to audit-trail
Reporter's email: p dot giarrusso at gmail dot com
Number: 13356
Category: all
Synopsis: Installation on Mac OS X is not documented and doesn't provide access to command-line tools
Class: doc-bug
Responsible: mflatt
Notify-List:
Severity: non-critical
Priority: medium
State: closed
Confidential: no
Arrival-Date: Sun Dec 09 17:04:01 -0500 2012
Closed-Date: Fri Jan 04 11:02:53 -0500 2013
Last-Modified: Fri Jan 04 11:02:53 -0500 2013
Originator: Paolo G. Giarrusso
Organization: plt
Submitter-Id: unknown
Release: 5.3.1
Environment: macosx "Darwin revolutionary.local 12.2.0 Darwin Kernel Version 12.2.0: Sat Aug 25 00:48:52 PDT 2012; root:xnu-2050.18.24~1/RELEASE_X86_64 x86_64" (x86_64-macosx/3m) (get-display-depth) = 32
Human Language: english
(current-memory-use) 409202784
Links: (links) = (); (links #:user? #f) = (); (links #:root? #t) = (); (links #:user? #f #:root? #t) = ()


Collections:
("/Users/pgiarrusso/Library/Racket/5.3.1/collects"
(non-existent-path))
("/Applications/Racket v5.3.1/collects"
(".DS_Store" "2htdp" "algol60" "at-exp" "browser" "compatibility" "compiler" "config" "data" "datalog" "db" "defaults" "deinprogramm" "drracket" "drscheme" "dynext" "embedded-gui" "eopl" "errortrace" "ffi" "file" "framework" "frtime" "future-visualizer" "games" "graphics" "gui-debugger" "help" "hierlist" "htdp" "html" "icons" "images" "info-domain" "json" "lang" "launcher" "lazy" "macro-debugger" "make" "mred" "mrlib" "mysterx" "mzcom" "mzlib" "mzscheme" "net" "openssl" "parser-tools" "picturing-programs" "plai" "planet" "plot" "preprocessor" "profile" "r5rs" "r6rs" "racket" "racklog" "rackunit" "raco" "reader" "readline" "redex" "rnrs" "s-exp" "scheme" "schemeunit" "scribble" "scribblings" "scriblib" "setup" "sgl" "slatex" "slideshow" "srfi" "stepper" "string-constants" "swindle" "syntax" "syntax-color" "teachpack" "test-engine" "texpict" "trace" "typed" "typed-racket" "typed-scheme" "unstable" "version" "web-server" "wxme" "xml" "xrepl"))

Computer Language: (("Determine language from source") (#(#t print mixed-fraction-e #f #t debug) (default) #() "#lang racket\n" #t #t ((main) (test))))
Description: I noticed a few glitches during Racket installation on Mac OS X. I can't say it was difficult to install for me, but various details should be improved (a StackOverflow user was similarly confused http://stackoverflow.com/q/9047257/53974). After some discussion in the #racket IRC channel , here are my comments.
0) Racket should either have an installer, or better documentation, or a DMG with a slightly better layout. But all installers I've seen on Mac OS X require admin privileges, so that might be problematic (I don't develop native Mac OS X programs, so I have no expertise on these topics).

1) Usually you can move freely applications around - with DrRacket, you can't.
2) So I'm not supposed to do just anything, I should be a good boy. But how? In a DMG, I've come to expect:
*) either an icon to drag within Applications, and a link to Applications (often with an arrow from the icon toward Application what to do, but maybe that's asking too much).
*) or the icon of an installer to run.
Instead, I find a folder containing subfolders such as bin, doc and so on. To me, this clearly spells "this doesn't belong in /Applications"!
3) The README does not explain how to perform the installation, but suggests I can run "raco docs":

Racket comes with extensive documentation: use DrRacket's `Help' menu,
or run `raco docs'.

I'm able to edit my PATH, but a README would surely tell me to do that - now I'm even more convinced that I must have missed the icon to click to do the installation.
4) The website is not extremely accurate either:
http://docs.racket-lang.org/getting-started/index.html
"On Mac OS, double click on the DrRacket icon. It may be in your Applications folder, or in the .dmg that you downloaded."
But the DrRacket is supposed to be not directly in /Applications, but in a subfolder with all the rest. If you try to follow those instructions during installation.

5) In the end, after some googling on external sites, I solved the issues by:
(a) copying the Racket folder in /Applications
(b) adding the bin folder to the PATH manually
(c) hiding subfolders such as bin from the GUI with:
$ chflags hidden /Applications/Racket\ v5.3.1/[a-z]*
(following the example of /usr, /bin and so on).
(d) renaming README to README.txt to have the right icon (the extension should probably be hidden in an ideal world).
Steps (c) and (d) could be pre-done in the DMG. Hiding files is a bit controversial - as a prerequisite for that, one should add the link to /Applications in the DMG, to reduce the likelihood that users drag individual icons into /Applications.
File Attachments:
How-To-Repeat:
Fix:
Release-Note:
Unformatted:

send email to interested parties or send email followup to audit-trail

Audit Trail:

From: Paolo Giarrusso <p.giarrusso at gmail.com>
To: bugs at racket-lang.org, bug-notification at racket-lang.org
Cc: 
Subject: Re: [racket-bug] all/13356: Installation on Mac OS X is not
 documented and doesn't provide access to command-line tools
Date: Mon, 10 Dec 2012 00:10:12 +0100

 I forgot to add a link to the logs of the IRC discussion - to find the
 relevant portion, search for pgiarrusso in this IRC log:
 http://racket-lang.org/irc-logs/20121209.txt
 
 On Sun, Dec 9, 2012 at 11:04 PM,  <bugs at racket-lang.org> wrote:
 > Thank you very much for your problem report.
 > It has the internal identification `all/13356'.
 > You can check on the status of your problem report at
 >   http://bugs.racket-lang.org/query/?cmd=view&pr=13356
 >
 > If you wish to provide further information regarding this problem
 > you can do so as a reply to this message.  (But please make sure
 > that your mailer replies to both "bugs" and "bug-notification".)
 >
 
 
 
 -- 
 Paolo G. Giarrusso - Ph.D. Student, Philipps-University Marburg
 http://www.informatik.uni-marburg.de/~pgiarrusso/
Responsible changed from "nobody" to "mflatt" by mflatt at racket-lang.org at Tue, 01 Jan 2013 17:55:59 -0500
Reason>>> A commit by mflatt at racket-lang.org was marked as relevant
  http://git.racket-lang.org/plt/commit/1f8370d2d6
From: Matthew Flatt <mflatt at cs.utah.edu>
To: p.giarrusso at gmail.com, bugs at racket-lang.org
Cc: nobody at racket-lang.org, bug-notification at racket-lang.org
Subject: Re: [racket-bug] all/13356: Installation on Mac OS X is not documented and doesn't provide access to command-line tools
Date: Tue, 1 Jan 2013 16:00:34 -0700

 Thanks very much for your detailed comments and suggestions!
 
 Although I didn't try to change the "README" file suffix to ".txt" or
 add an "Applications" folder alias to the ".dmg", I made many small
 improvements along the lines that you suggest.
 
 (I'm leaving the PR open until we can see how the changes look in the
 next nightly build.)
 
 At Sun, 9 Dec 2012 17:04:01 -0500, p.giarrusso at gmail.com wrote:
 > A new problem report is waiting at
 >   http://bugs.racket-lang.org/query/?cmd=view&pr=13356
 > 
 > Reported by Paolo G. Giarrusso for release: 5.3.1
 > 
 > *** Description:
 > I noticed a few glitches during Racket installation on Mac OS X. I can't say it 
 > was difficult to install for me, but various details should be improved (a 
 > StackOverflow user was similarly confused 
 > http://stackoverflow.com/q/9047257/53974). After some discussion in the #racket 
 > IRC channel , here are my comments.
 > 0) Racket should either have an installer, or better documentation, or a DMG 
 > with a slightly better layout. But all installers I've seen on Mac OS X require 
 > admin privileges, so that might be problematic (I don't develop native Mac OS X 
 > programs, so I have no expertise on these topics).
 > 
 > 1) Usually you can move freely applications around - with DrRacket, you can't.
 > 2) So I'm not supposed to do just anything, I should be a good boy. But how? In 
 > a DMG, I've come to expect:
 > *) either an icon to drag within Applications, and a link to Applications 
 > (often with an arrow from the icon toward Application what to do, but maybe 
 > that's asking too much).
 > *) or the icon of an installer to run.
 > Instead, I find a folder containing subfolders such as bin, doc and so on. To 
 > me, this clearly spells "this doesn't belong in /Applications"!
 > 3) The README does not explain how to perform the installation, but suggests I 
 > can run "raco docs":
 > 
 > Racket comes with extensive documentation: use DrRacket's `Help' menu,
 > or run `raco docs'.
 > 
 > I'm able to edit my PATH, but a README would surely tell me to do that - now 
 > I'm even more convinced that I must have missed the icon to click to do the 
 > installation.
 > 4) The website is not extremely accurate either:
 > http://docs.racket-lang.org/getting-started/index.html
 > "On Mac OS, double click on the DrRacket icon. It may be in your Applications 
 > folder, or in the .dmg that you downloaded."
 > But the DrRacket is supposed to be not directly in /Applications, but in a 
 > subfolder with all the rest. If you try to follow those instructions during 
 > installation.
 > 
 > 5) In the end, after some googling on external sites, I solved the issues by:
 > (a) copying the Racket folder in /Applications
 > (b) adding the bin folder to the PATH manually
 > (c) hiding subfolders such as bin from the GUI with:
 > $ chflags hidden /Applications/Racket\ v5.3.1/[a-z]*
 > (following the example of /usr, /bin and so on).
 > (d) renaming README to README.txt to have the right icon (the extension should 
 > probably be hidden in an ideal world).
 > Steps (c) and (d) could be pre-done in the DMG. Hiding files is a bit 
 > controversial - as a prerequisite for that, one should add the link to 
 > /Applications in the DMG, to reduce the likelihood that users drag individual 
 > icons into /Applications.
 > 
 > *** How to repeat:
 > 
 > 
 > *** Environment:
 > macosx "Darwin revolutionary.local 12.2.0 Darwin Kernel Version 12.2.0: Sat Aug 
 > 25 00:48:52 PDT 2012; root:xnu-2050.18.24~1/RELEASE_X86_64 x86_64" 
 > (x86_64-macosx/3m) (get-display-depth) = 32
 > Human Language: english
 > (current-memory-use) 409202784
 > Links: (links) = (); (links #:user? #f) = (); (links #:root? #t) = (); (links 
 > #:user? #f #:root? #t) = ()
 > 
 > 
 > Collections:
 > ("/Users/pgiarrusso/Library/Racket/5.3.1/collects"
 >  (non-existent-path))
 > ("/Applications/Racket v5.3.1/collects"
 >  (".DS_Store" "2htdp" "algol60" "at-exp" "browser" "compatibility" "compiler" 
 > "config" "data" "datalog" "db" "defaults" "deinprogramm" "drracket" "drscheme" 
 > "dynext" "embedded-gui" "eopl" "errortrace" "ffi" "file" "framework" "frtime" 
 > "future-visualizer" "games" "graphics" "gui-debugger" "help" "hierlist" "htdp" 
 > "html" "icons" "images" "info-domain" "json" "lang" "launcher" "lazy" 
 > "macro-debugger" "make" "mred" "mrlib" "mysterx" "mzcom" "mzlib" "mzscheme" 
 > "net" "openssl" "parser-tools" "picturing-programs" "plai" "planet" "plot" 
 > "preprocessor" "profile" "r5rs" "r6rs" "racket" "racklog" "rackunit" "raco" 
 > "reader" "readline" "redex" "rnrs" "s-exp" "scheme" "schemeunit" "scribble" 
 > "scribblings" "scriblib" "setup" "sgl" "slatex" "slideshow" "srfi" "stepper" 
 > "string-constants" "swindle" "syntax" "syntax-color" "teachpack" "test-engine" 
 > "texpict" "trace" "typed" "typed-racket" "typed-scheme" "unstable" "version" 
 > "web-server" "wxme" "xml" "xrepl"))
 > 
 > Computer Language: (("Determine language from source") (#(#t print 
 > mixed-fraction-e #f #t debug) (default) #() "#lang racket\n" #t #t ((main) 
 > (test))))

State changed from "open" to "closed" by mflatt at Fri, 04 Jan 2013 11:02:53 -0500
Reason>>> Nightly build looks as intended --- better, at least, though it would be nice to 
script the build process to add a decoration to the folder as well as the usual 
drag-to-"Applications" link and layout.