Automic VaultAutomic Vault

brew

Install kawa with Homebrew, dnf, Nix

Programming language for Java (implementation of Scheme). Version 3.1.1 via Homebrew; verified 2026-06-22.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install kawa

local Homebrew formula metadata

Linux

Fedora dnfverified · 92%
sudo dnf install kawa

Fedora Rawhide package metadata · kawa · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#kawa

nixpkgs package indexes · pkgs/by-name/ka/kawa/package.nix · source: api.github.com

overview

Package summary

Programming language for Java (implementation of Scheme)

Commands and aliases

  • kawa

history

Project history and usage

Kawa is a GNU Scheme implementation and language framework for the Java Virtual Machine, combining a Scheme REPL and compiler with close access to Java classes and bytecode.

Project history

The official Kawa internals paper, started from a November 1998 presentation, describes Kawa as a set of Java classes for implementing dynamic languages and as a near-R5RS Scheme implementation that compiles to JVM bytecode.

Kawa evolved beyond a Scheme interpreter into a language framework. The internals documentation describes it as both an implementation of Scheme and a toolkit that also incorporated projects such as Qexo for XQuery and JEmacs for Emacs Lisp.

The official news page records major language-runtime milestones: Kawa 2.0 in December 2014 brought R7RS compatibility work, Kawa 2.3 in January 2017 moved the source repository to GitLab, Kawa 3.0 in October 2017 updated the codebase for Java 8 and Java 9-era changes, and Kawa 3.1.1 was documented in January 2020.

Adoption history

Kawa has long occupied a niche among JVM languages: it is valuable to Scheme users who want Java interop, to language implementers studying JVM compilation, and to package maintainers who care about Lisp-family runtimes outside the more common C or native-code implementations.

How it is used

Users run Kawa as an interactive language, a compiler to Java bytecode, or a Java-integrated scripting system. Its documentation emphasizes REPL use, static checking, modularity, and direct Java method and class access.

Why package nerds care

Kawa is significant because it is both a language runtime and a compiler framework packaged like a Unix tool. It sits at the intersection of GNU packaging, Scheme standards, JVM bytecode, and the long history of alternative languages on Java.

Timeline

  • 1998-11: Kawa internals material began as a presentation on compiling Scheme to Java
  • 2014-12-02: Kawa 2.0 news entry highlighted R7RS compatibility
  • 2017-01-13: Kawa 2.3 moved source hosting to GitLab
  • 2017-10-02: Kawa 3.0 updated the project for Java 8 and Java 9-era changes
  • 2020-01-16: Kawa 3.1.1 documented packaging and browse-manual fixes

Related projects

  • Kawa is related to Scheme standards such as R5RS and R7RS, GNU Guile, other JVM languages, Qexo, JEmacs, SRFI libraries, and Java bytecode tooling.

security posture

Risk level: yellow

generalized runtime or code generation signal.

Risk classifier

yellow risk · medium confidence · runtime

Why

  • generalized runtime or code generation signal

Signals

  • text:programming language

Install behavior

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

Recommended review

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

executables

Installed executables

CommandKindExposureNote
kawacliglobal 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 version3.1.1
manager updated2026-06-22
local dataok
upstreamnot checked
latest detectednot detected

https://www.gnu.org/software/kawa/

install metadata

Package metadata

Package keybrew:kawa
Version3.1.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/kawa
Homepagehttps://www.gnu.org/software/kawa/
Repositoryhttps://gitlab.com/kashell/Kawa
Upstream docshttps://www.gnu.org/software/kawa
LicenseMIT
Source archivehttps://ftpmirror.gnu.org/gnu/kawa/kawa-3.1.1.zip
Last updated2026-06-22T14:03:52-07:00
Pulseupdated
Dependenciesopenjdk
Bottleavailable (on all)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namekawa
Version Scheme0
Revision1
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%

kawa

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

kawa 3.1.1-25.fc44

Scheme programming language

https://www.gnu.org/software/kawa/

sudo dnf install kawa
  • License: MIT
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: kawa
  • 9 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Kawa
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: kawa from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

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 package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment