Hijacking Sagemath’s REPL for Fun and Kittens

Sagemath is an amazing piece of mathematical software. It can work with impressively abstract concepts as well as with elementary ones, and offers a very wide variety of functionalities. Among the numerous capabilities of Sage is plotting. Sage can do it all: 2D, 3D, explicit, implicit, parametrized, interactive, animated, you name it. To use these functionalities, you need either: a notebook-like interface to display graphics objects in between cells; or a terminal running in a graphical server, so that sage will open a file viewer for generated graphs.
Read more →

Caddy on Gentoo — Third party modules

Caddy is a popular web server written in Go, that has started to take over the old standard apache and nginx webservers. Maybe the most prominent feature that clearly sets Caddy apart is its automatic handling of Let’s Encrypt certificates, which makes hosting any sort of SSL-protected service behind a domain name you own essentially a zero effort task. Caddy has nice features all around, and offers extensive customizability via external modules, which can freely extend its capabilities.
Read more →

Building Sioyek on MacOS

Sioyek is a PDF reader focused on catering to academical documents (books, papers, etc). While development is still active, the last prebuilt release dates back to more than two years ago, and there is no clear roadmap for the next version. Let’s dive in. Here, I’ll assume you are running macOS with a working homebrew installation. For the sake of simplicity, you’ll be better off following this in a POSIX-compliant shell (macOS’s default zsh will do fine).
Read more →

Using Jellyfin with S3 as media storage

Following in breadNET’s footsteps, I wanted to setup my Jellyfin instance to use media from an S3 bucket. If chosen and used correctly, an S3 bucket is significantly cheaper than an equivalent customer cloud storage service. For reliability purposes, I want my setup to survive reboots and network errors. As such, I won’t settle for rclone mount kept alive in a screen instance. I could write a systemd service instead, but even that isn’t necessary, since rclone can be used as a unix mount helper.
Read more →