diff options
author | tv <tv@krebsco.de> | 2018-05-09 11:07:27 +0200 |
---|---|---|
committer | tv <tv@krebsco.de> | 2018-05-09 11:07:27 +0200 |
commit | 3f3c12dcd06ba211a484aabf011880a83e5832fd (patch) | |
tree | e713b5f6e9084c3ff5cf185a1aafc12437822ea8 /jeschli/2configs/xserver/xserver.conf.nix | |
parent | edafe24e94252e2be936a760ce47485c8e4fa0af (diff) | |
parent | af75b96fbe412527c4bf9129de850bcab3e7c7cb (diff) |
Merge remote-tracking branch 'prism/master' (despite bad style)
Diffstat (limited to 'jeschli/2configs/xserver/xserver.conf.nix')
-rw-r--r-- | jeschli/2configs/xserver/xserver.conf.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/jeschli/2configs/xserver/xserver.conf.nix b/jeschli/2configs/xserver/xserver.conf.nix new file mode 100644 index 000000000..6f34e0150 --- /dev/null +++ b/jeschli/2configs/xserver/xserver.conf.nix @@ -0,0 +1,40 @@ +{ config, lib, pkgs, ... }: + +with import <stockholm/lib>; + +let + cfg = config.services.xserver; +in + +pkgs.stdenv.mkDerivation { + name = "xserver.conf"; + + xfs = optionalString (cfg.useXFS != false) + ''FontPath "${toString cfg.useXFS}"''; + + inherit (cfg) config; + + buildCommand = + '' + echo 'Section "Files"' >> $out + echo $xfs >> $out + + for i in ${toString config.fonts.fonts}; do + if test "''${i:0:''${#NIX_STORE}}" == "$NIX_STORE"; then + for j in $(find $i -name fonts.dir); do + echo " FontPath \"$(dirname $j)\"" >> $out + done + fi + done + + for i in $(find ${toString cfg.modules} -type d); do + if test $(echo $i/*.so* | wc -w) -ne 0; then + echo " ModulePath \"$i\"" >> $out + fi + done + + echo 'EndSection' >> $out + + echo "$config" >> $out + ''; +} |