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
Michael Raskin
718de7c2e4
Merge pull request #33306 from bgamari/patch-2
...
haskell: Recommend use of hoogle --local
2018-02-06 21:34:10 +00:00
Michael Raskin
8eba2a5be8
Merge pull request #31312 from binarin/emacs-package-set-overrides
...
emacs-packages: Cleanup and document for overrides
2018-02-06 21:22:23 +00:00
pe@pijul.org
8f20e7ce3a
carnix: 0.6.0 -> 0.6.5
2018-02-03 22:31:54 +00:00
John Ericson
94a2af91eb
doc: Cross chapter: Add note on why use example platforms
2018-01-26 12:38:34 -05:00
John Ericson
e316ba1fc4
doc: chap cross: Make example command stick out more
...
It should be in a <programlisting>, not <command>, tag.
2018-01-26 12:33:14 -05:00
Frederik Rietdijk
2ea3db2830
Python docs: remove name
attribute
...
The `name` attribute is filled in when `pname` and `version` are specified.
See https://github.com/NixOS/nixpkgs/pull/31173
2018-01-16 18:01:06 +01:00
Jörg Thalheim
bb9bcfa295
doc/cross-compilation: fixes typos
2018-01-11 16:26:30 +00:00
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
Ben Gamari
fa085fc07b
haskell: Recommend use of hoogle --local
...
This works around the browser security restriction of
disallowing links from http:// to file://.
2018-01-01 19:16:23 -05:00
John Ericson
4d2b763817
Merge pull request #26805 from obsidiansystems/cross-elegant
...
Make cross compilation elegant
2017-12-30 22:58:02 -05:00
John Ericson
8a434b625d
doc: Add cross cookbook
...
An excellent suggestion from @bgamari
2017-12-30 22:42:15 -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
Piotr Bogdan
7f91eb94be
haskell docs: change wording in the "Miscellaneous Topics" section
2017-12-26 12:19:46 +00:00
zimbatm
a9ae16c2b9
doc: fix typo
2017-12-24 00:40:01 +00:00
Yegor Timoshenko
108f76c927
Merge pull request #31668 from rycee/doc/naming
...
docs: clarify package and module option naming
2017-12-23 17:12:29 +03:00
zimbatm
adc5c9b83d
mkShell: add builder ( #30975 )
2017-12-20 23:42:07 +00:00
Leonid Onokhov
574528024d
nixpkgs/manual: fix build with new pandoc
2017-12-20 14:22:05 +00:00
Yegor Timoshenko
a0aeb2381e
doc: system.environmentPackages -> environment.systemPackages
2017-12-20 02:19:43 +00:00
Vladimír Čunát
1bc288591e
coqPackages docs: fix typo (and thus manual build)
2017-12-19 11:34:54 +01:00
Vladimír Čunát
4a2340ff6b
Merge branch 'staging'
2017-12-19 10:27:13 +01:00
Vincent Laporte
5642f4ac6f
coqPackages: update documentation
2017-12-18 15:30:37 +00:00
Vladimír Čunát
24d81d6332
Merge branch 'master' into staging
2017-12-15 21:40:23 +01:00
Vaibhav Sagar
4bbb9fca51
Update haskell.md
...
Unindent prose that was incorrectly being displayed as code.
2017-12-14 11:21:18 +08: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
Pierre-Étienne Meunier
5a0d954156
add buildRustCrate function to build rust crates
2017-12-12 04:58:45 -06:00
Vladimír Čunát
2309acf723
Merge branch 'master' into staging
2017-12-09 21:00:07 +01:00
Frederik Rietdijk
41ff561b75
Python docs: fix nix-shell example
2017-12-08 17:06:56 +01:00
Frederik Rietdijk
19be72f880
Revert "Python docs: fix nix-shell example"
...
This reverts commit aa2326682c
.
Forgot parentheses...
2017-12-08 17:06:03 +01:00
Frederik Rietdijk
aa2326682c
Python docs: fix nix-shell example
2017-12-08 17:05:19 +01:00
Orivej Desh
683047f8ab
doc: document enableParallelBuilding being unset
2017-12-07 08:52:42 +00:00
Jörg Thalheim
4657fc893a
Merge pull request #32174 from lheckemann/weechat-all-default
...
weechat: default to enabling all plugins
2017-11-29 23:02:32 +00:00
Linus Heckemann
566a16b742
weechat: default to enabling all plugins
...
Plain weechat is still accessible as `weechat.unwrapped`
or `weechat.override {configure = null;}`.
Also update documentation to reflect this change.
2017-11-29 15:30:56 +00:00
Vladimír Čunát
addd20e6f9
Merge branch 'master' into staging
2017-11-28 18:19:34 +01:00
Benjamin Hipple
05c00a8345
haskell docs: fix typo
2017-11-27 22:24:32 -05:00
Orivej Desh
29b2984b0c
Merge pull request #31987 from jtojnar/devhelp-devdoc
...
stdenv: Move devhelp books to outputDevdoc
2017-11-25 23:14:47 +00:00
Vaibhav Sagar
1349174b1b
doc: rust is an attribute set, not a package
...
Using `rust` instead of `rustc cargo` doesn't work in either `systemPackages` or `nix-shell -p`
2017-11-24 15:26:37 +08:00
Jan Tojnar
70a0580e38
stdenv: Move devhelp books to outputDevdoc
2017-11-24 02:09:44 +01:00
Vladimír Čunát
c1ac1256f3
documentation: python 2.6 is no more
2017-11-19 08:18:55 +01:00
Samuel Dionne-Riel
f8d232e233
documentation: python3Packages is python36Packages
...
Close #31810 .
2017-11-19 08:18:43 +01:00
Chris Martin
b43c5e0160
nixpkgs manual: how to make a patch file with git
...
This addresses #31684 .
2017-11-17 17:46:07 -05:00
Orivej Desh
5b4adc3126
doc: improve rustPlatform example
2017-11-17 07:26:51 +00:00
Vladimír Čunát
f609512d01
Merge #31614 : doc/manual/stdenv: fix a typo
2017-11-14 20:37:15 +01:00
Robert Helgesson
91154416b6
docs: clarify package and module option naming
...
This attempts to briefly clarify the current naming conventions of
attribute names in `all-packages.nix` and module option names.
2017-11-14 19:17:35 +01:00
John Ericson
350a5e31fc
Merge pull request #29418 from vanschelven/small-documentation-improvements
...
documentation: cross-compilation - partial rewrite
2017-11-13 16:21:58 -05:00
Bruno Bieth
0e05dfcfa2
Typo in manual#stdenv - propagatedNativeBuildInputs
2017-11-13 17:55:18 +01:00
Orivej Desh
467d22c15b
documentation: fix typos
2017-11-09 12:57:21 +00:00