ぶていのログでぶログ

思い出したが吉日

reddish-shell v0.4.0とLinuxシスプロの学び

先月からほそぼそと作っているシェルのv0.4.0をリリースした。 github.com 追加した機能としては リダイレクト機能 コマンド制御演算子 && / || / ;' /&` パイプ機能 cmd1 | cmd2 ビルトインコマンド builtin / cd / echo / puts %記法 %Q / %q bintestの追…

Ubuntu 20.04でgTile GNOME Extensionを使っていると画面ロックできない or libst-1.0の破壊的変更

Ubuntu 20.04にしてから画面ロックができなくて悩んでいた…。 具体的にはSuper+Lを押すと画面ロック処理が走り一瞬が画面が固まるのだが、次の瞬間gnome-shellが再起動するみたいな挙動する。 そして、syslogを見ると以下のようにgnome-shellがセグフォを起…

mrubyとGNU bisonでコマンドラインパーサーを作る

仰々しいタイトルだけど、reddish-shellのパーサー部分のメモ。 いまは覚えているけど、数カ月後の自分が覚えている自信がないのでメモっておこうと思った次第…。 ここで解説する内容は、現状の実装に即したもので数カ月後には変わっているかもしれない。 ま…

シェルを作っている

シェルスクリプトじゃなくてシェル。 前回の記事でGNU bison/flexのことを書いたのはこれの副産物だったのであった。 なぜ作っているかというと面白そうだからという理由以外ないのだけど、きっかけはxonshというPython-powerdなシェルがあることを知って「P…

GNU bisonとflexで単純な計算機を作る

ゴールデンウィークからゲームをやりすぎて食傷気味の今日この頃…。 趣味でプロダクト開発を始めたら、構文解析がしたくなったのでいろいろ調査をしていた。 正規表現を使って頑張るのでもいいのだけど、すでにあるツールを活用したくGNU bisonを使うことに…

Linuxでもビデオチャットでバーチャル背景みたいなことがしたいのでゼーレになってみた

昨今のWFHの流れで弊社でもビデオチャットをしているわけですが、Linuxデスクトップ環境だとバーチャル背景が使えないんですよねぇ。。 WindowsやmacOSなら、Zoomの標準機能でできたりSnap Cameraなどのアプリを使えば実現できます。 これらの機能はLinuxデ…

neutron-serverのrpc_workersとrpc_state_report_workersは明示的に大きい値を指定したほうが良さそう

Controlノードのneutron.confには、rpc_workersとrpc_state_report_workersを明示的に指定した方がよさそう。 というのも、これらはデフォルトでは 1 に設定されるので規模によってはRPCが詰まる。。。 (※ OpenStack Steinからはrpc_workersはデフォルトでCP…

openstackclientがいつの間にかクライアント証明書認証付きのGlance APIにアクセスできるようになっていた

openstackclient-5.2.0から対応したっぽい。 docs.openstack.org 今までglanceclientを使っていたのをOpenStack SDKに変えたことで結果的に、クライアント証明書認証を処理できるようになったようだ。 コミット的にはこれ。 https://github.com/openstack/py…

openstackclientでrequest() got an unexpected keyword argument 'global_request_id'がでる

python-openstackclient==5.2.0がでたのでアップデートしたら、エラーがでるようになってしまった。 ❯ openstack port list --fixed-ip ip-address=XX.XXX.XXX.XX request() got an unexpected keyword argument 'global_request_id' 原因はkeystoneauth1が…

tmuxで選択部分をクリップボードに追加していく

普段tmuxを使っていて、例えば以下のようなときに部分だけをコピーして貼り付けたいとする。 $ command1 foo bar foo bar $ commmand2 commmand2: command not found $ command2 hoge huga 愚直に全部コピーしてエディタにペーストして不要部分を削…

RubyでOpenStack APIを扱うYaoとyao-yrbの紹介

この記事はペパボアドベントカレンダー2019の1日目の記事です。 今年も残り1ヶ月。早いものです。 ペパボでは、OpenStackを使ってプライベートクラウドを構築しています。 OpenStackを運用するうえで、APIを利用して情報を取得したり、インスタンスを作成し…

🍣

.buty4649.net ドメインに絵文字を使えるか試してみたら使えたという話。 きっかけはSlackがリッチテキストエディタになったことで、punycode誤爆*1が減ってわーいとなっているときにふと、「絵文字もpunycodeにできるのか?」と思いつたのでやってみた。 最…

OpenStack Octaviaを使うときはnova.enable_anti_affinity = trueを設定したほうがよさそう

結論から書くと、OpenStack OctaviaでACTIVE/STANDBYトポロジーを使う場合には、octavia.confで以下のような設定を入れたほうがよさそう。 [nova] enable_anti_affinity = true 解説 OpenStack Octaviaについては以前記事を書いたのでそちらを参照のこと。 t…

NetworkManagerのDispatcherで出勤記録を自動化する

仕事を開始するときに出勤記録をつける必要がある。 便利なことにCLIがあるので*1これを叩けば出勤記録をつけることができる。 $ syukkin しかしながら、これを忘れることがあるので自動化したい!というのが目的。 NetworkManager Dispatcher 結論からいう…

dockerコンテナの中でホストのssh-agentを使う

ちょっとした小技。 docker run -v $SSH_AUTH_SOCK:$SSH_AUTH_SOCK -e SSH_AUTH_SOCK=$SSH_AUTH_SOCK 〜〜〜 こんな感じでssh-agentとの通信で使うsocketをマウントして、環境変数を設定すると使える。 ただ、これはLinuxホストでしか使えないかもしれない…。…