···12configuration options.
13:::
140000000000000000000000015Apart from high-level options, it's possible to tweak a package in
16almost arbitrary ways, such as changing or disabling dependencies of a
17package. For instance, the Emacs package in Nixpkgs by default has a
···12configuration options.
13:::
1415+::: {.note}
16+Alternatively, many packages come with extensions one might add.
17+Examples include:
18+- [`passExtensions.pass-otp`](https://search.nixos.org/packages/query=passExtensions.pass-otp)
19+- [`python310Packages.requests`](https://search.nixos.org/packages/query=python310Packages.requests)
20+21+You can use them like this:
22+```nix
23+environment.systemPackages = with pkgs; [
24+ sl
25+ (pass.withExtensions (subpkgs: with subpkgs; [
26+ pass-audit
27+ pass-otp
28+ pass-genphrase
29+ ]))
30+ (python3.withPackages (subpkgs: with subpkgs; [
31+ requests
32+ ]))
33+ cowsay
34+];
35+```
36+:::
37+38Apart from high-level options, it's possible to tweak a package in
39almost arbitrary ways, such as changing or disabling dependencies of a
40package. For instance, the Emacs package in Nixpkgs by default has a