直近5記事

NixOSでWindowsとデュアルブートするならgrubを使うべき

背景 最近NixOSに移行しました。 まずラップトップPCに修理から帰ってきた後にNixOSをインストールして、その後デスクトップPCのネイティブGNU/Linux環境もNixOSにしました。 ラップトップPCのデュアルブート インストールする前に環境を記述したときはgrubを使うように設定していました。これは移行前のGentooではgrubを使っていたためです。しかしインストール時にエラーが起きたので、 Claudeに聞いてみたらsystemd-bootを使うことが推奨されました。 systemd-

haskell.nixでテストが無いパッケージもnix flake checkでチェックする

背景 前回、 haskell.nixでのプロジェクト環境でnix flake checkでPostgreSQLへのアクセスを含むテストを実行する方法 - ncaq でテストの実行環境をnix flake checkに統一しました。そうしたら20分ぐらいかかることもあるCIの実行時間をキャッシュが存分に効いているときは4分ぐらいに短縮される嬉しい結果を得ました。 しかしその後問題が起きて、 cabal buildではエラーになるのに、 nix flake checkではエラーにならないという現象が発生しまし

:
haskell.nixでのプロジェクト環境でnix flake checkでPostgreSQLへのアクセスを含むテストを実行する方法

背景 最近はNix Flakeで、 input-output-hk/haskell.nix: Alternative Haskell Infrastructure for Nixpkgs を使ってHaskellプロジェクトの環境構築を行っています。 問題 CIの実行が遅いし定義が複雑なことに悩まされています。 Cachix - Nix binary cache hosting は会社のお金で契約しているのですが、純粋にダウンロードが多すぎます。 なぜ多くなってしまうのかと言うと、 haskell.ni

Emacsのexec-path-from-shellがNixのPATHだけ引き継いでくれない問題の解決

背景 Nixパッケージマネージャが便利なので、 GentooからNixOSに移行することを考えていますが、まずhome-managerでdotfilesを管理するところからやるべきだと思っていたりするため、なまじNixパッケージマネージャだけでも仕事が出来てしまうので移行が進まない。 前からWSLのUbuntuにはNixパッケージマネージャを入れていますが、ちょっとインストールしたいソフトウェアがあったけどPortageに存在しなかったので、 GentooのLinuxデスクトップの方にもNixパッケージマ

GHCのAPIを使う時はなるべくghcではなくghc-lib-parserに依存した方が良い

前提 Haskellでちょっとしたハックを行う時、 GHCのAPIを使いたいことがあります。 その時にghc: The GHC APIを使ってしまうことがあるようです。 しかしなるべくghc-lib-parser: The GHC API, decoupled from GHC versionsを使った方が良いでしょう。それだけでは足りない場合もghc-lib: The GHC API, decoupled from GHC versionsを追加で使った方が良いです。 その理由を説明します。 問題

年度別記事一覧

    2025年 2024年 2023年 2022年 2021年 2020年 2019年 2018年 2017年 2016年