Commit graph

1254 commits

Author SHA1 Message Date
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
Eelco Dolstra
2e1e115472 Remove outdated reference to nix-log2xml 2020-05-07 16:01:29 +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
davidak
579e56fb9e
Update commit policy for stable release branches (#86026)
only very few people followed the strict policy in the last 5 years. the 
maintainers accept backports without reason when it's obvious, so i 
updated the policy to reflect that
2020-04-26 12:12:55 +00: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
cff0669a48 Merge master into staging-next 2020-04-23 08:11:16 +02:00
Benjamin Hipple
21be830522
Merge pull request #85799 from matthewbauer/blas-lapack-expand-docs
BLAS/LAPACK fixup and expand docs
2020-04-22 21:56:20 -04:00
Benjamin Hipple
480a55a6b6
doc/using/overlays.xml: update LD_LIBRARY_PATH example 2020-04-22 21:54:41 -04:00
Matthew Bauer
4238b2b943 doc/overlays.xml: fix missing documentation for blas/lapack
This adds some more information to the documentation as well as
addressing review from https://github.com/NixOS/nixpkgs/pull/85636.
2020-04-22 12:43:14 -05:00
Frederik Rietdijk
23be4a8b4d Merge master into staging-next 2020-04-21 19:59:56 +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
Frederik Rietdijk
803b3d296c Merge staging-next into staging 2020-04-21 08:29:51 +02: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
Matthew Bauer
f86d582ea7 doc/overlays.xml: add information on BLAS/LAPACK switching 2020-04-20 15:50:28 -05:00
John Ericson
1ea80c2cc3 Merge remote-tracking branch 'upstream/master' into staging 2020-04-18 15:40:49 -04:00
Pavol Rusnak
fadcfc3ea4
treewide: per RFC45, remove more unquoted URLs 2020-04-18 14:04:37 +02:00
John Ericson
33c2a76c5e Merge remote-tracking branch 'upstream/master' into staging 2020-04-17 18:40:51 -04: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
Jan Tojnar
4b706490da
Merge branch 'staging-next' into staging 2020-04-16 10:10:38 +02:00
worldofpeace
5384d72885 setup.sh: add dontPatch
Fixes #85038
2020-04-12 07:04:35 -04:00
Greg Price
53d61f91d2 doc/stdenv: Update default for stripDebugList.
This has changed a few times from 2008 to 2012: cdc74e167, d9213df2c,
and 095db9fe3.
2020-04-06 21:26:52 -07:00
Jakub Kądziołka
2c40ba774d
patchelf: Fix homepage URL
Since this commit on nixos-homepage, the homepage was 404-ing:
179733c176
2020-04-06 14:08:11 +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
Kyle Sferrazza
131cb42efe
nixpkgs manual preface: change howoldis link to status page link 2020-04-02 21:52:44 -04: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
Florian Klink
855a12eacf Revert "make-tarball.nix: Restore the 'commit' field in packages.json"
This reverts commit 5e8545e723.

It breaks eval:

attribute 'rev' missing, at /var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/mr-est/eval-0-gleber.ewr1.nix.ci/pkgs/top-level/make-tarball.nix:106:39
2020-03-29 20:57:50 +02:00
Eelco Dolstra
5e8545e723
make-tarball.nix: Restore the 'commit' field in packages.json
Also change incorrect 'revision' to 'rev' in the default value for
'nixpkgs' in release.nix.

Fixes https://github.com/NixOS/nixos-homepage/issues/372.
2020-03-29 20:16:07 +02: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
Jan Tojnar
1a44e325d2
Merge branch 'staging-next' into staging 2020-03-04 21:24:05 +01:00
Vladimír Čunát
83015ff795
nixpkgs manual: fix build after pandoc(?) update
I din't try to pinpoint the exact commit, but we started getting:
> The extension smart is not supported for docbook
Reading pandoc docs, I can't see what use to us "smart" could be
when writing the in-between docbook (to be converted to html).
https://pandoc.org/MANUAL.html#extension-smart
2020-03-02 08:24:54 +01:00
Robert Hensing
e38a01db5d
Merge pull request #68491 from roberth/fix-dontRecurseIntoAttrs
Fix dontRecurseIntoAttrs + add to lib + doc
2020-03-01 11:05:34 +01: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
edef
f8c8f523a8
Merge pull request #80279 from edef1c/ocitools-exec
doc/ociTools: exec is a shell builtin, not an external command
2020-02-18 13:18:03 +00:00
Jonathan Ringer
3990b914c3 manual: use quoted homepage urls 2020-02-16 09:49:12 -08:00
edef
2aa4fba8d1 doc/ociTools: exec is a shell builtin, not an external command 2020-02-16 17:41:06 +00: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
Frederik Rietdijk
1a6c3cb06b Merge staging into staging-next 2020-02-11 07:59:53 +01:00
Kyle Sferrazza
2843a7d122 jdiskreport: remove builder.sh link from docs 2020-02-10 20:17:59 +01:00
Michele Guerini Rocco
565724c775
Merge pull request #77347 from rnhmjoj/urxvt
rxvt-unicode: rewrite plugin system
2020-02-10 17:21:59 +01:00
Vladimír Čunát
79210713e6
nixpkgs manual: fix a typo in cross-compilation
I can't say I really understand that much about our cross stuff,
but this seems very clear.
2020-02-10 16:58:50 +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
rnhmjoj
ef9a029700
doc: document new urxvt plugin system 2020-02-02 12:00:51 +01: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
adisbladis
65ff43e866
doc: Fix callout reference in appimagetools 2020-01-23 17:49:13 +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
Graham Christensen
6ed0b0a86f
Merge pull request #77683 from jtojnar/prompt-no-select
doc: Make callout marks & prompts unselectable
2020-01-14 14:39:52 -05:00
Jan Tojnar
1e6265afe9
doc: Make callout marks in code unselectable
To make example copying easier.
2020-01-14 15:24:57 +01:00
Jan Tojnar
8334b83595
doc: Make prompt unselectable
Weirdly, no-one seems to have noticed this was broken.
2020-01-14 15:04: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
960f062825 Merge master into staging-next 2020-01-12 09:47:19 +01:00
ivann
9605addd32 fix catAttrs documentation signature 2020-01-12 00:04:18 +01: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