Blog How to upgrade your urbit binary
Jeremy Tunnell at
Updated January 23, 2023
Note: The Urbit Port app is no longer officially supported, and Windows binaries are no longer being released. If you are running urbit with Port on Windows you will no longer get new binaries. You MUST export your pier from Port and install on Windows using vitualization. If you are running urbit with Port on Linux or Mac, your binaries should automatically update, but it is strongly recommended you export your pier from Port and do a command line install.
Overview
Sometime in late 2022, the urbit team moved to a new method of running urbit on whatever host OS you are using. The old way involved using linux commands to download a new binary from the repository, after which you would run the binary directly.
The new way is that the binary is stored inside of your pier (directory with your planet name). Anyone running a binary before 1.9 will need to manually "dock" their binary, which means put it inside the pier (see below). Anyone running a binary after that should have already had your binary put into the pier.
Once the binary is inside the pier, then starting/stopping/pack/meld/etc is now accessed through the .run file. Upgrades are now as simple as running the "next" command. See below for details.
Upgrade your binary
When restarting urbit after the upgrade you can use the -p flag to specify a port (./urbit -p 32123 *yourshipname*). I recommend doing that so you can make sure your firewall keeps that port open.
First, shut down your urbit.
Ctrl-d (to shut down your urbit)
Do the upgrade (replace *pier* below with the location of your pier. It's the directory with the name of your planet or star.)
*pier*/.run next
If this fails, it is either because you're on the wrong source file or you need to dock your binary or it's a permissions issue.
If you are on the wrong source file (replace *pier* with the location of your pier):
echo "live" > *pier*/.bin/pace
If you need to dock your binary (replace *pier* with the location of your pier):
./urbit dock *pier*
If it's a permissions issue, you're probably running as root. Then give ownership to root (replace *pier* with the location of your pier):
chown root *pier*
Further troubleshooting here and here
And restart. (Insert whatever port you want)
*pier*/.run -p 13494
Old way of upgrading (still works, but not recommended)
Ctrl-d (to shut down your urbit)
rm linux64.tgz (if present)
rm urbit-worker (if present)
rm urbit-king (if present)
rm urbit (ONLY THE EXECUTABLE, DO NOT MISTAKENLY DELETE YOUR WHOLE URBIT FOLDER)
curl -L https://urbit.org/install/linux-x86_64/latest | tar xzk --transform='s/.*/urbit/g' && ./urbit
Now start urbit the old way, or move the executable into the pier and start it the new way so you don't have to use this old upgrade method again.
Old way:
./urbit -p 32123 *yourshipname*
New way:
./urbit dock *yourshipname* rm urbit (ONLY THE EXECUTABLE, DO NOT MISTAKENLY DELETE YOUR WHOLE URBIT FOLDER) *pier*/.run -p 13494