# Install gts with Homebrew, apt, dnf, MacPorts, Nix, pacman, zypper

GNU triangulated surface library. Version 0.7.6 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:gts
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install gts
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install gts
```

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

### Linux

- Debian apt (92%):

```sh
sudo apt install libgts-0.7-5t64
```

  Evidence: Debian stable package indexes: libgts-0.7-5t64 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install gts
```

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

- Nix (92%):

```sh
nix profile install nixpkgs#gts
```

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

- pacman (92%):

```sh
sudo pacman -S gts
```

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

- zypper (92%):

```sh
sudo zypper install gts
```

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

## Package facts

- **Package key:** brew:gts
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/gts>
- **Version:** 0.7.6
- **Source summary:** GNU triangulated surface library
- **Homepage:** <https://gts.sourceforge.net/>
- **Repository:** <https://gerris.dalembert.upmc.fr/darcs/gts-stable>
- **Upstream docs:** <https://gts.sourceforge.net/>
- **License:** LGPL-2.0-or-later
- **Source archive:** <https://downloads.sourceforge.net/project/gts/gts/0.7.6/gts-0.7.6.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- delaunay (cli)
- gts-config (cli)
- gts2dxf (cli)
- gts2oogl (cli)
- gts2stl (cli)
- gtscheck (cli)
- gtscompare (cli)
- gtstemplate (cli)
- happrox (cli)
- stl2gts (cli)
- transform (cli)
- delaunay (alias)
- gts-config (alias)
- gts2dxf (alias)
- gts2oogl (alias)
- gts2stl (alias)
- gtscheck (alias)
- gtscompare (alias)
- gtstemplate (alias)
- happrox (alias)
- stl2gts (alias)
- transform (alias)

## Dependencies

- gettext
- glib
- netpbm

## Build dependencies

- autoconf
- automake
- libtool
- pkgconf

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, monterey, sonoma, ventura, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.7.6
- Local data: ok
- Upstream repository: https://gts.sourceforge.net/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

GTS, the GNU Triangulated Surface Library, is a C library for working with three-dimensional surfaces represented as interconnected triangles. Its package-manager significance comes from a practical mix of computational geometry algorithms, mesh file converters, and Unix-style command-line tools such as `stl2gts`, `gts2stl`, `delaunay`, `gtscheck`, and `happrox`.

### Project history

The GTS web site describes the project as free software under the LGPL and as a C library using an object-oriented design inspired by GTK+. Its initial goal was to give scientists a simple and efficient library for 3D computational surface meshes.

Early public news on the project site in 2000 announced a web site update, examples, and version 0.3.0. The 0.4.0 release in January 2001 reorganized the object hierarchy around points, vertices, segments, edges, triangles, faces, and surfaces; it also rewrote Delaunay triangulation and improved boolean operations and surface coarsening.

The 0.5.1, 0.6.0, and 0.7.x series expanded GTS from a geometry library into a toolkit with converters, validation tools, boolean operations, isosurface extraction, refinement, coarsening, graph operations, and progressive-surface support. Version-control history moved from CVS to darcs in the 0.7.4 cycle, and the site links the darcs repository as the development source.

### Adoption history

GTS was adopted by scientific and graphics projects that needed robust triangulated-surface operations without building a geometry kernel from scratch. The official projects page lists users including MyFon, Mesh Viewer, Gerris Flow Solver, Divipro, Chips, K-3D, and TriAero.

The library also became a durable distribution package: the input metadata records packaging across Homebrew, Debian, Ubuntu, Fedora-family, MacPorts, Nix, Arch, and openSUSE ecosystems. Its command-line converters and `gts-config` helper made it useful both as a library dependency and as a standalone mesh utility package.

### How it is used

Typical GTS usage is split between C programs linking against the library and command-line workflows around mesh conversion and checking. The reference manual covers data structures such as heaps, vectors, object classes, point/vertex/edge/face/surface types, kd-trees, bounding-box trees, boolean operations, simplification, refinement, isosurfaces, Delaunay triangulation, differential geometry operators, and graph partitioning.

Package users encounter GTS through executable tools that convert STL, DXF, and OOGL-like formats, generate Delaunay triangulations, check surface consistency, approximate terrain models, and transform meshes. The installation docs describe a traditional autotools build and a dependency on GLib.

### Why package nerds care

GTS is exactly the kind of library that package maintainers keep around because it is small, old, useful, and embedded in other scientific software. It bridges desktop-era GLib conventions, robust computational geometry, and Unix filters for mesh data, so even users who never write against its C API may depend on it through CAD, visualization, or simulation packages.

For Homebrew-style package culture, GTS is also notable because it ships many tiny executables from one library formula. That makes it useful for quick mesh conversions and for testing whether old scientific build systems can still find a `gts-config` or pkg-config path.

### Timeline

- 2000-02-29: Project site announces examples and a bibliography section.
- 2000-07-24: Version 0.3.0 announced with isosurface computation and memoryless simplification.
- 2001-01-31: Version 0.4.0 reorganizes the object hierarchy and rewrites Delaunay triangulation.
- 2001-11-12: Version 0.5.1 adds `gts-config`, shared/static library builds, graph operations, and out-of-core simplification.
- 2002-06-18: Version 0.6.0 introduces GtsFile error reporting and `gtscheck`.
- 2002-11-08: Version 0.7.0 rewrites boolean operations with Simulation of Simplicity techniques and adds `stl2gts`.
- 2005-10-17: Version 0.7.4 switches the development tree to darcs.
- 2006-03-29: Version 0.7.6 documents Debian snapshot packaging and locale handling fixes.

### Related projects

- The official site links GTS to GLib and GTK+ design conventions, Jonathan Shewchuk's robust predicates, pygts Python bindings, Gerris Flow Solver, K-3D, TriAero, and other mesh or simulation tools. Its command-line tools also make it adjacent to STL processing, Delaunay triangulation utilities, CAD/CAM packages, and scientific visualization stacks.

### Sources

- <https://gerris.dalembert.upmc.fr/darcs/gts-stable>
- <https://gts.sourceforge.net/>
- <https://gts.sourceforge.net/ChangeLog.html>
- <https://gts.sourceforge.net/install.html>
- <https://gts.sourceforge.net/projects.html>
- <https://gts.sourceforge.net/reference/book1.html>


## Security Notes

library-like package without higher-risk signals.

- **Geiger risk:** green / low
- library-like package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** gts
- **Version Scheme:** 0
- **Revision:** 3
- **Conflicts With:** pcb
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - libgts-0.7-5t64 - 0.7.6+darcs121130-5.2+b1: normalized package name match | Debian stable package indexes: libgts-0.7-5t64 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | library to deal with 3D computational surface meshes | http://gts.sourceforge.net/
- Debian apt - libgts-bin - 0.7.6+darcs121130-5.2+b1: normalized package name match | Debian stable package indexes: libgts-bin from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | utility binaries for libgts | http://gts.sourceforge.net/
- Debian apt - libgts-dev - 0.7.6+darcs121130-5.2+b1: normalized package name match | Debian stable package indexes: libgts-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | development files for libgts | http://gts.sourceforge.net/
- Nix - gts: normalized package name match | nixpkgs package indexes: pkgs/by-name/gt/gts/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - libgts-0.7-5t64 - 0.7.6+darcs121130-5.2build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libgts-0.7-5t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | library to deal with 3D computational surface meshes | http://gts.sourceforge.net/
- Ubuntu apt - libgts-bin - 0.7.6+darcs121130-5.2build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libgts-bin from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | utility binaries for libgts | http://gts.sourceforge.net/
- Ubuntu apt - libgts-dev - 0.7.6+darcs121130-5.2build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libgts-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | development files for libgts | http://gts.sourceforge.net/
- dnf - gts - 0.7.6-52.20121130.fc44: normalized package name match | Fedora Rawhide package metadata: gts from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | GNU Triangulated Surface Library | http://gts.sourceforge.net/index.html
- dnf - gts-devel - 0.7.6-52.20121130.fc44: normalized package name match | Fedora Rawhide package metadata: gts-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for gts | http://gts.sourceforge.net/index.html
- pacman - gts - 0.7.6.121130-5: normalized package name match | Arch Linux sync databases: gts from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Provides useful functions to deal with 3D surfaces meshed with interconnected triangles | http://gts.sourceforge.net/
- zypper - gts - 0.7.6_p20121130-4.41: normalized package name match | openSUSE Tumbleweed package metadata: gts from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | GNU Triangulated Surface Library (GTS) | http://gts.sourceforge.net/
- zypper - gts-devel - 0.7.6_p20121130-4.41: normalized package name match | openSUSE Tumbleweed package metadata: gts-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Development files and documentation for GTS | http://gts.sourceforge.net/
- zypper - libgts-0_7-5 - 0.7.6_p20121130-4.41: normalized package name match | openSUSE Tumbleweed package metadata: libgts-0_7-5 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | GTS Runtime Library | http://gts.sourceforge.net/
- MacPorts - gts: normalized package name match | MacPorts ports tree: math/gts/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Scientific computing packages](https://www.automicvault.com/pkg/scientific-computing-tools/) - Matched scientific computing metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [gettext](https://www.automicvault.com/pkg/brew/gettext/) - Runtime dependency declared by Homebrew.
- [glib](https://www.automicvault.com/pkg/brew/glib/) - Runtime dependency declared by Homebrew.
- [netpbm](https://www.automicvault.com/pkg/brew/netpbm/) - Runtime dependency declared by Homebrew.
- [autoconf](https://www.automicvault.com/pkg/brew/autoconf/) - Build dependency declared by Homebrew.
- [automake](https://www.automicvault.com/pkg/brew/automake/) - Build dependency declared by Homebrew.
- [libtool](https://www.automicvault.com/pkg/brew/libtool/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [graphviz](https://www.automicvault.com/pkg/brew/graphviz/) - Popular package that depends on this formula.
- [geogram](https://www.automicvault.com/pkg/brew/geogram/) - Shares av.db curated category or tags: cli, computational-geometry, mesh, science.
- [cddlib](https://www.automicvault.com/pkg/brew/cddlib/) - Shares av.db curated category or tags: c-library, cli, computational-geometry, science.
- [qhull](https://www.automicvault.com/pkg/brew/qhull/) - Shares av.db curated category or tags: cli, computational-geometry, science.
- [sfcgal](https://www.automicvault.com/pkg/brew/sfcgal/) - Shares av.db curated category or tags: cli, computational-geometry, science.
- [voro++](https://www.automicvault.com/pkg/brew/voro/) - Shares av.db curated category or tags: cli, computational-geometry, science.
- [libgr](https://www.automicvault.com/pkg/brew/libgr/) - Shares av.db curated category or tags: 3d, c-library, cli, science.
- [abpoa](https://www.automicvault.com/pkg/brew/abpoa/) - Shares av.db curated category or tags: c-library, cli, science.
- [admesh](https://www.automicvault.com/pkg/brew/admesh/) - Shares av.db curated category or tags: cli, mesh, science.
- [gts](https://www.automicvault.com/pkg/npm/gts/) - Same normalized package name appears in another local ecosystem. Shared terms: config, gts.
- [gts](https://www.automicvault.com/pkg/npm/gts/) - Same normalized package name in another local ecosystem.

## Combined YAML source

View the package source record on GitHub. [combined/gts.yml](https://github.com/automic-vault/db/blob/main/combined/gts.yml)


## Sources

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