Closed4
Scoop と diffutils
を見て自分でも再現してみることにした。
まず自分の環境では何故か
$ scoop update diffutils
diffutils: 3.7 (latest version)
Latest versions for all apps are installed! For more information try 'scoop status'
てな感じでちゃんと入ってるので,入れなおすところから
$ scoop uninstall diffutils
Uninstalling 'diffutils' (3.7).
Removing shim for 'cmp'.
Removing shim for 'diff'.
Removing shim for 'diff3'.
Removing shim for 'sdiff'.
Unlinking ~\scoop\apps\diffutils\current
$ scoop install diffutils
Installing 'diffutils' (3.7) [64bit]
Loading diffutils-3.7-1-x86_64.pkg.tar.xz from cache
Checking hash of diffutils-3.7-1-x86_64.pkg.tar.xz ... ok.
Loading msys2-runtime-3.1.7-2-x86_64.pkg.tar.xz from cache
Checking hash of msys2-runtime-3.1.7-2-x86_64.pkg.tar.xz ... ok.
Loading libiconv-1.16-2-x86_64.pkg.tar.zst from cache
Checking hash of libiconv-1.16-2-x86_64.pkg.tar.zst ... ok.
Loading libintl-0.19.8.1-1-x86_64.pkg.tar.xz from cache
Checking hash of libintl-0.19.8.1-1-x86_64.pkg.tar.xz ... ok.
Extracting diffutils-3.7-1-x86_64.pkg.tar.xz ... done.
Extracting msys2-runtime-3.1.7-2-x86_64.pkg.tar.xz ... done.
Extracting libintl-0.19.8.1-1-x86_64.pkg.tar.xz ... done.
Linking ~\scoop\apps\diffutils\current => ~\scoop\apps\diffutils\3.7
Creating shim for 'cmp'.
Creating shim for 'diff'.
Creating shim for 'diff3'.
Creating shim for 'sdiff'.
おうふ,キャッシュされてるのか orz
でもこれって libiconv-1.16-2-x86_64.pkg.tar.zst がちゃんと解凍されてるってことだよなぁ???
気を取り直してキャッシュを削除するところから
$ scoop cache rm diffutils
$ scoop install diffutils
Installing 'diffutils' (3.7) [64bit]
diffutils-3.7-1-x86_64.pkg.tar.xz (342.0 KB) [================================================================] 100%
Checking hash of diffutils-3.7-1-x86_64.pkg.tar.xz ... ok.
msys2-runtime-3.1.7-2-x86_64.pkg.tar.xz (2.7 MB) [============================================================] 100%
Checking hash of msys2-runtime-3.1.7-2-x86_64.pkg.tar.xz ... ok.
libiconv-1.16-2-x86_64.pkg.tar.zst (725.6 KB) [===============================================================] 100%
Checking hash of libiconv-1.16-2-x86_64.pkg.tar.zst ... ok.
libintl-0.19.8.1-1-x86_64.pkg.tar.xz (30.8 KB) [==============================================================] 100%
Checking hash of libintl-0.19.8.1-1-x86_64.pkg.tar.xz ... ok.
Extracting diffutils-3.7-1-x86_64.pkg.tar.xz ... done.
Extracting msys2-runtime-3.1.7-2-x86_64.pkg.tar.xz ... done.
Extracting libintl-0.19.8.1-1-x86_64.pkg.tar.xz ... done.
Linking ~\scoop\apps\diffutils\current => ~\scoop\apps\diffutils\3.7
Creating shim for 'cmp'.
Creating shim for 'diff'.
Creating shim for 'diff3'.
Creating shim for 'sdiff'.
なるほど。ダウンロードすれども展開せずってことか。やっと状況が分かった。
Zstandard に対応している 7-zip があるらしい。
これをインストールしてエクスプローラから libiconv-1.16-2-x86_64.pkg.tar.zst を開いて usr/bin/ フォルダ直下のファイルを ~/scoop/apps/diffutils/3.7/usr/bin/ フォルダに展開する。これで
$ diff hello.c alice.c
4c4
< printf("hello world\n");
---
> printf("hello alice\n");
よーし,うむうむ,よーし。これで鼻の先の危機は去った(笑) しかし Scoop が *.zst ファイルをまるっと無視するのなら根本的な解決は難しそう。
このスクラップは2021/11/03にクローズされました