SHA256
Compare commits
2
Commits
45c00e2d89
...
de25ed2aac
| Author | SHA256 | Date | |
|---|---|---|---|
|
|
de25ed2aac | ||
|
|
ef6b01e18a |
@@ -10,9 +10,6 @@
|
|||||||
*.log.*
|
*.log.*
|
||||||
*.sig
|
*.sig
|
||||||
|
|
||||||
pkg/
|
|
||||||
src/
|
|
||||||
|
|
||||||
# ---> Archives
|
# ---> Archives
|
||||||
# It's better to unpack these files and commit the raw source because
|
# It's better to unpack these files and commit the raw source because
|
||||||
# git has its own built in compression methods.
|
# git has its own built in compression methods.
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
Documentation for Kira Linux
|
||||||
|
|
||||||
|
[Update Process](updates.md)
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
[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.
|
||||||
|
|
||||||
Reference in New Issue
Block a user