ぶていのログでぶログ

思い出したが吉日

Linuxデスクトップでデフォルトブラウザを確認/変更する

rustup doc --std したときにうまくFirefoxが起動せず別のアプリが起動してしてしまった。 こういう場合以下のコマンドを打つと、Firefoxに変更できる。 ❯ xdg-mime query default text/html ferdi.desktop text/htmlを開くのにferdiが選択されている Firef…

#isucon 11にチーム大和田純愛組で参加してきた

ISUCON11に @pyama86 と @osamtimizer と3人で参加した。 ベストスコアはリーダーボード上で15977。その後ポータル上で記録はされなくなたけど、@pyama86がRedisでのキャッシュを入れたのが反映されて16128になっていた。 感想 12:00くらいにGET /api/trend…

starship+asdfでプロンプトの表示が遅くなるのを改善する

タイトルの通り。 promptのカスタマイズにはstarshipを使っていて*1、バージョン管理にはasdfを使うようにここ最近変更した。 それぞれ特に不満なく使っていたのだが、あるときからリポジトリ内でのプロンプトの表示が遅いというのに気がついてしまった。 st…

作業PCをsystemd-resolvedとdnsmasqの多段構成にした

私の使っている作業用Linuxデスクトップで、DNSリゾルバはdnsqmasqに変えたという記事を書いた。 tech.buty4649.net この変更はうまく行ってこの状態で運用していたのだが、PCの更新によりクリーンインストールした結果、元の状態(systemd-resolvedを使って…

reddish-shell v0.10.0 開発進捗 | mruby3.0対応, GithubActionsの設定, READMEのアップデート

v0.9.0のアップデートから1日くらいしか経っていないけどmruby3.0に対応したので新バージョンリリース。 commit一覧: 7e9242c v0.10.0 e5ef68b Merge pull request #3 from buty4649/readme e03874d Add notes on using iruby. 0319149 Update README.md 373…

reddish-shell v0.9.0 開発進捗 | 内蔵Rubyコマンド/break,continueの実装/for文の追加/シグナルハンドラーの見直し | mruby3.0対応の予定

reddish-shellのバージョンアップ報告。 粛々と開発つづけてきて、やっと普通のシェルくらいの機能にはなってきたかな?しかし、まだ実用までは長い。。 今回は特にシグナルハンドリング周りがとても大変だった…。 commit一覧 ba37780 Include all core gems…

reddish-shell v0.8.0 開発進捗 / 複数行サポート,バグ修正,コマンド補完,コマンド置換,while/until文の追加

前回から間が空いてしまったが久しぶりのバージョンアップ。 間が空いてしまったのは、あまりいい実装案が思いつかなかったのが原因。ooo このままだ、ズルズル開発が止まってしまうと思ったので、一旦実装したいやつを後回しにしてできるところから作ってい…

(Linux) ブート時の暗号ドライブの解除キー入力を1回にする

私の今の環境は、rootパーティションとswapパーティションの2つを暗号化している。 そうすると、起動時に解除キーの入力を2回若干煩わしい。 いい感じに回避する方法がないか検索したら、以下のサイトがヒットした。 unix.stackexchange.com keyscript=decry…

forkしたリポジトリをupstreamに追随させるのにhub syncを使ったら便利だった

git

forkしたリポジトリをupstreamに追随させるみたいなことを、稀によくするのだけどその都度Googleで「github fork upstream 追随」みたいなキーワードで検索して実行していた。 しかしあるときふと、hubコマンドのsyncオプションを見つけてこれを試してみたら…

reddish-shell v0.7.0 開発進捗 / hisotryの有効化とthenの省略と$IFSの見直し

前回、if文におけるthenキーワードを省略できないと書いたが、画期的なアイディアをひらめいて解決したので嬉しくなってバージョンアップした。 そして、この記事を書いている途中でunless文のthenを省略できるようにすることを失念したことに気がついた…。 …

reddish-shell v0.6.0 開発進捗 | parser/lexerの見直しとif文/unless文の追加

期限のあるなにかに迫られていると、別のことが捗るわけでreddish-shell v0.6.0になった。 一区切りついたので、もう1つの進捗も上がるだろうたぶん・・・ commit一覧 * f4d5f0a Improve parser * 69a3c3c Improve lexer * 33e0a64 Add if statement * ced3…

reddish-shell v0.5.0 開発進捗

前回のアップデートからかなり時間が空いてしまったので、最近またちょいちょい触り始めている。 ある程度変更が溜まった、というかブログを書いたほうがモチベーションが上がりそうなのでバージョンをあげてみた。 今後も、ある程度変更が溜まったらバージ…

Terraformでlifecycleをoverrideする方法を考えた

こんにちは、最近Terraformデビューしました。 社内の人々がTerraformに苦しんでいたのをみてなんとなく敬遠していたのだけど、そうも言ってられなくデビューしたところうひょーーー!楽しい!!!ってなっている今日この頃。 lifecycleを動的に変更したい …

Alacritty v0.5.0にアップデートとdebファイルを作った

Alacritty v0.5.0がリリースされていた。 github.com いつもならまっさきにインストールするところなのだけど、本バージョンからLinux/BSD用のprebuildバイナリの配布が行われなくなってしまった。。。しょぼーん。 提供されなくなってしまったのはしょうが…

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ホストでしか使えないかもしれない…。…

tmuxでマルチプレフィックスのキーバインドを定義する

最近、久しぶりにtmux.confを見直しを行っていたら新機能を色々増えている!*1 ということで、色々眺めている中で特に気になったのはレイアウト機能でした。 例えばペインを分割したりしているとペイン感の高さがまちまちになって作業がしづらい…みたいなこ…