Recently Updated Pages
Building desktop applications with Node.js
Option 1: Electron This is the most popular and well-supported option. Electron is a combination...
Dealing with a degraded btrfs array due to disk failure
Forcing a btrfs filesystem to be mounted even though some drives are missing (in a default multi-...
Blocking LLM scrapers on Alibaba Cloud from your nginx configuration
There are currently LLM scrapers running off many Alibaba Cloud IPs, that ignore robots.txt and p...
Fixing root filesystem errors with fsck on NixOS
If you run into an error like this: An error occurred in stage 1 of the boot process, which must...
Working with DBus
This article is a work in progress. It'll likely be expanded over time, but for now it's incomple...
State resolution attacks
These are some notes on various different kinds of attacks that might be attempted on state resol...
Treating hair lice in difficult hair
Theory Hair lice are a relatively innocent parasite that lives in human head hair. Although they...
Example project: Scraping XML sitemaps
The code in this guide scrapes an artificial sitemap for a non-existent site, that was created sp...
How do I use Promistreams?
Here's a simple example of a valid Promistream pipeline: "use strict"; const pipe = require("...
What to expect from the Promistreams beta phase
Promistreams are currently in their beta testing phase. What this means in practice: You can s...
Transitive dependencies and the commons
In this article, I want to explain why I personally only work with programming languages anymore ...
How to de-escalate situations
I originally drafted this guide for the (public, semi-open) NixOS governance talks in 2024. It wa...
Frequently Asked Questions
General Are there any downsides? Yes. Here are some of the most common issues that people run i...
Installing software globally
Probably the most common case, is wanting to install software system-wide. This is not technicall...
The high-level workflow of Nix
You can use Nix to build many different things for many different purposes. However, the basic wo...
Introduction
NixOS is very strict in its approach to system purity; there is essentially no global environment...
Running an AppImage
If you try to run an AppImage with the usual ./application-name invocation, you'll find that they...
Introduction to Morph
Morph is a simple, stateless deployment tool for NixOS. Essentially, it's a way to manage one or ...
What is a derivation?
You can think of a derivation as a set of build instructions, somewhat similar to how IKEA furnit...
Storing secrets and the Nix store
Nix stores every derivation that it builds in the Nix store. However, to make sure that everythin...