謎のコマンドunmakeself

/usr/ports/astro/google-earth/Makefileを読んでたら、archivers/unmakeselfと言うのを見付ける。
これは最初から入ってるのか依存関係で勝手に入ってるのかよくわからない。
Makefileを読むとどうもGoogle Earthの自己解凍形式のインストーラからファイルを取り出してるみたい。

# Makefileの一部
# ${UNMAKESELF}がunmakeself
# ${DISTFILES}がGoogleEarthLinux-4.0.2091.bin

do-build:
        @${MKDIR} ${WRKSRC}
        @${CP} ${DISTDIR}/${DISTFILES} ${WRKSRC}
        @cd ${WRKSRC} && ${UNMAKESELF} ${DISTFILES} && ${RM} -f ${DISTFILES}
        @cd ${WRKSRC} && ${TAR} xf googleearth-data.tar && ${RM} -f googleearth-data.tar
★どうなるか使ってみる

manにも載ってないし、「--help」オプションの出力を読んでもよくわからない。
おまけにGoogleで検索してもほとんど情報が無いので実際に使って試してみる。

$ fetch http://dl.google.com/earth/GE4/GoogleEarthLinux.bin
GoogleEarthLinux.bin                          100% of   20 MB  224 kBps 00m00s
$ unmakeself GoogleEarthLinux.bin
$ ls -F
EULA-GoogleEarth-de.txt  README.linux               linux/
EULA-GoogleEarth-en.txt  bin/                       postinstall.sh*
EULA-GoogleEarth-es.txt  googleearth-data.tar       preuninstall.sh*
EULA-GoogleEarth-fr.txt  googleearth-icon.png       setup.data/
EULA-GoogleEarth-it.txt  googleearth-linux-x86.tar  setup.sh*
GoogleEarthLinux.bin     googleearth.xp

Google Earthインストーラを起動するまでもなく中のファイルが取り出せた。
これは便利かもしれない。