web/ponderings/nemini/index.html

210 lines
7.4 KiB
HTML
Raw Normal View History

2024-05-31 17:49:23 +02:00
<!DOCTYPE html>
<html lang="en">
2024-07-29 13:43:21 +02:00
<head>
<title>Nemini | Paul&#x27;s Site of Stuff</title>
2024-05-31 17:49:23 +02:00
<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">
2024-07-29 13:43:21 +02:00
<link rel="stylesheet" href="https://paulwilde.uk/font-hack-subset.css">
2024-05-31 17:49:23 +02:00
<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">
2024-07-29 13:43:21 +02:00
<link rel="shortcut icon" type="image/png" href="/favicon.png">
2024-07-29 17:28:56 +02:00
<script defer data-domain="paulwilde.uk" src="https://plausible.io/js/script.js"></script>
</head>
2024-07-29 13:43:21 +02:00
<body class="">
<div class="container">
2024-05-31 17:49:23 +02:00
2024-07-29 13:43:21 +02:00
<header class="header">
<div class="header__inner">
<div class="header__logo">
2024-05-31 17:49:23 +02:00
2024-07-29 13:43:21 +02:00
<a href="https://paulwilde.uk" style="text-decoration: none;">
<div class="logo">
Hello, I&#x27;m Paul
</div>
</a>
2024-05-31 17:49:23 +02:00
</div>
2024-07-29 13:43:21 +02:00
</div>
2024-05-31 17:49:23 +02:00
2024-07-29 13:43:21 +02:00
<nav class="menu">
2024-05-31 17:49:23 +02:00
<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>
2024-07-29 13:43:21 +02:00
<li><a href="/iuse">i use …</a></li>
2024-05-31 17:49:23 +02:00
<li><a href="/tags">tags</a></li>
2024-07-29 13:44:39 +02:00
<li><a href="/atom.xml">rss</a></li>
2024-05-31 17:49:23 +02:00
</ul>
</nav>
2024-07-29 13:43:21 +02:00
</header>
2024-05-31 17:49:23 +02:00
<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;
2024-07-29 13:43:21 +02:00
<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>
2024-05-31 17:49:23 +02:00
<div class="post-content">
2024-07-29 13:43:21 +02:00
<p>'/nɛmɪnaɪ/' Nem-in-eye</p>
2024-05-31 17:49:23 +02:00
<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.
2024-07-29 13:43:21 +02:00
"Simple" in the way it is, hopefully, simple to configure and use with minimal knowledge of web servers in general.</p>
2024-05-31 17:49:23 +02:00
<span id="continue-reading"></span>
2024-07-29 13:43:21 +02:00
<p>You probably need to be familiar with TOML configuration files, but other than that the server should run fairly easily.</p>
2024-05-31 17:49:23 +02:00
<p>See this page on Nemini : <a href="gemini://paulwilde.uk/dev/nemini">gemini://paulwilde.uk/dev/nemini</a></p>
2024-07-29 13:43:21 +02:00
<p>The <a href="https://paulwilde.uk/ponderings/nemini/%22https://codeberg.org/pswilde/nemini%22">source code</a> is hosted at Codeberg.</p>
2024-05-31 17:49:23 +02:00
<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>
2024-07-29 13:43:21 +02:00
<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>
2024-05-31 17:49:23 +02:00
<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>
2024-05-31 18:02:09 +02:00
<span class="button next">
2024-07-29 13:43:21 +02:00
<a href="https://paulwilde.uk/ponderings/geminicss/">
<span class="button__text">Gemini.css</span>&nbsp;
2024-05-31 18:02:09 +02:00
<span class="button__icon"></span>
</a>
</span>
2024-05-31 17:49:23 +02:00
</div>
</div>
</div>
2024-05-31 18:04:49 +02:00
2024-07-29 13:43:21 +02:00
<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>
2024-05-31 18:04:49 +02:00
</div>
2024-07-29 13:43:21 +02:00
</body>
2024-05-31 17:49:23 +02:00
</html>