Sortix
Sortix Download Manual Development Source Code News Blog More
current nightly

Sortix nightly manual

This manual documents Sortix nightly, a development build that has not been officially released. You can instead view this document in the latest official manual.

NAME

tix-create — create and manage a tix collection installation

SYNOPSIS

tix-create [-q] [-C collection] [-u url] [--build-id=build-id] [--force-mirror[=bool]] [--generation=level] [--import=collection] [--mirror=url] [--platform=platform] [--prefix=prefix] [--release-key=path] [--release-url=url]

DESCRIPTION

tix-create creates and manages a tix collection of installed packages. A tix collection contains a top-level /tix directory with the collection.conf(5) configuration file, along with package metadata in the tixinfo and manifest directories.
The specified tix collection is created if it does not already exist. The root directory is used as the default collection. The collection.conf(5) file is configured per the specified options.
The options are as follows:
--build-id=build-id
Set the BUILD_ID variable in collection.conf(5) to build-id, signifying which build is currently installed as per tix-release(8).
-C, --collection=collection
Specifies which collection to act on.
--force-mirror[=bool]
Set the FORCE_MIRROR variable in collection.conf(5) to the optional value bool, or true if bool is not specified. If set to true, then the mirror is used, even if it is not officially supported.
--generation=level
Select tix metadata generation level (Default: 3)
--import=collection
Import the collection.conf(5) configuration and release.pub public key from this other collection.
--mirror=url
Set the MIRROR variable in collection.conf(5) to url, causing downloads to happen from the selected mirror if it is officially supported.
--platform=platform
Set the PLATFORM variable in collection.conf(5) to this platform triplet. Packages installed in the collection must be built for the same platform, or be platform independent. The platform defaults to the triplet of the local system.
--prefix=prefix
Set the PREFIX variable in collection.conf(5) to this prefix. Packages installed in the collection must be built with the same prefix, or be location independent. The prefix defaults to the collection, where the empty prefix designates the root directory.
-q, --quiet
Be quiet.
--release-key=path
Import the public key from the given path and store it as $collection/tix/release.pub. A trusted public key is required to download packages.
-u, --release-url=url
Set the RELEASE_URL variable in collection.conf(5) to url, containing a tix-release(8) channel or release. Packages and upgrades are downloaded from this location and verified with the trusted public key from the --release-key option.
If the --release-key option is not set, then tix-create will download the public key from $url/release.pub. The url must use HTTPS.

FILES

/tix/
The tix collection metadata directory.
/tix/collection.conf
collection.conf(5) configuration.
/tix/manifest/
Sorted file lists for every installed package.
/tix/tixinfo/
Metadata for every installed package.

EXIT STATUS

tix-create will exit 0 on success and non-zero otherwise.

EXAMPLES

Create a tix collection in /local, pointed to an upstream tix release (as made with tix-release(8) ), downloading the public key via HTTPS, and installing the foo package:
tix-create -C /local -u https://example.com/local/channel/stable/1.0 
tix-install -C /local foo
Create a system image for chroot(8) importing the configuration from the system installation:
tix-create -C /tmp/chroot --import=/ 
tix-install -C /tmp/chroot system libfoo bar
Create a system image for another architecture for cross-compilation, importing the configuration from the system installation, and overriding the architecture:
tix-create -C /tmp/sysroot --import=/ --platform=i686-sortix 
tix-install -C /tmp/sysroot system
Create a tix collection with no upstream, and build and install your own port(5) into it with tix-port(8):
tix-create -C /local 
tix-port -C /local /my/local/ports/libfoo
The tix-metabuild(8) command is useful for simultaneously creating a tix collection, and building and installing multiple ports into it in the right order.

SEE ALSO

collection.conf(5), port(5), tix(8), tix-build(8), tix-install(8), tix-metabuild(8), tix-port(8), tix-release(8), tix-uninstall(8)

HISTORY

tix-create originally appeared in Sortix 0.8 as tix-collection. It was modernized as tix-create in Sortix 1.1 to improve usability.
Copyright 2011-2025 Jonas 'Sortie' Termansen and contributors.
Sortix's source code is free software under the ISC license.
#sortix on irc.sortix.org
@sortix_org