Xorg

From NixOS Wiki
Revision as of 22:11, 26 September 2024 by Levitsky (talk | contribs) (Translate to ukrainian)

HiDPI

Дисплеї HiDPI (High Dots Per Inch), також відомі під маркетинговою назвою Apple "Retina Display", є екранами з високою роздільною здатністю в порівняно невеликому форматі. Вони переважно зустрічаються у високоякісних ноутбуках та моніторах.

Не все програмне забезпечення ще працює добре у режимі високої роздільної здатності. Нижче наведено найпоширеніші налаштування, які роблять роботу на екрані HiDPI приємнішою:

  # більші шрифти для tty
  console.font =
    "${pkgs.terminus_font}/share/consolefonts/ter-u28n.psf.gz";
  services.xserver.dpi = 180;
  environment.variables = {
    ## Використовується GTK 3
    # `GDK_SCALE` обмежений цілочисельними значеннями
    GDK_SCALE = "2";
    # Зворотне GDK_SCALE
    GDK_DPI_SCALE = "0.5";

    # Used by Qt 5
    QT_AUTO_SCREEN_SCALE_FACTOR = "1";

    _JAVA_OPTIONS = "-Dsun.java2d.uiScale=2";
  };
  # Виставляти змінні для графічних системних служб користувача systemd
  services.xserver.displayManager.importedVariables = [
    "GDK_SCALE"
    "GDK_DPI_SCALE"
    "QT_AUTO_SCREEN_SCALE_FACTOR"
  ];

Щоб увімкнути масштабування HiDPI для застосунків Qt 6, додайте до .Xresources:

Xft.dpi: 180

Вимкнення прискорення тачпада та миші

Щоб вимкнути прискорення тачпада та миші, просто додайте наступні рядки до своєї configuration.nix

  services.xserver = {
    enable = true;

    ...

    libinput = {
      enable = true;

      # вимкнення прискорення миші
      mouse = {
        accelProfile = "flat";
      };

      # вимкнення прискорення тачпаду
      touchpad = {
        accelProfile = "flat";
      };
    };

    ...

  };

Щоб отримати більше інформації, дивіться man configuration.nix.

Виключення пакетів

Деякі пакети, такі як xterm, включені при увімкненні Xorg. Щоб виключити пакети, редагуйте configuration.nix як у прикладі, але переконайтеся, що у вас є інший термінал увімкнений у вашому складанні перед тим, як це зробити.

services.xserver.excludePackages = with pkgs; [
  xterm
];

Дивіться також