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 /docs | |
| parent | a661879fd59ce4a4abb2ae64fb5e39fd447311f6 (diff) | |
| download | alicelinux-71d40463f0fc9c7b2a5bee846da72d4a32ee885b.tar.gz alicelinux-71d40463f0fc9c7b2a5bee846da72d4a32ee885b.zip | |
Woodpecker CI 6e25ae12ade87673b43442e2d271a9e0f92a8837 [SKIP CI]
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/index.html | 76 | ||||
| -rw-r--r-- | docs/install.html | 42 | ||||
| -rw-r--r-- | docs/packagemanager.html | 51 |
3 files changed, 118 insertions, 51 deletions
diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 00000000..e55f4364 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,76 @@ +<!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://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="./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> +</div> +</body> +</html> 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> |