LINUX.ORG.RU

Nixos


79

6

Всего сообщений: 1

NixOS + Radeon R9 270 + Tearing

Дано: есть машина с NixOS и с видеокартой Radeon R9 270. Надумал я, наконец, настроить NixOS, подружить с видеокартой и попытаться избавиться от тиринга.

Долго искал, оказалось, что в настроечном файле «/etc/nixos/configuration.nix» для значения «services.xserver.videoDrivers» можно указывать и «radeon». Хотя этого нет в руководстве «man configuration.nix». Это для того, чтобы X.org подгрузил требуемый драйвер.

Теперь по-поводу тиринга: избавиться от него помогло указание

  services.xserver.deviceSection = ''
Option "TearFree" "true"
'';

Весь мой конфигурационный файл:

> cat /etc/nixos/configuration.nix

{ config, pkgs, ... }:

{
  imports =
    [ # Include the results of the hardware scan.
      ./hardware-configuration.nix
      <home-manager/nixos>
    ];

  boot.loader.grub.enable = true;
  boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only
  boot.initrd.kernelModules = [ "amdgpu" ];
  boot.supportedFilesystems = [ "ntfs" ];

  # Enable the X11 windowing system.
  services.acpid.enable = true;
  services.xserver.videoDrivers = [ "radeon" ];
  services.xserver.deviceSection = ''
Option "TearFree" "true"
'';
  services.xserver.enable = true;
  services.xserver.desktopManager.mate.enable = true;

  # Enable sound.
  sound.enable = true;
  hardware.pulseaudio.enable = true;

  programs.adb.enable = true;
  programs.fish.enable = true;

  time.timeZone = "Europe/Moscow";
  # Define a user account. Don't forget to set a password with ‘passwd’.
  users.users.czan = {
     isNormalUser = true;
     extraGroups = [ "wheel" "adbusers"]; # Enable ‘sudo’ for the user.
     shell = pkgs.fish;
     packages = with pkgs; [
       firefox
       emacs
       gcc
       sakura
       dmenu
       xmobar
       zathura
       mc
       mpv
       qbittorrent
       rustup
       anki
       xorg.xmodmap
       gdb
       minicom
       openocd
       usbutils
       git
       eltclsh
       nethack
       sbcl
       libreoffice-qt
       hunspell
       hunspellDicts.ru_RU
       hunspellDicts.en_US
       (retroarch.override {
        cores = with libretro; [
          genesis-plus-gx
          snes9x
          beetle-psx
        ];
       })
      p7zip
      unrar-wrapper
      wineWowPackages.stable
      winetricks
     ];
   };

 environment.systemPackages = with pkgs; [
   vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
   wget
   jetbrains.idea-community
   pavucontrol
 ];

  system.stateVersion = "22.11"; # Did you read the comment?
}

 , ,

czan
()