aa42de91d10bf1ab18d61eccb4da35b2298b247c — Francesco Gazzetta 2 years ago 68210e8
Add nixos image docs
M builds.sr.ht/compatibility.md => builds.sr.ht/compatibility.md +14 -0
@@ 130,5 130,19 @@ port (e.g. Debian uses "amd64" while Alpine uses "x86_64").
      <td colspan="3">unstable</td>

M builds.sr.ht/index.md => builds.sr.ht/index.md +1 -0
@@ 77,6 77,7 @@ Presently, the following build images are available:
- debian/sid
- debian/stretch
- freebsd
- nixos/unstable

Additional images are easy to add so long as the guest OS supports SSH and POSIX
shell, please [email me](mailto:sir@cmpwn.com) if you'd like something added

M builds.sr.ht/installation.md => builds.sr.ht/installation.md +6 -0
@@ 81,6 81,12 @@ provided `genimg` to produce the disk image. A `build.yml` file is also provided
for each image to build itself on your build infrastructure once you have it set
up. It's recommended that you set up cron jobs to build fresh images frequently.

### Image-specific notes

* NixOS can be bootstrapped from any distribution. The provided build.yml does
  it from Alpine, but it can be easily switched to eg. Archlinux just by
  changing the host image and adjusting the packages.

## Creating new images

If you require additional images, study the `control` script to understand how

M builds.sr.ht/manifest.md => builds.sr.ht/manifest.md +8 -0
@@ 46,6 46,10 @@ A list of package names to install on the image.
- **Arch Linux** installs these packages with `yay`
- **Debian** installs these packages with `apt-get install`
- **FreeBSD** installs these packages with `pkg`
- **NixOS** installs these packages with `nix-env -iA`. Since it's possible to
  specify multiple channels, you must provide the full selection path,
  for example `nixpkgs.hello`. Note that the `nixpkgs` channel is **not**
  added by default.

## repositories

@@ 67,6 71,10 @@ The format is name: url, and the syntax of url varies between images.
  e.g. `main` or `non-free`, and `key-id` is an optional PGP key ID to add to
- **FreeBSD** images do not support extra package repositories.
- **NixOS** uses `channel-url`. The repo name is relevant, since
  `repo-name: repo-url` wil execute the commands
  `nix-channel --add repo-url repo-name` and `nix-channel --update repo-name`.
  Given the nature of nix, no channel is added by default.

## sources