| 2 Oct 2025 |
dish [Fox/It/She] | * but not if its unmaintainable like nodePackages is atm | 04:58:56 |
Winter | disagree, 99.9999% of things that were shoved into nodePackages were applications, which belong at the top level | 05:01:53 |
Sandro 🐧 | yep, it was a maintenance nightmare and regularly all kinds of things broke left, right, center and between | 14:19:46 |
Marie | or you regenerated the thing and in the meantime someone updated it and you had to regenerate it again | 14:21:05 |
hexa | Winter: frankly, nodePackages should have received a staggered response with milestones | 14:38:49 |
hexa |
- trace warnings 24.05
- broken or something equally annoying 25.11
- removed in 26.05
| 14:39:30 |
hexa | and I hope we can achieve these things with nixpkgs core | 14:39:40 |
hexa | nodePackages still exists because we're not good at long term consistent decison making | 14:40:17 |
hexa | but we can't even issue trace warnings, because the ci folks decided we may not | 14:41:45 |
hexa | modules may, packages may not | 14:42:25 |
Cobalt | How are package removals communicated then? Let's say I depend on libfoo and it gets removed (no maintainer, no dependents), wouldn't a warning be a good idea then? | 14:44:05 |
Winter | 🙃 | 14:44:10 |
Winter | a throw | 14:44:16 |
Cobalt | Throw as in "package not found"? | 14:44:32 |
hexa | throw as in "lol, its too late" | 14:47:43 |
hexa | because we don't ship this package anymore | 14:47:57 |
hexa | it was yanked | 14:48:01 |
hexa | foo = throw "foo was removed from nixpkgs, because it was utter garbage" | 14:48:13 |
hexa | * foo = throw "foo was removed from nixpkgs, because it was utter garbage";
| 14:48:16 |
dish [Fox/It/She] | still does, its a pain to fix merge conflicts when i have multiple PRs in flight against it 🥴 | 14:55:59 |
Sandro 🐧 | The best way out of that is to extract the packages from it | 14:57:11 |
Sandro 🐧 | * The best way out of that is to extract the packages from it you care about | 14:57:16 |
dish [Fox/It/She] | yeah that's what I'm doing | 14:57:18 |
dish [Fox/It/She] | but its a pain even when doing that for multiple packages in parallel | 14:57:29 |
Sandro 🐧 | Just removing the package should no require a regen and have little conflicts | 14:57:43 |
dish [Fox/It/She] | oh gods i never regen the set | 14:59:45 |
dish [Fox/It/She] | that's never gonna happen if i can help it | 15:00:04 |
dish [Fox/It/She] | anything useful can be extracted from it and anything useless gets dropped | 15:00:16 |
dish [Fox/It/She] | might make a mega-PR removing all packages from nodePackages that are currently unpackagable due to not having upstream lockfiles | 15:01:05 |
dish [Fox/It/She] | * might make a mega-PR removing all packages from nodePackages that are currently unpackagable in normal nixpkgs expressions due to not having upstream lockfiles | 15:01:51 |