You don't have to do that, there's just one extra step starting from a pre-built distribution.
If you want to work on the "slatex" package for some reason, you'd do: $ raco pkg update --lookup --catalog https://pkgs.racket-lang.org/ slatex ... $ raco pkg update --clone slatex And then you have the "slatex" package linked to a clone in the `slatex/` directory where you ran the second command. Here's a demo: https://asciinema.org/a/lOASUq2O1AT8JHhGyNJzvOcqE Sam On Thu, Nov 7, 2019 at 8:28 PM Alex Harsanyi <alexharsa...@gmail.com> wrote: > > Hi Matthew, > > Thanks for clarifying this. > > The question was asked on this list several times in the past, and the > suggested approach was always to use `raco pkg update --clone`. The > non-obvious part, at least to me, was that one has to clone and build Racket > before starting to work on any package that is shipped with the Racket > distribution, even if that package is in a separate repository. > > Alex. > > On Thursday, November 7, 2019 at 9:37:52 PM UTC+8, Matthew Flatt wrote: >> >> It's not technically ok to shadow a package in installation scope with >> one in user scope, at least not if any package in installation scope >> depends on the shadowed package. (That's why you have to use `--force` >> to shadow in `--user` scope.) With that configuration, when the package >> changes in user scope, then the installation-scope build is not >> necessarily consistent with the changes. Things might work out anyway; >> it depends on the nature of the dependency and the changes. >> >> The right answer may be a tool that starts with an existing >> installation and more quickly clone it into another installation in a >> user's space, and then a user can work on a package and rebuild >> consistently. The configuration points and general tools to manage >> packages are all there, but they need to be assembled and made >> easy-to-use. >> >> Meanwhile, the current tools are better set up for starting with a >> GitHub checkout and building there. In that setting, for example, it's >> easier to use `raco pkg update --clone` to get started, as described at >> >> https://docs.racket-lang.org/racket-build-guide/contribute.html#%28part._pkg-contribute%29 >> >> >> Matthew >> >> At Tue, 5 Nov 2019 15:48:41 -0800 (PST), Alex Harsanyi wrote: >> > I wrote some notes about how to do something similar, when I worked on the >> > plot package: >> > >> > >> > https://alex-hhh.github.io/2018/01/changing-built-in-racket-packages.html >> > >> > These instructions will work for the case where Racket is installed >> > globally and your current user does not have permissions to modify any >> > files in this global Racket installation. They might not be the simplest >> > ones however, as I am not a raco pkg package expert either. >> > >> > Hope this helps, >> > Alex. >> > >> > On Wednesday, November 6, 2019 at 2:18:18 AM UTC+8, Reuben Thomas wrote: >> > > >> > > I'm trying to make a small improvement to the drracket package, and of >> > > course I'd like to test it! >> > > >> > > I have racket 7.4 installed on my Ubuntu system from the PPA, so of >> > > course >> > > drracket is installed as part of the installation. >> > > >> > > After reading the "raco pkg" docs, and searching the mailing list, I >> > > can't >> > > figure out how to make a user installation of the drracket package so I >> > > can >> > > test it. My best attempt so far is something like: >> > > >> > > raco pkg install ./drracket >> > > raco pkg install: package is currently installed in a wider scope >> > > package: drracket >> > > installed scope: installation >> > > given scope: user >> > > >> > > Of course, I don't want to overwrite the installation's version of >> > > drracket, I just want a user installation that takes precedence. >> > > >> > > I'm a total newbie with raco, so sorry if I've overlooked something >> > > obvious. >> > > >> > >> > -- >> > You received this message because you are subscribed to the Google Groups >> > "Racket Users" group. >> > To unsubscribe from this group and stop receiving emails from it, send an >> > email to racket...@googlegroups.com. >> > To view this discussion on the web visit >> > https://groups.google.com/d/msgid/racket-users/3635bd1f-ccde-41eb-b9d4-05cc6c36 >> > 777b%40googlegroups.com. > > -- > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to racket-users+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/racket-users/162bbd09-ed9e-4a33-853d-142e170cfc69%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/CAK%3DHD%2BYER9dftXnVOPzUf5fc1aFn2ngzigy5u%2BN4_JPUmUZw%2Bw%40mail.gmail.com.