{ lib, config, pkgs, ... }: { hardware.bluetooth = { enable = true; # Disable bluetooth on startup to save battery powerOnBoot = false; # Disable useless SIM Access Profile plugin disabledPlugins = [ "sap" ]; settings = { General = { # Enables experimental features and interfaces. # Makes BlueZ Battery Provider available Experimental = true; AutoEnable = true; }; }; }; services.blueman.enable = true; home-manager.users."${config.pub-solar.user.name}" = { services.blueman-applet.enable = true; systemd.user.services.blueman-applet = { Unit = { BindsTo = ["sway-session.target"]; After = lib.mkForce ["sway-session.target"]; Requires = lib.mkForce [ ]; }; Install.WantedBy = [ "sway-session.target" ]; }; }; environment.etc."wireplumber/bluetooth.lua.d/51-bluez-config.lua" = { text = '' bluez_monitor.properties = { ["bluez5.enable-sbc-xq"] = true, ["bluez5.enable-msbc"] = true, ["bluez5.enable-hw-volume"] = true, ["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]" } ''; }; }