Built From Scratch

krypt/sh is a minimal, auditable base. You build on top of it. Nothing is imposed.

01 //
Minimal Trusted Base

~50 battle-tested packages. coreutils, util-linux, musl, runit, etc — each tracked for CVEs and updated fast.

02 //
Rootless by Default

Daemons run without root wherever possible. wpa_supplicant via ambient capabilities. QEMU and Podman fully rootless via passt.

03 //
Wayland Native

Window managers, not desktop environments. No elogind, PAM, or polkit. KDE and GNOME are out of scope by design. X11 available via community ports.

The Stack

package coordinator

tux

Written in C. Topological dependency resolution, install-reason tracking, autoremove for orphans, virtual packages via provides=(). No C++, no libarchive abstractions.

source ports + build isolation

mkpkg

Every package built from source via MAKEPKG — a krypt/sh native build file parsed by mkpkg. Landlock LSM lockbox enforces declared dependencies — unprivileged, kernel-enforced. Undeclared deps are a hard error.

c standard library

musl libc

Every binary on the system links dynamically against musl. No static blobs, no glibc locale complexity, no NSS. Predictable, auditable, unpatched upstream.

compiler + linker + runtime

LLVM Toolchain

One project from compiler to linker — clang, lld, libc++, libunwind, compiler-rt. No GCC anywhere in the chain, not even as a fallback. Built for x86-64-v3. lld links in parallel — noticeably faster on large ports like Firefox.

tls / crypto

LibreSSL

OpenBSD's hardened fork of OpenSSL. Stripped of legacy cruft, audited codebase. Not OpenSSL. Not BoringSSL. Not ca-certificates. The entire system TLS stack runs on LibreSSL.

paravirtualised hypervisor

Xen

When containers are not enough. Xen dom0 with full domU isolation — each VM in its own hardware-enforced trust boundary. QEMU and Podman for lighter workloads.

What Replaces What

Clang / LLVM
GCCclang, clang++, lld
musl libc
glibcvanilla musl, unpatched
libc++ / libc++abi
libstdc++LLVM C++ standard library
libunwind
libgcc_sLLVM stack unwinder
compiler-rt
libgccLLVM builtins + sanitizers
lld
GNU ldLLVM linker, parallel
elftoolchain
elfutilsBSD-licensed libelf
LibreSSL
OpenSSLOpenBSD hardened fork

Build What You Need

root@krypt ~
# The entire trusted base — visible at a glance
root@krypt:~# ls /ports/core | wc -l
57

# Build a Wayland desktop on top of it
root@krypt:~# tux install sway
>>> Resolving dependencies...
>>> Building wlroots
>>> Building sway
Installed: wlroots sway (2 packages)

# Case 1: dep declared but not installed — caught before build starts
root@krypt:/usr/ports/opt/imv# mkpkg
>>> lockbox: Landlock ABI v6
>>> LOCKBOX ERROR: declared dep 'icu' is not installed (run: tux prepare)

# Case 2: dep installed but not declared — lockbox blocks it during configure
root@krypt:/usr/ports/opt/imv# mkpkg
>>> lockbox: Landlock ABI v6
>>> lockbox: added 23701 rules from pkgtools db
>>> lockbox: filesystem restricted to declared deps + build paths
Run-time dependency icu-uc found: NO (tried pkgconfig and cmake)
meson.build:45:16: ERROR: Dependency "icu-uc" not found

# runit — each service is a file you own
root@krypt:~# cat /service/unbound/run
#!/bin/sh
exec chpst -u unbound:unbound unbound -d 2>&1
root@krypt:~#

Pure LLVM musl libc Source-Based Independent