diff options
| author | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2025-09-08 15:14:55 +0000 |
|---|---|---|
| committer | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2025-09-08 15:14:55 +0000 |
| commit | 71d40463f0fc9c7b2a5bee846da72d4a32ee885b (patch) | |
| tree | 3c74d34196b26e13f475c4b53fe7cb30cc64132a | |
| parent | a661879fd59ce4a4abb2ae64fb5e39fd447311f6 (diff) | |
| download | alicelinux-71d40463f0fc9c7b2a5bee846da72d4a32ee885b.tar.gz alicelinux-71d40463f0fc9c7b2a5bee846da72d4a32ee885b.zip | |
Woodpecker CI 6e25ae12ade87673b43442e2d271a9e0f92a8837 [SKIP CI]
| -rw-r--r-- | community/index.html (renamed from community.html) | 0 | ||||
| -rw-r--r-- | docs/index.html (renamed from docs.html) | 6 | ||||
| -rw-r--r-- | docs/install.html | 42 | ||||
| -rw-r--r-- | docs/packagemanager.html | 51 | ||||
| -rw-r--r-- | donate/donate.html (renamed from donate.html) | 0 | ||||
| -rw-r--r-- | index.html | 4 |
6 files changed, 48 insertions, 55 deletions
diff --git a/community.html b/community/index.html index 5765c610..5765c610 100644 --- a/community.html +++ b/community/index.html diff --git a/docs.html b/docs/index.html index 0d88459e..e55f4364 100644 --- a/docs.html +++ b/docs/index.html @@ -63,9 +63,11 @@ <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> <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> <ul> -<li><a href="./docs/install.html">Install Alice</a></li> -<li><a href="./docs/packagemanager.html">Package Manager</a></li> +<li><a href="./install.html">Install Alice</a></li> +<li><a href="./packagemanager.html">Package Manager</a></li> </ul> <br><hr> <p>Copyright (C) Alice Linux, 2024</p> diff --git a/docs/install.html b/docs/install.html index 6abaaa33..a41a5e0c 100644 --- a/docs/install.html +++ b/docs/install.html @@ -97,23 +97,24 @@ $ curl -O <url>.sha256sum <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>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/apkg.conf </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/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"' >> /etc/apkg.conf +<pre><code># echo 'export MAKEFLAGS="-j6"' >> /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"' >> /etc/apkg.conf +<pre><code># echo 'export NINJAJOBS="6"' >> /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"' >> /etc/apkg.conf +<pre><code># echo 'APKG_REPO="/var/lib/repos/core /var/lib/repos/extra"' >> /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> +<blockquote> +<p>NOTE: All repo paths must be declared in the APKG_REPO variable, separated by a single space.</p> </blockquote> <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> @@ -134,8 +135,8 @@ $ curl -O <url>.sha256sum <p>Now run <code>reposync</code> to sync latest package templates.</p> <pre><code># reposync </code></pre> -<p> -After setting up our <code>package repos</code>, make sure <code>apkg</code> can find the packages. We can use <code>apkg -s <pattern></code> to search for packages.</p> +<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 <pattern></code> to search for packages.</p> <pre><code># apkg -s sway swayidle swaybg @@ -155,23 +156,26 @@ sway <p>Before we do, install development packages first.</p> <pre><code># apkg -I meson cmake pkgconf libtool automake perl </code></pre> -<blockquote><p>NOTE: use upppercase 'i' for solve dependencies, lowecase 'i' without solve dependencies.</p> +<blockquote> +<p>NOTE: use upppercase 'i' for solve dependencies, lowecase 'i' without solve dependencies.</p> </blockquote> <p>Now lets upgrade our system.</p> <pre><code># apkg -U </code></pre> -<blockquote><p>NOTE: Use uppercase <code>U</code> for a system upgrade, and lowercase <code>u</code> to upgrade a specific package of your choice.</p> +<blockquote> +<p>NOTE: Use uppercase <code>U</code> for a system upgrade, and lowercase <code>u</code> to upgrade a specific package of your choice.</p> </blockquote> <p>If you changed <code>CFLAGS</code> and <code>CXXFLAGS</code> 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 <code>package repos</code>.</p> <pre><code># apkg -u $(apkg -a) </code></pre> -<blockquote><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> +<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> </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> -<blockquote><p>NOTE: The provided kernel will take a lot of time to compile because many options are enabled.</p> +<p>You can configure your own kernel from <a href="https://kernel.org/">kernel.org</a> or use the one provided by Alice.</p> +<blockquote> +<p>NOTE: The provided kernel will take a lot of time to compile because many options are enabled.</p> </blockquote> <p>If you want to use Alice's kernel, just run:</p> <pre><code># apkg -I linux @@ -203,10 +207,10 @@ NOTE: <code>apkg -a</code> prints all installed packages on the system.</p> # ln -s /etc/sv/tty2 /var/service # ln -s /etc/sv/tty3 /var/service </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>. -Create a symlink from <code>/etc/sv/<service></code> to <code>/var/service</code> to enable it; remove the symlink to disable it.</p> +<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/<service></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> diff --git a/docs/packagemanager.html b/docs/packagemanager.html index 95a133da..b4978f7b 100644 --- a/docs/packagemanager.html +++ b/docs/packagemanager.html @@ -95,16 +95,12 @@ 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> @@ -137,11 +133,9 @@ linux lib/modules/6.6.41-Alice/build/scripts/dummy-tools/gcc [pkgname] Package 'pkgname#pkgversion-pkgrelease' upgraded. </code></pre> <h2>spm - environment</h2> -<table> -<tr><th>env</th><th>description</th></tr> -<tr><td>SPM_ROOT</td><td>use custom root location for package installation</td></tr> -<tr><td>SPM_FORCEINSTALL</td><td>set any value to ignore conflicted files</td></tr> -</table> +<pre><code>SPM_ROOT: use custom root location for package installation +SPM_FORCEINSTALL: set any value to ignore conflicted files +</code></pre> <p>You can pass these environment to <code>spm</code> command, example:</p> <pre><code># SPM_ROOT=/mnt/rootfs spm -i pkgname#pkgversion-pkgrelease.spm # SPM_FORCEINSTALL=1 SPM_ROOT=/mnt/rootfs spm -i pkgname#pkgversion-pkgrelease.spm @@ -273,10 +267,10 @@ util-macros </code></pre> <p>make full system rebuild in dependencies order (<code>-f</code>: force rebuild, <code>-u</code>: upgrade/reinstall, <code>-D</code>: solve dependency order, <code>-a</code>: list all installed package(s)):</p> <pre><code># apkg -f -u $(apkg -D $(apkg -a)) -</code></pre> -<p>... +... (start rebuilding package in dependencies order here) -...</p> +... +</code></pre> <p>remove installed packages:</p> <pre><code># apkg -r wlroots pango sway [...] Package 'wlroots' removed. @@ -289,20 +283,18 @@ util-macros </code></pre> <h2>apkg - environment</h2> <p>You can pass environment to <code>apkg</code> to override defaults and in <code>/etc/apkg.conf</code>. Available environment and its default value as follows:</p> -<table> -<tr><th>env</th><th>default value</th><th>description</th></tr> -<tr><td>APKG_ROOT</td><td>/</td><td>root for package installation</td></tr> -<tr><td>APKG_CONF</td><td>/etc/apkg.conf</td><td>apkg's config file</td></tr> -<tr><td>APKG_REPO</td><td></td><td>defaults is empty, template repo path, space separated variable</td></tr> -<tr><td>APKG_PACKAGE_DIR</td><td>$PWD</td><td>prebuilt package directory path</td></tr> -<tr><td>APKG_SOURCE_DIR</td><td>$PWD</td><td>package source directory path</td></tr> -<tr><td>APKG_WORK_DIR</td><td>$PWD</td><td>package working directory path</td></tr> -<tr><td>APKG_NOPROMPT</td><td></td><td>skip prompt, use any value</td></tr> -</table> +<pre><code> env default value description +APKG_ROOT / root for package installation +APKG_CONF /etc/apkg.conf apkg's config file +APKG_REPO defaults is empty, template repo path, space separated variable +APKG_PACKAGE_DIR $PWD prebuilt package directory path +APKG_SOURCE_DIR $PWD package source directory path +APKG_WORK_DIR $PWD package working directory path +APKG_NOPROMPT defaults is empty, skip prompt, use any value +</code></pre> <p>You can add these environment into <code>apkg</code> config file.</p> <h2>/etc/apkg.conf</h2> -<p><code>apkg</code> can work without its config file by using all default value. Default config path for <code>apkg</code> is <code>/etc/apkg.conf</code>. You can override config path by append <code>APKG_CONF</code> to <code>apkg</code>, example: -</p> +<p><code>apkg</code> can work without its config file by using all default value. Default config path for <code>apkg</code> is <code>/etc/apkg.conf</code>. You can override config path by append <code>APKG_CONF</code> to <code>apkg</code>, example:</p> <pre><code># APKG_CONF=/etc/apkg-local.conf apkg <args> </code></pre> <h2>revdep</h2> @@ -310,14 +302,14 @@ util-macros <p>Usage:</p> <pre><code>(print out broken packages) $ revdep - (verbosely print missing libraries) $ revdep -v </code></pre> <p>You can combine with <code>apkg</code> to rebuild broken packages, example;</p> <pre><code># apkg -f -u $(revdep) </code></pre> -<blockquote><p>NOTE: <code>revdep</code> does not solve dependencies, so you might need manually rebuild broken packages instead combine with <code>apkg</code>.</p> +<blockquote> +<p>NOTE: <code>revdep</code> does not solve dependencies, so you might need manually rebuild broken packages instead combine with <code>apkg</code>.</p> </blockquote> <h2>updateconf</h2> <p><code>updateconf</code> is script to update configuration files inside <code>/etc</code> directory. Its recomended to run after packages upgrades.</p> @@ -335,17 +327,14 @@ $ 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> <h2>apkg-deps</h2> <p>Script to find runtime linked dependencies of installed package. Its good to figure out dependenciess when writing package template.</p> -<p>Usage: -</p> +<p>Usage:</p> <pre><code>$ apkg-deps <pkg> </code></pre> <h2>apkg-foreign</h2> @@ -353,7 +342,6 @@ $ revdep -v <p>Usage:</p> <pre><code>(print list foreign packages) $ apkg-foreign - (remove foreign packages) # apkg -r $(apkg-foreign) </code></pre> @@ -367,7 +355,6 @@ $ 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> diff --git a/donate.html b/donate/donate.html index 7d1e7806..7d1e7806 100644 --- a/donate.html +++ b/donate/donate.html @@ -63,8 +63,8 @@ <h1>home</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> <hr> -<p><img src="assets/AliceLinux.png" alt="alicelinux" /> -<img src="assets/grimshot-240524-234840.png" alt="alicelinux" /></p> +<p><img alt="alicelinux" src="assets/AliceLinux.png"></p> +<p><img alt="alicelinux" src="assets/grimshot-240524-234840.png"></p> <p><strong>Alice Linux</strong> is my personal daily driver minimal distro that used <a href="https://musl.libc.org/">musl</a> libc, <a href="https://www.busybox.net/">busybox</a> as main core utilities, package manager written in POSIX shell script, <a href="https://wayland.freedesktop.org/">Wayland</a> as the gui server and trying to be minimal, lightweight and usable as possible.</p> <ul> <li>no systemd</li> |