How to install an OS with a ROOTFS tarball / “Mixed idea!”
Basically, what this guide will be, as stated in the header above, is on how to install an operating system, in this case Chimera Linux, from a root filesystem tarball. You will be needing a place to install it to, as well as a general knowledge about Linux and the packages that are required for it to work. I'll also be helping you format with ZFS if you're new to it.
Partitioning
The guessed partitions from now on will be as such:
device: device1, '/boot' - 1G device2, '/' - 25% // Give it a reasonable size: if unsure, do 25% of the device. device3, '/home' - 100%It will be up to you on how to partition, although I personally recommend doing so via
gdisk(1).
Before doing the process, it is also recommended to overwrite device with
zeroes, or, to make sure nothing is recoverable, /dev/urandom two times, then zeroes.
I would like you to back up any important data before any of this, too.
Worth noting, if you plan on using ZFS (since Chimera supports it), maybe do:
device: device1, '/boot' - 1G device2, '/' - 100% // ZFS will do the rest, so just give it all.
Formatting
The filesystem you choose for the partitions of device don't matter much,
although it is generally recommend (by I) that device1 is formatted as
FAT32. This is so you have no need for the EFI partition. Mounting will be up to you, as
there isn't much to note about it.
Subhe., “...with ZFS!”
In the case you want ZFS and don't know crap about formatting with it (I'm in the same boat, don't worry!), here go some commands, alongside some flags stolen from the [root on zfs] page in Chimera Linux's wiki: (remember to run these as root)
zpool create -o ashift=12 -O acltype=posixacl -O relatime=on \ -O canmount=off -O xattr=sa -O mountpoint=/ -R /mnt poolname device2 # -R makes its argument its root, which means that the directory # specified is prefixed to any mountpoints in the pool. So, for example, # mountpoint=/home would become mountpoint=/mnt/home. The option is # NOT permanent: it only last while the system is up. zfs create -o canmount=noauto -o mountpoint=/ poolname/rootname zfs create -o canmount=noauto -o mountpoint=/home poolname/homename # These flags are VERY basic: you will most likely prefer to go over zfsprops(7) for goodies like # compression, encryption, checksums, readonly, and other things. Do note some of these must be set in their # creation and not via zfs-set(8).
Manual pages worth reading: zpoolprops(7) (the -o arguments in
zpool-create(8)) and zfsprops(7) (-O in
zpool-create(8), -o in zfs-create(8)).
For mounting, just run zfs mount poolname as root. If you set up encryption,
it is zfs load-key [arguments that depend on the keyformat] poolname then the forementioned.
Getting the actual ROOTFS
Download the tarball then extract it in mounted device2: that should be all.
NOTE: The ROOTFS releases for Chimera can be found here [here]
with "ROOTFS" somewhere in the name. Select your architecture, as well as the bootstrap image.
chroot(8)ing into it
Although you could chroot into it by running the actual chroot(8)
command, I recommend you to run chrooting utility your distribution provides.
For example, Chimera Linux provides chimera-chroot, while Artix Linux provides artix-chroot.
The Rest
This will all depend on you, but, for the sake of the guide, I'll be providing you "base" installation instructions: at the end of this, you'll only have a working boot manager, so you can install whatever else you want.
Of noting: Chimera Linux provides meta-packages containing required packages
for certain functions. An example of this would be base-full-core.
I recommend reading the documentation on so, as well as looking for the packages'
dependencies.