2021-04-17(土)にオンラインで開催された,「Open Source unConference 2021 Online」に参加しました.
タグ: pfetch
可愛いシステム情報表示ツールのpfetch
screenfetchやneofetchと同じようなものですが,shell script 1本で動いてロゴが可愛いです.
$ git clone https://github.com/dylanaraps/pfetch $ pfetch/pfetch _____ matoken@t430s / __ \ os Debian GNU/Linux bullseye/sid | / | host 23533KJ ThinkPad T430s | \___- kernel 5.2.0-2-amd64 -_ uptime 8d 3h 7m --_ pkgs 5796 memory 13560M / 15924M
現在のバージョンではロゴはこれだけあるよう.
$ grep PF_ASCII: pfetch -A999|grep \*\) [Aa]lpine*) [Aa]ndroid*) [Aa]rch*) [Aa]rco*) [Aa]rtix*) [Cc]ent[Oo][Ss]*) [Dd]ebian*) [Dd]ragon[Ff]ly*) [Ee]lementary*) [Ff]edora*) [Ff]ree[Bb][Ss][Dd]*) [Gg]entoo*) [Gg]uix[Ss][Dd]*|[Gg]uix*) [Hh]aiku*) [Hh]yperbola*) [Ll]inux*[Ll]ite*|[Ll]ite*) [Ll]inux*) [Mm]ac[Oo][Ss]*|[Dd]arwin*) [Mm]ageia*) [Mm]anjaro*) [Mm]inix*) [Mm][Xx]*) [Nn]et[Bb][Ss][Dd]*) [Nn]ix[Oo][Ss]*) [Oo]pen[Bb][Ss][Dd]*) [Oo]penSUSE*|[Oo]pen*SUSE*|SUSE*|suse*) [Pp]arabola*) [Pp]op!_[Oo][Ss]*) [Pp]ure[Oo][Ss]*) [Ss]lackware*) [Ss]un[Oo][Ss]|[Ss]olaris*) [Uu]buntu*) [Vv]oid*) *)
環境変数 PF_INFO
と PF_ASCII
で指定したものを表示できるようです.そこでこういうscriptで表示して,
#!/usr/bin/perl use strict; use warnings; use Time::HiRes 'sleep'; my @LIST=('alpine','android','arch','arco','artix','centos','debian','dragonfly','elementary','fedora','freebsd','gentoo','guixsd','haiku','hyperbola','lite','linux','macos','mageia','manjaro','mint','minix','mx','netbsd','nixos','openbsd','suse','parabola','pop!_os','pureos','slackware','sunos','ubuntu','void'); foreach my $dist ( sort @LIST ){ my $pfetch = `clear`; $pfetch .= "$dist\n"; $pfetch .= `PF_INFO=ascii PF_ASCII=$dist pfetch`; print $pfetch; sleep(0.5); } `PF_INFO=ascii pfetch > /dev/null`; print "done\n";
asciinemaへのアップロード……に失敗したのでttyrecして,ttygifしてみました.
$ ttyrec pfetch.tty # 録画開始 $ perl pfetch-logo.pl # logo表示 $ exit # 録画終了 $ vi pfetch.tty # テキストエディタで頭と最後のゴミ削除 $ resize -s 11 25 # terminalを小さくしておく $ ttygif -in pfetch.tty # gifに書き出し $ WINDOWID=`xdotool getactivewindow` ttygif -in pfetch.tty # `cannot get screenshot` と言われる場合
元のロゴはこの ufetch
の一部が使われているよう.こちらにはRaspbianもありますね.
余録:ufetchのロゴを楽しむ
$ git clone https://gitlab.com/jschx/ufetch $ find ./ufetch/ -name "ufetch-*" -executable \! -name "*.png" -print0 | sort -n | xargs -0 -n1 -I{} sh -c "{} 2>/dev/null; sleep 0.5"
環境
$ git log -1 commit 1ff17055b958fb2436bb9810bfba0d97c64390a4 (HEAD -> master, origin/master, origin/HEAD) Author: Dylan Araps <dylan.araps@gmail.com> Date: Tue Oct 1 15:09:43 2019 +0300 pfetch: fix bug $ ttygif -v # https://github.com/sugyan/ttygif 0.0.3 $ ls -l `which sh` lrwxrwxrwx 1 root root 4 Jul 19 03:15 /usr/bin/sh -> dash $ dpkg-query -W dash perl ttyrec dash 0.5.10.2-6 perl 5.28.1-6 ttyrec 1.0.8-5+b2 $ lsb_release -dr Description: Debian GNU/Linux bullseye/sid Release: unstable $ uname -m x86_64