Ports tree for Static Linux.
| base/squashfs-tools | Update compilers/clang-dist.scheme | |
| compilers | fix clang and new nasm port | |
| devel | add deps | |
| libs | Add libs/ell/ell.scheme | |
| net | Update net/iwctl/iwctl.scheme | |
| shells/dash | basically rewrite everything in scheme | |
| utils | Update utils/hello/hello.scheme | |
| README.md | Update README.md | |
static-ports
Package recipes for Static Linux.
Structure
Each port lives in a category directory:
category/name/
name.scheme - package metadata and build instructions
Building
Use ace to install a port:
ace install category/name
Adding a port
- Create a directory under the right category
- Write
name.schemeusing the package DSL - Test with
ace install - Submit a PR
Port format
More info in the DSL's repo
(package
(name "example")
(version "1.0.0")
(category "utils")
(description "an example port")
(source "https://example.com/example-1.0.0.tar.gz")
(sha256 "...")
(binary "example-1.0.0/example")
(install "/usr/bin/example")
(build
(env "CC" "x86_64-linux-musl-gcc")
(run "./configure" "--prefix=/usr")
(make)))
Build DSL
| Form | Description |
|---|---|
(env "KEY" "val") |
Set an environment variable |
(run "cmd" "arg" ...) |
Run a command |
(make) |
Run make with -jN |
(make "target") |
Run make with a specific target |