91 lines
2.2 KiB
Nix
91 lines
2.2 KiB
Nix
{
|
|
pkgs,
|
|
inputs,
|
|
config,
|
|
system,
|
|
lib,
|
|
...
|
|
}:
|
|
|
|
with pkgs;
|
|
let
|
|
unstable = inputs.nixos-unstable.legacyPackages.${system};
|
|
in
|
|
{
|
|
|
|
schmittlauch.packages = {
|
|
graphics = true;
|
|
multimedia = true;
|
|
nixHelpers = true;
|
|
devTools = true;
|
|
pythonTools = true;
|
|
};
|
|
|
|
home.packages = [
|
|
wireshark # on NixOS systems enabled via system config
|
|
_1password
|
|
# also TODO: color schemes nix-darwin
|
|
];
|
|
|
|
# pinning theme is necessary until iTerm 3.5, because despite the dark terminal background, bat detects light mode and adapts theme
|
|
programs.bat.config.theme = "Visual Studio Dark+";
|
|
|
|
programs.ssh = {
|
|
enable = true;
|
|
# ssh host config
|
|
matchBlocks = {
|
|
|
|
"*" = {
|
|
extraOptions.IdentityAgent = "\"~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock\"";
|
|
};
|
|
|
|
"hydra01" = lib.hm.dag.entryAfter [ "*" ] {
|
|
hostname = "hydra01.access.whq.gocept.net";
|
|
user = "os";
|
|
};
|
|
"fcio-whq-jump" = lib.hm.dag.entryAfter [ "*" ] {
|
|
hostname = "vpn-whq.services.fcio.net";
|
|
extraOptions.LogLevel = "Verbose";
|
|
};
|
|
"fcio-rzob-jump" = lib.hm.dag.entryAfter [ "*" ] { hostname = "vpn-rzob.services.fcio.net"; };
|
|
};
|
|
};
|
|
|
|
programs.git =
|
|
let
|
|
contacts = import "${inputs.mysecrets}/contacts.nix" { inherit lib; };
|
|
in
|
|
{
|
|
includes =
|
|
[
|
|
{
|
|
condition = "gitdir:~/src/schmittlauch/";
|
|
contents = {
|
|
user = {
|
|
inherit (contacts.schmittlauch) name email;
|
|
};
|
|
};
|
|
}
|
|
]
|
|
# set default name for several other common locations
|
|
++ map (dir: {
|
|
condition = "gitdir:${dir}";
|
|
contents = {
|
|
user = {
|
|
inherit (contacts.work) name email;
|
|
};
|
|
};
|
|
}) [ "~/" ];
|
|
};
|
|
|
|
# some extra shell scripts
|
|
programs.zsh.initExtra = lib.mkAfter (
|
|
import ./scripts/reporsync.nix { inherit pkgs lib; }
|
|
+ import ./scripts/ssh-loop-fc.nix { inherit pkgs lib; }
|
|
);
|
|
|
|
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "1password-cli" ];
|
|
|
|
home.stateVersion = "22.05";
|
|
}
|