Skip to content

Releases: aether-lang-dev/aeb

aeb v0.324

Choose a tag to compare

@github-actions github-actions released this 22 Sep 05:48

Download this

Two ways to get aeb. Pick by what's on your box:

  • No C compiler / a CI node → grab your platform bundle
    below. The aeb tools come already compiled for your target;
    nothing to build.
  • Have a C toolchain, or want the build-anywhere source →
    aeb-bootstrap.tar.gz,
    the self-building source payload (see Build from source below).

Both paths are checksummed and installed the same way in the end
(bin/aeb on your PATH, runtime under share/aeb/).

Platform bundle (prebuilt, compiler-free)

A per-platform bundle whose 5 aeb tools are already cross-compiled
for that target (bin/aeb stays a script). Nine targets — linux
x86_64/arm64 (gnu + -musl static, floor-free "any Linux"), macos
x86_64/arm64, windows x86_64/arm64, freebsd-x86_64 — each as both
.zip and .tar.gz (so a minimal image with only tar
needs no unzip), and each with its own .sha256.

BASE=https://github.com/aether-lang-dev/aeb/releases/download/v0.324
A=aeb-linux-x86_64.tar.gz             # pick your {os}-{arch}
curl -fsSL -O $BASE/$A -O $BASE/$A.sha256
sha256sum -c $A.sha256               # fail-closed
tar xzf $A                           # -> ./aeb-linux-x86_64/
./aeb-linux-x86_64/install.sh         # no compiler; PREFIX=~/.local
# or run in place: ./aeb-linux-x86_64/bin/aeb --version

The bundled install.sh is copy-only (no make, no
compiler — it stages the prebuilt tree and writes the wrapper) and
stamps the install so bin/aeb stops warning it is an un-installed
tree. No ae
required to install (building Aether programs later still needs
your own ae on PATH — see the two-Aethers note below).

Ignore GitHub's auto-attached Source code assets at the very
bottom. Those are the whole repository — including
itests/ (hundreds of MB of fetched upstream projects) and the
7.3 MB Maven resolver — and carry no published checksum.


Build from source

If your platform isn't in the bundle list, or you'd rather build
from source, use aeb-bootstrap.tar.gz (608K) — plus
aeb-bootstrap.tar.gz.sha256 to verify it. This is the universal path: one
tarball, every platform, nothing compiled ahead of time.

What's inside

Source only. There are no executables in this tarball — not
for Linux, not for any platform. Nothing here is compiled ahead of
time; the payload builds itself on first use (see below).

aeb the entry point — a bash script, not a binary
tools/*.ae 27 Aether sources for aeb's own tools
lib/ 51 SDK modules (the import java, import rust, … you write against)
AETHER_PIN / AETHER_FETCH which Aether this release needs (0.706.0 floor, 0.706.0 fetched)
Makefile, LICENSE, README.md, docs/ the usual
prebuilt binaries 0

608K compressed, ~2.6M unpacked. One tarball works on every
platform because there is nothing platform-specific in it — the
same reason the platform bundles above are the only place
per-target binaries live.

What you need on the box

  • a C compiler and make — aeb compiles through C
  • curl and network access on first run
  • ae is NOT required to install aeb. It fetches its own
    pinned Aether into ~/.cache/aeb/toolchain/, private, never
    on PATH
    — your own ae, if you have one, is untouched.

But building Aether programs does need your own ae.
aeb's private copy compiles aeb's own machinery only. A target
using aether.program() shells out to the ae on your
PATH, and fails with sh: ae: not found if there isn't
one. Targets in other languages (bash.test, java,
rust, …) have no such requirement. Two Aethers, on purpose —
see docs/aeb-host-vm-or-container-setup.md.

Download and verify

TAG=v0.324
BASE=https://github.com/aether-lang-dev/aeb/releases/download/$TAG

curl -fsSL -O $BASE/aeb-bootstrap.tar.gz
curl -fsSL -O $BASE/aeb-bootstrap.tar.gz.sha256
sha256sum -c aeb-bootstrap.tar.gz.sha256      # fail-closed; stop here if it fails
tar xzf aeb-bootstrap.tar.gz                  # -> ./aeb-bootstrap/

The published .sha256 is a standard sha256sum file, so
-c checks it directly — no need to paste the hash by hand.

Then what — two ways to use it

You now have a directory of sources. Pick one:

A. Install it (recommended for a workstation or a long-lived
build node). Per-user, into ~/.local — no sudo:

cd aeb-bootstrap
make install                    # PREFIX defaults to ~/.local
# or: make install PREFIX=/opt/aeb

export PATH="$HOME/.local/bin:$PATH"   # if it isn't already
aeb --version

This compiles the tools and copies the runtime tree to
$PREFIX/share/aeb/, leaving $PREFIX/bin/aeb on your
PATH. After that the unpacked directory can be deleted —
the install does not point back at it.

Do not sudo make install. The prefix is per-user, so it
is never needed, and doing it once leaves root-owned binaries in
the unpacked tree that later non-root runs cannot overwrite.

B. Run it in place (throwaway containers, CI steps, trying it
out). No install step — the tarball is the installation:

./aeb-bootstrap/aeb --version
./aeb-bootstrap/aeb path/to/.build.ae

Keep the directory: this mode runs out of wherever you unpacked
it. Put it somewhere durable (/opt, /srv) rather than
~/Downloads.

First run takes a minute or two either way: it fetches the
pinned Aether and compiles the aeb tools it needs (only those —
the rest stay unbuilt until something invokes them). Later runs
are silent and immediate.

Verified in CI

Not merely uploaded. Before publishing, the source tarball was
unpacked on a clean runner, fetched the Aether it pins, probed
that toolchain by compiling (not --version — a banner can
succeed on an aetherc that is glibc-broken), and rebuilt aeb
to a green build. The source-only claim above is asserted in
CI too, not just written here. The platform bundles are
cross-compiled in the same run and skipped fail-safe if a target
can't build — so a published bundle is one that actually linked.

asset sha256
aeb-bootstrap.tar.gz 7b4a2bb018ab99500bbc0758af0cfbf856760ed776ec7e49913272cbc2d3be6e

aeb v0.323

Choose a tag to compare

@github-actions github-actions released this 21 Sep 22:39

Download this

Two ways to get aeb. Pick by what's on your box:

  • No C compiler / a CI node → grab your platform bundle
    below. The aeb tools come already compiled for your target;
    nothing to build.
  • Have a C toolchain, or want the build-anywhere source →
    aeb-bootstrap.tar.gz,
    the self-building source payload (see Build from source below).

Both paths are checksummed and installed the same way in the end
(bin/aeb on your PATH, runtime under share/aeb/).

Platform bundle (prebuilt, compiler-free)

A per-platform bundle whose 5 aeb tools are already cross-compiled
for that target (bin/aeb stays a script). Nine targets — linux
x86_64/arm64 (gnu + -musl static, floor-free "any Linux"), macos
x86_64/arm64, windows x86_64/arm64, freebsd-x86_64 — each as both
.zip and .tar.gz (so a minimal image with only tar
needs no unzip), and each with its own .sha256.

BASE=https://github.com/aether-lang-dev/aeb/releases/download/v0.323
A=aeb-linux-x86_64.tar.gz             # pick your {os}-{arch}
curl -fsSL -O $BASE/$A -O $BASE/$A.sha256
sha256sum -c $A.sha256               # fail-closed
tar xzf $A                           # -> ./aeb-linux-x86_64/
./aeb-linux-x86_64/install.sh         # no compiler; PREFIX=~/.local
# or run in place: ./aeb-linux-x86_64/bin/aeb --version

The bundled install.sh is copy-only (no make, no
compiler — it stages the prebuilt tree and writes the wrapper) and
stamps the install so bin/aeb stops warning it is an un-installed
tree. No ae
required to install (building Aether programs later still needs
your own ae on PATH — see the two-Aethers note below).

Ignore GitHub's auto-attached Source code assets at the very
bottom. Those are the whole repository — including
itests/ (hundreds of MB of fetched upstream projects) and the
7.3 MB Maven resolver — and carry no published checksum.


Build from source

If your platform isn't in the bundle list, or you'd rather build
from source, use aeb-bootstrap.tar.gz (604K) — plus
aeb-bootstrap.tar.gz.sha256 to verify it. This is the universal path: one
tarball, every platform, nothing compiled ahead of time.

What's inside

Source only. There are no executables in this tarball — not
for Linux, not for any platform. Nothing here is compiled ahead of
time; the payload builds itself on first use (see below).

aeb the entry point — a bash script, not a binary
tools/*.ae 27 Aether sources for aeb's own tools
lib/ 51 SDK modules (the import java, import rust, … you write against)
AETHER_PIN / AETHER_FETCH which Aether this release needs (0.699.0 floor, 0.699.0 fetched)
Makefile, LICENSE, README.md, docs/ the usual
prebuilt binaries 0

604K compressed, ~2.6M unpacked. One tarball works on every
platform because there is nothing platform-specific in it — the
same reason the platform bundles above are the only place
per-target binaries live.

What you need on the box

  • a C compiler and make — aeb compiles through C
  • curl and network access on first run
  • ae is NOT required to install aeb. It fetches its own
    pinned Aether into ~/.cache/aeb/toolchain/, private, never
    on PATH
    — your own ae, if you have one, is untouched.

But building Aether programs does need your own ae.
aeb's private copy compiles aeb's own machinery only. A target
using aether.program() shells out to the ae on your
PATH, and fails with sh: ae: not found if there isn't
one. Targets in other languages (bash.test, java,
rust, …) have no such requirement. Two Aethers, on purpose —
see docs/aeb-host-vm-or-container-setup.md.

Download and verify

TAG=v0.323
BASE=https://github.com/aether-lang-dev/aeb/releases/download/$TAG

curl -fsSL -O $BASE/aeb-bootstrap.tar.gz
curl -fsSL -O $BASE/aeb-bootstrap.tar.gz.sha256
sha256sum -c aeb-bootstrap.tar.gz.sha256      # fail-closed; stop here if it fails
tar xzf aeb-bootstrap.tar.gz                  # -> ./aeb-bootstrap/

The published .sha256 is a standard sha256sum file, so
-c checks it directly — no need to paste the hash by hand.

Then what — two ways to use it

You now have a directory of sources. Pick one:

A. Install it (recommended for a workstation or a long-lived
build node). Per-user, into ~/.local — no sudo:

cd aeb-bootstrap
make install                    # PREFIX defaults to ~/.local
# or: make install PREFIX=/opt/aeb

export PATH="$HOME/.local/bin:$PATH"   # if it isn't already
aeb --version

This compiles the tools and copies the runtime tree to
$PREFIX/share/aeb/, leaving $PREFIX/bin/aeb on your
PATH. After that the unpacked directory can be deleted —
the install does not point back at it.

Do not sudo make install. The prefix is per-user, so it
is never needed, and doing it once leaves root-owned binaries in
the unpacked tree that later non-root runs cannot overwrite.

B. Run it in place (throwaway containers, CI steps, trying it
out). No install step — the tarball is the installation:

./aeb-bootstrap/aeb --version
./aeb-bootstrap/aeb path/to/.build.ae

Keep the directory: this mode runs out of wherever you unpacked
it. Put it somewhere durable (/opt, /srv) rather than
~/Downloads.

First run takes a minute or two either way: it fetches the
pinned Aether and compiles the aeb tools it needs (only those —
the rest stay unbuilt until something invokes them). Later runs
are silent and immediate.

Verified in CI

Not merely uploaded. Before publishing, the source tarball was
unpacked on a clean runner, fetched the Aether it pins, probed
that toolchain by compiling (not --version — a banner can
succeed on an aetherc that is glibc-broken), and rebuilt aeb
to a green build. The source-only claim above is asserted in
CI too, not just written here. The platform bundles are
cross-compiled in the same run and skipped fail-safe if a target
can't build — so a published bundle is one that actually linked.

asset sha256
aeb-bootstrap.tar.gz 846b039baa97503fef489f88e9db94a71c52eef42e63c86fd2a8b1a4b70af57a

aeb v0.322

Choose a tag to compare

@github-actions github-actions released this 21 Sep 21:36

Download this

Two ways to get aeb. Pick by what's on your box:

  • No C compiler / a CI node → grab your platform bundle
    below. The aeb tools come already compiled for your target;
    nothing to build.
  • Have a C toolchain, or want the build-anywhere source →
    aeb-bootstrap.tar.gz,
    the self-building source payload (see Build from source below).

Both paths are checksummed and installed the same way in the end
(bin/aeb on your PATH, runtime under share/aeb/).

Platform bundle (prebuilt, compiler-free)

A per-platform bundle whose 5 aeb tools are already cross-compiled
for that target (bin/aeb stays a script). Nine targets — linux
x86_64/arm64 (gnu + -musl static, floor-free "any Linux"), macos
x86_64/arm64, windows x86_64/arm64, freebsd-x86_64 — each as both
.zip and .tar.gz (so a minimal image with only tar
needs no unzip), and each with its own .sha256.

BASE=https://github.com/aether-lang-dev/aeb/releases/download/v0.322
A=aeb-linux-x86_64.tar.gz             # pick your {os}-{arch}
curl -fsSL -O $BASE/$A -O $BASE/$A.sha256
sha256sum -c $A.sha256               # fail-closed
tar xzf $A                           # -> ./aeb-linux-x86_64/
./aeb-linux-x86_64/install.sh         # no compiler; PREFIX=~/.local
# or run in place: ./aeb-linux-x86_64/bin/aeb --version

The bundled install.sh is copy-only (no make, no
compiler — it stages the prebuilt tree and writes the wrapper) and
stamps the install so bin/aeb stops warning it is an un-installed
tree. No ae
required to install (building Aether programs later still needs
your own ae on PATH — see the two-Aethers note below).

Ignore GitHub's auto-attached Source code assets at the very
bottom. Those are the whole repository — including
itests/ (hundreds of MB of fetched upstream projects) and the
7.3 MB Maven resolver — and carry no published checksum.


Build from source

If your platform isn't in the bundle list, or you'd rather build
from source, use aeb-bootstrap.tar.gz (596K) — plus
aeb-bootstrap.tar.gz.sha256 to verify it. This is the universal path: one
tarball, every platform, nothing compiled ahead of time.

What's inside

Source only. There are no executables in this tarball — not
for Linux, not for any platform. Nothing here is compiled ahead of
time; the payload builds itself on first use (see below).

aeb the entry point — a bash script, not a binary
tools/*.ae 26 Aether sources for aeb's own tools
lib/ 51 SDK modules (the import java, import rust, … you write against)
AETHER_PIN / AETHER_FETCH which Aether this release needs (0.699.0 floor, 0.699.0 fetched)
Makefile, LICENSE, README.md, docs/ the usual
prebuilt binaries 0

596K compressed, ~2.6M unpacked. One tarball works on every
platform because there is nothing platform-specific in it — the
same reason the platform bundles above are the only place
per-target binaries live.

What you need on the box

  • a C compiler and make — aeb compiles through C
  • curl and network access on first run
  • ae is NOT required to install aeb. It fetches its own
    pinned Aether into ~/.cache/aeb/toolchain/, private, never
    on PATH
    — your own ae, if you have one, is untouched.

But building Aether programs does need your own ae.
aeb's private copy compiles aeb's own machinery only. A target
using aether.program() shells out to the ae on your
PATH, and fails with sh: ae: not found if there isn't
one. Targets in other languages (bash.test, java,
rust, …) have no such requirement. Two Aethers, on purpose —
see docs/aeb-host-vm-or-container-setup.md.

Download and verify

TAG=v0.322
BASE=https://github.com/aether-lang-dev/aeb/releases/download/$TAG

curl -fsSL -O $BASE/aeb-bootstrap.tar.gz
curl -fsSL -O $BASE/aeb-bootstrap.tar.gz.sha256
sha256sum -c aeb-bootstrap.tar.gz.sha256      # fail-closed; stop here if it fails
tar xzf aeb-bootstrap.tar.gz                  # -> ./aeb-bootstrap/

The published .sha256 is a standard sha256sum file, so
-c checks it directly — no need to paste the hash by hand.

Then what — two ways to use it

You now have a directory of sources. Pick one:

A. Install it (recommended for a workstation or a long-lived
build node). Per-user, into ~/.local — no sudo:

cd aeb-bootstrap
make install                    # PREFIX defaults to ~/.local
# or: make install PREFIX=/opt/aeb

export PATH="$HOME/.local/bin:$PATH"   # if it isn't already
aeb --version

This compiles the tools and copies the runtime tree to
$PREFIX/share/aeb/, leaving $PREFIX/bin/aeb on your
PATH. After that the unpacked directory can be deleted —
the install does not point back at it.

Do not sudo make install. The prefix is per-user, so it
is never needed, and doing it once leaves root-owned binaries in
the unpacked tree that later non-root runs cannot overwrite.

B. Run it in place (throwaway containers, CI steps, trying it
out). No install step — the tarball is the installation:

./aeb-bootstrap/aeb --version
./aeb-bootstrap/aeb path/to/.build.ae

Keep the directory: this mode runs out of wherever you unpacked
it. Put it somewhere durable (/opt, /srv) rather than
~/Downloads.

First run takes a minute or two either way: it fetches the
pinned Aether and compiles the aeb tools it needs (only those —
the rest stay unbuilt until something invokes them). Later runs
are silent and immediate.

Verified in CI

Not merely uploaded. Before publishing, the source tarball was
unpacked on a clean runner, fetched the Aether it pins, probed
that toolchain by compiling (not --version — a banner can
succeed on an aetherc that is glibc-broken), and rebuilt aeb
to a green build. The source-only claim above is asserted in
CI too, not just written here. The platform bundles are
cross-compiled in the same run and skipped fail-safe if a target
can't build — so a published bundle is one that actually linked.

asset sha256
aeb-bootstrap.tar.gz d4aec0c64f9d0d8fc04ee39155a36dd7c1f56fd5ea7177a515e095ed3a3da861

aeb v0.321

Choose a tag to compare

@github-actions github-actions released this 21 Sep 20:05

Download this

Two ways to get aeb. Pick by what's on your box:

  • No C compiler / a CI node → grab your platform bundle
    below. The aeb tools come already compiled for your target;
    nothing to build.
  • Have a C toolchain, or want the build-anywhere source →
    aeb-bootstrap.tar.gz,
    the self-building source payload (see Build from source below).

Both paths are checksummed and installed the same way in the end
(bin/aeb on your PATH, runtime under share/aeb/).

Platform bundle (prebuilt, compiler-free)

A per-platform bundle whose 5 aeb tools are already cross-compiled
for that target (bin/aeb stays a script). Nine targets — linux
x86_64/arm64 (gnu + -musl static, floor-free "any Linux"), macos
x86_64/arm64, windows x86_64/arm64, freebsd-x86_64 — each as both
.zip and .tar.gz (so a minimal image with only tar
needs no unzip), and each with its own .sha256.

BASE=https://github.com/aether-lang-dev/aeb/releases/download/v0.321
A=aeb-linux-x86_64.tar.gz             # pick your {os}-{arch}
curl -fsSL -O $BASE/$A -O $BASE/$A.sha256
sha256sum -c $A.sha256               # fail-closed
tar xzf $A                           # -> ./aeb-linux-x86_64/
./aeb-linux-x86_64/install.sh         # no compiler; PREFIX=~/.local
# or run in place: ./aeb-linux-x86_64/bin/aeb --version

The bundled install.sh is copy-only (no make, no
compiler — it stages the prebuilt tree and writes the wrapper) and
stamps the install so bin/aeb stops warning it is an un-installed
tree. No ae
required to install (building Aether programs later still needs
your own ae on PATH — see the two-Aethers note below).

Ignore GitHub's auto-attached Source code assets at the very
bottom. Those are the whole repository — including
itests/ (hundreds of MB of fetched upstream projects) and the
7.3 MB Maven resolver — and carry no published checksum.


Build from source

If your platform isn't in the bundle list, or you'd rather build
from source, use aeb-bootstrap.tar.gz (596K) — plus
aeb-bootstrap.tar.gz.sha256 to verify it. This is the universal path: one
tarball, every platform, nothing compiled ahead of time.

What's inside

Source only. There are no executables in this tarball — not
for Linux, not for any platform. Nothing here is compiled ahead of
time; the payload builds itself on first use (see below).

aeb the entry point — a bash script, not a binary
tools/*.ae 26 Aether sources for aeb's own tools
lib/ 51 SDK modules (the import java, import rust, … you write against)
AETHER_PIN / AETHER_FETCH which Aether this release needs (0.699.0 floor, 0.699.0 fetched)
Makefile, LICENSE, README.md, docs/ the usual
prebuilt binaries 0

596K compressed, ~2.6M unpacked. One tarball works on every
platform because there is nothing platform-specific in it — the
same reason the platform bundles above are the only place
per-target binaries live.

What you need on the box

  • a C compiler and make — aeb compiles through C
  • curl and network access on first run
  • ae is NOT required to install aeb. It fetches its own
    pinned Aether into ~/.cache/aeb/toolchain/, private, never
    on PATH
    — your own ae, if you have one, is untouched.

But building Aether programs does need your own ae.
aeb's private copy compiles aeb's own machinery only. A target
using aether.program() shells out to the ae on your
PATH, and fails with sh: ae: not found if there isn't
one. Targets in other languages (bash.test, java,
rust, …) have no such requirement. Two Aethers, on purpose —
see docs/aeb-host-vm-or-container-setup.md.

Download and verify

TAG=v0.321
BASE=https://github.com/aether-lang-dev/aeb/releases/download/$TAG

curl -fsSL -O $BASE/aeb-bootstrap.tar.gz
curl -fsSL -O $BASE/aeb-bootstrap.tar.gz.sha256
sha256sum -c aeb-bootstrap.tar.gz.sha256      # fail-closed; stop here if it fails
tar xzf aeb-bootstrap.tar.gz                  # -> ./aeb-bootstrap/

The published .sha256 is a standard sha256sum file, so
-c checks it directly — no need to paste the hash by hand.

Then what — two ways to use it

You now have a directory of sources. Pick one:

A. Install it (recommended for a workstation or a long-lived
build node). Per-user, into ~/.local — no sudo:

cd aeb-bootstrap
make install                    # PREFIX defaults to ~/.local
# or: make install PREFIX=/opt/aeb

export PATH="$HOME/.local/bin:$PATH"   # if it isn't already
aeb --version

This compiles the tools and copies the runtime tree to
$PREFIX/share/aeb/, leaving $PREFIX/bin/aeb on your
PATH. After that the unpacked directory can be deleted —
the install does not point back at it.

Do not sudo make install. The prefix is per-user, so it
is never needed, and doing it once leaves root-owned binaries in
the unpacked tree that later non-root runs cannot overwrite.

B. Run it in place (throwaway containers, CI steps, trying it
out). No install step — the tarball is the installation:

./aeb-bootstrap/aeb --version
./aeb-bootstrap/aeb path/to/.build.ae

Keep the directory: this mode runs out of wherever you unpacked
it. Put it somewhere durable (/opt, /srv) rather than
~/Downloads.

First run takes a minute or two either way: it fetches the
pinned Aether and compiles the aeb tools it needs (only those —
the rest stay unbuilt until something invokes them). Later runs
are silent and immediate.

Verified in CI

Not merely uploaded. Before publishing, the source tarball was
unpacked on a clean runner, fetched the Aether it pins, probed
that toolchain by compiling (not --version — a banner can
succeed on an aetherc that is glibc-broken), and rebuilt aeb
to a green build. The source-only claim above is asserted in
CI too, not just written here. The platform bundles are
cross-compiled in the same run and skipped fail-safe if a target
can't build — so a published bundle is one that actually linked.

asset sha256
aeb-bootstrap.tar.gz b0d26cd7eb2c7711742bdf94ff374ed537786f6f871e2bcd79ddb26ac54932a6