diff --git a/hosts/voyager/default.nix b/hosts/voyager/default.nix index 820d8ff..29a64d0 100644 --- a/hosts/voyager/default.nix +++ b/hosts/voyager/default.nix @@ -226,6 +226,7 @@ }; qalculate-gtk.enable = true; virtualbox.enable = true; + wireshark.enable = true; }; file-managers = { pcmanfm-qt.enable = true; diff --git a/options/home/programs/default.nix b/options/home/programs/default.nix index 7b6be36..114aaca 100644 --- a/options/home/programs/default.nix +++ b/options/home/programs/default.nix @@ -48,6 +48,7 @@ in { mpv.enable = mkEnableOption "MPV (General-purpose media player)"; qalculate-gtk.enable = mkEnableOption "qalculate-gtk (The ultimate desktop calculator)"; virtualbox.enable = mkEnableOption "VirtualBox"; + wireshark.enable = mkEnableOption "WireShark (Network protocol analyzer)"; }; file-managers = { diff --git a/system/roles/workstation/programs/default.nix b/system/roles/workstation/programs/default.nix index fc41a58..b833841 100644 --- a/system/roles/workstation/programs/default.nix +++ b/system/roles/workstation/programs/default.nix @@ -5,5 +5,6 @@ ./thunar.nix ./virtualbox.nix ./steam.nix + ./wireshark.nix ]; } diff --git a/system/roles/workstation/programs/wireshark.nix b/system/roles/workstation/programs/wireshark.nix new file mode 100644 index 0000000..d3978c9 --- /dev/null +++ b/system/roles/workstation/programs/wireshark.nix @@ -0,0 +1,21 @@ +{ + lib, + pkgs, + config, + ... +}: let + inherit (lib) mkIf; + cfgUser = config.myOptions.system.username; + cfg = config.myOptions.home-manager.programs.applications.wireshark; + deviceType = config.myOptions.device.roles.type; + acceptedTypes = ["laptop" "desktop"]; +in { + config = mkIf ((builtins.elem deviceType acceptedTypes) && cfg.enable) { + programs.wireshark = { + enable = true; + package = pkgs.wireshark; + }; + + users.extraGroups.wireshark.members = ["${cfgUser}"]; + }; +}