Thanks for providing the step-by-step instructions!

I see that when `raco pkg install` runs `raco setup` in step 4, it
effectively uses `--avoid-main`, since the scope is not "installation".
To be consistent with `raco setup`, `raco pkg install` should use
`--avoid-main` only when the scope is specifically "user", and I'll fix
that.

Your 'pkgs-search-dirs configuration puts the new scope even before
user scope, so there's a kind of mismatch between the idea that it's a
non-user scope and the package search order. As you note in follow-ups,
the new and improved layering support is more the way to go.

At Thu, 20 May 2021 02:22:20 -0500, Nathaniel W Griswold wrote:
> Yes, that was it. `sudo raco setup` built the .zo's, which were missing.
> 
> I guess the my question would be why do i have to run that?
> 
> Here is the recipe for what i did (on a current debian testing system):
> 
> 1) curl -OL 
> 'https://mirror.racket-lang.org/installers/8.1/racket-8.1-x86_64-linux-cs.sh'
> 2) sudo sh racket-8.1-x86_64-linux-cs.sh --in-place --dest "/opt/Racket 8.1"
> 3) Set "/etc/Racket 8.1/etc/config.rkt" contents to:
> ---
> #hash((build-stamp . "") (catalogs . 
> ("https://download.racket-lang.org/releases/8.1/catalog/"; #f)) 
> (doc-search-url . 
> "https://download.racket-lang.org/releases/8.1/doc/local-redirect/index.html";)
>  
> (pkgs-search-dirs . ("/opt/Racket 8.1/share/pkgs-system" #f)) 
> (links-search-files . ("/opt/Racket 8.1/share/pkgs-system/links.rktd" #f)))
> ---
> 4) sudo /opt/Racket\ 8.1/bin/raco pkg install --scope-dir "/opt/Racket 
> 8.1/share/pkgs-system" readline-gpl rash
> 5) /opt/Racket\ 8.1/bin/racket -l rash/repl
> 
> The last command takes a long time every time. The docs and zos and bin files 
> are missing. I run `/opt/Racket\ 8.1/bin/raco setup rash`. Now all docs bins 
> zos in place and (5) runs quickly.
> 
> Why? I don't think i'm going to use this method anymore, but if i did then 
> should i `raco setup` the other packages (rash deps) too?
> 
> Thanks
> 
> Nate
> 
> > On May 19, 2021, at 12:34 PM, Matthew Flatt <mfl...@cs.utah.edu> wrote:
> > 
> > This kind of problem sounds like ".zo" files are missing or have a
> > timestamp that is earlier than the corresponding ".rkt" files.
> > 
> > That's why the slow log shows a stat on "rash/repl.rkt", then a stat on
> > "rash/compiled/repl_rkt.zo", then an open on "rash/repl.rkt".
> > 
> > The fast log shows a stat on "rash/repl.rkt", then a stat on
> > "rash/compiled/repl_rkt.zo", then an open on
> > "rash/compiled/repl_rkt.zo".
> > 
> > Using `raco setup rash` should solve the problem (`sudo`ing if
> > necessary to have write permission).
> > 
> > At Wed, 19 May 2021 12:15:20 -0500, Nathaniel W Griswold wrote:
> >> Hello. I configured racket on my system with a custom directory 
> >> installation 
> >> package scope and ran into an extremely long (about 20 second) startup 
> >> time 
> for 
> >> loading racket and the package rash/repl.  didn't have time today to 
> >> investigate today, but thought i would send along some details just in 
> >> case 
> >> someone more experienced with racket might see it or hear my problem and 
> >> immediately realize the problem. There is no stderr output by the racket 
> >> process for the slow case, everything just takes longer.
> >> 
> >> I've attached two logs for the output of the command `strace racket -l 
> >> rash/repl >/tmp/rash.log 2>&1`
> >> 
> >> The first (slow, system) log is for my system-wide installation directory 
> scope 
> >> of racket on my system in "/opt/Racket 8.1/share/pkgs-system/". The slower 
> >> of 
> >> the logs is about three times bigger than the other. It contains a lot of 
> >> spammy repeated syscalls of lseek(3, 0, SEEK_CUR) and 
> >> clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &t). I don't know if that is 
> >> significant but it seemed odd.
> >> 
> >> My user share directory in /home/griswold/.local/share/racket/8.1 did not 
> exist 
> >> for the first log. A symlink existed from "/opt/Racket" -> "/opt/Racket 
> >> 8.1".
> >> 
> >> I don't really know what is going on. Does anyone understand why this 
> >> might 
> >> have occured? Maybe i have done something stupid. But i wanted to report 
> >> it 
> >> just in case it is a bug.
> >> 
> >> Attached are the strace logs for the two cases, system directory and user 
> scope.
> >> 
> >> Thank you
> >> 
> >> Nate
> >> 
> >> -- 
> >> You received this message because you are subscribed to the Google Groups 
> >> "Racket Developers" group.
> >> To unsubscribe from this group and stop receiving emails from it, send an 
> email 
> >> to racket-dev+unsubscr...@googlegroups.com.
> >> To view this discussion on the web visit 
> >> 
> https://groups.google.com/d/msgid/racket-dev/CC826DC8-5919-47F7-912E-35437DDF766
> >> 7%40manicmind.earth.
> >> 
> >> ------------------------------------------------------------------------------
> >> [application/zip "logs.zip"] [~/Desktop & open] [~/Temp & open]
> > 
> > -- 
> > You received this message because you are subscribed to the Google Groups 
> "Racket Developers" group.
> > To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-dev+unsubscr...@googlegroups.com.
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/racket-dev/20210519113412.259%40sirmail.smtps.
> cs.utah.edu.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/20210520063041.45%40sirmail.smtps.cs.utah.edu.

Reply via email to