[こちらの記事](https://github.com/jdx/mise/discussions/4054) で[[asdf]]プラグインには[[サプライチェーン攻撃]]のリスクがあることが分かっている。[[miseの公式リポジトリ]]にあるものは移行し、なければ[[Backends (mise)|Backends]]でインストールするようにする。
## miseの最新化
```console
mise self-update
```
> New release found! v2025.1.0 --> v2025.1.6
## プラグインリストの一覧
```console
$ mise plugin
awscli
bat
bats
bottom
broot
delta
dust
eza
fd
ffmpeg
fzf
gleam
gofumpt
golangci-lint
gum
jq
lazydocker
lazygit
lua
lua-language-server
marp-cli
nasm
neovim
pnpm
poetry
ripgrep
shellcheck
shfmt
starship
stylua
task
ttyd
vhs
watchexec
xh
zellij
zoxide
```
## 移行作業
### 公式リポジトリに存在する場合
[[fd]]の例。
```console
mise plugin uninstall fd
mise remove fd
mise use -g fd
```
### 公式リポジトリに存在しないが `mise-plugins` のリポジトリとしてプラグインがある場合
特に警告は出ないので大丈夫なはず。[[eza]]の例。
```console
mise plugin uninstall eza
mise remove eza
mise use -g eza
```
## 進捗
### 進捗
- [x] awscli
- [x] bat
- [x] bats
- [x] bottom
- [x] broot
- **削除**
- [x] delta
- [x] dust
- [x] eza
- [x] fd
- [x] ffmpeg
- **削除**
- [x] fzf
- ??? -> 0.57.0
- [x] gleam
- [x] gofumpt
- [x] golangci-lint
- [x] gum
- [x] jq
- [x] lazydocker
- [x] lazygit
- [ ] 0.44.1 -> 0.45.0
- [x] lua
- [x] lua-language-server
- [x] marp-cli
- [ ] v3 -> v4
- [x] nasm
- 削除
- [x] neovim
- 0.10.2 -> 0.10.3
- [x] pnpm
- 削除
- [x] poetry
- **削除**
- [x] ripgrep
- [x] shellcheck
- [x] shfmt
- [x] starship
- 1.20.1 -> 1.22.1
- [x] stylua
- 0.20.0 -> 2.0.2
- [x] task
- 3.38 -> 3.40
- [x] ttyd
- 削除
- [x] vhs
- 削除
- [x] watchexec
- 2.1.2 -> 2.2.1
- [x] xh
- [x] zellij
- 削除
- [x] zoxide
## トラブル
### fzf
```console
/home/tadashi-aikawa/.fzf.zsh:source:9: no such file or directory: /home/tadashi-aikawa/.local/share/mise/installs/fzf/latest/shell/completion.zsh
/home/tadashi-aikawa/.fzf.zsh:source:13: no such file or directory: /home/tadashi-aikawa/.local/share/mise/installs/fzf/latest/shell/key-bindings.zsh
```
該当の `.zsh` がなくなっているので仕様が変わった?
`~/.fzf.zsh` を変更。
```diff
- source "/home/tadashi-aikawa/.local/share/mise/installs/fzf/latest/shell/completion.zsh"
- source "/home/tadashi-aikawa/.local/share/mise/installs/fzf/latest/shell/key-bindings.zsh"
+ source <(fzf --zsh)
```
### `mise watch` でコマンドが実行できない
`mise watch default` でいけた。バージョンアップでデフォルト指定が消えた?
```toml
[tasks.default]
run = "./main.sh"
```
### watchexec (動かない)
[[watchexec]]を `2.1.2` -> `2.2.1` にアップロードした影響?
```console
watchexec: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.39' not found (required by watchexec)
```
バージョンが古い?
```console
$ sudo apt-get install -y libc6
libc6 is already the newest version (2.35-0ubuntu3.8).
```
最新とのことなので
```console
$ sudo apt-get upgrade -y libc6
```
再度実行したけど変わらず。`2.1.2` に戻したら動いた。
どうやら[[Ubuntu 22.04 LTS|Ubuntu 22]]だと[[glibc]]の該当バージョンに対応していないらしい。[[Ubuntu 24.04 LTS(Noble Numbat)|Ubuntu 24]]にバージョンアップするのが良さそう。ビルドしたくなければ。
### shfmt (コマンドを認識しない)
以下にはいるが。。。
```console
$ ~/.local/share/mise/installs/shfmt/latest/bin/shfmt --version
v3.9.0
```
別バージョンをインストールしなおすと動く。
```console
mise use -g
[email protected]
shfmt
```
試しにキャッシュクリアしてみたけどダメそう。PATHが通ってないのがいけないはず...
```console
mise cache clear
```
よく見ると 3.8 と 3.9 で構成が違う...。
```console
~/tmp/bash-sandbox
❯ ll ~/.local/share/mise/installs/shfmt/3.8
.rwx--x--x 2.7M 13 Jan 17:15 shfmt
~/tmp/bash-sandbox
❯ ll ~/.local/share/mise/installs/shfmt/3.9
drwxr-xr-x - 22 Aug 2024 bin
```
そして3.10で元に戻ってた。明示的にバージョン指定が必要だったので以下。
```console
mise use -g
[email protected]
```
### shellcheck (コマンドを認識しない)
[[ShellCheck]]でも同じような事象が...
```console
$ ll ~/.local/share/mise/installs/shellcheck/latest/bin
.rwxr-xr-x 16M 8 Mar 2024 shellcheck
```
`installs/` 配下を消したら動いた! これが問題なのかもしれない...。
```console
rm -rf ~/.local/share/mise/installs/shellcheck
mise use -g shellcheck
```
### Lazydocker (Backendsを見てしまう)
[[Go Backend (mise)|Go Backend]]をやめたつもりなのにそちらを見続けてしまう。
```console
rm -r /home/tadashi-aikawa/.local/share/mise/installs/go-github-com-jesseduffield-lazydocker/
```
`~/.config/mise.config.toml` から以下削除。
```diff
- "go:github.com/jesseduffield/lazydocker" = "0.24.1"
```
再度インストールして上手くいった。
```console
mise use -g lazydocker
```