Glaucus Versions Save

A simple and lightweight Linux® distribution based on musl libc and toybox

20240404

1 month ago

What's new?

A summary of changes that took place:

  • glaucus is not affected by the backdoor found in XZ Utils, as it targeted sshd binaries linked against libsystemd and glibc
  • The glaucus ISO has been improved with a dedicated initramfs to support OverlayFS and EROFS using toybox and mdevd
  • nsss is now the default NSS implementation
  • slibtool is now the default libtool implementation
  • utmps is now the default utmpx implementation (w and last are now working securely on musl)
  • The bootstrap process has been further optimized resulting in a reduction in the number of packages being used
  • Arch Linux kernel and modules are being used for this release (CachyOS kernel will be considered for future releases)
  • Updated cerata

Included cerata (73 packages)

This release contains the following cerata:

  • acl
  • attr
  • autoconf
  • automake
  • bash
  • binutils
  • byacc
  • bzip2
  • cerata
  • diffutils
  • e2fsprogs
  • execline
  • expat
  • file
  • findutils
  • flex
  • gcc
  • gettext-tiny
  • grep
  • help2man
  • hydroskeleton
  • iproute2
  • iputils
  • kmod
  • less
  • libarchive
  • libcap
  • libcap-ng
  • libedit
  • libressl
  • libtool
  • libudev-zero
  • linux
  • linux-headers
  • lz4
  • m4
  • make
  • mandoc
  • mawk
  • mdevd
  • muon
  • musl
  • musl-fts
  • musl-utils
  • netbsd-curses
  • nsss
  • patch
  • pcre2
  • pigz
  • pkgconf
  • procps-ng
  • psmisc
  • radula
  • rsync
  • s6
  • s6-boot-scripts
  • s6-linux-init
  • s6-rc
  • samurai
  • sdhcp
  • sed
  • shadow
  • skalibs
  • toybox
  • util-linux
  • utmps
  • vim
  • wget2
  • xxhash
  • xz
  • yash
  • zlib-ng
  • zstd

b3sum glaucus-s6-x86-64-v3-20240404.img.zst

208dae713607eca00df65096cf324a22be97624a7fee3633fc7dad38147e788b

b3sum glaucus-s6-x86-64-v3-20240404.iso.zst

deecc01ffadca0e95ce46cec5abdb20f3a4ea2938e7ee3bef7977285d3ec4361

How to run the IMG file?

Extract glaucus-s6-x86-64-v3-20240404.img.zst

zstd -d -T0 --long glaucus-s6-x86-64-v3-20240404.img.zst

Run via QEMU

qemu-system-x86_64 \
  -machine q35,accel=kvm \
  -cpu host \
  -m 1G \
  -name glaucus \
  -drive file=glaucus-s6-x86-64-v3-20240404.img,format=raw \
  -display gtk,gl=on \
  -vga qxl \
  -rtc base=localtime

How to run the ISO file?

Extract glaucus-s6-x86-64-v3-20240404.iso.zst

zstd -d -T0 --long glaucus-s6-x86-64-v3-20240404.iso.zst

Run via QEMU (UEFI)

qemu-system-x86_64 \
  -machine q35,accel=kvm \
  -cpu host \
  -boot order=d \
  -m 1G \
  -name glaucus \
  -cdrom glaucus-s6-x86-64-v3-20240404.iso \
  -display gtk,gl=on \
  -vga qxl \
  -rtc base=localtime \
  -bios /usr/share/ovmf/x64/OVMF.fd

Run via QEMU (BIOS/MBR)

qemu-system-x86_64 \
  -machine q35,accel=kvm \
  -cpu host \
  -boot order=d \
  -m 1G \
  -name glaucus \
  -cdrom glaucus-s6-x86-64-v3-20240404.iso \
  -display gtk,gl=on \
  -vga qxl \
  -rtc base=localtime

You'll be automatically logged in as root.

To access additional ttys use ALT + arrow keys Right/Left.

How to Get Internet Access Under QEMU?

ip link set eth0 up
sdhcp eth0

You can then run ping or wget2.

20231002

7 months ago

What's new?

A summary of changes that took place:

  • A glaucus ISO is finally being released for the first time! This marks a new huge milestone for glaucus after years of hard work and dedication. The ISO supports booting in both BIOS/MBR and UEFI modes, but is still in beta phase and in read-only mode (overlayfs for read-write mode and EROFS support have been proposed to booster and will hopefully be provided in the following releases)
  • glaucus is now self-hosting, being able to bootstrap itself under itself! This is also another huge milestone, and has resulted in a reduction in the number of packages being included in the bootstrap phase, making it faster and more minimal
  • libudev-zero is now the default libudev implementation
  • mdevd is now the default udevd implementation
  • muon is now the default meson implementation
  • mold is no longer the default linker (see this and this)
  • OpenBSD M4 is no longer the default M4 implementation (autoconf requires GNU M4)
  • Arch Linux kernel and modules are being used for this release
  • Updated cerata

Included cerata (79 packages)

This release contains the following cerata:

  • acl
  • attr
  • autoconf
  • automake
  • bash
  • binutils
  • byacc
  • bzip2
  • cerata
  • diffutils
  • e2fsprogs
  • execline
  • expat
  • file
  • findutils
  • flex
  • gcc
  • gettext-tiny
  • gperf
  • grep
  • help2man
  • hydroskeleton
  • iana-etc
  • iproute2
  • iputils
  • kmod
  • lbzip2
  • lbzip2-utils
  • less
  • libarchive
  • libcap
  • libcap-ng
  • libedit
  • libressl
  • libtool
  • libudev-zero
  • linux
  • linux-headers
  • lz4
  • m4
  • make
  • mandoc
  • mawk
  • mdevd
  • mimalloc
  • muon
  • musl
  • musl-fts
  • musl-utils
  • netbsd-curses
  • patch
  • pcre2
  • pigz
  • pkgconf
  • plocate
  • procps-ng
  • psmisc
  • radula
  • rsync
  • s6
  • s6-boot-scripts
  • s6-linux-init
  • s6-rc
  • samurai
  • sdhcp
  • sed
  • shadow
  • skalibs
  • toybox
  • tzcode
  • tzdata
  • util-linux
  • vim
  • wget2
  • xxhash
  • xz
  • yash
  • zlib-ng
  • zstd

b3sum glaucus-s6-x86-64-v3-20231002.img.zst

2b3f40d5c5d54b93b9a4fbc8264fd152e6d7741258e0aa301b40184baec220d6

b3sum glaucus-s6-x86-64-v3-20231002.iso.zst

a6755844fd86df97819b31bee6e9c0692bd6bf8b2de5ed212f4c3781c51f496b

How to run the IMG file?

Extract glaucus-s6-x86-64-v3-20231002.img.zst

tar --use-compress-program 'zstd -d -T0 --long=31' -xvf glaucus-s6-x86-64-v3-20231002.img.zst  -C .

Run via QEMU

qemu-system-x86_64 \
  -machine q35,accel=kvm \
  -cpu host \
  -m 1G \
  -name glaucus \
  -drive file=glaucus-s6-x86-64-v3-20231002.img,format=raw \
  -display gtk,gl=on \
  -vga qxl \
  -rtc base=localtime

How to run the ISO file?

Extract glaucus-s6-x86-64-v3-20231002.iso.zst

tar --use-compress-program 'zstd -d -T0 --long=31' -xvf glaucus-s6-x86-64-v3-20231002.iso.zst  -C .

Run via QEMU (UEFI)

qemu-system-x86_64 \
  -machine q35,accel=kvm \
  -cpu host \
  -boot order=d \
  -m 1G \
  -name glaucus \
  -cdrom glaucus-s6-x86-64-v3-20231002.iso \
  -display gtk,gl=on \
  -vga qxl \
  -rtc base=localtime \
  -bios /usr/share/ovmf/x64/OVMF.fd

Run via QEMU (BIOS/MBR)

qemu-system-x86_64 \
  -machine q35,accel=kvm \
  -cpu host \
  -boot order=d \
  -m 1G \
  -name glaucus \
  -cdrom glaucus-s6-x86-64-v3-20231002.iso \
  -display gtk,gl=on \
  -vga qxl \
  -rtc base=localtime

You'll be automatically logged in as root.

To access additional ttys use ALT + arrow keys Right/Left.

How to Get Internet Access Under QEMU?

ip link set eth0 up
sdhcp eth0

You can then run ping or wget2.

28042023

1 year ago

What's new?

This release is a modest attempt to follow a regular release cycle for glaucus.

A summary of changes that took place:

  • radula was rewritten in Nim (previous version was in Rust), reasons for this include:
    • code is reasonably more readable (more so than the Rust version)
    • much less LOC even with more features added (compared to the Rust version)
    • code is written in a reasonable amount of time (much less than Rust version, again the rewrite itself took about a month, but the speed at which newer features was added is like 4 - 8 times faster than the time it took me to implement them in Rust, probably because I suck in Rust even after a year of using it, but who knows...)
    • uses less system resources (1/3 of what the Rust version uses)
    • much smaller executable size (200 to 300 KB) (compared to the Rust version 3 MB)
    • can be built using glaucus's existing toolchain because Nim transpiles to C; thus, making use of the optimized toolchain glaucus uses (unlike Rust which is very hard to bootstrap, and does not work all that great with shared musl...)
    • slightly faster (parsing cerata is around 6 - 20% faster overall) (this is probably because I suck with Rust even after a year of using it, but then again I've only been writing in Nim for a month or two so...)
  • glaucus's toolchain now uses mold by default, and all executables (with the exception of the Linux kernel) are being linked with it
  • glaucus now uses yash as the default shell for interactive use instead of oksh for the following reasons:
    • more strict POSIX compliance compared to oksh
    • much more user friendly compared to oksh
    • about 50% the size of bash and only slightly bigger (10 - 20%) than oksh
    • about 30 - 40% faster than bash and has identical performance to oksh and loksh
    • multiline support, which is not available in oksh
  • glaucus now uses OpenBSD M4 as the default M4 implementation
  • glaucus now uses BLAKE3 as the default hashing algorithm instead of SHA-512
  • Update default ASCII art
  • Updated cerata

This release is more stable compared to previous releases but it still is not production ready.

Included cerata (91 packages)

This release contains the following cerata:

  • acl
  • attr
  • autoconf
  • automake
  • bc
  • binutils
  • byacc
  • bzip2
  • ccache
  • cerata
  • curl
  • dash
  • diffutils
  • e2fsprogs
  • eudev
  • execline
  • expat
  • file
  • findutils
  • flex
  • gcc
  • grep
  • help2man
  • hwdata
  • hydroskeleton
  • iana-etc
  • iproute2
  • iputils
  • kmod
  • lbzip2
  • lbzip2-utils
  • less
  • libarchive
  • libcap
  • libcap-ng
  • libedit
  • libelf
  • libressl
  • libtool
  • libuargp
  • libucontext
  • linux
  • linux-headers
  • lz4
  • lzlib
  • make
  • mandoc
  • mawk
  • mimalloc
  • mold
  • musl
  • musl-fts
  • musl-locales
  • musl-obstack
  • musl-rpmatch
  • musl-utils
  • netbsd-curses
  • nsss
  • om4
  • patch
  • pciutils
  • pcre2
  • pigz
  • pkgconf
  • plocate
  • plzip
  • procps-ng
  • psmisc
  • radula
  • rsync
  • s6
  • s6-boot-scripts
  • s6-linux-init
  • s6-rc
  • samurai
  • sdhcp
  • sed
  • shadow
  • skalibs
  • toybox
  • tzcode
  • tzdata
  • util-linux
  • utmps
  • vim
  • wget2
  • xxhash
  • xz
  • yash
  • zlib-ng
  • zstd

b3sum glaucus-s6-x86-64-v3-28042023.img.zst

2c82179413c926eb38be96279e410ead7e80cabb0b8066a3fa45aade423aa360

How to run?

Extract glaucus-s6-x86-64-v3-28042023.img.zst

tar --use-compress-program 'zstd -d --long=31' -xvf glaucus-s6-x86-64-v3-28042023.img.zst -C .

Run via QEMU

qemu-system-x86_64 -enable-kvm -cpu host -hda glaucus-s6-x86-64-v3-28042023.img -m 256M

You'll be automatically logged in as root.

To access additional ttys use ALT + arrow keys Right/Left, and use the password glaucus.

11102022

1 year ago

What's new?

Wow, 2 years have passed already and glaucus is still going strong as ever!

Needless to say, a lot has changed. The following is a summary of changes that took place:

  • radula (glaucus's package manager written in Rust) is now fully capable of building a cross compiled glaucus system!
  • glaucus's toolchain is now more refined and mature
  • s6 is still the default init system (finit was removed completely)

This release is more stable compared to previous releases but it still is not production ready..

Included cerata (85 packages)

This release contains the following cerata:

  • acl
  • attr
  • bc
  • binutils
  • byacc
  • bzip2
  • cerata
  • curl
  • dash
  • diffutils
  • e2fsprogs
  • eudev
  • execline
  • expat
  • file
  • findutils
  • flex
  • gcc
  • gcompat
  • gettext-tiny
  • grep
  • hwdata
  • hydroskeleton
  • iana-etc
  • iproute2
  • iputils
  • kmod
  • lbzip2
  • lbzip2-utils
  • less
  • libarchive
  • libcap
  • libcap-ng
  • libedit
  • libelf
  • libressl
  • libuargp
  • libucontext
  • linux
  • linux-headers
  • lz4
  • lzlib
  • m4
  • make
  • mandoc
  • mawk
  • musl
  • musl-fts
  • musl-locales
  • musl-obstack
  • musl-rpmatch
  • musl-utils
  • netbsd-curses
  • nsss
  • oksh
  • patch
  • pciutils
  • pcre2
  • pigz
  • pkgconf
  • plocate
  • plzip
  • procps-ng
  • psmisc
  • radula
  • rsync
  • s6
  • s6-boot-scripts
  • s6-linux-init
  • s6-rc
  • samurai
  • sdhcp
  • sed
  • shadow
  • skalibs
  • toybox
  • tzcode
  • tzdata
  • util-linux
  • utmps
  • vim
  • wget2
  • xxhash
  • xz
  • zlib-ng
  • zstd

sha512sum glaucus-s6-x86-64-v3-11102022.img.zst

2379749b92902ff6966b341360fd0fba0d2506da57c58cc6a69a8b5e2f27206fd09a6dfdcf21c0f8351d207328d83801e0dbaaf846cb08f4e770c1ce14741e99

How to run?

Extract glaucus-s6-x86-64-v3-11102022.img.zst

zstd -d --long=31 glaucus-s6-x86-64-v3-11102022.img.zst

Run via QEMU

qemu-system-x86_64 -enable-kvm -cpu host -hda glaucus-s6-x86-64-v3-11102022.img -m 256M

You'll be automatically logged in as root.

30092020

3 years ago

What's new?

Decided to post this release after a year has passed since the previous release.

During this year a lot has changed, glaucus's build system changed multiple times until it became what it is like today:

  • first it was a completely cross compiled system that only built for one architecture
  • then it changed to an isolated sandbox build (similar to LFS) that cross compiled a native chroot and built everything inside it
  • and finally transitioned back to a completely cross compiled system with a revamped toolchain design that allows building for multiple architectures and with different optimization flags

This release is by no means stable and shouldn't be used for production use, it's only here to show that the project is still alive and kicking.

Included cerata (packages)

This release contains the following cerata:

  • bc
  • cerata
  • dash
  • diffutils
  • e2fsprogs
  • eudev
  • file
  • findutils
  • finit
  • grep
  • hostname
  • hwids
  • hydroskeleton
  • iana-etc
  • iproute2
  • kmod
  • lbzip2
  • lbzip2-utils
  • libarchive
  • libcap
  • libite
  • libressl
  • libuev
  • linux
  • linux-headers
  • lz4
  • lzlib
  • musl
  • musl-utils
  • netbsd-curses
  • oksh
  • pciutils
  • pigz
  • plzip
  • procps-ng
  • psmisc
  • radula
  • rsync
  • sed
  • shadow
  • toybox
  • util-linux
  • which
  • xz
  • zlib-ng
  • zstd

sha512sum glaucus-bennettae-finit-x86_64-30092020.img

4767f8e214bba5d162bc5c6a3f1ecd23f8f03fef79d7918ef58f1bfe2d1a4e5a1c4208d3f600de23dcd24ed39be8e27a8115ad24e80c347e9307fabf6d2adfa8

How to run glaucus-bennettae-finit-x86_64-30092020.img?

sudo qemu-system-x86_64 -enable-kvm -cpu host -hda glaucus-bennettae-finit-x86_64-30092020.img

Login information

User: root

You'll automatically be logged in as there's no password set for user root.

If you see this message Please press Enter to activate this console. then just press Enter and you'll be greeted with a login prompt.

01092019

4 years ago

glaucus benettae extra first public release.

31082019

4 years ago

glaucus bennettae core first public release.