#+TITLE: NixOS layer

#+TAGS: layer|os

[[file:img/nixos.png]]

* Table of Contents                     :TOC_5_gh:noexport:
- [[#description][Description]]
  - [[#features][Features:]]
- [[#install][Install]]
  - [[#layer][Layer]]
- [[#configuration][Configuration]]
- [[#key-bindings][Key bindings]]
  - [[#nixos-options][NixOS Options]]

* Description
This layer adds tools for better integration of Emacs in NixOS.

** Features:
- Nix-mode using [[https://github.com/NixOS/nix-mode][nix-mode]]
- Auto-completion of NixOS Options using [[https://github.com/travisbhartwell/nix-emacs/blob/master/company-nixos-options.el][company-nixos-options]]
- Helm Lookup for NixOS Options [[https://github.com/travisbhartwell/nix-emacs/blob/master/helm-nixos-options.el][helm-nixos-options]]

* Install
** Layer
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =nixos= to the existing =dotspacemacs-configuration-layers= list in this
file.

* Configuration
On some systems, =company-nixos-options= may be very slow. If this is the case,
see the section on disabling the [[https://github.com/syl20bnr/spacemacs/blob/develop/doc/DOCUMENTATION.org#disabling-layer-services-in-other-layers][disabling auto-complete]] for the =nixos= layer.

* Key bindings
** NixOS Options

| Key binding | Description             |
|-------------+-------------------------|
| ~SPC h >~   | Call helm-nixos-options |
