Commit Graph

461 Commits

Author SHA1 Message Date
Jörg Thalheim
f0396574ab
buildRustPackage: add documentation on how to create cargo.lock patches 2020-06-05 10:41:46 +01:00
Vladimír Čunát
677e3960b5
Merge #82342: rustPlatform: increase build-speed of checkPhase
...for rust-packages (into staging)
2020-06-05 09:12:30 +02:00
Frederik Rietdijk
b7ff746540 python3: now points to python38
Note this also means python3Minimal is now also Python 3.8.

This reverts commit eb1369670b and adds more.
2020-06-04 18:08:29 +02:00
Alex Rice
e215c3bcac
agda: install literate files 2020-06-01 13:59:20 +01:00
Maximilian Bosch
59e8e7a129
rust: improve docs
Co-authored-by: cole-h <cole.e.helbling@outlook.com>
Co-authored-by: asymmetric <lorenzo@mailbox.org>
2020-05-31 21:47:32 +02:00
Christian Albrecht
2312f5fbc4
Change to nodePackages and nodePackages_latest
currently LTS 12.x and Current 14.x
2020-05-29 18:25:11 +02:00
Jörg Thalheim
6602f87384
nodePackages: switch to 12
Signed-off-by: Christian Albrecht <christian.albrecht@mayflower.de>
2020-05-27 21:45:41 +02:00
Maximilian Bosch
6574ba1946
rust*: add docs for testing packages
See also https://discourse.nixos.org/t/rust-build-speed-improvements/7225
2020-05-24 18:37:34 +02:00
Uma Zalakain
196cc47005 agda: fix typo in library management documentation
Agda expects a "depend" (not "depends") field in the library description.
2020-05-24 14:20:05 +02:00
Jon
15b3d9d277
python3Packages.venvShellHook: add postVenvCreation (#87850)
* python3Packages.venvShellHook: add postVenvCreation

* python: docs: add postVenvCreation explaination
2020-05-16 09:34:11 +02:00
Benjamin Hipple
c88290789c doc: Rewrite python onboarding tutorials in manual
Based on some feedback in #87094 and discussion with @fridh, this re-organizes
the onboarding tutorial in the Nixpkgs manual's python section, so that we start
with the simplest, most ad-hoc examples and work our way up. This progresses
from:

1. How to create an temporary python env at the cmdline, then
2. How to create a specific python env for a single script, then
3. How to create a specific python env for a project in a shell.nix, then
4. How to install a specific python env globally on the system or in a user profile.

Additionally, I've tried to standardize on some of the "best practice" ways of
doing things:

1. Instead of saying that this command style is "supported but strongly not
   discouraged", I've just deleted it to avoid confusion.

   Bad:  nix-shell -p python38Packages.numpy python38Packages.toolz
   Good: nix-shell -p 'python38.withPackages(ps: with ps; [ numpy toolz ])'

2. In the portion where we show how to add stuff to the user's
   `XDG_CONFIG_HOME`, use overlays instead of `config.nix`. The former can do
   everything the latter can do, but is also much more generic and powerful,
   because it can compose with other files, compose with other envs, compose
   with overlays that do things like swap whether tensorflow and pytorch are
   built openblas/mkl/cuda stacks, and so on. The user is eventually going to
   see the overlay, so to avoid confusion let's standardize on it.
2020-05-15 22:43:16 +02:00
Dmitry Kalinkin
9943fd1a1d
Merge pull request #76653 from alexarice/agda-rework
Agda rework
2020-05-14 18:02:50 -04:00
Alex Rice
d30e2468e0
agda: rework builder 2020-05-14 20:54:11 +01:00
Colin L Rice
c5f18c44b1
go-modules: Doc updates 2020-05-14 07:21:52 +01:00
Benjamin Hipple
c3e2f98779 doc: use idiomatic overlay names in the python manual example
An overlay by any other name would function just as well, but we generally use
`self: super:` for the regular overlays, and `python-self: python-super`.
2020-05-09 18:02:20 -04:00
Benjamin Hipple
c0f434fcc8 doc: update python manual to reference python 3.8 instead of 3.5
Improvement suggested in #87094
2020-05-09 12:58:00 -04:00
Gabor Greif
dec283b463 ghcHEAD: 20200403 -> 20200505 2020-05-08 21:11:46 +02:00
José Romildo Malaquias
f528989650
Merge pull request #86198 from romildo/doc.icon-themes
gnome: document packaging icon themes
2020-05-07 10:50:50 -03:00
Frederik Rietdijk
9875bbae75 Merge master into staging-next 2020-05-05 19:51:09 +02:00
Pavol Rusnak
7b0167204d treewide: use https for nixos.org and hydra.nixos.org
tarballs.nixos.org is omitted from the change because urls from there
are always hashed and checked
2020-05-03 22:14:21 -07:00
Elis Hirwing
e31a68ddba
doc/php: Add example for installing composer with extra extensions 2020-05-01 22:30:09 +02:00
Elis Hirwing
d2cb49c248
doc/php: Fix headline conflicts 2020-05-01 22:30:03 +02:00
Frederik Rietdijk
484ee79050 Merge staging-next into staging 2020-05-01 08:57:10 +02:00
Elis Hirwing
c549e9f9d6
doc: Add PHP section 2020-04-30 13:48:05 +02:00
Elis Hirwing
27b9b7b3af
Merge pull request #85026 from talyz/php_buildenv_override
php.buildEnv: Make the exported php package overridable, improve handling of currently enabled extensions, etc
2020-04-29 19:57:37 +02:00
talyz
5cad1b4aff
php: Get rid of the phpXXbase attributes, update docs
Since the introduction of php.unwrapped there's no real need for the
phpXXbase attributes, so let's remove them to lessen potential
confusion and clutter. Also update the docs to make it clear how to
get hold of an unwrapped PHP if needed.
2020-04-29 13:45:48 +02:00
talyz
ef990961bc
php.buildEnv: Provide the unwrapped php package in php.unwrapped
This is useful if you need to access the dev output of the unwrapped
derivation.
2020-04-29 13:44:20 +02:00
José Romildo Malaquias
6449a4e84b
Apply suggestions from code review
Co-Authored-By: Jan Tojnar <jtojnar@gmail.com>
2020-04-28 14:59:06 -03:00
José Romildo Malaquias
9d88d8e23d gnome: document packaging icon themes 2020-04-28 08:56:15 -03:00
zowoq
3f17518490 buildGoPackage: use $out instead of $bin 2020-04-28 20:30:23 +10:00
talyz
2ba7926959
php.buildEnv: Provide a list of currently enabled extensions
Rework withExtensions / buildEnv to handle currently enabled
extensions better and make them compatible with override. They now
accept a function with the named arguments enabled and all, where
enabled is a list of currently enabled extensions and all is the set
of all extensions. This gives us several nice properties:

 - You always get the right version of the list of currently enabled
   extensions

 - Invocations chain

 - It works well with overridden PHP packages - you always get the
   correct versions of extensions

As a contrived example of what's possible, you can add ImageMagick,
then override the version and disable fpm, then disable cgi, and
lastly remove the zip extension like this:

{ pkgs ? (import <nixpkgs>) {} }:
with pkgs;

let
  phpWithImagick = php74.withExtensions ({ all, enabled }: enabled ++ [ all.imagick ]);

  phpWithImagickWithoutFpm743 = phpWithImagick.override {
    version = "7.4.3";
    sha256 = "wVF7pJV4+y3MZMc6Ptx21PxQfEp6xjmYFYTMfTtMbRQ=";
    fpmSupport = false;
  };

  phpWithImagickWithoutFpmZip743 = phpWithImagickWithoutFpm743.withExtensions (
    { enabled, all }:
      lib.filter (e: e != all.zip) enabled);

  phpWithImagickWithoutFpmZipCgi743 = phpWithImagickWithoutFpmZip743.override {
    cgiSupport = false;
  };
in
  phpWithImagickWithoutFpmZipCgi743
2020-04-26 16:43:05 +02:00
Frederik Rietdijk
ca2fd28d83 Revert "docs/python: document builders using doInstallCheck and not doCheck (#86051)"
For disabling tests when overriding, use `.overridePythonAttrs`.

Discussion about aliasing `.overridePythonAttrs` to `.overrideAttrs`.
https://github.com/NixOS/nixpkgs/pull/82772

This reverts commit 35812875a4.
2020-04-26 16:22:33 +02:00
Doron Behar
35812875a4
docs/python: document builders using doInstallCheck and not doCheck (#86051) 2020-04-26 11:53:06 +00:00
Gabor Greif
a634bd0fd7 ghc: drop 8.8.1 2020-04-24 21:48:28 +02:00
Frederik Rietdijk
ec21df329a
Merge pull request #85636 from matthewbauer/blas-lapack-fix-fallout-from-83888
BLAS/LAPACK fix fallout from #83888
2020-04-21 19:59:16 +02:00
Matthew Bauer
3c41d61514 doc/overlays.xml: update documentation for BLAS/LAPACK
This expands the documentation and explains how to assert LP64.
2020-04-21 11:03:10 -05:00
Dmitry Kalinkin
529165cfac doc/texlive: remove known problems section
Couple items are outdated. Also they don't belong to documentation -
should go to the issue tracker instead.
2020-04-21 08:09:39 +02:00
Pavol Rusnak
fadcfc3ea4
treewide: per RFC45, remove more unquoted URLs 2020-04-18 14:04:37 +02:00
Gabor Greif
7932fb22cb ghcHEAD: bump to 8.11.20200403 (#84217)
* ghcHEAD: bump to 8.11.20200403

* ghcHead: reduce diff vs. 8.10.1

dontAddExtraLibs was removed by accident (IMO) in ea19a8ed1e

* ghcHEAD: add ability to use system libffi

- enable nixpkgs' libffi
- minimise diffs against 8.10.1
- remove patching

* remove configure warning about --with-curses-includes

configure: WARNING: unrecognized options: --with-curses-includes
2020-04-17 20:50:48 +02:00
Elis Hirwing
3b6539896b
Merge pull request #83896 from etu/slim-down-default-php-v3
PHP: Make the default package more sane [v3]
2020-04-05 20:00:03 +02:00
talyz
ca8b8a26e9
php: Add enabledExtensions attribute to PHP derivations
This provides a means to build a PHP package based on a list of
extensions from another.

For example, to generate a package with all default extensions
enabled, except opcache, but with ImageMagick:

php.withExtensions (e:
  (lib.filter (e: e != php.extensions.opcache) php.enabledExtensions)
  ++ [ e.imagick ])
2020-04-05 16:46:38 +02:00
talyz
b5c59cebc6
php: Document withExtensions + general improvements 2020-04-05 16:46:05 +02:00
Elis Hirwing
a2099156ec
php: split php.packages to php.packages and php.extensions
So now we have only packages for human interaction in php.packages and
only extensions in php.extensions. With this php.packages.exts have
been merged into the same attribute set as all the other extensions to
make it flat and nice.

The nextcloud module have been updated to reflect this change as well
as the documentation.
2020-04-05 16:45:17 +02:00
Elis Hirwing
e4cee802ad
doc/php: Add initial documentation for PHP 2020-04-05 16:45:04 +02:00
Sander van der Burg
542a74a9dc
Merge pull request #82118 from lucafavatella/androidenv-update-2
androidenv: update generated expressions
2020-04-05 14:59:04 +02:00
Aaron Janse
a1704db04e emulateApp: document $NIX_ANDROID_EMULATOR_FLAGS 2020-04-01 16:18:29 -07:00
ryneeverett
0a2759483a vimPlugins: update auto-commiting based on review
- Use git.Repo(ROOT, search_parent_directories=True) to find nixpkgs
repo.
- Don't commit overrides.nix.
- Remove "-a" short argument.
- Remove "--commit" flag and commit by default.
- Improve help/error messages.
- Favor closure pattern over classes.Use a closure to wrap the update
function with state rather than a callable class.
- break NixpkgsRepo class into functions
- Optional None-type arguments
- Remove repo checks from update.py. Git is too flexible and permits too
many workflows for my attempt to replace documentation with code to work.
My goal would be to separate the `--add` functionality from the update
functionality in the near term and then there will be no reason for this
usage to create commits anyway.
2020-04-01 17:19:01 +00:00
ryneeverett
f1ae95f6d3 vimPlugins: update.py --add <plugin> argument
- update.py's new --add argument replaces manual editing of
vim-plugin-names for basic use cases.
2020-04-01 14:30:39 +00:00
ryneeverett
df0db17740 vimPlugins: automatically commit update 2020-04-01 14:30:23 +00:00
Leif Metcalf
c3f8e598ed
Update git clone command example 2020-03-25 15:48:25 +09:00
Benjamin Hipple
05343f6ff1 rust: remove legacy cargo fetcher
We have now migrated every single Rust package in NixPkgs! This deletes the
legacy fetcher, which is now unused.

Resolves #79975
2020-03-18 20:12:32 -07:00
Sander van der Burg
52c89d0572
Merge pull request #82067 from lucafavatella/androidenv-generate
androidenv: enhance script for the generated expressions
2020-03-16 22:48:17 +01:00
Vladimír Čunát
dcd33b7a76
doc: tiny grammar improvement in the same sentence again 2020-03-10 10:08:26 +01:00
Raphael Borun Das Gupta
a7c53f7640 doc: fix grammar / typo in NixPkgs GNOME manual 2020-03-09 23:01:40 +01:00
Luca Favatella
d56fd6975c androidenv: align basic emulateApp usage example
... to the actually tested one.
2020-03-09 19:46:46 +00:00
Luca Favatella
12a97158a2 androidenv: rely on shebang of ./generate.sh 2020-03-09 03:43:19 +00:00
Frederik Rietdijk
21b808cd76 Merge staging-next into staging 2020-02-29 15:29:45 +01:00
Benjamin Hipple
ad30a30488 rustPlatform.fetchCargo: handle custom Cargo.lock patchfiles with validation
Previously, we would asssert that the lockfiles are consistent during the
unpackPhase, but if the pkg has a patch for the lockfile itself then we must
wait until the patchPhase is complete to check.

This also removes an implicity dependency on the src attribute coming from
`fetchzip` / `fetchFromGitHub`, which happens to name the source directory
"source". Now we glob for it, so different fetchers will work consistently.
2020-02-28 18:54:23 -08:00
worldofpeace
10eeabe6d1
Merge pull request #81272 from worldofpeace/crystal-openssl
crystal: use latest openssl
2020-02-29 00:12:15 +00:00
Gabor Greif
c8554c0574 ghc: add 8.8.3
https://mail.haskell.org/pipermail/ghc-devs/2020-February/018643.html
2020-02-28 20:42:25 +01:00
Peter Simons
5bcd07a07d haskellPackages: update default compiler from ghc-8.6.5 to 8.8.2 (LTS-15.x) 2020-02-28 20:31:25 +01:00
worldofpeace
e10900b068 crystal: use latest openssl 2020-02-28 01:32:20 -05:00
Jonathan Ringer
3990b914c3 manual: use quoted homepage urls 2020-02-16 09:49:12 -08:00
Benjamin Hipple
131a32a5af rust: update docs on legacyCargoFetcher; remove unnecessary defaults
As mentioned in #79975, the default on `legacyCargoFetcher` if left unspecified
is now `false`.
2020-02-15 22:07:47 -08:00
Florian Klink
a3779ce53a
Merge pull request #79631 from bhipple/doc/python-formatting
doc: consistent formatting on python manual section
2020-02-13 23:19:20 +01:00
Benjamin Hipple
2115a2037c fetchcargo: use flat tar.gz file for vendored src instead of recursive hash dir
This has several advantages:

1. It takes up less space on disk in-between builds in the nix store.
2. It uses less space in the binary cache for vendor derivation packages.
3. It uses less network traffic downloading from the binary cache.
4. It plays nicely with hashed mirrors like tarballs.nixos.org, which only
   substitute --flat hashes on single files (not recursive directory hashes).
5. It's consistent with how simple `fetchurl` src derivations work.
6. It provides a stronger abstraction between input src-package and output
   package, e.g., it's harder to accidentally depend on the src derivation at
   runtime by referencing something like `${src}/etc/index.html`. Likewise, in
   the store it's harder to get confused with something that is just there as a
   build-time dependency vs. a runtime dependency, since the build-time
   src dependencies are tarred up.

Disadvantages are:
1. It takes slightly longer to untar at the start of a build.

As currently implemented, this attaches the compacted vendor.tar.gz feature as a
rider on `verifyCargoDeps`, since both of them are relatively newly implemented
behavior that change the `cargoSha256`.

If this PR is accepted, I will push forward the remaining rust packages with a
series of treewide PRs to update the `cargoSha256`s.
2020-02-10 10:17:29 -05:00
Jonathan Ringer
519519b6fc dotnet: add framework doc 2020-02-09 19:26:15 -08:00
Benjamin Hipple
4988805287 doc: consistent formatting on python manual section
No material changes to docs, but trying to sanitize them for consistent
readability prior to looking at #75837.

- Use `*` for lists instead of `-`. I have no opinion one way or the other, but
  the latter was only used in 1-2 places.
- Pad the code blocks with whitespace.
- Wrap to 80 characters, except for a few 1-liners that were only slightly over.
2020-02-09 11:23:11 -05:00
Dima
e9ba4b94fb doc: python: fixing mistake in venv example
When updating the section to python 3 some places still
referred to pythonPackages and were overlooked.
Decided to switch it to be more similar to the first
example binding pythonPackages and clarified comments a
bit based on confusion I observed on IRC.

Related to https://github.com/NixOS/nixpkgs/pull/77569
2020-02-02 09:39:58 -08:00
adisbladis
fece3e5ca1
doc: Remove comment advising to install build tooling system-wide
We should not encourage installing build-tooling system-wide but
instead promote nix-shell.
2020-01-23 21:09:30 +00:00
Dima
25d0d2b5e8 doc: python: refreshing virtualenv section for venv
Updating section about imperative use of ad-hoc virtual-environments for
use of pythons built-in `venv` module via venvShellHook.  Also trying to
make it a bit friendlier to beginners by adding a bit more explanation
to the code snippet and some remarks old-school virtualenv.

Adjusting for venvShellHook and adding manual example

Adding pip install and replacing python2 example with python3
2020-01-20 18:01:12 -08:00
Frederik Rietdijk
eba1f79418 pythonPackages.venvShellHook: init
This is a hook that loads a virtualenv from the specified `venvDir`
location. If the virtualenv does not exist, it is created.
2020-01-14 22:36:21 +01:00
Frederik Rietdijk
ed1b0d0bac Merge master into staging-next 2020-01-13 16:08:59 +01:00
Benjamin Hipple
c2e5ff3fe8 doc: update rust example on buildRustPackage (#77534)
The example in the manual was out of date and didn't use the newer `pname`
convention, which simplifies the fetch call.
2020-01-12 17:19:57 +00:00
Frederik Rietdijk
5ad16cb27f Merge master into staging-next 2020-01-10 10:34:04 +01:00
Frederik Rietdijk
eb1369670b Revert "python3: now points to python38"
This is going to require more work.

This reverts commit 2dc4ab3677.
2020-01-10 10:33:40 +01:00
Domen Kožar
2e765ef206
Merge pull request #77298 from nomeata/haskell-docs-version
nixpkgs manual: Update Haskell versions
2020-01-09 14:35:06 +01:00
Vladimír Čunát
5c780036c5
Merge branch 'master' into staging-next
The nss rebuild isn't so small.
2020-01-08 22:48:13 +01:00
adisbladis
2d6f1ff4dd
python: Add support for installing Python eggs 2020-01-08 13:59:04 +00:00
Joachim Breitner
262219be21 nixpkgs manual: Update Haskell versions
and leave a comment in all-packages.nix that the docs should be updated
2020-01-08 09:15:20 +01:00
Frederik Rietdijk
2dc4ab3677 python3: now points to python38 2020-01-04 15:27:48 +01:00
Frederik Rietdijk
07ceb05628 Docs: document we have python38 2020-01-04 15:27:03 +01:00
Merijn Broeren
a13649c6b1
treewide: replace make/build/configure/patchFlags with nix lists 2019-12-30 13:31:06 +01:00
zimbatm
f373ecec8f buildGoModule: support impure modules (#76532)
When modSha256 is null, disable the nix sandbox instead of using a
fixed-output derivation. This requires the nix-daemon to have
`sandbox = relaxed` set in their config to work properly.

Because the output is (hopefully) deterministic based on the inputs,
this should give a reproducible output. This is useful for development
outside of nixpkgs where re-generating the modSha256 on each mod.sum
changes is cumbersome.

Don't use this in nixpkgs! This is why null is not the default value.
2019-12-28 12:36:42 -08:00
Immae
b42bede861 doc/texlive: Add "Custom packages" section (#74519)
Co-authored-by: Dmitry Kalinkin <dmitry.kalinkin@gmail.com>
2019-12-21 11:37:54 -05:00
Daiderd Jordan
0159151705
manual: specify interpreter in virtualenv shell
Without this virtualenv might try to setup an environment for a
different version of python then the one specified in the expression.
2019-12-17 16:42:18 +01:00
Danylo Hlynskyi
debca548f9
dolt: init at 0.12.0 (#75693)
* dolt: init at 0.12.0

* Update pkgs/servers/sql/dolt/default.nix

Co-Authored-By: robert seaton <robbpseaton@gmail.com>

* fix eval

* Update pkgs/servers/sql/dolt/default.nix

Co-Authored-By: Wael Nasreddine <wael.nasreddine@gmail.com>

* update Go docs as well
2019-12-16 00:58:16 +02:00
worldofpeace
7ab19b1517 doc/gnome: update wrapper args example
It now breaks down as mentioned in https://github.com/NixOS/nixpkgs/issues/75443
2019-12-10 18:11:55 -05:00
Jan Tojnar
8cbc862b83
dconf: move to top-level 2019-12-01 01:01:40 +01:00
Simon Jakobi
d487d65a80
A few updates for the Haskell guide 2019-11-21 02:58:24 +01:00
Thomas Depierre
8de4654d4b beam-modules/hex-snapshot: remove
The package set is not maintained. It is also not used by most of the
BEAM community. Removing it to allow a more useful set of tools fit to
the BEAM community in Nixpkgs.
2019-11-17 13:45:57 +01:00
Dennis Gosnell
d0c73e88b3
Merge pull request #73362 from Infinisil/buildStackProjectChroot
buildStackProject: Set __noChroot to make it fail without sandbox
2019-11-14 11:51:43 +09:00
Silvan Mosberger
27e7b9a31d
docs/haskell: Mention buildStackProject needs a disabled sandbox 2019-11-14 01:32:07 +01:00
Arnout Engelen
7eddc92374 documentation: show combining python35.withPackages and mkShell
this had me stumped - thanks to adisbladis on irc
2019-11-13 16:44:26 +01:00
Sander van der Burg
9b51c5145a xcodeenv: bump default Xcode version to 11.1, default iOS SDK to 13.1. Add troubleshooting section to docs 2019-11-11 00:18:22 +01:00
Arnout Engelen
07c84f4de2 documentation: drop double 'the' 2019-11-09 10:10:47 +01:00
Jörg Thalheim
56240d7f20
Merge pull request #71899 from decentriq/aslemmer/build-rust-package-add-target
build-support/rust: Add target option
2019-11-01 15:46:47 +00:00
exfalso
bb7184d6a6 buildRustPackage: Add readme comment on target option 2019-11-01 14:19:39 +00:00
Stig Otnes Kolstad
3265f554ca doc: fix tiny typo 2019-10-24 08:29:33 +02:00
Frederik Rietdijk
115018ff15 doc: merge package notes and package-specific notes
Maybe there was an idea behind this separation, but looking at the
contents I don't see any reason for these being separate.
2019-10-20 13:35:04 +02:00