From 23597e3a366b7cf9657609cb3d486d6a3ce62cb25d9a767226367f33a89e4132 Mon Sep 17 00:00:00 2001 From: kira Date: Wed, 9 Sep 2026 17:01:35 +0200 Subject: [PATCH] Quick save --- README.md | 4 +++- src/index.md | 2 +- src/updates.md | 19 ++++++++++--------- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 66b7cbf..5dc7e3a 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ # Documentation -Documentation for Kira Linux \ No newline at end of file +Documentation for Kira Linux + +[Documantation Index](src/index.md) diff --git a/src/index.md b/src/index.md index 68e97ea..80acd6b 100644 --- a/src/index.md +++ b/src/index.md @@ -1,3 +1,3 @@ -Documentation for Kira Linux +# Documentation for Kira Linux [Update Process](updates.md) diff --git a/src/updates.md b/src/updates.md index 0137819..accfab1 100644 --- a/src/updates.md +++ b/src/updates.md @@ -1,17 +1,18 @@ [Back to index](index.md) + # Update process Main feature of Kira Linux is atomic (to some degree) update process that allows roll back of unsuccessful or broken updates. We achieve this by relying on bcachefs snapshots and subvolumes. -The main routine is as follows: -1. Before update process snapshot /usr and /var directories. -Put snapshots to **/bzz-snaps** directory named as **bzz-usr-yyyy-mm-ddTHH-MM-SS** and **bzz-var-yyyy-mm-ddTHH-MM-SS** -2. Set update status in /var/lib/hive-up/hyve-db.json as failed (update_status = false) -3. Perform update (pacman -Su) -4. If update was successful, set update status in /var/lib/hive-up/hyve-db.json to true. -5. Process with reboot. -6. On boot Nyanit reads update status from /var/lib/hive-up/hyve-db.json and if it is false roll back latest snapshots from /bzz-snaps dir. -7. Otherwise boot as usual. +The main internal routine is as follows: +1. Before update process snapshot /usr and /var directories. +Put snapshots to `/bzz-snaps` directory named as `bzz-usr-yyyy-mm-ddTHH-MM-SS` and `bzz-var-yyyy-mm-ddTHH-MM-SS` +2. Set update status in `/var/lib/hive-up/hyve-db.json` as failed (`update_status = false`) +3. Perform update (`pacman -Su`) +4. If update was successful, set update status in `/var/lib/hive-up/hyve-db.json` to true. +5. Process with reboot. +6. On boot **nyanit** reads update status from `/var/lib/hive-up/hyve-db.json` and if it is false **nyanit** roll back latest snapshots from `/bzz-snaps` dir. +7. Otherwise boot as usual.