Introduction to Gjs

Gjs is a set of Javascript bindings for GNOME.

This package is known to build and work properly using an LFS 11.3 platform.

Package Information

Gjs Dependencies


Cairo-1.17.6, dbus-1.14.6, gobject-introspection-1.74.0, and JS-102.8.0

Recommended (required for GNOME)


sysprof-3.46.0, Valgrind-3.20.0 (for tests), DTrace, LCOV, and Systemtap

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/gjs

Installation of Gjs

Install Gjs by running the following commands:

mkdir gjs-build &&
cd    gjs-build &&

meson setup --prefix=/usr          \
            --buildtype=release    \
            --wrap-mode=nofallback \
            ..                     &&

To test the results, issue: ninja test. The GTK and Cairo tests will fail if not running in an Xorg session. Four tests are known to timeout.

Now, as the root user:

ninja install

Command Explanations

--buildtype=release: Specify a buildtype suitable for stable releases of the package, as the default may produce unoptimized binaries.

--wrap-mode=nofallback: This switch prevents meson from using subproject fallbacks for any dependency declarations in the build files, stopping it downloading any optional dependency which is not installed on the system.

-Dprofiler=disabled: prevents building the profiler backend even if sysprof-3.46.0 is installed.


Installed Programs: gjs (symlink) and gjs-console
Installed Library: libgjs.so
Installed Directories: /usr/include/gjs-1.0, /usr/lib/gjs, /usr/libexec/installed-tests/gjs, /usr/share/gjs-1.0, and /usr/share/installed-tests/gjs

Short Descriptions


contains a console to run JavaScript commands


contains the GNOME JavaScript bindings