aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/docs/Chroot.html2
-rw-r--r--docs/docs/Editing-the-build-file-during-pre_002dbuild.html85
-rw-r--r--docs/docs/Environment-Variables.html159
-rw-r--r--docs/docs/Hooks.html95
-rw-r--r--docs/docs/Package-Manager.html9
-rw-r--r--docs/docs/Packaging-System.html24
-rw-r--r--docs/docs/Post_002dinstallation.html2
-rw-r--r--docs/docs/Rsync-Repositories.html2
-rw-r--r--docs/docs/Setting-up-an-rsync-repository-for-distribution.html2
-rw-r--r--docs/docs/Usage.html4
-rw-r--r--docs/docs/cpt_002dbuild.html2
-rw-r--r--docs/news.xml2
-rw-r--r--docs/rss.xml2
-rw-r--r--src/docs/Chroot.html2
-rw-r--r--src/docs/Editing-the-build-file-during-pre_002dbuild.html85
-rw-r--r--src/docs/Environment-Variables.html159
-rw-r--r--src/docs/Hooks.html95
-rw-r--r--src/docs/Package-Manager.html9
-rw-r--r--src/docs/Packaging-System.html24
-rw-r--r--src/docs/Post_002dinstallation.html2
-rw-r--r--src/docs/Rsync-Repositories.html2
-rw-r--r--src/docs/Setting-up-an-rsync-repository-for-distribution.html2
-rw-r--r--src/docs/Usage.html4
-rw-r--r--src/docs/cpt_002dbuild.html2
-rw-r--r--src/news.xml2
-rw-r--r--src/rss.xml2
m---------texidocs0
27 files changed, 734 insertions, 46 deletions
diff --git a/docs/docs/Chroot.html b/docs/docs/Chroot.html
index 07c41b5..f8d11ea 100644
--- a/docs/docs/Chroot.html
+++ b/docs/docs/Chroot.html
@@ -119,7 +119,7 @@ need to update twice.
<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.
+following. &ldquo;Package&rdquo; is not actually a package and is given as an example.
</p>
<div class="example">
<pre class="example">$ cpt build package
diff --git a/docs/docs/Editing-the-build-file-during-pre_002dbuild.html b/docs/docs/Editing-the-build-file-during-pre_002dbuild.html
new file mode 100644
index 0000000..ba9b408
--- /dev/null
+++ b/docs/docs/Editing-the-build-file-during-pre_002dbuild.html
@@ -0,0 +1,85 @@
+<!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>Editing the build file during pre-build (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Editing the build file during pre-build (Carbs Linux User Manual)">
+<meta name="keywords" content="Editing the build file during pre-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="Hooks.html" rel="up" title="Hooks">
+<link href="Packaging-System.html" rel="next" title="Packaging System">
+<link href="Hooks.html" rel="prev" title="Hooks">
+<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="Editing-the-build-file-during-pre_002dbuild"></span><div class="header">
+<p>
+Up: <a href="Hooks.html" accesskey="u" rel="up">Hooks</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Editing-the-build-file-during-pre_002dbuild-1"></span><h4 class="subsection">2.3.1 Editing the <samp>build</samp> file during pre-build</h4>
+
+<p>You can edit the <samp>build</samp> file during pre-build. The file is copied from the
+repository to the build directory named as <samp>.build.cpt</samp>. You can use
+<code>sed</code> or any other tool to edit the build file. After the build is
+complete, a <code>diff</code> file will be placed to the package database named as
+<samp>build.diff</samp>. Here is an example <samp>build</samp> file manipulation during the
+pre-build hook.
+</p>
+<div class="example">
+<pre class="example">cat &lt;&lt;EOF&gt; .build.cpt
+#!/bin/sh -e
+
+for patch in bash50-0??; do
+ patch -p0 &lt; &quot;\$patch&quot;
+done
+
+export LDFLAGS=-static
+
+./configure \
+ --prefix=/usr \
+ --without-bash-malloc \
+ --disable-nls
+
+export MAKEFLAGS=&quot;TERMCAP_LIB=/usr/lib/libncursesw.a $MAKEFLAGS&quot;
+
+make
+make DESTDIR=&quot;\$1&quot; install
+
+ln -s bash &quot;\$1/usr/bin/sh&quot;
+EOF
+</pre></div>
+
+
+
+
+</body>
+</html>
diff --git a/docs/docs/Environment-Variables.html b/docs/docs/Environment-Variables.html
new file mode 100644
index 0000000..2482e37
--- /dev/null
+++ b/docs/docs/Environment-Variables.html
@@ -0,0 +1,159 @@
+<!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>Environment Variables (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Environment Variables (Carbs Linux User Manual)">
+<meta name="keywords" content="Environment Variables (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="Hooks.html" rel="next" title="Hooks">
+<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="Environment-Variables"></span><div class="header">
+<p>
+Next: <a href="Hooks.html" accesskey="n" rel="next">Hooks</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="Environment-Variables-1"></span><h3 class="section">2.2 Environment Variables</h3>
+
+<p>Since there is no configuration file for cpt, the package manager is configured
+through environment variables. These can be set per operation, or be set to your
+shell configuration or <samp>~/.profile</samp>. Here are the environment variables that
+alter the behaviour of <code>cpt</code>:
+</p>
+<dl compact="compact">
+<dt><code>CPT_PATH</code></dt>
+<dd><p>Set the locations of your repositories. This is set similar to the <code>PATH</code>
+variable.
+</p></dd>
+<dt><code>XDG_CACHE_HOME</code></dt>
+<dd><p>Unless this is set, the <samp>~/.cache</samp> directory will be used instead.
+</p></dd>
+<dt><code>CPT_CACHE</code></dt>
+<dd><p>The cache directory for <code>cpt</code>. Default: <samp>$XDG_CACHE_HOME/cpt</samp>
+</p></dd>
+<dt><code>CPT_CHOICE</code></dt>
+<dd><p>If this is set to 0, a package installation will be aborted on conflicts.
+Default: 1
+</p></dd>
+<dt><code>CPT_COMPRESS</code></dt>
+<dd><p>Program used to compress package tarballs. The values should be the default
+suffixes for the program. Available values are:
+</p><ul>
+<li> <code>gz</code>
+</li><li> <code>zst</code>
+</li><li> <code>bz2</code>
+</li><li> <code>xz</code>
+</li></ul>
+<p>Default: <code>gz</code>
+</p></dd>
+<dt><code>CPT_DEBUG</code></dt>
+<dd><p>If this is set to 1, temporary build directories will not be removed after the
+given operation. Default: unset
+</p></dd>
+<dt><code>CPT_FETCH</code></dt>
+<dd><p>If this is set to 0, <code>cpt-update</code> will not fetch the repositories.
+This behaviour can also be achieved by adding <samp>-n</samp> or <samp>--no-fetch</samp>
+as an argument. Default: 0
+</p></dd>
+<dt><code>CPT_FORCE</code></dt>
+<dd><p>If this is set to 1, some of the <code>cpt</code> tools will continue regardless of
+errors or skip certain checks. Here are some examples:
+</p>
+<ul>
+<li> <code>cpt-install</code> will install a package without verifying its manifest.
+</li><li> <code>cpt-install</code> will install a package even when there are missing
+dependencies.
+</li><li> <code>cpt-remove</code> will remove packages even when there are other packages
+that depend on the current package.
+</li></ul>
+
+<p>This behaviour can also be achieved by adding <samp>-f</samp> or <samp>--force</samp>
+as an argument to those utilities.
+</p>
+<p>Default: 0
+</p>
+</dd>
+<dt><code>CPT_HOOK</code></dt>
+<dd><p>Location for the hook file See <a href="Hooks.html">Hooks</a>. Default: unset
+</p></dd>
+<dt><code>CPT_KEEPLOG</code></dt>
+<dd><p>Normally, logs are deleted if the package is built successfully. If set to 1,
+logs will be kept even when the packages are built as intended. Default: 0
+</p></dd>
+<dt><code>CPT_PID</code></dt>
+<dd><p>If this variable is set, the temporary files will be created with this variable
+as the suffix, instead of the PID of the <code>cpt</code> process. The advantage
+is that you can know exactly where the build directory is located, while the
+disadvantage is that there will be issues with multiple operations at the
+same time. So the best way to use this variable is during one-time <code>cpt</code>
+calls.
+</p><div class="example">
+<pre class="example">CPT_PID=mesa cpt b mesa
+</pre></div>
+<p>By running the above, you will know that the created build directories will end
+with the <tt>*-mesa</tt> suffix.
+</p></dd>
+<dt><code>CPT_PROMPT</code></dt>
+<dd><p>If set to 0, the package manager will not prompt you for anything and will
+continue with the default action. This behaviour can also be achieved by adding <samp>-y</samp> or <samp>--no-prompt</samp>
+as an argument to some utilities.
+Default: 1
+</p></dd>
+<dt><code>CPT_ROOT</code></dt>
+<dd><p>If this variable is set, <code>cpt</code> will assume this as the system root, and
+will install/remove/update/list packages assuming this is the system root.
+This behaviour can also be achieved by adding <samp>--root</samp> as an argument to some utilities.
+</p></dd>
+<dt><code>CPT_TEST</code></dt>
+<dd><p>If set to 1, <code>cpt-build</code> will run tests where a package has the
+<samp>test</samp> build file. This behaviour can also be achieved by adding <samp>-t</samp> or <samp>--test</samp>
+as an argument to <code>cpt-build</code>. Default: 0
+</p></dd>
+<dt><code>CPT_TMPDIR</code></dt>
+<dd><p>The directory to create the build files. This can be changed (for example to
+/tmp) for building on RAM, saving SSD space, etc. Default: <code>$CPT_CACHE</code>
+</p></dd>
+</dl>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="Hooks.html" accesskey="n" rel="next">Hooks</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/docs/docs/Hooks.html b/docs/docs/Hooks.html
new file mode 100644
index 0000000..113738b
--- /dev/null
+++ b/docs/docs/Hooks.html
@@ -0,0 +1,95 @@
+<!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>Hooks (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Hooks (Carbs Linux User Manual)">
+<meta name="keywords" content="Hooks (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="Editing-the-build-file-during-pre_002dbuild.html" rel="next" title="Editing the build file during pre-build">
+<link href="Environment-Variables.html" rel="prev" title="Environment Variables">
+<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="Hooks"></span><div class="header">
+<p>
+Next: <a href="Packaging-System.html" accesskey="n" rel="next">Packaging System</a>, Previous: <a href="Environment-Variables.html" accesskey="p" rel="prev">Environment Variables</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Hooks-1"></span><h3 class="section">2.3 Hooks</h3>
+
+<p>Hooks can be used in order to change the runtime behaviour of the package manager.
+There are a variety of package hooks, mostly self explanatory:
+</p>
+<ul>
+<li> pre-build
+</li><li> post-build
+</li><li> build-fail
+</li><li> pre-test
+</li><li> test-fail
+</li><li> pre-install
+</li><li> post-install
+</li><li> pre-remove
+</li><li> post-remove
+</li><li> pre-fetch
+</li><li> post-fetch
+</li><li> post-package
+</li></ul>
+
+<p>In order to use hooks, you will need to set the <code>CPT_HOOK</code> variable pointing
+to your hook file. Your hook file <strong>MUST</strong> be a POSIX shell script as its
+contents are sourced by the package manager.
+</p>
+<p>The hook is given 3 variables when it is executed. Those are:
+</p><dl compact="compact">
+<dt><code>$TYPE</code></dt>
+<dd><p>The type of the hook, (pre-build, post-build, etc.)
+</p></dd>
+<dt><code>$PKG</code></dt>
+<dd><p>The package that <code>cpt</code> is currently working on. Can be null.
+</p></dd>
+<dt><code>$DEST</code></dt>
+<dd><p>The destination of the operation. Can be null.
+</p></dd>
+</dl>
+
+
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="Editing-the-build-file-during-pre_002dbuild.html" accesskey="1">Editing the <samp>build</samp> file during pre-build</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+</table>
+
+
+
+
+</body>
+</html>
diff --git a/docs/docs/Package-Manager.html b/docs/docs/Package-Manager.html
index 1d78750..b5d178e 100644
--- a/docs/docs/Package-Manager.html
+++ b/docs/docs/Package-Manager.html
@@ -53,13 +53,16 @@ fork of the <a href="https://github.com/kisslinux/kiss">kiss</a> package manager
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">
+<tr><td align="left" valign="top">&bull; <a href="Environment-Variables.html" accesskey="2">Environment Variables</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Hooks.html" accesskey="3">Hooks</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="4">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">
+<tr><td align="left" valign="top">&bull; <a href="Rsync-Repositories.html" accesskey="5">Rsync Repositories</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
</td></tr>
</table>
diff --git a/docs/docs/Packaging-System.html b/docs/docs/Packaging-System.html
index 3c4538a..44f539d 100644
--- a/docs/docs/Packaging-System.html
+++ b/docs/docs/Packaging-System.html
@@ -16,7 +16,7 @@ Licensed under Gnu Free Documentation License. -->
<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">
+<link href="Editing-the-build-file-during-pre_002dbuild.html" rel="prev" title="Editing the build file during pre-build">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
@@ -42,10 +42,10 @@ ul.no-bullet {list-style: none}
<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>
+Next: <a href="Rsync-Repositories.html" accesskey="n" rel="next">Rsync Repositories</a>, Previous: <a href="Hooks.html" accesskey="p" rel="prev">Hooks</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>
+<span id="Packaging-System-1"></span><h3 class="section">2.4 Packaging System</h3>
<p>A package is formed of several files, these are:
</p><ul>
@@ -64,7 +64,7 @@ package maintainer. Everything in the package directory will also be added to th
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>
+<span id="build"></span><h4 class="subsection">2.4.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
@@ -86,7 +86,7 @@ the build script exits on compilation error.
</li><li> System architecture
</li></ol>
-<span id="sources"></span><h4 class="subsection">2.2.2 <samp>sources</samp></h4>
+<span id="sources"></span><h4 class="subsection">2.4.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),
@@ -130,14 +130,14 @@ history pointer, git will checkout the relevant revision. So,
added with their paths relative to the package directory.
</p>
-<span id="checksums"></span><h4 class="subsection">2.2.3 <samp>checksums</samp></h4>
+<span id="checksums"></span><h4 class="subsection">2.4.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>
+<span id="version"></span><h4 class="subsection">2.4.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
@@ -157,7 +157,7 @@ drastic changes that require a rebuild Those can be,
<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>
+<span id="depends"></span><h4 class="subsection">2.4.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
@@ -173,18 +173,18 @@ python test
zlib
</pre></div>
-<span id="post_002dinstall"></span><h4 class="subsection">2.2.6 <samp>post-install</samp></h4>
+<span id="post_002dinstall"></span><h4 class="subsection">2.4.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>
+<span id="message"></span><h4 class="subsection">2.4.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>
+<span id="test"></span><h4 class="subsection">2.4.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
@@ -194,7 +194,7 @@ build directory. It is run right after the build script is finished.
<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>
+Next: <a href="Rsync-Repositories.html" accesskey="n" rel="next">Rsync Repositories</a>, Previous: <a href="Hooks.html" accesskey="p" rel="prev">Hooks</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
</div>
diff --git a/docs/docs/Post_002dinstallation.html b/docs/docs/Post_002dinstallation.html
index 19f7b21..5ccfcc3 100644
--- a/docs/docs/Post_002dinstallation.html
+++ b/docs/docs/Post_002dinstallation.html
@@ -67,5 +67,7 @@ community repository as it may affect other packages that you might install.
</p>
+
+
</body>
</html>
diff --git a/docs/docs/Rsync-Repositories.html b/docs/docs/Rsync-Repositories.html
index 847b22c..a076d9b 100644
--- a/docs/docs/Rsync-Repositories.html
+++ b/docs/docs/Rsync-Repositories.html
@@ -45,7 +45,7 @@ ul.no-bullet {list-style: none}
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>
+<span id="Rsync-Repositories-1"></span><h3 class="section">2.5 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
diff --git a/docs/docs/Setting-up-an-rsync-repository-for-distribution.html b/docs/docs/Setting-up-an-rsync-repository-for-distribution.html
index 1008488..5c94c69 100644
--- a/docs/docs/Setting-up-an-rsync-repository-for-distribution.html
+++ b/docs/docs/Setting-up-an-rsync-repository-for-distribution.html
@@ -45,7 +45,7 @@ ul.no-bullet {list-style: none}
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>
+<span id="Setting-up-an-rsync-repository-for-distribution-1"></span><h4 class="subsection">2.5.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
diff --git a/docs/docs/Usage.html b/docs/docs/Usage.html
index 84c1283..be05c30 100644
--- a/docs/docs/Usage.html
+++ b/docs/docs/Usage.html
@@ -42,7 +42,7 @@ ul.no-bullet {list-style: none}
<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>
+Next: <a href="Environment-Variables.html" accesskey="n" rel="next">Environment Variables</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>
@@ -104,7 +104,7 @@ scripts on my system:
<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>
+Next: <a href="Environment-Variables.html" accesskey="n" rel="next">Environment Variables</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
</div>
diff --git a/docs/docs/cpt_002dbuild.html b/docs/docs/cpt_002dbuild.html
index e7d3712..77c8649 100644
--- a/docs/docs/cpt_002dbuild.html
+++ b/docs/docs/cpt_002dbuild.html
@@ -15,7 +15,7 @@ Licensed under Gnu Free Documentation License. -->
<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="Environment-Variables.html" rel="next" title="Environment Variables">
<link href="cpt_002dalternatives.html" rel="prev" title="cpt-alternatives">
<style type="text/css">
<!--
diff --git a/docs/news.xml b/docs/news.xml
index cd7b257..7cf1650 100644
--- a/docs/news.xml
+++ b/docs/news.xml
@@ -9,7 +9,7 @@
<description>a simple linux distribution</description>
<link>https://carbslinux.org</link>
<atom:link href="https://carbslinux.org/news.xml" rel="self" type="application/rss+xml" />
- <lastBuildDate>Wed Sep 09 2020 16:00</lastBuildDate>
+ <lastBuildDate>Thu Sep 10 2020 11:00</lastBuildDate>
<item>
<title>Sep 03 2020</title>
<pubDate>Thu, 03 Sep 2020</pubDate>
diff --git a/docs/rss.xml b/docs/rss.xml
index 97ebfc8..cf2fe4b 100644
--- a/docs/rss.xml
+++ b/docs/rss.xml
@@ -9,7 +9,7 @@
<description>a simple linux distribution</description>
<link>https://carbslinux.org</link>
<atom:link href="https://carbslinux.org/rss.xml" rel="self" type="application/rss+xml" />
- <lastBuildDate>Wed Sep 09 2020 16:00</lastBuildDate>
+ <lastBuildDate>Thu Sep 10 2020 11:00</lastBuildDate>
<item>
<title>August 2020 News Post</title>
<pubDate>Mon, 03 Aug 2020</pubDate>
diff --git a/src/docs/Chroot.html b/src/docs/Chroot.html
index 07c41b5..f8d11ea 100644
--- a/src/docs/Chroot.html
+++ b/src/docs/Chroot.html
@@ -119,7 +119,7 @@ need to update twice.
<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.
+following. &ldquo;Package&rdquo; is not actually a package and is given as an example.
</p>
<div class="example">
<pre class="example">$ cpt build package
diff --git a/src/docs/Editing-the-build-file-during-pre_002dbuild.html b/src/docs/Editing-the-build-file-during-pre_002dbuild.html
new file mode 100644
index 0000000..ba9b408
--- /dev/null
+++ b/src/docs/Editing-the-build-file-during-pre_002dbuild.html
@@ -0,0 +1,85 @@
+<!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>Editing the build file during pre-build (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Editing the build file during pre-build (Carbs Linux User Manual)">
+<meta name="keywords" content="Editing the build file during pre-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="Hooks.html" rel="up" title="Hooks">
+<link href="Packaging-System.html" rel="next" title="Packaging System">
+<link href="Hooks.html" rel="prev" title="Hooks">
+<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="Editing-the-build-file-during-pre_002dbuild"></span><div class="header">
+<p>
+Up: <a href="Hooks.html" accesskey="u" rel="up">Hooks</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Editing-the-build-file-during-pre_002dbuild-1"></span><h4 class="subsection">2.3.1 Editing the <samp>build</samp> file during pre-build</h4>
+
+<p>You can edit the <samp>build</samp> file during pre-build. The file is copied from the
+repository to the build directory named as <samp>.build.cpt</samp>. You can use
+<code>sed</code> or any other tool to edit the build file. After the build is
+complete, a <code>diff</code> file will be placed to the package database named as
+<samp>build.diff</samp>. Here is an example <samp>build</samp> file manipulation during the
+pre-build hook.
+</p>
+<div class="example">
+<pre class="example">cat &lt;&lt;EOF&gt; .build.cpt
+#!/bin/sh -e
+
+for patch in bash50-0??; do
+ patch -p0 &lt; &quot;\$patch&quot;
+done
+
+export LDFLAGS=-static
+
+./configure \
+ --prefix=/usr \
+ --without-bash-malloc \
+ --disable-nls
+
+export MAKEFLAGS=&quot;TERMCAP_LIB=/usr/lib/libncursesw.a $MAKEFLAGS&quot;
+
+make
+make DESTDIR=&quot;\$1&quot; install
+
+ln -s bash &quot;\$1/usr/bin/sh&quot;
+EOF
+</pre></div>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Environment-Variables.html b/src/docs/Environment-Variables.html
new file mode 100644
index 0000000..2482e37
--- /dev/null
+++ b/src/docs/Environment-Variables.html
@@ -0,0 +1,159 @@
+<!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>Environment Variables (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Environment Variables (Carbs Linux User Manual)">
+<meta name="keywords" content="Environment Variables (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="Hooks.html" rel="next" title="Hooks">
+<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="Environment-Variables"></span><div class="header">
+<p>
+Next: <a href="Hooks.html" accesskey="n" rel="next">Hooks</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="Environment-Variables-1"></span><h3 class="section">2.2 Environment Variables</h3>
+
+<p>Since there is no configuration file for cpt, the package manager is configured
+through environment variables. These can be set per operation, or be set to your
+shell configuration or <samp>~/.profile</samp>. Here are the environment variables that
+alter the behaviour of <code>cpt</code>:
+</p>
+<dl compact="compact">
+<dt><code>CPT_PATH</code></dt>
+<dd><p>Set the locations of your repositories. This is set similar to the <code>PATH</code>
+variable.
+</p></dd>
+<dt><code>XDG_CACHE_HOME</code></dt>
+<dd><p>Unless this is set, the <samp>~/.cache</samp> directory will be used instead.
+</p></dd>
+<dt><code>CPT_CACHE</code></dt>
+<dd><p>The cache directory for <code>cpt</code>. Default: <samp>$XDG_CACHE_HOME/cpt</samp>
+</p></dd>
+<dt><code>CPT_CHOICE</code></dt>
+<dd><p>If this is set to 0, a package installation will be aborted on conflicts.
+Default: 1
+</p></dd>
+<dt><code>CPT_COMPRESS</code></dt>
+<dd><p>Program used to compress package tarballs. The values should be the default
+suffixes for the program. Available values are:
+</p><ul>
+<li> <code>gz</code>
+</li><li> <code>zst</code>
+</li><li> <code>bz2</code>
+</li><li> <code>xz</code>
+</li></ul>
+<p>Default: <code>gz</code>
+</p></dd>
+<dt><code>CPT_DEBUG</code></dt>
+<dd><p>If this is set to 1, temporary build directories will not be removed after the
+given operation. Default: unset
+</p></dd>
+<dt><code>CPT_FETCH</code></dt>
+<dd><p>If this is set to 0, <code>cpt-update</code> will not fetch the repositories.
+This behaviour can also be achieved by adding <samp>-n</samp> or <samp>--no-fetch</samp>
+as an argument. Default: 0
+</p></dd>
+<dt><code>CPT_FORCE</code></dt>
+<dd><p>If this is set to 1, some of the <code>cpt</code> tools will continue regardless of
+errors or skip certain checks. Here are some examples:
+</p>
+<ul>
+<li> <code>cpt-install</code> will install a package without verifying its manifest.
+</li><li> <code>cpt-install</code> will install a package even when there are missing
+dependencies.
+</li><li> <code>cpt-remove</code> will remove packages even when there are other packages
+that depend on the current package.
+</li></ul>
+
+<p>This behaviour can also be achieved by adding <samp>-f</samp> or <samp>--force</samp>
+as an argument to those utilities.
+</p>
+<p>Default: 0
+</p>
+</dd>
+<dt><code>CPT_HOOK</code></dt>
+<dd><p>Location for the hook file See <a href="Hooks.html">Hooks</a>. Default: unset
+</p></dd>
+<dt><code>CPT_KEEPLOG</code></dt>
+<dd><p>Normally, logs are deleted if the package is built successfully. If set to 1,
+logs will be kept even when the packages are built as intended. Default: 0
+</p></dd>
+<dt><code>CPT_PID</code></dt>
+<dd><p>If this variable is set, the temporary files will be created with this variable
+as the suffix, instead of the PID of the <code>cpt</code> process. The advantage
+is that you can know exactly where the build directory is located, while the
+disadvantage is that there will be issues with multiple operations at the
+same time. So the best way to use this variable is during one-time <code>cpt</code>
+calls.
+</p><div class="example">
+<pre class="example">CPT_PID=mesa cpt b mesa
+</pre></div>
+<p>By running the above, you will know that the created build directories will end
+with the <tt>*-mesa</tt> suffix.
+</p></dd>
+<dt><code>CPT_PROMPT</code></dt>
+<dd><p>If set to 0, the package manager will not prompt you for anything and will
+continue with the default action. This behaviour can also be achieved by adding <samp>-y</samp> or <samp>--no-prompt</samp>
+as an argument to some utilities.
+Default: 1
+</p></dd>
+<dt><code>CPT_ROOT</code></dt>
+<dd><p>If this variable is set, <code>cpt</code> will assume this as the system root, and
+will install/remove/update/list packages assuming this is the system root.
+This behaviour can also be achieved by adding <samp>--root</samp> as an argument to some utilities.
+</p></dd>
+<dt><code>CPT_TEST</code></dt>
+<dd><p>If set to 1, <code>cpt-build</code> will run tests where a package has the
+<samp>test</samp> build file. This behaviour can also be achieved by adding <samp>-t</samp> or <samp>--test</samp>
+as an argument to <code>cpt-build</code>. Default: 0
+</p></dd>
+<dt><code>CPT_TMPDIR</code></dt>
+<dd><p>The directory to create the build files. This can be changed (for example to
+/tmp) for building on RAM, saving SSD space, etc. Default: <code>$CPT_CACHE</code>
+</p></dd>
+</dl>
+
+<hr>
+<div class="header">
+<p>
+Next: <a href="Hooks.html" accesskey="n" rel="next">Hooks</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/Hooks.html b/src/docs/Hooks.html
new file mode 100644
index 0000000..113738b
--- /dev/null
+++ b/src/docs/Hooks.html
@@ -0,0 +1,95 @@
+<!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>Hooks (Carbs Linux User Manual)</title>
+
+<meta name="description" content="Hooks (Carbs Linux User Manual)">
+<meta name="keywords" content="Hooks (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="Editing-the-build-file-during-pre_002dbuild.html" rel="next" title="Editing the build file during pre-build">
+<link href="Environment-Variables.html" rel="prev" title="Environment Variables">
+<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="Hooks"></span><div class="header">
+<p>
+Next: <a href="Packaging-System.html" accesskey="n" rel="next">Packaging System</a>, Previous: <a href="Environment-Variables.html" accesskey="p" rel="prev">Environment Variables</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
+</div>
+<hr>
+<span id="Hooks-1"></span><h3 class="section">2.3 Hooks</h3>
+
+<p>Hooks can be used in order to change the runtime behaviour of the package manager.
+There are a variety of package hooks, mostly self explanatory:
+</p>
+<ul>
+<li> pre-build
+</li><li> post-build
+</li><li> build-fail
+</li><li> pre-test
+</li><li> test-fail
+</li><li> pre-install
+</li><li> post-install
+</li><li> pre-remove
+</li><li> post-remove
+</li><li> pre-fetch
+</li><li> post-fetch
+</li><li> post-package
+</li></ul>
+
+<p>In order to use hooks, you will need to set the <code>CPT_HOOK</code> variable pointing
+to your hook file. Your hook file <strong>MUST</strong> be a POSIX shell script as its
+contents are sourced by the package manager.
+</p>
+<p>The hook is given 3 variables when it is executed. Those are:
+</p><dl compact="compact">
+<dt><code>$TYPE</code></dt>
+<dd><p>The type of the hook, (pre-build, post-build, etc.)
+</p></dd>
+<dt><code>$PKG</code></dt>
+<dd><p>The package that <code>cpt</code> is currently working on. Can be null.
+</p></dd>
+<dt><code>$DEST</code></dt>
+<dd><p>The destination of the operation. Can be null.
+</p></dd>
+</dl>
+
+
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">&bull; <a href="Editing-the-build-file-during-pre_002dbuild.html" accesskey="1">Editing the <samp>build</samp> file during pre-build</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+</table>
+
+
+
+
+</body>
+</html>
diff --git a/src/docs/Package-Manager.html b/src/docs/Package-Manager.html
index 1d78750..b5d178e 100644
--- a/src/docs/Package-Manager.html
+++ b/src/docs/Package-Manager.html
@@ -53,13 +53,16 @@ fork of the <a href="https://github.com/kisslinux/kiss">kiss</a> package manager
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">
+<tr><td align="left" valign="top">&bull; <a href="Environment-Variables.html" accesskey="2">Environment Variables</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">&bull; <a href="Hooks.html" accesskey="3">Hooks</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="4">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">
+<tr><td align="left" valign="top">&bull; <a href="Rsync-Repositories.html" accesskey="5">Rsync Repositories</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
</td></tr>
</table>
diff --git a/src/docs/Packaging-System.html b/src/docs/Packaging-System.html
index 3c4538a..44f539d 100644
--- a/src/docs/Packaging-System.html
+++ b/src/docs/Packaging-System.html
@@ -16,7 +16,7 @@ Licensed under Gnu Free Documentation License. -->
<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">
+<link href="Editing-the-build-file-during-pre_002dbuild.html" rel="prev" title="Editing the build file during pre-build">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
@@ -42,10 +42,10 @@ ul.no-bullet {list-style: none}
<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>
+Next: <a href="Rsync-Repositories.html" accesskey="n" rel="next">Rsync Repositories</a>, Previous: <a href="Hooks.html" accesskey="p" rel="prev">Hooks</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>
+<span id="Packaging-System-1"></span><h3 class="section">2.4 Packaging System</h3>
<p>A package is formed of several files, these are:
</p><ul>
@@ -64,7 +64,7 @@ package maintainer. Everything in the package directory will also be added to th
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>
+<span id="build"></span><h4 class="subsection">2.4.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
@@ -86,7 +86,7 @@ the build script exits on compilation error.
</li><li> System architecture
</li></ol>
-<span id="sources"></span><h4 class="subsection">2.2.2 <samp>sources</samp></h4>
+<span id="sources"></span><h4 class="subsection">2.4.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),
@@ -130,14 +130,14 @@ history pointer, git will checkout the relevant revision. So,
added with their paths relative to the package directory.
</p>
-<span id="checksums"></span><h4 class="subsection">2.2.3 <samp>checksums</samp></h4>
+<span id="checksums"></span><h4 class="subsection">2.4.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>
+<span id="version"></span><h4 class="subsection">2.4.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
@@ -157,7 +157,7 @@ drastic changes that require a rebuild Those can be,
<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>
+<span id="depends"></span><h4 class="subsection">2.4.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
@@ -173,18 +173,18 @@ python test
zlib
</pre></div>
-<span id="post_002dinstall"></span><h4 class="subsection">2.2.6 <samp>post-install</samp></h4>
+<span id="post_002dinstall"></span><h4 class="subsection">2.4.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>
+<span id="message"></span><h4 class="subsection">2.4.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>
+<span id="test"></span><h4 class="subsection">2.4.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
@@ -194,7 +194,7 @@ build directory. It is run right after the build script is finished.
<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>
+Next: <a href="Rsync-Repositories.html" accesskey="n" rel="next">Rsync Repositories</a>, Previous: <a href="Hooks.html" accesskey="p" rel="prev">Hooks</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
</div>
diff --git a/src/docs/Post_002dinstallation.html b/src/docs/Post_002dinstallation.html
index 19f7b21..5ccfcc3 100644
--- a/src/docs/Post_002dinstallation.html
+++ b/src/docs/Post_002dinstallation.html
@@ -67,5 +67,7 @@ community repository as it may affect other packages that you might install.
</p>
+
+
</body>
</html>
diff --git a/src/docs/Rsync-Repositories.html b/src/docs/Rsync-Repositories.html
index 847b22c..a076d9b 100644
--- a/src/docs/Rsync-Repositories.html
+++ b/src/docs/Rsync-Repositories.html
@@ -45,7 +45,7 @@ ul.no-bullet {list-style: none}
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>
+<span id="Rsync-Repositories-1"></span><h3 class="section">2.5 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
diff --git a/src/docs/Setting-up-an-rsync-repository-for-distribution.html b/src/docs/Setting-up-an-rsync-repository-for-distribution.html
index 1008488..5c94c69 100644
--- a/src/docs/Setting-up-an-rsync-repository-for-distribution.html
+++ b/src/docs/Setting-up-an-rsync-repository-for-distribution.html
@@ -45,7 +45,7 @@ ul.no-bullet {list-style: none}
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>
+<span id="Setting-up-an-rsync-repository-for-distribution-1"></span><h4 class="subsection">2.5.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
diff --git a/src/docs/Usage.html b/src/docs/Usage.html
index 84c1283..be05c30 100644
--- a/src/docs/Usage.html
+++ b/src/docs/Usage.html
@@ -42,7 +42,7 @@ ul.no-bullet {list-style: none}
<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>
+Next: <a href="Environment-Variables.html" accesskey="n" rel="next">Environment Variables</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>
@@ -104,7 +104,7 @@ scripts on my system:
<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>
+Next: <a href="Environment-Variables.html" accesskey="n" rel="next">Environment Variables</a>, Up: <a href="Package-Manager.html" accesskey="u" rel="up">Package Manager</a> &nbsp; </p>
</div>
diff --git a/src/docs/cpt_002dbuild.html b/src/docs/cpt_002dbuild.html
index e7d3712..77c8649 100644
--- a/src/docs/cpt_002dbuild.html
+++ b/src/docs/cpt_002dbuild.html
@@ -15,7 +15,7 @@ Licensed under Gnu Free Documentation License. -->
<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="Environment-Variables.html" rel="next" title="Environment Variables">
<link href="cpt_002dalternatives.html" rel="prev" title="cpt-alternatives">
<style type="text/css">
<!--
diff --git a/src/news.xml b/src/news.xml
index cd7b257..7cf1650 100644
--- a/src/news.xml
+++ b/src/news.xml
@@ -9,7 +9,7 @@
<description>a simple linux distribution</description>
<link>https://carbslinux.org</link>
<atom:link href="https://carbslinux.org/news.xml" rel="self" type="application/rss+xml" />
- <lastBuildDate>Wed Sep 09 2020 16:00</lastBuildDate>
+ <lastBuildDate>Thu Sep 10 2020 11:00</lastBuildDate>
<item>
<title>Sep 03 2020</title>
<pubDate>Thu, 03 Sep 2020</pubDate>
diff --git a/src/rss.xml b/src/rss.xml
index 97ebfc8..cf2fe4b 100644
--- a/src/rss.xml
+++ b/src/rss.xml
@@ -9,7 +9,7 @@
<description>a simple linux distribution</description>
<link>https://carbslinux.org</link>
<atom:link href="https://carbslinux.org/rss.xml" rel="self" type="application/rss+xml" />
- <lastBuildDate>Wed Sep 09 2020 16:00</lastBuildDate>
+ <lastBuildDate>Thu Sep 10 2020 11:00</lastBuildDate>
<item>
<title>August 2020 News Post</title>
<pubDate>Mon, 03 Aug 2020</pubDate>
diff --git a/texidocs b/texidocs
-Subproject a1dc9d10a889758055ba2b4f424fc01c2716293
+Subproject 9cc50d7134d94db363f7b5d3e4a3a6368d1d9bc