cask 'wireshark-chmodbpf' do version '2.4.3' sha256 '61f500c923b729be56b4bf453c2fca865cd921b8cc153da8a79d45a3f932bdd3' url "https://www.wireshark.org/download/osx/Wireshark%20#{version}%20Intel%2064.dmg" appcast 'https://www.wireshark.org/download/osx/', checkpoint: 'ed58220a9b13fb3ddcfce3202b526284f66d6236cb98e3b5a44a786731878105' name 'Wireshark-ChmodBPF' homepage 'https://www.wireshark.org/' conflicts_with cask: 'wireshark' depends_on macos: '>= :mountain_lion' pkg "Wireshark #{version} Intel 64.pkg", choices: [ { 'choiceIdentifier' => 'wireshark', 'choiceAttribute' => 'selected', 'attributeSetting' => 0, }, { 'choiceIdentifier' => 'chmodbpf', 'choiceAttribute' => 'selected', 'attributeSetting' => 1, }, { 'choiceIdentifier' => 'cli', 'choiceAttribute' => 'selected', 'attributeSetting' => 0, }, ] postflight do system_command '/usr/sbin/dseditgroup', args: [ '-o', 'edit', '-a', Etc.getpwuid(Process.euid).name, '-t', 'user', '--', 'access_bpf' ], sudo: true end uninstall_preflight do set_ownership '/Library/Application Support/Wireshark' end uninstall pkgutil: 'org.wireshark.ChmodBPF.pkg', launchctl: 'org.wireshark.ChmodBPF', script: { executable: '/usr/sbin/dseditgroup', args: ['-o', 'delete', 'access_bpf'], must_succeed: false, sudo: true, } caveats do reboot <<~EOS This cask will install only the ChmodBPF package from the current Wireshark stable install package. An access_bpf group will be created and its members allowed access to BPF devices at boot to allow unprivileged packet captures. This cask is not required if installing the Wireshark cask. It is meant to support Wireshark installed from Homebrew or other cases where unprivileged access to macOS packet capture devices is desired without installing the binary distribution of Wireshark. The user account used to install this cask will be added to the access_bpf group automatically. EOS end end