From a0f94525b0c387c9e311031873b3d4d33ab5d204 Mon Sep 17 00:00:00 2001 From: Valentin Gagarin Date: Mon, 18 Dec 2023 16:18:32 +0100 Subject: [PATCH] julia docs: one line per sentence this implements the documentation team's style guide new material --- doc/languages-frameworks/julia.section.md | 29 +++++++++++++++++------ 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/doc/languages-frameworks/julia.section.md b/doc/languages-frameworks/julia.section.md index 7a1b0ce366f9..235861ac528f 100644 --- a/doc/languages-frameworks/julia.section.md +++ b/doc/languages-frameworks/julia.section.md @@ -2,21 +2,28 @@ ## Introduction {#julia-introduction} -Nixpkgs includes Julia as the `julia` derivation. You can get specific versions by looking at the other `julia*` top-level derivations available. For example, `julia_19` corresponds to Julia 1.9. We also provide the current stable version as `julia-stable`, and an LTS version as `julia-lts`. +Nixpkgs includes Julia as the `julia` derivation. +You can get specific versions by looking at the other `julia*` top-level derivations available. +For example, `julia_19` corresponds to Julia 1.9. +We also provide the current stable version as `julia-stable`, and an LTS version as `julia-lts`. -Occasionally, a Julia version has been too difficult to build from source in Nixpkgs and has been fetched prebuilt instead. These Julia versions are differentiated with the `*-bin` suffix; for example, `julia-stable-bin`. +Occasionally, a Julia version has been too difficult to build from source in Nixpkgs and has been fetched prebuilt instead. +These Julia versions are differentiated with the `*-bin` suffix; for example, `julia-stable-bin`. ## julia.withPackages {#julia-withpackage} The basic Julia derivations only provide the built-in packages that come with the distribution. -You can build Julia environments with additional packages using the `julia.withPackages` command. This function accepts a list of strings representing Julia package names. For example, you can build a Julia environment with the `Plots` package as follows. +You can build Julia environments with additional packages using the `julia.withPackages` command. +This function accepts a list of strings representing Julia package names. +For example, you can build a Julia environment with the `Plots` package as follows. ```nix julia.withPackages ["Plots"] ``` -Arguments can be passed using `.override`. For example: +Arguments can be passed using `.override`. +For example: ```nix (julia.withPackages.override { @@ -34,7 +41,11 @@ nix-shell -p 'julia.withPackages ["Plots"]' --run julia * `precompile`: Whether to run `Pkg.precompile()` on the generated environment. - This will make package imports faster, but may fail in some cases. For example, there is an upstream issue with `Gtk.jl` that prevents precompilation from working in the Nix build sandbox, because the precompiled code tries to access a display. Packages like this will work fine if you build with `precompile=false`, and then precompile as needed once your environment starts. Defaults to `true`. + This will make package imports faster, but may fail in some cases. + For example, there is an upstream issue with `Gtk.jl` that prevents precompilation from working in the Nix build sandbox, because the precompiled code tries to access a display. + Packages like this will work fine if you build with `precompile=false`, and then precompile as needed once your environment starts. + + Defaults: `true` * `extraLibs`: Extra library dependencies that will be placed on the `LD_LIBRARY_PATH` for Julia. @@ -43,7 +54,10 @@ nix-shell -p 'julia.withPackages ["Plots"]' --run julia * `makeWrapperArgs`: Extra arguments to pass to the `makeWrapper` call which we use to wrap the Julia binary. * `setDefaultDepot`: Whether to automatically prepend `$HOME/.julia` to the `JULIA_DEPOT_PATH`. - This is useful because Julia expects a writable depot path as the first entry, which the one we build in Nixpkgs is not. If there's no writable depot, then Julia will show a warning and be unable to save command history logs etc. Defaults to `true`. + This is useful because Julia expects a writable depot path as the first entry, which the one we build in Nixpkgs is not. + If there's no writable depot, then Julia will show a warning and be unable to save command history logs etc. + + Default: `true` * `packageOverrides`: Allows you to override packages by name by passing an alternative source. @@ -51,4 +65,5 @@ nix-shell -p 'julia.withPackages ["Plots"]' --run julia * `augmentedRegistry`: Allows you to change the registry from which Julia packages are drawn. - This normally points at a special augmented version of the Julia [General packages registry](https://github.com/JuliaRegistries/General). If you want to use a bleeding-edge version to pick up the latest package updates, you can plug in a later revision than the one in Nixpkgs. + This normally points at a special augmented version of the Julia [General packages registry](https://github.com/JuliaRegistries/General). + If you want to use a bleeding-edge version to pick up the latest package updates, you can plug in a later revision than the one in Nixpkgs.