Skip to content

allyourcodebase/libxkbcommon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CI

libxkbcommon

This is libxkbcommon, packaged for Zig.

Installation

First, update your build.zig.zon:

# Initialize a `zig build` project if you haven't already
zig init
zig fetch --save git+https://github.com/allyourcodebase/libxkbcommon.git

You can then import libxkbcommon in your build.zig with:

const libxkbcommon_dependency = b.dependency("libxkbcommon", .{
    .target = target,
    .optimize = optimize,

    // Set the XKB config root.
    // Will default to "${INSTALL_PREFIX}/share/X11/xkb" i.e. `zig-out/share/X11/xkb`.
    // Most distributions will use `/usr/share/X11/xkb`.
    //
    // The value `""` will not set a default config root directory.
    // To configure the config root at runtime, use the "XKB_CONFIG_ROOT" environment variable.
    //
    // This example will assume that the config root of the host system is in `/usr`.
    // This does not work on distributions that don't follow the Filesystem Hierarchy Standard (FHS) like NixOS.
    .@"xkb-config-root" = "/usr/share/X11/xkb",

    // The X locale root.
    // Will default to "${INSTALL_PREFIX}/share/X11/locale" i.e. `zig-out/share/X11/locale`.
    // Most distributions will use `/usr/share/X11/locale`.
    //
    // To configure the config root at runtime, use the "XLOCALEDIR" environment variable.
    //
    // This example will assume that the config root of the host system is in `/usr`.
    // This does not work on distributions that don't follow the Filesystem Hierarchy Standard (FHS) like NixOS.
    .@"x-locale-root" = "/usr/share/X11/locale",
});
your_exe.linkLibrary(libxkbcommon_dependency.artifact("libxkbcommon"));

For more information, please refer to the User-configuration docs of libxkbcommon.

About

libxkbcommon ported to the zig build system

Topics

Resources

License

Stars

Watchers

Forks