I'm a university student currently studying software engineering as well as an open source developer. You may know me as the project maintainer of Principia or for my contributions to Luanti (formerly Minetest).
This is my site where I write about what I do and about whatever else interests me, in the case that someone else finds it interesting.
When you are supposed to write something and submit it as a PDF document, generally the most common tool that comes to mind are traditional word processors such as LibreOffice Writer. Such word processors also provide various WYSIWYG formatting tools, and then allow you to export the document as a PDF.
But there are of course other ways to write your text documents, such as using the simple yet effective Markdown markup language. This blog post goes over how I generate PDF documents from Markdown, using Pandoc and Weasyprint.
In early January of 2022, a modpack for Luanti (named Minetest at the time) called Techage received a pull request from a well known community member by the name of HybridDog. The pull request was about adding a config file for the Lua static analyser Luacheck, and then going through the mod’s codebase to fix any warnings that it found.
At a first glance, it looks like a pretty typical maintenance and code quality PR. But within this noise of line changes to fix linter warnings, there was an odd and ominous piece of code that was added, heavily obfuscated with an encrypted payload and hidden in plain sight. A backdoor.
A display manager is an essential component in a typical Linux graphical environment. Its origins date to the original design of the X Window System with client and server components that may be on other ends of a network, managing authentication for remote graphical X environments.
However, for modern personal computers running a Linux distribution nowadays, it is simply the intermediate between the initial bootup sequence and starting your window manager or desktop environment of choice, providing local account switching and authentication. It disappears as soon as you log in, and in many cases is seamlessly tied to your desktop environment of choice making you not even notice it.
When you are previously used to working with higher-level programming languages and pick up a lower-level language, there tends to be a lot of things you previously took for granted working at a higher level that suddenly become visible. And the programmer becomes more thoughtful, more resourceful.
But there are also things that you think may work like they did in the languages you were previously used to, while in reality being completely different. One such example would be strings in C, specifically how to compare two strings against each other, and how not to compare them.
As of the 3rd of February this year, my Google Play developer account will be permanently deleted, along with the apps I had published throughout the years. It was my decision to do it, but my hand was more or less forced by Google’s new Google Play developer verification policy update which makes it not really viable for me as an individual app developer to remain on Google Play anymore.
Sometimes you are in a situation where you need to modify an already built Windows executable, whether it be a program without available sources or where it is more convenient to use already available prebuilt binaries for your own purposes. In this case you usually also want to edit the metadata embedded within the executable as resources.
When wanting to distribute a LÖVE game for Windows, I wanted a convenient way of modifying the resource metadata of the LÖVE runtime executable. I ended up finding a very useful program for that purpose, named rcedit.exe.