Reformat using nixpkgs-fmt

This commit is contained in:
Tim Schubert 2021-01-02 14:23:50 +01:00
parent 368ed0797d
commit 5a734099bf
Signed by: dadada
GPG key ID: EEB8D1CE62C4DFEA
36 changed files with 209 additions and 168 deletions

View file

@ -12,7 +12,7 @@ rec {
hosts = import ./hosts; hosts = import ./hosts;
tubslatex = callPackage ./pkgs/tubslatex {}; tubslatex = callPackage ./pkgs/tubslatex { };
keys = callPackage ./pkgs/keys {}; keys = callPackage ./pkgs/keys { };
homePage = callPackage ./pkgs/homePage {}; homePage = callPackage ./pkgs/homePage { };
} }

View file

@ -7,7 +7,8 @@ let
"media.local" "media.local"
]; ];
backups = "/mnt/storage/backup"; backups = "/mnt/storage/backup";
in { in
{
imports = [ imports = [
../../modules/profiles/base ../../modules/profiles/base
]; ];
@ -107,13 +108,22 @@ in {
allowPing = true; allowPing = true;
allowedTCPPorts = [ allowedTCPPorts = [
22 # SSH 22 # SSH
80 443 # HTTP(S) 80
111 2049 # NFS 443 # HTTP(S)
137 138 139 445 # SMB 111
2049 # NFS
137
138
139
445 # SMB
]; ];
allowedUDPPorts = [ allowedUDPPorts = [
137 138 139 445 # SMB 137
111 2049 # NFS 138
139
445 # SMB
111
2049 # NFS
51234 # Wireguard 51234 # Wireguard
]; ];
}; };
@ -121,16 +131,16 @@ in {
security.acme = { security.acme = {
email = "d553a78d-0349-48db-9c20-5b27af3a1dfc@dadada.li"; email = "d553a78d-0349-48db-9c20-5b27af3a1dfc@dadada.li";
acceptTerms = true; acceptTerms = true;
# certs."webchat.dadada.li" = { # certs."webchat.dadada.li" = {
# credentialsFile = "/var/lib/lego/acme-joker.env"; # credentialsFile = "/var/lib/lego/acme-joker.env";
# dnsProvider = "joker"; # dnsProvider = "joker";
# postRun = "systemctl reload nginx.service"; # postRun = "systemctl reload nginx.service";
# }; # };
# certs."weechat.dadada.li" = { # certs."weechat.dadada.li" = {
# credentialsFile = "/var/lib/lego/acme-joker.env"; # credentialsFile = "/var/lib/lego/acme-joker.env";
# dnsProvider = "joker"; # dnsProvider = "joker";
# postRun = "systemctl reload nginx.service"; # postRun = "systemctl reload nginx.service";
# }; # };
}; };
users.users."mist" = { users.users."mist" = {

View file

@ -2,7 +2,8 @@
let let
hostName = "surgat"; hostName = "surgat";
this = import ../.. { inherit pkgs; }; this = import ../.. { inherit pkgs; };
in { in
{
imports = [ this.profiles.base ]; imports = [ this.profiles.base ];
networking.hostName = hostName; networking.hostName = hostName;
@ -43,7 +44,8 @@ in {
allowPing = true; allowPing = true;
allowedTCPPorts = [ allowedTCPPorts = [
22 # SSH 22 # SSH
80 443 # HTTPS 80
443 # HTTPS
]; ];
allowedUDPPorts = [ allowedUDPPorts = [
51234 # Wireguard 51234 # Wireguard
@ -60,10 +62,10 @@ in {
boot.loader.grub.version = 2; boot.loader.grub.version = 2;
boot.loader.grub.device = "/dev/sda"; boot.loader.grub.device = "/dev/sda";
networking.interfaces."ens3".ipv6.addresses = [ { networking.interfaces."ens3".ipv6.addresses = [{
address = "2a01:4f8:c17:1d70::"; address = "2a01:4f8:c17:1d70::";
prefixLength = 64; prefixLength = 64;
} ]; }];
networking.defaultGateway6 = { networking.defaultGateway6 = {
address = "fe80::1"; address = "fe80::1";

View file

@ -3,15 +3,16 @@
with lib; with lib;
let let
cfg = config.dadada.admin; cfg = config.dadada.admin;
in { in
{
options.dadada.admin = { options.dadada.admin = {
enable = mkEnableOption "Enable admin access"; enable = mkEnableOption "Enable admin access";
users = mkOption { users = mkOption {
type = with types; attrsOf (listOf path); type = with types; attrsOf (listOf path);
default = []; default = [ ];
description = '' description = ''
List of admin users with root access to all the machine. List of admin users with root access to all the machine.
''; '';
example = literalExample "\"user1\" = [ /path/to/key1 /path/to/key2 ]"; example = literalExample "\"user1\" = [ /path/to/key1 /path/to/key2 ]";
}; };
@ -32,12 +33,14 @@ in {
users.mutableUsers = false; users.mutableUsers = false;
users.users = mapAttrs (user: keys: ( users.users = mapAttrs
{ (user: keys: (
extraGroups = [ "wheel" ]; {
isNormalUser = true; extraGroups = [ "wheel" ];
openssh.authorizedKeys.keyFiles = keys; isNormalUser = true;
})) cfg.users; openssh.authorizedKeys.keyFiles = keys;
}))
cfg.users;
networking.firewall.allowedTCPPorts = [ 22 ]; networking.firewall.allowedTCPPorts = [ 22 ];
@ -49,9 +52,8 @@ in {
services.tor.hiddenServices = { services.tor.hiddenServices = {
"rat" = mkIf cfg.rat.enable { "rat" = mkIf cfg.rat.enable {
name = "rat"; name = "rat";
map = [ { port = 22; } ]; map = [{ port = 22; }];
}; };
}; };
}; };
} }

View file

@ -1,7 +1,7 @@
{ config, pkgs, lib, ...}: { config, pkgs, lib, ... }:
with lib; with lib;
let let
backupExcludes = [ backupExcludes = [
"/backup" "/backup"
"/dev" "/dev"
"/efi" "/efi"
@ -20,7 +20,8 @@ let
"/var/tmp" "/var/tmp"
]; ];
cfg = config.dadada.backupClient; cfg = config.dadada.backupClient;
in { in
{
options.dadada.backupClient = { options.dadada.backupClient = {
enable = mkEnableOption "Enable backup client"; enable = mkEnableOption "Enable backup client";
gs = mkEnableOption "Enable backup to GS location"; gs = mkEnableOption "Enable backup to GS location";
@ -51,8 +52,8 @@ in {
within = "1d"; # Keep all archives from the last day within = "1d"; # Keep all archives from the last day
daily = 7; daily = 7;
weekly = 2; weekly = 2;
monthly = -1; # Keep at least one archive for each month monthly = -1; # Keep at least one archive for each month
yearly = -1; # Keep at least one archive for each year yearly = -1; # Keep at least one archive for each year
}; };
startAt = "monthly"; startAt = "monthly";
}; };
@ -63,7 +64,7 @@ in {
]; ];
}; };
services.borgbackup.jobs.bs = mkIf cfg.bs{ services.borgbackup.jobs.bs = mkIf cfg.bs {
paths = "/"; paths = "/";
exclude = backupExcludes; exclude = backupExcludes;
repo = "borg@media.dadada.li:/mnt/storage/backup/${config.networking.hostName}"; repo = "borg@media.dadada.li:/mnt/storage/backup/${config.networking.hostName}";

View file

@ -1,7 +1,8 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
let let
cfg = config.dadada.element; cfg = config.dadada.element;
in { in
{
options.dadada.element = { options.dadada.element = {
enable = lib.mkEnableOption "Enable element webapp"; enable = lib.mkEnableOption "Enable element webapp";
}; };

View file

@ -3,7 +3,8 @@ with lib;
let let
luks = config.dadada.luks; luks = config.dadada.luks;
fido2 = config.dadada.fido2; fido2 = config.dadada.fido2;
in { in
{
options = { options = {
dadada.luks = { dadada.luks = {

View file

@ -6,7 +6,8 @@ let
ipv6 = "fd42:dead:beef::/48"; ipv6 = "fd42:dead:beef::/48";
ipv4 = "192.168.42.0/24"; ipv4 = "192.168.42.0/24";
allow = "192.168.42.0 fd42:dead:beef::"; allow = "192.168.42.0 fd42:dead:beef::";
in { in
{
options.dadada.fileShare = { options.dadada.fileShare = {
enable = mkEnableOption "Enable file share server"; enable = mkEnableOption "Enable file share server";
}; };
@ -47,4 +48,3 @@ in {
}; };
}; };
} }

View file

@ -1,7 +1,8 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
let let
cfg = config.dadada.gitea; cfg = config.dadada.gitea;
in { in
{
options.dadada.gitea = { options.dadada.gitea = {
enable = lib.mkEnableOption "Enable gitea"; enable = lib.mkEnableOption "Enable gitea";
}; };

View file

@ -13,21 +13,21 @@ with lib;
cursor = "#e8e8e8"; cursor = "#e8e8e8";
cursorForeground = "#1f2022"; cursorForeground = "#1f2022";
background = "#292b2e"; background = "#292b2e";
color0 = "#1f2022"; color0 = "#1f2022";
color8 = "#585858"; color8 = "#585858";
color7 = "#a3a3a3"; color7 = "#a3a3a3";
color15 = "#f8f8f8"; color15 = "#f8f8f8";
color1 = "#f2241f"; color1 = "#f2241f";
color9 = "#f2241f"; color9 = "#f2241f";
color2 = "#67b11d"; color2 = "#67b11d";
color10 = "#67b11d"; color10 = "#67b11d";
color3 = "#b1951d"; color3 = "#b1951d";
color11 = "#b1951d"; color11 = "#b1951d";
color4 = "#4f97d7"; color4 = "#4f97d7";
color12 = "#4f97d7"; color12 = "#4f97d7";
color5 = "#a31db1"; color5 = "#a31db1";
color13 = "#a31db1"; color13 = "#a31db1";
color6 = "#2d9574"; color6 = "#2d9574";
color14 = "#2d9574"; color14 = "#2d9574";
color16 = "#ffa500"; color16 = "#ffa500";
color17 = "#b03060"; color17 = "#b03060";

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.fish; cfg = config.dadada.home.fish;
in { in
{
options.dadada.home.fish = { options.dadada.home.fish = {
enable = mkEnableOption "Enable fish config"; enable = mkEnableOption "Enable fish config";
}; };
@ -45,21 +46,21 @@ in {
#end #end
''; '';
promptInit = '' promptInit = ''
function fish_prompt function fish_prompt
set last_status $status set last_status $status
printf '%s %s:%s ' \ printf '%s %s:%s ' \
(set_color red (set_color red
echo $last_status) \ echo $last_status) \
(set_color green (set_color green
hostname) \ hostname) \
(set_color blue (set_color blue
prompt_pwd) prompt_pwd)
set_color normal set_color normal
end end
function fish_right_prompt function fish_right_prompt
printf '%s' (__fish_git_prompt) printf '%s' (__fish_git_prompt)
end end
''; '';
shellAliases = { shellAliases = {
gst = "git status"; gst = "git status";

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.gpg; cfg = config.dadada.home.gpg;
in { in
{
options.dadada.home.gpg = { options.dadada.home.gpg = {
enable = mkEnableOption "Enable GnuPG config"; enable = mkEnableOption "Enable GnuPG config";
}; };

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.keyring; cfg = config.dadada.home.keyring;
in { in
{
options.dadada.home.keyring = { options.dadada.home.keyring = {
enable = mkEnableOption "Enable keyring config"; enable = mkEnableOption "Enable keyring config";
}; };

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.kitty; cfg = config.dadada.home.kitty;
in { in
{
options.dadada.home.kitty = { options.dadada.home.kitty = {
enable = mkEnableOption "Enable kitty config"; enable = mkEnableOption "Enable kitty config";
}; };

View file

@ -1,8 +1,9 @@
{ config, lib, pkgs, colors, ...}: { config, lib, pkgs, colors, ... }:
with lib; with lib;
let let
cfg = config.dadada.home.mako; cfg = config.dadada.home.mako;
in { in
{
options.dadada.home.mako = { options.dadada.home.mako = {
enable = mkEnableOption "Enable mako config"; enable = mkEnableOption "Enable mako config";
}; };

View file

@ -2,13 +2,14 @@
with lib; with lib;
let let
cfg = config.dadada.home.session; cfg = config.dadada.home.session;
in { in
{
options.dadada.home.session = { options.dadada.home.session = {
enable = mkEnableOption "Enable session variable management"; enable = mkEnableOption "Enable session variable management";
sessionVars = mkOption { sessionVars = mkOption {
description = "Session variables"; description = "Session variables";
type = types.attrs; type = types.attrs;
default = {}; default = { };
example = '' example = ''
EDITOR = "vim"; EDITOR = "vim";
PAGER = "less"; PAGER = "less";

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.ssh; cfg = config.dadada.home.ssh;
in { in
{
options.dadada.home.ssh = { options.dadada.home.ssh = {
enable = mkEnableOption "Enable SSH config"; enable = mkEnableOption "Enable SSH config";
}; };

View file

@ -1,8 +1,9 @@
{ config, pkgs, lib, colors, ...}: { config, pkgs, lib, colors, ... }:
with lib; with lib;
let let
cfg = config.dadada.home.sway; cfg = config.dadada.home.sway;
in { in
{
options.dadada.home.sway = { options.dadada.home.sway = {
enable = mkEnableOption "Enable Sway config"; enable = mkEnableOption "Enable Sway config";
}; };
@ -21,18 +22,18 @@ in {
swaylock swaylock
]); ]);
wayland.windowManager.sway = { wayland.windowManager.sway = {
enable = true; enable = true;
config = null; config = null;
extraConfig = (builtins.readFile ./config); extraConfig = (builtins.readFile ./config);
extraSessionCommands = '' extraSessionCommands = ''
export SDL_VIDEODRIVER=wayland export SDL_VIDEODRIVER=wayland
# needs qt5.qtwayland in systemPackages # needs qt5.qtwayland in systemPackages
export QT_QPA_PLATFORM=wayland export QT_QPA_PLATFORM=wayland
export QT_WAYLAND_DISABLE_WINDOWDECORATION="1" export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
# Fix for some Java AWT applications (e.g. Android Studio), # Fix for some Java AWT applications (e.g. Android Studio),
# use this if they aren't displayed properly: # use this if they aren't displayed properly:
export _JAVA_AWT_WM_NONREPARENTING=1 export _JAVA_AWT_WM_NONREPARENTING=1
''; '';
}; };
}; };

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.syncthing; cfg = config.dadada.home.syncthing;
in { in
{
options.dadada.home.syncthing = { options.dadada.home.syncthing = {
enable = mkEnableOption "Enable Syncthing config"; enable = mkEnableOption "Enable Syncthing config";
}; };

View file

@ -1,14 +1,14 @@
{ { config
config, , lib
lib, , pkgs
pkgs, , colors ? ../../lib/colors.nix
colors ? ../../lib/colors.nix, , ...
...
}: }:
with lib; with lib;
let let
cfg = config.dadada.home.termite; cfg = config.dadada.home.termite;
in { in
{
options.dadada.home.termite = { options.dadada.home.termite = {
enable = mkEnableOption "Enable termite config"; enable = mkEnableOption "Enable termite config";
}; };

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.tmux; cfg = config.dadada.home.tmux;
in { in
{
options.dadada.home.tmux = { options.dadada.home.tmux = {
enable = mkEnableOption "Enable tmux config"; enable = mkEnableOption "Enable tmux config";
}; };
@ -11,10 +12,10 @@ in {
enable = true; enable = true;
terminal = "xterm-256color"; terminal = "xterm-256color";
extraConfig = '' extraConfig = ''
set -g status on set -g status on
set-option -g set-titles on set-option -g set-titles on
set-option -g automatic-rename on set-option -g automatic-rename on
set-window-option -g mode-keys vi set-window-option -g mode-keys vi
''; '';
}; };
}; };

View file

@ -2,7 +2,7 @@
with lib; with lib;
let let
cfg = config.dadada.home.vim; cfg = config.dadada.home.vim;
vimPlugins = pkgs.callPackage ../../../pkgs/vimPlugins {}; vimPlugins = pkgs.callPackage ../../../pkgs/vimPlugins { };
in in
{ {
options.dadada.home.vim = { options.dadada.home.vim = {
@ -32,6 +32,9 @@ in
#pkgs.vimPlugins.clang_complete #pkgs.vimPlugins.clang_complete
]; ];
}; };
home.packages = [ pkgs.languagetool ]; home.packages = with pkgs; [
languagetool
nixpkgs-fmt
];
}; };
} }

View file

@ -19,7 +19,8 @@ let
"application/pdf" = "org.pwmt.zathura.desktop"; "application/pdf" = "org.pwmt.zathura.desktop";
}; };
cfg = config.dadada.home.xdg; cfg = config.dadada.home.xdg;
in { in
{
options.dadada.home.xdg = { options.dadada.home.xdg = {
enable = mkEnableOption "Enable XDG config"; enable = mkEnableOption "Enable XDG config";
}; };
@ -32,9 +33,9 @@ in {
defaultApplications = apps; defaultApplications = apps;
}; };
userDirs = { userDirs = {
download ="\$HOME/tmp"; download = "\$HOME/tmp";
music = "\$HOME/lib/music"; music = "\$HOME/lib/music";
videos ="\$HOME/lib/videos"; videos = "\$HOME/lib/videos";
pictures = "\$HOME/lib/pictures"; pictures = "\$HOME/lib/pictures";
documents = "\$HOME/lib"; documents = "\$HOME/lib";
desktop = "$HOME/tmp"; desktop = "$HOME/tmp";

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.home.zsh; cfg = config.dadada.home.zsh;
in { in
{
options.dadada.home.zsh = { options.dadada.home.zsh = {
enable = mkEnableOption "Enable ZSH config"; enable = mkEnableOption "Enable ZSH config";
}; };
@ -26,19 +27,19 @@ in {
plugins = [ plugins = [
]; ];
initExtra = '' initExtra = ''
source ~/.nix-profile/share/zsh-git-prompt/zshrc.sh source ~/.nix-profile/share/zsh-git-prompt/zshrc.sh
source ~/.nix-profile/share/fzf/key-bindings.zsh source ~/.nix-profile/share/fzf/key-bindings.zsh
source ~/.nix-profile/share/fzf/completion.zsh source ~/.nix-profile/share/fzf/completion.zsh
preexec() { echo -n -e "\033]0;$1\007" } preexec() { echo -n -e "\033]0;$1\007" }
PROMPT="%F{red}%?%f %F{green}%m%f:%F{blue}%~%f " PROMPT="%F{red}%?%f %F{green}%m%f:%F{blue}%~%f "
RPROMPT='$(git_super_status)' RPROMPT='$(git_super_status)'
#NIX_BUILD_SHELL="${pkgs.zsh}/bin/zsh" #NIX_BUILD_SHELL="${pkgs.zsh}/bin/zsh"
if [ "$TMUX" = "" ] if [ "$TMUX" = "" ]
then then
tmux tmux
fi fi
''; '';
profileExtra = '' profileExtra = ''
''; '';

View file

@ -1,8 +1,8 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
let let
cfg = config.dadada.homePage; cfg = config.dadada.homePage;
in with lib; { in
with lib; {
options.dadada.homePage = { options.dadada.homePage = {
enable = mkEnableOption "Enable home page"; enable = mkEnableOption "Enable home page";
}; };

View file

@ -1,14 +1,15 @@
{ config, pkgs, lib, ...}: { config, pkgs, lib, ... }:
with lib; with lib;
let let
cfg = config.dadada.networking; cfg = config.dadada.networking;
in { in
{
options.dadada.networking = { options.dadada.networking = {
useLocalResolver = mkEnableOption "Enable local caching name server"; useLocalResolver = mkEnableOption "Enable local caching name server";
wanInterfaces = mkOption { wanInterfaces = mkOption {
type = with types; listOf str; type = with types; listOf str;
description = "WAN network interfaces"; description = "WAN network interfaces";
default = []; default = [ ];
}; };
vpnExtension = mkOption { vpnExtension = mkOption {
type = with types; nullOr str; type = with types; nullOr str;
@ -73,7 +74,7 @@ in {
enable = true; enable = true;
allowedUDPPorts = [ allowedUDPPorts = [
51234 # Wireguard 51234 # Wireguard
5353 # mDNS 5353 # mDNS
]; ];
}; };
}; };

View file

@ -3,7 +3,8 @@
with lib; with lib;
let let
cfg = config.dadada.share; cfg = config.dadada.share;
in { in
{
options.dadada.share = { options.dadada.share = {
enable = mkEnableOption "Enable file share"; enable = mkEnableOption "Enable file share";
}; };
@ -27,4 +28,3 @@ in {
}; };
}; };
} }

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.steam; cfg = config.dadada.steam;
in { in
{
options.dadada.steam = { options.dadada.steam = {
enable = mkEnableOption "Enable Steam config"; enable = mkEnableOption "Enable Steam config";
}; };

View file

@ -2,7 +2,8 @@
with lib; with lib;
let let
cfg = config.dadada.autoUpgrade; cfg = config.dadada.autoUpgrade;
in { in
{
options.dadada.autoUpgrade = { options.dadada.autoUpgrade = {
enable = mkEnableOption "Enable automatic upgrades"; enable = mkEnableOption "Enable automatic upgrades";

View file

@ -21,13 +21,14 @@ let
}; };
}; };
}; };
in { in
{
options.dadada.vpnServer = { options.dadada.vpnServer = {
enable = mkEnableOption "Enable wireguard gateway"; enable = mkEnableOption "Enable wireguard gateway";
peers = mkOption { peers = mkOption {
description = "Set of extensions and public keys of peers"; description = "Set of extensions and public keys of peers";
type = with types; attrsOf (submodule wgPeer); type = with types; attrsOf (submodule wgPeer);
default = {}; default = { };
}; };
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
@ -37,11 +38,13 @@ in {
privateKeyFile = "/var/lib/wireguard/wg0-key"; privateKeyFile = "/var/lib/wireguard/wg0-key";
ips = [ "fd42:dead:beef:1337::0/64" ]; ips = [ "fd42:dead:beef:1337::0/64" ];
listenPort = 51234; listenPort = 51234;
peers = map (peer: ( peers = map
{ (peer: (
allowedIPs = [ "fd42:dead:beef:1337::${peer.id}/128" ]; {
publicKey = peer.key; allowedIPs = [ "fd42:dead:beef:1337::${peer.id}/128" ];
})) (attrValues cfg.peers); publicKey = peer.key;
}))
(attrValues cfg.peers);
}; };
}; };
} }

View file

@ -3,7 +3,8 @@
with lib; with lib;
let let
cfg = config.dadada.weechat; cfg = config.dadada.weechat;
in { in
{
options.dadada.weechat = { options.dadada.weechat = {
enable = mkEnableOption "Enable weechat relay"; enable = mkEnableOption "Enable weechat relay";
}; };
@ -55,4 +56,3 @@ in {
}; };
}; };
} }

View file

@ -1,11 +1,10 @@
self: super: self: super:
let let
isReserved = n: n == "lib" || n == "overlays" || n == "modules"; isReserved = n: n == "lib" || n == "overlays" || n == "modules";
nameValuePair = n: v: { name = n; value = v; }; nameValuePair = n: v: { name = n; value = v; };
attrs = import ./default.nix { pkgs = super; }; attrs = import ./default.nix { pkgs = super; };
in in
builtins.listToAttrs builtins.listToAttrs
(map (n: nameValuePair n attrs.${n}) (map (n: nameValuePair n attrs.${n})
(builtins.filter (n: !isReserved n) (builtins.filter (n: !isReserved n)
(builtins.attrNames attrs))) (builtins.attrNames attrs)))

View file

@ -1,25 +1,26 @@
self: super: self: super:
{ {
# Based on https://gist.github.com/clefru/9ed1186bf0b76d27e0ad20cbd9966b87 # Based on https://gist.github.com/clefru/9ed1186bf0b76d27e0ad20cbd9966b87
tubslatex = super.lib.overrideDerivation (super.texlive.combine { tubslatex = super.lib.overrideDerivation
inherit (super.texlive) scheme-full; (super.texlive.combine {
tubslatex.pkgs = [ (super.callPackage ../pkgs/tubslatex {}) ]; inherit (super.texlive) scheme-full;
}) (oldAttrs: { tubslatex.pkgs = [ (super.callPackage ../pkgs/tubslatex { }) ];
postBuild = '' })
# Save the udpmap.cfg because texlive.combine removes it. (oldAttrs: {
cat $out/share/texmf/web2c/updmap.cfg > $out/share/texmf/web2c/updmap.cfg.1 postBuild = ''
'' + oldAttrs.postBuild + '' # Save the udpmap.cfg because texlive.combine removes it.
# Move updmap.cfg into its original place and rerun mktexlsr, so that kpsewhich finds it cat $out/share/texmf/web2c/updmap.cfg > $out/share/texmf/web2c/updmap.cfg.1
rm $out/share/texmf/web2c/updmap.cfg || true '' + oldAttrs.postBuild + ''
cat $out/share/texmf/web2c/updmap.cfg.1 > $out/share/texmf/web2c/updmap.cfg # Move updmap.cfg into its original place and rerun mktexlsr, so that kpsewhich finds it
rm $out/share/texmf/web2c/updmap.cfg.1 rm $out/share/texmf/web2c/updmap.cfg || true
perl `type -P mktexlsr.pl` $out/share/texmf cat $out/share/texmf/web2c/updmap.cfg.1 > $out/share/texmf/web2c/updmap.cfg
yes | perl `type -P updmap.pl` --sys --syncwithtrees --force || true rm $out/share/texmf/web2c/updmap.cfg.1
perl `type -P updmap.pl` --sys --enable Map=NexusProSerif.map --enable Map=NexusProSans.map perl `type -P mktexlsr.pl` $out/share/texmf
# Regenerate .map files. yes | perl `type -P updmap.pl` --sys --syncwithtrees --force || true
perl `type -P updmap.pl` --sys perl `type -P updmap.pl` --sys --enable Map=NexusProSerif.map --enable Map=NexusProSans.map
''; # Regenerate .map files.
}); perl `type -P updmap.pl` --sys
'';
});
} }

View file

@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
buildPhase = ""; buildPhase = "";
installPhase = '' installPhase = ''
mkdir $out mkdir $out
cp * $out cp * $out
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -5,8 +5,8 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ unzip ]; nativeBuildInputs = [ unzip ];
buildInputs = [ unzip ]; buildInputs = [ unzip ];
installPhase = '' installPhase = ''
mkdir -p $out mkdir -p $out
cp -r * $out/ cp -r * $out/
''; '';
pname = "tubslatex"; pname = "tubslatex";
name = pname; name = pname;

View file

@ -1,3 +1,5 @@
setlocal expandtab setlocal expandtab
setlocal shiftwidth=2 setlocal shiftwidth=2
setlocal softtabstop=2 setlocal softtabstop=2
let b:ale_fixers = [ 'nixpkgs-fmt', 'remove_trailing_lines', 'trim_whitespace']