I think I understand at least part of the problem now. When I run ./first-setup.sh it runs /usr/local/texlive/2010/bin/x86_64-darwin/mktexlsr /usr/local/texlive/2010/bin/x86_64-darwin/mtxrun instead of mktexlsr and mtxrun from the newly installed distribution. Is anyone willing to try to change part of first-setup.sh into Option A (more bullet-proof): --------------------------------------------- CONTEXTROOT="$PWD/tex" OLDPATH=$PATH # download or rsync the latest scripts first rsync -rlptv rsync://contextgarden.net/minimals/setup/$platform/bin . # download or update the distribution # you may remove the --context=beta switch if you want to use "current" export PATH=$PWD/bin:"$CONTEXTROOT/texmf-$platform/bin":$OLDPATH mtxrun --script ./bin/mtx-update.lua --force --update --engine=all --context=beta --platform=$platform --texroot="$CONTEXTROOT" $@ export PATH="$CONTEXTROOT/texmf-$platform/bin":$OLDPATH mtxrun --script ./bin/mtx-update.lua --force --make --engine=all $@ --------------------------------------------- Option B: --------------------------------------------- CONTEXTROOT="$PWD/tex" # download or rsync the latest scripts first rsync -rlptv rsync://contextgarden.net/minimals/setup/$platform/bin . # download or update the distribution # you may remove the --context=beta switch if you want to use "current" export PATH=$PWD/bin:"$CONTEXTROOT/texmf-$platform/bin":$PATH mtxrun --script ./bin/mtx-update.lua --force --update --make --engine=all --context=beta --platform=$platform --texroot="$CONTEXTROOT" $@ --------------------------------------------- and test if that behaves any better? The problem is that in the first step one doesn't necessary have mtxrun & luatex at all or they might be too recent, so we have to put "$PWD/bin/" in front of PATH. However it might be much better to use (now existing) luatex and mtxrun from $CONTEXTROOT/texmf-$platform/bin when updating the database and making formats. Later I decided that one also needs $CONTEXTROOT/texmf-$platform/bin before calling --update since mktexlsr is also called at the end of update. I will rewrite some of the scripts from scratch anyway, but I hope that this should work now. I would have to test whether there is a more elegant way for enforcing some specific type of platform when uname lies. Mojca