One flake for every machine I run
A NixOS monorepo: shared feature modules, per-machine hardware, encrypted secrets, services reachable only through a VPS.
NixOS flake-parts sops-nixCybersecurity & systems done right
M.Eng. student at Polytech Lille. I work on Linux systems, declarative infrastructure, and the security around both. Looking for an internship in systems administration or cybersecurity, 10 weeks to 4 months, available anywhere between 19 April and 31 August 2027.
Who I am
I spend my days thinking about how infrastructure fails. A misconfigured firewall, an unpatched dependency, a race condition nobody asked for. The small things that cost a lot. I enjoy the moment an attack stops making sense and you can finally see the system clearly.
Systems & administration
Local AI infrastructure
Networking & security
Embedded & wireless
Programming
The longer list, with the work behind each line, is on the résumé.
An internship in systems administration or cybersecurity, 10 weeks to 4 months, available anywhere between 19 April and 31 August 2027. Most of what is below is my own work on my own machines. The split keyboard was coursework, and the wifi work was a research internship; both are labelled where they appear.
The same content as a web page: résumé.
Selected work
A NixOS monorepo: shared feature modules, per-machine hardware, encrypted secrets, services reachable only through a VPS.
NixOS flake-parts sops-nixA headless NixOS server: photo, media, grocery and search services plus a local LLM, reachable only through a VPS.
NixOS Tailscale ImmichA monitor-mode probe that hops 31 channels and publishes what it hears to MQTT. My part: interface handling over netlink instead of subprocesses.
C netlink 802.11KiCad schematic and two-layer PCB, ATmega32U4 HID firmware, 16 RGB LEDs on two cascaded PWM drivers.
KiCad AVR LUFA courseworkFrom the blog
Pi, OpenCode and DeepSeek Harness, all pointed at the same OpenAI-compatible endpoint on my own hardware. A local AI workflow that fits in a flake.
Read it →Engine, quantization and context on three machines, with the decode and prefill rates each one gives.
Read it →One flake builds every machine I run. Eight parts, one piece each: the layout, the secrets, the services, the desktop, the editor.
See the series →Interface discovery over an nl80211 dump, then replacing five fork and exec calls with genl and rtnetlink messages.
Read it →Security groups, key pairs, instance roles, and what keeps billing after you stop the instance. Notes from the side of the stack I had never touched.
Read it →