mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-11-17 14:19:58 +03:00
~/.nixpkgs -> ~/.config/nixpkgs
The former is still respected as a fallback for config.nix for backwards compatibility (but not for overlays because they're a new feature).
This commit is contained in:
parent
7dacca324d
commit
9d6a55aefd
@ -2,12 +2,12 @@
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:id="chap-packageconfig">
|
||||
|
||||
<title><filename>~/.nixpkgs/config.nix</filename>: global configuration</title>
|
||||
<title>Global configuration</title>
|
||||
|
||||
<para>Nix packages can be configured to allow or deny certain options.</para>
|
||||
|
||||
<para>To apply the configuration edit
|
||||
<filename>~/.nixpkgs/config.nix</filename> and set it like
|
||||
<filename>~/.config/nixpkgs/config.nix</filename> and set it like
|
||||
|
||||
<programlisting>
|
||||
{
|
||||
@ -89,7 +89,7 @@ packages via <literal>packageOverrides</literal></title>
|
||||
|
||||
<para>You can define a function called
|
||||
<varname>packageOverrides</varname> in your local
|
||||
<filename>~/.nixpkgs/config.nix</filename> to overide nix packages. It
|
||||
<filename>~/.config/nixpkgs/config.nix</filename> to overide nix packages. It
|
||||
must be a function that takes pkgs as an argument and return modified
|
||||
set of packages.
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
||||
evaluation-per-function application incurs a performance penalty,
|
||||
which can become a problem if many overrides are used.
|
||||
It is only intended for ad-hoc customisation, such as in
|
||||
<filename>~/.nixpkgs/config.nix</filename>.
|
||||
<filename>~/.config/nixpkgs/config.nix</filename>.
|
||||
</para>
|
||||
</warning>
|
||||
|
||||
|
@ -195,7 +195,7 @@ its normal core packages:
|
||||
mtl-2.2.1
|
||||
|
||||
This function allows users to define their own development environment by means
|
||||
of an override. After adding the following snippet to `~/.nixpkgs/config.nix`,
|
||||
of an override. After adding the following snippet to `~/.config/nixpkgs/config.nix`,
|
||||
|
||||
{
|
||||
packageOverrides = super: let self = super.pkgs; in
|
||||
@ -522,7 +522,7 @@ file with `cabal2nix`:
|
||||
$ cd ~/src/foo && cabal2nix . >default.nix
|
||||
$ cd ~/src/bar && cabal2nix . >default.nix
|
||||
|
||||
Then edit your `~/.nixpkgs/config.nix` file to register those builds in the
|
||||
Then edit your `~/.config/nixpkgs/config.nix` file to register those builds in the
|
||||
default Haskell package set:
|
||||
|
||||
{
|
||||
@ -554,7 +554,7 @@ Every Haskell package set takes a function called `overrides` that you can use
|
||||
to manipulate the package as much as you please. One useful application of this
|
||||
feature is to replace the default `mkDerivation` function with one that enables
|
||||
library profiling for all packages. To accomplish that, add configure the
|
||||
following snippet in your `~/.nixpkgs/config.nix` file:
|
||||
following snippet in your `~/.config/nixpkgs/config.nix` file:
|
||||
|
||||
{
|
||||
packageOverrides = super: let self = super.pkgs; in
|
||||
@ -583,7 +583,7 @@ The first step is to generate Nix build instructions with `cabal2nix`:
|
||||
|
||||
$ cabal2nix cabal://ghc-events-0.4.3.0 >~/.nixpkgs/ghc-events-0.4.3.0.nix
|
||||
|
||||
Then add the override in `~/.nixpkgs/config.nix`:
|
||||
Then add the override in `~/.config/nixpkgs/config.nix`:
|
||||
|
||||
{
|
||||
packageOverrides = super: let self = super.pkgs; in
|
||||
|
@ -278,7 +278,7 @@ packageOverrides = pkgs: {
|
||||
</screen>
|
||||
|
||||
to your Nixpkgs configuration
|
||||
(<filename>~/.nixpkgs/config.nix</filename>) and install it by
|
||||
(<filename>~/.config/nixpkgs/config.nix</filename>) and install it by
|
||||
running <command>nix-env -f '<nixpkgs>' -iA
|
||||
myEclipse</command> and afterward run Eclipse as usual. It is
|
||||
possible to find out which plugins are available for installation
|
||||
|
@ -15,10 +15,10 @@ rec {
|
||||
the original derivation attributes.
|
||||
|
||||
`overrideDerivation' allows certain "ad-hoc" customisation
|
||||
scenarios (e.g. in ~/.nixpkgs/config.nix). For instance, if you
|
||||
want to "patch" the derivation returned by a package function in
|
||||
Nixpkgs to build another version than what the function itself
|
||||
provides, you can do something like this:
|
||||
scenarios (e.g. in ~/.config/nixpkgs/config.nix). For instance,
|
||||
if you want to "patch" the derivation returned by a package
|
||||
function in Nixpkgs to build another version than what the
|
||||
function itself provides, you can do something like this:
|
||||
|
||||
mySed = overrideDerivation pkgs.gnused (oldAttrs: {
|
||||
name = "sed-4.2.2-pre";
|
||||
|
@ -316,10 +316,10 @@ https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides
|
||||
<para>
|
||||
If you are not on NixOS or want to install this particular
|
||||
Emacs only for yourself, you can do so by adding it to your
|
||||
<filename>~/.nixpkgs/config.nix</filename>
|
||||
<filename>~/.config/nixpkgs/config.nix</filename>
|
||||
(see <link xlink:href="http://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides">Nixpkgs manual</link>):
|
||||
<example>
|
||||
<title>Custom Emacs in <filename>~/.nixpkgs/system.nix</filename></title>
|
||||
<title>Custom Emacs in <filename>~/.config/nixpkgs/config.nix</filename></title>
|
||||
<programlisting><![CDATA[
|
||||
{
|
||||
packageOverrides = super: let self = super.pkgs; in {
|
||||
|
@ -4,7 +4,7 @@ R packages
|
||||
## Installation
|
||||
|
||||
Define an environment for R that contains all the libraries that you'd like to
|
||||
use by adding the following snippet to your $HOME/.nixpkgs/config.nix file:
|
||||
use by adding the following snippet to your $HOME/.config/nixpkgs/config.nix file:
|
||||
|
||||
```nix
|
||||
{
|
||||
|
@ -6,7 +6,7 @@ assert ((config.planetary_annihilation or null).url or null) != null;
|
||||
assert ((config.planetary_annihilation or null).sha256 or null) != null;
|
||||
|
||||
/* to setup:
|
||||
$ cat ~/.nixpkgs/config.nix
|
||||
$ cat ~/.config/nixpkgs/config.nix
|
||||
{
|
||||
planetary_annihilation = {
|
||||
url = "file:///home/user/PA_Linux_62857.tar.bz2";
|
||||
|
@ -183,7 +183,7 @@ rec {
|
||||
|
||||
This adapter can be defined on the defaultStdenv definition. You can
|
||||
use it by patching the all-packages.nix file or by using the override
|
||||
feature of ~/.nixpkgs/config.nix .
|
||||
feature of ~/.config/nixpkgs/config.nix .
|
||||
*/
|
||||
validateLicenses = licensePred: stdenv: stdenv //
|
||||
{ mkDerivation = args:
|
||||
|
@ -153,7 +153,7 @@ let
|
||||
|
||||
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
|
||||
{ allow${up reason} = true; }
|
||||
to ~/.nixpkgs/config.nix.
|
||||
to ~/.config/nixpkgs/config.nix.
|
||||
''));
|
||||
|
||||
# Check if a derivation is valid, that is whether it passes checks for
|
||||
|
@ -17,13 +17,15 @@ in
|
||||
system ? builtins.currentSystem
|
||||
|
||||
, # Fallback: The contents of the configuration file found at $NIXPKGS_CONFIG or
|
||||
# $HOME/.nixpkgs/config.nix.
|
||||
# $HOME/.config/nixpkgs/config.nix.
|
||||
config ? let
|
||||
configFile = getEnv "NIXPKGS_CONFIG";
|
||||
configFile2 = homeDir + "/.nixpkgs/config.nix";
|
||||
configFile2 = homeDir + "/.config/nixpkgs/config.nix";
|
||||
configFile3 = homeDir + "/.nixpkgs/config.nix"; # obsolete
|
||||
in
|
||||
if configFile != "" && pathExists configFile then import configFile
|
||||
else if homeDir != "" && pathExists configFile2 then import configFile2
|
||||
else if homeDir != "" && pathExists configFile3 then import configFile3
|
||||
else {}
|
||||
|
||||
, # Overlays are used to extend Nixpkgs collection with additional
|
||||
@ -31,7 +33,7 @@ in
|
||||
# fix-point made by Nixpkgs.
|
||||
overlays ? let
|
||||
dirPath = try (if pathExists <nixpkgs-overlays> then <nixpkgs-overlays> else "") "";
|
||||
dirHome = homeDir + "/.nixpkgs/overlays";
|
||||
dirHome = homeDir + "/.config/nixpkgs/overlays";
|
||||
dirCheck = dir: dir != "" && pathExists (dir + "/.");
|
||||
overlays = dir:
|
||||
let content = readDir dir; in
|
||||
|
Loading…
Reference in New Issue
Block a user