/usr/share/apport/package-hooks/source_unity-system-compositor.py is in unity-system-compositor 0.4.3+16.04.20160323-0ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | from apport.hookutils import *
def attach_graphic_card_pci_info(report, ui=None):
'''
Extracts the device system and subsystem IDs for the video card.
Note that the user could have multiple video cards installed, so
this may return a multi-line string.
'''
info = ''
display_pci = pci_devices(PCI_DISPLAY)
for paragraph in display_pci.split('\n\n'):
for line in paragraph.split('\n'):
if ':' not in line:
continue
m = re.match(r'(.*?):\s(.*)', line)
if not m:
continue
key, value = m.group(1), m.group(2)
value = value.strip()
key = key.strip()
if "VGA compatible controller" in key:
info += "%s\n" % (value)
elif key == "Subsystem":
info += " %s: %s\n" %(key, value)
report['GraphicsCard'] = info
def add_info(report, ui=None):
attach_file_if_exists(report, '/var/log/boot.log', 'BootLog')
attach_root_command_outputs(report, { 'LightDMLog': 'cat /var/log/lightdm/lightdm.log',
'LightDMLogOld': 'cat /var/log/lightdm/lightdm.log.old',
'UnitySystemCompositorLog': 'cat /var/log/lightdm/unity-system-compositor.log',
'UnitySystemCompositorLogOld': 'cat /var/log/lightdm/unity-system-compositor.log.old' })
report['version.libdrm'] = package_versions('libdrm2')
report['version.lightdm'] = package_versions('lightdm')
report['version.mesa'] = package_versions('libegl1-mesa-dev')
attach_graphic_card_pci_info(report, ui)
return True
if __name__ == '__main__':
import sys
report = {}
if not add_info(report, None):
print("Unreportable")
sys.exit(1)
keys = report.keys()
keys.sort()
for key in keys:
print("[%s]\n%s\n" %(key, report[key]))
|