BuildJetを使ってamd64とarm64に対応したコンテナイメージを今までの8倍速く作る

三行まとめ

  • BuildJet が提供するArmマシンを用いてArmで動くイメージを作成する
  • Docker Buildx を用いると複数のイメージに同じタグを貼ることができる
  • Actionsのx86_64マシンでamd64で動くイメージを、BuildJetのArmマシンでarm64で動くイメージをそれぞれ作成してくっつけた
続きを読む

goプログラムのマルチプラットフォームコンテナイメージをちょっと早く作る

3行要約

  • Docker Buildxを使うとステージごとに実行するプラットフォームを変えられる
  • のでビルドはネイティブマシンで実行して、実行するイメージを作るところだけをQEMUを使うと良さそう
  • Goだとクロスコンパイルができるのでネイティブマシンでビルドをすることにした
続きを読む

PythonのパッケージマネージャであるRyeをasdf経由でインストールできるようにプラグインを作った

はじめに

asdfとは

asdf-vm.com

asdf-vmというツールがある。このツールはjenvやrbenvなどのいわゆる**env系のツールを同じインターフェースで使えるツールでRubyPythonのような言語処理系はもちろんneovimなどのツールなども扱うことができる。

このように多種多様なツールが使えるのはプラグインを使ってユーザが自由に拡張できるからであってコミュニティがどんどんプラグインを作成してくれるから*1である。

たくさんのプラグインがあり、それらが統一的に扱えてさらには最新のソフトウェアを入れやすい*2のでUbuntu/Debianのaptのように使っている。

ちなみに存在しているプラグインは次のリポジトリにまとめられている。

github.com

プラグインを作る理由

僕もRyeというPythonのパッケージマネージャをasdf経由でインストールしたくなったのでプラグインを作成することにした。

rye-up.com

*1:記事執筆時点でのプラグインの数は665個ある。

*2:取得元が大元のリポジトリのReleasesであることが多い

続きを読む

Nintendo Switch を買った

ずっと前から買おうと思っていたんだけど踏ん切りが付かなくて買っていなかった。

友人2人とお酒を飲んでいるときに僕を除いた2人がゼルダの伝説の話をし始めて、「お前も買え!」と煽られたので買った。

今日届いて色々初期設定したり軽く遊んだりして初期設定の体験がとても良いと感じた。面倒なパスワード入力はQRコードスマホで読むことでスマホで入力することが出来るし、入力が出来ているかは触覚によってフィードバックされる。

初めてのゲームとしてマリオカート8をプレイしたけど、めちゃくちゃサクサク動くし4KモニタにフルHDを出しているはずなのに何故かキレイに見える。

4万円か、高いな。と思っていたけどこのサクサク感で4万円は安いなと思った。バッテリーでも動く低電力チップでフルHDゲームがサクサク動くのどうして?

総じて満足です。買って良かった。