{ pkgs, ... }: let dagger = pkgs.callPackage ./nix-bin/dagger.nix { }; tang = pkgs.callPackage ./nix-bin/tangled-cli.nix { }; devenvSummary = pkgs.callPackage ./devenv.custom-code.nix { }; in { imports = [ ./devenv.cachix.nix ./devenv.coding-agents.nix ]; # https://devenv.sh/packages/ packages = [ pkgs.docker-buildx # BuildKit builder for CI image builds pkgs.docker-compose # used by application dagger # dagger CLI dev build (until 1.0) tang # tangled.org cli ]; # https://devenv.sh/basics/ enterShell = devenvSummary { title = "RSSBase devenv:"; rows = [ { pkg = pkgs.docker-buildx; } { pkg = pkgs.docker-compose; } { pkg = dagger; } { pkg = tang; } ]; }; scripts.php.exec = '' app_dir="$DEVENV_ROOT/application" docker compose --project-directory "$app_dir" -f "$app_dir/compose.yaml" -f "$app_dir/compose.override.yaml" exec php php "$@" ''; scripts.composer.exec = '' app_dir="$DEVENV_ROOT/application" docker compose --project-directory "$app_dir" -f "$app_dir/compose.yaml" -f "$app_dir/compose.override.yaml" exec php composer "$@" ''; languages.nix.enable = true; # https://app.cachix.org/cache/rssbase#pull cachix.pull = [ "rssbase" ]; # See full reference at https://devenv.sh/reference/options/ }