From 9177366ba5eb02962136f361cb7f6622d0baa567 Mon Sep 17 00:00:00 2001
From: FermeLeLundi
Date: Thu, 8 May 2025 06:31:25 +0000
Subject: Update README.md
Typos, syntax
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 6a37a1d0..dc23d324 100644
--- a/README.md
+++ b/README.md
@@ -7,7 +7,7 @@
- Alice Linux is my personal daily driver minimal distro that used musl libc, busybox as main core utilities, package manager written in POSIX shell script, Wayland as the only gui server and trying to be minimal, lightweight and usable as possible.
+ Alice Linux is my personal daily driver minimal distro that uses musl libc, busybox as main core utilities, package manager written in POSIX shell, Wayland as the only GUI server and trying to be as minimal, lightweight and usable as possible.
Main keypoint:
@@ -21,7 +21,7 @@
- gettext-tiny instead of gettext
- mandoc instead of man-db
- doas instead of sudo
-- ... (more will come)
+- ... (more to come)
See release page for released rootfs.
--
cgit v1.2.3
From f12de7d4b4bf27fc5373c24f2606bda7f5c641b7 Mon Sep 17 00:00:00 2001
From: FermeLeLundi
Date: Thu, 8 May 2025 06:32:06 +0000
Subject: Update README.md
Typo
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index dc23d324..c88574ae 100644
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@
- See docs directory for installation guide and other informations.
+ See docs directory for installation guide and other information.
--
cgit v1.2.3
From e8f34adbab5de079adc3eff9c549c5144bbbc735 Mon Sep 17 00:00:00 2001
From: FermeLeLundi
Date: Thu, 8 May 2025 06:54:07 +0000
Subject: Update docs/install.md
Updates: sentence flow and typos
---
docs/install.md | 64 ++++++++++++++++++++++++++++++++++++++++-----------------
1 file changed, 45 insertions(+), 19 deletions(-)
diff --git a/docs/install.md b/docs/install.md
index e6669e2c..dfcc1a4e 100644
--- a/docs/install.md
+++ b/docs/install.md
@@ -1,7 +1,9 @@
-## Install Alice
-Here is a guide to installing Alice Linux on your computer using the chroot method. You can do this from your existing Linux distribution or from a live environment, such as Alice Live or another Linux distribution. Make sure your chosen environment has the necessary partitioning tools, filesystem tools, and extraction tools.
+# Install Alice
+
+This is a guide to install Alice Linux on your computer using the chroot method. You can do this from your existing Linux distribution or from a live environment, such as Alice Live or another Linux distribution. Make sure your chosen environment has the necessary partitioning tools, filesystem tools, and extraction tools.
### Get Alice rootfs tarball
+
Download the Alice rootfs tarball from the [release](https://codeberg.org/emmett1/alicelinux/releases) page, along with its `sha256sum` file.
```
$ curl -O
@@ -17,37 +19,41 @@ alicelinux-rootfs-20240525.tar.xz: OK
```
### Prepare the partition and filesystem
-Prepare the partition and filesystem of your choice. In this guide, I will use ext4 as an example.
+
+Prepare the partition and filesystem of your choice. In this guide `ext4` is used as an example.
```
# cfdisk /dev/sdX
# mkfs.ext4 /dev/sdXY
```
-Mount your created partition somewhere. In this guide, I will use /mnt/alice as the mount point.
+Mount your created partition somewhere. In this guide `/mnt/alice` is used as the mount point.
```
# mkdir /mnt/alice
# mount /dev/sdXY /mnt/alice
```
### Extract the Alice rootfs tarball
+
Extract the Alice rootfs into the mounted partition.
```
$ tar xvf alicelinux-rootfs-*.tar.xz -C /mnt/alice
```
### Enter chroot
-First, chroot into Alice. (Replace /mnt/alice with your chosen mount point.)
+
+First, chroot into Alice. Replace `/mnt/alice` with your chosen mount point.
```
# /mnt/alice/usr/bin/apkg-chroot /mnt/alice
```
-Any further commands after this will be executed inside the Alice environment.
+All further commands will be executed inside the Alice environment.
### Clone Alice repos
-Fetch the Alice packages repositories somewhere. I'll fetch them inside the /var/lib directory to keep the system clean.
+
+Fetch the Alice packages repositories somewhere. I'll fetch them inside the `/var/lib` directory to keep the system clean.
```
# cd /var/lib
# git clone --depth=1 https://codeberg.org/emmett1/alicelinux
```
-Once we have the repositories cloned, we need to configure `apkg`. `apkg` is Alice's package build system (or package manager). By default, Alice does not provide an `apkg` config file (yes, `apkg` can work without a config file), but we need to create one. The `apkg` config file should be located at `/etc/apkg.conf` by default. Let's create one.
+Once we have the repositories cloned, we need to configure `apkg`. `apkg` is the Alice package build system or package manager. By default, Alice does not provide an `apkg` config file (yes, `apkg` can work without a config file), but we will create one for ease of use. The `apkg` config file should be located at `/etc/apkg.conf` by default.
### Configure apkg.conf
@@ -55,7 +61,7 @@ First, we set `CFLAGS` and `CXXFLAGS`. Alice base packages are built using `-O3
```
# echo 'export CFLAGS="-O3 -march=x86-64 -pipe"' >> /etc/apkg.conf
```
-And use whats in `CFLAGS` for `CXXFLAGS`.
+And use what is in `CFLAGS` for `CXXFLAGS`.
```
# echo 'export CXXFLAGS="$CFLAGS"' >> /etc/apkg.conf
```
@@ -67,12 +73,17 @@ I'm also going to set `NINJAJOBS` here. Without it, `ninja` will use all threads
```
# echo 'export NINJAJOBS="6"' >> /etc/apkg.conf
```
-Next, we need to set the package's build scripts path (I'll call it `package repos`) so `apkg` can find them. The `APKG_REPO` variable can accept multiple values for multiple `package repos`.
+Next, we need to set the package build scripts path (I'll call it `package repos`) so `apkg` can find them. The `APKG_REPO` variable can accept multiple values for multiple `package repos`.
-Alice provides four (4) `package repos` (at the time of this writing): `core`, `extra`, `xorg` and `wayland`. `core` contains all base packages, and `extra` includes other packages beyond the base. `xorg` and `wayland` contain packages for gui and their dependencies.
+Alice provides four (4) `package repos` (at the time of this writing): `core`, `extra`, `xorg` and `wayland`:
+ * `core` contains all base packages
+ * `extra` includes other packages beyond the base
+ * both `xorg` and `wayland` contain packages for the GUI and their dependencies.
First, get the absolute path of the `package repos` where we cloned them. By the way, we are still inside the `/var/lib` directory where we cloned the repo.
+
>NOTE: USE TAB COMPLETION!
+
```
# realpath alicelinux/repos/core
/var/lib/alicelinux/repos/core
@@ -111,38 +122,43 @@ Then add these paths to `/etc/apkg.conf`.
# echo 'APKG_WORK_DIR=/var/cache/work' >> /etc/apkg.conf
```
### Full system upgrade/rebuild
+
On the first install, we should upgrade the system first.
-> Use uppercase `U` for a system upgrade, and lowercase `u` to upgrade a specific package of your choice.
+> Use uppercase `U` for a system upgrade, and lowercase `u` to upgrade a specific package.
```
# apkg -U
```
-If you changed `CFLAGS` and `CXXFLAGS` to something other than the default, it's a good time to perform a full rebuild first. In this case, you can skip upgrading the system because performing a full rebuild will already use the latest version in `package repos`.
+If you changed `CFLAGS` and `CXXFLAGS` to something other than the default, it is a good time to perform a full rebuild first. In this case, you can skip upgrading the system, because performing a full rebuild will already use the latest version in `package repos`.
-> Add the `-f` flag to force rebuild of existing prebuilt package.
+> Add the `-f` flag to force rebuild of the existing prebuilt package.
> `apkg -a` prints all installed packages on the system.
```
# apkg -u $(apkg -a)
```
### Install development packages
+
Before installing any additional packages, we need to install development packages.
```
# apkg -I meson cmake pkgconf libtool automake perl
```
-### Install kernel
+### Install the kernel
+
You can configure your own kernel from [kernel.org](https://kernel.org/) or use the one provided by Alice.
-> The provided kernel will take a lot of time to compile because many options are enabled.
+> The provided kernel will take a lot of time to compile, because many options are enabled.
If you want to use Alice's kernel, just run:
```
# apkg -I linux
```
### Install firmware
+
If your hardware requires firmware, install it using:
```
# apkg -I linux-firmware linux-firmware-nvidia
```
### Install bootloader
+
In this guide, I'm going to use `grub` as the bootloader. Install `grub`:
```
# apkg -I grub
@@ -154,29 +170,33 @@ Then generate grub config:
```
### Hostname
+
Change `alice` to the hostname of your choice.
```
# echo alice > /etc/hostname
```
-### Fstab
+### File systems table Fstab
+
Change the partition and filesystem of your choice below:
```
# echo '/dev/sda1 swap swap defaults 0 1' >> /etc/fstab
# echo '/dev/sda2 / ext4 defaults 0 0' >> /etc/fstab
```
### Enable runit services
+
Alice uses busybox's `runit` as its main service manager. Enable the required services:
```
# ln -s /etc/sv/tty1 /var/service
# ln -s /etc/sv/tty2 /var/service
# ln -s /etc/sv/tty3 /var/service
```
-I'm enabling 3 `tty` services. `tty` is required; without it, you won't be able to log in (or run any commands).
+I'm enabling 3 `tty` services. `tty` is required; without it, you won't be able to log in or run any commands.
> The runit service directory is `/etc/sv`.
> Create a symlink from `/etc/sv/` to `/var/service` to enable it; remove the symlink to disable it.
### Setup user and password
+
Add your user:
```
# adduser
@@ -193,12 +213,14 @@ You might need to add your user to the `input` and `video` groups to start the W
```
### Root password
+
Set the password for the `root` user:
```
# passwd
```
### Networking
+
You might want to set up networking before rebooting. Use `wpa_supplicant` and `dhcpcd`.
```
# apkg -I wpa_supplicant dhcpcd
@@ -214,6 +236,7 @@ Enable the service:
```
### Timezone
+
Install `tzdata`:
```
# apkg -I tzdata
@@ -229,15 +252,18 @@ Alternatively, you can copy it and then uninstall `tzdata` to keep your installe
```
### Reboot and enjoy!
+
Exit the chroot environment and unmount the Alice partition, then reboot:
```
# exit
# umount /mnt/alice
# reboot
```
+The machine is now ready for use.
## Some important notes
-- `Alice` uses `spm` and `apkg` as its package manager and package build system. Run with the `-h` flag to see available options.
+
+- `Alice` uses `spm` and `apkg` as its package manager and package build system. Run with the `-h` flag to see the available options.
- Additional scripts are provided with the name `apkg-