DEVELOPMENT ENVIRONMENT

~liljamo/nix-arta

ref: a8156c500e9efa2a17b05ee1852f65a05f5acb60 nix-arta/roles/bluetooth.nix -rw-r--r-- 671 bytes
a8156c50Jonni Liljamo feat: initial version 4 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
  config,
  lib,
  ...
}: let
  cfg = config.roles.bluetooth;
in {
  options.roles.bluetooth = {
    enable = lib.mkEnableOption "enable bluetooth";
    enableHDAudio = lib.mkEnableOption "enable HD audio for bluetooth";
  };

  config = lib.mkIf cfg.enable {
    services.blueman.enable = true;

    services.pipewire.wireplumber.extraConfig = lib.mkIf cfg.enableHDAudio {
      bluetoothEnhancements = {
        "monitor.bluez.properties" = {
          "bluez5.enable-sbc-xq" = true;
          "bluez5.enable-msbc" = true;
          "bluez5.enable-hw-volume" = true;
          "bluez5.roles" = ["hsp_hs" "hsp_ag" "hfp_hf" "hfp_ag"];
        };
      };
    };
  };
}