• 2025-01-23の日報

    2025年1月23日

    Rust(ESP32) x Nix

    RustのESP32環境をNixで整えようと頑張っていた。

    svelterust/esp32が古い問題は自分のforkで毎日Nixを更新する変更を加えたので解決した。

    この際nvfetcherを使おうとしたのだけど、Dockerまわりの処理が壊れていて1時前でなんとかすることにした。

    Nix式の生成はnixpkgsにnix-prefetch-dockerという便利な代物があったので それでJSONを吐かせた後、予め用意しておいたNix式が書かれたteraのテンプレをtera-cliを使って有効なNix式を生成するという方法を取っている。

    やり方は概ねnvfetcherだし、生成するNix式もそれを使うNix式もnvfetcherを参考にしたので、実質nvfetcher。 自分のdotfilesも未だnvfetcherに対応させてないので、そのあたりも対応させて自動化を進めていたい。

    あとRust(ESP32)をNixで構築するのが普通にキツくなってきたので、諦めてespupに委ねようかと思い始めた。

    明日以降やりたいこと

    RustでESP32やるよりNimの方がCの資産を有効に使えて、Nixでも扱いやすくて良いんじゃないかと思い始めた。 Rust以外の方法も考えていきたい。(でもCは使いたくないのでギリギリまで粘るつもり)

    Nixで管理できるメリットを優先するか、言語を優先するかはかなり悩ましい...

    脚注

    1. https://github.com/berberman/nvfetcher/issues/131 ↩︎


    ko-fi ☕GitHub Sponsors 🐙