Graham Christensen's Avatar

Graham Christensen

@grahamc.com.bsky.social

determinate.systems. Nix obsessed. he/him πŸ“» no5ig

1,620 Followers  |  399 Following  |  663 Posts  |  Joined: 22.04.2023  |  2.2631

Latest posts by grahamc.com on Bluesky

Video thumbnail

Build for Linux from your Mac. It just works, with Determinate #Nix. Zero config.

18.07.2025 20:42 β€” πŸ‘ 10    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

Hell yea

18.07.2025 21:10 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

@dangoodin.bsky.social re your DNS article ... for a good time:

dig +noall +short disk.vhd.gz.base64.grahamc.com TXT | cut -d'"' -f2 | base64 -d | gzip -d > minimal.vhd

18.07.2025 13:52 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Got a link?

09.07.2025 10:33 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

ah! I need some custom stickers made in bulk on short order

16.05.2025 19:51 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Where do people get good stickers from? In the distant past I've used StickerMule.

16.05.2025 19:48 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

Hey y’all, I could use help: if you’re using the determinate nix installer in GitHub actions and you’re seeing an increase in CI failures β€” let me know? We’re slowly rolling out a new version and suspect there is an edge case we haven’t covered.

13.05.2025 12:45 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Lazy trees v2 by edolstra Β· Pull Request #27 Β· DeterminateSystems/nix-src Motivation Less invasive variant of NixOS#6530. We now mount lazy accessors on top of /nix/store without materializing them, and only materialize them to the real store if needed (e.g. in the deriv...

So this merged: github.com/DeterminateS...

(not yet released, see the linked comment)

07.05.2025 15:52 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I love the sentiment of this style of message (which I’ve seen you do a bunch of times.) I’ve always wondered what it means though. Is there like, a procedure/coordination? I’d love to see behind the curtain!

02.05.2025 15:28 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

Oh my god that is beautiful.

02.05.2025 15:26 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Determinate documentation An end-to-end toolchain for using Nix courtesy of Determinate Systems

Upgrade to Determinate Nix 3.4, by ... I mean, that picture :) but for posterity:

determinate-nixd login
sudo determinate-nixd upgrade

Or install it for the first time from docs.determinate.systems (we recommend the package on macOS!)

29.04.2025 02:07 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Anyway, Determinate Nix 3.4.1 is now out. It warns if you're using channels, and implicit, or indirect (registry) flake references in flake.nix files. Determinate Nixd had some nits picked, like over-eager error logging. And of course, the `upgrade` command is more instructive.

29.04.2025 02:07 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

This represents our values in a lot of ways:

Be honest & transparent: We know this isn't great, here's the bug.

Don't make things worse: Here's how to move forward.

It should feel good to use: It has system specific instructions depending if you're on macOS, NixOS, and Linux.

29.04.2025 02:07 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

In the meantime, Determinate Nix 3.4.1 helps you upgrade more successfully. Where it used to crash out on a ridiculous error, now it _tells you_ that you have to log in.

29.04.2025 02:07 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Tracking: Upgrading Determinate Nix soft-requires credentials. Β· Issue #45 Β· DeterminateSystems/nix-src Because FlakeHub Cache does not offer any public caches, upgrading Determinate Nix requires being logged in to FlakeHub to download Determinate Nix. This is ... not ideal, to say the least. Further...

that means you have to log in to FlakeHub to download prebuilt upgrades. This is not some brain genius number-go-up-maxxing, but an annoying side effect of Product Design Decisions. I wrote up a tracking ticket for folks while we solve that: github.com/DeterminateS...

29.04.2025 02:07 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

An awkward UX issue of Determinate Nix is that we serve it from FlakeHub Cache, which has no unauthenticated access. We do that to make the auth backend very straightforward, avoiding complexity that could lead to leaking customer cache entries. But...

29.04.2025 02:07 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

πŸ’ͺ

26.04.2025 16:22 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

That is THE use case, yeah! I agree. That’s exactly why we’re doing this πŸ’ͺ

26.04.2025 16:21 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

It is a VERY bizarre feature, and I’m glad to be deprecating it πŸ˜…

26.04.2025 16:07 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

These two strategic changes are aimed at eliminating confusion and surprise, and are based on working with our users and hearing their feedback.

I can't wait for Determinate Nix 3.4 to ship on Monday!

26.04.2025 15:29 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

The two issues compound with `nixpkgs` (indirect flakeref) and `<nixpkgs>` (nix path/channel "diamond" reference.) They look similar, but mean entirely different things.

It gets worse when root's channels are configured differently from a user's. Even worse still on macOS.

26.04.2025 15:29 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Intent to ship: deprecating usage of flake registry entries in `flake.nix` inputs Β· Issue #37 Β· DeterminateSystems/nix-src This is an entry of our roadmap for Determinate Nix, which is guided by user and customer feedback. Over the next months, we will progressively deprecate usage of shorthand flake registry entries a...

Similarly, we frequently see confusion when locking a flake which uses implicit inputs and indirect flakerefs. Indirect flakerefs are great on the CLI. Determinate Nix will start warning when you use them as a flake.nix input url, where they're a negative: github.com/DeterminateS...

26.04.2025 15:29 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0
Preview
Intent to ship: deprecation of channels Β· Issue #34 Β· DeterminateSystems/nix-src This is an entry of our roadmap for Determinate Nix, which is guided by user and customer feedback. Over the next months, we will progressively deprecate channels and the nix-channel command. This ...

We've seen countless users trip themselves up on outdated channels and confusing them for the `nixpkgs` flake ref used by `nix run nixpkgs#`, etc.

Determinate Nix Installer hasn't shipped configured channels for years, and now we're warning against them: github.com/DeterminateS...

26.04.2025 15:29 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

The next release of Determinate Nix will start addressing two issues that commonly confuse our users:

1. `nix-channel` is deprecated, and using it will issue a warning.
2. Using an indirect flakeref or implicit registry input in a flake.nix will also raise a warning.

>>>

26.04.2025 15:29 β€” πŸ‘ 11    πŸ” 2    πŸ’¬ 2    πŸ“Œ 0
Preview
Changelog: JSON logging, a new experience around hash mismatches, and more JSON logging has the potential to unlock all kinds of ergonomic benefits, starting with hash mismatches but with plenty of room to expand beyond that

Determinate Nix 3.3.1 is now out and folks, it is not playing games. We've added JSON logging to Nix and a whole new UX around fixing hash mismatches during Nix buildsβ€”and we've fixed some long-standing paper cuts to boot.

determinate.systems/posts/change...

16.04.2025 20:23 β€” πŸ‘ 5    πŸ” 2    πŸ’¬ 0    πŸ“Œ 1
Post image

Determinate #Nix 3.2: we fixed the infamous `git add` error. Really.

02.04.2025 01:43 β€” πŸ‘ 10    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Post image 01.04.2025 01:58 β€” πŸ‘ 4    πŸ” 1    πŸ’¬ 0    πŸ“Œ 1

Hm? No, the daemon tracked the error and the GitHub action wrote the annotation using the error from the daemon.

29.03.2025 09:49 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Annotate hash mismatches when Determinate features are enabled by gustavderdrache Β· Pull Request #158 Β· DeterminateSystems/nix-installer-action Description When Determinate features are enabled, this PR adds GitHub Actions annotations to point users directly to hash mismatches in their source files. Example: - uses: DeterminateSystem...

You can try it now: github.com/DeterminateS...

29.03.2025 00:31 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Is this anything?

28.03.2025 23:49 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

@grahamc.com is following 20 prominent accounts