Axka (talk | contribs)
Artturin (talk | contribs)
Tags: Reply Mobile edit Mobile web edit
 
Line 19: Line 19:
:Using packages directly from `pkgs` will not work properly with cross-compilation, instead the packages should be gotten from `pkgs.__splicedPackages` (packages will have `__spliced` attr) which allows stdenv to pick the correct offset dependency for the dependency attributes. `callPackage` gets packages from `__splicedPackages` [[User:Artturin|Artturin]] ([[User talk:Artturin|talk]]) 23:44, 2 April 2025 (UTC)
:Using packages directly from `pkgs` will not work properly with cross-compilation, instead the packages should be gotten from `pkgs.__splicedPackages` (packages will have `__spliced` attr) which allows stdenv to pick the correct offset dependency for the dependency attributes. `callPackage` gets packages from `__splicedPackages` [[User:Artturin|Artturin]] ([[User talk:Artturin|talk]]) 23:44, 2 April 2025 (UTC)
::I always thought it was weird that packages were supposed to have <code>__spliced</code> attrs, but I never found them. Could you add what you said on the wiki page? [[User:Axka|Axka]] ([[User talk:Axka|talk]]) 00:11, 3 April 2025 (UTC)
::I always thought it was weird that packages were supposed to have <code>__spliced</code> attrs, but I never found them. Could you add what you said on the wiki page? [[User:Axka|Axka]] ([[User talk:Axka|talk]]) 00:11, 3 April 2025 (UTC)
:::Cross internals don't need to be explained on the page, `callPackage` should always be used.
:::If you want to see `__spliced` then take a look at `pkgsCross.aarch64-multiplatform.__splicedPackages.bash.__spliced`. They're only added when cross-compiling. Also take a look at the `make-derivation.nix` file in nixpkgs to see how `__spliced` are used. `splice.nix` for how splicing works [[User:Artturin|Artturin]] ([[User talk:Artturin|talk]]) 00:24, 3 April 2025 (UTC)