ayakael.net/README/index.html
forgejo-actions[bot] 25d2acf187
All checks were successful
/ deploy (push) Successful in 24s
favicon.ico: restore correct favicon
2024-09-17 19:04:12 +00:00

214 lines
7.8 KiB
HTML

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" class="h-100">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title>README - Ayakael</title>
<!-- cargo-culted from https://realfavicongenerator.net/ -->
<!-- for the record: it is absolutely ridiculous that new browsers
*and* operating systems each want their own little precious
snowflake just for a frigging icon -->
<link rel="apple-touch-icon" sizes="180x180" href="../apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="../favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png">
<link rel="manifest" href="../site.webmanifest">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="theme-color" content="#ffffff">
<!-- ikiwiki CSS -->
<link href="../css/style.css" rel="stylesheet" />
<!-- Bootstrap core CSS -->
<!-- those checksums can be verified with: shasum -b -a 384 $file | xxd -r -p | base64 -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
<!-- Custom styles for this template -->
<link href="../css/bootstrap.local.css" rel="stylesheet" />
<!-- Custom styles for derivatives -->
<link rel="stylesheet" href="../css/local.css" type="text/css" />
</head>
<body class="d-flex flex-column h-100">
<header>
<nav class="navbar fixed-top navbar-expand-lg navbar-light bg-light border">
<div class="container-fluid">
<a class="navbar-brand me-auto" href="../">
<img alt="Ayakael" src="../favicon.png" width="48" height="48" />
</a>
<button class="navbar-toggler collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbarScroll" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div id="navbar" class="collapse navbar-collapse">
<!-- the anchors force ikiwiki to use a tags instead of spans. hopefully. -->
<ul class="navbar-nav nav-link align-items-center ms-auto">
<li><a href="../index.en.html">Home</a></li>
<li><a href="https://ayakael.net/forge/">Forge</a></li>
<li><a href="../contact/index.en.html">Contact</a></li>
</ul>
<ul class="navbar-nav nav-link align-items-center ms-auto">
</ul>
</div>
</div>
</nav>
</header>
<main class="flex-shrink-0">
<div class="container" id="content">
<h1>ayakael.net</h1>
<p>Upstream: https://ayakael.net/forge/ayakael.net/actions</p>
<p><img src="https://ayakael.net/forge/ayakael.net/badges/workflows/pages.yaml/badge.svg" alt="Build Status" />
<img src="https://ayakael.net/forge/ayakael.net/badges/workflows/deploy.yaml/badge.svg" alt="Push Status" /></p>
<h2>Forgejo Actions</h2>
<p>This project's static Pages are built by Forgejo Actions, following the steps
defined in <a href=".forgejo/workflows/pages.yaml"><code>.forgejo/workflows/pages.yaml</code></a>.
That builds this website using ikiwiki, and pushes the build artifacts to the
<code>public</code> branch.</p>
<p>The <code>public</code> branch has its own workflow following steps defined in
<a href="https://ayakael.net/forge/ayakael.net/src/branch/public/.forgejo/workflows/deploy.yaml"><code>forgejo/workflows/deploy.yaml</code></a>
that uploads the artifacts to a remote HTTP server for deployment in
production. This workflow is automatically updated from <code>main</code> so that <code>public</code>
should never be manually modified.</p>
<p>The deployment is done by a simple remote git push via SSH to a non-bare repo
where <code>git config receive.denyCurrentBranch</code> is set as <code>updateInstead</code>. This
allows this repo to be checked out as <code>public</code>, allowing it to be a root for
your favorite HTTP server.</p>
<p>The following secrets are expected to be set for operation:
* PAGES_PRIVKEY: SSH private key that is used to push to the HTTP server's git
repo
* PAGES_TOKEN: Forgejo application token used to push to <code>public</code> branch.</p>
<p>The following variables are expected to be set for operation:
* PAGES_TARGET: SSH target for HTTP server's git repo, following this format:
user@example.net:/path/to/http/repo</p>
<h2>Building locally</h2>
<p>To work locally with this project, you'll have to follow the steps below:</p>
<ol>
<li>Fork, clone or download this project</li>
<li>Install ikiwiki:
<ul>
<li><a href="https://ikiwiki.info/tips/ikiwiki_on_mac_os_x/">mac</a></li>
<li><a href="https://ikiwiki.info/setup/">linux</a></li>
<li><a href="https://ikiwiki.info/install/">source</a></li>
</ul></li>
<li>Generate the website: <code>ikiwiki --setup ikiwiki.setup</code></li>
<li>Start http-server: <code>./test-server.sh</code></li>
<li>Preview your project: open 127.0.0.1:8080 in your browser</li>
</ol>
<p>Read more at ikiwiki's <a href="https://ikiwiki.info/">documentation</a>.</p>
<h2>Contributing</h2>
<ol>
<li><p>Fork the main ayakael.net repo.</p></li>
<li><p>Checkout the forked repository.</p>
<ul>
<li><code>git clone ssh://git@ayakael.net/&#036;USER/ayakael.net</code></li>
<li><code>cd ayakael.net</code></li>
</ul></li>
<li><p>Make your changes.</p></li>
<li><p>Do local build.</p>
<ul>
<li><code>ikiwiki --setup ikiwiki.setup</code></li>
</ul></li>
<li><p>Fix any errors that come up and rebuild until it works locally.</p></li>
<li><p>Commit the changes to the git repo in a git branch</p>
<ul>
<li><code>git checkout -b &lt;name&gt;</code></li>
<li><code>git add</code> changes</li>
<li><code>git commit -m 'content/index: descriptive description'</code></li>
<li><code>git push</code></li>
</ul></li>
<li><p>Create a merge request with your changes by following link in server response.</p></li>
<li><p>Once the tests in the merge-request pass, and reviewers are happy, your changes
will be merged.</p></li>
</ol>
<!-- legacy Ikiwiki comments.pm section -->
<!-- Mastodon comments -->
<div class="pagedate text-muted">
<span class="created">Created <time datetime="2024-09-17T19:04:06Z" class="dt-published">Tue Sep 17 19:04:06 2024</time>.</span>
<span class="edited">
Edited <time datetime="2024-09-17T19:04:06Z">Tue Sep 17 19:04:06 2024</time>.
</span>
</div>
</div> <!-- /container -->
</main>
<footer class="footer mt-auto bg-light py-2" role="contentinfo">
<div class="container">
<div class="row text-muted">
<div class="col-sm">
Copyleft © 2024 ayakael <a href="../meta/license/">CC-BY-SA</a>
</div>
<div class="col-sm text-sm-end">
Powered by <a href="http://ikiwiki.info/">ikiwiki</a>.
</div>
</div>
</div>
</footer>
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js" integrity="sha384-oBqDVmMz9ATKxIep9tiCxS/Z9fNfEXiDAYTujMAeBAsjFuCZSmKbSSUnQlmh/jp3" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>
<!-- TODO: Find other ways to setup analytics
<script data-goatcounter="https://analytics.anarc.at/count" async src="//analytics.anarc.at/count.js"></script>
<noscript>
<img src="https://analytics.anarc.at/count?p=README&t=README" alt="tracking pixel to count visitors when Javascript is disabled" />
</noscript>
-->
</body>
</html>