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

Add Comment

Comments

  • Aug 7, 2022 11:29 am EDT

    Has anyone tried the new way on a fake ~zod?

    • Aug 7, 2022 11:46 am EDT

      Yep, seems to work on fake ~zod too