From a3f78cc891cbdcda1b1444be9bc8d030e6e0a53f Mon Sep 17 00:00:00 2001
From: Woodpecker CI 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. Download the Alice rootfs tarball from the release page, along with its Download the Alice rootfs tarball from the download page, along with its Any further commands after this will be executed inside the Alice environment. Once we have the repositories cloned, we need to configure Once we have the repositories cloned, we need to configure First, we set And use whats in Next set I'm also going to set Next, we need to set the package's build scripts path (I'll call it Alice provides two (2) I'm gonna use directory You can also create a directory the community repo. NOTE: The community repo is not held to the same standards as the official repos.
Additionally all repo paths must be declared in the APKG_REPO variable, separated by a single space. Next, we will set up directories for First, create the directories. Then add these paths to Then add these paths to If you also want the community repo, add it as well. NOTE: The community repo is not held to the same standards as the official repos. Now run Install Alice
Get Alice rootfs tarball
-sha256sum file.sha256sum file.
@@ -210,31 +210,31 @@ alicelinux-rootfs-20240525.tar.xz: OK
$ curl -O <url>
$ curl -O <url>.sha256sum
# /mnt/alice/usr/bin/apkg-chroot /mnt/alice
Configure apkg.conf
-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.Configure apkg
+apkg. apkg is Alice's package build system (or package manager). apkg configuration is environment-based -- settings are exported as environment variables. Place them in /etc/profile.d/apkg.sh for system-wide configuration, or in ~/.profile for per-user configuration.CFLAGS and CXXFLAGS. Alice base packages are built using -O3 -march=x86-64 -pipe. You can use these settings or change them to your preference.# echo 'export CFLAGS="-O3 -march=x86-64 -pipe"' >> /etc/apkg.conf
+# echo 'export CFLAGS="-O3 -march=x86-64 -pipe"' >> /etc/profile.d/apkg.sh
CFLAGS for CXXFLAGS.# echo 'export CXXFLAGS="$CFLAGS"' >> /etc/apkg.conf
+# echo 'export CXXFLAGS="$CFLAGS"' >> /etc/profile.d/apkg.sh
MAKEFLAGS. I will use 6 for my 8 threads machine.# echo 'export MAKEFLAGS="-j6"' >> /etc/apkg.conf
+# echo 'export MAKEFLAGS="-j6"' >> /etc/profile.d/apkg.sh
NINJAJOBS here. Without it, ninja will use all threads of your machine when compiling.# echo 'export NINJAJOBS="6"' >> /etc/apkg.conf
+# echo 'export NINJAJOBS="6"' >> /etc/profile.d/apkg.sh
package repos) so apkg can find them. The APKG_REPO variable can accept multiple values for multiple package repos.package repos (at the time of this writing): core and extra. core contains all base packages, and extra includes other packages beyond the base./var/lib/repos/core and /var/lib/repos/extra for core and extra repos respectively.# echo 'APKG_REPO="/var/lib/repos/core /var/lib/repos/extra"' >> /etc/apkg.conf
+# echo 'export APKG_REPO="/var/lib/repos/core /var/lib/repos/extra"' >> /etc/profile.d/apkg.sh
-
-# echo 'APKG_REPO="/var/lib/repos/core /var/lib/repos/extra /var/lib/repos/community"' >> /etc/apkg.conf
+# echo 'export APKG_REPO="/var/lib/repos/core /var/lib/repos/extra /var/lib/repos/community"' >> /etc/profile.d/apkg.sh
packages, sources, and work. By default, these directories are inside the package template, but we will change them to /var/cache/pkg, /var/cache/src, and /var/cache/work respectively. You can change these to any location where you want to store these files./etc/apkg.conf.# echo 'APKG_PACKAGE_DIR=/var/cache/pkg' >> /etc/apkg.conf
-# echo 'APKG_SOURCE_DIR=/var/cache/src' >> /etc/apkg.conf
-# echo 'APKG_WORK_DIR=/var/cache/work' >> /etc/apkg.conf
+/etc/profile.d/apkg.sh.
-# echo 'export APKG_PACKAGE_DIR=/var/cache/pkg' >> /etc/profile.d/apkg.sh
+# echo 'export APKG_SOURCE_DIR=/var/cache/src' >> /etc/profile.d/apkg.sh
+# echo 'export APKG_WORK_DIR=/var/cache/work' >> /etc/profile.d/apkg.sh
Configure reposync.conf
-reposync is a tool to sync package templates from git repositories. Add remote repos for core and extra into /etc/reposync.conf. The format of remote repos in reposync.conf is <gitrepo>|<branch>|<localpath>.# echo 'https://codeberg.org/emmett1/alicelinux|core|/var/lib/repos/core' >> /etc/reposync.conf
-# echo 'https://codeberg.org/emmett1/alicelinux|extra|/var/lib/repos/extra' >> /etc/reposync.conf
+Configure reposync
+reposync is a tool to sync package templates from git repositories. Like apkg, reposync configuration is environment-based. Add remote repos for core and extra to /etc/profile.d/reposync.sh (system-wide) or ~/.profile (per-user). The format is <gitrepo>|<branch>|<localpath>.# echo 'export REPOSYNC_CORE="https://codeberg.org/emmett1/alicelinux|core|/var/lib/repos/core"' >> /etc/profile.d/reposync.sh
+# echo 'export REPOSYNC_EXTRA="https://codeberg.org/emmett1/alicelinux|extra|/var/lib/repos/extra"' >> /etc/profile.d/reposync.sh
-# echo 'https://codeberg.org/emmett1/alicelinux|community|/var/lib/repos/community' >> /etc/reposync.conf
+# echo 'export REPOSYNC_COMMUNITY="https://codeberg.org/emmett1/alicelinux|community|/var/lib/repos/community"' >> /etc/profile.d/reposync.sh
reposync to sync latest package templates.# reposync
@@ -309,14 +309,6 @@ NOTE: apkg -a prints all installed packages on the system.
If your hardware requires firmware, install it using.
# apkg -I linux-firmware
-In this guide, I'm going to use grub as the bootloader. Install grub.
# apkg -I grub
-
-Then generate grub config.
-# grub-install /dev/sdX
-# grub-mkconfig -o /boot/grub/grub.cfg
-
Change alice to the hostname of your choice.
# echo alice > /etc/hostname
@@ -353,20 +345,6 @@ Create a symlink from /etc/sv/<service> to /var/service
Set the password for the root user.
# passwd
-Networking
-You might want to set up networking before rebooting. For wifi connection, install wpa_supplicant.
-# apkg -I wpa_supplicant
-
-Configure your SSID.
-# wpa_passphrase <YOUR SSID> <ITS PASSWORD> >> /etc/wpa_supplicant.conf
-
-Enable the service.
-# ln -s /etc/sv/wpa_supplicant /var/service
-
-Then configure & enable udhcpc service.
-# vi /etc/sv/udhcpc/conf
-# ln -s /etc/sv/udhcpc /var/service
-
Timezone
Install tzdata.
# apkg -I tzdata
@@ -378,6 +356,10 @@ Create a symlink from /etc/sv/<service> to /var/service
# cp /usr/share/zoneinfo/Asia/Kuala_Lumpur /etc/localtime
# apkg -r tzdata
+Install bootloader
+See the bootloader documentation for installing and configuring a bootloader.
+Networking
+See the networking documentation for setting up networking.
Reboot and enjoy!
Exit the chroot environment and unmount the Alice partition, then reboot.
# exit
--
cgit v1.2.3