# Install jimtcl with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

Small footprint implementation of Tcl. Version 0.83 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:jimtcl
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install jimtcl
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install jimtcl
```

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

### Linux

- apk (92%):

```sh
sudo apk add jimtcl
```

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

- Debian apt (92%):

```sh
sudo apt install jimsh
```

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

- dnf (92%):

```sh
sudo dnf install jimtcl
```

  Evidence: Fedora Rawhide package metadata: jimtcl 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#jimtcl
```

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

- pacman (92%):

```sh
sudo pacman -S jimtcl
```

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

- zypper (92%):

```sh
sudo zypper install jimtcl
```

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

## Package facts

- **Package key:** brew:jimtcl
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/jimtcl>
- **Version:** 0.83
- **Source summary:** Small footprint implementation of Tcl
- **Homepage:** <https://jim.tcl.tk/index.html>
- **Repository:** <https://github.com/msteveb/jimtcl>
- **Upstream docs:** <https://jim.tcl-lang.org/home/doc/trunk/jim_tcl.txt>
- **License:** BSD-2-Clause
- **Source archive:** <https://github.com/msteveb/jimtcl/archive/refs/tags/0.83.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- build-jim-ext (cli)
- jimdb (cli)
- jimsh (cli)
- build-jim-ext (alias)
- jimdb (alias)
- jimsh (alias)

## Dependencies

- openssl@3
- readline

## Uses from macOS

- sqlite

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.83
- Local data: ok
- Upstream repository: https://github.com/msteveb/jimtcl
- Upstream latest detected: 0.83 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

Jim Tcl is a small-footprint implementation of Tcl intended for embedding, standalone scripting through `jimsh`, and systems where the full Tcl distribution is too large. Its manual describes a Tcl 8.5-compatible core with many Tcl 8.6 commands, optional modules, object-based I/O, sockets, integer, dict, and operating-system features.

### Project history

Jim Tcl began in January 2005 as Salvatore Sanfilippo's experiment in hacking on Tcl. The project README says that after about a month it could run simple scripts, and after about two months it had grown beyond a disposable toy into a candidate real interpreter, with early contributions from Pat Thoyts and Clemens Hintze.

The project later developed into an embeddable interpreter with optional extensions, a modular build, and the `jimsh` command shell. Its copyright and maintainer notes show a wider contributor base by 2008 and Steve Bennett as maintainer, while the release stream and reference manual show continuing work through the 0.8x series.

### Adoption history

Jim Tcl's most visible adoption came from embedded and systems tooling. OpenOCD documents that it uses Jim Tcl as its command interpreter, that OpenOCD configuration scripts are Jim Tcl scripts, and that OpenOCD commands extend Jim Tcl. That made Jim Tcl part of the toolchain used by developers working with on-chip debugging and microcontroller boards.

### How it is used

Jim Tcl can be linked into applications with `cc <source> -ljim`, used interactively with `jimsh`, or used to run Tcl scripts from files, standard input, or `jimsh -e`. The README frames its use cases as scriptable applications, embedded systems, configuration-file-like syntax, and a compact Tcl implementation that can be shipped inside another program.

### Why package nerds care

Jim Tcl is package-nerd catnip because it is a language runtime small enough to show up as both an application dependency and a standalone shell. It explains why some packages depend on `jimsh` or `jimtcl` rather than full Tcl: the value is a Tcl-like extension language in roughly hundreds of kilobytes, with feature selection controlled at build time.

### Timeline

- 2005: Salvatore Sanfilippo started Jim Tcl in the first days of January; early contributors helped turn it into a beta-stage interpreter.
- 2008: Steve Bennett appears among project copyright holders and maintainer contacts in the README.
- 2023: Release 0.82 continued the 0.8x series with changes such as `try` traps, `aio stat`, async sockets, and richer frame support.
- 2024: Release 0.83 added changes including multi-level `break` and `continue`, fuller stack traces, `lsort -dict`, and additional I/O improvements.
- 2024: The reference manual identifies Jim Tcl v0.83+ and documents a Tcl 8.5+ compatible core plus selected Tcl 8.6 features.

### Related projects

- Jim Tcl is directly related to Tcl, Tcl 8.5, Tcl 8.6, and the embeddable-language tradition represented by Lua and Guile. In packaging graphs it is also tied to OpenOCD, which uses Jim Tcl scripts and command extensions for debugger configuration.

### Sources

- <https://api.github.com/repos/msteveb/jimtcl/releases?per_page=100>
- <https://github.com/msteveb/jimtcl>
- <https://jim.tcl-lang.org/home/doc/trunk/jim_tcl.txt>
- <https://jim.tcl.tk/>
- <https://openocd.org/doc/html/About-Jim-Tcl.html>
- <https://raw.githubusercontent.com/msteveb/jimtcl/master/README>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** jimtcl
- **Version Scheme:** 0
- **Revision:** 0
- **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 - jimsh - 0.83-2: normalized package name match | Debian stable package indexes: jimsh from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | small-footprint implementation of Tcl named Jim | http://jim.tcl.tk/
- Debian apt - libjim-dev - 0.83-2: normalized package name match | Debian stable package indexes: libjim-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | small-footprint implementation of Tcl - development files | http://jim.tcl.tk/
- Debian apt - libjim0.83 - 0.83-2: normalized package name match | Debian stable package indexes: libjim0.83 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | small-footprint implementation of Tcl - shared library | http://jim.tcl.tk/
- Nix - jimtcl: normalized package name match | nixpkgs package indexes: pkgs/by-name/ji/jimtcl/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - jimsh - 0.82-4.1build2: normalized package name match | Ubuntu 24.04 LTS package indexes: jimsh from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | small-footprint implementation of Tcl named Jim | http://jim.tcl.tk/
- Ubuntu apt - libjim-dev - 0.82-4.1build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libjim-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | small-footprint implementation of Tcl - development files | http://jim.tcl.tk/
- Ubuntu apt - libjim0.82t64 - 0.82-4.1build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libjim0.82t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | small-footprint implementation of Tcl - shared library | http://jim.tcl.tk/
- apk - jimtcl - 0.83-r0: normalized package name match | Alpine Linux edge package indexes: jimtcl from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | An open-source, small footprint implementation of Tcl | https://github.com/msteveb/jimtcl
- apk - jimtcl-dbg - 0.83-r0: normalized package name match | Alpine Linux edge package indexes: jimtcl-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | An open-source, small footprint implementation of Tcl (debug symbols) | https://github.com/msteveb/jimtcl
- apk - jimtcl-dev - 0.83-r0: normalized package name match | Alpine Linux edge package indexes: jimtcl-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | An open-source, small footprint implementation of Tcl (development files) | https://github.com/msteveb/jimtcl
- apk - jimtcl-doc - 0.83-r0: normalized package name match | Alpine Linux edge package indexes: jimtcl-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | An open-source, small footprint implementation of Tcl (documentation) | https://github.com/msteveb/jimtcl
- apk - jimtcl-readline - 0.83-r0: normalized package name match | Alpine Linux edge package indexes: jimtcl-readline from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Interface to readline and Tcl wrapper for Jim Tcl | https://github.com/msteveb/jimtcl
- apk - jimtcl-sqlite3 - 0.83-r0: normalized package name match | Alpine Linux edge package indexes: jimtcl-sqlite3 from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Interface to sqlite3 for Jim Tcl | https://github.com/msteveb/jimtcl
- dnf - jimtcl - 0.83-4.fc44: normalized package name match | Fedora Rawhide package metadata: jimtcl from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | A small embeddable Tcl interpreter | http://jim.tcl.tk
- dnf - jimtcl-devel - 0.83-4.fc44: normalized package name match | Fedora Rawhide package metadata: jimtcl-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for jimtcl | http://jim.tcl.tk
- pacman - jimtcl - 0.83-3: normalized package name match | Arch Linux sync databases: jimtcl from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A small footprint implementation of Tcl | https://jim.tcl-lang.org/home/doc/www/www/index.html


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Web development packages](https://www.automicvault.com/pkg/web-dev-tools/) - Matched web development metadata.
- [openssl@3](https://www.automicvault.com/pkg/brew/openssl-3/) - Runtime dependency declared by Homebrew.
- [rhai](https://www.automicvault.com/pkg/brew/rhai/) - Shares av.db curated category or tags: cli, embedded, language-runtime, scripting-language.
- [chaiscript](https://www.automicvault.com/pkg/brew/chaiscript/) - Shares av.db curated category or tags: cli, language-runtime, scripting-language.
- [cbmbasic](https://www.automicvault.com/pkg/brew/cbmbasic/) - Shares av.db curated category or tags: cli, interpreter, language-runtime, scripting-language.
- [mruby](https://www.automicvault.com/pkg/brew/mruby/) - Shares av.db curated category or tags: cli, embedded, interpreter, language-runtime.
- [mujs](https://www.automicvault.com/pkg/brew/mujs/) - Shares av.db curated category or tags: cli, embedded, interpreter, language-runtime.
- [newlisp](https://www.automicvault.com/pkg/brew/newlisp/) - Shares av.db curated category or tags: cli, interpreter, language-runtime, scripting-language.
- [picoc](https://www.automicvault.com/pkg/brew/picoc/) - Shares av.db curated category or tags: cli, embedded, interpreter, language-runtime.
- [rad](https://www.automicvault.com/pkg/brew/rad/) - Shares av.db curated category or tags: cli, language-runtime, scripting-language.
- [pypy](https://www.automicvault.com/pkg/brew/pypy/) - Local package facts share a topical domain. Shared terms: cli, implementation, interpreter, language, language-runtime.
- [pypy3.10](https://www.automicvault.com/pkg/brew/pypy3-10/) - Local package facts share a topical domain. Shared terms: cli, implementation, interpreter, language, language-runtime.

## Combined YAML source

View the package source record on GitHub. [combined/jimtcl.yml](https://github.com/automic-vault/db/blob/main/combined/jimtcl.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
