# AlpineBSD: NetBSD's kernel, Alpine's tools and no AI-generated code

- **Published on:** 2026-11-01
- **Category:** News
- **Original page:** https://free-linux.com/articles/alpinebsd-ai-free-netbsd-system

AlpineBSD has appeared: a system that pairs the NetBSD 11 kernel with apk, BusyBox and s6, and moves every package containing AI model output into a separate repository. There is no installer yet, but you can already build it by hand.

---

A new operating system turns up almost every week, but few define themselves by what they leave out. **AlpineBSD** does. Its wiki describes it as a system based on the NetBSD kernel, with a userland inspired by Alpine Linux, whose goal is "making it possible to use as little AI-generated software as possible". The Register covered it on 30 October and it has been doing the rounds on forums and aggregators ever since.

Best to say it up front: this is a work in progress. There is no installer, no numbered releases, and only the *edge* branch exists, for x86_64 only. Anyone who wants to try it has to put it together by hand from the NetBSD installer.

## What it actually is

The idea is easy to grasp if you know its two parents:

- **From [NetBSD](/netbsd)** it takes the kernel, the libc and platform-specific tools such as `mount`. The `netbsd-base` package in the repository is at **version 11.0**, the release NetBSD shipped at the end of July.
- **From [Alpine Linux](/alpine-linux)** it takes the way of working: the **apk-tools** package manager (3.0.6), **BusyBox**, and a build system based on `abuild` and `APKBUILD` files. It is not an Alpine fork: the package collection is its own, although many recipes start from `aports`.

It differs from both. Compared with NetBSD, the userland leans a little more GNU, preferring GNU make over BSD make, for example. Compared with Alpine, which boots with OpenRC, AlpineBSD uses skarnet's **s6**, and the wiki says OpenRC is planned as an alternative.

The wiki also gives a warning worth reading before jumping in: the NetBSD kernel supports far less hardware than Linux, especially on laptops, and it recommends checking NetBSD's list of supported machines.

## The AI policy, which is what sets it apart

For AlpineBSD, a program is **"tainted"** if its code, documentation, binaries or any other asset include, even partly, the output of a generative AI tool. On that basis it splits software across four repositories:

| Repository | Support | What it accepts |
|---|---|---|
| `base` | Official | Clean software only |
| `main` | Official | Clean software only |
| `tainted` | Community | Tainted software |
| `community` | Community | Clean, but may depend on `tainted` |

Dependencies only flow upwards in that table: `community` can pull from `tainted`, never the other way round. The most conservative install enables only `base` and `main`, and with that the project guarantees nothing tainted gets in. If you want more, you add `tainted` with a tag in `/etc/apk/repositories` and then have to request each package explicitly, for example `apk add python3@tainted`. Otherwise apk complains when something depends on a tainted package.

Every package also carries a label you can search for with apk: `genai:clean`, `genai:tainted`, `genai:pinned`, plus three `genai:indirect-*` variants for packages tainted only through their build, runtime or test dependencies.

The *pinned* part is interesting. Some software is too fundamental to drop, so the project freezes it at the **last version without AI-generated code**. There are six right now: **binutils, GCC, GDB, libffi, Perl and xorriso**. The wiki stresses that pinning is a last resort: they would rather find an alternative or move the package to `tainted`.

And the `tainted` list gives a sense of how far AI has already spread through free software. The repository index on 1 November includes, among others, **git, curl, CMake, Meson, Go, htop, PCRE2, FreeType and fontconfig**. Tools anyone takes for granted on a system, left outside the guaranteed core here.

The rule applies to people too: no contribution to the project (code, documentation, packaging recipes, or even posts on the mailing lists or IRC) may be made with generative AI tools.

## It didn't come out of nowhere

NetBSD already had a stance of its own. Since 2024, its commit guidelines presume that code generated by a large language model is tainted and cannot go in without explicit approval. AlpineBSD builds on a kernel with that rule and extends it to everything on top, which is where most of the software lives.

It is also the second eye-catching BSD project in a few weeks, though with the opposite philosophy: a few days ago we reported that [Daemonarchy, Jordan Hubbard's Omarchy for FreeBSD](/articles/hyprbsd-daemonarchy-virtio-graphics-freebsd), is built with AI help.

## Who is behind it

The wiki doesn't name anyone. The source code, the ports (`absd-ports`), the mailing lists and the issue tracker live on SourceHut under the `~sircmpwn` account, which belongs to **Drew DeVault**, SourceHut's creator, and the key that signs the mirror's packages is his. Contributions go in as patches via `git send-email` to the `alpinebsd-devel` list, SourceHut style, and there is a `#alpinebsd` channel on Libera.Chat.

Other people are already active on the tracker, and the repository is not small for something a month old: the oldest package on the mirror dates from 27 September, and on 1 November there are roughly **430 entries in `base`, 170 in `main`, 95 in `community` and 143 in `tainted`**, counting subpackages (`-dev`, `-doc` and the like).

## How to install it today

The wiki calls the procedure one for "the brave", and it is. In short:

1. Boot the NetBSD installer, set up networking and drop to a shell.
2. Partition the disk as **GPT** with `gpt` (EFI, swap and root) and format with `newfs_msdos` and `newfs -O 2ea`.
3. Bootstrap apk: create `/etc/apk/repositories` pointing at `mirror.alpinebsd.org/edge/base`, fetch the public key and the static `apk.static` binary.
4. Install `absd-base`, `netbsd-kernel-generic-bin`, `netbsd-firmware`, `ifupdown` and the bootloader (`netbsd-bootloader-efi` or `-mbr`), plus `dhcpcd`, `wpa_supplicant` or the man pages if you want them.
5. `chroot` in, create the devices with `MAKEDEV all`, enable the s6 services (consoles, `mountall`, `fsck`, `hostname`…), copy the EFI loader or set up BIOS boot, and edit `/etc/boot.cfg` and `/etc/fstab`.
6. Reboot and hope. The wiki itself signs off with "Congratulations, you've (probably) installed AlpineBSD."

The apk steps will look familiar to Alpine users, everything else to NetBSD users. If neither rings a bell, better wait for the installer.

## Is it worth a look?

As a daily driver, not yet. For understanding where the debate on AI in free software is heading, yes: AlpineBSD turns a position into something you can check with `apk search`, and its lists of pinned and tainted packages are a good gauge of how much code written with language models has already made it into everyday tools.

We have added it to the catalogue on its [AlpineBSD page](/alpinebsd), in the [BSD category](/bsd). Since it doesn't publish releases yet, the page tracks the *edge* branch. For background, see the [history of BSD](/articles/history-of-bsd), the [history of Alpine Linux](/articles/history-of-alpine-linux) and our guide to [Linux package managers](/articles/linux-package-managers).

**Sources:** [AlpineBSD wiki](https://wiki.alpinebsd.org/), its [AI policy](https://wiki.alpinebsd.org/ai-policy), the [installation guide](https://wiki.alpinebsd.org/installation/) and [contributing page](https://wiki.alpinebsd.org/contributing/), the [package mirror](https://mirror.alpinebsd.org/edge/), the [SourceHut project](https://sr.ht/~sircmpwn/alpinebsd), [NetBSD's commit guidelines](https://www.netbsd.org/developers/commit-guidelines.html) and [The Register](https://www.theregister.com/os-platforms/2026/10/30/alpinebsd-announced-an-ai-free-foss-os/5306589).
