Commit graph

867 commits

Author SHA1 Message Date
rcerc 4c5106ed0f
firefox: reuse escapeXML from Nixpkgs 2022-07-15 14:11:50 +02:00
Jonas Heinrich 2c94b9801f
librewolf: add module 2022-07-13 15:31:25 +02:00
ash 66d7007e43
mpv: prohibit string values in scripts
Strings as scripts don't currently work, and probably haven't worked
since b567d273 (mpv: use wrapMpv instead of mpv-with-scripts,
2020-05-31).
2022-07-13 14:52:46 +02:00
ash 241a375f49
keychain: set SHELL correctly in bash and zsh
bash and zsh apparently handle command substitution slightly differently
than fish. in bash/zsh:

$ export FOO=x
$ FOO=y echo $(sh -c 'echo $FOO')
x

whereas in fish:

$ export FOO=x
$ FOO=y echo $(sh -c 'echo $FOO')
y

so we have to assign $SHELL within the substitution for bash and zsh.
2022-07-13 14:35:52 +02:00
Congee 0639aa34f1
git: add option to set difftastic display setting 2022-07-12 10:48:26 +02:00
Maxime Brunet 8160b3b45b
zsh: source zsh-syntax-highlighting at the end of .zshrc (#3068)
zsh-syntax-highlighting.zsh must be sourced at the end of the .zshrc file, otherwise widgets created after are not properly highlighted (e.g. from oh-my-zsh): https://github.com/zsh-users/zsh-syntax-highlighting#faq
2022-07-07 18:57:27 -06:00
Philipp Mildenberger ef990143b6
nushell: fix non-nullable configFile and envFile, fixes #3050 (#3060) 2022-07-07 00:49:50 -06:00
Matthew Toohey 223b9deead
pistol: add module 2022-06-25 01:00:32 +02:00
Michael Forster 65bcfaccc5
micro: add module
This adds initial bare-bones support for the `micro` editor.
2022-06-24 19:19:11 +02:00
Samuel Tschiedel fd047c84f7
mcfly: add fuzzy search factor option
Per the [docs], MCFLY_FUZZY is no longer a boolean, taking now a
positive integer that controls the fuzziness factor.

[docs]: https://github.com/cantino/mcfly#fuzzy-searching

Co-authored-by: Robert Helgesson <robert@rycee.net>
2022-06-24 18:22:15 +02:00
Nick Bathum e622bad163
neovim/coc: fix withNodeJs value when enabling coc (#3048) 2022-06-22 14:14:18 -06:00
Eliza Velasquez d059b9448a
mujmap: add module
mujmap is a tool that synchronizes mail between a mail server and
notmuch via JMAP. It's very similar to lieer, so I heavily based the
implementation of the notmuch module on lieer's. I did not include an
equivalent to lieer's periodic synchronization service, however,
because I plan to soon introduce a daemon mode to mujmap.

https://github.com/elizagamedev/mujmap
2022-06-22 00:33:10 +02:00
Shamrock Lee 60b064249d
treewide: remove trailing white spaces and tabs 2022-06-21 00:55:32 +02:00
Philipp Mildenberger 931e610552
nushell: update configuration management
Recent versions of nushell uses a different configuration setup. This
commit adjusts the module to match.

Fixes #2952
Fixes #2837
2022-06-21 00:39:00 +02:00
Matthieu Coudron 07dbd4c0dd
pywal: fixed i3 config (#3002)
module was never imported and thus useless. This adds a neovim plugin too.
2022-06-15 23:44:52 +02:00
Thiago Kenji Okada 935ecea67d
neovim: add missing literalExpression in module docs (#3012) 2022-06-13 19:57:41 +02:00
rcerc 70824bb5c7
swaylock: Add module (#3003) 2022-06-07 21:01:14 +02:00
Kylie McClain 2070389247
htop: add missing fields (#2989)
These new fields were added in htop 3.0.3 (PERCENT_NORM_CPU) and
3.1.0 (ELAPSED).
2022-06-05 11:50:13 +02:00
NomisIV bda2c80b4c himalaya: fix account.folders to new config syntax 2022-05-30 21:06:52 +02:00
midchildan 64831f938b
emacs: allow extraConfig to reference extraPackages
This fixes the issue described in

  https://github.com/nix-community/home-manager/pull/1758#issuecomment-1113706592
2022-05-26 00:34:17 +02:00
Sumner Evans 94780dd888
neovim/coc: add package option (#2972) 2022-05-21 11:12:29 -06:00
Roman Timushev e6869735d2
htop: fix darwin defaults
M_SHARE is not a valid column on Darwin. It seems that previously htop
ignored unknown columns, but the current version does not display all
subsequent columns.
2022-05-19 23:33:20 +02:00
Matthieu Coudron f735a8502b
programs.pywal: init (#2949) 2022-05-10 22:24:19 +02:00
Markus Scherer 4293902b64
offlineimap: remove dependency on python2 (#2909) (#2951) 2022-05-10 09:30:40 +02:00
Theodore Ni af828536ed
fish: generate fish completions using python 3 2022-05-02 23:37:39 +02:00
Arjan Schrijver 5872aad1d0
git: add option to use diff-so-fancy as diff tool
Add the option to use diff-so-fancy as diff tool in git. This makes
the shown diffs human readable instead of machine readable.
2022-05-02 23:08:08 +02:00
Mario Rodas 26858fc0db
tealdeer: add module (#2928) 2022-05-01 08:27:04 -06:00
Sumner Evans f8b51be714
neomutt: add support for signature command (#2899)
Neomutt will run the given command (which can be a string or a path)
and take the output from stdout and use it as the signature for your
email.

Co-authored-by: Nicolas Berbiche <nicolas@normie.dev>
2022-04-29 14:01:53 -06:00
Roberto Di Remigio 742c6cb3e9
chromium: add vivaldi 2022-04-18 00:29:40 +02:00
Jia Xiaodong c82b8ac5ad
sioyek: add module (#2895) 2022-04-17 17:07:55 -04:00
Sam Willcocks 620ed197f3
gpg: fix handling of multiple public keys
When processing `publicKeys` entries, handle entries that contain
multiple public keys (i.e. gpg --show-key returns multiple `pub`
lines) properly, setting the trust level for each key.

PR #2897
2022-04-17 12:15:14 +02:00
Sumner Evans 2e473a7b09
neomutt/signature: unset if disabled (#2877)
Closes #2876
2022-04-16 16:36:31 -06:00
Infinidoge 0586d2d42a
keychain: set SHELL during initialization (#2880)
Explicitly sets the SHELL environment variable in the snippets put into
the shell init files.

Fixes #2256
2022-04-16 18:33:07 -04:00
Daniel Thwaites a640dddc9a
waybar: fix command not found when reloading (#2865) 2022-04-16 18:31:03 -04:00
Tanish2002 7da4e6680f
lf: add package option
PR #2883
2022-04-13 23:08:51 +02:00
florpe e39a9d0103
pylint: add module (#2729) 2022-04-10 21:54:04 -04:00
Sumner Evans f911ebbec9
lib.booleans: add yesNo function (#2818)
Closes #2772
2022-04-07 22:36:13 -06:00
Robert Helgesson 47b3719f51
taskwarrior: minor script cleanup 2022-04-07 23:35:55 +02:00
Daniel Nagy 3071ea205d
starship: skip one program invocation on each shell init (#2862)
The code that is being evaled without the `--print-full-init` flag is
this:

```sh
__main() {
    local major="${BASH_VERSINFO[0]}"
    local minor="${BASH_VERSINFO[1]}"

    if ((major > 4)) || { ((major == 4)) && ((minor >= 1)); }; then
        source <(/nix/store/...-starship-1.3.0/bin/starship init bash --print-full-init)
    else
        source /dev/stdin <<<"$(/nix/store/...-starship-1.3.0/bin/starship init bash --print-full-init)"
    fi
}
__main
unset -f __main
```

This code checks for bash version >= 4.1 , which has been released in
2009. Since this version is widely unavailable in nixpkgs, we can skip
one program invocation and directly call `starship init bash
--print-full-init`.
2022-04-07 13:36:34 -04:00
x10an14 e361373b5f
taskwarrior: make .taskrc writable (#2761)
This is achieved by generating the Home Manager configuration
file as `~/.config/task/home-manager-taskrc`, and including that
file into ~/.config/task/taskrc.

Fixes #2360

Co-authored-by: mainrs <5113257+mainrs@users.noreply.github.com>
Co-authored-by: Nicolas Berbiche <nicolas@normie.dev>
2022-04-07 13:29:53 -04:00
Naïm Favier 399a3dfeaf
gpg: create homedir with 700 permissions (#2823)
It can happen in some cases that home-manager first runs before gpg
creates its homedir, and it creates it with 755 permissions which the
user then needs to change by hand.

Do this in the module instead: before linking files, make sure the
homedir exists, and if it doesn't, create it with the right permissions.
2022-04-04 23:40:15 -04:00
Roch D'Amour 0382c5f75e
git: Add option to use difftastic as diff tool (#2850)
Difftastic is a syntax-aware diff tool which can be used with git.
2022-04-04 08:53:29 -06:00
Mario Rodas 9580f6c42a
zellij: add configuration for darwin
Zellij uses a different path to hold its configuration on Darwin.
2022-03-30 23:56:01 +02:00
Yevhen Shymotiuk d123fca83c
browserpass: add brave support 2022-03-27 01:12:50 +01:00
Naïm Favier 0cf9dadf5b
irssi: use types.lines for extraConfig 2022-03-23 23:10:23 +01:00
Nazarii Bardiuk bbc5e0c1e1
tmux: fix broken vi bindings (#2817)
Keybindings have wrong order of arguments: the -N flag should go before
the binding key
2022-03-21 16:25:36 -06:00
Leon Vack e96fc6d8f9
tmux: add notes to existing keybindings (#2540) (#2742)
Adds notes to the keybindings created in the tmux config making them
show up in C-b ? and tmux list-keys -N

Fixes #2540
2022-03-19 19:12:21 -04:00
mihnea-s 7cf15b19a9
vscode: add user tasks (#2804) 2022-03-18 18:54:24 -04:00
Sumner Evans 590da80ceb
neovim/coc: fix loading CoC plugin (#2801)
Specifically, refactored all places that use cfg.plugins to use a new
combined list that includes CoC if it's enabled.
2022-03-17 20:43:03 -06:00
Kylie McClain 970b57fd3c
autorandr: add filter option (#2795)
xrandr's filter option is useful for enabling integer scaling on
displays that don't have support for it at a graphics card level.
2022-03-17 13:45:04 +01:00
NomisIV 472e67d1bb
himalaya: add support for account.folders
Add support for `account.folders.(inbox|sent|draft)` in the himalaya
account configuration.

PR #2747
2022-03-13 23:20:41 +01:00
Karl Hallsby da92196a95
mu: allow aliases to be used by mu configuration file
This has no effect if the user does not have any aliases defined for
any accounts.

This will also only add `--my-address=` to only accounts that are
enabled to be tracked by mu.
2022-03-13 20:27:35 +01:00
ReplayCoding 5d4327cff4
irssi: fix syntax error when no channels are specified 2022-03-13 13:33:09 +01:00
Loïc Reynier afe96e7433
pubs: add module
Note, the pubs configuration file uses ConfigObj syntax, which is
similar to the INI files syntax but with extra functionalities like
nested sections. This prevents it from using Nix's INI format
generator. Here is an example of pubs configuration that cannot be
generated using Nix's INI format generator:

    [plugins]

    [[git]]
    manual=False

For this reason, we opted for a stringly-typed configuration since the
use of a structured `settings` option would require a custom parser.
2022-03-06 10:40:28 +01:00
maximsmol 87beebc7a2
just: add module 2022-03-06 09:50:52 +01:00
Yt d119cea376
i3status-rust: change default to newer version (#2774) 2022-03-03 22:32:59 -05:00
Robert Helgesson 2499b91692
treewide: apply nixfmt to a few more files 2022-02-27 02:19:44 +01:00
kmaasrud 1d90b6065a
tiny: add module (#2735)
Added module for tiny, a TUI IRC client written in Rust. Thanks to @ratsclub for helping me write my first Nix module!
2022-02-26 17:42:01 -05:00
Frank Moda 662350bee2
neovim: remove trace log of vim plugins (#2756) (#2760) 2022-02-25 14:35:13 +01:00
Markus Wamser 650cfe60f3
vscode: fix name of extension in example (#2759) 2022-02-24 18:45:41 -05:00
Mifom 8f7d925503
gitui: add module 2022-02-24 23:42:04 +01:00
Selene Hines 0b1745b4ef
neovim: autogenerate config.lua file sourced to init.vim (#2716) 2022-02-23 15:53:31 +01:00
Josh Holland 838d40d61a
foot: set OOMPolicy=continue for foot server (#2749)
Previously, if a process inside a foot client triggered the OOM killer,
systemd would also kill the parent unit, namely the foot server.
This is not ideal if a user has a lot of clients attached, and it's
usually not the terminal emulator's fault that a process inside it has
ended up using all the available memory.
2022-02-22 20:15:28 +01:00
NomisIV 69536af27e
himalaya: fix smtp-starttls option (#2744)
The `smtp-starttls` option was previously to the value of `account.imap.tls.useStartTls`, when `account.smtp.tls.useStartTls` should be used instead
2022-02-21 14:32:32 -07:00
Mario Rodas 0232fe1b75 atuin: don't install widget on limited terminals
Otherwise we get the following warning for terminals with limited
capabilities:

    bash: bind: warning: line editing not enabled
2022-02-19 04:20:00 +00:00
Robert Helgesson 5375afb2fb
eww: fix maintainer referencee 2022-02-17 22:34:21 +01:00
mainrs 498c188e62
eww: add module
Closes #2682
2022-02-17 18:41:05 +01:00
Jian Lin 2116fe6b50
zsh: move sessionVariables from .zshrc to .zshenv (#2708)
This patch moves both home.sessionVariables and
programs.zsh.sessionVariables from .zshrc to .zshenv. Additionally,
these two kinds of session variables will not be sourced more than
once to allow user-customized ones to take effect.

Before, session variables are in .zshrc, which causes non-interactive
shells to not be able to get those variables. For example, running a
command through SSH is in a non-interactive and non-login shell, which
suffers from this. With this patch, all kinds of shells can get
session variables.

The reason why these session variables are not moved to .zprofile is
that programs started by systemd user instances are not able to get
variables defined in that file. For example, GNOME
Terminal (gnome-terminal-server.service) is one of these programs and
doesn't get variables defined in .zprofile. As a result, the shells it
starts, which are interactive and non-login, do not get those
variables.

Fixes #2445

Related NixOS/nixpkgs#33219
Related NixOS/nixpkgs#45784

This file is not formatted before and is excluded by ./format, so I don't format it.
2022-02-17 10:20:56 +01:00
mainrs 810e5f3613
zellij: add module
Closes #2666
2022-02-17 00:55:28 +01:00
Artem Shinkarov a3c18a60d5
neovim: add extraLuaPackages to neovim, fixes #1964. (#2617)
Similarly to extraPytonPackages, we add extraLuaPackages that make
lua libraries available at runtime.
2022-02-16 16:38:10 +01:00
Thibaut Marty 6d9d9294d0
notmuch: fix database creation when using hooks
When an hook is defined, a side effect was the creation of the
${notmuchIni.database.path}/.notmuch/ directory by home-manager. If
the Xapian database does not exist yet but this .notmuch directory
exists, Notmuch is confused and throws an error when `notmuch new` is
run (while this should create the database the first time).

This commit changes the hooks paths to $XDG_CONFIG_HOME where Notmuch
expects them (see notmuch-config(1)) instead of inside the maildir
database directory.

It also moves the configuration where Notmuch expects it, but the
$NOTMUCH_CONFIG environment variable is kept for backward
compatibility.
2022-02-11 00:04:40 +01:00
Nelson Alex Jeppesen e2aa1f5986
kitty: add option theme (#2710)
Add Kitty option to install kitty-themes and configure Kitty to use
one of those themes
2022-02-08 11:54:24 -07:00
Naïm Favier 1ca6293c8f
vscode: fix keybindings existence check (#2707)
... and flip immutableExtensionsDir to mutableExtensionsDir
2022-02-07 12:40:59 -05:00
mainrs 9d369c75ce
man: add package option (#2688)
Closes #2634
2022-02-02 16:35:28 -05:00
Michael Hoang 184b0154f2
vscode: Add immutable extensions dir option (#2613) 2022-02-02 15:57:11 -05:00
Naïm Favier 95d39e13a4
bash: use shellDryRun to check scripts
Allows using extglob in initialisation files.
See https://github.com/NixOS/nixpkgs/pull/151371
2022-01-30 19:30:33 +01:00
Jakub Kozłowski acf824c9ed
sbt: trim output of password command 2022-01-29 00:14:05 +01:00
Joakim Holm 4e92ec84f9
ion: Add module (#2625)
Co-authored-by: Nicolas Berbiche <nic.berbiche@gmail.com>
Co-authored-by: Matthieu Coudron <teto@users.noreply.github.com>
2022-01-27 19:15:45 +01:00
Matthieu Coudron 8d3fe1366b
neovim: support different configuration languages (#2637)
Plugins now accept a "type" element describing the language (viml, lua
, teal, fennel, ...) in which
they are configured.

The configuration of the different plugins is aggregated per language
and made available as a key in the attribute set `programs.neovim.generatedConfigs`

For instance if you want to configure a lua package:

```
programs.neovim.plugins = [
{
plugin = packer-nvim;
type = "lua";
config = ''
    require('packer').init({
    luarocks = {
	python_cmd = 'python' -- Set the python command to use for running hererocks
    },
    })
'';
}
]
```
and you can save the generated lua config to a file via

```
  xdg.configFile = {
    "nvim/init.generated.lua".text = config.programs.neovim.generatedConfigs.lua;
  };
```
2022-01-27 16:27:35 +01:00
Daniel Wagenknecht cbc176010b
kodi: add module
Kodi is a media center software.
2022-01-26 23:56:25 +01:00
polykernel 93b52ce0bd
chromium: add commandLineArgs option
- Add support for command line arguments, this allows arguments to be
  persistently set if needed (i.e workaround hardware bugs or enabling
  certain flags).
- Document setting a custom package will nullify the `commandLineArgs`
  option.
- Fix `mkRemovedOption` assertion from being apply even when the
  `extensions` option is unused for google chrome modules.
2022-01-26 22:34:19 +01:00
Mr Hedgehog 462d4a7abd
atuin: add fish integration 2022-01-25 00:21:31 +01:00
Kirill Elagin c47c350f65
pandoc: add new module
Add a module for pandoc that provides the following:

1. Setting default configuration options.
2. Installing templates.
3. Installing citation styles.
2022-01-22 21:16:50 +01:00
Carlos Lobo e622c5d836
tint2: add module 2022-01-22 18:09:15 +01:00
amesgen 54b8b13a9b
timidity: add module 2022-01-22 16:46:16 +01:00
polykernel d469b9bf8a
watson: add module
Watson is a CLI for tracking your time.

Two unit tests were added to validate the module behavior for an empty
configuration and the example configuration.
2022-01-22 16:12:34 +01:00
Philipp Mildenberger 32da35f65b
helix: add module 2022-01-22 15:42:49 +01:00
Nicolas Berbiche b59752b9ff
rofi: add finalPackage option (#2649)
This makes it possible to use the customized rofi binary in Sway keybindings for instance.
2022-01-17 18:21:40 -05:00
Nicolas Berbiche 9bceb8292e
waybar: fix deprecated "modules" setting check (#2646)
- The check did not account the default value of `settings.modules` to be `{}`.
  The default value was changed to null.

- The `settings.modules` option is now hidden from the docs.
2022-01-17 16:38:22 -05:00
Hubert Jasudowicz 60d2c9660b
rbw: Fix a typo (#2648) 2022-01-17 16:37:46 -05:00
Robin Stumm f71d41ba36
kakoune: fix ui options (#2641)
These were renamed in v2021.08.28,
commit 7e66846172165eb1f860f26f51f7a20790b0af29.
2022-01-16 19:39:41 -05:00
Zsolt Szende 94281669fd
Add programs.fish.interactiveShellInit to direnv (#2614) 2022-01-16 19:13:32 -05:00
Roch D'Amour 986cf41b3b
kitty: Allow package to be configurable (#2640) 2022-01-16 18:19:32 -05:00
Nicolas Berbiche 5209ea0d8c
skim: use cfg.package in shell integrations 2022-01-11 16:44:57 +01:00
Kirill Elagin 204f9808d3
sagemath: add module 2022-01-11 14:38:02 +01:00
Naïm Favier 05d655146b
rofi: allow extending themes (#2571)
Move @import and @theme directives to the top of custom theme
definitions so as to allow extending other themes.
2022-01-09 17:15:24 -05:00
Olli Helenius a90ddcd627
skim: add package option (#2619)
Fixes #2618
2022-01-08 22:53:49 -05:00
Tobias Happ c2f151258a
bash: remove unnecessary shebang and executable bit for dotfiles (#2599) 2022-01-01 10:06:55 -07:00
Luna Nova 7a0a7d6427
xmobar: fix maintainers entry for t4ccer 2021-12-29 09:50:56 +01:00
Luna Nova 6b1f56407b
ncmpcpp: fix maintainers entry for olmokramer 2021-12-29 09:50:55 +01:00