Commit Graph

16 Commits

Author SHA1 Message Date
Emily 59b933653a docs: use `nixosOptionsDoc`
Output is mostly unchanged aside from some minor typographical and
formatting changes, along with better source links.

We temporarily export `options.docBookForMigration` to allow
`nix-doc-munge` to check its conversions.
2023-07-17 16:49:35 +01:00
Robert Helgesson 9550595502
docs,tests: fetch nmd and nmt using fetchTarball
This simplifies the code a bit and avoids using experimental Flake
functionality. If Flakes become stable before NixOS 22.11 then we can
consider having nmd and nmt as Flake inputs. Maybe could then also
avoid the need for flake-compat.
2022-06-26 22:22:46 +02:00
Naïm Camille Favier 64ab7d6e8d
Prepare inclusion in nixos-search (#2971)
* Add flake.lock and clean up flake.nix

Add a lockfile to work around https://github.com/NixOS/nix/issues/6541
(and because it's a good idea anyway).

Also use flake-utils, and restrict ourselves to the five platforms
supported by nixpkgs. Otherwise, the IFD for nmd fails on weird
platforms. This fixes `nix flake check`.

Remove the redundant `apps` output, see https://github.com/nix-community/home-manager/pull/2442#issuecomment-1133670487

* nixos,nix-darwin: factor out into a common module

* nixos,nix-darwin: make `home-managers.users` shallowly visible

Make sure the option is included in the NixOS/nix-darwin manual (but the
HM submodule options aren't).

Also add a static description to the HM submodule type so that we don't need to
evaluate the submodules just to build the option manual. This makes
nixos-search able to index the home-manager flake.

Also clean up some TODOs.

* flake: add nmd and nmt

This avoids having to use `pkgs.fetchFromGitLab` in an IFD, which causes
issues when indexing packages with nixos-search because `pkgs` is
instantiated with every platform.
2022-06-07 20:45:06 +02:00
Robert Helgesson a3457d3f85
ci: verify that `meta.maintainers` evaluate
Fixes #2588
2021-12-29 10:16:19 +01:00
Robert Helgesson 7ef3db3730
docs: rename "doc" directory to "docs"
Also remove `CONTRIBUTING.adoc` and `FAQ.adoc` from project root since
GitHub knows to pick them up from the docs directory.

Fixes #2273
2021-08-17 19:35:11 +02:00
Damien Cassou 6f683d9726
home-manager: add documentation to root `default.nix`
This adds documentation related packages to default.nix to allow
building documentation separately from building a Home Manager
configuration.
2020-06-11 22:53:33 +02:00
Matthew Bauer 0e2858af94
Add path attribute to root `default.nix`
This makes it possible to refer to the path of Home Manager when you
just have a Nix expression, not the actual source. Some things run
import on a source and just give access to the result of the import,
not the source.

PR #1259
2020-05-26 19:25:55 +02:00
Robert Helgesson 45abf3d38a
Apply `nixfmt` on many files 2020-02-02 01:07:28 +01:00
arcnmx 2c07829be2
home-manager: use `callPackage` where appropriate 2019-04-06 18:48:29 +02:00
Robert Helgesson b8b391ad18
tests: remove tests attribute from root default.nix
Having it there prevented, e.g., `nix-env -qaP` from working in some
cases.

Fixes #509
2019-02-23 22:32:44 +01:00
Robert Helgesson 6d56abcec1
tests: add initial test framework 2018-12-11 00:57:58 +01:00
Robert Helgesson 1bc59f7290
allow Home Manager to be used as a NixOS module
This is a NixOS module that is intended to be imported into a NixOS
system configuration. It allows the system users to be set up directly
from the system configuration.

The actual profile switch is performed by a oneshot systemd unit per
configured user that acts much like the regular `home-manager switch`
command.

With this implementation, the NixOS module does not work properly with
the `nixos-rebuild build-vm` command. This can be solved by using the
`users.users.<name?>.packages` option to install packages but this
does not work flawlessly with certain Nixpkgs packages. In particular,
for programs using the Qt libraries.
2018-02-07 20:50:01 +01:00
Robert Helgesson 06d4f39e7b
home-manager: use `shellHook` to install
This changes the installation command from

    nix-shell $HM_PATH -A install --run 'home-manager switch'

to

    nix-shell $HM_PATH -A install

The added shell hook will print some useful information and run
`home-manager switch`.
2017-11-29 23:48:58 +01:00
Robert Helgesson 455ce37398
home-manager: avoid unnecessary copy 2017-11-20 14:02:28 +01:00
Robert Helgesson bf3a8c6383
home-manager: point <home-manager> to project root
Before this path would point to the modules path. Using the project
root instead makes it possible to set `<home-manager>` to point to a
downloadable archive of Home Manager. This should make it
significantly easier to install and keep Home Manager up to date.

To match this change we also deprecate the Home Manager option

    programs.home-manager.modulesPath

and instead ask users to use

    programs.home-manager.path
2017-10-24 01:14:22 +02:00
Robert Helgesson d7d02c3ce8
Initial import 2017-01-14 13:15:24 +01:00