Commit Graph

98 Commits

Author SHA1 Message Date
Matthew Bauer
9d3108c3ae doc/cross-compilation: fixup
More cleanups and stuff. May need to be split up.
2018-11-19 13:03:23 -06:00
Matthew Bauer
4a49921a69 doc/stdenv: more changes
Lots of reworking here. May need to be split up.
2018-11-19 13:03:22 -06:00
Matthew Bauer
49e5bd0dbe doc/stdenv: document more setup hook
Here I document setup hooks provided by:

- cmake
- xcbuildHook
- meson
- ninja
- unzip
- wafHook
- scons
2018-11-19 13:03:09 -06:00
Matthew Bauer
4621d14b4a doc/stdenv: document prefixKey
This seems like a useful thing to document
2018-11-19 13:02:31 -06:00
Matthew Bauer
b01613c9ce doc: move checkInputs to check phase section
This makes more sense in context.
2018-11-19 13:02:31 -06:00
Matthew Bauer
32ddbe3da9 doc: typo fixes 2018-11-19 13:02:17 -06:00
Andrei Lapshin
e198f9e42f
Fix typo in nixpkgs manual 2018-11-19 09:09:02 +03:00
Benjamin Hipple
286e7a57c4 docs: fix minor grammar issues in the manual 2018-11-14 21:40:47 -05:00
Eelco Dolstra
78090f4f09
Remove preferLocalBuild documentation
It's incorrect (preferLocalBuild does not prevent uploading to binary
caches) and is not a stdenv attribute (it's already documented in the
Nix manual).
2018-11-07 11:45:40 +01:00
Jörg Thalheim
764d165f43
doc: apply make format 2018-10-26 11:13:54 +01:00
Jörg Thalheim
7f80fb2db4
doc: extend breakpointHook documentation 2018-10-26 11:13:24 +01:00
Raphael Borun Das Gupta
aa77e3aa4f nixpkgs docs: add missing spaces between words 2018-10-26 00:35:21 +02:00
Raphael Borun Das Gupta
bea0b3021c nixpkgs docs: remove spurious ">" 2018-10-26 00:29:27 +02:00
Jörg Thalheim
325a5699cb
doc/breakpointHook: add documentation 2018-10-25 10:19:42 +01:00
John Children
aec67d299c doc/stdenv: libaries -> libraries (#47011)
This commit corrects a minor typo in the stdenv portion of the
documentation for the nix language.
2018-09-20 18:45:54 +01:00
Graham Christensen
2eea92a1dc
nixpkgs docs: give linked things IDs 2018-09-01 15:20:57 -04:00
Daiderd Jordan
477efb9d87
Merge pull request #42464 from LnL7/manual-installcheck
doc: add installCheckTarget and installCheckFlags to manual
2018-08-31 20:08:16 +02:00
James Deikun
bd63de114e stdenv/build-support: support .tbz and .txz tarballs 2018-07-30 15:30:16 -04:00
Daiderd Jordan
8500e28d7b
doc: add installCheckTarget and installCheckFlags to manual
Fixes #42393
2018-06-23 21:24:52 +02:00
Samuel Dionne-Riel
6bf54191fb doc: Fixes squishedtogether definitions. 2018-05-31 21:09:35 -04:00
Samuel Dionne-Riel
a45edd9024 doc: ran make format
With visual inspection that nothing got worse.
2018-05-31 21:03:37 -04:00
John Ericson
cf06e42d1c Merge remote-tracking branch 'upstream/master' into staging 2018-05-03 16:35:36 -04:00
Graham Christensen
77161de454
nixpkgs docs: format =) 2018-05-01 19:54:21 -04:00
Jan Malakhovski
87651b32fe stdenv: steal checkInputs from buildPythonPackage
Note that a bunch of non-python packages use this attribute already.
Some of those are clearly unaware of the fact that this attribute does
not exists in stdenv because they define it but don't to add it to
their `bulidInputs` :)

Also note that I use `buildInputs` here and only handle regular
builds because python and haskell builders do it this way and I'm not
sure how to properly handle the cross-compilation case.
2018-04-26 20:22:51 +00:00
aszlig
1cba74dfc1
setup-hooks: Add autoPatchelfHook
I originally wrote this for packaging proprietary games in Vuizvui[1]
but I thought it would be generally useful as we have a fair amount of
proprietary software lurking around in nixpkgs, which are a bit tedious
to maintain, especially when the library dependencies change after an
update.

So this setup hook searches for all ELF executables and libraries in the
resulting output paths after install phase and uses patchelf to set the
RPATH and interpreter according to what dependencies are available
inside the builder.

For example consider something like this:

stdenv.mkDerivation {
  ...
  nativeBuildInputs = [ autoPatchelfHook ];
  buildInputs = [ mesa zlib ];
  ...
}

Whenever for example an executable requires mesa or zlib, the RPATH will
automatically be set to the lib dir of the corresponding dependency.

If the library dependency is required at runtime, an attribute called
runtimeDependencies can be used to list dependencies that are added to
all executables that are discovered unconditionally.

Beside this, it also makes initial packaging of proprietary software
easier, because one no longer has to manually figure out the
dependencies in the first place.

[1]: https://github.com/openlab-aux/vuizvui

Signed-off-by: aszlig <aszlig@nix.build>
Closes: #34506
2018-02-10 00:27:24 +05:30
John Ericson
4e907dbca1 stdenv: Force doCheck and doInstallCheck to be false when we are cross compiling
I hope this will be a temporary measure. If there is consensus around
issue #33599, then we can follow an explicit `dontCheck`, but default to
not checking during cross builds when none is given.
2018-01-09 12:37:12 -05:00
John Ericson
edfe42f3ba doc: More information in the setup hook section of the stdenv chapter 2017-12-30 22:42:14 -05:00
John Ericson
b55999b28f doc: Document dontStripHost and dontStripTarget 2017-12-30 22:41:44 -05:00
John Ericson
7ffc4e1b2f doc: Add "Specifying Dependencies" section to the stdenv chapter
This accounts for all the new dependencies and propagation logic changes
I'm about to add.

Fixes #1915---with this change I think the distinction is finally clear
enough.
2017-12-30 22:35:59 -05:00
John Ericson
a0b1ebeee9 Merge remote-tracking branch 'upstream/staging' into binutils-wrapper 2017-12-13 16:14:47 -05:00
John Ericson
91ca46f693 doc: Document Bintools Wrapper
Shrunk the CC Wrapper documentation so as not to be repetative.
2017-12-13 16:08:18 -05:00
Orivej Desh
683047f8ab doc: document enableParallelBuilding being unset 2017-12-07 08:52:42 +00:00
Bruno Bieth
0e05dfcfa2 Typo in manual#stdenv - propagatedNativeBuildInputs 2017-11-13 17:55:18 +01:00
Daiderd Jordan
1167fde2b2 docs: add note about makeFlags quoting 2017-11-01 17:50:15 +01:00
John Ericson
bc0aec5d97 doc: Document forthcomming NIX_DEBUG degredations 2017-09-26 11:24:19 -04:00
John Ericson
0578dda8e1 doc: Describe CC Wrapper in more detail
The main motivation for this is to have something to google for LD=$CC.

Eventually, this should probably be moved to another section, but we
can deal with that later.
2017-08-20 15:49:50 -04:00
John Ericson
594d264205 cross stdenv adaptor: Support --host --build --target across the board
Packages get --host and --target by default, but can explicitly request
any subset to be passed as needed. See docs for more info.

rustc: Avoid hash breakage by using the old (ignored)
dontSetConfigureCross when not cross building
2017-06-22 17:52:28 -04:00
Frederik Rietdijk
75933da882 Merge pull request #26345 from vcunat/p/doc-override-phases
nixpkgs manual: advise against overriding whole phases
2017-06-19 09:48:01 +02:00
Jan Tojnar
e35f3c0679
doc: Fix some typos 2017-06-11 22:13:42 +02:00
Vladimír Čunát
8c6fada372
nixpkgs manual: advise against overriding whole phases
I've seen that mistake at least a few times already, e.g.
https://github.com/NixOS/nixpkgs/pull/26209#issuecomment-305925562
It might perhaps seem counter-intuitive if one doesn't know nixpkgs well.
2017-06-03 11:24:18 +02:00
Vladimír Čunát
3b583d943e
Merge #19328: mkWrapper fix and docs 2017-02-05 14:09:22 +01:00
John Ericson
76ea89aa78 nixpkgs doc: Talk about nativeBuildInputs and propgatedNativeBuildInputs
Do so in the stdenv section where the other two are discussed. This can be
done without brining up cross-compilation by talking about build-time vs
run-time.
2017-01-24 11:37:56 -05:00
Franz Pletz
00ab8e84c6
doc: improve hardening docs
Fixes #18887.
2017-01-20 17:46:44 +01:00
Profpatsch
bef6bef0d2
stdenv/stripHash: print to stdout, not to variable
`stripHash` documentation states that it prints out the stripped name to
the stdout, but the function stored the value in `strippedName`
instead.

Basically all usages did something like
`$(stripHash $foo | echo $strippedName)` which is just braindamaged.
Fixed the implementation and all invocations.
2016-10-11 18:34:36 +02:00
Profpatsch
dd58d24fa6 stdenv: document makeWrapper
Add function documentation to `makeWrapper`.
Also add user documentation to the nixpkgs manual.
2016-10-08 23:36:40 +02:00
Michael Raskin
d233366856 manual: switch an example from md5 to sha256. 2016-10-07 10:08:22 +02:00
Eric Sagnes
41d62fdea8 nixpkgs doc: add installCheck phase 2016-09-28 16:31:46 +09:00
Domen Kožar
7b3a36132a Merge pull request #9607 from nckx/update-doc
doc: specify that *Flags are string lists
2016-08-31 10:02:16 +02:00
Robin Gloster
af04b6d5a5 hardening docs: fix typo 2016-08-13 10:06:24 +00:00
Franz Pletz
55966c2189 doc: complete the hardening documentation 2016-08-12 18:14:02 +02:00