fastverk-app
fastverk macOS app — menu-bar tray + settings + daemon-aware cred-helper, on the fvkit core
| Latest | 0.0.2 |
|---|---|
| Versions | 2 |
| Category | Modules & tooling |
| Maintainers | Matt Marshall |
| Registry | https://registry.tbzl.dev/modules/fastverk-app/ |
| Source | github.com/fastverk/fastverk-app |
bazel_dep(name = "fastverk-app", version = "0.0.2")
View source & releases on GitHub ↗
[!IMPORTANT] This repository is retired.
fastverk-appis developed in thefastverk/desktopship vehicle, atfastverk-app/. Open issues and pull requests there.The published module is unchanged —
bazel_dep(name = "fastverk-app", version = "0.0.2")resolves exactly as before. This remote keeps its full history and every tag, including theios-v*line, so existing registry entries andgit_overridepins stay valid.Retired at
985a7a0, the commit the vehicle imported — nothing here is unimported. Background: Consolidation.
fastverk-app
The fastverk macOS desktop app and the daemon-aware Bazel credential helper.
Three crates, all gRPC clients of the fvd
daemon, built on the fvkit core library:
fastverk(app/desktop) — the menu-bar app: ataoevent loop hosting atray-icon/mudastatus item. Menu actions talk tofvdover its Unix socket and surface results as macOS notifications.fastverk-settings(app/settings) — theeframe/eguisettings window (Status / Connections / Volumes / Repos / Bazelrc / Maintenance), launched by the tray as a separate process.fastverk-cred-helper(tools/credhelper) — the universal Bazel credential helper. Resolves auth headers for a request host from the connection registry + OS keychain (fvkit::connections), replacing the per-servicegh-cred-helper.sh/glabshell scripts.
tools/macos packages the binaries into a signed .app + .dmg.
Building
Bazel is the primary build:
CARGO_BAZEL_REPIN=1 bazel build //...
bazel test //...
The first build fetches the fvkit
module (v0.0.1) from the fastverk Bazel registry — see .bazelrc.
The fvkit dependency
fvkit is consumed as a Bazel module (@fvkit//app/core:fvkit,
@fvkit//app/daemon:fvd), declared in MODULE.bazel via
bazel_dep(name = "fvkit", version = "0.0.1"). The crate extension uses
from_specs (third-party crates only) rather than from_cargo, so fvkit is
not double-managed across the module boundary — the same pattern wave uses
for forge.
The Cargo workspace’s fvkit = { path = "../fvkit/app/core" } dep is for
cargo / IDE iteration only; it resolves when a sibling ../fvkit checkout is
present next to this repo. Bazel never uses it.
macOS bundle
bazel build //tools/macos:fastverk_dmg # the installer .dmg
bazel build //tools/macos:fastverk_app # just the bundled .app (tar)
These are manual + local (non-hermetic codesign / hdiutil), so the
//... wildcard skips them; build them explicitly.
The
fvCLI (from the fastverk meta-repo) is intentionally not bundled yet — it has no release artifact. See the TODO intools/macos/BUILD.bazel.
Conformance#
2 findings across 2 invariants. 8 contested atoms. See how gating works or the full report.
| version | toolchain |
|---|---|
0.0.2 | @rust_toolchains//:all |
| repo | extension |
|---|---|
crates | @rules_rust//crate_universe:extension.bzl |
Contested atoms
Third-party modules where this module resolves a different version than others do. Not a violation of anything this module did — it is the actionable form of a registry-level convergence finding, and the sentence a maintainer can act on.
| Atom | Resolved here | Elsewhere |
|---|---|---|
apple_support | 1.24.2 | 2.2.0 ×1 |
bazel_skylib | 1.8.2 | 1.9.0 ×2 |
nlohmann_json | 3.6.1 | 3.12.0.bcr.1 ×1 |
protobuf | 33.4 | 34.0.bcr.1 ×2 |
rules_jvm_external | 6.7 | 6.8 ×4 |
rules_python | 1.7.0 | 2.0.1 ×1 |
rules_swift | 3.1.2 | 3.6.1 ×1 |
upb | 0.0.0-20220923-a547704 | 0.0.0-20230516-61a97ef ×1 |
Dependencies#
Depends on
Versions#
2 published versions, newest first. Each resolves to an immutable, integrity-checked archive.
| Version | Integrity (sha256) | Source archive |
|---|---|---|
0.0.2 latest | bgrp6eFT48lTyPz+… | tag archive ↗ |
0.0.1 | tfB4uRwI1TJCNPqA… | tag archive ↗ |