1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-30 15:09:46 +01:00
Commit graph

160 commits

Author SHA1 Message Date
Naïm Favier
6c78ba7932
docs/contributing: link to NMT's bash-lib (#4125) 2023-06-22 16:35:33 +02:00
Midnight Veil
a10aa82e8a
docs: Document osConfig module argument (#4103)
As mentioned https://github.com/nix-community/home-manager/issues/393#issuecomment-1259996423.

Otherwise only documented in source code, which isn't very findable.
2023-06-19 11:37:28 +02:00
Robert Helgesson
28614ed7a1
lib: add functions to create DAGs from lists 2023-06-05 23:08:30 +02:00
Naïm Favier
96078e4a93
Fix release notes (#4044) 2023-06-01 00:44:06 +02:00
Emily
53ccbe0170
fish: use babelfish for hm-session-vars.sh (#4012)
* home-environment: add `home.sessionVariablesPackage`

Allow the `hm-session-vars.sh` derivation to be referenced from other
modules, e.g. to translate it to fish with babelfish at build time.

* fish: use babelfish for `hm-session-vars.sh`

Translate `hm-session-vars.sh` to fish at system build time,
significantly decreasing shell startup time.

Based on https://github.com/NixOS/nixpkgs/pull/108947 by @kevingriffin.
2023-06-01 00:01:27 +02:00
Robert Helgesson
f1490b8caf
Switch current unstable version to 23.11 2023-05-31 19:11:30 +02:00
Robert Helgesson
33ccc5c285
Switch stable branch to release-23.05 2023-05-31 19:11:29 +02:00
Cynthia Fox
59659243cd
PR_TEMPLATE: Note nix3 test method in checklist (#3972)
* PR_TEMPLATE: Note nix3 test method in checklist

Allows for running with the `nixpkgs` from the lock file, as well as
using a more familiar interface for users of the experimental CLI, which
would've avoided me opening #3971.

Also updates the corresponding note in `docs/contributing.adoc` to have
the correct invocation path.

* PR_TEMPLATE: `the experimental CLI` -> `Flakes`
2023-05-17 12:59:35 +02:00
Naïm Favier
e4272987f7
Drop CODEOWNERS 2023-05-14 12:46:21 +02:00
Jan Tojnar
ea29b1a8d1
docs: Add GVariant cross-references 2023-05-07 12:25:32 +02:00
Jan Tojnar
13d666dd68
docs: Mention GVariant format strings 2023-05-07 12:25:31 +02:00
Jan Tojnar
a0ddb8af40
docs: Mention GVariant auto-coercion at the top 2023-05-07 12:25:30 +02:00
Jan Tojnar
cfa5c2869b
docs: GVariant dictionaries are already supported
The support for dictionaries were introduced in 864ff685fe.
2023-05-07 12:25:29 +02:00
Jan Tojnar
81d5b220cd
docs: Fix broken GVariant docs link 2023-05-07 12:25:28 +02:00
Jan Tojnar
3e906060a8
docs: Add inline anchors for direct linking to GVariant types 2023-05-07 12:25:27 +02:00
witcher
ae79840bc7
doc: replace invalid link (#3881)
The link to the Nix RFC 42 is invalid. Replace this with a valid link to the
upstream NixOS/rfcs repo, pinning it to the commit that introduced the RFC.
2023-04-17 17:53:44 +02:00
Robert Helgesson
d3fd3b9d69
docs: bump nmd
Makes code callouts unselectable.
2023-03-31 00:00:25 +02:00
Robert Helgesson
db37c53760
docs: bump nmd 2023-03-24 20:01:16 +01:00
Damien Cassou
2bf15d3835
docs: reference Stylix in 3rd-party extensions 2023-03-21 08:50:31 +01:00
Robert Helgesson
c8cb60b8a1
home-manager: add init command to main tool
The init command is essentially the old install script but integrated
into the home-manager tool. This simplifies things slightly since we
can use the existing code infrastructure.

The init command is Nix flake aware in the sense that, if we detect
that the user's Nix setup supports flakes, then we also create an
initial `flake.nix` file.

Finally, we update the installation instructions for the Nix flakes
standalone setup to use the new init command.

Zsh completion update provided by Anund <anundm@gmail.com>.
2023-03-15 22:47:04 +01:00
Robert Helgesson
cae54dc45c
home-manager: change default configuration home
This changes the default configuration location for Home Manager
configurations from

    $XDG_CONFIG_HOME/nixpkgs

to

    $XDG_CONFIG_HOME/home-manager

The old location is still supported but using it will trigger a
warning message.

Fixes #3640
2023-03-14 23:10:54 +01:00
Robert Helgesson
da15dd1f27
docs: minor typographic improvement in release note 2023-03-14 21:44:06 +01:00
Robert Helgesson
8d2b898532
docs: update description of uninstall command
The removal of Home Manager generations is now non-optional.
2023-03-13 22:50:48 +01:00
cbarrete
36999b8d19
docs: simplify flake-specific instructions in the documentation (#3737)
Install home-manager via `nix run` rather than `nix-build` then running
the activation script out of the store manually.

Co-authored-by: Cédric Barreteau <cbarrete@users.noreply.github.com>
2023-03-08 11:29:47 +01:00
Robert Helgesson
f807788035
docs: add chapter on 3rd-party extensions
Fixes #3459
2023-03-01 22:09:38 +01:00
Robert Helgesson
7b6e507151
docs: slight improvement of Flake documentation 2023-02-26 16:20:40 +01:00
Robert Helgesson
02ac667557
docs: bump nmd
Fixes cross-compilation.
2023-02-07 23:28:21 +01:00
Robert Helgesson
c43d4a3d6d
firefox: manage add-ons per-profile
Internally we already managed them per-profile but exposed a global
option to maintain backwards compatibility. The benefit to having
per-profile extensions is quite large though, so it is time to switch.

Users of the global extensions option will get an error message that
indicates how to edit their configuration to work again.
2023-02-05 23:54:56 +01:00
Bernardo Meurer
6d2ba4654d
home-manager: pass --refresh to nix (#3624)
This flag is useful to force Nix to re-fetch cached flakes. Without it,
you cannot deploy from a non-local flake in quick succession, since the
caching causes the flake to not be re-fetched.
2023-02-05 11:14:03 +01:00
Mario Rodas
c59f0eac51
treewide: fix typos (#3618) 2023-01-24 11:30:04 +01:00
Robert Helgesson
12d43fd40a
docs: bump nmd
Fixes #3612
2023-01-23 23:07:09 +01:00
Robert Helgesson
275ab72891
docs: bump nmd
Fixes #3605
2023-01-20 22:36:43 +01:00
Robert Helgesson
2c29ae48f9
docs: bump nmd 2023-01-18 12:26:16 +01:00
Robert Helgesson
6c5b08a0c1
docs: fetch nmd from sourcehut 2023-01-18 12:26:15 +01:00
Naïm Favier
bd3efacb82
docs: mention how to override the home-manager flake input (#3556) 2023-01-17 10:35:01 +01:00
Robert Helgesson
2827b53064
docs: bump nmd
- Fix paragraphs in option field texts containing Markdown.

- Fix generation of documentation for options with Markdown in
  multiple fields.

- Support AsciiDoc in module option documentation.
2023-01-15 00:11:26 +01:00
Zhaofeng Li
176e455371
home-manager: Add home-manager search path to EXTRA_NIX_PATH (#3241) 2023-01-10 10:35:00 +01:00
Robert Helgesson
f1b1594e7b
docs: bump nmd
Fixes #3579
2023-01-09 23:06:21 +01:00
Gaétan Lepage
684bdb386c
i3: remove i3/i3-gaps distinction (#3563) 2023-01-08 22:05:36 +01:00
Robert Helgesson
9e565f0d9d
docs: bump nmd
Fixes #3573
2023-01-07 12:08:34 +01:00
Robert Helgesson
709a87fe33
docs: bump nmd
- Introduces support for Markdown documentation in modules.
2023-01-06 23:51:39 +01:00
Robert Helgesson
3ecd5305a4
docs: bump nmd
- Simplifies DocBook build by generation version DocBook 5 files
  directly.

- Make DocBook generate consistent anchor IDs.
2023-01-05 22:40:52 +01:00
Anders Kaseorg
c55fa26ce0
home-manager: pass -L/--print-build-logs to nix build
When building from a flake, `nix build` hides the build output by
default, with a `-L`/`--print-build-logs` option to show it. Pass this
option along from `home-manager` if the user provides it.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-25 12:09:29 +01:00
Mario Rodas
b5c083300b
treewide: fix typos 2022-12-05 12:58:02 +01:00
James Chen-Smith
90b0e5f440
flake: correct nix-darwin flake description
Corrects copy/paste mistake in the nix-darwin flake description.
2022-12-04 15:26:36 +01:00
Robert Helgesson
71fa4cdf9c
home-manager: update stable version to 22.11 2022-12-02 11:49:58 +01:00
Andrew Marshall
cc58d31953
flake: Expose tests to allow running purely (#3412)
* flake: Expose tests to allow running purely

The existing way to run tests with `nix-shell` relies on impure usage of
`<nixpkgs>`. This can lead to failures when the local nixpkgs is
incompatible with the locked one. I.e., where CI is passing but a
contributor may experience a failure.

So, expose tests as `devShells.tests` to use the locked nixpkgs and
allow easy invocation via `nix develop`.

* tests: Remove impure path

With Nix 2.10+ and pure evaluation mode e.g.

```
nix run nixpkgs/nixos-unstable#nixVersions.nix_2_10 -- develop -i .#tests.zplug-modules
```

this test would fail with:

> error: the path '~/.customZplugHome' can not be resolved in pure mode

Since the test only cares that it is a path, rather than anything about
its contents, use a dummy empty directory.
2022-11-27 01:37:24 +01:00
Robert Helgesson
62cb5bcf93
Switch master branch version to 23.05 2022-11-24 23:13:38 +01:00
Robert Helgesson
886675991b
home-environment: reset PATH in activation script
Starting with state version 22.11 we completely reset the PATH
variable in the activation script. This is to avoid impurities and
unexpected results if the activation script accidentally uses a
command found in the user's PATH.
2022-11-07 15:09:36 +01:00
Robert Helgesson
d1191c6d05
docs: bump nmd
Fixes #3342
2022-10-20 08:47:36 +02:00
Liam Petrie
864ff685fe
lib: add two new gvariant types
Add GVariant variant and dictionary entry types
2022-09-29 13:05:51 +02:00
mtths
9da6c0232e
docs: explain how to enable flakes on NixOS
Since `nix.conf` is generated when using NixOS, it cannot be edited.

Instead we add the instructions described by Xe in
https://xeiaso.net/blog/nix-flakes-1-2022-02-21
2022-09-29 12:15:38 +02:00
Robin Stumm
65b65ce5ef
broot: use upstream defaults, allow all config options (#2644)
* broot: use freeformType for config

* broot: use defaults from upstream

closes #2395

* broot: generate shell function

* broot: add @dermetfan to CODEOWNERS

* broot: rename `config` option to `settings`

* broot: make example more idiomatic

Co-authored-by: Nicolas Berbiche <nic.berbiche@gmail.com>

Co-authored-by: Nicolas Berbiche <nic.berbiche@gmail.com>
2022-09-26 20:36:06 +02:00
Robert Helgesson
5427f3d1f0
mpd: use XDG music dir if XDG user dirs are enabled
If the user has enabled the XDG user directories module then we can
use the XDG music directory in the MPD module. Otherwise we'll leave
the option undefined so that the user is forced to define the
directory to use.

This applies to state version 22.11 and above.

Fixes #3225
2022-09-16 13:41:40 +02:00
DrRuhe
9f7fe353b6
docs: replace use of # by $ sudo
The hope is that this makes it more obvious that these commands should
be run as the root user.
2022-09-09 23:34:29 +02:00
MaxCan-Code
8e4220e6c6
flake: add templates (#2892)
Add example flakes from `docs/nix-flakes.adoc` as templates.
2022-08-26 22:37:16 -04:00
hab25
b13946438f
docs: improve contributing documentation
- Fix name of file generated by `$ nix-build -A docs.manPages`.

- Note "Capitalize the subject line" as an exception to the seven
  rules. Not even the example commit message (closely below this
  change) follows this rule.
2022-07-27 14:10:32 +02:00
Robert Helgesson
602f2ce59c
docs: note support for 2.4 or later for Flake 2022-07-12 23:35:46 +02:00
Fisher Sun
d6d600e76d
docs: remove bit about Nix 2.4 not being supported
With #2840, Nix 2.4 is supported.
Resolves #3061.

Signed-off-by: Fisher Sun <fisher521.fs@gmail.com>
2022-07-12 23:32:47 +02:00
Thiago Kenji Okada
177f1887d4
compton: remove
This module was deprecated since release 20.03 according to the news, so
it can be removed.
2022-07-12 11:21:50 +02:00
Thiago Kenji Okada
b908e61dfa
picom: sync module with the NixOS version
This brings a few advantages:

- Use of float instead of strings to represent float values,

- Use of structure settings, and

- Better type checking for some settings

Also add thiagokokada as codeowner of picom.
2022-07-12 11:21:49 +02: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
Pol Dellaiera
72a135b093
docs: fix homeManagerConfiguration documentation 2022-06-26 20:05:31 +02:00
Naïm Favier
f26946858e
flake: remove superfluous arguments
Remove `stateVersion`, `username`, and `homeDirectory` as they can be
set in the configuration directly. Together with the previous commit,
this makes setting `stateVersion` explicitly mandatory.

Also replace `configuration` by `modules`, which expects a list of
Home Manager modules.

Also remove `system` which was made useless by #3028.
2022-06-26 01:01:57 +02:00
Naïm Favier
e0baf8ee0c
docs: disable _module.check for nixos/nix-darwin modules
Currently we're maintaining a "mock" module made of sink options,
which requires updating whenever the definitions in the
nixos/nix-darwin modules change.

Instead, set `_module.check` to false so that definitions in those
modules are simply ignored.
2022-06-25 11:47:47 +02:00
David Baynard
da55d18ba2
docs: fix typo in nix-darwin flake
The nix-darwin documentation uses `darwin` not `nix-darwin` to refer
to its own flake, and so this is now consistent (and correct) and uses
`darwin`.
2022-06-25 11:17:37 +02:00
Robert Helgesson
3c710201d5
version: remove default value
The user should always explicitly set the state version they wish to
use. Indeed, the configuration generated by the Home Manager install
script has set this option for a long time. This removal should
therefore not affect many users.
2022-06-21 00:06:53 +02:00
Naïm Camille Favier
ce8266dedc
docs: revert to # prompt on NixOS 2022-06-20 00:35:04 +02:00
Naïm Favier
a0e7ffe7aa
docs: use $ prompts for nix-channel commands
Channels should be added for the normal user, not for root, because the
home-manager configuration is not supposed to be evaluated as root.

Fixes https://github.com/nix-community/home-manager/issues/2985
2022-06-18 20:59:51 +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
684e85d01d
docs: set 22.11 as next version 2022-06-01 21:56:46 +02:00
Robert Helgesson
ac2287df5a
docs: set 22.05 as stable version 2022-06-01 21:56:45 +02:00
Robert Helgesson
acad715f78
docs: update copyright year 2022-06-01 21:42:55 +02:00
Robert Helgesson
e66f0ff69a
docs: bump nmd 2022-05-23 23:09:24 +02:00
Farseen
8afee75d0d
dconf: note that system dconf must be enabled
Before enabling dconf in Home Manager, dconf must be enabled in system
config.

Otherwise it will fail like this:

```
$ home-manager switch
Starting Home Manager activation
Activating checkFilesChanged
Activating checkLinkTargets
Activating writeBoundary
Activating installPackages
replacing old 'home-manager-path'
installing 'home-manager-path'
Activating dconfSettings
error: GDBus.Error:org.freedesktop.systemd1.NoSuchUnit: Unit dconf.service not found.
```
2022-03-26 09:33:10 +01:00
Robert Helgesson
ac94041153
docs: bump nmd
Fixes #2821
2022-03-24 00:41:16 +01:00
midchildan
c7a13f76a7
launchd: initial support for LaunchAgents 2022-02-26 10:32:19 +01:00
Daniel Siepmann
5b208b42b2
docs: section how to update system 2022-02-17 22:57:52 +01:00
Caleb Chase
30082a623a
docs: fix standalone flake setup 2022-02-17 22:45:37 +01:00
Shamrock Lee
23a9f9127c
home-manager: add more pass-through options
Specifically, pass through --[extra-]experimental-features to Nix.
2022-02-15 22:45:59 +01:00
Shamrock Lee
03b7495183
docs: fix typo and clarify 2022-02-15 22:44:41 +01:00
Wout Mertens
7c2ae0bdd2
faq: explain how to let HM manage shell profiles 2022-02-13 00:02:53 +01:00
Shamrock Lee
85bbc6cc12
docs: move Nix Flakes documentation to manual
In the manual:
*   Add chapter Nix Flakes
*   Add links to sections of chapter "Using Home Manager"

In README.md:
*   Remove section "Nix Flakes"
*   Add manual reference at the buttom of section "Installation"
2022-02-10 22:15:03 +01:00
Thibault Lemaire
fb939d1acf
docs: note how to get status of activation service
Add a note explaining how to get the output of the Home Manager
activation script when it's used as a NixOS module.
2022-01-28 23:01:26 +01:00
Robert Helgesson
1477eb1555
docs: add link to Matrix room
Fixes #2639
2022-01-16 18:48:01 +01:00
rcerc
a5dd5d5f19
docs: clarify stand-alone installation instructions
Specifically,

- include system-wide Nixpkgs channel so `NIX_PATH` solution also
  works on multi-user installations;

- additionally link to Nix Discourse reply for more information on
  `NIX_PATH`; and

- remove note about relog on NixOS since all the channels in
  `~/.nix-defexpr/channels/` are included by default, so the Home
  Manager channel should be picked up automatically.
2022-01-14 00:49:04 +01:00
Robert Helgesson
adaea605db
home-manager: document the --version command option
Fixes #2604
2022-01-02 08:33:32 +01:00
Robert Helgesson
a3457d3f85
ci: verify that meta.maintainers evaluate
Fixes #2588
2021-12-29 10:16:19 +01:00
Robert Helgesson
aef97988da
docs: add release note about translation support 2021-12-20 22:58:54 +01:00
polykernel
c7592b747b
treewide: prefer XDG variables over dot directories
Currently, dot directories and XDG base directories are used
inconsistently in the Home Manager option declarations. This creates
ambiguity for the user as to where the location of the file should be
albeit this is rarely encountered in practice as it is sufficient to
read upstream documentation. The rationale is to make declarations
consistent and make a clear distinction between hardcoded and modular
specifications.

References to ~/.config in relevant nixpkgs modules were untouched as
the location is hardcoded upstream[1]. Furthermore, modules of
programs which do not follow XDG specifications were also untouched.

Generalization of tilde(~) expansions to $HOME were also considered,
however there isn't sufficient rationale despite the use of $HOME
being more universal. The expansion is standardized in POSIX[2] and is
essentially portable across all shells, thus there is no pragmatic
value to introducing the change.

[1] https://github.com/nixos/nixpkgs/blob/master/pkgs/top-level/impure.nix
[2] https://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_06_01
2021-12-10 23:51:44 +01:00
Nicolas Berbiche
1aaa1a033b
docs: add note about Waybar modules 2021-12-03 18:57:59 +01:00
Nicolas Berbiche
290a188dad
docs: change stable from 21.05 to 21.11 2021-12-03 18:50:22 +01:00
Robert Helgesson
579f2e8beb
Switch to 22.05 as current development release 2021-11-25 22:29:49 +01:00
Robert Helgesson
dc2a4e4146
Switch to 21.11 as stable release 2021-11-25 22:22:26 +01:00
oxalica
df931a59a5
taskwarrior: change config file location and use relative theme paths (#2455)
After taskwarrior 2.6.0, its default config file now locates at
`$XDG_CONFIG_HOME/task/taskrc`, and builtin themes can be included
via relative paths.
2021-11-23 21:33:03 -05:00
Robert Helgesson
2452979efe
docs: bump nmd 2021-11-18 16:32:15 +01:00
Mmequignon
d85bf67c48
pet: fix settings format issue
Before it was not possible to place setting values outside the
`General` section.
2021-11-17 23:42:21 +01:00
Robert Helgesson
2dcd9eb021
docs: minor rewording in usage documentation 2021-11-15 20:52:15 +01:00
Robert Helgesson
c855cdde20
docs: make README refer to installation chapter
This gives a single source of truth of installation instructions and
we can also point to instructions for the NixOS and nix-darwin
modules.
2021-11-15 20:51:45 +01:00
Robert Helgesson
e785e67977
docs: make text more specific about Nix 2.4 support 2021-11-15 19:58:09 +01:00