The Approximately Monthly Zoomer
Proxmox is not that hard
2023-02-12
As it turns out, having a single server run a host (no pun intended) of different things on the same operating system can lead to some weirdness. Having some form of separation between the processes can be helpful - many choose containers and virtual machines and so did I.
Proxmox
For me, the decision to install proxmox came about when I realized, that I experimented less and less on my server for fear of breaking something and causing downtime to the services I want to be locally available all the time. Being able to experiment inside a VM and restore it from a backup or throw it away should the need arise has definitely had a very positive impact on my peace of mind.
With regular snapshots of my minecraft server, I don’t have to worry about my so-called friend playing a practical joke on my meticulously constructed mob grinder.
By using proxmox’s potent klickibunti for managing drives, I was able
to combine all the old vintage SSDs lying around my
house into a single ZFS pool for the less important stuff on my server.
While proxmox does have a nice way of viewing S.M.A.R.T. data and
creating snapshots and backups of VMs, I’d rather not put my precious
minecraft world saves that pool specifically.
One of the programs running on my server leaks RAM. Even though I love going through other people’s spaghetti and fixing RAM leaks, periodically restarting the program’s container seems to be a more pragmatic solution. And with proxmox I can even see its RAM usage over time.
Even if you don’t feel like using any kind of orchestration tool for your containers or config management for your VMs (yet), proxmox is a powerful tool. New VMs and Containers can be set up very easily, the snapshot and backup system is very versatile, and if you’re ready to spend some money you can use its HA tools to migrate VMs to a different node while they’re running. Installing it is as easy as it is to install debian, if not easier. 10/10 would recommend.
Can we please go back to paper menus?
2023-01-06
My brother in Christ, I do not need assistance with scanning a QR code, just give me the frickin’ paper menu!!!!11!1!
Recently I’ve let a restaurant ruin my mood by using a buggy menu behind a QR code instead of handing me a proper menu and that made me think, so here are all the reasons I could come up with in the shower about why we should reject modernity, embrace tradition, and use good old-fashioned paper menus.
Why would I want to look at a tiny screen smaller than my hand instead of a large (paper) menu with a large font with godlike contrast that can display more than a few lines at a time?
SoMeBoDy tHiNk oF tHe cHiLdReN - but unironically. Not all children who are capable readers posess a smartphone or should be encouraged to use one during a meal.
I don’t want to be advertised to on a restaurant menu you greedy fucks. Louis Rossmann had a similar experience where the first thing he saw after loading the site were three advertisements that blocked nearly all of the page.
Cookies - but not the kind you want at a restaurant. Clicking through dark-pattern cookie dialogues just to order food in a restaurant. Welcome to the world of tomorrow!
Security - If someone on the street handed you a QR code to scan and said “trust me bro, it’s 100% safe and legit” I’m sure you’d do exactly as asked. Bonus points if the site allows you to directly pay by credit card. Also, what about exploits in the QR scanning software or just regular browser exploits? What if some non tech-savvy senior gets tricked into downloading the offishal™ restaurant app? Or someone leaves a fake QR code at the table?
Tracking scripts. Why do goolag and friends need to know where I’ve been eating?
Poor web design - Clicking back and forth through categories/menus just so you can see the appetizers, main courses, side dishes and desserts separately. And god forbid you want to see the ingredients, that’s another click on the item and scroll down. Then you have to click the back button which doesn’t bring you back to the same place on the page but all the way to the top.
It distracts. Looking at your phone there will certainly be some other things that may disctract you, your friend texting you, a missed call from your coworker, a calendar reminder, any notification really. I for one don’t have the mental fortitude to block out all those stimuli and focus solely on looking at the menu in my browser, and neither do some of my friends, who ended up spending a large amount time checking other notifications every time they went to take a look at the menu.
We’re inside, in a large building. Large buildings have lots of walls, lots of thick walls. Mostly from reinforced concrete, which has a pretty high linear attenuation coefficient. An internet connection is needed to load all the fancy 4K pictures of the food. Do you see where I’m going with this? They already have reception problems with their GSM credit card reader, waving it around trying to catch some bytes floating around the ether, let alone downloading high res pictures.
Public WiFi. That fancy new speakeasy you can only enter with a password is in a basement? No need to worry about reception, just use their free WiFi! Yeah, sure. Even if you’re so inebriated that connecting to a public and unencrypted WiFi seems like a good idea, what do you think will happen when everyone tries to open the menu at once using their shit-tier ISP-provided 54mbps dsl 802.11g router? What about the couple sitting in the other corner away from the router?
The Good Things
Not everything about those QR menus is bad, there are some small benefits, but most have one thing in common: only the restaurant benefits from it.
You can change prices on a whim! No more reprinting menus, just a few clicks in your POS (both meanings) system and you can adjust for real-time inflation should you live in Argentina. Someone with gucci crocs and a rolex just walked in? Have the QR code on their table link to a more suitable “premium” menu!
You save money and trees by not printing paper menus. Well yes, but actually no. Most of the time they still have good old-fashioned cellulose menus as a backup, so those trees are already dead.
When combined with an ordering system, you can fire some of the staff and keep more of the profits to yourself.
That’s it?
Unless you completely dread social interaction with waiters and holding menus other people have held before you (why are you at a reastaurant then?), I fail to see how menus behind QR codes benefit you, the customer, in any way.
To PHP or not to PHP
2022-12-06
Up until now my blog has been using PHP with a MySQL database to store blog entries. It was a nice exercise to try PHP again, every year the language becomes more and more bearable. However, it always seemed a bit overkill for what I’m trying to achieve: a few pages with nicely laid out text.
Why now?
I’m currently in the process of migrating all of my services onto a Proxmox cluster, so I guess now is as good a time as any.
The New, Better, Improved and 100% Future-Proof System
My blog neither has a lot of posts nor frequent updates, so a search function is something I can procrastinate doing for now. This means there is no need for anything else than a few static pages. The general idea I had was to write articles in markdown and have them converted into html. Without checking I was certain such a program already existed so I started thinking about the rest of the setup. I settled on a python script which takes the markdown files, which have a few lines of metadata at the beginning, and passes them to pandoc for conversion using templates. Since the python script runs on my local machine with trusted™ files and not on the server itself, I sleep with a clear conscience each night, knowing the security of the script and sanitizingh the input is not a thing to worry about.
Challenges
Passing one article to an html template is not a big deal, but what if you want three articles on the same page? Let’s say on the landing page? Templates within tempates? How do you use templates all the way down?
Turns out I don’t even know how to google that, so instead I’ll just generate the articles with pandoc and then manually insert multiple into a single page using a python script.
Et voilà
It’s better than good - it’s good enough! I’m happy with the way it turned out. To some it might be ugly spaghetti code, to others it might be pretty spaghetti code - either way, it’s my spaghet and I’m proud of it.
Non-Evil Cloud Storage
2019-03-30
This is post about me installing NextCloud on my server - there is a TLDR at the end if you don’t want to read the whole thing.
GNU + Obligatory Virtue Signaling
At this point most people who understand something about tech should
know that most offers of private cloud storage providers are
indeed too good to be true. “Google admits to actively scanning and
analysing everything you upload” when you use their service Google Drive
[sauce]
and OneDrive and iCloud (or Microsoft and Apple respectively) reserve
the right to scan your files for “objectionable
content”. If you want cloud storage with security by design instead
of security by pinky promise policy, you have two options: Pay
for a decent, trustworthy cloud service or do it yourself. If you are
also particularly worried about glow-in-the-darks the latter is probably
the option to go with.
Meet. NextCloud.
NextCloud is basically Dropbox on steroids, a detailed comparison with other cloud storage providers can be found here. With NextCloud you can sync and backup not only data but also calendars and contacts, you can edit your files in the browser using Collabora or OnlyOffice, connect it to other clouds using various protocols, use the integrated chat functions for end-to-end encrypted (video) chat and completely encrypt all your data on the server so even the person running the server cannot access your data. Cost: 0 Gold + Hardware. Since NextCloud is not really resource-hungry you can literally install and use it on a RaspberryPi so hardware cost should be manageable.
What You Need
There are a few things and abilities you will need to know/have for this (besides basic knowledge of Linux):
- A GNU+Linux Server with apache, php and mysql
- A Domain
- Apache Configs
- Know: How to install SSL certificates (or how to type
certbot –apache
into your console)
Installing NextCloud
With their Web Installer it’s basically as simple as dropping a php file in your www folder, you can then configure it from any browser with access to your server. Detailed information on how to prepare for the installation can be found in their comprehensive docs here (I’m not going to reinvent the wheel by creating yet another tutorial).
Quick Tips and FAQ
- Read the docs
- Use SSL for security
- Read the docs
- For more speed use http2 and configure an opcache for php
- Read the docs
- Keep your server and NextCloud updated
- Read the docs
- “Does NextCloud run on Windows?” No,
that would be heresy!the server doesn’t but there is a Windows client.
TLDR
Google/Microsoft/Apple bad, NextCloud good. Install on Linux server with web installer from here. Read this. Enjoy your freedom.