This commit is contained in:
fzorb 2025-03-06 12:45:26 +02:00
parent f25c5cb60c
commit 3475c31d71
38 changed files with 158 additions and 359 deletions

View file

@ -1,7 +1,7 @@
baseURL = "https://fzorb.xyz/"
languageCode = "en-us"
title = "fzorb.xyz"
theme = "fzmin2"
theme = "zorbed"
[[menus.main]]
name = "Home"

View file

@ -4,5 +4,6 @@ url: "/"
type: "page"
---
Hi, I'm fzorb. I'm a person living in Bucharest. I am passionate about many things, such as system administration, web development and public transportation, as well as music and history. I sometimes write posts on here, which you can read below.
I am fzorb or any other names you may know me under. This is my personal website where I schizopost occasionally.
I am the hostmaster of a few projects. Read more [here](/projects).

View file

@ -1,16 +0,0 @@
---
title: "Contact"
type: "page"
url: "/contact/"
---
Currently I can be found at the following places.
**Email**: [fzorb@fzorb.xyz](mailto:fzorb@fzorb.xyz) or alternatively [fzorb@airmail.cc](mailto:fzorb@airmail.cc)
**Twitter/X**: [@fzorbie](https://twitter.com/fzorbie)
**Discord**: [@fzorbie](https://discord.com/users/1133639224030150656)
**Telegram**: [@fzorb](https://t.me/fzorb)
**Matrix**: @fzorb:m.fzorb.xyz
**Git**: [@fzorb@git.fzorb.xyz](https://git.fzorb.xyz/fzorb) or alternatively [@fzorb@github.com](https://github.com/fzorb)
**Fediverse**: [@fzorb@p.fzorb.xyz](https://p.fzorb.xyz/users/fzorb)
**LastFM**: [@fzorb](https://www.last.fm/user/fzorb)
**Public Key**: https://fzorb.xyz/pub.asc

View file

@ -1,10 +0,0 @@
---
title: "Guestbook"
type: "page"
url: "/guestbook/"
---
<script data-isso="https://isso.fzorb.xyz/" src="https://isso.fzorb.xyz/js/embed.min.js"></script>
<section id="isso-thread">
<noscript>Javascript needs to be activated to view the guestbook. You aren't missing out on anything too.. interesting anyways.</noscript>
</section>

View file

@ -1,4 +1,3 @@
---
title: "Blog"
---
Here I'll be talking about a bunch of things.
[<- return to index](/)

View file

@ -0,0 +1,19 @@
+++
title = 'March Updates'
date = 2025-03-06T07:01:01+02:00
draft = false
+++
Okay, I have dissapeared for about two months, sorry about that. I just didn't really have something interesting to write about. In the meantime, I overhauled the website. Here are the details:
* **No more JavaScript** - it was optional anyways
* **Guestbook and themes are no more** - the first one was starting to get abused and was nothing but a collection of the most stupid things I have seen on the internet, second was extremely pointles
* **New theme** - looks pretty neat, index page idea shamelessly stolen from https://denshi.org
* **Most of the services are no longer around** - only exceptions being the 4get server (although broken #willfixeventually) and in some way the git server. I've decided to use Gitlab instead of Gitea because it has better CI/CD in my humble opinion (as well as more documentation). The new git server is https://code.be4.pw/ -- shoot me an email if you create an account on there, as I seldomly look at the accounts waiting approval.
Most things I wanted to do in the next four months (see [/projects#ideas](/projects/#ideas)) have been unfortunately postponed due to exams. Unless I get something interesting to write about, I don't think I'll make a new blog post until the end of June, [no spoilers tho](https://whois.domaintools.com/fzorb.xyz).
As such, due to exams, it pains me to say this but this website will go unmaintained for a few months.
Take care,
fzorb

28
content/projects.md Normal file
View file

@ -0,0 +1,28 @@
---
title: "Projects (& Ideas)"
---
## Curretly functioning projects
* **IkarusBot**
IkarusBot is a Discord (yes I know Discord is le bad) bot which uses the [TPBI API](https://mo-bi.ro/) in order to fetch vehicle positions via their inventory number (& license plate).
* Source code: https://code.be4.pw/fzorb/ikarusbot
* Invite it to your Discord guild: https://discord.com/oauth2/authorize?client_id=1326431752234733649
* Written in PHP (for the memes)
* **Cogsuite**
Cogsuite is a (badly written but whatever) suite of programs made to scrape Discord servers. This uses sqlite, and sqlite isn't that great on large deployments, but I am considering moving to something like Couchbase or a more serious database in the future. Not now though.
* [Coglog](https://code.be4.pw/fzorb/coglog) - the actual workhorse, handles logging.
* [Cogsee](https://code.be4.pw/fzorb/cogsee) - database viewer, accepts raw SQL queries, but nothing is written to the database.
## Ideas
*No, these **probably** won't become a reality, and I am only putting these out here if anyone else wants to do them (and also to keep track of these). I will probably do some of these when I am finally done with my exams.*
* **Minecraft legacy version (i.e. beta) servers**
I have always been a bit intrigued by older versions of Minecraft and I have to say I quite enjoy them. Here are some server ideas I have thought of:
* **An actual anarchy server**: no plugins (other than AuthMe) and no dupe protection. Very little admin involvement unless necesarry (i.e. in case of something illegal going on).
* **Some sort of towny server**: complete opposite compared to the last one. Towny plugin with some sort of economy mod. Maybe even an earth map.
* **Earth map for old beta versions**: Just take the maximum altitudes of coordinates from [OpenStreetMap](https://wiki.openstreetmap.org/wiki/Altitude) and place dirt (and stone appropriately
* **A reimplementation of the Minecraft Beta 1.2_02 server**: You get the idea.
* **An open source brickbuilding game**:
I have been fascinated ever since I was a child by Sandbox games, and as such I wish to make my own rendition of such a game. My inspiration for this project is Blockland. The main project goal is to make it kind of like Minetest, in the sense that it will be an engine and not a fully fledged game (i.e. you can make your own minigames easily).
* **A way to play GB/GBC/GBA/etc. games via Discord**:
[Inspired by this Junferno video](https://inv.vy.ci/watch?v=Hjdl-e27n_Y&t=370), I have been thinking of making a way to play video games via Discord. I think it would be funny to play Super Mario via Discord.
* **Free Tor/I2P/Yggdrasil mirroring service**:
Mirror clearnet websites to Tor/I2P/Yggdrasil. Basically, all you need to do is prove that you are the owner of a website (via DNS or a .well-known file) and you can get a free I2P/Tor/Yggdrasil mirror. Legal implications and privacy concerns make this project a huge undertaking, as we're essentially becoming the exit node of a lot of people and with great power comes great responsibility (and abuse reports).
* **A wiki website containing guides on setting up servers and other stuff**: Self explanatory -- kind of like a bigger version of https://wiki.installgentoo.com/wiki/Home_server

View file

@ -1,22 +0,0 @@
---
title: "Services"
type: "page"
url: "/services/"
---
This is a catalogue of all the things I am hosting for the public. This isn't everything I host, as I decided to omit private services.
* [Matrix](https://m.fzorb.xyz) - Matrix server ran using [conduwuit](https://conduwuit.puppyirl.gay/). Register using a standard matrix client like Element and using the key [here](/matrix.txt). The key has been put in palce to prevent bots from registering.
* [Git Forge](https://git.fzorb.xyz) - Public gitea-based git server.
* [4get](https://search.fzorb.xyz) - A proxy search engine that doesn't suck.
* [Nitter](https://nitter.fzorb.xyz) - FOSS Twitter front-end. Running the PrivacyDevel fork.
* [Pastebin](https://bin.fzorb.xyz) - yet another pastebin
* Yggdrasil peers:
* tcp://bg1.fzorb.xyz:13710 - Bulgarian peer hosted on Gullo's Hosting
* tcp://fi1.fzorb.xyz:17710 - Finnish peer hosted on Gullo's Hosting
### "Free Hosting"
I also provide hosting to some friends of mine and the general public.
* [Bokku](https://bokku.xyz) - free public web host
* FrenVPS project - this is a private service that is offered to close friends of mine. Notable mentions:
* [Greg's Website](https://greg04.xyz)
* [Mopimo!](https://mp.bokku.xyz)

View file

@ -1,8 +0,0 @@
---
title: "SOTN Archive"
type: "page"
url: "/sotn/"
---
* 06/01/2025 - [Phoenix - Singur](https://www.youtube.com/watch?v=yqF0xbq8wZU)
* 31/12/2024 - [Radiohead - Paranoid Android](https://www.youtube.com/watch?v=Lt8AfIeJOxw)
* 25/12/2024 - [Alternosfera - Rachete](https://www.youtube.com/watch?v=9FKfLfg9bO4)

View file

@ -1,41 +0,0 @@
---
title: "Webring"
type: "page"
url: "/webring/"
---
This is a catalogue of sites I find cool.
### fzorb.xyz
[![](/webring/banner.png)](https://fzorb.xyz) [![](/webring/banner-240.png)](https://fzorb.xyz) [![](/webring/banner-88.gif)](https://fzorb.xyz)
HTTPs: https://fzorb.xyz
*Note: this entry is purely demonstrative of how you could implement my site in a webring. You don't have to ask me for prior approval in order to be added to any webring.*
### nishi.boats
[![](/webring/nishi.gif)](https://nishi.boats)
HTTP: http://nishi.boats
Tor: http://dd6xumtnsuxm646oko7mk2ugkkkdjf334ga7egi2n2zugnptvt2ijdqd.onion/
Gopher: [gopher://gopher.nishi.boats](gopher://gopher.nishi.boats)
### akatas.xyz
[![](/webring/akatas.png)](https://akatas.xyz)
HTTPs: https://akatas.xyz
### vendell.online
[![](/webring/vendell.gif)](https://vendell.online)
HTTPs: https://vendell.online
Tor: http://xjqsg5udycakjniioe6hj7it276vqdhtpszrexdyqni4o2jegevfjaid.onion
### andrei.xyz
[![](/webring/andrei.gif)](https://andrei.xyz)
HTTPs: https://andrei.xyz
Tor: http://andrei3ufgijpzogyai6ejcrdwevzediyzubgqiltc2k42c2zyeakhid.onion/
### Macos.amfi's website
[![](/webring/meower.xyz.png)](https://meower.xyz)
HTTPs: https://meower.xyz
### PythonScratcher's website
[![](/webring/psr.gif)](https://psr.tf)
HTTPs: https://psr.tf
Tor: http://fxerrmu4o5jmlvoft6itsmok5a3b5mchd6lf5yqwbaok2crvk3ljojad.onion/

View file

@ -1,13 +0,0 @@
---
title: "Who am I?"
type: "page"
url: "/whoami/"
---
I am Fzorb. I am a Romanian living in Bucharest, a computer enthusiast, a train nerd, and also a big fan of cats (and rodents).
I can program in Ruby, PHP, Python and I am currently learning C. Generally I program web related stuff, since that's my main field of interest, however, I might work on other stuff in the future, who knows?
I've worked on a bunch of projects, but very little of them are noteworthy.
I am also a sysadmin, so that's cool I guess.

View file

@ -1,5 +0,0 @@
+++
title = '{{ replace .File.ContentBaseName "-" " " | title }}'
date = {{ .Date }}
draft = true
+++

View file

@ -1,183 +0,0 @@
body {
color: #222;
font-family: sans-serif;
/* thanks wuxtu xoxo */
margin: 0;
background-color: rgb(238, 238, 238);
}
.header {
background-color: #363636;
color: white;
padding-top: 4px;
border-bottom: 4px solid #252525;
margin: 0 auto;
}
footer {
border-top: 1px solid #222;
margin-top: 1rem;
}
.header a {
color: rgb(228, 228, 228);
text-decoration: none;
}
.header a:hover {
color: rgb(194, 194, 194)
}
.container {
margin: 0 auto;
max-width: 1000px;
}
.header .container {
display: flex;
justify-content: space-between;
}
.header ul {
list-style-type: none;
margin: 0;
margin-left: 4px;
justify-content: flex-end;
}
.header li {
display: inline;
margin-right: 4px;
}
.jumbotron {
padding-bottom: 2rem;
padding-top: 2rem;
background-color: rgb(255, 196, 255);
width: 100%;
max-width: 100%;
text-align: center;
margin-bottom: 4px;
}
.rent-buttons {
margin: auto;
text-align: center;
color: rgb(0, 0, 0);
margin-top: 2rem;
margin-bottom: 2rem;
}
.rent-buttons .button1 {
padding: 1.5rem;
background-color: rgb(141, 212, 212);
max-width: 18rem;
border: 3px solid rgb(132, 184, 184);
border-radius: 8px;
font-size: medium;
margin-right: 4px;
color: black;
}
.rent-buttons .button1:hover {
background-color: rgb(106, 156, 156);
border: 3px solid rgb(78, 109, 109);
cursor: pointer;
color: white;
}
.rent-buttons .button2 {
padding: 1.5rem;
background-color: rgb(212, 141, 141);
max-width: 18rem;
border: 3px solid rgb(184, 132, 132);
border-radius: 8px;
font-size: medium;
color: black;
}
.rent-buttons .button2:hover {
background-color: rgb(156, 106, 106);
border: 3px solid rgb(119, 85, 85);
cursor: pointer;
color: white;
}
.infobox {
margin-top: 50px;
}
.newstitle {
color: rgb(73, 94, 151);
font-size: 1rem;
}
.newsbox {
background-color: white;
padding: 4px;
margin-bottom: 4px;
border-radius: 4px;
border: solid 2px rgb(204, 204, 204);
font-size: 12px;
}
.newsbox p {
margin: 0;
}
.newscontainer {
max-width: 700px;
margin: 0 auto;
}
.newscontainer h2 {
text-align: center;
margin-bottom: 0;
}
.news .meta {
margin: 0;
font-size: 10px;
}
.plangrid {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: 1fr;
grid-column-gap: 4px;
grid-row-gap: 4px;
max-width: 750px;
margin: 0 auto;
}
.plan1 { grid-area: 1 / 1 / 2 / 2; }
.plan2 { grid-area: 1 / 2 / 2 / 3; }
.plan3 { grid-area: 1 / 3 / 2 / 4; }
.plan-header {
background-color: rgb(235, 175, 65);
padding: 4px;
text-align: center;
font-weight: 500;
font-size: 1.2rem;
color: white;
border-bottom: 2px solid rgb(182, 136, 51);
border-top-left-radius: 8px;
border-top-right-radius: 8px;
}
.plan-main {
background-color: rgb(240, 230, 213);
padding: 4px;
font-weight: 500;
}
.plan-button {
background-color: rgb(235, 175, 65);
border-top: 2px solid rgb(182, 136, 51);
padding: 4px;
text-align: center;
font-weight: 500;
font-size: 1.2rem;
max-width: 100%;
color: white;
display: block;
text-decoration: none;
border-bottom-left-radius: 8px;
border-bottom-right-radius: 8px;
}
.plan-button:hover {
background-color: rgb(204, 151, 52);
border-top: 2px solid rgb(121, 91, 36);
}

View file

@ -1,14 +0,0 @@
{{ define "main" }}
{{ .Content }}
{{ range site.RegularPages }}
<div class="news">
<a href="{{ .RelPermalink }}" class="newstitle">{{ .LinkTitle }}</a>
<p class="meta">{{ .Date.Format "2006/01/02" }}</p>
<div class="newsbox">
<p>{{ .Summary | strings.Truncate 384}}{{ if .Truncated }}<a href="{{ .RelPermalink }}"> (read more)</a>{{ end }}</p>
</div>
</div>
{{ end }}
{{ end }}

View file

@ -1,10 +0,0 @@
{{ define "main" }}
<h1>{{ .Title }}</h1>
{{ $dateMachine := .Date | time.Format "2006-01-02T15:04:05-07:00" }}
{{ $dateHuman := .Date | time.Format ":date_long" }}
<time datetime="{{ $dateMachine }}">{{ $dateHuman }}</time>
{{ .Content }}
{{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }}
{{ end }}

View file

@ -1 +0,0 @@
<p>Copyright {{ now.Year }}. All rights reserved.</p>

View file

@ -1,9 +0,0 @@
{{- with resources.Get "css/main.css" }}
{{- if eq hugo.Environment "development" }}
<link rel="stylesheet" href="{{ .RelPermalink }}">
{{- else }}
{{- with . | minify | fingerprint }}
<link rel="stylesheet" href="{{ .RelPermalink }}" integrity="{{ .Data.Integrity }}" crossorigin="anonymous">
{{- end }}
{{- end }}
{{- end }}

View file

@ -1,11 +0,0 @@
<nav>
<div class="header">
<div class="container">
<a href="/">fzorb.xyz</a>
<ul>
{{ partial "menu.html" (dict "menuID" "main" "page" .) }}
</ul>
</div>
</div>

View file

@ -0,0 +1,22 @@
body {
color: #222;
font-family: sans-serif;
line-height: 1.5;
margin: 1rem;
max-width: 768px;
}
header {
border-bottom: 1px solid #222;
margin-bottom: 1rem;
}
footer {
border-top: 1px solid #222;
margin-top: 1rem;
}
a {
color: #00e;
text-decoration: none;
}

View file

@ -0,0 +1 @@
console.log('This site was generated by Hugo.');

View file

@ -4,16 +4,15 @@
{{ partial "head.html" . }}
</head>
<body>
<header>
{{ partial "header.html" . }}
</header>
<main>
<div class="container">
<div class="content">
<header>
{{ partial "header.html" . }}
</header>
<hr>
{{ block "main" . }}{{ end }}
</div>
</main>
<footer>
{{ partial "footer.html" . }}
</footer>
<footer>
{{ partial "footer.html" . }}
</footer>
</div>
</body>
</html>

View file

@ -0,0 +1,17 @@
{{ define "main" }}
<div class="row">
<main class="one">
{{ .Content }}
</main>
<main class="two">
<ul>
{{ range ( where .Site.RegularPages "Type" "posts" | first 4 ) }}
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
{{ end }}
<li><a href="/posts">... and more</a>
</ul>
</main>
</div>
{{ end }}

View file

@ -1,8 +1,9 @@
{{ define "main" }}
<h1>{{ .Title }}</h1>
{{ .Content }}
<ul>
{{ range .Pages }}
<h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
{{ .Summary }}
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
{{ end }}
</ul>
{{ end }}

View file

@ -0,0 +1,10 @@
{{ define "main" }}
<a href="/"><- return to index</a>
<h1>{{ .Title }}</h1>
{{ if .Date }}
<time datetime="{{ .Date }}">{{ .Date.Format "January 2, 2006" }}</time>
{{ end }}
{{ .Content }}
{{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }}
{{ end }}

View file

@ -0,0 +1,9 @@
<hr>
<div class="links">
Live free or die<br>
[<a href="mailto:fzorb@fzorb.xyz">email</a>] // [<a href="xmpp:fzorb@xmpp.is">xmpp</a>] // [<a href="/pub.asc">pgp</a>]<br>
All content on this page is released under <a href='https://creativecommons.org/publicdomain/zero/1.0/'>CC0</a>
</div>
<!--<div class="links">
[<a href="">tor</a>] // [<a href="">i2p</a>] // [<a href="">yggdrasil</a>]
</div>-->

View file

@ -0,0 +1,2 @@
<link rel="stylesheet" href="/style.css">

View file

@ -0,0 +1 @@
<h1>{{ site.Title }}</h1>

View file

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Before After
Before After

View file

@ -0,0 +1,33 @@
body {
background: #221c1c;
color: #fdfaff;
font-family: Serif;
}
a {
color: #FFB2C6ED;
}
.links {
text-align: center;
}
.content {
max-width: 550px;
text-align: justified;
margin: 0 auto;
}
.row {
display: grid;
grid-template-columns: 50% 50%;
gap: 0px 2px;
grid-auto-flow: row;
grid-template-areas:
"one two";
}
.one { grid-area: one; }
.two { grid-area: two; }