pkg.sopackage field notes

brew / rank 2866

Install gjs with Homebrew

JavaScript Bindings for GNOME. Version 1.88.1 via Homebrew; verified 2026-06-29.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install gjs

provider-native install command

overview

Package summary

JavaScript Bindings for GNOME

Commands and aliases

  • gjs
  • gjs-console

history

Project history and usage

GJS is GNOME's JavaScript runtime, built on Firefox's SpiderMonkey engine and GNOME platform libraries. It lets JavaScript programs use GNOME APIs through GObject Introspection and provides the runtime used by GNOME Shell, extensions, and many GNOME applications.

Project history

The GJS README gives an unusually direct origin story: the idea traces to an August 2008 blog post and experimental gscript code, while the recognizable project form was developed in October 2008 at litl for the litl webbook.

GJS was soon adopted as the basis of GNOME Shell's user-interface code and extension system, and the README says it debuted as a fundamental component of GNOME 3.0. That made it a central runtime in the GNOME desktop rather than a standalone scripting curiosity.

In 2013, during the GNOME Developer Experience Hackfest, GJS was declared the first among equals for GNOME application development. The README records that this was controversial and later abandoned, but the episode shows how seriously GNOME considered JavaScript as an application language.

Adoption history

The GJS README names GNOME Shell, Maps, Characters, Sound Recorder, and many other apps as GJS users. It also notes use in Endless OS's offline-content framework and in Cinnamon through a forked version.

Package metadata in this batch shows GJS distributed through Homebrew, Alpine, Debian, Fedora, MacPorts, Nix, Arch, Ubuntu, and openSUSE. That breadth follows from its role as a GNOME platform component and language runtime.

How it is used

Practitioners use GJS to write JavaScript programs that call GNOME platform libraries. The README documents an interactive interpreter, whole-program execution with gjs filename.js, debugger support through -d in supported versions, and coverage-report facilities.

GJS is also used by extension authors and desktop developers because GNOME Shell and related applications expose platform behavior through JavaScript. The runtime bridges familiar JavaScript syntax with GTK, GLib, and other introspected GNOME libraries.

Why package nerds care

GJS matters to package people because it is both a language runtime and a desktop-platform dependency. Packaging it means coordinating SpiderMonkey, GObject Introspection, GNOME libraries, ABI expectations, and application consumers.

It also represents a major desktop choosing an embedded JavaScript runtime for core UI behavior. That makes GJS more like a platform runtime than a conventional command-line interpreter.

Timeline

  • 2008: The GJS README traces the idea to an August blog post and experimental gscript code.
  • 2008: GJS in recognizable form is developed at litl in October.
  • 2011: GNOME 3.0 debuts with GNOME Shell, using GJS as a fundamental component.
  • 2013: GJS is named first among equals for GNOME application development at a GNOME Developer Experience Hackfest.
  • 2018: The README records GJS use in GNOME apps, Endless OS, and Cinnamon.

Related projects

  • SpiderMonkey is the JavaScript engine embedded by GJS.
  • GObject Introspection is the binding mechanism that exposes GNOME libraries to JavaScript.
  • GNOME Shell is the most prominent consumer of GJS.
  • Cinnamon and Endless OS are named by the README as related adopters or downstream users.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew bottle metadata was recorded.

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
gjsexecutableindexed executableDiscovered from the local executable index.
gjs-consoleexecutableindexed executableDiscovered from the local executable index.

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-08-03
manager version1.88.1
manager updated2026-06-29
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:gjs
Version1.88.1
Package managerHomebrew
Homepagehttps://gitlab.gnome.org/GNOME/gjs/wikis/Home
Last updated2026-06-29T04:06:11Z
Pulseupdated
Bottlenot recorded
Servicenone declared

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
  • curated package history
  • pkgdb category and tag curation