Save 37% off PRO during our Black Friday Sale! »

Bitbar/SwiftBarをLinuxでも使いたい

 Bitbar/SwiftBarをLinuxでも使いたい

E567a535ddc7964130dd086f147a7682?s=128

Kenichiro MATOHARA

January 23, 2021
Tweet

Transcript

  1. / Bitbar/SwiftBarを Bitbar/SwiftBarを Linuxでも使いた Linuxでも使いた い い Kenichiro Matohara(matoken) <maroken@kagolug.org>

    CC BY-NC-SA 1 / 36
  2. / $ apt --color moo moo 2>/dev/null | sed -e

    's/Have you mooed today?/Happy MOO Year!/' 2 / 36
  3. / 南隅から参加(鹿児島の右下) 好きなLinuxディストリビューションはDebian お仕事募集 mailto:work@matohara.org Kenichiro Matohara(matoken) Kenichiro Matohara(matoken) https://matoken.org

    https://matoken.org 3 / 36
  4. / 最近の発表 最近の発表 「 」 2020-12-26 「 」 2021-01-09 誰でもファイルアップロード

    鹿児島Linux勉強会 2020.12(オン ライン開催) VeraCryptをzuluCryptで 小江戸らぐ 1月のオフな集まり(第222 回) 4 / 36
  5. / 鹿児島らぐ 鹿児島らぐ 次回 2021-01-31(sun) オープンソースカンファレンス2021 Springにも参加予定 鹿児島Linux勉強会 2021.01(オンライン開催) 5

    / 36
  6. / BitBar/SwiftBar BitBar/SwiftBar PodcastのRebuild.fm 292回でBitBar, SwiftBar というツールバーに任意 のコマンドの結果を表示できるツールを知る macOS用 Linuxで動くものがないか探してみる

    Rebuild: 292: Two Chickens, One Stone (hak) GitHub - matryer/bitbar: Put the output from any script or program in your Mac OS X Menu Bar SwiftBar https://nitter.net/matoken1/status/1344632867100364801 6 / 36
  7. / BitBar/SwiftBar Alternative BitBar/SwiftBar Alternative 現環境はAwesome wmなのでどれも動かなさそう(◞‸◟) GitHub - p-e-w/argos:

    Create GNOME Shell extensions in seconds GitHub - lipido/kargos: KDE Plasma port of GNOME Argos and OSX BitBar GitHub - ssimono/margos: Create Mate applets from your script output 7 / 36
  8. / Margosを試す Margosを試す とりあえず一番導入が楽そうなMateを導入してMargosを試す MargosにはMate 1.18以上,gtk-3,Python 3.6以上,pipが必要 8 / 36

  9. / margos導入 margos導入 1 pipコマンドでmargosを導入 2 デスクトップ環境で利用できるようにする 3 mate-panelを再起動する $

    sudo pip3 install -U margos $ sudo margos install $ killall mate-panel 1 2 3 9 / 36
  10. / margosアプレット登録 margosアプレット登録 パネルにアプレットを登録して任意のコマンドを登録 パネルで右クリックしてアプレットの追加 アプレット内の「コマンド」を選択して追加 10 / 36

  11. / いくつかの問題 いくつかの問題 11 / 36

  12. / エスケープシーケンスがそのま エスケープシーケンスがそのま ま出力される ま出力される colorなどは使わないようにしましょう. wego -d 1 -f

    emoji | head -4 | tail -1 12 / 36
  13. / 日本語や記号の問題 日本語や記号の問題 ⚡ 21時/84% と表示したいところの 時 部分が ? になり,

    % が消え てしまった 絵文字がOKで日本語がNGなパターンは初めて見た気がする  タイミングによりうまく動かないのに気づいた>< echo -n ⚡ $((`date +%H`-1))時/; \ curl -s https://www.kyuden.co.jp/td_power_usages/csv/juyo-hourly-`date +%Y%m%d`.csv | \ head -38 | tail -24 | grep ,$(( `date +%H` -1 )):00 | cut -z -d, -f5;echo % 13 / 36
  14. / パイプ等を使うと動かない パイプ等を使うと動かない | でつないだりするとうまく動かない sh -c "command1 | command2"

    のようにsh経由で動かすとOK ファイルに書き出してそれを指定したほうがいい? 14 / 36
  15. / Margosまとめ Margosまとめ MargosはBitBarに比べると機能が少ない watchコマンドをMateパネルに置く感じ 15 / 36

  16. / Argosを試す Argosを試す Margosの機能が少ないのでGnome Shell環境を用意してArgosを試す Gnome shellの拡張機能として提供されている BitBarコンパチ! p-e-w/argos: Create

    GNOME Shell extensions in seconds 16 / 36
  17. / Argos導入 Argos導入 ブラウザから導入もしくは手動でダウンロードして展開 ダウンロード時はGnome shellのバージョンを求められる Gnome Shellバージョン確認 手動での導入 Alt+F2

    r↲ でGnome Shellを再起動して反映 Argos - GNOME Shell 拡張機能 $ gnome-shell --version GNOME Shell 3.38.3 $ mkdir -p ~/.local/share/gnome-shell/extensions $ unzip ./argospew.worldwidemann.com.v3.shell-extension.zip \ -d ~/.local/share/gnome-shell/extensions/argos@pew.worldwidemann.com/ 17 / 36
  18. / Gnome Shellが新しいとうまく動 Gnome Shellが新しいとうまく動 かない かない ステータスバーには現れるがクリックしてもウィンドウが開かな い Gnome

    Shellが新しいとこうなるらしい(3.36+?今回は3.38.3) Gitリポジトリのmasterと以下のPRのpatchを利用して動作 Argos menus won’t open on Ubuntu 20.04 - Is it a known issue? · Issue #120 · p-e-w/argos · GitHub Use registerClass to make plugin compatible with gnome 3.36. by rammie · Pull Request #111 · p-e-w/argos · GitHub 18 / 36
  19. / 導入し直し 導入し直し Gnome Shell 3.36+の場合のみ 19 / 36

  20. / 旧バージョンを削除 旧バージョンを削除 1 無効化 2 アンインストール $ gnome-extensions disable

    argos@pew.worldwidemann.com $ gnome-extensions uninstall argos@pew.worldwidemann.com 1 2 20 / 36
  21. / GitのmasterとPR適用 GitのmasterとPR適用 1 リポジトリclone 2 拡張機能コピー 3 Gnome Shell

    3.36+向けの修正を適用 Alt+F2 r↲ でGnome Shellを再起動して反映 $ git clone https://github.com/p-e-w/argos $ cd argos $ cp -r ./argos@pew.worldwidemann.com \ ~/.local/share/gnome-shell/extensions/ $ wget https://raw.githubusercontent.com/p-e-w/argos/c4663d9d3e29ef33b7e9123ef0c09581 -O ~/.local/share/gnome-shell/extensions/argos@pew.worldwidemann.com/menuitem.js 1 2 3 21 / 36
  22. / Argosデフォルトプラグイン確認 Argosデフォルトプラグイン確認 ステータスバーにArgosが現れる クリックでウィンドウが表示される 最下部の argos.sh をクリックするとテキストエディタで開かれ る 22

    / 36
  23. / Argos.sh Argos.sh #!/usr/bin/env bash URL="github.com/p-e-w/argos" DIR=$(dirname "$0") echo "Argos"

    echo "---" echo "$URL | iconName=help-faq-symbolic href='https://$URL'" echo "$DIR | iconName=folder-symbolic href='file://$DIR'" 23 / 36
  24. / Argos Plugin Argos Plugin ~/.config/argos/ に実行可能プラグラムやスクリプトを置くと 即実行される STDOUT出力結果1行目がバーに表示され,--- の後がウィンドウ

    内に表示される インターバルはファイル名で制御 hoge.3s+.sh #3秒毎に実行 fuga.10m+.py #10分毎に実行 色を付けたりアイコンを設定したり…… 24 / 36
  25. / wegoで天気表示 wegoで天気表示 天気をバーに表示してクリックすると2日分の天気予報を表示(罫線が 崩れている) 25 / 36

  26. / ~/.config/argos/wego.1h+.sh #!/bin/bash STR=`wego -d 2 -f emoji` echo "`echo

    "${STR}" | head -4 | tail -1`" echo "---" echo "${STR}" | awk 1 ORS="\\\\n" echo " | font=monospace" 26 / 36
  27. / CPUの温度とtop表示 CPUの温度とtop表示 1分毎にCPUの温度をバーに表示して,クリックするとtopコマンドを 表示 27 / 36

  28. / ~/.config/argos/cputhermal.1m+.sh ※色が変更できない? #!/bin/bash THERMAL=`acpi -t | awk '{print $4}'`

    COLOR="white" if [ `echo "${THERMAL} >= 80" | bc` == 1 ] ; then COLOR="red" fi #echo "<span color='${COLOR}' weight='normal'><tt> ${THERMAL}℃ </tt></span>" echo " ${THERMAL}℃ | color=${COLOR}" echo "---" if [ "${ARGOS_MENU_OPEN}" == "true" ]; then TOP_OUTPUT=$(top -b -n 1 | head -n 20 | awk 1 ORS="\\\\n") echo "${TOP_OUTPUT} | font=monospace bash=top" else echo "Loading..." fi 28 / 36
  29. / BitBar Plugin利用 BitBar Plugin利用 BitBarと互換性があるのでプラグインが流用できる scriptによりAPI keyや座標を記述したりは必要 BitBarはmacOS向けなのでシステム周りは動かなかったりPATHが 違ったりも

    GitHub - matryer/bitbar-plugins: Plugin repository for BitBar 29 / 36
  30. / HackserNewsを表示するプラグイ HackserNewsを表示するプラグイ ン利用例 ン利用例 $ git clone https://github.com/matryer/bitbar-plugins $

    cd bitbar-plugins $ ln -s `pwd`/Web/HackerNews/hacker_news.1m.rb ~/.config/argos/ 30 / 36
  31. / 31 / 36

  32. / Kargos Kargos KDE Plasma向け 動作未確認 ちょい古そう GitHub - lipido/kargos:

    KDE Plasma port of GNOME Argos and OSX BitBar A Plasma port of Argos and BitBar plugins to fast create custom plasmoids. Note: This is an alpha project. By now, it only was tested on Kubuntu 16.04 LTS. 32 / 36
  33. / その他 その他 小型ディスプレイ スマートフォン マジョカアイリスをモニタ上に設置 33 / 36

  34. / 小さなスマホを外部ディスプレ 小さなスマホを外部ディスプレ イに イに で でTweet流してい るウィンドウを共有してRakuten miniで表示 Deskreen

    sayaka 34 / 36
  35. / まとめ まとめ ArgosおすすめGnome Shell環境の方はぜひ Shell Scriptなどをちょっと書くだけでステータスバーにいろいろ な情報を表示来て便利 バーが表示される範囲が限られる →

    大きなモニタほしい awesome wmでも動く汎用的なツールほしい 35 / 36
  36. / 奥付 奥付 発表 2021-01-23(sat) 発表者 ライセンス CC BY-NC-SA 4.0

    東海道らぐ あひる焼きさんのライトニングトークダービー! Kenichiro Matohara(matoken) 36 / 36