summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Luevano Alvarado <david@luevano.xyz>2022-12-19 22:48:27 -0600
committerDavid Luevano Alvarado <david@luevano.xyz>2022-12-19 22:48:27 -0600
commit81d0d609e47d5cdfab3d5db2eff6ec91b5d2773b (patch)
tree4a9ebd6501d0aa63fd3493d57c8dc73fb3ae47d3
parent7e49db5ddefe8c515b5f3931a5c701efaac33d91 (diff)
add new entry, fix ??? to == syntax for 'mark'
-rwxr-xr-xbs2
-rw-r--r--db/db_blog.psv3
-rw-r--r--live/blog/a/rewrote_pyssg_again.html142
-rw-r--r--live/blog/a/xmpp_server_with_prosody.html6
-rw-r--r--live/blog/g/gogodot_jam3_devlog_1.html6
-rw-r--r--live/blog/index.html4
-rw-r--r--live/blog/rss.xml18
-rw-r--r--live/blog/sitemap.xml8
-rw-r--r--live/blog/tag/@english.html4
-rw-r--r--live/blog/tag/@short.html4
-rw-r--r--live/blog/tag/@tools.html4
-rw-r--r--live/blog/tag/@update.html4
-rw-r--r--src/blog/a/rewrote_pyssg_again.md14
-rw-r--r--src/blog/a/xmpp_server_with_prosody.md4
14 files changed, 208 insertions, 15 deletions
diff --git a/bs b/bs
index 1e3da74..ec625ee 100755
--- a/bs
+++ b/bs
@@ -2,7 +2,7 @@
PYSSG_XYZ_DIR=$HOME/luevano.xyz
-pyssg --config $PYSSG_XYZ_DIR/config.yaml -b --debug
+pyssg --config $PYSSG_XYZ_DIR/config.yaml -b
if [ $? -ne 0 ]; then
echo "Failed to build the site."
diff --git a/db/db_blog.psv b/db/db_blog.psv
index 8618792..97e81c3 100644
--- a/db/db_blog.psv
+++ b/db/db_blog.psv
@@ -6,7 +6,7 @@ a/mail_server_with_postfix.md|1616299559.6570284|1623137344.8639452|b589ec8fd628
a/new_blogging_system.md|1622172099.117893|1622173322.4337702|b4a00df409794ab3d8e824004c2d486b|english,short,tools,update
a/asi_nomas_esta_quedando.md|1622795043.0874712|0.0|dcbec925288c5dd8f2bd9a6e70406978|short,spanish,update
a/acomodada_la_pagina_de_arte.md|1623006369.6071973|1623006525.2665823|50a2280134b5349bfb6d1c517e37a26f|short,spanish,update
-a/xmpp_server_with_prosody.md|1623216270.0372887|1627809865.4920528|0c539e4fb106e1355b358e8dd1b7ab46|english,server,tools,tutorial
+a/xmpp_server_with_prosody.md|1623216270.0372887|1671510819.3465965|4d2ceae4c6a6b4d723fc8a2bf5771462|english,server,tools,tutorial
a/tenia_esto_descuidado.md|1626594710.918819|0.0|76d45ca201ef36002e0c9c87e7a800e5|short,spanish,update
a/hoy_toco_desarrollo_personaje.md|1627452655.5560262|0.0|b891e8efe4e9a5c3f342f9e84e20437a|spanish
a/vpn_server_with_openvpn.md|1627810022.100739|1627812788.832212|7df7d2d05cb07a5d83284f41f3ce9054|english,server,tools,tutorial
@@ -17,3 +17,4 @@ g/starting_gamedev_blogging.md|1652764794.9016073|1653179221.26956|2d6665cebea06
g/godot_project_structure.md|1653182170.4395845|1653366918.4756405|a7b153df43631f17864cd8ab67aca60f|english,gamedev,short
g/flappybird_godot_devlog_1.md|1653795523.5988536|1653795876.8388574|8a4f723fbb20718ad5238fd28aaf28e2|english,gamedev,godot
g/gogodot_jam3_devlog_1.md|1654852625.58801|0.0|f8767cd4023a7a7c0ccf5388cdef049b|english,gamedev,gamejam,godot
+a/rewrote_pyssg_again.md|1671510665.5266156|0.0|9174dbccf61263045159de182e274af4|english,short,tools,update
diff --git a/live/blog/a/rewrote_pyssg_again.html b/live/blog/a/rewrote_pyssg_again.html
new file mode 100644
index 0000000..faff8bb
--- /dev/null
+++ b/live/blog/a/rewrote_pyssg_again.html
@@ -0,0 +1,142 @@
+<!DOCTYPE html>
+<html class="theme-dark" lang="en
+"
+ prefix="og: https://ogp.me/ns#">
+ <head>
+ <base href="https://static.luevano.xyz">
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <link rel="icon" href="images/icons/favicon.ico">
+<title>Rewrote pyssg again -- Luevano's Blog</title>
+ <meta name="description" content="Rewrote pyssg to make it more flexible and to work with YAML configuration files."/>
+<link rel="alternate" type="application/rss+xml" href="https://blog.luevano.xyz/rss.xml" title="Luevano's Blog RSS">
+ <!-- general style -->
+ <link rel="stylesheet" type="text/css" href="css/style.css">
+ <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css">
+ <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css">
+ <!-- theme related -->
+ <script type="text/javascript" src="scripts/theme.js"></script>
+ <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css">
+ <!-- extra -->
+<!-- highlight support for code blocks -->
+<script type="text/javascript" src="hl/highlight.min.js"></script>
+<script type="text/javascript">
+ hljs.initHighlightingOnLoad();
+</script>
+<link id="code-theme-css" rel="stylesheet" type="text/css" href="hl/styles/nord.min.css">
+
+ <!-- og meta -->
+ <meta property="og:title" content="Rewrote pyssg again -- Luevano's Blog"/>
+ <meta property="og:type" content="article"/>
+ <meta property="og:url" content="https://blog.luevano.xyz/a/rewrote_pyssg_again.md"/>
+ <meta property="og:image" content="https://static.luevano.xyz/images/b/default.png"/>
+ <meta property="og:description" content="Rewrote pyssg to make it more flexible and to work with YAML configuration files."/>
+ <meta property="og:locale" content="en"/>
+ <meta property="og:site_name" content="Luevano's Blog"/>
+ </head>
+
+ <body>
+ <header>
+<nav>
+ <ul>
+ <li>
+ <a href="https://luevano.xyz/"><i class="fas fa-home" alt="Home"></i><span>Home</span></a>
+ </li>
+
+ <li>
+ <a href="https://blog.luevano.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a>
+ </li>
+
+ <li>
+ <a href="https://art.luevano.xyz/"><i class="fas fa-paint-brush" alt="Art"></i><span>Art</span></a>
+ </li>
+
+ <li><i class="fab fa-git" alt="Git"></i><span>Git</span>
+ <ul>
+ <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li>
+
+ <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li>
+
+ <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li>
+ </ul>
+ </li>
+
+ <li><i class="fas fa-box-open" alt="Stuff"></i><span>Stuff</span>
+ <ul>
+ <li><a href="https://gb.luevano.xyz/"><i class="fas fa-gamepad" alt="Gameboy"></i><span>Gameboy</span></a></li>
+ </ul>
+ </li>
+ </ul>
+</nav>
+
+<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button>
+
+ </header>
+
+ <main>
+ <h1>Rewrote pyssg again</h1>
+
+ <p>I&rsquo;ve been wanting to change the way <a href="https://github.com/luevano/pyssg">pyssg</a> reads config files and generates <code>HTML</code> files so that it is more flexible and I don&rsquo;t need to have 2 separate build commands and configs (for <a href="https://blog.luevano.xyz">blog</a> and <a href="https://art.luevano.xyz">art</a>), and also to handle other types of &ldquo;sites&rdquo;; because <code>pyssg</code> was built with blogging in mind, so it was a bit limited to how it could be used. So I had to kind of <em>rewrite</em> <code>pyssg</code>, and with the latest version I can now generate the whole site and use the same templates for everything, quite neat for my use case.</p>
+<p>Anyways, so I bought a new domain for all <code>pyssg</code> related stuff, mostly because I wanted somewhere to test live builds while developing, it is of course <a href="https://pyssg.xyz">pyssg.xyz</a>; as of now it is the same template, CSS and scripts that I use here, probably will change in the future. I&rsquo;ll be testing new features and anything <code>pyssg</code> related stuff.</p>
+<p>I should start pointing all links to <code>pyssg</code> to the actual site instead of the github repository (or my <a href="https://git.luevano.xyz">git</a> repository), but I haven&rsquo;t decided how to handle everything.</p>
+
+ <div class="page-nav">
+
+ <span class="index">
+ <a href="https://blog.luevano.xyz" alt="Index">
+ <i class="fas fa-home" alt="Home"></i>
+ <span>Index</span>
+ </a>
+ </span>
+
+ <span class="previous">
+ <a href="https://blog.luevano.xyz/g/gogodot_jam3_devlog_1.html" alt="Previous">
+ <i class="fas fa-arrow-right" alt="Arrow right"></i>
+ <span>Previous</span>
+ </a>
+ </span>
+</div>
+
+
+ <hr>
+ <div class="article-info">
+ <p>By David Luévano</p>
+ <p>Created: Tue, Dec 20, 2022 @ 04:31 UTC</p>
+ <div class="article-tags">
+ <p>Tags:
+<a href="https://blog.luevano.xyz/tag/@english.html">english</a>, <a href="https://blog.luevano.xyz/tag/@short.html">short</a>, <a href="https://blog.luevano.xyz/tag/@tools.html">tools</a>, <a href="https://blog.luevano.xyz/tag/@update.html">update</a> </p>
+</div>
+
+ </div>
+ </main>
+
+ <footer>
+<span>
+ <i class="fas fa-address-card" alt="Contact"></i>
+ <a href="https://blog.luevano.xyz/contact.html">Contact</a>
+</span>
+
+<span>
+ <i class="fas fa-donate" alt="Donate"></i>
+ <a href="https://blog.luevano.xyz/donate.html">Donate</a>
+</span>
+
+<span>
+ <i class="fas fa-rss" alt="RSS"></i>
+ <a target="_blank" href="https://blog.luevano.xyz/rss.xml">RSS</a>
+</span>
+
+<br>
+<span class="created-with">
+ <i class="fas fa-hammer" alt="Hammer"></i>
+ Created with <a href="https://github.com/luevano/pyssg">pyssg</a>
+</span>
+
+<br>
+<span class="copyright">
+ Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado
+</span>
+
+ </footer>
+ </body>
+</html> \ No newline at end of file
diff --git a/live/blog/a/xmpp_server_with_prosody.html b/live/blog/a/xmpp_server_with_prosody.html
index 261531f..7f7b168 100644
--- a/live/blog/a/xmpp_server_with_prosody.html
+++ b/live/blog/a/xmpp_server_with_prosody.html
@@ -76,7 +76,7 @@
<main>
<h1>Create an XMPP server with Prosody compatible with Conversations and Movim</h1>
- <p>Recently I set up an XMPP server (and a Matrix one, too) for my personal use and for friends if they want one; made one for ???<a href="https://lmcj.xyz">EL ELE EME</a>???, for example. So, here are the notes on how I set up the server that is compatible with the <a href="https://conversations.im/">Conversations</a> app and the <a href="https://movim.eu/">Movim</a> social network. You can see my addresses in <a href="https://luevano.xyz/contact.html">contact</a> and the XMPP compliance/score of the server.</p>
+ <p>Recently I set up an XMPP server (and a Matrix one, too) for my personal use and for friends if they want one; made one for <mark><a href="https://lmcj.xyz">EL ELE EME</a></mark> for example. So, here are the notes on how I set up the server that is compatible with the <a href="https://conversations.im/">Conversations</a> app and the <a href="https://movim.eu/">Movim</a> social network. You can see my addresses in <a href="https://luevano.xyz/contact.html">contact</a> and the XMPP compliance/score of the server.</p>
<p>One of the best resources I found that helped me a lot was <a href="https://community.hetzner.com/tutorials/prosody-debian9">Installing and Configuring Prosody XMPP Server on Debian 9</a>, and of course the <a href="https://wiki.archlinux.org/title/Prosody">Arch Wiki</a> and the <a href="https://prosody.im/">oficial documentation</a>.</p>
<p>As with my other entries, this is under a server running Arch Linux, with the Nginx web server and Certbot certificates. And all commands here are executed as root (unless specified otherwise)</p>
<h2 id="prerequisites">Prerequisites</h2>
@@ -411,7 +411,7 @@ Component &quot;vjud.your.domain&quot; &quot;vjud&quot;
name = &quot;User Directory&quot;
vjud_mode = &quot;opt-in&quot;
</code></pre>
-<p>You ???HAVE??? to read all of the configuration file, because there are a lot of things that you need to change to make it work with your server/domain. Test the configuration file with:</p>
+<p>You <mark>HAVE</mark> to read all of the configuration file, because there are a lot of things that you need to change to make it work with your server/domain. Test the configuration file with:</p>
<pre><code class="language-sh">luac5.2 -p /etc/prosody/prosody.cfg.lua
</code></pre>
<p>Notice that by default <code>prosody</code> will look up certificates that look like <code>sub.your.domain</code>, but if you get the certificates like I do, you&rsquo;ll have a single certificate for all subdomains, and by default it is in <code>/etc/letsencrypt/live</code>, which has some strict permissions. So, to import it you can run:</p>
@@ -601,7 +601,7 @@ systemctl enable prosody.service
<div class="article-info">
<p>By David Luévano</p>
<p>Created: Wed, Jun 09, 2021 @ 05:24 UTC</p>
- <p>Modified: Sun, Aug 01, 2021 @ 09:24 UTC</p>
+ <p>Modified: Tue, Dec 20, 2022 @ 04:33 UTC</p>
<div class="article-tags">
<p>Tags:
<a href="https://blog.luevano.xyz/tag/@english.html">english</a>, <a href="https://blog.luevano.xyz/tag/@server.html">server</a>, <a href="https://blog.luevano.xyz/tag/@tools.html">tools</a>, <a href="https://blog.luevano.xyz/tag/@tutorial.html">tutorial</a> </p>
diff --git a/live/blog/g/gogodot_jam3_devlog_1.html b/live/blog/g/gogodot_jam3_devlog_1.html
index 7d3c2d3..7f43ced 100644
--- a/live/blog/g/gogodot_jam3_devlog_1.html
+++ b/live/blog/g/gogodot_jam3_devlog_1.html
@@ -672,6 +672,12 @@ func physics_process(delta: float) -&gt; void:
<p>For exporting and everything else, I went with what I did for my <a href="https://blog.luevano.xyz/g/flappybird_godot_devlog_1#final-notes-and-exporting">FlappyBird Godot clone</a></p>
<div class="page-nav">
+ <span class="next">
+ <a href="https://blog.luevano.xyz/a/rewrote_pyssg_again.html" alt="Next">
+ <i class="fas fa-arrow-left" alt="Arrow left"></i>
+ <span>Next</span>
+ </a>
+ </span>
<span class="index">
<a href="https://blog.luevano.xyz" alt="Index">
diff --git a/live/blog/index.html b/live/blog/index.html
index ae1bbee..2cd139b 100644
--- a/live/blog/index.html
+++ b/live/blog/index.html
@@ -81,7 +81,9 @@
<h2>Articles</h2>
<ul class="page-list">
- <h3>June 2022</h3>
+ <h3>December 2022</h3>
+ <li>Dec 20 - <a href="https://blog.luevano.xyz/a/rewrote_pyssg_again.html">Rewrote pyssg again</a></li>
+ <h3>June 2022</h3>
<li>Jun 10 - <a href="https://blog.luevano.xyz/g/gogodot_jam3_devlog_1.html">Creating my Go Godot Jam 3 entry using Godot 3.5 devlog 1</a></li>
<h3>May 2022</h3>
<li>May 29 - <a href="https://blog.luevano.xyz/g/flappybird_godot_devlog_1.html">Creating a FlappyBird clone in Godot 3.5 devlog 1</a></li>
diff --git a/live/blog/rss.xml b/live/blog/rss.xml
index 62d347c..45dbe21 100644
--- a/live/blog/rss.xml
+++ b/live/blog/rss.xml
@@ -23,6 +23,20 @@
<link>https://blog.luevano.xyz</link>
</image>
<item>
+ <title>Rewrote pyssg again</title>
+ <link>https://blog.luevano.xyz/a/rewrote_pyssg_again.html</link>
+ <guid isPermaLink="true">https://blog.luevano.xyz/a/rewrote_pyssg_again.html</guid>
+ <pubDate>Tue, 20 Dec 2022 04:31:05 GMT</pubDate>
+ <category>English</category>
+ <category>Short</category>
+ <category>Tools</category>
+ <category>Update</category>
+ <description>Rewrote pyssg to make it more flexible and to work with YAML configuration files.</description>
+ <content:encoded><![CDATA[<p>I&rsquo;ve been wanting to change the way <a href="https://github.com/luevano/pyssg">pyssg</a> reads config files and generates <code>HTML</code> files so that it is more flexible and I don&rsquo;t need to have 2 separate build commands and configs (for <a href="https://blog.luevano.xyz">blog</a> and <a href="https://art.luevano.xyz">art</a>), and also to handle other types of &ldquo;sites&rdquo;; because <code>pyssg</code> was built with blogging in mind, so it was a bit limited to how it could be used. So I had to kind of <em>rewrite</em> <code>pyssg</code>, and with the latest version I can now generate the whole site and use the same templates for everything, quite neat for my use case.</p>
+<p>Anyways, so I bought a new domain for all <code>pyssg</code> related stuff, mostly because I wanted somewhere to test live builds while developing, it is of course <a href="https://pyssg.xyz">pyssg.xyz</a>; as of now it is the same template, CSS and scripts that I use here, probably will change in the future. I&rsquo;ll be testing new features and anything <code>pyssg</code> related stuff.</p>
+<p>I should start pointing all links to <code>pyssg</code> to the actual site instead of the github repository (or my <a href="https://git.luevano.xyz">git</a> repository), but I haven&rsquo;t decided how to handle everything.</p>]]></content:encoded>
+ </item>
+ <item>
<title>Creating my Go Godot Jam 3 entry using Godot 3.5 devlog 1</title>
<link>https://blog.luevano.xyz/g/gogodot_jam3_devlog_1.html</link>
<guid isPermaLink="true">https://blog.luevano.xyz/g/gogodot_jam3_devlog_1.html</guid>
@@ -1752,7 +1766,7 @@ cd $CPWD
<category>Tools</category>
<category>Tutorial</category>
<description>How to create an XMPP server using Prosody on a server running Nginx. This server will be compatible with at least Conversations and Movim.</description>
- <content:encoded><![CDATA[<p>Recently I set up an XMPP server (and a Matrix one, too) for my personal use and for friends if they want one; made one for ???<a href="https://lmcj.xyz">EL ELE EME</a>???, for example. So, here are the notes on how I set up the server that is compatible with the <a href="https://conversations.im/">Conversations</a> app and the <a href="https://movim.eu/">Movim</a> social network. You can see my addresses in <a href="https://luevano.xyz/contact.html">contact</a> and the XMPP compliance/score of the server.</p>
+ <content:encoded><![CDATA[<p>Recently I set up an XMPP server (and a Matrix one, too) for my personal use and for friends if they want one; made one for <mark><a href="https://lmcj.xyz">EL ELE EME</a></mark> for example. So, here are the notes on how I set up the server that is compatible with the <a href="https://conversations.im/">Conversations</a> app and the <a href="https://movim.eu/">Movim</a> social network. You can see my addresses in <a href="https://luevano.xyz/contact.html">contact</a> and the XMPP compliance/score of the server.</p>
<p>One of the best resources I found that helped me a lot was <a href="https://community.hetzner.com/tutorials/prosody-debian9">Installing and Configuring Prosody XMPP Server on Debian 9</a>, and of course the <a href="https://wiki.archlinux.org/title/Prosody">Arch Wiki</a> and the <a href="https://prosody.im/">oficial documentation</a>.</p>
<p>As with my other entries, this is under a server running Arch Linux, with the Nginx web server and Certbot certificates. And all commands here are executed as root (unless specified otherwise)</p>
<h2 id="prerequisites">Prerequisites</h2>
@@ -2087,7 +2101,7 @@ Component &quot;vjud.your.domain&quot; &quot;vjud&quot;
name = &quot;User Directory&quot;
vjud_mode = &quot;opt-in&quot;
</code></pre>
-<p>You ???HAVE??? to read all of the configuration file, because there are a lot of things that you need to change to make it work with your server/domain. Test the configuration file with:</p>
+<p>You <mark>HAVE</mark> to read all of the configuration file, because there are a lot of things that you need to change to make it work with your server/domain. Test the configuration file with:</p>
<pre><code class="language-sh">luac5.2 -p /etc/prosody/prosody.cfg.lua
</code></pre>
<p>Notice that by default <code>prosody</code> will look up certificates that look like <code>sub.your.domain</code>, but if you get the certificates like I do, you&rsquo;ll have a single certificate for all subdomains, and by default it is in <code>/etc/letsencrypt/live</code>, which has some strict permissions. So, to import it you can run:</p>
diff --git a/live/blog/sitemap.xml b/live/blog/sitemap.xml
index 8c5b567..6b40c4b 100644
--- a/live/blog/sitemap.xml
+++ b/live/blog/sitemap.xml
@@ -46,6 +46,12 @@
</url>
<url>
+ <loc>https://blog.luevano.xyz/a/rewrote_pyssg_again.html</loc>
+ <lastmod>2022-12-20</lastmod>
+ <changefreq>weekly</changefreq>
+ <priority>1.0</priority>
+ </url>
+ <url>
<loc>https://blog.luevano.xyz/g/gogodot_jam3_devlog_1.html</loc>
<lastmod>2022-06-10</lastmod>
<changefreq>weekly</changefreq>
@@ -107,7 +113,7 @@
</url>
<url>
<loc>https://blog.luevano.xyz/a/xmpp_server_with_prosody.html</loc>
- <lastmod>2021-08-01</lastmod>
+ <lastmod>2022-12-20</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>
diff --git a/live/blog/tag/@english.html b/live/blog/tag/@english.html
index a86e410..defc4a6 100644
--- a/live/blog/tag/@english.html
+++ b/live/blog/tag/@english.html
@@ -71,7 +71,9 @@
<h2>Articles</h2>
<ul class="page-list">
- <h3>June 2022</h3>
+ <h3>December 2022</h3>
+ <li>Dec 20 - <a href="https://blog.luevano.xyz/a/rewrote_pyssg_again.html">Rewrote pyssg again</a></li>
+ <h3>June 2022</h3>
<li>Jun 10 - <a href="https://blog.luevano.xyz/g/gogodot_jam3_devlog_1.html">Creating my Go Godot Jam 3 entry using Godot 3.5 devlog 1</a></li>
<h3>May 2022</h3>
<li>May 29 - <a href="https://blog.luevano.xyz/g/flappybird_godot_devlog_1.html">Creating a FlappyBird clone in Godot 3.5 devlog 1</a></li>
diff --git a/live/blog/tag/@short.html b/live/blog/tag/@short.html
index f22ba9d..a88c750 100644
--- a/live/blog/tag/@short.html
+++ b/live/blog/tag/@short.html
@@ -71,7 +71,9 @@
<h2>Articles</h2>
<ul class="page-list">
- <h3>May 2022</h3>
+ <h3>December 2022</h3>
+ <li>Dec 20 - <a href="https://blog.luevano.xyz/a/rewrote_pyssg_again.html">Rewrote pyssg again</a></li>
+ <h3>May 2022</h3>
<li>May 22 - <a href="https://blog.luevano.xyz/g/godot_project_structure.html">General Godot project structure</a></li>
<li>May 17 - <a href="https://blog.luevano.xyz/g/starting_gamedev_blogging.html">Will start blogging about gamedev</a></li>
<li>May 15 - <a href="https://blog.luevano.xyz/a/password_manager_authenticator_setup.html">My setup for a password manager and MFA authenticator</a></li>
diff --git a/live/blog/tag/@tools.html b/live/blog/tag/@tools.html
index 8937950..a4ba207 100644
--- a/live/blog/tag/@tools.html
+++ b/live/blog/tag/@tools.html
@@ -71,7 +71,9 @@
<h2>Articles</h2>
<ul class="page-list">
- <h3>May 2022</h3>
+ <h3>December 2022</h3>
+ <li>Dec 20 - <a href="https://blog.luevano.xyz/a/rewrote_pyssg_again.html">Rewrote pyssg again</a></li>
+ <h3>May 2022</h3>
<li>May 15 - <a href="https://blog.luevano.xyz/a/password_manager_authenticator_setup.html">My setup for a password manager and MFA authenticator</a></li>
<h3>August 2021</h3>
<li>Aug 01 - <a href="https://blog.luevano.xyz/a/vpn_server_with_openvpn.html">Create a VPN server with OpenVPN (IPv4)</a></li>
diff --git a/live/blog/tag/@update.html b/live/blog/tag/@update.html
index 563f7cc..1929d07 100644
--- a/live/blog/tag/@update.html
+++ b/live/blog/tag/@update.html
@@ -71,7 +71,9 @@
<h2>Articles</h2>
<ul class="page-list">
- <h3>May 2022</h3>
+ <h3>December 2022</h3>
+ <li>Dec 20 - <a href="https://blog.luevano.xyz/a/rewrote_pyssg_again.html">Rewrote pyssg again</a></li>
+ <h3>May 2022</h3>
<li>May 17 - <a href="https://blog.luevano.xyz/g/starting_gamedev_blogging.html">Will start blogging about gamedev</a></li>
<li>May 15 - <a href="https://blog.luevano.xyz/a/devs_android_me_trozaron.html">Los devs de Android/MIUI me trozaron</a></li>
<h3>April 2022</h3>
diff --git a/src/blog/a/rewrote_pyssg_again.md b/src/blog/a/rewrote_pyssg_again.md
new file mode 100644
index 0000000..70ec8dd
--- /dev/null
+++ b/src/blog/a/rewrote_pyssg_again.md
@@ -0,0 +1,14 @@
+title: Rewrote pyssg again
+author: David Luévano
+lang: en
+summary: Rewrote pyssg to make it more flexible and to work with YAML configuration files.
+tags: update
+ tools
+ short
+ english
+
+I've been wanting to change the way [pyssg](https://github.com/luevano/pyssg) reads config files and generates `HTML` files so that it is more flexible and I don't need to have 2 separate build commands and configs (for [blog](https://blog.luevano.xyz) and [art](https://art.luevano.xyz)), and also to handle other types of "sites"; because `pyssg` was built with blogging in mind, so it was a bit limited to how it could be used. So I had to kind of *rewrite* `pyssg`, and with the latest version I can now generate the whole site and use the same templates for everything, quite neat for my use case.
+
+Anyways, so I bought a new domain for all `pyssg` related stuff, mostly because I wanted somewhere to test live builds while developing, it is of course [pyssg.xyz](https://pyssg.xyz); as of now it is the same template, CSS and scripts that I use here, probably will change in the future. I'll be testing new features and anything `pyssg` related stuff.
+
+I should start pointing all links to `pyssg` to the actual site instead of the github repository (or my [git](https://git.luevano.xyz) repository), but I haven't decided how to handle everything. \ No newline at end of file
diff --git a/src/blog/a/xmpp_server_with_prosody.md b/src/blog/a/xmpp_server_with_prosody.md
index e3e33b5..e3ed291 100644
--- a/src/blog/a/xmpp_server_with_prosody.md
+++ b/src/blog/a/xmpp_server_with_prosody.md
@@ -7,7 +7,7 @@ tags: server
tutorial
english
-Recently I set up an XMPP server (and a Matrix one, too) for my personal use and for friends if they want one; made one for ???[EL ELE EME](https://lmcj.xyz)???, for example. So, here are the notes on how I set up the server that is compatible with the [Conversations](https://conversations.im/) app and the [Movim](https://movim.eu/) social network. You can see my addresses in [contact](https://luevano.xyz/contact.html) and the XMPP compliance/score of the server.
+Recently I set up an XMPP server (and a Matrix one, too) for my personal use and for friends if they want one; made one for ==[EL ELE EME](https://lmcj.xyz)== for example. So, here are the notes on how I set up the server that is compatible with the [Conversations](https://conversations.im/) app and the [Movim](https://movim.eu/) social network. You can see my addresses in [contact](https://luevano.xyz/contact.html) and the XMPP compliance/score of the server.
One of the best resources I found that helped me a lot was [Installing and Configuring Prosody XMPP Server on Debian 9](https://community.hetzner.com/tutorials/prosody-debian9), and of course the [Arch Wiki](https://wiki.archlinux.org/title/Prosody) and the [oficial documentation](https://prosody.im/).
@@ -358,7 +358,7 @@ Component "vjud.your.domain" "vjud"
vjud_mode = "opt-in"
```
-You ???HAVE??? to read all of the configuration file, because there are a lot of things that you need to change to make it work with your server/domain. Test the configuration file with:
+You ==HAVE== to read all of the configuration file, because there are a lot of things that you need to change to make it work with your server/domain. Test the configuration file with:
```sh
luac5.2 -p /etc/prosody/prosody.cfg.lua