web/ponderings/nemini/index.html

210 lines
7.4 KiB
HTML
Raw Permalink Normal View History

2024-07-29 22:20:39 +02:00
<!DOCTYPE html>
<html lang="en">
<head>
<title>Nemini | Paul&#x27;s Site of Stuff</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<meta name="robots" content="noodp"/>
<link rel="stylesheet" href="https://paulwilde.uk/style.css">
<link rel="stylesheet" href="https://paulwilde.uk/color/orange.css">
<link rel="stylesheet" href="https://paulwilde.uk/color/background_blue.css">
<link rel="stylesheet" href="https://paulwilde.uk/font-hack-subset.css">
<meta name="description" content="A simple Gemini server with virtual host and alias support">
<meta property="og:description" content="A simple Gemini server with virtual host and alias support">
<meta property="og:title" content="Nemini | Paul's Site of Stuff">
<meta property="og:type" content="article">
<meta property="og:url" content="https://paulwilde.uk/ponderings/nemini/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:description" content="A simple Gemini server with virtual host and alias support">
<meta name="twitter:title" content="Nemini | Paul's Site of Stuff">
<meta property="twitter:domain" content="paulwilde.uk">
<meta property="twitter:url" content="https://paulwilde.uk/ponderings/nemini/">
<link rel="alternate" type="application/atom+xml" title="RSS" href="https://paulwilde.uk/atom.xml">
<link rel="shortcut icon" type="image/png" href="/favicon.png">
<script defer data-domain="paulwilde.uk" src="https://plausible.io/js/script.js"></script>
</head>
<body class="">
<div class="container">
<header class="header">
<div class="header__inner">
<div class="header__logo">
<a href="https://paulwilde.uk" style="text-decoration: none;">
<div class="logo">
Hello, I&#x27;m Paul
</div>
</a>
</div>
</div>
<nav class="menu">
<ul class="menu__inner">
<li><a href="/">home</a></li>
<li><a href="/aboutme">about me</a></li>
<li><a href="/ponderings">ponderings</a></li>
<li><a href="/iuse">i use …</a></li>
<li><a href="/tags">tags</a></li>
<li><a href="/atom.xml">rss</a></li>
</ul>
</nav>
</header>
<div class="post">
<h1 class="post-title"><a href="https://paulwilde.uk/ponderings/nemini/">Nemini</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2023-02-20
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://paulwilde.uk/tags/development/">#development</a>&nbsp;
<a class="post-tag" href="https://paulwilde.uk/tags/gemini/">#gemini</a>&nbsp;
<a class="post-tag" href="https://paulwilde.uk/tags/nim/">#nim</a></span>
<div class="sourcecode">
<a href="https:&#x2F;&#x2F;codeberg.org&#x2F;pswilde&#x2F;nemini" target="_blank">source code</a>
</div>
<div class="post-content">
<p>'/nɛmɪnaɪ/' Nem-in-eye</p>
<h3 id="a-simple-gemini-server">A simple Gemini server</h3>
<p>Nemini is a simple Gemini server with static file serving, virtual host and alias support.
"Simple" in the way it is, hopefully, simple to configure and use with minimal knowledge of web servers in general.</p>
<span id="continue-reading"></span>
<p>You probably need to be familiar with TOML configuration files, but other than that the server should run fairly easily.</p>
<p>See this page on Nemini : <a href="gemini://paulwilde.uk/dev/nemini">gemini://paulwilde.uk/dev/nemini</a></p>
<p>The <a href="https://paulwilde.uk/ponderings/nemini/%22https://codeberg.org/pswilde/nemini%22">source code</a> is hosted at Codeberg.</p>
<h3 id="features">Features</h3>
<ul>
<li>Will serve static files</li>
<li>Virtual host and alias capability</li>
<li>Headers and Footers can be applied to each page</li>
</ul>
<h3 id="how-to-run">How to run</h3>
<ul>
<li>Copy the <code>config/nemini.sample.toml</code> file to <code>/etc/nemini/nemini.toml</code> nd edit to your liking</li>
<li>Certificates are <em>required</em> so make sure you have those set. They will be automatically created via openssl if they don't exist.</li>
<li>Host your files in your <code>root_dir</code> director/y|ies/</li>
<li>Run the <code>nemini</code> binary</li>
</ul>
<h3 id="parameters">Parameters</h3>
<p>Passing the <code>--config</code> parameter with a file location will allow the use of a custom config file saved wherever you wish.</p>
<h3 id="build-from-source">Build from source</h3>
<p>Install nim and nimble and run the following command:</p>
<blockquote>
<p>nimble build</p>
</blockquote>
<p>All nim dependencies will be installed.</p>
<h3 id="links">Links</h3>
<p><a href="https://codeberg.org/pswilde/nemini">Source Code</a><br />
<a href="https://toml.io">TOML Config file reference</a></p>
</div>
<div class="pagination">
<div class="pagination__title">
<span class="pagination__title-h">Thanks for reading! Read other posts?</span>
<hr />
</div>
<div class="pagination__buttons">
<span class="button previous">
<a href="https://paulwilde.uk/ponderings/freshgpt/">
<span class="button__icon"></span>&nbsp;
<span class="button__text">AI Search</span>
</a>
</span>
<span class="button next">
<a href="https://paulwilde.uk/ponderings/geminicss/">
<span class="button__text">Gemini.css</span>&nbsp;
<span class="button__icon"></span>
</a>
</span>
</div>
</div>
</div>
<footer class="footer">
<div class="footer__inner">
<a href="https:&#x2F;&#x2F;notnull.space&#x2F;@paul" rel="me">fediverse (gts)</a>
<a href="https:&#x2F;&#x2F;snac.notnull.space&#x2F;paul" rel="me">fediverse (snac)</a>
<a href="https:&#x2F;&#x2F;codeberg.org&#x2F;pswilde" rel="me">codeberg</a>
<a href="https:&#x2F;&#x2F;keyoxide.org&#x2F;85633E30514CC1932E4268460ED12CF710BC42CA" rel="me">keyoxide</a>
</div>
<div class="footer__inner">
<div class="copyright">
<span>©
2024
Paul Wilde</span>
<span class="copyright-theme">
<span class="copyright-theme-sep">:: </span>
Theme: <a href="https://github.com/pawroman/zola-theme-terminimal/">Terminimal</a>
</span>
</div>
</div>
</footer>
</div>
</body>
</html>