devenv
Maintain local development environment by Nix. Guide
devenv can be used with flakes 通常であればdevenv.nix で定義する option を、devenv.shells.default で定義することになるみたい
flake で使う場合と、devenv cli を使う場合では結構異なることが多い
例えば、flake の場合は devenv.lock とかは存在しない
通常の devShell から減らされている attributes がある
code:shell
???
Process compose を使うことができる
caddy module のソースコード
config と virtualHosts という option に別れているが、結合されて caddyfile にしている
virtualHosts 部分は、caddyfile の Site Block として展開される
virtualHosts option attribute は caddy での site name になる
紛らわしいログあり、、、
server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS
Certificates
.envrc のテンプレート
PostgreSQL
schme の使い方
devenv.nix がプロジェクトルートにあり、同じ階層に devenv.sql がある場合
code:devenv.nix
services.postgres.initialDatabases = [
{
name = "app";
user = "app";
pass = "secret";
schema = ./devenv.sql;
}
];
superuser 権限が欲しい
おそらく PC ユーザー名の User が作られているが、パスワードが不明
initialScript でロールを作成すれば、任意の権限のロールを使うことができる
serices が起動した後に実行するスクリプトなどは process-compose で管理できる
devenv 設定の変更を反映するにはどうしたら良い?
devenv up が起動しない
原因不明な場合がある
direnv allow をやり直したら起動できたことがある
flake pure eval のまま使うための設定