asdf-vm/asdf

bug: Bad Shim - fury

pboling opened this issue · 3 comments

Describe the Bug

I do not know why asdf thinks it needs to shim the fury tool which comes from the fury-cli, which is installed via homebrew.

/Users/pboling/.asdf/shims/fury

The shim breaks the command completely, and even if I remove it somehow asdf recreates it every few minutes, so I find myself deleting the shim all day long, every day. I don't understand why fury-cli is related to asdf at all.

ref: https://gemfury.com/help/gemfury-cli/

Steps to Reproduce

I expect there to never be a shim for the command fury, but there always is.

Expected Behaviour

No fury shim.

Actual Behaviour

Always a fury shim.

Environment

❯ asdf info
OS:
Darwin mb-pboling.local 22.6.0 Darwin Kernel Version 22.6.0: Fri Sep 15 13:39:54 PDT 2023; root:xnu-8796.141.3.700.8~1/RELEASE_ARM64_T8112 arm64

SHELL:
zsh 5.9 (x86_64-apple-darwin22.0)

BASH VERSION:
5.2.15(1)-release

ASDF VERSION:
v0.12.0

ASDF INTERNAL VARIABLES:
ASDF_DEFAULT_TOOL_VERSIONS_FILENAME=.tool-versions
ASDF_DATA_DIR=/Users/pboling/.asdf
ASDF_DIR=/opt/homebrew/opt/asdf/libexec
ASDF_CONFIG_FILE=/Users/pboling/.asdfrc

ASDF INSTALLED PLUGINS:
direnv                       https://github.com/asdf-community/asdf-direnv.git master e3622e6
java                         https://github.com/halcyon/asdf-java.git master 116adad
mongodb                      https://github.com/sogko/asdf-mongodb.git master 5d342d4
nodejs                       https://github.com/asdf-vm/asdf-nodejs.git master c9e5df4
ruby                         https://github.com/asdf-vm/asdf-ruby.git master 9f99a9e


### asdf plugins affected (if relevant)

It is the Ruby plugin that is resulting in a shim:

❯ cat /Users/pboling/.asdf/shims/fury

#!/usr/bin/env bash

asdf-plugin: ruby 2.7.7

exec /opt/homebrew/opt/asdf/libexec/bin/asdf exec "fury" "$@" # asdf_allow: ' asdf '

But the thing being shimmed isn't related to ruby.  The actual fury command is a `go` binary, IIRC.

Update: This is still happening with latest fury-cli and latest asdf:

❯ asdf --version
v0.13.1

❯ brew install fury-cli 
  ...
==> Upgrading gemfury/tap/fury-cli
  0.20.2 -> 0.21.0 
  ...

❯ asdf reshim
  2.01s user 8.18s system 58% cpu 17.390 total

❯ which fury
/Users/pboling/.asdf/shims/fury

If the brew installation step executes a Ruby install, and the Ruby install uses the asdf-managed Ruby version, then it will be in asdf shim under the Ruby plugin and prioritised over Brew installed binaries (as per user configuration of PATH settings).

The thing that makes no sense at all is fury is no longer a Ruby project. They've re-written it in Go IIRC (still technically in beta, but that's what the brew install uses).
But maybe somehow that is relevant here... Perhaps in some random Ruby install I do have the old Ruby version of the fury package installed... I'll check.

Update: It appears that I do not have the gem installed anywhere.