快轉到主要內容

蝦密?Linux系統竟然有開關機音效

Linux系統 Linux使用技巧 Ubuntu GNOME KDE Plasma
🗓️ 民國112年 癸卯年
✍ 切換正體/簡體字
目錄

Siánn-mih?Linux系統竟然有開關機音效(startup sound)

例如,Ubuntu在10年前的Unity桌面還會啟用開機音效,後來就不見了。

後來Ubuntu拋棄Unity桌面,改用主流的GNOME桌面。現在你只會在初次安裝Ubuntu的時候聽到開機音效,真正裝上去之後開機是沒有聲音的。

沒關係,你還是可以把他們加回來。

這篇文章Ivon將解說如何開啟Linux桌面的開機以及關機音效。

1. 啟用桌面環境內建的開機音效
#

現在內建開機音效的Linux桌面只有KDE和GNOME。嚴格來說,這些「開機」音效是在登入桌面後才播放,而不是載入Display Manager前就播放,所以稱為「登入音效」比較正確。

2.1. KDE
#

KDE的音效檔案位於/usr/share/sounds/

  1. 開啟系統設定 → 通知 → 特定應用程式設定

  2. 點選Plasma工作空間 → 設定事件

  3. 點選「登入」和「登出」,啟用播放音效。這裡的音效可以自訂要播放的檔案。

2.2. GNOME
#

相較KDE而言,GNOME的開關機音效很難設定。

GNOME桌面的音效位於/usr/share/sounds/gnome。Ubuntu預設安裝的是Yaru主題(其他發行版可能要手動安裝yaru-theme套件),開機音效位於/usr/share/sounds/Yaru

  1. Ubuntu和Fedora預設使用的是GNOME桌面,請先安裝Gnome Tweaks:
sudo apt install gnome-tweaks
  1. 啟動gnome-session-properties (Ubuntu可在應用程式列表找到「初始啟動程式」)
gnome-session-properties
  1. 點選加入登入音效,指令為/usr/bin/canberra-gtk-play --id="desktop-login" --description="GNOME Login"

XFCE4也可以用這個方法設定登入音效。用此方式新增的開機音效,會在每次登入GNOME桌面後播放一次。

  1. 搞笑的是GNOME無法設定登出時後執行指令,所以只好去調整GDM的登出設定:
sudo vim /etc/gdm3/PostSession/Defaults*
  1. 改成用paplay這個程式來播放關機音效…但GNOME的指令稿在音訊伺服器關閉後才會執行…導致音效根本無法播放
#!/bin/bash

/usr/bin/paplay /usr/share/sounds/Yaru/stereo/desktop-logoff.oga

exit 0

2. 使用Systemd服務播放開機音效
#

桌面環境沒提供設定界面的話,就只能搭配音樂播放軟體,在使用者登入/登出桌面的時候設定服務播放開機音效了。

Linux發行版多半有內建paplay這個程式,它不需要圖形伺服器也能播放音效,無需另外裝播放軟體。您應該將開機音效放到/usr/share/sounds/

此處使用Systemd user unit播放開機音效。

  1. 新增Systemd使用者服務
vim ~/.config/systemd/user/loginsound.service
  1. 填入以下內容。ExecStart是登入播放Yaru的desktop-login音效
[Unit]
Name=Play Login Sound
After=sound.target

[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/usr/bin/paplay /usr/share/sounds/Yaru/stereo/desktop-login.oga

[Install]
WantedBy=default.target
  1. 啟用此服務,接著重開機。此處差別在於他是一按下登入鍵就播放音效,而不是像上面GNOME等桌面載入完成才播放,並且只會播放一次。
systemctl --user enable loginsound.service

參考資料
#

相關文章

Linux 螢幕縮放比例 & 個別程式縮放(scale)的方法
Linux系統 Linux使用技巧 Linux GNOME KDE Plasma
Arch Linux連接Airpods Pro藍牙耳機和查看電量
Linux系統 Linux使用技巧 KDE Plasma Arch Linux
Linux無法clone自己的Github repository的解決方法
Linux系統 Linux使用技巧 Github Linux

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。