Commit graph

11 commits

Author SHA1 Message Date
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
Naïm Favier bd11e2c5e6
Replace usage of literalExample
Instead use the new function `literalExpression`. See

  https://github.com/NixOS/nixpkgs/pull/136909
2021-10-13 00:16:10 +02:00
Thiago Kenji Okada 2c0e3f61da
mpv: fix issue #1725 and add tests (#1726)
Closes issue #1725.

This allows mpv module to be customized with support for more advanced
features than the `programs.mpv.scripts` current support. For example,
with this change now this is possible:

```nix
{
  programs.mpv.package = (pkgs.wrapMpv (pkgs.mpv-unwrapped.override {
    vapoursynthSupport = true;
  }) {
    extraMakeWrapperArgs = [
      "--prefix" "LD_LIBRARY_PATH" ":" "${pkgs.vapoursynth-mvtools}/lib/vapoursynth"
    ];
  });
}

```

Since `programs.mpv.package` doesn't necessary reflect the final
derivation anymore (see #1524), we introduce `programs.mpv.finalPackage`
that has the resulting derivation.

This includes 2 tests:
- One to check if everything is alright with mpv
- Other to validate our assertion that package and scripts can't be
  passed both at the same time

* docs: document recent mpv module changes

* mpv: add thiagokokada as maintainer
2021-01-21 18:10:12 -05:00
Simon Bruder 65d0e2d241
mpv: add defaultProfiles option 2021-01-11 23:51:58 +01:00
AstroSnail 1066e01707
mpv: use lib.generators to render config
There exist mpv configurations which cannot be expressed in
`programs.mpv.config` currently. For example, it is impossible to use
multiple 'profile' attributes. This commit changes the way config and
profiles are parsed, using `lib.generators.toKeyValue` and
`lib.generators.toINI`, to allow for these kinds of configurations
through the use of `listsAsDuplicateKeys`.
2020-11-03 00:28:24 +01:00
Olmo Kramer 9ff2188c5d
mpv: make wrapped package available via package 2020-10-01 22:28:33 +02:00
Nicolas Berbiche b567d27394
mpv: use wrapMpv instead of mpv-with-scripts
The latter has been removed from Nixpkgs.

See:

- <https://github.com/NixOS/nixpkgs/pull/88620>
- <https://github.com/NixOS/nixpkgs/pull/89208>

PR #1295
2020-05-31 14:11:10 +02:00
Robert Helgesson 45abf3d38a
Apply nixfmt on many files 2020-02-02 01:07:28 +01:00
Robert Helgesson 297ed97166
mpv: allow string values in scripts list
Fixes #976
2020-01-11 17:44:04 +01:00
dawidsowa d5e73c39fc
mpv: add scripts option 2019-09-02 18:23:17 +02:00
Tadeo Kondrak 8b15f18993
mpv: add module 2019-05-08 00:42:18 +02:00