aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/index.html4
-rw-r--r--docs/install.html27
-rw-r--r--docs/packagemanager.html15
-rw-r--r--docs/readme.html72
4 files changed, 99 insertions, 19 deletions
diff --git a/docs/index.html b/docs/index.html
index e55f4364..a4949053 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -61,7 +61,7 @@
<body>
<div class="centered-wrapper">
<h1>docs</h1>
- <a href="/">home</a> / <a href="/docs">docs</a> / <a href="https://codeberg.org/emmett1/alicelinux">development</a> / <a href="https://codeberg.org/emmett1/alicelinux/releases">download</a> / <a href="https://sourceforge.net/projects/alice-linux/files/iso/">iso</a> / <a href="/community.html">community</a> / <a href="/donate.html">donate</a>
+ <a href="/">home</a> / <a href="/docs">docs</a> / <a href="https://codeberg.org/emmett1/alicelinux">development</a> / <a href="https://sourceforge.net/projects/alice-linux/files/">download</a> / <a href="/community.html">community</a> / <a href="/donate.html">donate</a>
<hr>
<p>Here lies documentation for <strong>Alice Linux</strong>.</p>
<p>If you found any typo or error in docs, or even wan't to contribute, feel free to <a href="https://codeberg.org/emmett1/alicelinux/issues">open issue</a> :D</p>
@@ -70,7 +70,7 @@
<li><a href="./packagemanager.html">Package Manager</a></li>
</ul>
<br><hr>
- <p>Copyright (C) Alice Linux, 2024</p>
+ <p>Copyright (C) Alice Linux, 2024-2026</p>
</div>
</body>
</html>
diff --git a/docs/install.html b/docs/install.html
index df09b883..2f967850 100644
--- a/docs/install.html
+++ b/docs/install.html
@@ -61,7 +61,7 @@
<body>
<div class="centered-wrapper">
<h1>docs</h1>
- <a href="/">home</a> / <a href="/docs">docs</a> / <a href="https://codeberg.org/emmett1/alicelinux">development</a> / <a href="https://codeberg.org/emmett1/alicelinux/releases">download</a> / <a href="https://sourceforge.net/projects/alice-linux/files/iso/">iso</a> / <a href="/community.html">community</a> / <a href="/donate.html">donate</a>
+ <a href="/">home</a> / <a href="/docs">docs</a> / <a href="https://codeberg.org/emmett1/alicelinux">development</a> / <a href="https://sourceforge.net/projects/alice-linux/files/">download</a> / <a href="/community.html">community</a> / <a href="/donate.html">donate</a>
<hr>
<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>
@@ -91,25 +91,25 @@ alicelinux-rootfs-20240525.tar.xz: OK
<p>First, chroot into Alice. (Replace <code>/mnt/alice</code> with your chosen mount point)</p>
<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>
+<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>
+<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>
<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"' &gt;&gt; /etc/apkg.conf
+<pre><code># echo 'export CFLAGS=&quot;-O3 -march=x86-64 -pipe&quot;' &gt;&gt; /etc/apkg.conf
</code></pre>
<p>And use whats in <code>CFLAGS</code> for <code>CXXFLAGS</code>.</p>
-<pre><code># echo 'export CXXFLAGS="$CFLAGS"' &gt;&gt; /etc/apkg.conf
+<pre><code># echo 'export CXXFLAGS=&quot;$CFLAGS&quot;' &gt;&gt; /etc/apkg.conf
</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"' &gt;&gt; /etc/apkg.conf
+<pre><code># echo 'export MAKEFLAGS=&quot;-j6&quot;' &gt;&gt; /etc/apkg.conf
</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"' &gt;&gt; /etc/apkg.conf
+<pre><code># echo 'export NINJAJOBS=&quot;6&quot;' &gt;&gt; /etc/apkg.conf
</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"' &gt;&gt; /etc/apkg.conf
+<pre><code># echo 'APKG_REPO=&quot;/var/lib/repos/core /var/lib/repos/extra&quot;' &gt;&gt; /etc/apkg.conf
</code></pre>
<blockquote>
<p>NOTE: All repo paths must be declared in the APKG_REPO variable, separated by a single space.</p>
@@ -133,7 +133,6 @@ alicelinux-rootfs-20240525.tar.xz: OK
<p>Now run <code>reposync</code> to sync latest package templates.</p>
<pre><code># reposync
</code></pre>
-<p> </p>
<p>After setting up our <code>package repos</code>, make sure <code>apkg</code> can find the packages. We can use <code>apkg -s &lt;pattern&gt;</code> to search for packages.</p>
<pre><code># apkg -s sway
swayidle
@@ -167,8 +166,8 @@ sway
<pre><code># apkg -u $(apkg -a)
</code></pre>
<blockquote>
-<p>NOTE: Add the <code>-f</code> flag to force rebuild of existing prebuilt package.</p>
-<p>NOTE: <code>apkg -a</code> prints all installed packages on the system.</p>
+<p>NOTE: Add the <code>-f</code> flag to force rebuild of existing prebuilt package.
+NOTE: <code>apkg -a</code> prints all installed packages on the system.</p>
</blockquote>
<h2>Install kernel</h2>
<p>You can configure your own kernel from <a href="https://kernel.org/">kernel.org</a> or use the one provided by Alice.</p>
@@ -207,8 +206,8 @@ sway
</code></pre>
<p>I'm enabling 3 <code>tty</code> services. <code>tty</code> is required; without it, you won't be able to log in (or run any commands).</p>
<blockquote>
-<p>The runit service directory is <code>/etc/sv</code>.</p>
-<p>Create a symlink from <code>/etc/sv/&lt;service&gt;</code> to <code>/var/service</code> to enable it; remove the symlink to disable it.</p>
+<p>The runit service directory is <code>/etc/sv</code>.
+Create a symlink from <code>/etc/sv/&lt;service&gt;</code> to <code>/var/service</code> to enable it; remove the symlink to disable it.</p>
</blockquote>
<h2>Setup user and password</h2>
<p>Add your user.</p>
@@ -265,7 +264,7 @@ sway
<li>Run <code>updateconf</code> to update config files in <code>/etc</code> after package upgrades.</li>
</ul>
<br><hr>
- <p>Copyright (C) Alice Linux, 2024</p>
+ <p>Copyright (C) Alice Linux, 2024-2026</p>
</div>
</body>
</html>
diff --git a/docs/packagemanager.html b/docs/packagemanager.html
index b4978f7b..e2947fda 100644
--- a/docs/packagemanager.html
+++ b/docs/packagemanager.html
@@ -61,7 +61,7 @@
<body>
<div class="centered-wrapper">
<h1>docs</h1>
- <a href="/">home</a> / <a href="/docs">docs</a> / <a href="https://codeberg.org/emmett1/alicelinux">development</a> / <a href="https://codeberg.org/emmett1/alicelinux/releases">download</a> / <a href="https://sourceforge.net/projects/alice-linux/files/iso/">iso</a> / <a href="/community.html">community</a> / <a href="/donate.html">donate</a>
+ <a href="/">home</a> / <a href="/docs">docs</a> / <a href="https://codeberg.org/emmett1/alicelinux">development</a> / <a href="https://sourceforge.net/projects/alice-linux/files/">download</a> / <a href="/community.html">community</a> / <a href="/donate.html">donate</a>
<hr>
<h1>Package Manager</h1>
<p>In Alice, theres two package manager used, <a href="https://codeberg.org/emmett1/spm">spm</a> and <a href="https://codeberg.org/emmett1/autils">autils</a>. Why two package manager? <code>spm</code> was written for generic package manager for linux distribution. And <code>autils</code> is written specifically for <code>Alice</code> and required <code>spm</code>.</p>
@@ -95,12 +95,16 @@ nsxiv 32-1
<pre><code>(build package)
$ ./configure --prefix=/usr
$ make
+
(install into fake directory)
$ make DESTDIR=$PWD/fakeroot install
+
(turn fake directory into package (package.spm))
# spm -b $PWD/fakeroot
+
(mv 'package.spm' into correct format (name#version-release.spm))
# mv package.spm pkgname#pkgversion-pkgrelease.spm
+
(install package into system)
# spm -i pkgname#pkgversion-pkgrelease.spm
</code></pre>
@@ -141,7 +145,7 @@ SPM_FORCEINSTALL: set any value to ignore conflicted files
# SPM_FORCEINSTALL=1 SPM_ROOT=/mnt/rootfs spm -i pkgname#pkgversion-pkgrelease.spm
</code></pre>
<h2>autils</h2>
-<p><code>autils</code> stands for <code>alice utilitis</code>. <code>autils</code> contains main package manager (apkg), utilities (apkg-&lt;util&gt;) and &lt;random util script&gt;. <code>autils</code> is specifically written to manage <code>Alice</code> packages.</p>
+<p><code>autils</code> stands for <code>alice utilitis</code>. <code>autils</code> contains main package manager (apkg), utilities (apkg-<!-- raw HTML omitted -->) and <!-- raw HTML omitted -->. <code>autils</code> is specifically written to manage <code>Alice</code> packages.</p>
<h2>apkg</h2>
<p><code>apkg</code> is a main package manager that can solve dependencies, batch install/upgrade/remove packages, system upgrades, trigger necessary caches, and etc. <code>apkg</code> can be run inside or outside package template.</p>
<p>When running outside package template, <code>apkg</code> will need 'package names' as arguments, and those 'package names' will search through <code>APKG_REPO</code> environment. Example:</p>
@@ -302,6 +306,7 @@ APKG_NOPROMPT defaults is empty, skip prompt, use any value
<p>Usage:</p>
<pre><code>(print out broken packages)
$ revdep
+
(verbosely print missing libraries)
$ revdep -v
</code></pre>
@@ -327,8 +332,10 @@ $ revdep -v
<p>Usage:</p>
<pre><code>(to remove old packages)
# apkg-clean -p | xargs rm
+
(to remove old sources)
# apkg-clean -s | xargs rm
+
(to remove both old packages and sources)
# apkg-clean | xargs rm
</code></pre>
@@ -342,6 +349,7 @@ $ revdep -v
<p>Usage:</p>
<pre><code>(print list foreign packages)
$ apkg-foreign
+
(remove foreign packages)
# apkg -r $(apkg-foreign)
</code></pre>
@@ -355,11 +363,12 @@ $ apkg-foreign
<p>usage:</p>
<pre><code>(print package contains redundant dependencies)
$ apkg-redundantdeps
+
(remove redundant dependencies for depends list)
$ apkg-redundantdeps -f
</code></pre>
<br><hr>
- <p>Copyright (C) Alice Linux, 2024</p>
+ <p>Copyright (C) Alice Linux, 2024-2026</p>
</div>
</body>
</html>
diff --git a/docs/readme.html b/docs/readme.html
new file mode 100644
index 00000000..b2d6bff8
--- /dev/null
+++ b/docs/readme.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <title>Alice Linux - docs</title>
+ <style>
+ body {
+ font-family: monospace;
+ font-size: 14px;
+ line-height: 1.25;
+ max-width: 60em;
+ margin-left: auto;
+ margin-right: auto;
+ padding-left: 1em;
+ padding-right: 1em;
+ background-color: #242424;
+ color: #fefefe;
+ }
+ pre {
+ background-color: #2b2b2b;
+ border-radius: 3px;
+ padding: 10px;
+ overflow-x: auto;
+ }
+ code {
+ color: #f7f3d6;
+ }
+ img {
+ display: block;
+ max-width: 100%;
+ }
+ hr {
+ border: 0;
+ border-top: 1px dashed #fefefe;
+ margin: 20px 0;
+ }
+ table {
+ width: 100%;
+ border-collapse: collapse;
+ }
+ th, td {
+ padding: 4px;
+ }
+ th {
+ background-color: #221e1f;
+ }
+ table, th, td {
+ border: 1px dashed #e7e8eb;
+ }
+ a {
+ color: #90cbf9;
+ text-decoration: none
+ }
+ a:hover {
+ color: #869edc;
+ text-decoration: underline
+ }
+ </style>
+</head>
+<body>
+<div class="centered-wrapper">
+ <h1>docs</h1>
+ <a href="/">home</a> / <a href="/docs">docs</a> / <a href="https://codeberg.org/emmett1/alicelinux">development</a> / <a href="https://sourceforge.net/projects/alice-linux/files/">download</a> / <a href="/community.html">community</a> / <a href="/donate.html">donate</a>
+ <hr>
+<p>Here lies documentation for <strong>Alice Linux</strong>.</p>
+<p>If you found any typo or error in docs, or even wan't to contribute, feel free to <a href="https://codeberg.org/emmett1/alicelinux/issues">open issue</a> :D</p>
+ <br><hr>
+ <p>Copyright (C) Alice Linux, 2024-2026</p>
+</div>
+</body>
+</html>