-
Notifications
You must be signed in to change notification settings - Fork 0
/
vd.nix
72 lines (66 loc) · 1.38 KB
/
vd.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
{
lib,
config,
pkgs,
...
}:
with lib;
let
cfg = config.my-nixos.vd;
eachUser = filterAttrs (user: cfg: cfg.enable) cfg;
userOpts = with types; {
options.enable = mkEnableOption "Visual design tools for this user";
};
in
{
options.my-nixos.vd =
with types;
mkOption {
description = "Set of users to be configured with visual design tools.";
type = attrsOf (submodule userOpts);
default = { };
};
config = mkIf (eachUser != { }) {
home-manager.users = mapAttrs (user: cfg: { my-nixos-hm.vd.enable = true; }) eachUser;
nixpkgs.config.allowUnfreePredicate =
pkg: builtins.elem (lib.getName pkg) [ "helvetica-neue-lt-std" ];
fonts.packages = with pkgs; [
aileron
barlow
cabin
dina-font
dm-sans
fira
fira-code
fira-code-symbols
font-awesome
garamond-libre
helvetica-neue-lt-std
ibm-plex
inter
jost
kanit-font
libre-baskerville
libre-bodoni
libre-franklin
liberation_ttf
manrope
mplus-outline-fonts.githubRelease
montserrat
noto-fonts
noto-fonts-emoji
oxygenfonts
roboto
roboto-mono
roboto-slab
roboto-serif
paratype-pt-sans
proggyfonts
raleway
redhat-official-fonts
rubik
source-sans-pro
ubuntu_font_family
];
};
}