2024-01-01から1年間の記事一覧
GitHub ActionsではARM64ランナーも公開されつつありますが、ここでは gcc を使ったクロスコンパイルを説明します。この記事ではホスト*1のアーキテクチャを x86_64、ターゲット*2のアーキテクチャを arm64 としていますが、他のターゲットでも同様の手順と…
最近、Goで関数呼び出しを無限に繋げる書き方を気に入っています。文字で書いても伝わらないと思うので実例を挙げると、例えばこういう書き方。 repeat(yield)("しか", 1)("のこ", 3)("こし", 1)("たん", 2) どうやって実現しているのかというと、自身を参照…
小ネタです。以下の記事を読んでいて、 tar(1) はなぜオプション引数にハイフンが不要なのか? 続・tar(1) はなぜオプション引数にハイフンが不要なのか?―tarとkey argumentsの起源を更に辿る なぜ不要なのかは元記事を読んでもらうといいのだけど、ここで…
Goで単体テストを実装する場合、動的な言語のように「テスト実行中に外部への依存を置き換える」といったことはできません。代わりに、 外部への依存を引数で渡す 外部への依存をインターフェイスで渡す のように、テスト対象をテスト可能な実装に変更してお…
前置き 以前、BuildInfoからバージョンを取得する方法を紹介しました。 blog.lufia.org go installで正規の公開されたバージョンをインストールした場合は、以下の出力においてmodの行が示すように、sum.golang.orgでチェックサム等が検証されてバイナリのメ…
2024年2月ごろにSteamクライアントを更新してから、以下のログで停止して起動しなくなっていました。 $ flatpak run com.valvesoftware.Steam ... Steam Runtime Launch Service: starting steam-runtime-launcher-service Steam Runtime Launch Service: st…
Titan Security Keyがパスキーに対応していたようですが、Google Storeの製品ページを見ても、それがパスキー対応したバージョンのTitan Security Keyなのか分からなくて混乱しました*1。ストア上では全部同じ名前でバージョン表記も無いし、国内販売が遅れ…