parent
c085310183
commit
9afb04f765
@ -0,0 +1,46 @@ |
||||
# Importing Modules {#sec-importing-modules} |
||||
|
||||
Sometimes NixOS modules need to be used in configuration but exist |
||||
outside of Nixpkgs. These modules can be imported: |
||||
|
||||
```nix |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
{ |
||||
imports = |
||||
[ # Use a locally-available module definition in |
||||
# ./example-module/default.nix |
||||
./example-module |
||||
]; |
||||
|
||||
services.exampleModule.enable = true; |
||||
} |
||||
``` |
||||
|
||||
The environment variable `NIXOS_EXTRA_MODULE_PATH` is an absolute path |
||||
to a NixOS module that is included alongside the Nixpkgs NixOS modules. |
||||
Like any NixOS module, this module can import additional modules: |
||||
|
||||
```nix |
||||
# ./module-list/default.nix |
||||
[ |
||||
./example-module1 |
||||
./example-module2 |
||||
] |
||||
``` |
||||
|
||||
```nix |
||||
# ./extra-module/default.nix |
||||
{ imports = import ./module-list.nix; } |
||||
``` |
||||
|
||||
```nix |
||||
# NIXOS_EXTRA_MODULE_PATH=/absolute/path/to/extra-module |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
{ |
||||
# No `imports` needed |
||||
|
||||
services.exampleModule1.enable = true; |
||||
} |
||||
``` |
@ -1,56 +0,0 @@ |
||||
<section xmlns="http://docbook.org/ns/docbook" |
||||
xmlns:xlink="http://www.w3.org/1999/xlink" |
||||
xmlns:xi="http://www.w3.org/2001/XInclude" |
||||
version="5.0" |
||||
xml:id="sec-importing-modules"> |
||||
<title>Importing Modules</title> |
||||
|
||||
<para> |
||||
Sometimes NixOS modules need to be used in configuration but exist outside of |
||||
Nixpkgs. These modules can be imported: |
||||
</para> |
||||
|
||||
<programlisting> |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
{ |
||||
imports = |
||||
[ # Use a locally-available module definition in |
||||
# ./example-module/default.nix |
||||
./example-module |
||||
]; |
||||
|
||||
services.exampleModule.enable = true; |
||||
} |
||||
</programlisting> |
||||
|
||||
<para> |
||||
The environment variable <literal>NIXOS_EXTRA_MODULE_PATH</literal> is an |
||||
absolute path to a NixOS module that is included alongside the Nixpkgs NixOS |
||||
modules. Like any NixOS module, this module can import additional modules: |
||||
</para> |
||||
|
||||
<programlisting> |
||||
# ./module-list/default.nix |
||||
[ |
||||
./example-module1 |
||||
./example-module2 |
||||
] |
||||
</programlisting> |
||||
|
||||
<programlisting> |
||||
# ./extra-module/default.nix |
||||
{ imports = import ./module-list.nix; } |
||||
</programlisting> |
||||
|
||||
<programlisting> |
||||
# NIXOS_EXTRA_MODULE_PATH=/absolute/path/to/extra-module |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
{ |
||||
# No `imports` needed |
||||
|
||||
services.exampleModule1.enable = true; |
||||
} |
||||
</programlisting> |
||||
</section> |
@ -0,0 +1,47 @@ |
||||
<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sec-importing-modules"> |
||||
<title>Importing Modules</title> |
||||
<para> |
||||
Sometimes NixOS modules need to be used in configuration but exist |
||||
outside of Nixpkgs. These modules can be imported: |
||||
</para> |
||||
<programlisting language="bash"> |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
{ |
||||
imports = |
||||
[ # Use a locally-available module definition in |
||||
# ./example-module/default.nix |
||||
./example-module |
||||
]; |
||||
|
||||
services.exampleModule.enable = true; |
||||
} |
||||
</programlisting> |
||||
<para> |
||||
The environment variable <literal>NIXOS_EXTRA_MODULE_PATH</literal> |
||||
is an absolute path to a NixOS module that is included alongside the |
||||
Nixpkgs NixOS modules. Like any NixOS module, this module can import |
||||
additional modules: |
||||
</para> |
||||
<programlisting language="bash"> |
||||
# ./module-list/default.nix |
||||
[ |
||||
./example-module1 |
||||
./example-module2 |
||||
] |
||||
</programlisting> |
||||
<programlisting language="bash"> |
||||
# ./extra-module/default.nix |
||||
{ imports = import ./module-list.nix; } |
||||
</programlisting> |
||||
<programlisting language="bash"> |
||||
# NIXOS_EXTRA_MODULE_PATH=/absolute/path/to/extra-module |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
{ |
||||
# No `imports` needed |
||||
|
||||
services.exampleModule1.enable = true; |
||||
} |
||||
</programlisting> |
||||
</section> |
Loading…
Reference in new issue