Automic VaultAutomic Vault

brew

Install fvm with Homebrew, chocolatey, MacPorts, Nix, pacman, scoop

Manage Flutter SDK versions per project. Version 4.1.2 via Homebrew; verified 2026-06-25.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install fvm

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install fvm

MacPorts ports tree · devel/fvm/Portfile · source: api.github.com

overview

Package summary

Manage Flutter SDK versions per project

Commands and aliases

  • fvm

history

Project history and usage

FVM is a Dart CLI for managing Flutter SDK versions per project. It fills the same role in Flutter workflows that tools such as rbenv, pyenv, nvm, or asdf fill for other language runtimes: pin a toolchain in project metadata and route developer commands through the selected SDK.

Project history

The public GitHub repository was created in February 2019, and the package appeared on pub.dev in October 2019. The project describes itself as Flutter Version Management and documents the problem it addresses as the need to use multiple Flutter SDKs, avoid slow channel switching, and keep team environments consistent.

By the 3.x series, FVM had moved its project configuration to a `.fvmrc` file, while keeping `.fvm/fvm_config.json` as a deprecated compatibility file. Later 4.x releases added stronger support for custom or forked Flutter SDK repositories, Melos integration, standalone executables, release automation, and more efficient git cache handling.

Adoption history

FVM is distributed as a Dart package and as prebuilt or package-manager installs. The upstream README notes release automation to pub.dev, GitHub binaries, Homebrew, Chocolatey, and Docker, which made it available both to Flutter developers already using Dart tooling and to developers who prefer system package managers.

The project also links to Flutter Sidekick, a related graphical companion from the same author, reflecting the split between a scriptable CLI for CI and project work and a friendlier desktop surface for some users.

How it is used

Typical usage is to run `fvm use` in a Flutter project, commit the `.fvmrc` file, and invoke `fvm flutter` or `fvm dart` so commands run against the configured SDK. Official docs describe `.fvmrc` as the project config file and `.fvm/flutter_sdk` as the project symlink to the cached SDK.

For package maintainers, FVM is notable because it coordinates a language runtime, project-local metadata, IDE settings, shell commands, and CI behavior without replacing Flutter itself.

Why package nerds care

FVM is a clean example of a language-specific version manager becoming packaging infrastructure. Its value is not the Flutter SDK download alone, but the reproducible handoff between a project's version file, developer shell commands, IDE configuration, and automated builds.

The 3.x and 4.x changelog entries are especially interesting for package maintainers because they document migration pressure around config files, git cache size, forked SDKs, prebuilt binaries, and package-manager deployment.

Timeline

  • 2019: Public GitHub repository created.
  • 2019: Package first published on pub.dev.
  • 2020: 1.x releases published on GitHub.
  • 2023: 3.x series uses `.fvmrc` while keeping legacy `.fvm/fvm_config.json` compatibility.
  • 2025: 4.0.0 adds custom or forked Flutter SDK repository support and Melos integration.
  • 2026: 4.1.x releases focus on safer CI behavior and leaner git cache handling.

Related projects

  • FVM manages the Flutter SDK and Dart tooling rather than replacing them.
  • Flutter Sidekick is a related GUI project linked from the FVM README.
  • Melos integration matters for Dart and Flutter monorepos.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.

Configuration files

Config paths the tool may read or write during local use.

Unix
.fvmrc

executables

Installed executables

CommandKindExposureNote
fvmcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version4.1.2
manager updated2026-06-25
local dataok
upstreamcurrent
latest detected4.1.2

https://github.com/leoafarias/fvm

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:fvm
Version4.1.2
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/fvm
Homepagehttps://fvm.app
Repositoryhttps://github.com/leoafarias/fvm
Upstream docshttps://fvm.app/documentation/getting-started/installation
LicenseMIT
Source archivehttps://github.com/leoafarias/fvm/archive/refs/tags/4.1.2.tar.gz
Last updated2026-06-25T18:45:55Z
Pulseupdated
Dependenciesdartaotruntime
Build dependenciesdart-sdk
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namefvm
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

fvm

nix profile install nixpkgs#fvm
  • normalized package name match
  • Matched by: Fvm
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/fv/fvm/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
pacman95%

fvm 4.1.0-1

Flutter Version Management: A simple CLI to manage Flutter SDK versions.

https://fvm.app

sudo pacman -S fvm
  • License: MIT
  • Architecture: x86_64
  • 3 dependencies
  • normalized package name match
  • Matched by: Fvm
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: fvm from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
MacPorts95%

fvm

sudo port install fvm
  • normalized package name match
  • Matched by: Fvm
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/fvm/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Chocolatey95%

fvm

choco install fvm
  • normalized package name match
  • Matched by: Fvm
Chocolatey community package catalog · community.chocolatey.org · Chocolatey community package catalog: fvm from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','flow-launcher'
Scoop95%

extras/fvm

scoop install extras/fvm
  • normalized package name match
  • Matched by: Fvm
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/fvm.json from https://api.github.com/repos/ScoopInstaller/Extras/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated configuration and credential file locations
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment