summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorPhilip J Freeman <elektron@halo.nu>2025-05-31 12:34:14 -0700
committerPhilip J Freeman <elektron@halo.nu>2025-05-31 15:47:31 -0700
commit34105077c777b0d2c5c69f39921f376b84ce1443 (patch)
tree606152d6f739a0ee7fd8e5127e79b595f3fe8c85 /README.md
parent5392080129b1093f36533e47c155f618c283ea57 (diff)
Deploying a demo amd64 debian-based OS via ostree
This is a prototype outline for building and deploying a debian based OS with ostree. For purposes of demonstration, the OS runs from a bootable USB device on a UEFI capable amd64 machine. Once a USB device is created and booted, the OS can be updated using a simple shell script. <https://ostreedev.github.io/ostree/> <https://www.nin.wiki/Halo_numbers>
Diffstat (limited to 'README.md')
-rw-r--r--README.md54
1 files changed, 45 insertions, 9 deletions
diff --git a/README.md b/README.md
index 52266d8..3b63f19 100644
--- a/README.md
+++ b/README.md
@@ -1,16 +1,52 @@
# ostree-demo
-roughing out a quick demo to try out ostree for deploying ubuntu
+## Intro
-# delta test - adding nethack
+This is a prototype outline for building and deploying a debian based OS with
+ostree. For purposes of demonstration, the OS runs from a bootable USB device
+on a UEFI capable amd64 machine. Once a USB device is created and booted, the
+OS can be updated using a simple shell script.
- sudo ./make_rootfs.sh
- sudo ./make_rootfs.sh with-app
- sudo ./ostree_commit.sh rootfs/20250504.182708/
- sudo ./ostree_commit.sh rootfs/20250504.183218/
+## Obtaining prebuilt usb images
- sudo ./ostree_delta.sh rootfs^ rootfs
+Prebuilt usb device images are available here: <https://os.halo.nu/images/>
- du -sh delta-update-file
- 60K delta-update-file
+A gpg signed checksum file is available to verify authenticity.
+
+Download the `.img.gz` and the `.img.bmap` file locally and use bmaptool to
+write to a usb device. e.g:
+
+ sudo bmaptool copy ./halo-01-usb-*.img /dev/sdX
+
+
+## Using the running system
+
+On first boot, the system should re-partition the usb device and grow the root
+filesystem for you.
+
+### Login
+
+Login as `root` with the password `guest`
+
+### Connect to the internet
+
+Use network manager on the cli to connect to the internet
+
+ nmtui
+
+### Update
+
+Check for and apply system updates from public ostree repo, hosted at
+<https://os.halo.nu/repo-dev/>:
+
+ # halo-upgrade
+
+
+## Building locally
+
+ $ sudo ./build-os # build the os in a chroot, tweak it for ostree
+ $ sudo ./commit-os # commit the root filesystem to an ostree build repo
+ $ ./publish-repo # migrate the content to an archive repo
+ $ sudo ./generate-usb-img # build a bootable usb image file
+ $ ./sync-repo # sync the archive repo up to a webserver