Frequently asked questions
Does corefs handle dependencies?
Not yet. A profile lists every package the system needs, including what those packages need themselves.
Can I upgrade or remove packages?
Not yet. corefs already writes an install record for every package, its version and its files, so upgrades and removal can be added without guessing what's installed.
Is the package index signed?
Not yet. corefs checks every package's size and SHA-256 against the index, which catches corrupted downloads, but not a mirror that changes the index itself. Signing is planned.
Why is the package index plain text instead of JSON?
A package manager running inside Core Linux may have nothing but a shell to
work with, and a line-per-package format needs nothing more than a read
loop. See The package index.
Why is corefs one big bash script?
Bash has no import. Sourcing a library at run time means it has to be
installed next to the script, so corefs is assembled at build time instead:
make runs m4 over corefs.in and a shared common.m4, and writes out one
self-contained script.
m4 -P -I. -D__VERSION__=0.1 corefs.in > corefs
-P makes m4's own macros start with m4_, so ordinary shell words like
format or include aren't swallowed. The generated script is never edited by
hand.
Which disks can Core Linux boot from?
The initramfs includes drivers for virtio, NVMe and SATA disks with an ext4
root. For anything else, add the modules to /etc/mkinitfs/modules and rerun
mkinitfs. See Boot process.