summaryrefslogtreecommitdiff
path: root/shards.1
diff options
context:
space:
mode:
authoraxtlos <axtlos@getcryst.al>2023-03-18 23:21:42 +0100
committeraxtlos <axtlos@getcryst.al>2023-03-18 23:21:42 +0100
commit365b8aff3a82a90f50cce5f0204941c64d865514 (patch)
treeb2c3fb530196b2795c3fafd316e0a131d4244c19 /shards.1
parent6dd8523ab9e74cb272731a32b02c2aa538814c97 (diff)
downloadwebsite-365b8aff3a82a90f50cce5f0204941c64d865514.tar.gz
website-365b8aff3a82a90f50cce5f0204941c64d865514.tar.bz2
Add crystal(1) and shards(1)
Diffstat (limited to '')
-rw-r--r--shards.1102
1 files changed, 102 insertions, 0 deletions
diff --git a/shards.1 b/shards.1
new file mode 100644
index 0000000..3207ba4
--- /dev/null
+++ b/shards.1
@@ -0,0 +1,102 @@
+.Dd $Mdocdate$
+.Dt Shards 1
+.Os
+.Sh SYNOPSIS
+.Nm Project Shards
+.Op shards
+.Ar MacOS inspired
+.Ar Immutable
+.Ar Crystal Spin
+.Sh DESCRIPTION
+.Nm
+is an immutable Crystal Linux spin using multiple Volumes to create one system
+.Sh How it works
+.Nm
+utilizes multiple Volumes (called Shards) to create one root using bind and overlay mounts
+
+.Sh The different Shards
+.Nm
+Consists of 6 Shards:
+
+.IP \fBRoot\fP
+\- The Root shard acts like a preloader, it provides the special root directories
+like /run or /dev and the initial tools for mounting the other Shards and creating
+the proper root system
+
+
+.IP \fBSystem\fP
+\- The System shard is the main root, it contains everything required to boot
+the system and cannot be modified unless booted into the recovery
+
+
+.IP \fBDesktop\fP
+\- The Desktop shard contains all packages related to the Desktop, which by
+default is GNOME, just like the System shard it cannot be modified unless booted
+into the recovery
+
+
+.IP \fBData\fP
+\- Data Contains everything the user installs themselves or changes on the root
+filesystem, it is mounted read-write and contains /etc
+
+
+.IP \fBUsers\fP
+\- Users contains the home directories of all users, it is simply bind mounted
+to /home on boot as read-write
+
+
+.IP \fBRecovery\fP
+\- The Recovery shard is a seperate system from the other shards, it can be
+booted by itself. It contains the Graphical and Terminal based recovery for
+updating, troubleshooting or reinstalling Project Shards
+
+
+.Sh Package Management
+.Nm
+uses a pacman wrapper called shardctl to install and remove packages, however
+users can also enter a special mode to use \fBpacman\fR(1)
+directly.
+
+\fBshardctl\fP also allows installing aur packages and wraps around \fBapx\fR(1)
+to allow installing packages into containers.
+
+
+.Nm
+comes preinstalled with flatpak and allows installing them by simply dragging
+the flatpakref files into ~/Applications.
+This is achieved using \fBappD\fP.
+
+
+\fBappD\fP also allows installing pacman packages by dragging the .pkg.tar.xz
+files into ~/Applications.
+
+.Sh Updating
+.Nm
+uses the Recovery to perform updates. When a user decides to update their
+.Nm
+Installation, they get rebooted into the Recovery which automatically starts the Update.
+
+
+If the Update is succesfull the Recovery either turns the computer off or reboots
+it, depending on what the user chose when starting the update.
+
+If the Update fails, then the recovery rolls back to a snapshot it took before
+starting the update and warns the user next time it boots into the main Project
+Shards installation.
+
+.Sh Installing
+.Nm
+installs similiarly to MacOS, the ISO offered for download is actually the recovery,
+when booting into the iso the user is immediately presented with the Recovery
+screen and can Install
+.Nm.
+
+
+The installation process only asks the user for the disk to install onto, any
+postinstall configurations usually set in the Installer, like user creation,
+setting the timezone or choosing locales are done post install in a first-setup
+application.
+
+.Sh See Also
+\fBaxtlos\fP(7),
+\fBCrystal Linux\fP(1)