Self-sovereign infrastructure platform with secure, encrypted NixOS deployments
# Clone and build
git clone https://github.com/yourusername/keystone
cd keystone
./bin/build-iso
# With SSH keys
./bin/build-iso --ssh-key ~/.ssh/id_ed25519.pub
# Install Nix
curl -L https://nixos.org/nix/install | sh
source ~/.bashrc
# Install Nix
curl -L https://nixos.org/nix/install | sh
# Or with Homebrew
brew install nix
# Install WSL2 + Ubuntu
wsl --install -d Ubuntu
wsl
# Then follow Ubuntu instructions above
Add to .github/workflows/build-iso.yml:
name: Build ISO
on:
workflow_dispatch:
inputs:
ssh_key:
description: 'SSH public key to embed in ISO'
required: false
type: string
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v22
- name: Build ISO with SSH key
if: github.event.inputs.ssh_key != ''
run: |
./bin/build-iso --ssh-key '$'
- name: Build ISO without SSH key
if: github.event.inputs.ssh_key == ''
run: nix build .#iso
- uses: actions/upload-artifact@v3
with:
name: keystone-iso
path: result/iso/*.iso
git clone https://github.com/YOURUSERNAME/keystoneflake.nix or use ./bin/build-iso --ssh-keysresult/iso/*.iso