| 5 Feb 2024 |
Philip Taron (UTC-8) | Do you have the access rights to create a nixos repository? Or is just these folks? | 20:37:15 |
infinisil | Philip Taron (UTC-8): Not sure who has that, but I definitely don't :) | 20:49:43 |
| 6 Feb 2024 |
infinisil | @room: The next meeting will take place in ~60 minutes, please add any agenda items to the meeting notes: meeting link - meeting notes
I think this might be the last meeting of the "Nixpkgs architecture team", as I plan on tearing down the team itself, replacing it with more of an "interest group". Feel free to join to talk about that
| 12:59:15 |
| 8 Feb 2024 |
infinisil | For pkgs/by-name, here's a code refactoring that discovered a bug: https://github.com/NixOS/nixpkgs/pull/287083
Feel free to review, but I intend to self-merge this week
| 00:16:26 |
Philip Taron (UTC-8) | In reply to @infinisil:matrix.org
For pkgs/by-name, here's a code refactoring that discovered a bug: https://github.com/NixOS/nixpkgs/pull/287083
Feel free to review, but I intend to self-merge this week
✅, good to merge | 01:25:24 |
infinisil | Philip Taron (UTC-8): Nice, thanks for the quick review | 01:31:53 |
infinisil | * Philip Taron (UTC-8): Nice, thanks for the quick review! | 01:31:55 |
Philip Taron (UTC-8) | In reply to @infinisil:matrix.org Philip Taron (UTC-8): Nice, thanks for the quick review! And ✅ again. | 01:40:13 |
infinisil | ❤️ | 01:40:25 |
infinisil | Philip Taron (UTC-8): Btw the ratchet stuff allows some really nice follow ups for the automated migration | 01:40:58 |
infinisil | Currently this ToNixpkgsProblem trait only has one method to compare two Nixpkgs versions against each other (or rather, give an appropriate error for that): https://github.com/NixOS/nixpkgs/blob/master/pkgs/test/nixpkgs-check-by-name/src/ratchet.rs#L77-L88 | 01:41:58 |
infinisil | To implement migration, we can just add another method to the trait, which gets the value of a single Loose ratchet, which are exactly the ones that can be migrated! | 01:43:09 |
infinisil | So effectively all the checking code doesn't need to change, and we can use it both to check that new code doesn't use outdated patterns, and to figure out where outdated patterns are that can be migrated! | 01:44:10 |
Philip Taron (UTC-8) | That's really nifty. | 01:45:54 |
infinisil | A bit hard to explain in text though, I'll make a PR to implement this soon :D | 01:45:59 |
Philip Taron (UTC-8) | Are you imagining an "autofix" mode? | 01:46:49 |
infinisil | Philip Taron (UTC-8): Yup! | 01:47:23 |
Philip Taron (UTC-8) | I love to see it. Every lint and vet tool needs one. 😀 | 01:47:41 |
infinisil | On one hand, it can try to automatically migrate as much as possible for https://github.com/NixOS/nixpkgs/pull/211832 | 01:47:59 |
Philip Taron (UTC-8) | (And yeah, ratchet-style checks are always set up to make autofix easier than the pass/fail linters.) | 01:48:14 |
infinisil | Which then also means people can reproduce that PR and don't have to review it entirely | 01:48:20 |
infinisil | But also, some things can't be migrated automatically, but the tool can give you a hint what needs to be done manually | 01:48:46 |
infinisil | So you can use this to generate a TODO list to complete the migration! | 01:49:17 |
| 13 Feb 2024 |
9999years | it would be nice to have a "generic" variant of lib.makeOverridable that uses a different attribute name, to replace functions like overrideCabal and overridePythonAttrs, and to make it easier to write equivalent functions for other derivation-creation-functions.
here's my sketch of an implementation, i think it's 80% or 90% of the way there but it doesn't quite work. the code makes my head hurt. i'm done for the day but others might be interested in trying to get this working https://github.com/NixOS/nixpkgs/pull/288431
| 01:28:24 |
9999years | in the meantime, i've got a copy/paste of lib.makeOverridable into the rust packaging functions to make it possible to override cargoHash and similar attributes (currently it's basically impossible to upgrade a rust package's version in an overrideAttrs function) https://github.com/NixOS/nixpkgs/pull/288430 | 01:29:31 |
9999years | i was also somewhat disappointed to realize that the code for overrideCabal and overridePythonAttrs are very different, despite accomplishing basically the same thing. this lack of consistency makes it very challenging to move from one part of the nixpkgs codebase to another | 01:30:19 |
tomberek | Standardize the package sets! https://github.com/nixpkgs-architecture/issues/issues/21 | 02:24:01 |
toonn | Yes, please. Yesterday, rather than today. | 11:03:54 |
toonn | This is the only reason I've been looking at dream2nix. | 11:04:10 |
9999years | what's blocking this PR? it seems like most of the comments are pretty minor
https://github.com/NixOS/nixpkgs/pull/234651 | 17:28:53 |