SHA256
Compare commits
4
Commits
| Author | SHA256 | Date | |
|---|---|---|---|
|
|
0df33175b3 | ||
|
|
23597e3a36 | ||
|
|
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.
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
# Documentation
|
# Documentation
|
||||||
|
|
||||||
Documentation for Kira Linux
|
Documentation for Kira Linux
|
||||||
|
|
||||||
|
[Documantation Index](src/index.md)
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
[Back to index](index.md)
|
||||||
|
|
||||||
|
# Disk Layout
|
||||||
|
|
||||||
|
EFI partition - FAT32
|
||||||
|
Root partition - bcachefs
|
||||||
|
SWAP - optional
|
||||||
|
|
||||||
|
Bcachefs subvolumes:
|
||||||
|
`/home`
|
||||||
|
`/usr`
|
||||||
|
`/var`
|
||||||
|
`/var/tmp`
|
||||||
|
|
||||||
|
`/usr` and `/var` supposed to be captured by snapshots
|
||||||
|
|
||||||
|
`/var/tmp` - need to be excluded from snapshots so making it separate subvolume
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
# Documentation for Kira Linux
|
||||||
|
|
||||||
|
|
||||||
|
[Disk Layout](disk-layout.md)
|
||||||
|
[Update Process](updates.md)
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
[Back to index](index.md)
|
||||||
|
|
||||||
|
# Update process
|
||||||
|
|
||||||
|
Kira Linux provides 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 internal routine is as follows:
|
||||||
|
|
||||||
|
1. When perform update (`pacman -Su`) - pacman hook that triggers before a system upgrade by using the "When = PreTransaction"
|
||||||
|
- will snapshot /usr and /var subvolumes and put snapshots to `/bzz-snaps` directory named as `bzz-usr-yyyy-mm-ddTHH-MM-SS` and `bzz-var-yyyy-mm-ddTHH-MM-SS`
|
||||||
|
- will create file `/var/lib/hive-up/lock`
|
||||||
|
|
||||||
|
2. If update was successful, remove file `/var/lib/hive-up/lock` by another pacman hook
|
||||||
|
|
||||||
|
|
||||||
|
6. On boot **nyanit** check file existence `/var/lib/hive-up/lock` and if it is false **nyanit** roll back latest snapshots from `/bzz-snaps` dir.
|
||||||
|
|
||||||
|
7. Otherwise boot as usual.
|
||||||
Reference in New Issue
Block a user