
I’m using Racket built from source. I recently pulled the latest and re-built, and now some packages are missing. I’m guessing there are version specific directories for packages, so when I moved from 8.1 to 8.2 I need to reinstall packages. What’s the typical workflow for this?

@badkins do you mean you did make
, then git pull
, then make
again? that shouldn’t cause packages to disappear

I did: git fetch upstream
git merge upstream/master
make

I’m referring to packages I installed via raco e.g. gregor, threading, etc.

I’m on my own fork of racket.

I actually don’t have that many packages in most of my projects, so simply re-installing isn’t super inconvenient, but as my package dependencies grow, I’ll need a more scalable solution.

Oh wait…. <sigh>

right, that would be the same. are you sure you did make
and not make base
or make PKGS=something
or some other command?

My apologies, I think this occurred when I tried to fix my “weird state” issue above. I totally forgot about checking out a fresh copy of Racket to start over <sheesh>.

Although, I suppose that would only explain the problem if the packages are installed in the source tree. Are they? Or is an “installation-wide” install of a package located outside the source tree?

% raco pkg show
Installation-wide:
Package Checksum Source
gregor 91d71c6082fec4... catalog...=gregor
main-distribution 2d6bde829e436c... catalog...ibution
main-distribution-test 85059556354663... catalog...on-test
racket-lib static-link...lib
threading 13a34f14fe073c... catalog...reading
[253 auto-installed packages not shown]
User-specific for installation "development":
[none]
I expect “development” refers to my development branch which is what I’m working off of.

When you build from a Git checkout, the default package installation mode is configured as “installation”, so package installations stay in the tree.

Meanwhile, the installation gets the name “development” instead of a version number, just in case something version-specific happens in user-specific space (so, never collides with normally installed versions, at least not that way).

Ok, I think everything is as it should be then, although I’m a little less clear on your second message :) Are you saying the name “development” just happens to coincide with my git branch named “development” ?

I don’t plan on checking out a fresh copy again, so I expect my packages will stay installed as I pull new code.

Yes, if your Git branch is named “development”, it’s a coincidence that the installation name matches.