From bd18e491a90adf3a103d808ddffd5c6fbb4622a5 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Wed, 24 May 2017 17:25:19 +0300 Subject: fontconfig service: drop dpi option Recommend to use services.xserver.dpi option instead. Mention in the documentation that it's a sledgehammer approach and monitor settings should be used instead. Also don't set DPI in fontconfig settings; fontconfig should use Xft settings by default so let's not override one value in multiple places. For example, user now can set DPI via ~/.Xresources properly. --- .../manual/from_md/release-notes/rl-2111.section.xml | 10 ++++++++++ nixos/doc/manual/release-notes/rl-2111.section.md | 4 ++++ nixos/modules/config/fonts/fontconfig.nix | 18 +----------------- .../modules/services/x11/display-managers/default.nix | 1 - nixos/modules/services/x11/xserver.nix | 6 +++++- 5 files changed, 20 insertions(+), 19 deletions(-) diff --git a/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml index 86031791b1a..37dfc398734 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml @@ -779,6 +779,16 @@ Superuser created successfully. group. + + + The fontconfig service’s dpi option has been removed. + Fontconfig should use Xft settings by default so there’s no + need to override one value in multiple places. The user can + set DPI via ~/.Xresources properly, or at the system level per + monitor, or as a last resort at the system level with + services.xserver.dpi. + + The yambar package has been split into diff --git a/nixos/doc/manual/release-notes/rl-2111.section.md b/nixos/doc/manual/release-notes/rl-2111.section.md index 231fc05f88b..2c1886a4deb 100644 --- a/nixos/doc/manual/release-notes/rl-2111.section.md +++ b/nixos/doc/manual/release-notes/rl-2111.section.md @@ -223,6 +223,10 @@ subsonic-compatible api. Available as [navidrome](#opt-services.navidrome.enable - The `openrazer` and `openrazer-daemon` packages as well as the `hardware.openrazer` module now require users to be members of the `openrazer` group instead of `plugdev`. With this change, users no longer need be granted the entire set of `plugdev` group permissions, which can include permissions other than those required by `openrazer`. This is desirable from a security point of view. The setting [`harware.openrazer.users`](options.html#opt-services.hardware.openrazer.users) can be used to add users to the `openrazer` group. +- The fontconfig service's dpi option has been removed. + Fontconfig should use Xft settings by default so there's no need to override one value in multiple places. + The user can set DPI via ~/.Xresources properly, or at the system level per monitor, or as a last resort at the system level with `services.xserver.dpi`. + - The `yambar` package has been split into `yambar` and `yambar-wayland`, corresponding to the xorg and wayland backend respectively. Please switch to `yambar-wayland` if you are on wayland. - The `services.minio` module gained an additional option `consoleAddress`, that diff --git a/nixos/modules/config/fonts/fontconfig.nix b/nixos/modules/config/fonts/fontconfig.nix index 72827c5abaa..1e68fef7ce7 100644 --- a/nixos/modules/config/fonts/fontconfig.nix +++ b/nixos/modules/config/fonts/fontconfig.nix @@ -78,14 +78,6 @@ let - ${optionalString (cfg.dpi != 0) '' - - - ${toString cfg.dpi} - - - ''} - ''; @@ -237,6 +229,7 @@ in (mkRemovedOptionModule [ "fonts" "fontconfig" "hinting" "style" ] "") (mkRemovedOptionModule [ "fonts" "fontconfig" "forceAutohint" ] "") (mkRemovedOptionModule [ "fonts" "fontconfig" "renderMonoTTFAsBitmap" ] "") + (mkRemovedOptionModule [ "fonts" "fontconfig" "dpi" ] "Use display server-specific options") ] ++ lib.forEach [ "enable" "substitutions" "preset" ] (opt: lib.mkRemovedOptionModule [ "fonts" "fontconfig" "ultimate" "${opt}" ] '' The fonts.fontconfig.ultimate module and configuration is obsolete. @@ -282,15 +275,6 @@ in ''; }; - dpi = mkOption { - type = types.int; - default = 0; - description = '' - Force DPI setting. Setting to 0 disables DPI - forcing; the DPI detected for the display will be used. - ''; - }; - localConf = mkOption { type = types.lines; default = ""; diff --git a/nixos/modules/services/x11/display-managers/default.nix b/nixos/modules/services/x11/display-managers/default.nix index e04fcdaf414..584dfb63c4d 100644 --- a/nixos/modules/services/x11/display-managers/default.nix +++ b/nixos/modules/services/x11/display-managers/default.nix @@ -18,7 +18,6 @@ let fontconfig = config.fonts.fontconfig; xresourcesXft = pkgs.writeText "Xresources-Xft" '' - ${optionalString (fontconfig.dpi != 0) ''Xft.dpi: ${toString fontconfig.dpi}''} Xft.antialias: ${if fontconfig.antialias then "1" else "0"} Xft.rgba: ${fontconfig.subpixel.rgba} Xft.lcdfilter: lcd${fontconfig.subpixel.lcdfilter} diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix index 7316f6fcfe5..ad9bd88f98a 100644 --- a/nixos/modules/services/x11/xserver.nix +++ b/nixos/modules/services/x11/xserver.nix @@ -297,7 +297,11 @@ in dpi = mkOption { type = types.nullOr types.int; default = null; - description = "DPI resolution to use for X server."; + description = '' + Force global DPI resolution to use for X server. It's recommended to + use this only when DPI is detected incorrectly; also consider using + Monitor section in configuration file instead. + ''; }; updateDbusEnvironment = mkOption { -- cgit 1.4.1