# Install vlang with Homebrew, apk, MacPorts, Nix, zypper, scoop

V programming language. Version 0.5.1 via Homebrew; verified 2026-07-14. Also installable with nix: nix profile install nixpkgs#vlang.

## Install

```sh
sudo av install brew:vlang
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install vlang
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install vlang
```

  Evidence: MacPorts ports tree: lang/vlang/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add vlang
```

  Evidence: Alpine Linux edge package indexes: vlang from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz

- Nix (92%):

```sh
nix profile install nixpkgs#vlang
```

  Evidence: nixpkgs package indexes: pkgs/by-name/vl/vlang/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- zypper (92%):

```sh
sudo zypper install vlang
```

  Evidence: openSUSE Tumbleweed package metadata: vlang from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

### Windows

- Scoop (92%):

```sh
scoop install main/v
```

  Evidence: Scoop official bucket manifest trees: bucket/v.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:vlang
- **Package manager:** Homebrew
- **Version:** 0.5.1
- **Source summary:** V programming language
- **Homepage:** <https://vlang.io>
- **Repository:** <https://github.com/vlang/v>
- **Last updated:** 2026-07-14T20:07:14+09:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- v (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.5.1
## Project history and usage

V is an open-source compiled programming language and toolchain, commonly packaged as `vlang` to avoid name collisions. The official site describes it as a simple, fast, safe language for maintainable software, with a compiler written in V and a default backend that emits C.

As a package, `vlang` is primarily the `v` executable: compiler, runner, formatter, package workflow entry point, and scripting tool for `.v` and `.vsh` files.

### Project history

V became publicly visible in 2019. A June 22, 2019 GitHub issue by Alexander Medvednikov announced that V had been open sourced and characterized that drop as the first public alpha release, while also warning that parts of the modules were immature and being released for transparency.

The early release drew attention because V promised a Go-like simple syntax, fast compilation, native binaries, safety features, and C interoperability. The official site continues to emphasize simplicity, bounds checking, immutable defaults, option/result error handling, no null in safe code, and cross-domain use from systems programming to web development.

The documentation shows V's pragmatic implementation strategy: the default C backend enables native binaries and C interop, while the language also documents conditional compilation, cross-compilation, JavaScript and native backends, C-to-V translation, and V shell scripting.

### Adoption history

V's adoption has been real but niche compared with mainstream compiled languages. It built an active GitHub project, documentation site, package entries, books and tutorials, and a community around experimenting with a simpler systems-capable language.

The project remains especially visible to language enthusiasts and tooling collectors: people install it to evaluate compiler speed, syntax choices, C interop, cross-compilation, and the idea of a single small tool covering compiling, formatting, running, and scripting.

### How it is used

Users compile and run V programs with the `v` command, write modules with `v.mod`, and can use V for command-line programs, web servers, GUI experiments, scripts, and C interop wrappers. The docs also describe translating C code to V and generating wrappers on top of C libraries.

The `.vsh` scripting mode and single-executable packaging make V attractive for shell-adjacent automation, while the C backend and interop features make it interesting to developers comparing it with Go, Rust, Zig, and C.

### Why package nerds care

`brew:vlang` is notable because language packages are not just libraries; they install a whole compiler culture. The package gives users a quick way to try V's claims about compile speed, simplicity, native binaries, and cross-platform tooling.

It also represents a recurring package-manager pattern: a young language with an ambitious standard tool, active docs, and a versioned compiler can become worth packaging before it becomes mainstream.

### Timeline

- 2019: V emerged publicly as a new compiled language project.
- 2019-06-22: Alexander Medvednikov announced the first public alpha release after open sourcing the repository.
- 2020s: The project continued expanding documentation around safety features, C interop, scripting, conditional compilation, and multiple backends.
- 2026: Official documentation remained actively updated, including pages for C interop and conditional compilation.

### Related projects

- V is commonly compared with Go because of its compact syntax and command-line-centered workflow, and with Rust, Zig, C, Swift, and Oberon-family ideas because of its systems-programming ambitions.
- Its C backend and C translation features make C itself one of V's closest practical neighbors.

### Sources

- batch input source_facts.description and current_curation.tags
- <https://docs.vlang.io/>
- <https://docs.vlang.io/conditional-compilation.html>
- <https://docs.vlang.io/v-and-c.html>
- <https://en.wikipedia.org/wiki/V_(programming_language)>
- <https://github.com/vlang/v/issues/343>
- <https://github.com/vlang/v/releases>
- <https://vlang.io/>


## Security Notes

generalized runtime or code generation signal.

- **Geiger risk:** yellow / medium
- generalized runtime or code generation signal

## Other Package-Manager Records

- Nix - vlang: normalized package name match | nixpkgs package indexes: pkgs/by-name/vl/vlang/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - vlang - 0.4.11-r0: normalized package name match | Alpine Linux edge package indexes: vlang from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Simple, fast, safe, compiled language for developing maintainable software. | https://vlang.io
- zypper - vlang - 0.5.2-1.2: normalized package name match | openSUSE Tumbleweed package metadata: vlang from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | The V Programming Language | https://vlang.io/
- zypper - vlang-examples - 0.5.2-1.2: normalized package name match | openSUSE Tumbleweed package metadata: vlang-examples from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Examples for the V Programming Language | https://vlang.io/
- MacPorts - vlang: normalized package name match | MacPorts ports tree: lang/vlang/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/v: installed executable or alias match | Scoop official bucket manifest trees: bucket/v.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/vlang.yml](https://github.com/mxcl/pkgdb/blob/main/combined/vlang.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
