5.0 KiB
HTPC — Система (Bazzite Linux)
Железо
- CPU: Intel Core i7-6800K
- RAM: 32 GB
- GPU: AMD Radeon RX 570
- Подключение к TV: HDMI
- TV: LG webOS (192.168.1.75)
- HTPC IP: 192.168.1.86
ОС
- Bazzite 44 (Fedora-based, immutable OSTree)
- Вариант:
bazzite-deck(Steam Gaming Mode / gamescope) - Пользователь:
bazzite - Hostname:
htpc - DNS: резолвится как
htpcчерез роутер (192.168.1.1), см. router-bishkek-asus
Режимы запуска
- Gaming Mode (gamescope-session-steam) — автологин по умолчанию, Steam Big Picture
- KDE Desktop — переключение из меню Steam → "Switch to Desktop"
Автологин
Файл: /etc/gdm/custom.conf
[daemon]
AutomaticLoginEnable=True
AutomaticLogin=bazzite
Session=gamescope-session-steam
Переменные окружения
/etc/environment:
GAMESCOPE_DISABLE_HDR=1
~/.config/environment.d/gamescope.conf:
GAMESCOPE_WIDTH=1920
GAMESCOPE_HEIGHT=1080
GAMESCOPE_REFRESH=60
Разрешение
- 1080p @ 60Hz — рабочий режим
- 4K вызывает AMD HDA audio clock bug: пиксельный клок ~594 MHz → HDMI audio 880 Hz вместо 440 Hz
Аудио
Проблема
LG webOS TV по HDMI принимает только LPCM 2ch.
Поддерживаемые частоты: 32000 / 44100 / 48000 / 96000 / 192000 Hz, 16/20/24 bit.
AMD HDA audio clock bug (RX 570 + 4K@60Hz):
При pixel clock ~594 MHz (4K@60Hz) AMD HDMI audio контроллер выдаёт неправильный clock — тон 440 Hz воспроизводится как 880 Hz (в 2 раза выше). Решение — переключиться на 1080p@60Hz (pixel clock ~148 MHz, bug не воспроизводится).
Решение: зафиксировать 1080p
~/.config/environment.d/gamescope.conf:
GAMESCOPE_WIDTH=1920
GAMESCOPE_HEIGHT=1080
GAMESCOPE_REFRESH=60
Решение: PipeWire/WirePlumber конфиги
~/.config/wireplumber/wireplumber.conf.d/fix-hdmi.conf:
monitor.alsa.rules = [
{
matches = [{ node.name = "~alsa_output.pci*hdmi*" }]
actions = {
update-props = {
audio.format = "S16LE"
audio.rate = 48000
session.suspend-timeout-seconds = 0
}
}
}
]
~/.config/pipewire/pipewire.conf.d/99-hdmi-fix.conf:
context.properties = {
default.clock.allowed-rates = [ 44100 48000 ]
}
Проверка
# Посмотреть активный sink и его параметры:
pactl list sinks | grep -A20 "HDMI"
# Тест тона 440 Hz — должен звучать как ля первой октавы:
speaker-test -t sine -f 440 -c 2
Автосон / Sleep management
Текущее состояние (2026-05-15)
Sleep работает штатно — HTPC засыпает по таймеру KDE PowerDevil.
Разбудить/усыпить вручную
# Усыпить
echo bazzite | sudo -S systemctl suspend
# Заблокировать автосон (если нужно)
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
# Снять маску (восстановить автосон)
sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target
Настройки KDE PowerDevil
~/.config/powermanagementprofilesrc:
[AC][SuspendSession]
idleTime=1800000 # 30 минут (в мс)
suspendType=1 # suspend
⚠️ Проблема: реальный таймаут = 15 мин (не 30)
По журналу: HTPC засыпает ровно через 15 минут после пробуждения, хотя KDE-конфиг говорит 30.
Источник suspend — systemd-logind по команде от KDE PowerDevil.
Источник 15-минутного таймаута не найден (требует дальнейшего расследования):
/etc/xdg/powermanagementprofilesrc— нет[AC][SuspendSession](не источник)- HHD, Steam BPM sleep timer — не найдено
- PowerDevil запущен с 8 мая, конфиг изменён 14 мая — возможно читает кэш при старте сессии
- Кандидаты для проверки: старый
powerdevilrc(мигрирован), Steam Gaming Mode sleep timer через dbus
OSTree / Обновления
/usr/local/binслетает приrpm-ostreeupgrade (новый/usroverlay)- Бинари держать в
/home/bazzite/или пересобирать после обновлений - Проверить после апдейта:
systemctl status magic4pc
KDE Xwayland настройки
~/.config/kwinrc:
[Xwayland]
EavesdropMode=2
XwaylandEisNoPrompt=true
XwaylandEisNoPrompt=true — отключает диалог разрешения XTest (нужен для magic4pc/xdotool).