summaryrefslogtreecommitdiff
path: root/projects/lolcat-c
diff options
context:
space:
mode:
authorjaseg <git@jaseg.de>2023-12-30 16:38:02 +0100
committerjaseg <git@jaseg.de>2023-12-30 16:38:02 +0100
commit458a5fdfc598517b9fbddd02d3e1ae7cc70ceb9d (patch)
tree0ba3319ddb214bc65dd402de13939cb9ca283574 /projects/lolcat-c
parent9ee28abd5041ebbbc8acd39ddc84ca37e7255076 (diff)
parent58d54c5debedca8c91b28026f520b226ac8682f6 (diff)
downloadblog-deploy.tar.gz
blog-deploy.tar.bz2
blog-deploy.zip
deploy.py auto-commitdeploy
Diffstat (limited to 'projects/lolcat-c')
-rw-r--r--projects/lolcat-c/LOLCat-Rainbow.jpgbin0 -> 42785 bytes
-rw-r--r--projects/lolcat-c/index.html140
-rw-r--r--projects/lolcat-c/screenshot.pngbin0 -> 198032 bytes
-rw-r--r--projects/lolcat-c/sl.gifbin0 -> 1466027 bytes
4 files changed, 140 insertions, 0 deletions
diff --git a/projects/lolcat-c/LOLCat-Rainbow.jpg b/projects/lolcat-c/LOLCat-Rainbow.jpg
new file mode 100644
index 0000000..9524d26
--- /dev/null
+++ b/projects/lolcat-c/LOLCat-Rainbow.jpg
Binary files differ
diff --git a/projects/lolcat-c/index.html b/projects/lolcat-c/index.html
new file mode 100644
index 0000000..98ac3f0
--- /dev/null
+++ b/projects/lolcat-c/index.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html>
+<html><head>
+ <meta charset="utf-8">
+ <title>lolcat-c | Home</title>
+ <meta name="description" content="">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="mobile-web-app-capable" content="yes">
+ <meta name="color-scheme" content="dark light">
+ <link rel="stylesheet" href="/style.css">
+</head>
+<body><nav>
+ <div class="internal">
+
+ <a href="/" title="Home">Home</a>
+ <a href="/blog/" title="Blog">Blog</a>
+ <a href="/projects/" title="Projects">Projects</a>
+ <a href="/about/" title="About">About</a>
+ </div>
+ <div class="search">
+ <div id="search"></div>
+ </div>
+ <div class="external">
+ <a href="https://git.jaseg.de/" title="cgit">cgit</a>
+ <a href="https://github.com/jaseg" title="Github">Github</a>
+ <a href="https://gitlab.com/neinseg" title="Gitlab">Gitlab</a>
+ <a href="https://chaos.social/@jaseg" title="Mastodon">Mastodon</a>
+ </span>
+</nav>
+
+ <header>
+ <h1>lolcat-c</h1>
+<ul class="breadcrumbs">
+ <li><a href="/">jaseg.de</a></li>
+ <li><a href="/projects/">Projects</a></li><li><a href="/projects/lolcat-c/">lolcat-c</a></li>
+</ul>
+
+ </header>
+ <main data-pagefind-body>
+ <div class="links">
+ <a href="https://git.jaseg.de/lolcat.git">Sources</a>
+ <a href="https://github.com/jaseg/lolcat">Github</a>
+ <a href="https://github.com/jaseg/lolcat/issues">Issues</a>
+ </div>
+ <div class="document">
+
+
+<div class="section" id="what">
+<h2>What?</h2>
+<img alt="LOLCat-Rainbow.jpg" src="LOLCat-Rainbow.jpg" />
+</div>
+<div class="section" id="screenshot">
+<h2>Screenshot</h2>
+<img alt="screenshot.png" src="screenshot.png" />
+<img alt="sl.gif" src="sl.gif" />
+</div>
+<div class="section" id="installation">
+<h2>Installation</h2>
+<div class="section" id="archlinux">
+<h3>Archlinux</h3>
+<p>There's an <a class="reference external" href="https://aur.archlinux.org/packages/c-lolcat">AUR package</a>:</p>
+<pre class="code sh literal-block">
+<span class="lineno"></span><span class="line">$<span class="w"> </span>git<span class="w"> </span>clone<span class="w"> </span>https://aur.archlinux.org/packages/c-lolcat<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>$<span class="w"> </span><span class="nb">cd</span><span class="w"> </span>c-lolcat<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>$<span class="w"> </span>makepkg<span class="w"> </span>-csi
+</span></pre>
+</div>
+<div class="section" id="fedora">
+<h3>Fedora</h3>
+<pre class="code sh literal-block">
+<span class="lineno"></span><span class="line">$<span class="w"> </span>dnf<span class="w"> </span>install<span class="w"> </span>lolcat
+</span></pre>
+</div>
+<div class="section" id="ubuntu-snap">
+<h3>Ubuntu (Snap)</h3>
+<p>See <a class="reference external" href="https://blog.simos.info/how-to-make-a-snap-package-for-lolcat-with-snapcraft-on-ubuntu/">this awesome blog post by a kind person from the internet</a>:</p>
+<pre class="code sh literal-block">
+<span class="lineno"></span><span class="line">$<span class="w"> </span>snap<span class="w"> </span>install<span class="w"> </span>lolcat-c
+</span></pre>
+</div>
+<div class="section" id="mac">
+<h3>Mac</h3>
+<p>Build loclcat with:</p>
+<pre class="code sh literal-block">
+<span class="lineno"></span><span class="line">$<span class="w"> </span>make<span class="w"> </span>lolcat
+</span></pre>
+<p>...and put the resulting binary at a place of your choice.</p>
+</div>
+<div class="section" id="others">
+<h3>Others</h3>
+<pre class="code sh literal-block">
+<span class="lineno"></span><span class="line">$<span class="w"> </span>make<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>sudo<span class="w"> </span>make<span class="w"> </span>install
+</span></pre>
+</div>
+</div>
+<div class="section" id="why">
+<h2>Why?</h2>
+<p>This <cite>lolcat</cite> clone is an attempt to reduce the world's carbon dioxide emissions by optimizing inefficient code. It's
+&gt;10x as fast and &lt;0.1% as large as the original one.</p>
+<pre class="code sh literal-block">
+<span class="lineno"></span><span class="line">newton~/d/lolcat<span class="w"> </span>&lt;<span class="m">3</span><span class="w"> </span>dmesg&gt;foo<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>newton~/d/lolcat<span class="w"> </span>&lt;<span class="m">3</span><span class="w"> </span><span class="nb">time</span><span class="w"> </span>upstream/bin/lolcat<span class="w"> </span>foo<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span><span class="m">13</span>.51user<span class="w"> </span><span class="m">1</span>.34system<span class="w"> </span><span class="m">0</span>:15.99elapsed<span class="w"> </span><span class="m">92</span>%CPU<span class="w"> </span><span class="o">(</span>0avgtext+0avgdata<span class="w"> </span>10864maxresident<span class="o">)</span>k<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>0inputs+0outputs<span class="w"> </span><span class="o">(</span>0major+1716minor<span class="o">)</span>pagefaults<span class="w"> </span>0swaps<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>newton~/d/lolcat<span class="w"> </span>&lt;<span class="m">3</span><span class="w"> </span><span class="nb">time</span><span class="w"> </span>./lolcat<span class="w"> </span>foo<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span><span class="m">0</span>.02user<span class="w"> </span><span class="m">0</span>.00system<span class="w"> </span><span class="m">0</span>:00.09elapsed<span class="w"> </span><span class="m">34</span>%CPU<span class="w"> </span><span class="o">(</span>0avgtext+0avgdata<span class="w"> </span>1936maxresident<span class="o">)</span>k<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>0inputs+0outputs<span class="w"> </span><span class="o">(</span>0major+117minor<span class="o">)</span>pagefaults<span class="w"> </span>0swaps
+</span></pre>
+<p>Bonus comparison with <a class="reference external" href="https://github.com/tehmaze/lolcat/">python-lolcat</a>:</p>
+<pre class="code sh literal-block">
+<span class="lineno"></span><span class="line">newton~/d/lolcat<span class="w"> </span>&lt;<span class="m">3</span><span class="w"> </span>dmesg&gt;foo<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>$<span class="w"> </span><span class="nb">time</span><span class="w"> </span>python-lolcat<span class="w"> </span>foo<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span><span class="m">12</span>.27user<span class="w"> </span><span class="m">0</span>.00system<span class="w"> </span><span class="m">0</span>:12.29elapsed<span class="w"> </span><span class="m">99</span>%CPU<span class="w"> </span><span class="o">(</span>0avgtext+0avgdata<span class="w"> </span>11484maxresident<span class="o">)</span>k<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>0inputs+0outputs<span class="w"> </span><span class="o">(</span>0major+1627minor<span class="o">)</span>pagefaults<span class="w"> </span>0swaps<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>$<span class="w"> </span><span class="nb">time</span><span class="w"> </span>c-lolcat<span class="w"> </span>foo<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span><span class="m">0</span>.29user<span class="w"> </span><span class="m">0</span>.00system<span class="w"> </span><span class="m">0</span>:00.30elapsed<span class="w"> </span><span class="m">98</span>%CPU<span class="w"> </span><span class="o">(</span>0avgtext+0avgdata<span class="w"> </span>468maxresident<span class="o">)</span>k<span class="w"></span></span>
+<span class="lineno"></span><span class="line"><span class="w"></span>0inputs+0outputs<span class="w"> </span><span class="o">(</span>0major+21minor<span class="o">)</span>pagefaults<span class="w"> </span>0swaps
+</span></pre>
+<p>(Read: <cite>c-lolcat &lt;&lt; python-lolcat &lt;&lt; ruby-lolcat</cite>)</p>
+</div>
+</div>
+ </main><footer>
+ Copyright © 2023 Jan Sebastian Götte
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
+</footer>
+<script src="/pagefind/pagefind-ui.js"></script>
+ <script>
+ if(navigator.getEnvironmentIntegrity!==undefined)document.querySelector('body').innerHTML=`<h1>Your browser
+ contains Google DRM</h1>"Web Environment Integrity" is a Google euphemism for a DRM that is designed to
+ prevent ad-blocking, and which Google has forced into their browsers against widespread public opposition.
+ In support of an open web, this website does not function with this DRM. Please install a browser such
+ as <a href="https://www.mozilla.org/en-US/firefox/new/">Firefox</a> that respects your freedom and supports
+ ad blockers.`;
+
+ window.addEventListener('DOMContentLoaded', (event) => {
+ new PagefindUI({element: "#search", showSubResults: true});
+ });
+ </script>
+ </body>
+</html>
diff --git a/projects/lolcat-c/screenshot.png b/projects/lolcat-c/screenshot.png
new file mode 100644
index 0000000..56282af
--- /dev/null
+++ b/projects/lolcat-c/screenshot.png
Binary files differ
diff --git a/projects/lolcat-c/sl.gif b/projects/lolcat-c/sl.gif
new file mode 100644
index 0000000..9d994e8
--- /dev/null
+++ b/projects/lolcat-c/sl.gif
Binary files differ