summaryrefslogtreecommitdiffstats
path: root/nixos/modules/config/fonts
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@mailbox.org>2017-03-12 17:06:44 -0500
committerThomas Tuegel <ttuegel@mailbox.org>2017-03-17 13:50:05 -0500
commit354ea69ae42d2a1b691a4f3cb771e59141bd0dcd (patch)
treeb6e7b55857d84905539f506b98a085dc6e7c00d9 /nixos/modules/config/fonts
parent65592837b6e62fb555d6e8c891f347428886c4f2 (diff)
fontconfig-penultimate: init at 0.2
Also provides a NixOS module.
Diffstat (limited to 'nixos/modules/config/fonts')
-rw-r--r--nixos/modules/config/fonts/fontconfig-penultimate.nix57
1 files changed, 57 insertions, 0 deletions
diff --git a/nixos/modules/config/fonts/fontconfig-penultimate.nix b/nixos/modules/config/fonts/fontconfig-penultimate.nix
new file mode 100644
index 000000000000..8e41d3421173
--- /dev/null
+++ b/nixos/modules/config/fonts/fontconfig-penultimate.nix
@@ -0,0 +1,57 @@
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+let
+ cfg = config.fonts.fontconfig.penultimate;
+
+ latestVersion = pkgs.fontconfig.configVersion;
+
+ # The configuration to be included in /etc/font/
+ confPkg = pkgs.runCommand "font-penultimate-conf" {} ''
+ support_folder=$out/etc/fonts/conf.d
+ latest_folder=$out/etc/fonts/${latestVersion}/conf.d
+
+ mkdir -p $support_folder
+ mkdir -p $latest_folder
+
+ # fontconfig ultimate various configuration files
+ ln -s ${pkgs.fontconfig-penultimate}/etc/fonts/conf.d/*.conf \
+ $support_folder
+ ln -s ${pkgs.fontconfig-penultimate}/etc/fonts/conf.d/*.conf \
+ $latest_folder
+ '';
+
+in
+{
+
+ options = {
+
+ fonts = {
+
+ fontconfig = {
+
+ penultimate = {
+ enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Enable fontconfig-penultimate settings to supplement the
+ NixOS defaults by providing per-font rendering defaults and
+ metric aliases.
+ '';
+ };
+ };
+
+ };
+ };
+
+ };
+
+ config = mkIf (config.fonts.fontconfig.enable && cfg.enable) {
+
+ fonts.fontconfig.confPackages = [ confPkg ];
+
+ };
+
+}