nixos-private-dots/modules/nixos/hardware.nix
2024-08-07 19:12:33 +03:00

70 lines
No EOL
3.6 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Часть настроек меняется в xserver.nix и network.nix
# Некоторые настройки под конкретное железо https://github.com/NixOS/nixos-hardware
{ pkgs, ... }: {
hardware = { # Параметры для 24.05 и unstable могут сильно отличаться
# Список пакетов-драйверов, которые будут активированы лишь при нахождении подходящего оборудования
# firmware = with pkgs; [];
# Мало раскомментить. Надо настроить при необходимости
# fancontrol = {};
# В стоке false. Не понял зачем надо, сохранил из интереса
# enableAllFirmware = true;
# Разные способы управлять яркостью экрана и подсветки для юзеров в группе video
# Подробности тут https://wiki.archlinux.org/title/Backlight#Backlight_utilities
# brillo.enable = true;
# acpilight.enable = true;
amdgpu = {
opencl.enable = true; # # Enable OpenCL support using ROCM runtime library.
amdvlk = {
enable = true; # Enable AMDVLK Vulkan driver.
support32Bit.enable = true; # Enable 32-bit driver support.
supportExperimental.enable = true; # Enable Experimental features support.
# settings = {}; # Runtime settings for AMDVLK to be configured /etc/amd/amdVulkanSettings.cfg.
};
};
graphics = { # hardware.opengl переименован в hardware.graphics в unstable ветке
enable = true;
enable32Bit = true; # install 32-bit drivers for 32-bit applications (such as Wine).
extraPackages = with pkgs; [ # Мб часть пакетов стоит удалить отсюда и закинуть в обычные пакеты
amdvlk # AMD Open Source Driver For Vulkan
vulkan-tools
dxvk # Чтоб wine игры запускались через vulkan, а не opengl (Direct3D 8/9/10/11)
vkd3d # Чтоб wine игры запускались через vulkan, а не opengl (Direct3D 12)
# vkbasalt # Баф Vulkan для улучшения визуальной графики игр https://github.com/DadSchoorse/vkBasalt
libva # VAAPI (Video Acceleration API)
libva-utils # VAAPI (Video Acceleration API)
rocmPackages.clr.icd # OpenCL
clinfo # Проверяет работает ли OpenCL?
];
# extraPackages32 = with pkgs; [ # 32 bit
# driversi686Linux.amdvlk # Vulkan support for 32-bit applications
# ];
};
opentabletdriver.enable = true; # Установить, настроить и добавить в автозапуск otd
keyboard.qmk.enable = true; # Еnable non-root access to the firmware of QMK keyboards.
};
# HIP
# Most software has the HIP libraries hard-coded. You can work around it on NixOS by using:
# systemd.tmpfiles.rules = [
# "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}"
# ];
boot.initrd.kernelModules = [ "amdgpu" ];
# Для AMD существует два драйвера Vulkan
# Один официальный от AMD - amdvlk
# Второй начат сообществом и сейчас поддерживается Valve - radv
# В разных ситуациях разные драйверы будут лучше работать
# В некоторых играх лучше работает radv, в некоторых amdvlk
# environment.variables.AMD_VULKAN_ICD = "RADV";
}