aboutsummaryrefslogtreecommitdiff
path: root/src/docs
diff options
context:
space:
mode:
Diffstat (limited to 'src/docs')
-rw-r--r--src/docs/Changing-Init-Program.html92
-rw-r--r--src/docs/Chroot.html206
-rw-r--r--src/docs/Configuring-Init.html122
-rw-r--r--src/docs/Init-System.html66
-rw-r--r--src/docs/Installation.html71
-rw-r--r--src/docs/Kernel.html114
-rw-r--r--src/docs/Making-your-system-bootable.html106
-rw-r--r--src/docs/Package-Manager.html70
-rw-r--r--src/docs/Packaging-System.html197
-rw-r--r--src/docs/Post_002dinstallation.html71
-rw-r--r--src/docs/Preparing-Environment.html129
-rw-r--r--src/docs/Rsync-Repositories.html101
-rw-r--r--src/docs/Setting-up-an-rsync-repository-for-distribution.html99
-rw-r--r--src/docs/System-Configuration.html77
-rw-r--r--src/docs/Usage.html113
-rw-r--r--src/docs/cpt_002dalternatives.html82
-rw-r--r--src/docs/cpt_002dbuild.html65
-rw-r--r--src/docs/index.html108
18 files changed, 1889 insertions, 0 deletions
diff --git a/src/docs/Changing-Init-Program.html b/src/docs/Changing-Init-Program.html
new file mode 100644
index 0000000..60bf1b3
--- /dev/null
+++ b/src/docs/Changing-Init-Program.html
@@ -0,0 +1,92 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Changing Init Program (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Changing Init Program (Carbs Linux User Manual)">
+<meta name="keywords" content="Changing Init Program (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Init-System.html" rel="up" title="Init System">
+<link href="Configuring-Init.html" rel="prev" title="Configuring Init">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Changing-Init-Program"></span><div class="header">
+<p>
+Previous: <a href="Configuring-Init.html" accesskey="p" rel="prev">Configuring Init</a>, Up: <a href="Init-System.html" accesskey="u" rel="up">Init System</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Changing-Init-Program-1"></span><h3 class="section">3.2 Changing Init Program</h3>
+
+<p>By default, Carbs Linux comes preinstalled with <code>busybox-init</code>, but this
+can easily be replaced without any issues. Currently, available init systems are:
+</p>
+<ul>
+<li> sinit
+</li><li> busybox
+</li><li> runit
+</li><li> shinit
+</li></ul>
+
+<p>This example is for runit, but it will work with all init systems packaged in the
+distribution repositories. See <a href="cpt_002dalternatives.html"><code>cpt-alternatives</code></a>
+</p>
+<div class="example">
+<pre class="example">$ cpt a runit /usr/bin/init
+$ cpt a runit /usr/bin/poweroff
+$ cpt a runit /usr/bin/reboot
+</pre></div>
+
+<span id="Rebooting-after-changing-Init"></span><h4 class="subsection">3.2.1 Rebooting after changing Init</h4>
+
+<p>After switching init systems, your running init system may not accept the
+new poweroff commands. You will need to reboot/poweroff using the running init&rsquo;s
+utilities for the new utilities to work. These commands are for the init system
+currently running on your system and not the one you are switching to.
+</p>
+<dl compact="compact">
+<dt><code>busybox</code></dt>
+<dd><p><code>$ busybox reboot</code>
+</p></dd>
+<dt><code>runit</code></dt>
+<dd><p><code>$ runit-init 6</code>
+</p></dd>
+<dt><code>shinit/sinit</code></dt>
+<dd><p><code>$ kill -s INT 1</code>
+</p></dd>
+</dl>
+
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Chroot.html b/src/docs/Chroot.html
new file mode 100644
index 0000000..07c41b5
--- /dev/null
+++ b/src/docs/Chroot.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Chroot (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Chroot (Carbs Linux User Manual)">
+<meta name="keywords" content="Chroot (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Installation.html" rel="up" title="Installation">
+<link href="System-Configuration.html" rel="next" title="System Configuration">
+<link href="Preparing-Environment.html" rel="prev" title="Preparing Environment">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Chroot"></span><div class="header">
+<p>
+Next: <a href="System-Configuration.html" accesskey="n" rel="next">System Configuration</a>, Previous: <a href="Preparing-Environment.html" accesskey="p" rel="prev">Preparing Environment</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Chroot-1"></span><h3 class="section">1.2 Chroot</h3>
+
+<p>Chroot into Carbs Linux!
+</p>
+<div class="example">
+<pre class="example">$ ./cpt-chroot /mnt
+</pre></div>
+
+<span id="Setting-up-repositories"></span><h4 class="subsection">1.2.1 Setting up repositories</h4>
+
+<p>Newest tarballs do not come with repositories, so you will need to manually
+obtain them, and set your <code>CPT_PATH</code> environment variable. Carbs Linux
+repositories can either be obtained by <code>git</code> or <code>rsync</code>.
+While rsync repositories are overall faster and smaller, git offers the whole
+history of the repository and a means to manipulate your repository as you like
+it. If you want to obtain the git repository, you will need to install
+<code>git</code> itself.
+</p>
+<p>The following guide will assume that you put the repositories into
+<samp>~/repos/</samp> directory, but you can put the repositories into any directory
+you want. So go ahead and create that directory. <code>mkdir -p $HOME/repos</code>.
+</p>
+<span id="Obtaining-from-rsync"></span><h4 class="subsubsection">1.2.1.1 Obtaining from rsync</h4>
+
+<p>Carbs Linux rsync repositories live in <a href="rsync://carbslinux.org/repo">rsync://carbslinux.org/repo</a>. In
+order to obtain it, run the following:
+</p>
+<div class="example">
+<pre class="example">$ rsync -avc rsync://carbslinux.org/repo $HOME/repos/carbs
+</pre></div>
+
+<span id="Obtaining-from-git"></span><h4 class="subsubsection">1.2.1.2 Obtaining from git</h4>
+
+<p>Carbs Linux git repositories can be found both from the main server and GitHub
+(mirror). Here are both their repository links. You can clone any of them.
+</p>
+<ul>
+<li> <a href="git://git.carbslinux.org/repository">git://git.carbslinux.org/repository</a>
+</li><li> <a href="https://github.com/carbslinux/repository">https://github.com/carbslinux/repository</a>
+</li></ul>
+
+<div class="example">
+<pre class="example">$ git clone git://git.carbslinux.org/repository $HOME/repos/carbs
+</pre></div>
+
+<span id="Making-the-package-manager-use-the-repositories"></span><h4 class="subsubsection">1.2.1.3 Making the package manager use the repositories</h4>
+
+<p>In your shell&rsquo;s configuration file, or in your <samp>~/.profile</samp> file, add the
+following lines:
+</p>
+<div class="example">
+<pre class="example">export CPT_PATH=''
+CPT_PATH=$CPT_PATH:$HOME/repos/carbs/core
+CPT_PATH=$CPT_PATH:$HOME/repos/carbs/extra
+CPT_PATH=$CPT_PATH:$HOME/repos/carbs/xorg
+CPT_PATH=$CPT_PATH:$HOME/repos/carbs/community
+export CPT_PATH
+</pre></div>
+
+<span id="Updating-packages"></span><h4 class="subsection">1.2.2 Updating packages</h4>
+
+<p>It is good practice to make sure your system is up to date, especially before
+building new packages. If there is an update for the package manager you will
+need to update twice.
+</p>
+<div class="example">
+<pre class="example">$ cpt update
+</pre></div>
+
+<span id="Installing-packages"></span><h4 class="subsection">1.2.3 Installing packages</h4>
+
+<p>Since you are operating on a really small base, you might need to build and
+install new programs to extend the functionality of your system. In order to
+build and install packages new packages in Carbs, you need to execute the
+following.
+</p>
+<div class="example">
+<pre class="example">$ cpt build package
+$ cpt install package
+</pre></div>
+
+<span id="Essential-Software"></span><h4 class="subsection">1.2.4 Essential Software</h4>
+
+<p>Here is a list of software that you might want to have on your system.
+</p>
+<p>BOOTLOADERS
+</p><ul>
+<li> efibootmgr
+</li><li> grub
+</li></ul>
+<p>FILESYSTEMS
+</p><ul>
+<li> e2fsprogs
+</li><li> dosfstools
+</li><li> ntfs-3g
+</li></ul>
+<p>NETWORKING
+</p><ul>
+<li> dhcpcd
+</li><li> wpa_supplicant
+</li></ul>
+<p>TEXT EDITORS
+</p><ul>
+<li> nano
+</li><li> vim
+</li><li> neatvi
+</li><li> nvi
+</li><li> emacs
+</li><li> emacs-nox (terminal-only version of emacs)
+</li></ul>
+<p>USER SHELLS
+</p><ul>
+<li> bash
+</li><li> zsh
+</li><li> dash
+</li><li> oksh
+</li><li> rc
+</li></ul>
+<p>POSIX BASE UTILITIES
+</p><ul>
+<li> busybox
+</li><li> sbase
+</li><li> coreutils
+</li></ul>
+<p>DOCUMENTATION
+</p><ul>
+<li> carbs-docs
+</li><li> man-pages
+</li><li> man-pages-posix
+</li></ul>
+
+<span id="Obtaining-the-documentation-_0028optional_0029"></span><h4 class="subsection">1.2.5 Obtaining the documentation (optional)</h4>
+
+<p>All the documentation for Carbs Linux can be found on a single info manual to be
+viewed offline. You can obtain texinfo or the info (standalone) package in order
+to view the documentation.
+</p>
+<div class="example">
+<pre class="example">Install the documentation.
+$ cpt b carbs-docs &amp;&amp; cpt i carbs-docs
+
+Install either texinfo or the info package. We will be installing standalone info
+as it doesn't need perl.
+$ cpt b info &amp;&amp; cpt i info
+
+You can then run info and navigate through the documentation.
+$ info carbslinux
+</pre></div>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="System-Configuration.html" accesskey="n" rel="next">System Configuration</a>, Previous: <a href="Preparing-Environment.html" accesskey="p" rel="prev">Preparing Environment</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+
+
+
+</body>
+</html>
diff --git a/src/docs/Configuring-Init.html b/src/docs/Configuring-Init.html
new file mode 100644
index 0000000..e90cd74
--- /dev/null
+++ b/src/docs/Configuring-Init.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Configuring Init (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Configuring Init (Carbs Linux User Manual)">
+<meta name="keywords" content="Configuring Init (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Init-System.html" rel="up" title="Init System">
+<link href="Changing-Init-Program.html" rel="next" title="Changing Init Program">
+<link href="Init-System.html" rel="prev" title="Init System">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Configuring-Init"></span><div class="header">
+<p>
+Next: <a href="Changing-Init-Program.html" accesskey="n" rel="next">Changing Init Program</a>, Up: <a href="Init-System.html" accesskey="u" rel="up">Init System</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Configuring-Init-1"></span><h3 class="section">3.1 Configuring Init</h3>
+
+<p>There are three ways you can change the behaviour of the init system. Those are:
+</p>
+<ol>
+<li> Kernel Command Line
+</li><li> <samp>/etc/init/rc.conf</samp> file
+</li><li> Init Hooks
+</li></ol>
+
+<span id="Kernel-Command-Line"></span><h4 class="subsection">3.1.1 Kernel Command Line</h4>
+
+<p>On GRUB, you can edit the kernel command line parameters, which will be parsed
+as variables on the init system. Not all of the parameters will be acted upon,
+but all of them will be set as variables on the init script. For example an
+example command line, and how it is interpreted.
+</p>
+<div class="example">
+<pre class="example">BOOT_IMAGE=/boot/vmlinuz root=/dev/sda2 rw loglevel=3 quiet
+</pre></div>
+
+<p>This command line will be parsed to set the following variables:
+</p>
+<div class="example">
+<pre class="example">BOOT_IMAGE=/boot/vmlinuz
+root=/dev/sda2
+rw=1
+loglevel=3
+quiet=1
+</pre></div>
+
+<p>Some of these variables, such as <code>rw</code>/<code>ro</code>, <code>loglevel</code>, and
+<code>quiet</code>, will be used by the init system to change the behaviour of the
+startup.
+</p>
+<span id="g_t_002fetc_002finit_002frc_002econf-file"></span><h4 class="subsection">3.1.2 <samp>/etc/init/rc.conf</samp> file</h4>
+
+<p>However, the kernel command line isn&rsquo;t the only place to set your boot
+parameters. You can specify variables here as well, although note that the
+kernel command line always gets the priority for these variables since they can
+be set just before boot.
+</p>
+<span id="Init-Hooks"></span><h4 class="subsection">3.1.3 Init Hooks</h4>
+
+<p>Init hooks are for custom personal commands that the user may want to add to
+alter their boot. These can be used to load kernel modules, modify interfaces,
+and lot more. Those hooks are added to the <samp>/etc/init</samp> directory with the
+hook name as the suffix. For example, a boot script will be placed as
+<samp>/etc/init/my-hook.boot</samp>. Currently, there are 4 hooks that the user can use.
+</p>
+<dl compact="compact">
+<dt><samp>early-boot</samp></dt>
+<dd><p>Run after pseudo-filesystems are mounted.
+</p></dd>
+<dt><samp>boot</samp></dt>
+<dd><p>Run before the boot stage is completed.
+</p></dd>
+<dt><samp>pre.shutdown</samp></dt>
+<dd><p>Run first when shutting down.
+</p></dd>
+<dt><samp>post.shutdown</samp></dt>
+<dd><p>Run just before the system is halted.
+</p></dd>
+</dl>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="Changing-Init-Program.html" accesskey="n" rel="next">Changing Init Program</a>, Up: <a href="Init-System.html" accesskey="u" rel="up">Init System</a> &nbsp; </p>
+</div>
+
+
+
+</body>
+</html>
diff --git a/src/docs/Init-System.html b/src/docs/Init-System.html
new file mode 100644
index 0000000..cf596dd
--- /dev/null
+++ b/src/docs/Init-System.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Init System (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Init System (Carbs Linux User Manual)">
+<meta name="keywords" content="Init System (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="index.html" rel="up" title="Top">
+<link href="Configuring-Init.html" rel="next" title="Configuring Init">
+<link href="Setting-up-an-rsync-repository-for-distribution.html" rel="prev" title="Setting up an rsync repository for distribution">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Init-System"></span><div class="header">
+<p>
+Previous: <a href="Package-Manager.html" accesskey="p" rel="prev">Package Manager</a>, Up: <a href="index.html" accesskey="u" rel="up">Top</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Init-System-1"></span><h2 class="chapter">3 Init System</h2>
+
+<p>Carbs Linux init scripts are run by the init daemon (<code>busybox</code> by default)
+on boot and shutdown processes. It also provides its own halting program named
+shalt. This provides a portable method that doesn&rsquo;t rely on non-POSIX external
+programs.
+</p>
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="Configuring-Init.html" accesskey="1">Configuring Init</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Changing-Init-Program.html" accesskey="2">Changing Init Program</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+</table>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Installation.html b/src/docs/Installation.html
new file mode 100644
index 0000000..48c83c3
--- /dev/null
+++ b/src/docs/Installation.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Installation (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Installation (Carbs Linux User Manual)">
+<meta name="keywords" content="Installation (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="index.html" rel="up" title="Top">
+<link href="Preparing-Environment.html" rel="next" title="Preparing Environment">
+<link href="index.html" rel="prev" title="Top">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Installation"></span><div class="header">
+<p>
+Next: <a href="Package-Manager.html" accesskey="n" rel="next">Package Manager</a>, Previous: <a href="index.html" accesskey="p" rel="prev">Top</a>, Up: <a href="index.html" accesskey="u" rel="up">Top</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Installation-1"></span><h2 class="chapter">1 Installation</h2>
+
+<p>These are the step-by-step instructions for installing Carbs Linux.
+</p>
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="Preparing-Environment.html" accesskey="1">Preparing Environment</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Getting ready to chroot
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Chroot.html" accesskey="2">Chroot</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Going inside your new system
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="System-Configuration.html" accesskey="3">System Configuration</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Customizing for your personal use
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Kernel.html" accesskey="4">Kernel</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Compiling your own kernel
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Making-your-system-bootable.html" accesskey="5">Making your system bootable</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Installing init and bootloader
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Post_002dinstallation.html" accesskey="6">Post-installation</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Acquiring more packages and repositories
+</td></tr>
+</table>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Kernel.html b/src/docs/Kernel.html
new file mode 100644
index 0000000..eca1794
--- /dev/null
+++ b/src/docs/Kernel.html
@@ -0,0 +1,114 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Kernel (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Kernel (Carbs Linux User Manual)">
+<meta name="keywords" content="Kernel (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Installation.html" rel="up" title="Installation">
+<link href="Making-your-system-bootable.html" rel="next" title="Making your system bootable">
+<link href="System-Configuration.html" rel="prev" title="System Configuration">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Kernel"></span><div class="header">
+<p>
+Next: <a href="Making-your-system-bootable.html" accesskey="n" rel="next">Making your system bootable</a>, Previous: <a href="System-Configuration.html" accesskey="p" rel="prev">System Configuration</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Kernel-1"></span><h3 class="section">1.4 Kernel</h3>
+
+<p>Kernel isn&rsquo;t managed under the main repositories, even though you could package
+one for your personal use. Here is an <a href="https://github.com/cemkeylan/kiss-repository/tree/master/personal/linux">example kernel package</a>,
+which you will need to reconfigure for your specific setup if you want to make
+use of it.
+</p>
+<span id="Obtaining-the-kernel-sources"></span><h4 class="subsection">1.4.1 Obtaining the kernel sources</h4>
+
+<p>You can visit the https://kernel.org website to choose a kernel that you want
+to install. Though only the latest stable and longterm (LTS) versions are
+supported.
+</p>
+<div class="example">
+<pre class="example">Download the kernel and extract it
+$ wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.7.6.tar.xz
+$ tar xf linux-5.7.6.tar.xz
+
+Change directory into the kernel sources
+$ cd linux-5.7.6
+</pre></div>
+
+<span id="Installing-dependencies"></span><h4 class="subsection">1.4.2 Installing dependencies</h4>
+
+<p>In order to compile the kernel you will need to install some dependencies. You
+will need <code>libelf</code> to compile the kernel. If you want to configure using the menu
+interface you will also need <code>ncurses</code>.
+</p>
+<div class="example">
+<pre class="example">The package manager asks to install if you are building more than one package,
+so no need to run 'cpt i ...'
+$ cpt b libelf ncurses
+</pre></div>
+
+<p>In the vanilla kernel sources, you need perl to compile the kernel, but it can
+be easily patched out. You will need to apply the following patch. Patch was
+written by <a href="https://github.com/E5ten">E5ten</a>. You will need to obtain and
+apply the patch in the kernel source directory.
+</p>
+<div class="example">
+<pre class="example">$ wget https://dl.carbslinux.org/distfiles/kernel-no-perl.patch
+$ patch -p1 &lt; kernel-no-perl.patch
+</pre></div>
+
+<span id="Compiling-the-kernel"></span><h4 class="subsection">1.4.3 Compiling the kernel</h4>
+
+<p>Next step is configuring and building the kernel. You can check Gentoo&rsquo;s <a href="https://wiki.gentoo.org/wiki/Kernel/Configuration">kernel configuration guide</a>
+to learn more about the matter. Overall, Gentoo Wiki is a good place to learn
+about configuration according to your hardware. The following will assume a
+monolithic kernel.
+</p>
+<div class="example">
+<pre class="example">$ make menuconfig
+$ make
+$ install -Dm755 $(make -s image_name) /boot/vmlinuz-linux
+</pre></div>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="Making-your-system-bootable.html" accesskey="n" rel="next">Making your system bootable</a>, Previous: <a href="System-Configuration.html" accesskey="p" rel="prev">System Configuration</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+
+
+
+</body>
+</html>
diff --git a/src/docs/Making-your-system-bootable.html b/src/docs/Making-your-system-bootable.html
new file mode 100644
index 0000000..0387eb4
--- /dev/null
+++ b/src/docs/Making-your-system-bootable.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Making your system bootable (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Making your system bootable (Carbs Linux User Manual)">
+<meta name="keywords" content="Making your system bootable (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Installation.html" rel="up" title="Installation">
+<link href="Post_002dinstallation.html" rel="next" title="Post-installation">
+<link href="Kernel.html" rel="prev" title="Kernel">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Making-your-system-bootable"></span><div class="header">
+<p>
+Next: <a href="Post_002dinstallation.html" accesskey="n" rel="next">Post-installation</a>, Previous: <a href="Kernel.html" accesskey="p" rel="prev">Kernel</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Making-your-system-bootable-1"></span><h3 class="section">1.5 Making your system bootable</h3>
+
+<p>In order to be able to boot your fresh system, wou will need an init-daemon,
+init-scripts and a bootloader. The init daemon is already provided by busybox,
+but you can optionally change it.
+</p>
+<span id="Installing-a-bootloader"></span><h4 class="subsection">1.5.1 Installing a bootloader</h4>
+
+<p>In the main repository, there is efibootmgr and grub to serve as bootloaders.
+efibootmgr can be used as a standalone bootloader, or can be used to install
+grub in a UEFI environment. efibootmgr is needed unless you are using a device
+without UEFI support (or you really want to use BIOS for a reason).
+</p>
+<p>GRUB BIOS installation
+</p>
+<div class="example">
+<pre class="example">$ cpt b grub &amp;&amp; cpt i grub
+$ grub-install --target=i386-pc /dev/sdX
+$ grub-mkconfig -o /boot/grub/grub.cfg
+</pre></div>
+
+<p>GRUB UEFI installation
+</p>
+<div class="example">
+<pre class="example">$ cpt b efibootmgr &amp;&amp; cpt i efibootmgr
+$ cpt b grub &amp;&amp; cpt i grub
+
+$ grub-install --target=x86_64-efi \
+ --efi-directory=esp \
+ --bootloader-id=CarbsLinux
+
+$ grub-mkconfig -o /boot/grub/grub.cfg
+</pre></div>
+
+<span id="Installing-init-scripts"></span><h4 class="subsection">1.5.2 Installing init scripts</h4>
+
+<p>Only thing left to do is installing the init-scripts, and now you are almost
+ready to boot your system!
+</p>
+<div class="example">
+<pre class="example">$ cpt b carbs-init &amp;&amp; cpt i carbs-init
+</pre></div>
+
+<span id="Generating-fstab"></span><h4 class="subsection">1.5.3 Generating fstab</h4>
+
+<p>You can now manually edit your fstab entry, or you can use the genfstab tool.
+If you want to use the tool, exit the chroot and run the following:
+</p>
+<div class="example">
+<pre class="example">$ wget https://github.com/cemkeylan/genfstab/raw/master/genfstab
+$ chmod +x genfstab
+$ ./genfstab -U /mnt &gt;&gt; /mnt/etc/fstab
+</pre></div>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Package-Manager.html b/src/docs/Package-Manager.html
new file mode 100644
index 0000000..04173a6
--- /dev/null
+++ b/src/docs/Package-Manager.html
@@ -0,0 +1,70 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Package Manager (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Package Manager (Carbs Linux User Manual)">
+<meta name="keywords" content="Package Manager (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="index.html" rel="up" title="Top">
+<link href="Usage.html" rel="next" title="Usage">
+<link href="Post_002dinstallation.html" rel="prev" title="Post-installation">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Package-Manager"></span><div class="header">
+<p>
+Next: <a href="Init-System.html" accesskey="n" rel="next">Init System</a>, Previous: <a href="Installation.html" accesskey="p" rel="prev">Installation</a>, Up: <a href="index.html" accesskey="u" rel="up">Top</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Package-Manager-1"></span><h2 class="chapter">2 Package Manager</h2>
+
+<p>Carbs Linux uses its own package managing toolchain named <code>cpt</code>. It is a
+fork of the <a href="https://github.com/kisslinux/kiss">kiss</a> package manager. Unlike
+<code>kiss</code>, however, its main goal is being easily extendable. Instead of being
+a single file package manager, it revolves around the shell library <code>cpt-lib</code>,
+and many tools that wrap around it.
+</p>
+
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="Usage.html" accesskey="1">Usage</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Packaging-System.html" accesskey="2">Packaging System</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Rsync-Repositories.html" accesskey="3">Rsync Repositories</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+</table>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Packaging-System.html b/src/docs/Packaging-System.html
new file mode 100644
index 0000000..4fda504
--- /dev/null
+++ b/src/docs/Packaging-System.html
@@ -0,0 +1,197 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Packaging System (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Packaging System (Carbs Linux User Manual)">
+<meta name="keywords" content="Packaging System (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Package-Manager.html" rel="up" title="Package Manager">
+<link href="Rsync-Repositories.html" rel="next" title="Rsync Repositories">
+<link href="cpt_002dbuild.html" rel="prev" title="cpt-build">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Packaging-System"></span><div class="header">
+<p>
+Next: <a href="Rsync-Repositories.html" accesskey="n" rel="next">Rsync Repositories</a>, Previous: <a href="Usage.html" accesskey="p" rel="prev">Usage</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Packaging-System-1"></span><h3 class="section">2.2 Packaging System</h3>
+
+<p>A package is formed of several files, these are:
+</p><ul>
+<li> <samp>build</samp>
+</li><li> <samp>sources</samp>
+</li><li> <samp>checksums</samp>
+</li><li> <samp>version</samp>
+</li><li> <samp>depends</samp>
+</li><li> <samp>post-install</samp>
+</li><li> <samp>message</samp>
+</li><li> <samp>test</samp>
+</li></ul>
+
+<p>Any other file can be added to the package directory at the discretion of the
+package maintainer. Everything in the package directory will also be added to the
+package database that is located on &rsquo;/var/db/cpt/installed&rsquo;. These can be
+patches, configuration files, etc.
+</p>
+<span id="build"></span><h4 class="subsection">2.2.1 <samp>build</samp></h4>
+
+<p>Typically <samp>build</samp> files are shell scripts that run commands to prepare the source
+code to be installed on the target system. Even though we will be assuming that
+the <samp>build</samp> file is a POSIX shell script (for portability&rsquo;s sake), <samp>build</samp>
+files can be any executable program from binary programs to <code>perl</code> scripts.
+</p>
+<p>The contents of a build script do not need to follow a certain rule for the
+package manager, except for the fact that the user needs the permission to
+execute the file.
+</p>
+<p>An important advice is to append an &rsquo;-e&rsquo; to the shebang (#!/bin/sh -e) so that
+the build script exits on compilation error.
+</p>
+<p>Build is run with three arguments (<code>$#</code>)
+</p>
+<ol>
+<li> Location of the package directory (DESTDIR)
+</li><li> Package version
+</li><li> System architecture
+</li></ol>
+
+<span id="sources"></span><h4 class="subsection">2.2.2 <samp>sources</samp></h4>
+
+<p><samp>sources</samp> file is a list of files and sources that will be put to the build
+directory during the build process. Those can be remote sources (such as tarballs),
+git repositories, and files that reside on the package directory.
+</p>
+<p>The syntax is pretty simple for the <samp>soures</samp> file; <tt>src dest</tt>. The
+<code>dest</code> parameter is optional. It is the directory that the source will be
+placed in. Here is the <samp>sources</samp> file for the <code>gst-plugins</code> package:
+</p>
+<div class="example">
+<pre class="example">https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.16.2.tar.xz good
+https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.16.2.tar.xz bad
+https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.16.2.tar.xz ugly
+https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.16.2.tar.xz libav
+</pre></div>
+
+<p>This file is read from the package manager as space seperated. Files that begin
+with a &rsquo;#&rsquo; comment are ignored. The first value points to the location of the
+source.
+</p>
+<p>If it starts with a protcol url, (such as ftp:// http:// https://) it will be
+downloaded with <code>curl</code>.
+</p>
+<p>If the source is a git repository, it shall be prefixed with a <tt>git+</tt> git(1) will
+be used to do a shallow clone of the repository. If the commit is suffixed by a
+history pointer, git will checkout the relevant revision. So,
+</p>
+<div class="example">
+<pre class="example">git+git://example.com/pub/repo#v1.2.3 will checkout the tag named 'v1.2.3'
+git+git://example.com/pub/repo#development will checkout the branch named 'development'
+git+git://example.com/pub/repo#1a314s87 will checkout the commit named '1a314s87'
+</pre></div>
+
+<p>Other files are assumed to be residing in the package directory. They should be
+added with their paths relative to the package directory.
+</p>
+
+<span id="checksums"></span><h4 class="subsection">2.2.3 <samp>checksums</samp></h4>
+
+<p>checksums file is generated by the <samp>cpt c pkg command</samp>. It is generated
+according to the order of the sources file. That&rsquo;s why you shouldn&rsquo;t be editing
+it manually. The checksums file is created with the digests of the files using
+the sha256 algorithm.
+</p>
+<span id="version"></span><h4 class="subsection">2.2.4 <samp>version</samp></h4>
+
+<p>The version file includes the version of the software and the release number of
+of the package on a space seperated format. The contents of the file should look
+like below.
+</p>
+<div class="example">
+<pre class="example">1.3.2 1
+</pre></div>
+
+<p>The version should always match to the number of the upstream release. For
+drastic changes that require a rebuild Those can be,
+</p>
+<ul>
+<li> update of libraries that forces the package to be relinked
+</li><li> change in the build scripts that affect the output of the package
+</li></ul>
+
+<p>When a version bump occurs, the release should be reset to 1.
+</p>
+<span id="depends"></span><h4 class="subsection">2.2.5 <samp>depends</samp></h4>
+
+<p>This is a list of dependencies that must be installed before a package build. You
+can append &ldquo;make&rdquo; after a dependency to mark a package is only required during
+the build process of a package. Packages marked as a make dependency can be
+removed after the build. There are also &ldquo;test&rdquo; dependencies. These dependencies
+are only installed if either the <code>CPT_TEST</code> is set to 1, or the build is run
+with the <samp>-t</samp> or <samp>--test</samp> options. So, a package package could have
+the following <samp>depends</samp> file:
+</p>
+<div class="example">
+<pre class="example">linux-headers make
+python test
+zlib
+</pre></div>
+
+<span id="post_002dinstall"></span><h4 class="subsection">2.2.6 <samp>post-install</samp></h4>
+
+<p><samp>post-install</samp> files have the same requirements as the build script. They
+will be run after the package is installed as root (or as the user if the user
+has write permissions on <code>CPT_ROOT</code>).
+</p>
+<span id="message"></span><h4 class="subsection">2.2.7 <samp>message</samp></h4>
+
+<p>This plaintext file will be outputted with <code>cat</code> after every package is
+installed.
+</p>
+<span id="test"></span><h4 class="subsection">2.2.8 <samp>test</samp></h4>
+
+<p>Test files are mainly for the repository maintainer to test the packages, and
+will only run if the user has the <code>CPT_TEST</code> variable set, or the build is
+run with the <samp>-t</samp> or <samp>--test</samp> options. This script is run on the
+build directory. It is run right after the build script is finished.
+</p>
+<hr>
+<div class="header">
+<p>
+Next: <a href="Rsync-Repositories.html" accesskey="n" rel="next">Rsync Repositories</a>, Previous: <a href="Usage.html" accesskey="p" rel="prev">Usage</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
+</div>
+
+
+
+</body>
+</html>
diff --git a/src/docs/Post_002dinstallation.html b/src/docs/Post_002dinstallation.html
new file mode 100644
index 0000000..19f7b21
--- /dev/null
+++ b/src/docs/Post_002dinstallation.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Post-installation (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Post-installation (Carbs Linux User Manual)">
+<meta name="keywords" content="Post-installation (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Installation.html" rel="up" title="Installation">
+<link href="Package-Manager.html" rel="next" title="Package Manager">
+<link href="Making-your-system-bootable.html" rel="prev" title="Making your system bootable">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Post_002dinstallation"></span><div class="header">
+<p>
+Previous: <a href="Making-your-system-bootable.html" accesskey="p" rel="prev">Making your system bootable</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Post_002dinstallation-1"></span><h3 class="section">1.6 Post-installation</h3>
+
+<p>The base installation is now complete, you can now fine tune your system
+according to your needs. Rest of these instructions are completely optional.
+</p>
+<span id="Acquiring-kiss-repositories"></span><h4 class="subsection">1.6.1 Acquiring kiss repositories</h4>
+
+<p>While not 100% compatible with cpt, you can use kiss repositories in your
+system the same way you are using the distribution repositories. Here is an
+example for the KISS Linux Community repository.
+</p>
+<div class="example">
+<pre class="example">$ git clone https://github.com/kisslinux/community $HOME/repos/kiss-community
+$ export CPT_PATH=$CPT_PATH:$HOME/repos/kiss-community/community
+</pre></div>
+
+<p>NOTE: There are lots of packages on the KISS community repository that are also
+on Carbs Linux main repository. I would advise giving lower priority to the KISS
+community repository as it may affect other packages that you might install.
+</p>
+
+
+</body>
+</html>
diff --git a/src/docs/Preparing-Environment.html b/src/docs/Preparing-Environment.html
new file mode 100644
index 0000000..476299d
--- /dev/null
+++ b/src/docs/Preparing-Environment.html
@@ -0,0 +1,129 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Preparing Environment (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Preparing Environment (Carbs Linux User Manual)">
+<meta name="keywords" content="Preparing Environment (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Installation.html" rel="up" title="Installation">
+<link href="Chroot.html" rel="next" title="Chroot">
+<link href="Installation.html" rel="prev" title="Installation">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Preparing-Environment"></span><div class="header">
+<p>
+Next: <a href="Chroot.html" accesskey="n" rel="next">Chroot</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Preparing-Environment-1"></span><h3 class="section">1.1 Preparing Environment</h3>
+<p>To install Carbs Linux, you will need a Live Linux ISO. For that purpose, you
+can obtain a Gentoo or Void Linux live image. You can follow their instructions
+to boot and setup your network.
+</p>
+<p>You will need the following programs in order to install Carbs Linux:
+</p><ul>
+<li> tar
+</li><li> wget
+</li><li> xz
+</li><li> some form of base utilities (coreutils, sbase, busybox, etc.)
+</li></ul>
+
+<p>Rest of these instructions will assume that you have set all of these up, and
+will continue on that point.
+</p>
+<span id="Download"></span><h4 class="subsection">1.1.1 Download</h4>
+
+<p>First, we need to download the rootfs tarball. You can do the following in order
+to obtain the rootfs. If you are using an i686 machine, replace the <code>x86_64</code>
+with <code>i686</code>.
+</p>
+<div class="example">
+<pre class="example">$ wget https://dl.carbslinux.org/releases/x86_64/carbs-rootfs.tar.xz
+</pre></div>
+
+<p>We can then check the integrity of the tarball and do a signature verification.
+Even thought these are optional, they are highly recommended.
+</p>
+<span id="Check-the-integrity-of-the-tarball-_0028Recommended_0029"></span><h4 class="subsection">1.1.2 Check the integrity of the tarball (Recommended)</h4>
+
+<p>All of the releases are saved in a single file named <samp>sha256sums.txt</samp>, but the
+latest release is saved on <samp>carbs-rootfs.tar.xz.sha256</samp>. You can acquire and
+verify the tarball.
+</p>
+<div class="example">
+<pre class="example">$ wget https://dl.carbslinux.org/releases/x86_64/carbs-rootfs.tar.xz.sha256
+$ sha256sum -c carbs-rootfs.tar.xz.sha256
+</pre></div>
+
+<span id="Verify-the-signature"></span><h4 class="subsection">1.1.3 Verify the signature</h4>
+
+<p>It is highly recommended to verify the signature of the tarball. You will need
+GPG for this.
+</p>
+<div class="example">
+<pre class="example">$ wget https://dl.carbslinux.org/releases/carbs-rootfs.tar.xz.sig
+$ gpg --recv-keys FF484BDFEFCEF8FF
+$ gpg --verify carbs-rootfs.tar.xz.sig
+</pre></div>
+
+<span id="Extracting-the-tarball"></span><h4 class="subsection">1.1.4 Extracting the tarball</h4>
+
+<p>You will need to extract the tarball to your desired location. For partitioning,
+you can follow <a href="https://wiki.archlinux.org/index.php/Partitioning">this guide</a>.
+This will assume that you will be mounting your root partition to <samp>/mnt</samp>.
+</p>
+<div class="example">
+<pre class="example">$ mount /dev/sdx1 /mnt
+$ tar xf carbs-rootfs.tar.xz -C /mnt
+</pre></div>
+
+<span id="Obtain-the-chroot-helper"></span><h4 class="subsection">1.1.5 Obtain the chroot helper</h4>
+
+<p>You can obtain the <code>cpt-chroot</code> script in order to do a simple chroot into
+your new root filesystem.
+</p>
+<div class="example">
+<pre class="example">$ wget https://dl.carbslinux.org/distfiles/cpt-chroot
+$ chmod a+x cpt-chroot
+</pre></div>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="Chroot.html" accesskey="n" rel="next">Chroot</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+
+
+
+</body>
+</html>
diff --git a/src/docs/Rsync-Repositories.html b/src/docs/Rsync-Repositories.html
new file mode 100644
index 0000000..847b22c
--- /dev/null
+++ b/src/docs/Rsync-Repositories.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Rsync Repositories (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Rsync Repositories (Carbs Linux User Manual)">
+<meta name="keywords" content="Rsync Repositories (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Package-Manager.html" rel="up" title="Package Manager">
+<link href="Setting-up-an-rsync-repository-for-distribution.html" rel="next" title="Setting up an rsync repository for distribution">
+<link href="Packaging-System.html" rel="prev" title="Packaging System">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Rsync-Repositories"></span><div class="header">
+<p>
+Previous: <a href="Packaging-System.html" accesskey="p" rel="prev">Packaging System</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Rsync-Repositories-1"></span><h3 class="section">2.3 Rsync Repositories</h3>
+
+<p>Rsync repositories are simple to serve and simple to use. In the repository
+directory, there needs to be a &rsquo;.rsync&rsquo; file that points to the remote of the
+repository. This is used in order to fetch changes from the upstream. &rsquo;.rsync&rsquo;
+file looks like this for the core repository:
+</p>
+<div class="example">
+<pre class="example">rsync://carbslinux.org/repo/core
+</pre></div>
+
+<p>Rsync repositories have some few distinctions when it comes to fetching them.
+They can be either synced individually or as a &ldquo;root&rdquo;. There are 2 important
+files, those are <samp>.rsync</samp> and <samp>.rsync_root</samp>. Here is the Carbs Linux
+rsync repository structure.
+</p>
+<div class="example">
+<pre class="example"> /
+ -----------------
+ | |
+.rsync core/
+ ----------------
+ | |
+ .rsync .rsync_root
+</pre></div>
+
+<p>Unlike git repositories, they don&rsquo;t have a defined &ldquo;root&rdquo; directory. This is
+both an advantage and a disadvantage. This way, we can sync individual
+repositories, but that also means we need extra files to define root directories
+and repository locations. Here is the content for each of these files:
+</p>
+<div class="example">
+<pre class="example">/.rsync: rsync://carbslinux.org/repo
+/core/.rsync: rsync://carbslinux.org/repo/core
+/core/.rsync_root: ..
+</pre></div>
+
+<p>The <samp>.rsync_root</samp> file on the core repository points to the upper directory.
+If a <samp>.rsync</samp> file exists on the upper directory, this means that is the whole
+repository and will sync the entire repository instead of each individual repository.
+</p>
+<p>If the upper directory doesn&rsquo;t have this <samp>.rsync</samp> file, this means that this
+is an individual repository, and the package manager will fetch accordingly.
+</p>
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="Setting-up-an-rsync-repository-for-distribution.html" accesskey="1">Setting up an rsync repository for distribution</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+</table>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Setting-up-an-rsync-repository-for-distribution.html b/src/docs/Setting-up-an-rsync-repository-for-distribution.html
new file mode 100644
index 0000000..2262723
--- /dev/null
+++ b/src/docs/Setting-up-an-rsync-repository-for-distribution.html
@@ -0,0 +1,99 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Setting up an rsync repository for distribution (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Setting up an rsync repository for distribution (Carbs Linux User Manual)">
+<meta name="keywords" content="Setting up an rsync repository for distribution (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Rsync-Repositories.html" rel="up" title="Rsync Repositories">
+<link href="Init-System.html" rel="next" title="Init System">
+<link href="Rsync-Repositories.html" rel="prev" title="Rsync Repositories">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Setting-up-an-rsync-repository-for-distribution"></span><div class="header">
+<p>
+Up: <a href="Rsync-Repositories.html" accesskey="u" rel="up">Rsync Repositories</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Setting-up-an-rsync-repository-for-distribution-1"></span><h4 class="subsection">2.3.1 Setting up an rsync repository for distribution</h4>
+
+<p>Carbs Linux repositories automatically sync from the git repostitories and serve
+it through the rsync daemon. Here is a sample shell script that I use in order to
+sync repositories. Feel free to customize for your own use.
+</p>
+<pre class="verbatim"> #!/bin/sh
+ HOSTNAME=&quot;rsync://carbslinux.org/repo&quot;
+ GITDIR=&quot;/pub/git/repo&quot;
+ SHAREDIR=&quot;/pub/share/repo&quot;
+ git -C &quot;$GITDIR&quot; pull
+
+ rsync -avcC --delete --include=core --exclude=.rsync,.rsync_root &quot;$GITDIR/.&quot; &quot;$SHAREDIR&quot;
+
+ printf '%s\n' &quot;$HOSTNAME&quot; &gt; &quot;$GITDIR/.rsync&quot;
+ for dir in &quot;$GITDIR/&quot;*; do
+ [ -d &quot;$dir&quot; ] || continue
+ [ -f &quot;$dir/.rsync&quot; ] ||
+ printf '%s/%s\n' &quot;$HOSTNAME&quot; &quot;${dir##*/}&quot; &gt; &quot;$dir/.rsync&quot;
+ printf '..\n' &gt; &quot;$dir/.rsync_root&quot;
+ done
+</pre>
+<p>You can then create an <strong>rsync</strong> user for serving the repositories.
+</p>
+<div class="example">
+<pre class="example">$ adduser -SD rsync
+</pre></div>
+
+<p>Create <samp>/etc/rsyncd.conf</samp> and a service configuration as well.
+</p>
+<pre class="verbatim">
+ uid = rsync
+ gid = rsync
+ address = example.com
+ max connections = 10
+ use chroot = yes
+
+ [repo]
+ path = /pub/share/repo
+ comment = My repository
+</pre>
+<p>Create a service file at <samp>/etc/sv/rsync/run</samp> (runit):
+</p>
+<div class="example">
+<pre class="example">#!/bin/sh
+exec rsync --daemon --no-detach
+</pre></div>
+
+
+
+</body>
+</html>
diff --git a/src/docs/System-Configuration.html b/src/docs/System-Configuration.html
new file mode 100644
index 0000000..1b8d78b
--- /dev/null
+++ b/src/docs/System-Configuration.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>System Configuration (Carbs Linux User Manual)</title>
+
+<meta name="description" content="System Configuration (Carbs Linux User Manual)">
+<meta name="keywords" content="System Configuration (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Installation.html" rel="up" title="Installation">
+<link href="Kernel.html" rel="next" title="Kernel">
+<link href="Chroot.html" rel="prev" title="Chroot">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="System-Configuration"></span><div class="header">
+<p>
+Next: <a href="Kernel.html" accesskey="n" rel="next">Kernel</a>, Previous: <a href="Chroot.html" accesskey="p" rel="prev">Chroot</a>, Up: <a href="Installation.html" accesskey="u" rel="up">Installation</a> &nbsp; </p>
+</div>
+<hr>
+<span id="System-Configuration-1"></span><h3 class="section">1.3 System Configuration</h3>
+
+<p>After you have finished installing some extra packages, you can configure your
+system to your liking.
+</p>
+<span id="Configuring-hostname-_0028recommended_0029"></span><h4 class="subsection">1.3.1 Configuring hostname (recommended)</h4>
+
+<p>You might want to add a hostname, especially in a networked environment. Your
+hostname will default to &rsquo;carbslinux&rsquo; unless you set this.
+</p>
+<div class="example">
+<pre class="example">$ echo your-hostname &gt; /etc/hostname
+</pre></div>
+
+<span id="Setting-up-hosts-file-_0028optional_0029"></span><h4 class="subsection">1.3.2 Setting up hosts file (optional)</h4>
+
+<p>You can edit your /etc/hosts file, which is the static lookup table for host
+names. By default, there are two entries for localhost which are OKAY. You can
+replace the &rsquo;localhost&rsquo; part of these entries to your hostname.
+</p>
+<div class="example">
+<pre class="example">127.0.0.1 localhost.localdomain localhost
+::1 localhost.localdomain localhost ip6-localhost
+</pre></div>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Usage.html b/src/docs/Usage.html
new file mode 100644
index 0000000..84c1283
--- /dev/null
+++ b/src/docs/Usage.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Usage (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Usage (Carbs Linux User Manual)">
+<meta name="keywords" content="Usage (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Package-Manager.html" rel="up" title="Package Manager">
+<link href="cpt_002dalternatives.html" rel="next" title="cpt-alternatives">
+<link href="Package-Manager.html" rel="prev" title="Package Manager">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="Usage"></span><div class="header">
+<p>
+Next: <a href="Packaging-System.html" accesskey="n" rel="next">Packaging System</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Usage-1"></span><h3 class="section">2.1 Usage</h3>
+<p><code>cpt</code> is formed of many tools combined in a single environment, similar
+to <code>git</code>. When you run <code>cpt</code> without any arguments, it will show
+all available tools and their explanations. Here is an example call with extra
+scripts on my system:
+</p>
+<div class="example">
+<pre class="example">-&gt; Carbs Packaging Tool
+-&gt; add Commit the current directory as a new package
+-&gt; alternatives List and swap to alternatives
+-&gt; build Build a package
+-&gt; bump Commit the current directory as a version bump
+-&gt; cargo-urlgen Create static cargo sources for Rust packages
+-&gt; cargolock-urlgen Convert the given Cargo.lock file to sources
+-&gt; cat Concatanate package files in the installed package database
+-&gt; changelog Print the git log of the specific package
+-&gt; chbuild Create/destroy temporary chroots
+-&gt; checkmissing Verify package manifests
+-&gt; checksum Generate checksums
+-&gt; chroot Enter a chroot
+-&gt; commit Commit a package without the prefix of 'package:'
+-&gt; depends Display a package's dependencies
+-&gt; download Download sources for the given package
+-&gt; exec Execute a command inside the alternatives system
+-&gt; export Turn an installed package into a CPT tarball
+-&gt; fetch Fetch repositories
+-&gt; fork Fork a package to the current directory
+-&gt; getchoice Prints the full path to a file in the alternatives system.
+-&gt; install Install a package
+-&gt; link Link a forked package's files to the other repository
+-&gt; list List installed packages
+-&gt; maintainer Find the maintainer of a package
+-&gt; manifest Display all files owned by a package
+-&gt; manifest-tree Display all files owned by a package with a tree view
+-&gt; new Create a boilerplate CPT package
+-&gt; orphans List orphaned packages
+-&gt; owns Check which package owns a file
+-&gt; rel Bump the release number of a package
+-&gt; remove Remove a package
+-&gt; repodepends Display a package's dependencies in the repository
+-&gt; reporevdepends Display packages on the repository which depend on package
+-&gt; reset Remove all packages except for the base
+-&gt; revdepends Display packages which depend on package
+-&gt; search Search for a package
+-&gt; size Show the size on disk for a package
+-&gt; source Extract sources of a given package to the current directory
+-&gt; update Check for updates
+</pre></div>
+
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="cpt_002dalternatives.html" accesskey="1"><code>cpt-alternatives</code></a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="cpt_002dbuild.html" accesskey="2"><code>cpt-build</code></a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+</table>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="Packaging-System.html" accesskey="n" rel="next">Packaging System</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
+</div>
+
+
+
+</body>
+</html>
diff --git a/src/docs/cpt_002dalternatives.html b/src/docs/cpt_002dalternatives.html
new file mode 100644
index 0000000..1730bac
--- /dev/null
+++ b/src/docs/cpt_002dalternatives.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>cpt-alternatives (Carbs Linux User Manual)</title>
+
+<meta name="description" content="cpt-alternatives (Carbs Linux User Manual)">
+<meta name="keywords" content="cpt-alternatives (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Usage.html" rel="up" title="Usage">
+<link href="cpt_002dbuild.html" rel="next" title="cpt-build">
+<link href="Usage.html" rel="prev" title="Usage">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="cpt_002dalternatives"></span><div class="header">
+<p>
+Next: <a href="cpt_002dbuild.html" accesskey="n" rel="next"><code>cpt-build</code></a>, Up: <a href="Usage.html" accesskey="u" rel="up">Usage</a> &nbsp; </p>
+</div>
+<hr>
+<span id="cpt_002dalternatives-1"></span><h4 class="subsection">2.1.1 <code>cpt-alternatives</code></h4>
+
+<p>You can list and swap to alternatives using <code>cpt-alternatives</code>, or
+<code>cpt a</code> for short. When run without alternatives, it will list
+alternatives. It can read from standard input if <samp>-</samp> is given as an
+argument.
+</p>
+<span id="Examples"></span><h4 class="subsubsection">2.1.1.1 Examples</h4>
+
+<p>List alternatives
+</p>
+<div class="example">
+<pre class="example">$ cpt-alternatives
+ncurses /usr/bin/clear
+ncurses /usr/bin/reset
+</pre></div>
+
+<p>Swap to <code>clear</code> from <code>ncurses</code>.
+</p>
+<div class="example">
+<pre class="example">$ cpt-alternatives ncurses /usr/bin/clear
+-&gt; Swapping '/usr/bin/clear' from 'busybox' to 'ncurses'
+</pre></div>
+
+<p>Swap in bulk (all of sbase).
+</p>
+<div class="example">
+<pre class="example">$ cpt a | grep ^sbase | cpt a -
+</pre></div>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/cpt_002dbuild.html b/src/docs/cpt_002dbuild.html
new file mode 100644
index 0000000..e7d3712
--- /dev/null
+++ b/src/docs/cpt_002dbuild.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>cpt-build (Carbs Linux User Manual)</title>
+
+<meta name="description" content="cpt-build (Carbs Linux User Manual)">
+<meta name="keywords" content="cpt-build (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="index.html" rel="start" title="Top">
+<link href="Usage.html" rel="up" title="Usage">
+<link href="Packaging-System.html" rel="next" title="Packaging System">
+<link href="cpt_002dalternatives.html" rel="prev" title="cpt-alternatives">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<span id="cpt_002dbuild"></span><div class="header">
+<p>
+Previous: <a href="cpt_002dalternatives.html" accesskey="p" rel="prev"><code>cpt-alternatives</code></a>, Up: <a href="Usage.html" accesskey="u" rel="up">Usage</a> &nbsp; </p>
+</div>
+<hr>
+<span id="cpt_002dbuild-1"></span><h4 class="subsection">2.1.2 <code>cpt-build</code></h4>
+
+<p>cpt-build will build given packages and their dependencies. If multiple packages
+are specified, it will ask to install the packages as well.
+</p>
+<span id="Options"></span><h4 class="subsubsection">2.1.2.1 Options</h4>
+<p><code>cpt-build</code> will accept the following options:
+</p>
+<ul>
+<li> <samp>-y</samp>, <samp>--no-prompt</samp> &ndash; Do not prompt for confirmation
+</li><li> <samp></samp>
+</li></ul>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/index.html b/src/docs/index.html
new file mode 100644
index 0000000..96175c0
--- /dev/null
+++ b/src/docs/index.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!-- Copyright (C) 2020 Cem Keylan
+
+Licensed under Gnu Free Documentation License. -->
+<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Top (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Top (Carbs Linux User Manual)">
+<meta name="keywords" content="Top (Carbs Linux User Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<link href="#Top" rel="start" title="Top">
+<link href="Installation.html" rel="next" title="Installation">
+<style type="text/css">
+<!--
+a.summary-letter {text-decoration: none}
+blockquote.indentedblock {margin-right: 0em}
+div.display {margin-left: 3.2em}
+div.example {margin-left: 3.2em}
+div.lisp {margin-left: 3.2em}
+kbd {font-style: oblique}
+pre.display {font-family: inherit}
+pre.format {font-family: inherit}
+pre.menu-comment {font-family: serif}
+pre.menu-preformatted {font-family: serif}
+span.nolinebreak {white-space: nowrap}
+span.roman {font-family: initial; font-weight: normal}
+span.sansserif {font-family: sans-serif; font-weight: normal}
+ul.no-bullet {list-style: none}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<h1 class="settitle" align="center">Carbs Linux User Manual</h1>
+
+
+
+<span id="Top"></span><div class="header">
+<p>
+Next: <a href="Installation.html" accesskey="n" rel="next">Installation</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Carbs-Linux-User-Manual"></span><h1 class="top">Carbs Linux User Manual</h1>
+
+<p>This is the full documentation of Carbs Linux, from the details of the
+distribution, installation, to the package manager. It is not yet complete.
+</p>
+
+<p>This documentation is also available in the distribution which can be read
+by either running <code>info carbslinux</code> or reading <samp>/usr/share/doc/carbslinux.txt</samp>
+with your favorite pager. You can install either the <code>info</code> or <code>texinfo</code>
+for doing the first.
+</p>
+
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="Installation.html" accesskey="1">Installation</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Installing Carbs Linux
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Package-Manager.html" accesskey="2">Package Manager</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Carbs Linux Packaging Tools
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Init-System.html" accesskey="3">Init System</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Configuring the init system
+</td></tr>
+<tr><th colspan="3" align="left" valign="top"><pre class="menu-comment">
+
+</pre></th></tr><tr><th colspan="3" align="left" valign="top"><pre class="menu-comment">&mdash; Detailed Menu Listing &mdash;
+
+Overview of Installation
+
+</pre></th></tr><tr><td align="left" valign="top">&bull; <a href="Preparing-Environment.html" accesskey="4">Preparing Environment</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Getting ready to chroot
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Chroot.html" accesskey="5">Chroot</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Going inside your new system
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="System-Configuration.html" accesskey="6">System Configuration</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Customizing for your personal use
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Kernel.html" accesskey="7">Kernel</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Compiling your own kernel
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Making-your-system-bootable.html" accesskey="8">Making your system bootable</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Installing init and bootloader
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Post_002dinstallation.html" accesskey="9">Post-installation</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Acquiring more packages and repositories
+</td></tr>
+<tr><th colspan="3" align="left" valign="top"><pre class="menu-comment">
+
+Overview of Package manager
+
+</pre></th></tr><tr><td align="left" valign="top">&bull; <a href="Usage.html">Usage</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Using Carbs Packaging Tools
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Packaging-System.html">Packaging System</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">More detail on creating packages
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Rsync-Repositories.html">Rsync Repositories</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Information on using or creating rsync repositories
+</td></tr>
+</table>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="Installation.html" accesskey="n" rel="next">Installation</a> &nbsp; </p>
+</div>
+
+
+
+</body>
+</html>