126 lines
10 KiB
HTML
126 lines
10 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta content="width=device-width, initial-scale=1" charset="utf-8" />
|
||
<title>Building blendOS (and its packages)</title>
|
||
<link href="/style.css" type="text/css" rel="stylesheet" />
|
||
<link href="/prism.css" type="text/css" rel="stylesheet" />
|
||
</head>
|
||
<body class="line-numbers">
|
||
<h1 id="building-blendos-and-its-packages">Building blendOS (and
|
||
its packages)</h1>
|
||
<p>This one was pretty simple. First off, I just made <a
|
||
href="https://git.askiiart.net/askiiart-blendos">an organization
|
||
to hold all my blendOS code</a> on my Forgejo instance just to
|
||
keep it organized. Then I just cloned all the relevant
|
||
repositories from upstream (<em>blendOS · GitLab</em>), added my
|
||
own code with some minor fixes and stuff, then pushed the
|
||
updated code to my server.</p>
|
||
<p>After that, it was just a matter of adding the actual
|
||
packaging for the code. For the packages that were required for
|
||
building the blendOS <code>iso</code> file, if I didn't have my
|
||
own repository for them already, I just made a new branch,
|
||
updated the packaging, and pushed the packaging to that
|
||
branch.</p>
|
||
<p>Looking at the <a
|
||
href="https://git.blendos.co/blendOS/image-builder/-/blob/main/packages.x86_64">package
|
||
list</a> from <code>image-builder</code> (<em>blendOS /
|
||
image-builder · GitLab</em>), it seems the only blendOS-specific
|
||
packages it uses are:</p>
|
||
<div class="sourceCode" id="cb1"><pre
|
||
class="language-txt"><code class="language-default"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a>filesystem-blend</span>
|
||
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a>blend-inst-git</span>
|
||
<span id="cb1-3"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a>jade-gui</span>
|
||
<span id="cb1-4"><a href="#cb1-4" aria-hidden="true" tabindex="-1"></a>blend-git</span>
|
||
<span id="cb1-5"><a href="#cb1-5" aria-hidden="true" tabindex="-1"></a>blend-settings-git</span>
|
||
<span id="cb1-6"><a href="#cb1-6" aria-hidden="true" tabindex="-1"></a>blend-web-store-git</span>
|
||
<span id="cb1-7"><a href="#cb1-7" aria-hidden="true" tabindex="-1"></a>akshara-git</span></code></pre></div>
|
||
<p>At first, after a bit of minor troubleshooting, I got this
|
||
all set up and working, pretty simple.</p>
|
||
<h2 id="oops-it-didnt-work-actually">Oops it didn't work
|
||
actually</h2>
|
||
<p>I then realized that my <code>iso</code> file worked, but was
|
||
not using my repo, and I had even forgotten to even add some of
|
||
the packages.</p>
|
||
<p>Turns out I had added my repo to the container's
|
||
<code>pacman</code> configuration, but not to the
|
||
<code>pacman</code> config for <code>archiso</code>, the tool
|
||
used to generate the <code>iso</code> file, or the actual
|
||
resulting <code>iso</code> image's <code>pacman</code> config
|
||
either. So while I would have been able to install anything from
|
||
my repo in the container, the repo was unused by
|
||
<code>archiso</code>.</p>
|
||
<p>I just added the missing packages needed to build the
|
||
<code>iso</code> file, plus all the others on blendOS's GitLab,
|
||
and rebuilt it. After a bit of troubleshooting (nothing
|
||
interesting, just incompetency, wrong perms, stuff like that), I
|
||
got it working perfectly.</p>
|
||
<p>From the buid log:</p>
|
||
<div class="sourceCode" id="cb2"><pre
|
||
class="language-txt"><code class="language-default"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a>[mkarchiso] INFO: Done!</span>
|
||
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a>2.3G /drone/src/image-builder/out/blendOS-2024.10.04-x86_64.iso</span>
|
||
<span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a>0</span></code></pre></div>
|
||
<p><img src="/assets/building-blendos/1.png"
|
||
title="Screenshot from Drone CI/CD showing the build successfully completed in 6 minutes 48 seconds" alt="Screenshot from Drone CI/CD showing the build successfully completed in 6 minutes 48 seconds" /><br />
|
||
<a
|
||
href="https://drone.askiiart.net/askiiart-blendos/build-blendos-iso"><img
|
||
src="https://drone.askiiart.net/api/badges/askiiart-blendos/build-blendos-iso/status.svg"
|
||
title="Build Status" alt="Build Status" /></a></p>
|
||
<h2 id="topology-of-my-blendos-repo">Topology of my blendOS
|
||
repo</h2>
|
||
<div class="sourceCode" id="cb3"><pre
|
||
class="language-txt"><code class="language-default"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> |-----------------|</span>
|
||
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a> | package builder |</span>
|
||
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a> |-----------------|</span>
|
||
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a> |</span>
|
||
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a> |</span>
|
||
<span id="cb3-8"><a href="#cb3-8" aria-hidden="true" tabindex="-1"></a> ↓</span>
|
||
<span id="cb3-9"><a href="#cb3-9" aria-hidden="true" tabindex="-1"></a> |-----------------------------|</span>
|
||
<span id="cb3-10"><a href="#cb3-10" aria-hidden="true" tabindex="-1"></a> | ↓ |</span>
|
||
<span id="cb3-11"><a href="#cb3-11" aria-hidden="true" tabindex="-1"></a> | |----------| |</span>
|
||
<span id="cb3-12"><a href="#cb3-12" aria-hidden="true" tabindex="-1"></a> | | packages | |</span>
|
||
<span id="cb3-13"><a href="#cb3-13" aria-hidden="true" tabindex="-1"></a> | |----------| |</span>
|
||
<span id="cb3-14"><a href="#cb3-14" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-15"><a href="#cb3-15" aria-hidden="true" tabindex="-1"></a> | Arch/blendOS |</span>
|
||
<span id="cb3-16"><a href="#cb3-16" aria-hidden="true" tabindex="-1"></a> | repository |</span>
|
||
<span id="cb3-17"><a href="#cb3-17" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-18"><a href="#cb3-18" aria-hidden="true" tabindex="-1"></a> | |-----------| |</span>
|
||
<span id="cb3-19"><a href="#cb3-19" aria-hidden="true" tabindex="-1"></a> | | blendOS | |</span>
|
||
<span id="cb3-20"><a href="#cb3-20" aria-hidden="true" tabindex="-1"></a> | | iso files |←---←|←---←</span>
|
||
<span id="cb3-21"><a href="#cb3-21" aria-hidden="true" tabindex="-1"></a> | |-----------| | |</span>
|
||
<span id="cb3-22"><a href="#cb3-22" aria-hidden="true" tabindex="-1"></a> | | |</span>
|
||
<span id="cb3-23"><a href="#cb3-23" aria-hidden="true" tabindex="-1"></a> |-----------------------------| |</span>
|
||
<span id="cb3-24"><a href="#cb3-24" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-25"><a href="#cb3-25" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-26"><a href="#cb3-26" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-27"><a href="#cb3-27" aria-hidden="true" tabindex="-1"></a> ↓ |</span>
|
||
<span id="cb3-28"><a href="#cb3-28" aria-hidden="true" tabindex="-1"></a> |-------------------------| |</span>
|
||
<span id="cb3-29"><a href="#cb3-29" aria-hidden="true" tabindex="-1"></a> | | |</span>
|
||
<span id="cb3-30"><a href="#cb3-30" aria-hidden="true" tabindex="-1"></a> | Arch/blendOS | |</span>
|
||
<span id="cb3-31"><a href="#cb3-31" aria-hidden="true" tabindex="-1"></a> | clients | |</span>
|
||
<span id="cb3-32"><a href="#cb3-32" aria-hidden="true" tabindex="-1"></a> | | |</span>
|
||
<span id="cb3-33"><a href="#cb3-33" aria-hidden="true" tabindex="-1"></a> | |--------------| | |</span>
|
||
<span id="cb3-34"><a href="#cb3-34" aria-hidden="true" tabindex="-1"></a> | | blendOS iso |-----→|→---------↑</span>
|
||
<span id="cb3-35"><a href="#cb3-35" aria-hidden="true" tabindex="-1"></a> | | builder | |</span>
|
||
<span id="cb3-36"><a href="#cb3-36" aria-hidden="true" tabindex="-1"></a> | |--------------| |</span>
|
||
<span id="cb3-37"><a href="#cb3-37" aria-hidden="true" tabindex="-1"></a> | |</span>
|
||
<span id="cb3-38"><a href="#cb3-38" aria-hidden="true" tabindex="-1"></a> |-------------------------|</span></code></pre></div>
|
||
<h2 id="citations">Citations</h2>
|
||
<p> Saraswat, Rudra, et al. “blendOS · GitLab.” <em>GitLab</em>,
|
||
<a
|
||
href="https://git.blendos.co/blendOS">git.blendos.co/blendOS</a>.
|
||
Accessed 2 Oct. 2024.<br />
|
||
Saraswat, Rudra, and Asterisk. “blendOS / image-builder ·
|
||
GitLab.” <em>GitLab</em>, <a
|
||
href="https://git.blendos.co/blendOS/image-builder">git.blendos.co/blendOS/image-builder</a>.
|
||
Accessed 3 Oct. 2024sku.</p>
|
||
<iframe src="https://john.citrons.xyz/embed?ref=askiiart.net" style="margin-left:auto;display:block;margin-right:auto;max-width:732px;width:100%;height:94px;border:none;"></iframe>
|
||
<script src="/prism.js"></script>
|
||
</body>
|
||
<footer>
|
||
<p><a href="https://git.askiiart.net/askiiart/engl-2311-blog">Source code</a> | <a href="/feed.xml">RSS</a> | <a href="/glossary.html">Glossary</a> | <a href="/about.html">About</a></p>
|
||
<small>Image captions are the same as the alt text; assuming you're sighted, you can most likely ignore them.</small>
|
||
</footer>
|
||
</html>
|