# Install ty with Homebrew, apk, dnf, Nix, pacman, scoop, winget, zypper

Extremely fast Python type checker, written in Rust. Version 0.0.65 via Homebrew; verified 2026-07-30. Also installable with nix: nix profile install nixpkgs#ty.

## Install

```sh
sudo av install brew:ty
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install ty
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add ty
```

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

- dnf (92%):

```sh
sudo dnf install ty
```

  Evidence: Fedora Rawhide package metadata: ty from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#ty
```

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

- pacman (92%):

```sh
sudo pacman -S ty
```

  Evidence: Arch Linux sync databases: ty from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install python313-ty
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/ty
```

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

- winget (92%):

```sh
winget install --id astral-sh.ty -e
```

  Evidence: Windows Package Manager source index: astral-sh.ty from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:ty
- **Package manager:** Homebrew
- **Version:** 0.0.65
- **Source summary:** Extremely fast Python type checker, written in Rust
- **Homepage:** <https://docs.astral.sh/ty/>
- **Repository:** <https://github.com/astral-sh/ty>
- **Last updated:** 2026-07-30T19:13:13Z
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- ty (alias)

## Install behavior

- Bottle: not available

## Freshness

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

ty is Astral's Rust-written Python type checker and language server. Astral presents it as the next tool in the same high-performance Python developer-tooling line as Ruff and uv.

### Project history

Astral announced ty as a beta type checker and language server after building a reputation around fast Python tooling. The official README states that ty is in beta, uses 0.0.x versioning, and does not yet promise a stable API, so its history is still early and deliberately pre-1.0.

The project is developed in close relationship with Ruff: the README says development currently takes place in the Ruff repository for changes to the Rust source contained in its submodule.

### Adoption history

Astral positions ty as an alternative to mypy, Pyright, and Pylance, emphasizing speed, gradual adoption, editor features, and support for partially typed code. The docs and README highlight editor integrations for VS Code, PyCharm, Neovim, and other LSP-capable clients.

The Homebrew formula's presence alongside packages in apk, dnf, Nix, Arch, Scoop, Winget, and zypper reflects rapid package-manager adoption typical of Astral tools, even while ty remains beta.

### How it is used

Package users run `ty check` from the CLI or use ty as a language server in editors. The README recommends `uvx ty check` for quick use, while the documentation covers installation, configuration, diagnostics, suppression comments, project support, and editor setup.

### Why package nerds care

ty matters in the package-manager niche because it extends the modern Rust-for-Python-tooling pattern from Ruff and uv into static typing. For maintainers, it is another fast single-command tool that can be wired into editors, CI, pre-commit workflows, and distro packages without a bespoke Python runtime story.

### Timeline

- 2025: Astral announced ty as a beta Python type checker and language server.
- 2025-2026: Official docs described CLI, language-server, configuration, rule, and editor-integration workflows.
- 2026: The Homebrew formula lists ty with broader cross-platform package-manager coverage.

### Related projects

- Related projects include Ruff, uv, mypy, Pyright, Pylance, Pyre, and Python editor integrations that consume language-server features.

### Sources

- <https://astral.sh/blog/ty>
- <https://docs.astral.sh/ty/>
- <https://docs.astral.sh/ty/features/language-server/>
- <https://github.com/astral-sh/ty#readme>
- source_facts.package-manager


## Security Notes

No matching local secret-handling manifest was found for ty. Nucleus package metadata is still published here so future coverage has a stable package URL.



## 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

- Unix: pyproject.toml, ty.toml, ~/.config/ty/ty.toml, $XDG_CONFIG_HOME/ty/ty.toml
- Windows: pyproject.toml, ty.toml, %APPDATA%\ty\ty.toml
## Other Package-Manager Records

- Nix - ty: normalized package name match | nixpkgs package indexes: pkgs/by-name/ty/ty/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - ty - 0.0.63-r0: normalized package name match | Alpine Linux edge package indexes: ty from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Extremely fast Python type checker | https://github.com/astral-sh/ty
- apk - ty-bash-completion - 0.0.63-r0: normalized package name match | Alpine Linux edge package indexes: ty-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Bash completions for ty | https://github.com/astral-sh/ty
- apk - ty-fish-completion - 0.0.63-r0: normalized package name match | Alpine Linux edge package indexes: ty-fish-completion from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Fish completions for ty | https://github.com/astral-sh/ty
- apk - ty-pyc - 0.0.63-r0: normalized package name match | Alpine Linux edge package indexes: ty-pyc from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Precompiled Python bytecode for ty | https://github.com/astral-sh/ty
- apk - ty-zsh-completion - 0.0.63-r0: normalized package name match | Alpine Linux edge package indexes: ty-zsh-completion from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Zsh completions for ty | https://github.com/astral-sh/ty
- dnf - python3-ty - 0.0.58-2.fc45: normalized package name match | Fedora Rawhide package metadata: python3-ty from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Importable Python module for ty | https://github.com/astral-sh/ty
- dnf - ty - 0.0.58-2.fc45: normalized package name match | Fedora Rawhide package metadata: ty from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Extremely fast Python type checker and language server | https://github.com/astral-sh/ty
- pacman - ty - 0.0.65-1: normalized package name match | Arch Linux sync databases: ty from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Extremely fast Python type checker and language server, written in Rust | https://github.com/astral-sh/ty
- zypper - python313-ty - 0.0.56-1.2: normalized package name match | openSUSE Tumbleweed package metadata: python313-ty from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | An extremely fast Python type checker and language server, written in Rust | https://github.com/astral-sh/ty
- zypper - python314-ty - 0.0.56-1.2: normalized package name match | openSUSE Tumbleweed package metadata: python314-ty from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | An extremely fast Python type checker and language server, written in Rust | https://github.com/astral-sh/ty
- Scoop - main/ty: normalized package name match | Scoop official bucket manifest trees: bucket/ty.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
- winget - astral-sh.ty: normalized package name match | Windows Package Manager source index: astral-sh.ty from https://cdn.winget.microsoft.com/cache/source.msix


## Combined YAML source

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


## Sources

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