Skip to main content

Installing s1kd-tools

This documentation set is generated by techwriter.ai from a real, open-source project: s1kd-tools by kibook.

s1kd-tools is "a set of small, free and open source software tools for manipulating S1000D data." It is licensed under GPL-3.0. The toolchain is written mainly in C and is built on libxml2 and libxslt. Each tool follows the s1kd- naming prefix. The current line targets S1000D Issue 6, with compatibility for earlier issues.

The suite is a collection of focused programs, not one binary. A few examples:

ToolJob
s1kd-newdmCreate a new data module
s1kd-validateValidate a CSDB object against its S1000D schema
s1kd-brexcheckCheck an object against a BREX data module
Why this page exists

techwriter.ai watches the s1kd-tools repository and writes these docs. Because documenting an S1000D toolchain means explaining S1000D itself, this site doubles as an S1000D knowledge base. This page covers getting the tools onto your machine.

Commands here are illustrative

The commands below show the shape of a typical install. Versions, package names, and exact steps change over time. Always confirm against the upstream INSTALL guide and the repository before you run anything.

Choose an install path

There are two main paths. Pick the one that fits your platform.

PathBest forNotes
Pre-built packageDebian/Ubuntu or Red Hat hostsFastest; uses .deb or .rpm releases
Build from sourceOther systems, custom optionsNeeds a C toolchain and XML libraries

Install from a package (illustrative)

Pre-compiled Debian (.deb) and Red Hat (.rpm) packages are published with the project releases. Download the package that matches your version and architecture, then install it.

On a Debian-based system:

# Illustrative — confirm the exact file name against the latest release
sudo dpkg -i s1kd-tools_<version>_<arch>.deb

On a Red Hat-based system:

# Illustrative — confirm the exact file name against the latest release
sudo rpm -i s1kd-tools.<version>.<arch>.rpm
Find the right file

Replace <version> and <arch> with the values from the release you downloaded. Get releases from the project's releases page.

Build from source (illustrative)

A source build gives you the newest code and lets you pick options such as the XPath engine.

1. Install the dependencies

The build needs a C toolchain and the XML libraries. The upstream guide lists these core requirements:

GroupPackages
Build toolsgcc, make, xxd, pkg-config
XML librarieslibxml2, libxslt
Optional (XPath 2.0)Saxon/C, or Xerces-C + XQilla

Install the development packages with your system's package manager. Package names differ between distributions, so check your distro's repository.

2. Build and install

From the project source directory, the typical flow is:

# Illustrative — see the upstream INSTALL guide for the current steps
make
sudo make install

By default the tools install under /usr/local. You can change this with the prefix variable:

# Illustrative — install under /usr instead of /usr/local
sudo make prefix=/usr install

To remove a source install, run the matching uninstall target (for example, sudo make prefix=/usr uninstall).

3. (Optional) Select an XPath 2.0 engine

By default the tools use libxml2, which supports XPath 1.0. Some checks (for example, in s1kd-brexcheck) can use XPath 2.0 if you build with an alternate engine. The upstream guide describes an xpath2_engine build variable, with XQilla recommended over Saxon when you need XPath 2.0.

# Illustrative — build with the XQilla XPath 2.0 engine
make xpath2_engine=XQILLA
Order matters

Install the optional XPath 2.0 libraries before you build, so the build can link against them.

Building on Windows

Windows is supported through a POSIX-compatible environment such as MinGW (via MSYS2) or Cygwin. These provide the make and library packages the build expects, so the source steps above work much like they do on Linux.

The upstream INSTALL guide lists the specific MSYS2 / Cygwin packages to install first. Use it as your source of truth for Windows package names.

Verify your install

After installing, confirm the tools are on your PATH. Most tools accept a help or version flag.

# Illustrative — check that a tool runs; confirm the exact flag upstream
s1kd-newdm -h

If the command is found and prints usage, the install is working. From here, see the next pages on creating a data module and validating it.

Sources