Skip to main content
ebeem

ebeem

FOSS Enthusiast & Indie Game Developer


I’m a developer driven by the desire to make software more elegant and extensible. I believe that the tools we use should be as flexible as the minds using them, which is why I’m often found diving into the tools I use daily, fine-tuning them to improve my productivity workflows.

This blog serves as a digital repository for my journey. Here, you’ll find:

  • Game Development: My published games and the process behind building them
  • Systems & Tools: Thoughts on Arch Linux, Guix, Emacs, Sway and River
  • Side Projects: Weekend hacks that explore “what if” ideas

Software
#

Guile Swayer

·135 words·1 min
Guile Swayer I am an Emacs user and previously used StumpWM, an X11 window manager written in Common Lisp. I believe window managers should be scriptable because the level of workflow customization required by users often exceeds what can be achieved with simple configuration parameters (see my workflow below for a clearer understanding of why this is the case). Unfortunately, Sway/i3 lacks a straightforward programmable interface for customization. This project provides complete control over Sway/i3 using Guile!

Tutorials & Reviews
#

Linux

·110 words·1 min
GNU/Linux is often viewed as a single operating system, but it is actually a modular collection of interchangeable layers and components working in harmony. To truly grasp how a GNU/Linux system operates, it is best to explore it chronologically from the exact moment you press the power button to the second you open your web browser. This series breaks down the core software components of your computer, detailing the available options, customizations, and tweaks at your disposal. By the end of these guides, you will have a solid understanding of the GNU/Linux desktop stack, the complete boot workflow, and how to tailor the operating system entirely to your liking.

Emacs

·103 words·1 min
Traditional text editors (like Vim, Nano, or VS Code) are designed specifically to edit text files. They typically operate by providing a fixed set of features and extensions that allow you to write code or modify configuration files efficiently. Emacs is an advanced, fully extensible text editor and computing environment. While traditional systems tightly constrain you to their predefined interfaces and workflows, Emacs embraces a completely mutable, programmable philosophy.

Guix

·104 words·1 min
Traditional package managers (like APT or Pacman) manage how software is installed, updated, and removed on Linux operating systems. They typically operate by mutating the global system state, replacing older files with newer ones in standard system directories. Guix is an advanced, purely functional package manager and complete Linux distribution. Traditional systems tightly tie software installations to a single global environment which often leads to dependency conflicts and broken updates. Guix embraces an immutable, declarative philosophy.

River

·117 words·1 min
Wayland is a modern, secure display server protocol for Linux and Unix-like operating systems. It is a replacement for the older X11 system and it manages how applications render graphics and windows to your screen. River is probably the only Wayland non-monolithic compositor. While popular compositors like Sway or Hyprland tightly integrate the window manager and the compositor into a single, inseparable executable, River embraces a modular philosophy.

Wayland

·36 words·1 min
Wayland is a modern, secure display server protocol for Linux and Unix-like operating systems. It is a replacement for the older X11 system and it manages how applications render graphics and windows to your screen. RECENT

Games
#

Root Genesis

·181 words·1 min
An idle/incremental game with a hacker twist. Type commands, deploy exploits like worms and ransomware, and take on contracts to pwn every node on the network. Upgrade your toolkit, expand your reach and expose the conspiracies the elite cult never wanted you to find.

Spooky Night

·290 words·2 mins
An online social deduction game of teamwork and betrayal! Uncover the werewolves among you before they wipe out the village. During the day, chat, deceive, and vote to eliminate a suspect. At night, use your role’s abilities to gather insights or strike. Can you survive?

Recent
#

Emacs Vanilla vs Flavors (Spacemacs and Doom Emacs)

·867 words·5 mins
Where to Begin? Emacs is not just a text editor, it is a Lisp machine that happens to edit text. When stepping into the Emacs ecosystem, new users are immediately faced with a choice: build from scratch (Vanilla Emacs) or use a pre-configured starter kit like Doom Emacs or Spacemacs. Each approach has distinct pros and cons, and understanding them can save you months of configuration frustration.

Bootloader

·377 words·2 mins
Introduction Once the firmware finishes initializing the hardware, it hands the baton to the bootloader. The bootloader is a small program whose sole purpose is to load the Linux kernel and the initial RAM disk (initramfs) into memory and execute them.

Firmware (BIOS and UEFI)

·323 words·2 mins
Introduction The firmware is the absolute bedrock of your system. Before Linux or any operating system can even think about running, the motherboard's firmware must wake up the hardware. It performs the Power-On Self Test (POST), initializes the CPU and RAM, and locates the drive containing your operating system.

Introduction to Guix

·2292 words·11 mins
TODO Installation Channels Channels in Guix are a way to customize and extend the Guix package collection. They allow users to pull packages and updates from multiple repositories. They are declared as a list of channel records in the file channels.scm. These channels are git repositories that store definitions that instruct Guix how to build and install packages. Since these are git repositories, then similar to any git cloned project, it needs to be pulled to kept up to date. Guix can help you update/pull all your configured channels with the command guix pull.

Root Genesis Now Available on Itch.io

·156 words·1 min
If you’re a fan of gritty cyberpunk aesthetics, hacking simulators, or incremental idle games that actually keep you engaged, I’ve got a brand-new release you need to check out today. What’s it all about? #