Commit graph

100 commits

Author SHA1 Message Date
K900 c0e0ac22d3 nixos/pipewire: also propagate LV2_PATH to standalone filter-chain 2025-10-02 09:47:37 +03:00
Wolfgang Walther 5a0711127c
treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
Edgar Vincent 76dd00a305 nixos/pipewire: remove obsolete comment
Since 05b4964, the pipewire-pulse system service and socket are
enabled when the `systemWide' option is set to `true'.
2025-06-09 17:24:28 +02:00
Silvan Mosberger 374e6bcc40 treewide: Format all Nix files
Format all Nix files using the officially approved formatter,
making the CI check introduced in the previous commit succeed:

  nix-build ci -A fmt.check

This is the next step of the of the [implementation](https://github.com/NixOS/nixfmt/issues/153)
of the accepted [RFC 166](https://github.com/NixOS/rfcs/pull/166).

This commit will lead to merge conflicts for a number of PRs,
up to an estimated ~1100 (~33%) among the PRs with activity in the past 2
months, but that should be lower than what it would be without the previous
[partial treewide format](https://github.com/NixOS/nixpkgs/pull/322537).

Merge conflicts caused by this commit can now automatically be resolved while rebasing using the
[auto-rebase script](8616af08d9/maintainers/scripts/auto-rebase).

If you run into any problems regarding any of this, please reach out to the
[formatting team](https://nixos.org/community/teams/formatting/) by
pinging @NixOS/nix-formatting.
2025-04-01 20:10:43 +02:00
misuzu 05b496433a nixos/pipewire: support system wide pipewire-pulse service 2025-03-13 19:37:45 +02:00
K900 c63e1d1daf nixos/pipewire: remove client-rt.conf support 2025-03-06 16:56:39 +03:00
piegames dd7d5339f7 treewide: Fix incorrect string indentations 2025-01-07 19:49:28 +01:00
nicoo 238b407862
nixos: hardware.pulseaudio → services.pulseaudio (#369391) 2024-12-30 13:46:50 +00:00
Silvan Mosberger 4f0dadbf38 treewide: format all inactive Nix files
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.

Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.

A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.

This commit was automatically created and can be verified using

    nix-build a08b3a4d19.tar.gz \
      --argstr baseRev b32a094368
    result/bin/apply-formatting $NIXPKGS_PATH
2024-12-10 20:26:33 +01:00
Wolfgang Walther e1e2193dff
nixos/pipewire: remove version reference from warning message
This is also true in 24.11 and up, so no need to state the version
number explicitly.
2024-11-22 18:30:15 +01:00
Doron Behar 2415e26111 nixos/pipewire: mention possible integration with pulseaudio
The previous assert message was inaccurate, as it didn't reflect the
assertion condition, misleading users into thinking that either
pulseaudio or pipewire should be used as a sound server.
2024-11-05 18:02:03 +02:00
Artturin e0464e4788 treewide: replace stdenv.is with stdenv.hostPlatform.is
In preparation for the deprecation of `stdenv.isX`.

These shorthands are not conducive to cross-compilation because they
hide the platforms.

Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way

One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059

There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.

```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
2024-09-25 00:04:37 +03:00
K900 a0134dd1d8 nixos/wireplumber: drop hack for systemwide setups
Should not be necessary with 0.5.6.
2024-09-06 20:58:12 +03:00
K900 333e6672e1 nixos/pipewire: install the default limits config, make group always exist 2024-08-16 12:00:08 +03:00
Hans Christian Schmitz 72ed33777c
nixos/wireplumber: add extraConfig/extraScripts options
Follow-up to #282377. #282377 broke `environment.etc."wireplumber<...>"`,
however WirePlumber did not yet have `extraConfig` style options for
configuring it ergonomically outside of `environment.etc`. This has
caused issues for people who had custom config files for WirePlumber, as
having to create a config package just to edit some settings is not as
ergonomic or discoverable as with a proper `extraConfig` style option.

This commit fixes this issue by adding the `extraConfig` option for
additional config file and the `extraScripts` option for additional
scripts to be used by config files.

With WirePlumber 0.5 it is possible to supply config files and scripts
via the `XDG_DATA_DIRS` variable to the WirePlumber daemon. This is how
the new options and with this change also the `configPackages` option
expose their files to the daemon. This way
`environment.etc."wireplumber"` works again for user configuration and
breakage of old configs from 23.11 to 24.05 should be limited to those
caused by the change in the config format from WirePlumber 0.4 to 0.5.
2024-04-21 20:34:37 +02:00
éclairevoyant eddbb7932f
nixos/wireplumber: reuse local binding to simplify 2024-03-26 16:41:58 -04:00
éclairevoyant ff77d83327
nixos/wireplumber: provide example for services.pipewire.wireplumber.configPackages 2024-03-26 16:41:57 -04:00
éclairevoyant f5b680b97c
nixos/wireplumber: update services.pipewire.wireplumber.configPackages description for v0.5 2024-03-26 16:41:57 -04:00
éclairevoyant 3aa01f7f13
nixos/wireplumber: inherit lib functions 2024-03-26 16:41:57 -04:00
éclairevoyant d2843640cb
nixos/wireplumber: remove lib.mdDoc (no-op) 2024-03-26 16:41:52 -04:00
éclairevoyant ff8f1a1f4e
nixos/pipewire: document example for services.pipewire.configPackages 2024-03-26 16:41:51 -04:00
éclairevoyant 27a2f2a429
nixos/pipewire: replace with lib; with inherit 2024-03-26 16:41:51 -04:00
éclairevoyant f3b74afdc7
nixos/pipewire: remove lib.mdDoc (no-op) 2024-03-26 16:41:51 -04:00
André Vitor de Lima Matos bdc6b3abe0
nixos/wireplumber: fix systemwide bluetooth integration
From https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3828#note_2270701
Broken/removed in #278760
2024-03-21 16:21:59 -03:00
Cabia Rangris eaf6b74366
nixos/pipewire: raopOpenFirewall option
RAOP requires UDP/6001-6002 for timing
information, and won't work with apple devices if
firewall is enabled.
2024-03-20 18:32:01 +03:00
K900 823897dde8 wireplumber: 0.4.17 -> 0.5.0 2024-03-18 18:57:05 +03:00
Hans Christian Schmitz 3f86bd950c
nixos/pipewire: add docs for passthru.requiredLv2Packages 2024-02-29 13:28:04 +01:00
Hans Christian Schmitz b97450b007
nixos/wireplumber: fix incorrect option name in docs 2024-02-29 13:28:04 +01:00
André Vitor de Lima Matos 675ad00f22
pipewire: fix wireplumber config paths
Quickfix for systemWide pipewire after #282377
2024-02-28 10:46:52 -03:00
Hans Christian Schmitz 5f6dca8403
nixos/pipewire: add assertions for migration to extraConfig/configPackages
The PR #282377 made files/directories specified in
`environment.etc."pipewire<...>"` and `environment.etc."wireplumber<...>"`
conflict with existing configuration of the PipeWire NixOS module due to how
the `configPackages` options were implemented. This sadly wasn't easily
avoidable. As this can cause breakage for users moving from 23.11 to 24.05
though, assertions can help guide them to use `services.pipewire.extraConfig`
or `services.pipewire.configPackages` / `services.wireplumber.configPackages`
instead, fixing the breakage.
2024-02-28 01:22:28 +01:00
K900 eb74747f38 nixos/pipewire: add LV2 plugins option
Follow-up #282377.

Some packages may want to load LV2 plugins directly from PipeWire config instead, so add another option to accomodate those.
2024-02-26 10:04:45 +03:00
Hans Christian Schmitz e722c56160
nixos/wireplumber: add required lv2 plugins to service path 2024-02-23 08:58:16 +01:00
Hans Christian Schmitz 5bf2637b48
nixos/wireplumber: add config packages option 2024-02-23 08:58:15 +01:00
Hans Christian Schmitz 054bba560a
nixos/pipewire: add config packages option 2024-02-23 08:57:16 +01:00
Hans Christian Schmitz 992582fdf8
nixos/pipewire: Fix capitalization
In docs PipeWire and WirePlumber should be capitalized as in this
sentence.
2024-02-23 08:57:12 +01:00
jopejoe1 8ba76f8dd4 nixos/pipewire: add pipewire config 2023-12-17 13:38:32 +03:00
h7x4 0a37316d6c
treewide: use mkPackageOption
This commit replaces a lot of usages of `mkOption` with the package
type, to be `mkPackageOption`, in order to reduce the amount of code.
2023-11-27 01:28:36 +01:00
K900 30e8b8e18d nixos/pipewire: simplify pw-pulse disabling 2023-10-20 10:22:53 +03:00
K900 ff44e8ab07 pipewire: simplify outputs drastically
This drops a whole bunch of patches we carry to avoid output cycles, at the cost of +1MB to closure size
on systems that don't already have Pipewire, which are becoming rarer and rarer.
2023-10-20 00:57:18 +03:00
K900 1fab86929f nixos/pipewire: spring cleaning
- drop media-session (rip 💀)
- stop trying to let people override default configs, those never got merged correctly
- drop all the complexity arising from having to vendor default config files
- build docs in sandbox as we no longer recurse
2023-03-14 20:31:32 +03:00
K900 b8ac3f9a93 pipewire: 0.3.66 -> 0.3.67 2023-03-14 20:31:03 +03:00
K900 218b28191a pipewire: 0.3.65 -> 0.3.66
Also enable libmysofa
2023-02-17 13:15:16 +03:00
github-actions[bot] 872d17dee8
Merge master into staging-next 2023-01-30 18:01:30 +00:00
K900 ffaae97867 nixos/pipewire: add myself as maintainer 2023-01-30 09:09:47 +03:00
K900 de6e502f5e pipewire: 0.3.64 -> 0.3.65 2023-01-29 10:11:12 +03:00
R. Ryantm 0fe0ee997f pipewire: 0.3.63 -> 0.3.63 2022-12-27 01:04:17 +00:00
Florian Klink bfc60c9362 nixos/wireplumber: assert hsphfpd to be disabled
According to
https://github.com/NixOS/nixpkgs/issues/205957#issuecomment-1350158554,
pipewire/wireplumber already provides this functionality.

Fixes #205957
2022-12-14 21:24:13 +00:00
Jan Solanti 96dd839e8f pipewire: 0.3.58 -> 0.3.59 2022-10-09 20:17:42 +03:00
pennae ef176dcf7e nixos/*: automatically convert option descriptions
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running

    nix-doc-munge nixos/**/*.nix
    nix-doc-munge --import nixos/**/*.nix

the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
2022-08-31 16:32:53 +02:00
R. Ryantm 813a4ba8a0 pipewire: 0.3.56 -> 0.3.56 2022-08-14 14:31:51 +00:00