데스크탑 컴퓨터에 로그인할 때 자동으로 연결하고 싶은 Bluetooth 스피커가 있습니다. Fedora Workstation 33에서 이를 수행하는 안정적인 방법은 무엇입니까?
GNOME의 Bluetooth 설정 GUI를 사용하여 스피커에 수동으로 연결하거나 bluetoothctl connect C8:84:47:XX:XX:XX
터미널에서 연결할 수 있습니다(실제 MAC 주소를 사용하여 여기에서 편집). Bluetooth 스피커는 AC 전원으로 작동하며 절전 기능이 비활성화되어 있습니다. 항상 켜져 있고 연결할 준비가 되어 있습니다.
systemd 사용자 서비스는 옵션인 것 같지만 이 방법을 작동시키지 못했습니다. 지금까지 내가 시도한 것은 다음과 같습니다.
다음 내용이 포함된 ~/.config/systemd/user/bluetooth-soundbar.service 파일이 있습니다.
[Unit]
Description=Connect to soundbar at login
[Service]
Type=oneshot
ExecStart=bluetoothctl connect C8:84:47:XX:XX:XX
[Install]
WantedBy=default.target
새 서비스를 활성화하고 시작했습니다.systemctl --user enable bluetooth-soundbar.service && systemctl --user start bluetooth-soundbar.service
[Unit] 섹션에 BindsTo=bluetooth.service 및/또는 After=bluetooth.target을 추가해 보았습니다.문서의 조언을 따르십시오., 그러나 이것들은 아무런 효과가 없는 것 같습니다. 또한 명령만 사용하는 대신 ExecStart=/bin/sh -c "bluetoothctl connect C8:84:47:XX:XX:XX"를 사용해 보았습니다.
/etc/bluetooth/main.conf 기본적으로 AutoEnable=true이며 systemctl status bluetooth
로그인 후 기본적으로 Bluetooth가 자동으로 실행됨을 보여줍니다.
Arch 위키에는 /etc/pulse/default.pa에 "load-module module-switch-on-connect"를 추가한다고 언급되어 있는데 그렇게 하려고 하면 재부팅 후 사운드나 사운드 설정이 없어서 기본값으로 돌아갑니다. 파일 .
내가 무엇을 놓치고 있나요? 이것이 가능한가? 이런 종류의 작업에 systemd가 적합한 도구인가요?
답변1
완전성을 위해 다음과 같습니다.
자동 시작 디렉터리에 .desktop 파일 추가...
$EDITOR ~/.config/autostart/bluetooth-soundbar.desktop
...장치의 MAC에 적합한 다음 콘텐츠가 포함되어 있습니다.
[Desktop Entry]
Name=Bluetooth Soundbar
Exec=bluetoothctl connect C8:84:47:XX:XX:XX
Type=Application