100 lines
2.4 KiB
Nix
100 lines
2.4 KiB
Nix
{ user }: { lib, pkgs, config, ... }:
|
|
with lib;
|
|
{
|
|
options.roles.work = {
|
|
enable = mkEnableOption "work packages";
|
|
};
|
|
|
|
config = mkIf config.roles.work.enable {
|
|
|
|
roles.email = {
|
|
enable = true;
|
|
email = "tristan.beedell@cryoserver.com";
|
|
terminal = false;
|
|
};
|
|
|
|
roles.dev.enable = true;
|
|
|
|
programs.editor = {
|
|
enable = true;
|
|
package = pkgs.vscode;
|
|
};
|
|
|
|
home-manager.users.${user}.imports = [{
|
|
|
|
home.packages = with pkgs; [
|
|
onedrive
|
|
kubectl
|
|
awscli2
|
|
docker-compose
|
|
minikube
|
|
kubernetes-helm
|
|
thunderbird
|
|
(import ../mkapp.nix "slack" {
|
|
inherit pkgs;
|
|
desktopName = "Slack";
|
|
app-id = "mpagibdhafmlkgpemeicgogjnhclenoc";
|
|
browser = "${brave}/opt/brave.com/brave/brave-browser";
|
|
})
|
|
(import ../mkapp.nix "teams" {
|
|
inherit pkgs;
|
|
browser = "${brave}/opt/brave.com/brave/brave-browser";
|
|
app-id = "cifhbcnohmdccbgoicgdjpfamggdegmo";
|
|
desktopName = "Microsoft Teams";
|
|
})
|
|
(pkgs.writeShellScriptBin "codex11" ''
|
|
NIXOS_OZONE_WL= ${pkgs.vscode}/bin/code $@
|
|
'')
|
|
];
|
|
|
|
gtk.gtk3.bookmarks = [
|
|
"file:///home/tristan/OneDrive/Documents/ OneDrive"
|
|
];
|
|
|
|
programs.vscode = {
|
|
extensions = with pkgs; [
|
|
vscode-extensions.ms-azuretools.vscode-docker
|
|
];
|
|
userSettings = {
|
|
"aws.telemetry" = false;
|
|
"gitlens.telemetry.enabled" = false;
|
|
"redhat.telemetry.enabled" = false;
|
|
};
|
|
};
|
|
|
|
wayland.windowManager.hyprland = {
|
|
extraConfig = ''
|
|
# === WORK MODULE ===
|
|
bind = SUPER, E, focuswindow, thunderbird
|
|
bind = SUPER, t, focuswindow, brave-cifhbcnohmdccbgoicgdjpfamggdegmo-Profile_2
|
|
'';
|
|
};
|
|
|
|
}];
|
|
|
|
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
|
# nonfree vscode required for dev containers
|
|
"vscode"
|
|
];
|
|
|
|
networking = {
|
|
networkmanager = {
|
|
plugins = [ pkgs.networkmanager-openvpn ];
|
|
};
|
|
};
|
|
|
|
users.users.tristan.extraGroups = ["docker"];
|
|
virtualisation.docker = {
|
|
enable = true;
|
|
storageDriver = "btrfs";
|
|
rootless = {
|
|
enable = false;
|
|
setSocketVariable = true;
|
|
daemon.settings = {
|
|
"userns-remap"= "default";
|
|
};
|
|
};
|
|
};
|
|
|
|
};
|
|
}
|