diff options
Diffstat (limited to 'doc/languages-frameworks')
-rw-r--r-- | doc/languages-frameworks/javascript.section.md | 1 | ||||
-rw-r--r-- | doc/languages-frameworks/qt.section.md | 11 | ||||
-rw-r--r-- | doc/languages-frameworks/rust.section.md | 19 |
3 files changed, 22 insertions, 9 deletions
diff --git a/doc/languages-frameworks/javascript.section.md b/doc/languages-frameworks/javascript.section.md index 152974b465a54..5d2a6413e104a 100644 --- a/doc/languages-frameworks/javascript.section.md +++ b/doc/languages-frameworks/javascript.section.md @@ -354,6 +354,7 @@ mkYarnPackage rec { - The `echo 9` steps comes from this answer: <https://stackoverflow.com/a/49139496> - Exporting the headers in `npm_config_nodedir` comes from this issue: <https://github.com/nodejs/node-gyp/issues/1191#issuecomment-301243919> +- `offlineCache` (described [above](#javascript-yarn2nix-preparation)) must be specified to avoid [Import From Derivation](#ssec-import-from-derivation) (IFD) when used inside Nixpkgs. ## Outside Nixpkgs {#javascript-outside-nixpkgs} diff --git a/doc/languages-frameworks/qt.section.md b/doc/languages-frameworks/qt.section.md index 2300c5f60edeb..5d2850de3dca1 100644 --- a/doc/languages-frameworks/qt.section.md +++ b/doc/languages-frameworks/qt.section.md @@ -26,6 +26,17 @@ It is important to import Qt modules directly, that is: `qtbase`, `qtdeclarative Additionally all Qt packages must include `wrapQtAppsHook` in `nativeBuildInputs`, or you must explicitly set `dontWrapQtApps`. +`pkgs.callPackage` does not provide injections for `qtbase` or the like. +Instead you want to either use `pkgs.libsForQt5.callPackage`, or `pkgs.qt6Packages.callPackage`, depending on the Qt version you want to use. + +For example (from [here](https://github.com/NixOS/nixpkgs/blob/2f9286912cb215969ece465147badf6d07aa43fe/pkgs/top-level/all-packages.nix#L30106)) + +```nix + zeal-qt5 = libsForQt5.callPackage ../data/documentation/zeal { }; + zeal-qt6 = qt6Packages.callPackage ../data/documentation/zeal { }; + zeal = zeal-qt5; +``` + ## Locating runtime dependencies {#qt-runtime-dependencies} Qt applications must be wrapped to find runtime dependencies. diff --git a/doc/languages-frameworks/rust.section.md b/doc/languages-frameworks/rust.section.md index 8191722071e9e..72bade25a9fbb 100644 --- a/doc/languages-frameworks/rust.section.md +++ b/doc/languages-frameworks/rust.section.md @@ -44,20 +44,21 @@ rustPlatform.buildRustPackage rec { } ``` -`buildRustPackage` requires either the `cargoSha256` or the -`cargoHash` attribute which is computed over all crate sources of this -package. `cargoHash256` is used for traditional Nix SHA-256 hashes, -such as the one in the example above. `cargoHash` should instead be -used for [SRI](https://www.w3.org/TR/SRI/) hashes. For example: +`buildRustPackage` requires either the `cargoHash` or the `cargoSha256` +attribute which is computed over all crate sources of this package. +`cargoSha256` is used for traditional Nix SHA-256 hashes. `cargoHash` should +instead be used for [SRI](https://www.w3.org/TR/SRI/) hashes and should be +preferred. For example: + +```nix + cargoHash = "sha256-l1vL2ZdtDRxSGvP0X/l3nMw8+6WF67KPutJEzUROjg8="; +``` Exception: If the application has cargo `git` dependencies, the `cargoHash`/`cargoSha256` approach will not work, and you will need to copy the `Cargo.lock` file of the application -to nixpkgs and continue with the next section for specifying the options of the`cargoLock` +to nixpkgs and continue with the next section for specifying the options of the `cargoLock` section. -```nix - cargoHash = "sha256-l1vL2ZdtDRxSGvP0X/l3nMw8+6WF67KPutJEzUROjg8="; -``` Both types of hashes are permitted when contributing to nixpkgs. The Cargo hash is obtained by inserting a fake checksum into the |