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 <[email protected]> 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 [email protected].
> >> 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 [email protected].
> > 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 [email protected].
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