diff options
| author | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2026-06-02 16:09:40 +0000 |
|---|---|---|
| committer | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2026-06-02 16:09:40 +0000 |
| commit | a3f78cc891cbdcda1b1444be9bc8d030e6e0a53f (patch) | |
| tree | 6cc70cdc21eda4ecd91bb412bccb5743a4f9e10b | |
| parent | 33f64c85077822ded7798ce76035a66cacd90301 (diff) | |
| download | alicelinux-a3f78cc891cbdcda1b1444be9bc8d030e6e0a53f.tar.gz alicelinux-a3f78cc891cbdcda1b1444be9bc8d030e6e0a53f.zip | |
Woodpecker CI d81f312365113d2c06e38b7cc8a4654fae72d87f [SKIP CI]
| -rw-r--r-- | docs/install.html | 62 |
1 files changed, 22 insertions, 40 deletions
diff --git a/docs/install.html b/docs/install.html index c04cae3a..aac29e84 100644 --- a/docs/install.html +++ b/docs/install.html @@ -184,7 +184,7 @@ <h1>Install Alice</h1> <p>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.</p> <h2>Get Alice rootfs tarball</h2> -<p>Download the Alice rootfs tarball from the <a href="https://codeberg.org/emmett1/alicelinux/releases">release</a> page, along with its <code>sha256sum</code> file.</p> +<p>Download the Alice rootfs tarball from the <a href="https://alicelinux.org/download.html">download</a> page, along with its <code>sha256sum</code> file.</p> <pre><code>$ curl -O <url> $ curl -O <url>.sha256sum </code></pre> @@ -210,31 +210,31 @@ alicelinux-rootfs-20240525.tar.xz: OK <pre><code># /mnt/alice/usr/bin/apkg-chroot /mnt/alice </code></pre> <p>Any further commands after this will be executed inside the Alice environment.</p> -<h2>Configure apkg.conf</h2> -<p>Once we have the repositories cloned, we need to configure <code>apkg</code>. <code>apkg</code> is Alice's package build system (or package manager). By default, Alice does not provide an <code>apkg</code> config file (yes, <code>apkg</code> can work without a config file), but we need to create one. The <code>apkg</code> config file should be located at <code>/etc/apkg.conf</code> by default. Let's create one.</p> +<h2>Configure apkg</h2> +<p>Once we have the repositories cloned, we need to configure <code>apkg</code>. <code>apkg</code> is Alice's package build system (or package manager). <code>apkg</code> configuration is environment-based -- settings are exported as environment variables. Place them in <code>/etc/profile.d/apkg.sh</code> for system-wide configuration, or in <code>~/.profile</code> for per-user configuration.</p> <p>First, we set <code>CFLAGS</code> and <code>CXXFLAGS</code>. Alice base packages are built using <code>-O3 -march=x86-64 -pipe</code>. You can use these settings or change them to your preference.</p> -<pre><code># echo 'export CFLAGS="-O3 -march=x86-64 -pipe"' >> /etc/apkg.conf +<pre><code># echo 'export CFLAGS="-O3 -march=x86-64 -pipe"' >> /etc/profile.d/apkg.sh </code></pre> <p>And use whats in <code>CFLAGS</code> for <code>CXXFLAGS</code>.</p> -<pre><code># echo 'export CXXFLAGS="$CFLAGS"' >> /etc/apkg.conf +<pre><code># echo 'export CXXFLAGS="$CFLAGS"' >> /etc/profile.d/apkg.sh </code></pre> <p>Next set <code>MAKEFLAGS</code>. I will use <code>6</code> for my <code>8 threads</code> machine.</p> -<pre><code># echo 'export MAKEFLAGS="-j6"' >> /etc/apkg.conf +<pre><code># echo 'export MAKEFLAGS="-j6"' >> /etc/profile.d/apkg.sh </code></pre> <p>I'm also going to set <code>NINJAJOBS</code> here. Without it, <code>ninja</code> will use all threads of your machine when compiling.</p> -<pre><code># echo 'export NINJAJOBS="6"' >> /etc/apkg.conf +<pre><code># echo 'export NINJAJOBS="6"' >> /etc/profile.d/apkg.sh </code></pre> <p>Next, we need to set the package's build scripts path (I'll call it <code>package repos</code>) so <code>apkg</code> can find them. The <code>APKG_REPO</code> variable can accept multiple values for multiple <code>package repos</code>.</p> <p>Alice provides two (2) <code>package repos</code> (at the time of this writing): <code>core</code> and <code>extra</code>. <code>core</code> contains all base packages, and <code>extra</code> includes other packages beyond the base.</p> <p>I'm gonna use directory <code>/var/lib/repos/core</code> and <code>/var/lib/repos/extra</code> for <code>core</code> and <code>extra</code> repos respectively.</p> -<pre><code># echo 'APKG_REPO="/var/lib/repos/core /var/lib/repos/extra"' >> /etc/apkg.conf +<pre><code># echo 'export APKG_REPO="/var/lib/repos/core /var/lib/repos/extra"' >> /etc/profile.d/apkg.sh </code></pre> <p>You can also create a directory the community repo.</p> <blockquote> <p>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.</p> </blockquote> -<pre><code># echo 'APKG_REPO="/var/lib/repos/core /var/lib/repos/extra /var/lib/repos/community"' >> /etc/apkg.conf +<pre><code># echo 'export APKG_REPO="/var/lib/repos/core /var/lib/repos/extra /var/lib/repos/community"' >> /etc/profile.d/apkg.sh </code></pre> <p>Next, we will set up directories for <code>packages</code>, <code>sources</code>, and <code>work</code>. By default, these directories are inside the package template, but we will change them to <code>/var/cache/pkg</code>, <code>/var/cache/src</code>, and <code>/var/cache/work</code> respectively. You can change these to any location where you want to store these files.</p> <p>First, create the directories.</p> @@ -242,21 +242,21 @@ Additionally all repo paths must be declared in the APKG_REPO variable, separate # mkdir -p /var/cache/src # mkdir -p /var/cache/work </code></pre> -<p>Then add these paths to <code>/etc/apkg.conf</code>.</p> -<pre><code># 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 +<p>Then add these paths to <code>/etc/profile.d/apkg.sh</code>.</p> +<pre><code># 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 </code></pre> -<h2>Configure reposync.conf</h2> -<p><code>reposync</code> is a tool to sync package templates from git repositories. Add remote repos for <code>core</code> and <code>extra</code> into <code>/etc/reposync.conf</code>. The format of remote repos in <code>reposync.conf</code> is <code><gitrepo>|<branch>|<localpath></code>.</p> -<pre><code># 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 +<h2>Configure reposync</h2> +<p><code>reposync</code> is a tool to sync package templates from git repositories. Like <code>apkg</code>, <code>reposync</code> configuration is environment-based. Add remote repos for <code>core</code> and <code>extra</code> to <code>/etc/profile.d/reposync.sh</code> (system-wide) or <code>~/.profile</code> (per-user). The format is <code><gitrepo>|<branch>|<localpath></code>.</p> +<pre><code># 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 </code></pre> <p>If you also want the community repo, add it as well.</p> <blockquote> <p>NOTE: The community repo is not held to the same standards as the official repos.</p> </blockquote> -<pre><code># echo 'https://codeberg.org/emmett1/alicelinux|community|/var/lib/repos/community' >> /etc/reposync.conf +<pre><code># echo 'export REPOSYNC_COMMUNITY="https://codeberg.org/emmett1/alicelinux|community|/var/lib/repos/community"' >> /etc/profile.d/reposync.sh </code></pre> <p>Now run <code>reposync</code> to sync latest package templates.</p> <pre><code># reposync @@ -309,14 +309,6 @@ NOTE: <code>apkg -a</code> prints all installed packages on the system.</p> <p>If your hardware requires firmware, install it using.</p> <pre><code># apkg -I linux-firmware </code></pre> -<h2>Install bootloader</h2> -<p>In this guide, I'm going to use <code>grub</code> as the bootloader. Install <code>grub</code>.</p> -<pre><code># apkg -I grub -</code></pre> -<p>Then generate grub config.</p> -<pre><code># grub-install /dev/sdX -# grub-mkconfig -o /boot/grub/grub.cfg -</code></pre> <h2>Hostname</h2> <p>Change <code>alice</code> to the hostname of your choice.</p> <pre><code># echo alice > /etc/hostname @@ -353,20 +345,6 @@ Create a symlink from <code>/etc/sv/<service></code> to <code>/var/service <p>Set the password for the <code>root</code> user.</p> <pre><code># passwd </code></pre> -<h2>Networking</h2> -<p>You might want to set up networking before rebooting. For wifi connection, install <code>wpa_supplicant</code>.</p> -<pre><code># apkg -I wpa_supplicant -</code></pre> -<p>Configure your SSID.</p> -<pre><code># wpa_passphrase <YOUR SSID> <ITS PASSWORD> >> /etc/wpa_supplicant.conf -</code></pre> -<p>Enable the service.</p> -<pre><code># ln -s /etc/sv/wpa_supplicant /var/service -</code></pre> -<p>Then configure & enable <code>udhcpc</code> service.</p> -<pre><code># vi /etc/sv/udhcpc/conf -# ln -s /etc/sv/udhcpc /var/service -</code></pre> <h2>Timezone</h2> <p>Install <code>tzdata</code>.</p> <pre><code># apkg -I tzdata @@ -378,6 +356,10 @@ Create a symlink from <code>/etc/sv/<service></code> to <code>/var/service <pre><code># cp /usr/share/zoneinfo/Asia/Kuala_Lumpur /etc/localtime # apkg -r tzdata </code></pre> +<h2>Install bootloader</h2> +<p>See the <a href="bootloader.html">bootloader documentation</a> for installing and configuring a bootloader.</p> +<h2>Networking</h2> +<p>See the <a href="networking.html">networking documentation</a> for setting up networking.</p> <h2>Reboot and enjoy!</h2> <p>Exit the chroot environment and unmount the Alice partition, then reboot.</p> <pre><code># exit |