I noticed that the Config tab is not shown for users with the global-read role. I found if I change the following I can get it to show, not sure if this was by design, or just an oversight.
app/Http/Controllers/Device/Tabs/ShowConfigController.php calls:
phpauth()->user()->can(‘show-config’, $device)
Fix — change to:
phpauth()->user()->can(‘showConfig’, $device)
Then in /app/Providers/AppServiceProvider.php
The global-read role is only granted abilities matching /^(\S+.)?view(All|Any)?$/, which does not include showConfig.
Fix — change the regex to:
phppreg_match(‘/^(\S+.)?(?:view(?:All|Any)?|showConfig)$/’, $ability, $match)