Commit graph

1544 commits

Author SHA1 Message Date
Connor Prussin 9f2b766d0f
[nixos] Fix race condition with user units (#2286) (#2287)
One of the things managed by the `home-manager-<username>` unit is the systemd
user directory `.config/systemd/user`.  However, this directory needs to be in
place completely before systemd user sessions start up or the user sessions will
come up with an incomplete listing of enabled units, etc.

There was a race condition where nothing prevented
`systemd-user-sessions.service` from starting ahead of the systemd user
directory's initialization completing.  This commit makes
`home-manager-<username>` finishes _before_ we start
`systemd-user-sessions.service` to avoid such race condition.

This issue was probably not all that noticeable in most cases, but when using a
non-persistent root config (i.e. tmp on / or
https://grahamc.com/blog/erase-your-darlings) the race condition triggering
causes all kinds of issues on each reboot.
2021-08-21 23:51:31 -04:00
Colin Summers b39647e52e
brave: fix config dir path (#2173)
Changes install path for extensions from `~/.config/brave` to
`~/.config/BraveSoftware/Brave-Browser` on Linux.

(cherry picked from commit 9e3c402972)
2021-07-30 14:55:12 +02:00
Bjørn Forsman 9c0abed522
taskwarrior: don't create dataLocation with home.file
With

  programs.taskwarrior.dataLocation = /absolute/path

(outside of $HOME) the current implementation wrongly creates
$HOME/absolute/path (due to how home.file is implemented).

Since taskwarrior creates the dataLocation automatically on first run,
there is actually no need for HM to create that directory.

Additional benefit, the .keep symlink that HM creates as a side-effect
no longer appears in the taskwarrior data directory.

Fixes #2207.

(cherry picked from commit 6c984bd675)
2021-07-24 22:27:24 +02:00
Naïm Favier 03db229cc2
setxkbmap: reset options before setting new ones (#2160)
(cherry picked from commit 4971b9cad0)
2021-07-24 22:26:43 +02:00
Kid 88de11327c
README: fix outdated description (#2131)
* README: fix outdated description

(cherry picked from commit 04955ca970)
2021-07-24 22:25:29 +02:00
Josh Holland 35a24648d1
direnv: add enableFlakes option for enableNixDirenvIntegration (#2089)
NixOS/nixpkgs@03310df843 disabled flake
support by default, so we now need to build a custom package and use it
if the user wants to `use flake` successfully.  This should fix #2087.

(cherry picked from commit e0f2949c98)
2021-06-21 00:35:57 +02:00
Naïm Favier d370447e28
nixos: set stopIfChanged to false (#2105)
There is no ExecStop so we can just restart the service.

(cherry picked from commit 4ed6705b0f)
2021-06-21 00:35:14 +02:00
puzzlewolf 2bfad60b73
etesync-dav: fix typo (#2067)
Upstream (https://github.com/etesync/etesync-dav/blob/master/README.md#configuration-and-running) uses 37358 as default port.

(cherry picked from commit e9ed9c2e11)
2021-06-21 00:32:23 +02:00
bb010g 8d64c164fc
home-manager: pass on --debug option (#2049)
* man-home-manager: remove trailing whitespace

* home-manager: pass on `--debug` option

(cherry picked from commit 5eb199e937)
2021-06-21 00:32:22 +02:00
Naïm Favier ffd6c84c25
dunst: add the whole package to home.packages (#2079)
The `dunst` package provides the `dunstctl` and `dunstify` command-line utilities which are useful to have.

(cherry picked from commit dba802c1d9)
2021-06-21 00:32:21 +02:00
Robert Helgesson d40f84a340
ci: run tests against nixos-21.05 2021-06-21 00:21:09 +02:00
Robert Helgesson 148d85ee83
docs: mark 21.05 as stable version
(cherry picked from commit 5c1415d67f)
2021-06-05 20:31:59 +02:00
Dusk Banks fd5fbb0a24
texlive: add packageSet option
(cherry picked from commit 45f9cb06a9)
2021-06-04 08:48:46 +02:00
Dusk Banks 0ff5951285
texlive: "Texlive" -> "TeX Live"
(cherry picked from commit c12d53dd7c)
2021-06-04 08:48:45 +02:00
Robert Helgesson b8edffb918
Replace references to pkgs.gnome3 by pkgs.gnome
(cherry picked from commit d3cdabb5c9)
2021-06-04 08:48:44 +02:00
Robert Helgesson cd33531e59
docs: minor additional issue template update
(cherry picked from commit 9e253a8c30)
2021-06-04 08:48:18 +02:00
Robert Helgesson 8c72c4f981
docs: update issue template
Most importantly change chat contact information.

(cherry picked from commit 5573c10ea4)
2021-06-04 08:48:17 +02:00
bb010g bfb65f2d8d
jq: add package option
(cherry picked from commit 0e329cee4c)
2021-06-04 08:48:16 +02:00
Robert Helgesson 913f722560
files: remove assertion on recursive onChange
See discussion in

  https://github.com/nix-community/home-manager/pull/2031

(cherry picked from commit d2aaeac42c)
2021-06-04 08:48:15 +02:00
Robert Helgesson 2f997178fa
files: fix use of onChange with directory source
Previously, the comparison would not handle directory comparison
correctly, always finding that the source and target differed. This
would trigger the `onChange` script on each activation.

Fixes #2004

(cherry picked from commit 07ad6a4f76)
2021-06-04 08:48:14 +02:00
Bart Bakker ffd4d9955b
htop: fix preserving the order of meters (#2068) (backport)
Pass meters for formatting in a list of attrsets so that ordering can be
preserved. In addition provide some mode-specific functions to create these
attrsets, to make for a bit nicer config.

This fixes #2060 on 21.05.
2021-06-03 22:29:06 -04:00
Robert Helgesson ab64dc3249
docs: make OFTC upper case 2021-05-29 20:22:40 +02:00
Robert Helgesson 3591cd2b3b
docs: switch IRC to OFTC 2021-05-29 19:29:15 +02:00
Joe Hermaszewski 0e6c61a440
programs.neovim: Set customRC for new nixpkgs (#2039)
Previously with newer nixpkgs revisions extraConfig would not make it into init.nvim
2021-05-27 22:05:20 +02:00
Ilan Joselevich ddf35436b7
nextcloud-client: add startInBackground option (#2038)
* nextcloud-client: add runInBackground option

* nextcloud-client: Change runInBackground description

Co-authored-by: Sumner Evans <me@sumnerevans.com>

* nextcloud-client: Use optionalString for the runInBackground option

Co-authored-by: Sumner Evans <me@sumnerevans.com>

* nextcloud-client: Remove "defaultText" in the runInBackground option

* nextcloud-client: Fixed formatting

* nextcloud-client: Rename runInBackground to startInBackground

Co-authored-by: Sumner Evans <me@sumnerevans.com>
2021-05-27 10:54:20 -06:00
Rosario Pulella b840707a87
firefox: Always create profile directories
Write ".keep" file in profile dir for each profile regardless of any
other settings to creare profile dir.
2021-05-26 09:41:43 +02:00
Robert Helgesson 90493027e3
mbsync: fix news entry 2021-05-23 20:32:01 +02:00
Karl H 64607f58b7
isync/mbsync: replace master/slave with far/near (#1776)
* isync/mbsync: replace master/slave with far/near

  isync/mbsync: update tests to match new changes

* isync/mbsync: use mkRenamedOptionModule to alert user to near/far change

* isync/mbsync: use warnings to alert about master/slave far/near change

  Fix capitalization

  isync/mbsync: fix nitpicks

* isync/mbsync: run format script

* isync/mbsync: include new test for expected master/slave warnings

* isync/mbsync: add news about changes
2021-05-22 15:31:06 -06:00
Nick Hu 4f70f49cec
Add systemd target tray.target (#2027)
This target is for systemd units that require a system tray to be
running.

This also fixes taffybar.service: previously, systemd would consider it
to be active (running) before it was actually ready to accept tray
icons.
2021-05-22 03:15:12 +01:00
Scott Olson 82ab1ad467
syncthing: fix news link (#2032) 2021-05-20 20:23:55 -06:00
Bart Bakker 3d18912f5a
htop: fix deprecation warnings (#2026)
Previous patch on deprecation warnings broke use of old options due to function
call with too many arguments. This fixes the arguments so deprecation warnings
are properly traced while preserving old configuration options.
2021-05-19 11:38:14 +02:00
Bruno BELANYI b449cb77b1
firefox: deprecate 'enableGnomeExtensions'
Fixes #1990.
2021-05-19 08:51:52 +02:00
Nicolas Berbiche cced902dda
gpg: document lists are converted to duplicate keys (#2025) 2021-05-18 22:58:38 -06:00
Bart Bakker 91450f23ce
htop: replace individual option with 'settings' (#1844)
* htop: add some missing meters
* htop: replace individual options with 'settings'
Deprecate all options and introduce `settings` for setting htop configuration
values in Nix configuration.

Use `lib.htop` to provide `fields` and `modes` for easy access to htop's integer
configuration. And `leftMeters` and `rightMeters` functions for building the
separate `*_meters` and `*_meter_modes` attributes.

* htop: add release-notes 21.05 entry
* htop: improve deprecation warnings

Move default configuration into `settings` and make deprecated options default
to `null`. Print deprecation warnings for any option that is non-null --
i.e. only show warnings for explicitly specified deprecated options.

* htop: make self code owner of module
* release notes: fix invalid programs.htop xref
2021-05-19 01:36:08 +02:00
Pierre Labadens ff616b2734
foot: add module
Foot is a fast terminal emulator for Wayland. It can optionally be run
in a client-server configuration.

There are three unit tests to handle an empty configuration, the
default configuration, and systemd service file generation.
2021-05-18 22:29:41 +02:00
Nick Hu 73ecbd3722
Revert "status-notifier-watcher: introduce unit start delay"
This reverts commit 02c1f8d416.
2021-05-18 22:12:59 +02:00
Nick Hu 3612ca58e8
syncthing: make syncthing tray package configurable (#1257)
Also sets the default syncthing tray package to
https://github.com/Martchus/syncthingtray instead of
https://github.com/sieren/QSyncthingTray, which indirectly fixes #603
2021-05-18 15:43:17 +01:00
Robert Helgesson f9e45390de
scmpuff: use pkgs.scmpuff 2021-05-18 00:47:40 +02:00
Robert Helgesson adbabcd0a0
gtk: fix gtk2-basic-config test 2021-05-18 00:47:15 +02:00
Robert Helgesson e9b7d12e06
bash: generate files using writeShellScript
This ensures that the generated file is syntactically valid.

Issue #2015
2021-05-18 00:46:04 +02:00
Robert Helgesson 794d08a1d8
home-environment: generate checked activation script
By using `writeShellScript` when writing the activation script we
automatically get the right shebang and also get syntax validation.

Issue #2015
2021-05-18 00:18:57 +02:00
Ivan Kovnatsky b0688a631b
i3status-rust: fix bars.block example (#2016) 2021-05-17 11:25:03 -06:00
Sebastian Sellmeier 6a471f1b11
i3,sway: add option for default workspace (#2002)
Related to #695
2021-05-16 22:54:53 -06:00
Tad Fisher 01ec2aaefe
systemd: revert systemd-environment-generator usage for environment variables (#2001) 2021-05-16 17:43:50 -04:00
asymmetric 77188bcd6e
services/kanshi: add module example (#2008) 2021-05-15 23:17:48 -04:00
Tad Fisher 23769994e8
xdg.systemDirs: init module (#1797)
There is a need to manage XDG Base Directory system directory
environment variables in Home Manager modules. There is an existing
mechanism in `targets.genericLinux.extraXdgDataDirs', but this does not
apply to NixOS systems.

Furthermore, it is important that `XDG_CONFIG_DIRS' and `XDG_DATA_DIRS'
are set in both login shells (to support getty and SSH sessions) as well
as the systemd user manager (to propagate them to user services and
desktop environments).

The first need is addressed by adding the `xdg.systemDirs' module, which
configures lists of directory names for both `config' and `data'
directories. These are then set in
`$XDG_CONFIG_DIR/environment.d/10-home-manager.conf' and picked up by
the systemd user manager.

To make these, and other variables set in
`systemd.user.sessionVariables', available in login shells, an
additional step is added to `etc/profile.d/hm-session-vars.sh' which
exports the result of
`user-environment-generators/30-systemd-environment-d-generator' which
is shipped with systemd. The effect of this generator is to print
variables set on the systemd user manager such that shells can import
these into their environment.
2021-05-10 20:14:42 -04:00
Bruno BELANYI 3b799f6ea4
nix-index: add module (#1984)
`nix-index` is a tool to quickly locate the package providing a certain
file in `nixpkgs`. It indexes built derivations found in binary caches.

This module adds the shell integration for its `command-not-found`
script for interactive shells.
2021-05-09 18:13:10 -04:00
Bruno BELANYI 7d765d8f46
firefox: do not override other attributes in 'cfg' (#1988)
Closes #1962.
2021-05-09 18:06:04 -04:00
Robert Helgesson 15a2953c81
powerline-go: avoid dependency in tests 2021-05-09 12:23:44 +02:00
Robert Helgesson e42e147b58
Remove some usage of config.lib.dag
The `lib.hm.dag` attribute set should always be preferred.
2021-05-09 12:13:31 +02:00