This is a result of mixing different methods of installment. You can fix this by removing everything and reinstalling with either fuelup or cargo. Mixing these two together creates duplicate binaries with different versions in your Path.
To add to this, you can find out exactly which “version” of a command is being used with the
which command. For example:
$ which forc-fmt /nix/store/mzijvfwbq8vq7cxv7ih2sk3gxmhq0y6l-forc-fmt-0.31.1/bin/forc-fmt
Here we can see the version of
forc-fmt I have in use is one that I have installed via Nix. On your system this might be
/home/USER/.cargo/bin/forc-fmt or similar.
On all Unix systems, if we have multiple versions of a command installed, the version that is selected is based on the order in which their paths appear within the
PATH environment variable.
You can inspect your
This will output a list of
:-separated paths which describe the order in which your system will search for executable commands.
If you want to change this order (e.g. to give
~/.fuelup/bin priority over
~/.cargo/bin), I suggest looking up the recommended way to edit the
PATH environment variable on your OS or distribution, as the approach is different on almost every platform.
As of version 0.14, fuelup should now warn during installation and updating if any executables with the same name as a fuel component already exist on the
You can check out the PR for details: