37 lines
957 B
Nix
37 lines
957 B
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
hardware.bluetooth = {
|
|
enable = true;
|
|
# Disable bluetooth on startup to save battery
|
|
powerOnBoot = false;
|
|
package = pkgs.bluez-experimental;
|
|
# Disable useless SIM Access Profile plugin
|
|
disabledPlugins = [ "sap" ];
|
|
settings = {
|
|
General = {
|
|
# Enables experimental features and interfaces.
|
|
# Makes BlueZ Battery Provider available
|
|
Experimental = true;
|
|
};
|
|
};
|
|
};
|
|
|
|
services.blueman.enable = true;
|
|
services.pipewire.wireplumber.configPackages = [
|
|
# https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/bluetooth.html
|
|
(pkgs.writeTextDir "share/wireplumber/wireplumber.conf.d/10-bluez.conf" ''
|
|
monitor.bluez.properties = {
|
|
bluez5.enable-hw-volume = true
|
|
bluez5.enable-msbc = false
|
|
bluez5.enable-sbc-xq = true
|
|
bluez5.headset-roles = [ hsp_hs hsp_ag hfp_hf hfp_ag ]
|
|
}
|
|
'')
|
|
];
|
|
}
|