doc: minimize mentions of nix-env -i without -A in nixpkgs manual
This commit is contained in:
@@ -15,12 +15,12 @@ Modes of use of `emscripten`:
|
||||
|
||||
If you want to work with `emcc`, `emconfigure` and `emmake` as you are used to from Ubuntu and similar distributions you can use these commands:
|
||||
|
||||
* `nix-env -i emscripten`
|
||||
* `nix-env -f "<nixpkgs>" -iA emscripten`
|
||||
* `nix-shell -p emscripten`
|
||||
|
||||
* **Declarative usage**:
|
||||
|
||||
This mode is far more power full since this makes use of `nix` for dependency management of emscripten libraries and targets by using the `mkDerivation` which is implemented by `pkgs.emscriptenStdenv` and `pkgs.buildEmscriptenPackage`. The source for the packages is in `pkgs/top-level/emscripten-packages.nix` and the abstraction behind it in `pkgs/development/em-modules/generic/default.nix`.
|
||||
This mode is far more power full since this makes use of `nix` for dependency management of emscripten libraries and targets by using the `mkDerivation` which is implemented by `pkgs.emscriptenStdenv` and `pkgs.buildEmscriptenPackage`. The source for the packages is in `pkgs/top-level/emscripten-packages.nix` and the abstraction behind it in `pkgs/development/em-modules/generic/default.nix`. From the root of the nixpkgs repository:
|
||||
* build and install all packages:
|
||||
* `nix-env -iA emscriptenPackages`
|
||||
|
||||
|
||||
@@ -5,10 +5,7 @@
|
||||
The easiest way to get a working idris version is to install the `idris` attribute:
|
||||
|
||||
```ShellSession
|
||||
$ # On NixOS
|
||||
$ nix-env -i nixos.idris
|
||||
$ # On non-NixOS
|
||||
$ nix-env -i nixpkgs.idris
|
||||
$ nix-env -f "<nixpkgs>" -iA idris
|
||||
```
|
||||
|
||||
This however only provides the `prelude` and `base` libraries. To install idris with additional libraries, you can use the `idrisPackages.with-packages` function, e.g. in an overlay in `~/.config/nixpkgs/overlays/my-idris.nix`:
|
||||
|
||||
@@ -24,18 +24,10 @@ You can test building an Octave package as follows:
|
||||
$ nix-build -A octavePackages.symbolic
|
||||
```
|
||||
|
||||
When building Octave packages with `nix-build`, the `buildOctavePackage` function adds `octave-octaveVersion` to; the start of the package's name attribute.
|
||||
|
||||
This can be required when installing the package using `nix-env`:
|
||||
To install it into your user profile, run this command from the root of the repository:
|
||||
|
||||
```ShellSession
|
||||
$ nix-env -i octave-6.2.0-symbolic
|
||||
```
|
||||
|
||||
Although, you can also install it using the attribute name:
|
||||
|
||||
```ShellSession
|
||||
$ nix-env -i -A octavePackages.symbolic
|
||||
$ nix-env -f. -iA octavePackages.symbolic
|
||||
```
|
||||
|
||||
You can build Octave with packages by using the `withPackages` passed-through function.
|
||||
|
||||
@@ -58,13 +58,7 @@ in `all-packages.nix`. You can test building a Perl package as follows:
|
||||
$ nix-build -A perlPackages.ClassC3
|
||||
```
|
||||
|
||||
`buildPerlPackage` adds `perl-` to the start of the name attribute, so the package above is actually called `perl-Class-C3-0.21`. So to install it, you can say:
|
||||
|
||||
```ShellSession
|
||||
$ nix-env -i perl-Class-C3
|
||||
```
|
||||
|
||||
(Of course you can also install using the attribute name: `nix-env -i -A perlPackages.ClassC3`.)
|
||||
To install it with `nix-env` instead: `nix-env -f. -iA perlPackages.ClassC3`.
|
||||
|
||||
So what does `buildPerlPackage` do? It does the following:
|
||||
|
||||
@@ -135,9 +129,11 @@ This will remove the `-I` flags from the shebang line, rewrite them in the `use
|
||||
Nix expressions for Perl packages can be generated (almost) automatically from CPAN. This is done by the program `nix-generate-from-cpan`, which can be installed as follows:
|
||||
|
||||
```ShellSession
|
||||
$ nix-env -i nix-generate-from-cpan
|
||||
$ nix-env -f "<nixpkgs>" -iA nix-generate-from-cpan
|
||||
```
|
||||
|
||||
Substitute `<nixpkgs>` by the path of a nixpkgs clone to use the latest version.
|
||||
|
||||
This program takes a Perl module name, looks it up on CPAN, fetches and unpacks the corresponding package, and prints a Nix expression on standard output. For example:
|
||||
|
||||
```ShellSession
|
||||
|
||||
Reference in New Issue
Block a user