···
The list of available packages in the various ELPA repositories can be seen
with the following commands:
254
-
<example xml:id="module-services-emacs-querying-packages">
255
-
<title>Querying Emacs packages</title>
254
+
<anchor xml:id="module-services-emacs-querying-packages" />
<programlisting><![CDATA[
nix-env -f "<nixpkgs>" -qaP -A emacs.pkgs.elpaPackages
nix-env -f "<nixpkgs>" -qaP -A emacs.pkgs.melpaPackages
nix-env -f "<nixpkgs>" -qaP -A emacs.pkgs.melpaStablePackages
nix-env -f "<nixpkgs>" -qaP -A emacs.pkgs.orgPackages
···
adding it to the list of system packages (see
<xref linkend="sec-declarative-package-mgmt" />). Simply modify your file
<filename>configuration.nix</filename> to make it contain:
270
-
<example xml:id="module-services-emacs-configuration-nix">
271
-
<title>Custom Emacs in <filename>configuration.nix</filename></title>
268
+
<anchor xml:id="module-services-emacs-configuration-nix" />
<programlisting><![CDATA[
environment.systemPackages = [
···
···
<filename>~/.config/nixpkgs/config.nix</filename> (see
<link xlink:href="https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides">Nixpkgs
299
-
<example xml:id="module-services-emacs-config-nix">
300
-
<title>Custom Emacs in <filename>~/.config/nixpkgs/config.nix</filename></title>
295
+
<anchor xml:id="module-services-emacs-config-nix" />
<programlisting><![CDATA[
packageOverrides = super: let self = super.pkgs; in {
···
···
<filename>emacs.nix</filename> in this way:
330
-
<example xml:id="ex-emacsGtk3Nix">
331
-
<title>Custom Emacs build</title>
324
+
<anchor xml:id="ex-emacsGtk3Nix" />
<programlisting><![CDATA[
{ pkgs ? import <nixpkgs> {} }:
···
After building this file as shown in <xref linkend="ex-emacsNix" />, you
···
The Emacs init file should be changed to load the extension packages at
486
-
<example xml:id="module-services-emacs-package-initialisation">
487
-
<title>Package initialization in <filename>.emacs</filename></title>
478
+
<anchor xml:id="module-services-emacs-package-initialisation" />
<programlisting><![CDATA[
···
(setq package-enable-at-startup nil)
···
Then customize the variable <varname>rng-schema-locating-files</varname> to
include <filename>~/.emacs.d/schemas.xml</filename> and put the following
559
-
<example xml:id="ex-emacs-docbook-xml">
560
-
<title>nXML Schema Configuration (<filename>~/.emacs.d/schemas.xml</filename>)</title>
549
+
<anchor xml:id="ex-emacs-docbook-xml" />
<programlisting language="xml"><![CDATA[
···