RSSAmplifier

Blog

SGued

sgued.frRSS feed ↗13 posts

Latest posts

Draw A Box 250 Boxes challenge

Pictures of the exercises of the 250 boxes challeng from Draw a box

Lessons learned from React's RCE

In the last few weeks, 3 vulnerabilities where found in the React web application framework. The first one, a server-side remote code execution ( CVE-2025-55182 ) is the worst a vulnerability can get for a web framework. The two other ones are a denial of service ( CVE-2025-67779 ), and a source code exposure ( CVE-2025-55183 ), much less dangerous, yet still impactful. There are already a lot of…

Play local multiplayer games with remote friends

Many games have some form of support for local or LAN multiplayer. This can be quite practical when all the players are in the same place, but is not useful when playing with remote people. I developed a simple Linux tool that in the right conditions, enables you to make your locally-hosted game accessible over the public internet, at no additional cost.

Why people are mad at Framework

This 9th of october, Hyprland's twitter account announced that they had received a financial contribution from Framework , a company building modular, repairable computers. Given Hyprland's messy history of being a toxic community people started publicly questioning Framework's decision. People also noticed that Framework's twitter account recently promoted Omarchy, a "distro" by DHH, a very…

Draw A Box lesson 1

Pictures of the exercises of the first lesson from Draw a box

Signal stories shows what I want social media to be

I initially didn't understand the point of stories in apps like WhatsApp or Snapchat. I never really used any app with such a feature. Three years ago, my messaging application of choice Signal added a stories feature and their implementation makes me think that an instant messaging app like Signal could actually fill the exact use-cases that social media like Facebook are trying (and failing) to…

You should still use CSRF tokens

You may think that thanks to cookies being set to SameSite=Lax by default, CSRF (Cross-Site Request Forgery) is mostly a solved problem, but It's not and CSRF tokens are still good practice to implement.

Is this certificate DER or PEM encoded ? It turns out, both at the same time

X509 certificate can be encoded either as DER or PEM . DER encoding is an efficient binary format, while PEM encoding is a wrapper around the Base 64 DER encoding of the certificate. Usually, when dealing with a specific certificate, you know beforehand whether it's encoded as DER or PEM . For example, in the opennssl CLI, you can give it the -inform parameter, which accepts either DER or PEM .…

Using bevy for the 2024 GMTK game jam

I used bevy to build a small game for the 2024 GMTK game jam . Having no prior experience with game development, this was a fun ride!

How to work with !Sized types in Rust

Sizedness in Rust is a peculiar topic. I recently found myself having to work with unsized types when trying to reduce the use of const generics in the heapless crate. Here I will document the approaches I considered and the pros and cons of each of them.

Disabling IPv6 when an IPv4 only wireguard config is up

On linux, when using a wireguard VPN that only supports IPv4, the wg-quick scripts and NetworkManager will not do anything regarding IPv6, which will simply go through the default gateway and "leak". It's not easy to reliably prevent this. Here is how to do it with NetworManager.

How to disable a CSS stylesheet with JavaScript

Contrary to what every website out there is saying, the proper way to disable a remote stylesheet imported with <link rel="stylesheet" type="text/css" href="/url"> is not to use stylesheet.disabled = true; , it's rather to use stylesheet.media = "not all"; . Using disabled on <link> element is not standard and should be avoided. It doesn't seem to even work properly in chrome.

Resolving merge conflicts when introducing formatting to an existing codebase

If a project doesn't use any formatting tool, introducing them can be a headache, and is almost guaranteed to cause merge conflicts with any ongoing PR. Here's how to fix them.