| 7 Jan 2025 |
emily | my #1 request: do the depsInPath/deps thing, but make them attribute sets, and have overrides work by the name | 00:21:59 |
emily | e.g., deps = { inherit (pkgsOnHost) zlib ffmpeg; } but deps = { inherit (pkgsOnHost) zlib; ffmpeg = pkgsOnHost.ffmpeg_7; boost = pkgsOnHost.boost179; } | 00:22:35 |
emily | this (a) gets rid of with footguns and (b) gets rid of the "put version pins in all-packages.nix for sane overriding interface, or in the package for locality" dilemma | 00:22:59 |
emily | I'd also suggest not bundling the package sets under finalAttrs. just do something like e.g. mkDerivation2 ({ self, pkgsOnHost, ... }: …) | 00:23:42 |
emily | I really want the targetPlatform = null stuff from https://github.com/NixOS/nixpkgs/issues/227327 to make specifying explicit cross package sets saner. feel like # do we care that it's pkgsBuildHost? is hinting at that confusion :) | 00:24:47 |
emily | for 99.9% of packages, pkgsBuildHost = pkgsBuildBuild = pkgsBuildTarget | 00:24:59 |