summaryrefslogtreecommitdiff
path: root/plymouth/debian/source_plymouth.apport
diff options
context:
space:
mode:
Diffstat (limited to 'plymouth/debian/source_plymouth.apport')
-rw-r--r--plymouth/debian/source_plymouth.apport41
1 files changed, 41 insertions, 0 deletions
diff --git a/plymouth/debian/source_plymouth.apport b/plymouth/debian/source_plymouth.apport
new file mode 100644
index 0000000..98fa204
--- /dev/null
+++ b/plymouth/debian/source_plymouth.apport
@@ -0,0 +1,41 @@
+'''apport package hook for plymouth
+
+Copyright 2010 Canonical Ltd.
+Authors: Steve Langasek <steve.langasek@ubuntu.com>,
+ Brian Murray <brian@ubuntu.com>
+'''
+
+from apport.hookutils import *
+
+import os.path
+
+
+def _attach_file_filtered(report, path, key=None):
+ '''filter out password from grub configuration'''
+ if not key:
+ key = path_to_key(path)
+
+ if os.path.exists(path):
+ with open(path,'r') as f:
+ filtered = [l if not l.startswith('password')
+ else '### PASSWORD LINE REMOVED ###'
+ for l in f.readlines()]
+ report[key] = ''.join(filtered)
+
+
+def add_info(report):
+ attach_hardware(report)
+ attach_file(report, '/proc/fb', 'ProcFB')
+ attach_file(report, '/proc/cmdline', 'ProcCmdLine')
+ attach_file(report, '/var/log/boot.log', 'BootLog')
+ debug_log = '/var/log/plymouth-debug.log'
+ if os.path.exists(debug_log):
+ attach_root_command_outputs(report,
+ {'PlymouthDebug': 'cat %s' % debug_log})
+ _attach_file_filtered(report, '/etc/default/grub', 'EtcDefaultGrub')
+ default_alternative = '/etc/alternatives/default.plymouth'
+ if os.path.exists(default_alternative):
+ report['DefaultPlymouth'] = command_output(['readlink', default_alternative])
+ text_alternative = '/etc/alternatives/text.plymouth'
+ if os.path.exists(text_alternative):
+ report['TextPlymouth'] = command_output(['readlink', text_alternative])
bgstack15