Repository navigation
build: dev environment on devenv (devenv-fleet v0.1.0) - #415
Open
fts-forge[bot] wants to merge 1 commit into
Open
fts-forge[bot] wants to merge 1 commit into
fts-forge[bot] wants to merge 1 commit into
Conversation
The dev shell moves from the flake's devShells to devenv (STA-635, plan §6.2): devenv.nix + devenv.yaml import devenv-fleet v0.1.0's `rust`, `dioxus`, `telemetry` and `darwin` modules, and `.envrc` loads it (`use devenv`, then `dotenv_if_exists .env`). `devenv up` (`just dev`) runs the server on 127.0.0.1:18080, the web app (dx serve) and Teley with its OTLP collector. The flake keeps packaging only: crane builds, the images and nixosModules.task-server (+ task-email-watcher). packages.task-desktop is gone (the release AppImage is the Linux desktop app); so are the shells, prek.nix and cargo-rail.nix, which devenv-fleet now pins. The flake's nixpkgs follows devenv-fleet's, and the rust toolchain comes from devenv-fleet's toolchainFor, so the shell and the hermetic builds share one rustc. x86_64-darwin is dropped (nixpkgs 26.11 has none). CI: checks.yml's Lint, Tests and Wasm run every step in `devenv shell` and assert the pinned rustc with fleet-doctor, on THEBATTLESHIP and on hosted runners (which cache the source-built cargo-rail, dx and wasm-bindgen as a file binary cache keyed on devenv.lock). pr.yml stays on a plain hosted toolchain, with cargo-hakari 0.9.38 (devenv-fleet's; regenerating changed nothing). images.yml builds a tag in its own dev shell: devenv from here on, the flake's shells for older tags. Scripts, the Justfile, the macOS/iOS build scripts, AGENTS.md and the docs now enter `devenv shell` instead of `nix develop`. Co-Authored-By: Claude Code <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
STA-635 (devenv phase 2: Task), plan §6.2 / §8 / §9 / §12. Pilot was architect #259.
What changes
devenv.nix+devenv.yaml(+devenv.lock) import devenv-fleet v0.1.0 (rust,dioxus,telemetry,darwin)..envrc:eval "$(devenv direnvrc)",use devenv, thendotenv_if_exists .env(nodotenv.enable).devenv up(just dev) =server(task-server on 127.0.0.1:18080, health-gated) +web(just css,dx serve) + Teley/OTLP collector (:8787 / :4318).just server=devenv up server.nixosModules.task-server(+ task-email-watcher). Removedpackages.task-desktop,devShells(shells/default.nix,shells/ci.nix),prek.nix,cargo-rail.nix.nixpkgsfollows devenv-fleet's; the toolchain isdevenv-fleet.lib.toolchainFor, so shell and hermetic builds share one rustc. x86_64-darwin dropped (nixpkgs 26.11 has none).checks.ymlLint/Tests/Wasm run every step withshell: devenv shell -- bash -e {0}; setup runsfleet-doctor(fails unless rustc is the pinned store path, so kache entries are shared with local shells).shared-toolsputs the pinned devenv on PATH for every self-hosted job.hosted-nix-rustcaches the source-built tools (cargo-rail, dx, wasm-bindgen) as afile://binary cache keyed ondevenv.lock.images.ymlbuilds in the tag's own shell (devenv if the tag hasdevenv.nix, else the old flake shells, for re-publishing older tags).pr.ymlstays on a plain hosted toolchain; cargo-hakari 0.9.36 → 0.9.38 (devenv-fleet's) —cargo hakari generatereported no changes,manage-depsno operations.ci-local-hook.sh,desktop/linux.sh,node-binary-linux.sh, the macOS/iOS build scripts, the test suites' READMEs/configs, AGENTS.md, skills and docs:nix develop→devenv shell --.just prek-bumpremoved (prek is pinned in devenv-fleet). dx no longer needsenv -u RUSTC_WRAPPER(devenv-fleet's dx setsDX_NO_RUSTC_WRAPPER=1).Companion: Codys-Wright/nix-config#92 drops the THEBATTLESHIP
#task-desktopflake follower (keeps the release AppImage).Local checks (devenv shell, run once)
cargo fmt --all -- --check→ 0actionlint→ 0;shellcheckon the changed scripts: no new findings vs origin/main (the Apple scripts' pre-existing notes/warnings are unchanged, so the commit usedSKIP=shellcheck;.envrcgot ashell=bashdirective and is clean)cargo rail change check --merge-base→change files: ok(no crate changed; no change files)nix flake show --all-systems→ 0;just --listOKfleet-pinsondevenv.yaml/devenv.lock→ matches pins.json (its flake.lock pass errors on a root without arust-overlayinput: a fleet-pins bug, to be fixed in devenv-fleet)just css(generates the gitignoredtailwind.cssthe apps embed, as checks.yml does) → 0, thenCARGO_BUILD_WARNINGS=deny cargo clippy --workspace --all-targets→ 0 (only the pre-existing "patchtaowas not used" note)Known, pre-existing, out of scope: pure crane builds fail to evaluate on origin/main too (stylo git-rev);
apps/tests/playwrightpins@playwright/test1.58.2 while nixpkgs-dx (same rev as before) ships playwright-driver 1.59.1.🤖 Generated with Claude Code