Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

94 total results found

[archived] macOS Sequoia breaks existing Lix installations

Lix users Common issues

macOS 15 "Sequoia" changed the user ID ranges used by the system, such that some of the IDs for existing Nix build users got used by some new system features instead. The symptom of this problem is that Nix builds will fail out with the following error, since ...

Creating Matrix Rooms/Spaces

Lix infrastructure guide

actual explanation will follow, tldr; here: create room with the matrix API or a client that allows you to set powerlevel 101: curl -H "Authorization: Bearer SNIP" -X POST http://localhost:8008/_matrix/client/v3/createRoom -d '{"power_level_content_override":...

Merging Gerrit identities

Lix infrastructure guide

Basically, following https://ovirt-infra-docs.readthedocs.io/en/latest/General/Gerrit_account_merge/index.html. If for some reason, you don't have access to refs/meta/external-ids, you can still do it on the server directly as long as you ensure that you resto...

Flake stabilisation proposal

Development Design planning

Preface STATUS: The core team has discussed this proposal, and decided that Lix will be moving in a different direction instead, see Flakes feature freeze. However, if someone wanted to stabilize Flakes in their current form in a minimally invasive way, then t...

Observability and Protocol Design

Development Design planning

jade: I think that we should start protocol design by thinking about who needs what information, which is most cleanly hit by looking at how observability architecture looks. Let's get cracking on what observability we need/want in Lix. Context Old profiling p...

Replacement CLI design & Profiles

Development Design planning

Draft pads: https://pad.lix.systems/lix-cli-design https://pad.lix.systems/lix-profiles

Working Groups

Contributing Working in the Lix codebase

What are they? Lix doesn't have a very formal development structure - ice cream isn't a stranger to being fluid, after all! But all of the contributors have a different shape - so they are naturally drawn to different parts of the project. Documenting that is...

2025-03-15: git.lix.systems replication broke

Lix infrastructure guide Postmortems

On 2025-03-15, the git.lix.systems host (which runs gerrit.lix.systems and identity.lix.systems also) got migrated to the forkos infra repo. Fixes: https://git.lix.systems/the-distro/infra/pulls/193 This broke Gerrit replication due to multiple reasons: Chan...

Nix bootstrapping

Development Design planning

Pad: https://pad.lix.systems/VjA-WMSQS42dh-ghL98Uow

New Page

Development Design planning

Improving IFD

Development Design planning

Discussion pad: https://pad.lix.systems/Xd5Xyt5cToyYxIv-lNdehA Further reading: https://jade.fyi/blog/the-postmodern-build-system/ pennae's idea: magic_ifd_primop = \f i -> import f >>= i # nix: importAndThen (res: <stuff>) some-ifd.outPath Observation: a...

Getting Started with Gerrit

Contributing Intro to Gerrit

Thanks for showing interest in contributing to Lix! Gerrit can seem daunting at first, but it is our hope that you'll learn to navigate it and use it confidently after finishing this tutorial. Perhaps the first question you have is: "Why Gerrit"? Well, glad yo...

Review Flow

Contributing Intro to Gerrit

The review flow is quite similar to how Github does it, but there are a few differences here too. The UI also hides a few pretty powerful features! Reviewer Flow You can scroll down to the changes and start a review: You can click on a line number to add a co...

Troubleshooting

Contributing Intro to Gerrit

"Remote Unpack Failed" on push Run a git fetch and try again. Re-run a CI Do an empty commit amend: git commit -a. This will change the commit ID (because the date has changed!), so it will now be a new CL revision: you can git push it and pray for good CI run...

Gerrit with Jujutsu

Contributing Intro to Gerrit

Jujutsu has a very similar model to Gerrit and natively supports sending Gerrit changes! You’ll need to configure a Gerrit remote. If it’s not origin, you can instruct Jujutsu to use it by specifying it in .jj/repo/config.toml: [gerrit] default-remote = "gerri...

Why Gerrit?

Contributing Intro to Gerrit

Gerrit produces better code: Gerrit enforces good commit messages. "PR message" and "commit message" are the same thing in Gerrit; there's no duplication, and information about a change can be seen in regular commit history. Gerrit enforces good commit hygien...

Tips and Tricks

Contributing Intro to Gerrit

SSH Tuning Add these lines to your ~/.ssh/config: Host gerrit.lix.systems User YOUR_GERRIT_USERNAME Port 2022 # Keep sessions open for a bit in the background to make connections faster: ControlMaster auto ControlPath /tmp/ssh-%r@%h:%p ...

Advanced Features

Contributing Intro to Gerrit

If you feel confident in your Gerrit-fu, this page is for you. Perhaps you've already noticed how Gerrit brings a few good improvements to the workflow just based on the commit-centric design. Now we are getting to the really cool stuff: Gerrit-specific featur...