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:
| Tool | Job |
|---|---|
s1kd-newdm | Create a new data module |
s1kd-validate | Validate a CSDB object against its S1000D schema |
s1kd-brexcheck | Check an object against a BREX data module |
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.
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.
| Path | Best for | Notes |
|---|---|---|
| Pre-built package | Debian/Ubuntu or Red Hat hosts | Fastest; uses .deb or .rpm releases |
| Build from source | Other systems, custom options | Needs 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
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:
| Group | Packages |
|---|---|
| Build tools | gcc, make, xxd, pkg-config |
| XML libraries | libxml2, 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
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.