Articles by JNRowe
25

GNOME GitLab Git traffic caching (dragonsreach.it)

3

Huion Devices in the Desktop Stack (who-t.blogspot.com)

6

Power consumption of Game Boy flash cartridges (2021) (gekkio.fi)

1

Gnome OS Hackfest FOSDEM 2026 (gnome.org)

1

Best Practices for Ownership in GLib (sebastianwick.net)

1

Visualizing and managing Pipewire audio graphs from Emacs (sachachua.com)

1

Improving the Flatpak Graphics Drivers Situation (sebastianwick.net)

1

Pre-Tenuring in V8 (wingolog.org)

3

EmacsConf 2025 Notes (sachachua.com)

1

Linux Kernel Version Numbers (kroah.com)

2

Mutation Testing for Librsvg (viruta.org)

1

DEP-18: A proposal for Git-based collaboration in Debian (optimizedbyotto.com)

1

An Ode to Org Babel (donaldh.wtf)

5

Think you can't interpose static binaries with LD_PRELOAD? Think again (balintreczey.hu)

1

OSC 3008: Hierarchical Context Signalling (systemd.io)

1

How We Streamed OpenAlt on Vhsky.cz (eischmann.cz)

4

Ditch your (mut)ex, you deserve better (chrispenner.ca)

1

Enhanced License Compliance Tools for Flathub (flathub.org)

1

SVG in GTK (gnome.org)

1

Mistaken Dichotomies about Dgit (greenend.org.uk)

1

Packaging: Sound Removals (jak-linux.org)

2

Arrows to Arrows, Categories to Queries (reasonablypolymorphic.com)

15

Who is that actor on the screen? Emacs/LLM/Fun Redux (ingebrigtsen.no)

1

XDG Intents Updates (sebastianwick.net)

1

Dunk: Prettier Git Diffs in the Terminal (github.com/darrenburns)

18

PythonBPF – Writing eBPF Programs in Pure Python (xeon.me)

3

Haskell equations, thirty-eight years later (wadler.blogspot.com)

2

Some thoughts on security after ten years of qmail 1.0 (2007) [pdf] (cr.yp.to)

1

XMLn't (nwalsh.com)

2

Libdex 1.0 – deferred execution for gnome (gnome.org)

1

Scripting Is More Fun with Nushell (julianhofer.eu)

2

Arithmetic Functions (hedonisticlearning.com)

3

Best Practices for Submitting and Reviewing Merge Requests in Debian (optimizedbyotto.com)

1

Add debug views to your DB (chrispenner.ca)

38

Overengineering my homelab so I don't pay cloud providers (ergaster.org)

2

Secure Boot Signing with Debusine (freexian.com)

1

Use phone/tablets/other laptops as external monitor with your laptop (raju.dev)

12

Digitising CDs (a.k.a. using your phone as an image scanner) (hadess.net)

2

Object deserialization attacks using Ruby's Oj JSON parser (hezmatt.org)

2

Finding the Shape of My Thoughts (sachachua.com)

1

Acquire-By-Hash for APT packages repositories (arnaudr.io)

1

Profiling Crosswords' Rendering Pipeline (gnome.org)

3

Blender HDR and the reference white issue (sebastianwick.net)

1

CVE-2025-1244: From Emacs URL Handler to RCE (emacsninja.com)

1

Easy dynamic dispatch using GLIBC Hardware Capabilities (kvr.at)

1

Security Issues Regarding GSMA ESIMs / EUICCs and Javacard (gnumonks.org)

1

The New Troll Diet (diegoe.be)

1

GCC, glibc, stack unwinding and relocations – A war story (sergiodj.net)

6

“Don’t mock what you don't own” in 5 minutes (2022) (hynek.me)

2

Acrostic Generator for Gnome Crossword Editor (medium.com/txnmxy3)

3

An Update on the X11 Gnome Session Removal (gnome.org)

2

Vibe coding case study: ScubaDuck (ezyang.com)

29

Creating Debian packages from upstream Git (optimizedbyotto.com)

1

A SomewhatMaxSAT Solver (jak-linux.org)

2

Indexing Hackage: Glean vs. Hiedb (simonmar.github.io)

27

The Linux Kernel's PGP Web of Trust (kleine-koenig.org)

1

Building Debian in a Gitlab Pipeline (josefsson.org)

3

Offgrid Electric Car (joeyh.name)

2

Graphics improvements in WebKitGTK and WPEWebKit after the switch to Skia (igalia.com)

1

A Book Tracking Package for Emacs (ingebrigtsen.no)

17

Fun with -fsanitize=undefined and Picolibc (keithp.com)

1

What Difference Lists Are (hedonisticlearning.com)

1

Gnome STF 2024 Project Report (gnome.org)

2

First Week with Journelly (taonaw.com)

3

Binary Distribution Rebuilds (josefsson.org)

2

Unfolding trees breadth-first in Haskell (poisson.chat)

26

Emacs Solo: A Surprise System Crafters Live Demo (rahuljuliato.com)

1

Reproducible Software Releases (josefsson.org)

75

Writing your own C++ standard library from scratch (nibblestew.blogspot.com)

2

Getting precise timings out of RS-232 output (secretsauce.net)

1

Extrinsic termination proofs for well-founded recursion in Lean (joachim-breitner.de)

1

Sum Types and Subtypes and Unions (jle.im)

2

Flathub Safety: A Layered Approach from Source to User (flathub.org)

2

The secret maze of Debian images (fai-project.org)

1

Supercharge Your Installs with apt-eatmydata: Who Needs Crash Safety Anyway? (balintreczey.hu)

311

Surnames from nicknames nobody has any more (plover.com)

1

What's new in GTK, winter 2025 edition (gtk.org)

1

An introduction to Cabal Hooks for package authors (well-typed.com)

1

Writing a formatter has never been so easy: a Topiary tutorial (tweag.io)

1

Making Life Harder with GADTs (parsonsmatt.org)

1

Linux 6.13, I WANT A GUITAR PEDAL (andrealmeid.com)

3

Blocking comment spammers on an Ikiwiki blog (cloud.geek.nz)

1

Flatpak 1.16 Is Out (feaneron.com)

1

Measuring Code Size and Performance (nibblestew.blogspot.com)

1

Investigating the popularity of Python build back ends over time (II) (venthur.de)

1

A Brimful of ASHA (arunraghavan.net)

1

Solving Advent of Code "Seating System" with Comonads and Stencils (abhinavsarkar.net)

94

EmacsConf 2024 Notes (sachachua.com)

1

Extending Emacs with Fennel (andreyor.st)

3

Project Aardvark (gnome.org)

1

What's New in Emacs: Last Decade Edition (lambdaland.org)

3

Hello Nostr (snoyman.com)

1

Murder Mystery: GCC Builds Failing After Sbuild Refactoring (linux.it)

1

Emacs 30 Built-In Completion UI and Styles (thanosapollo.org)

3

When should we require that firmware be free? (mjg59.dreamwidth.org)

1

Android privacy improvements break key attestation (mjg59.dreamwidth.org)

2

Org Mode has a new maintainer (bzg.fr)

6

Calypso: CalDAV/CardDAV server using Git to retain database history (keithp.com)

1

Outreachy Internship Series: Files Usability Test Report (gnome.org)

2

Building Debian Packages the Right Way (linux.it)