/usr/share/apport/package-hooks
NameSizeModeActions
cloud-init.py1760644editdlrm
cryptsetup.py10820644editdlrm
libatasmart4.py9430644editdlrm
openssh-client.py12130644editdlrm
openssh-server.py10040644editdlrm
source_apparmor.py27900644editdlrm
source_apport.py6230644editdlrm
source_byobu.py3390644editdlrm
source_console-setup.py3740644editdlrm
source_grub2.py38790644editdlrm
source_linux-aws-6.11.py66520644editdlrm
source_linux-aws-6.14.py66520644editdlrm
source_linux-aws-6.17.py66520644editdlrm
source_linux-aws-7.0.py66520644editdlrm
source_linux-aws-fips.py66520644editdlrm
source_linux-aws.py66520644editdlrm
source_linux-azure-6.11.py66520644editdlrm
source_linux-azure-6.14.py66520644editdlrm
source_linux-azure-6.17.py66520644editdlrm
source_linux-azure-7.0.py66520644editdlrm
source_linux-azure-fde-6.14.py66520644editdlrm
source_linux-azure-fde-6.17.py66520644editdlrm
source_linux-azure-fde-7.0.py66520644editdlrm
source_linux-azure-fde.py66520644editdlrm
source_linux-azure-fips.py66520644editdlrm
source_linux-azure-nvidia-6.14.py66520644editdlrm
source_linux-azure-nvidia-6.17.py66520644editdlrm
source_linux-azure-nvidia-7.0.py66520644editdlrm
source_linux-azure-nvidia.py66520644editdlrm
source_linux-azure.py66520644editdlrm
source_linux-bluefield-modules-signed.py66520644editdlrm
source_linux-bluefield-modules.py66520644editdlrm
source_linux-bluefield.py66520644editdlrm
source_linux-fips.py66520644editdlrm
source_linux-firmware.py66520644editdlrm
source_linux-gcp-6.11.py66520644editdlrm
source_linux-gcp-6.14.py66520644editdlrm
source_linux-gcp-6.17.py66520644editdlrm
source_linux-gcp-7.0.py66520644editdlrm
source_linux-gcp-fips.py66520644editdlrm
source_linux-gcp.py66520644editdlrm
source_linux-gke.py66520644editdlrm
source_linux-gkeop.py66520644editdlrm
source_linux-hwe-6.11.py66520644editdlrm
source_linux-hwe-6.14.py66520644editdlrm
source_linux-hwe-6.17.py66520644editdlrm
source_linux-hwe-7.0.py66520644editdlrm
source_linux-ibm-6.11.py66520644editdlrm
source_linux-ibm-gt-tdx.py66520644editdlrm
source_linux-ibm-gt.py66520644editdlrm
source_linux-ibm.py66520644editdlrm
source_linux-imx.py66520644editdlrm
source_linux-intel.py66520644editdlrm
source_linux-iot.py66520644editdlrm
source_linux-lowlatency-hwe-6.11.py66520644editdlrm
source_linux-lowlatency.py66520644editdlrm
source_linux-meta-aws-6.11.py66520644editdlrm
source_linux-meta-aws-6.14.py66520644editdlrm
source_linux-meta-aws-6.17.py66520644editdlrm
source_linux-meta-aws-7.0.py66520644editdlrm
source_linux-meta-aws-fips.py66520644editdlrm
source_linux-meta-aws.py66520644editdlrm
source_linux-meta-azure-6.11.py66520644editdlrm
source_linux-meta-azure-6.14.py66520644editdlrm
source_linux-meta-azure-6.17.py66520644editdlrm
source_linux-meta-azure-7.0.py66520644editdlrm
source_linux-meta-azure-fde-6.14.py66520644editdlrm
source_linux-meta-azure-fde-6.17.py66520644editdlrm
source_linux-meta-azure-fde-7.0.py66520644editdlrm
source_linux-meta-azure-fde.py66520644editdlrm
source_linux-meta-azure-fips.py66520644editdlrm
source_linux-meta-azure-nvidia-6.14.py66520644editdlrm
source_linux-meta-azure-nvidia-6.17.py66520644editdlrm
source_linux-meta-azure-nvidia-7.0.py66520644editdlrm
source_linux-meta-azure-nvidia.py66520644editdlrm
source_linux-meta-azure.py66520644editdlrm
source_linux-meta-bluefield.py66520644editdlrm
source_linux-meta-fips.py66520644editdlrm
source_linux-meta-gcp-6.11.py66520644editdlrm
source_linux-meta-gcp-6.14.py66520644editdlrm
source_linux-meta-gcp-6.17.py66520644editdlrm
source_linux-meta-gcp-7.0.py66520644editdlrm
source_linux-meta-gcp-fips.py66520644editdlrm
source_linux-meta-gcp.py66520644editdlrm
source_linux-meta-gke.py66520644editdlrm
source_linux-meta-gkeop.py66520644editdlrm
source_linux-meta-hwe-6.11.py66520644editdlrm
source_linux-meta-hwe-6.14.py66520644editdlrm
source_linux-meta-hwe-6.17.py66520644editdlrm
source_linux-meta-hwe-7.0.py66520644editdlrm
source_linux-meta-ibm-6.11.py66520644editdlrm
source_linux-meta-ibm-gt-tdx.py66520644editdlrm
source_linux-meta-ibm-gt.py66520644editdlrm
source_linux-meta-ibm.py66520644editdlrm
source_linux-meta-imx.py66520644editdlrm
source_linux-meta-intel.py66520644editdlrm
source_linux-meta-iot.py66520644editdlrm
source_linux-meta-lowlatency-hwe-6.11.py66520644editdlrm
source_linux-meta-lowlatency.py66520644editdlrm
source_linux-meta-mtk.py66520644editdlrm
source_linux-meta-nvidia-6.11.py66520644editdlrm
source_linux-meta-nvidia-6.14.py66520644editdlrm
source_linux-meta-nvidia-6.17.py66520644editdlrm
source_linux-meta-nvidia-7.0.py66520644editdlrm
source_linux-meta-nvidia-adv.py66520644editdlrm
source_linux-meta-nvidia-lowlatency.py66520644editdlrm
source_linux-meta-nvidia-tegra.py66520644editdlrm
source_linux-meta-nvidia.py66520644editdlrm
source_linux-meta-oem-6.8.py66520644editdlrm
source_linux-meta-oem-6.10.py66520644editdlrm
source_linux-meta-oem-6.11.py66520644editdlrm
source_linux-meta-oem-6.14.py66520644editdlrm
source_linux-meta-oem-6.17.py66520644editdlrm
source_linux-meta-oem-7.0.py66520644editdlrm
source_linux-meta-oem-osp1.py66520644editdlrm
source_linux-meta-oem.py66520644editdlrm
source_linux-meta-oracle-6.11.py66520644editdlrm
source_linux-meta-oracle-6.14.py66520644editdlrm
source_linux-meta-oracle-6.17.py66520644editdlrm
source_linux-meta-oracle-7.0.py66520644editdlrm
source_linux-meta-oracle.py66520644editdlrm
source_linux-meta-qcom-realtime.py66520644editdlrm
source_linux-meta-qcom.py66520644editdlrm
source_linux-meta-raspi-realtime.py66520644editdlrm
source_linux-meta-raspi.py66520644editdlrm
source_linux-meta-realtime-6.11.py66520644editdlrm
source_linux-meta-realtime-6.14.py66520644editdlrm
source_linux-meta-realtime-6.17.py66520644editdlrm
source_linux-meta-realtime-7.0.py66520644editdlrm
source_linux-meta-realtime.py66520644editdlrm
source_linux-meta-renesas.py66520644editdlrm
source_linux-meta-riscv-6.14.py66520644editdlrm
source_linux-meta-riscv-6.17.py66520644editdlrm
source_linux-meta-riscv-7.0.py66520644editdlrm
source_linux-meta-riscv.py66520644editdlrm
source_linux-meta-snapdragon.py66520644editdlrm
source_linux-meta-xilinx.py66520644editdlrm
source_linux-meta.py66520644editdlrm
source_linux-mtk.py66520644editdlrm
source_linux-nvidia-6.11.py66520644editdlrm
source_linux-nvidia-6.14.py66520644editdlrm
source_linux-nvidia-6.17.py66520644editdlrm
source_linux-nvidia-7.0.py66520644editdlrm
source_linux-nvidia-adv.py66520644editdlrm
source_linux-nvidia-lowlatency.py66520644editdlrm
source_linux-nvidia-tegra-modules-signed.py66520644editdlrm
source_linux-nvidia-tegra-modules.py66520644editdlrm
source_linux-nvidia-tegra.py66520644editdlrm
source_linux-nvidia.py66520644editdlrm
source_linux-oem-6.8.py66520644editdlrm
source_linux-oem-6.10.py66520644editdlrm
source_linux-oem-6.11.py66520644editdlrm
source_linux-oem-6.14.py66520644editdlrm
source_linux-oem-6.17.py66520644editdlrm
source_linux-oem-7.0.py66520644editdlrm
source_linux-oem-osp1.py66520644editdlrm
source_linux-oem.py66520644editdlrm
source_linux-oracle-6.11.py66520644editdlrm
source_linux-oracle-6.14.py66520644editdlrm
source_linux-oracle-6.17.py66520644editdlrm
source_linux-oracle-7.0.py66520644editdlrm
source_linux-oracle.py66520644editdlrm
source_linux-qcom-realtime.py66520644editdlrm
source_linux-qcom.py66520644editdlrm
source_linux-raspi-realtime.py66520644editdlrm
source_linux-raspi.py66520644editdlrm
source_linux-realtime-6.11.py66520644editdlrm
source_linux-realtime-6.14.py66520644editdlrm
source_linux-realtime-6.17.py66520644editdlrm
source_linux-realtime-7.0.py66520644editdlrm
source_linux-realtime.py66520644editdlrm
source_linux-renesas.py66520644editdlrm
source_linux-restricted-modules-aws-6.11.py66520644editdlrm
source_linux-restricted-modules-aws-6.14.py66520644editdlrm
source_linux-restricted-modules-aws-6.17.py66520644editdlrm
source_linux-restricted-modules-aws-7.0.py66520644editdlrm
source_linux-restricted-modules-aws-fips.py66520644editdlrm
source_linux-restricted-modules-aws.py66520644editdlrm
source_linux-restricted-modules-azure-6.11.py66520644editdlrm
source_linux-restricted-modules-azure-6.14.py66520644editdlrm
source_linux-restricted-modules-azure-6.17.py66520644editdlrm
source_linux-restricted-modules-azure-7.0.py66520644editdlrm
source_linux-restricted-modules-azure-fde-6.14.py66520644editdlrm
source_linux-restricted-modules-azure-fde-6.17.py66520644editdlrm
source_linux-restricted-modules-azure-fde-7.0.py66520644editdlrm
source_linux-restricted-modules-azure-fde.py66520644editdlrm
source_linux-restricted-modules-azure-fips.py66520644editdlrm
source_linux-restricted-modules-azure-nvidia-6.14.py66520644editdlrm
source_linux-restricted-modules-azure-nvidia-6.17.py66520644editdlrm
source_linux-restricted-modules-azure-nvidia-7.0.py66520644editdlrm
source_linux-restricted-modules-azure-nvidia.py66520644editdlrm
source_linux-restricted-modules-azure.py66520644editdlrm
source_linux-restricted-modules-fips.py66520644editdlrm
source_linux-restricted-modules-gcp-6.11.py66520644editdlrm
source_linux-restricted-modules-gcp-6.14.py66520644editdlrm
source_linux-restricted-modules-gcp-6.17.py66520644editdlrm
source_linux-restricted-modules-gcp-7.0.py66520644editdlrm
source_linux-restricted-modules-gcp-fips.py66520644editdlrm
source_linux-restricted-modules-gcp.py66520644editdlrm
source_linux-restricted-modules-hwe-6.11.py66520644editdlrm
source_linux-restricted-modules-hwe-6.14.py66520644editdlrm
source_linux-restricted-modules-hwe-6.17.py66520644editdlrm
source_linux-restricted-modules-hwe-7.0.py66520644editdlrm
source_linux-restricted-modules-ibm-6.11.py66520644editdlrm
source_linux-restricted-modules-ibm.py66520644editdlrm
source_linux-restricted-modules-lowlatency-hwe-6.11.py66520644editdlrm
source_linux-restricted-modules-lowlatency.py66520644editdlrm
source_linux-restricted-modules-nvidia-6.11.py66520644editdlrm
source_linux-restricted-modules-nvidia-6.14.py66520644editdlrm
source_linux-restricted-modules-nvidia-6.17.py66520644editdlrm
source_linux-restricted-modules-nvidia-7.0.py66520644editdlrm
source_linux-restricted-modules-nvidia-lowlatency.py66520644editdlrm
source_linux-restricted-modules-nvidia-tegra.py66520644editdlrm
source_linux-restricted-modules-nvidia.py66520644editdlrm
source_linux-restricted-modules-oem-6.8.py66520644editdlrm
source_linux-restricted-modules-oem-6.10.py66520644editdlrm
source_linux-restricted-modules-oem-6.11.py66520644editdlrm
source_linux-restricted-modules-oem-6.14.py66520644editdlrm
source_linux-restricted-modules-oem-6.17.py66520644editdlrm
source_linux-restricted-modules-oem-7.0.py66520644editdlrm
source_linux-restricted-modules-oracle-6.11.py66520644editdlrm
source_linux-restricted-modules-oracle-6.14.py66520644editdlrm
source_linux-restricted-modules-oracle-6.17.py66520644editdlrm
source_linux-restricted-modules-oracle-7.0.py66520644editdlrm
source_linux-restricted-modules-oracle.py66520644editdlrm
source_linux-restricted-modules.py66520644editdlrm
source_linux-riscv-6.14.py66520644editdlrm
source_linux-riscv-6.17.py66520644editdlrm
source_linux-riscv-7.0.py66520644editdlrm
source_linux-riscv.py66520644editdlrm
source_linux-signed-aws-6.11.py66520644editdlrm
source_linux-signed-aws-6.14.py66520644editdlrm
source_linux-signed-aws-6.17.py66520644editdlrm
source_linux-signed-aws-7.0.py66520644editdlrm
source_linux-signed-aws-fips.py66520644editdlrm
source_linux-signed-aws.py66520644editdlrm
source_linux-signed-azure-6.11.py66520644editdlrm
source_linux-signed-azure-6.14.py66520644editdlrm
source_linux-signed-azure-6.17.py66520644editdlrm
source_linux-signed-azure-7.0.py66520644editdlrm
source_linux-signed-azure-fde-6.14.py66520644editdlrm
source_linux-signed-azure-fde-6.17.py66520644editdlrm
source_linux-signed-azure-fde-7.0.py66520644editdlrm
source_linux-signed-azure-fde.py66520644editdlrm
source_linux-signed-azure-fips.py66520644editdlrm
source_linux-signed-azure-nvidia-6.14.py66520644editdlrm
source_linux-signed-azure-nvidia-6.17.py66520644editdlrm
source_linux-signed-azure-nvidia-7.0.py66520644editdlrm
source_linux-signed-azure-nvidia.py66520644editdlrm
source_linux-signed-azure.py66520644editdlrm
source_linux-signed-bluefield.py66520644editdlrm
source_linux-signed-fips.py66520644editdlrm
source_linux-signed-gcp-6.11.py66520644editdlrm
source_linux-signed-gcp-6.14.py66520644editdlrm
source_linux-signed-gcp-6.17.py66520644editdlrm
source_linux-signed-gcp-7.0.py66520644editdlrm
source_linux-signed-gcp-fips.py66520644editdlrm
source_linux-signed-gcp.py66520644editdlrm
source_linux-signed-gke.py66520644editdlrm
source_linux-signed-gkeop.py66520644editdlrm
source_linux-signed-hwe-6.11.py66520644editdlrm
source_linux-signed-hwe-6.14.py66520644editdlrm
source_linux-signed-hwe-6.17.py66520644editdlrm
source_linux-signed-hwe-7.0.py66520644editdlrm
source_linux-signed-ibm-6.11.py66520644editdlrm
source_linux-signed-ibm-gt-tdx.py66520644editdlrm
source_linux-signed-ibm-gt.py66520644editdlrm
source_linux-signed-ibm.py66520644editdlrm
source_linux-signed-imx.py66520644editdlrm
source_linux-signed-intel.py66520644editdlrm
source_linux-signed-iot.py66520644editdlrm
source_linux-signed-lowlatency-hwe-6.11.py66520644editdlrm
source_linux-signed-lowlatency.py66520644editdlrm
source_linux-signed-mtk.py66520644editdlrm
source_linux-signed-nvidia-6.11.py66520644editdlrm
source_linux-signed-nvidia-6.14.py66520644editdlrm
source_linux-signed-nvidia-6.17.py66520644editdlrm
source_linux-signed-nvidia-7.0.py66520644editdlrm
source_linux-signed-nvidia-lowlatency.py66520644editdlrm
source_linux-signed-nvidia-tegra.py66520644editdlrm
source_linux-signed-nvidia.py66520644editdlrm
source_linux-signed-oem-6.8.py66520644editdlrm
source_linux-signed-oem-6.10.py66520644editdlrm
source_linux-signed-oem-6.11.py66520644editdlrm
source_linux-signed-oem-6.14.py66520644editdlrm
source_linux-signed-oem-6.17.py66520644editdlrm
source_linux-signed-oem-7.0.py66520644editdlrm
source_linux-signed-oem-osp1.py66520644editdlrm
source_linux-signed-oem.py66520644editdlrm
source_linux-signed-oracle-6.11.py66520644editdlrm
source_linux-signed-oracle-6.14.py66520644editdlrm
source_linux-signed-oracle-6.17.py66520644editdlrm
source_linux-signed-oracle-7.0.py66520644editdlrm
source_linux-signed-oracle.py66520644editdlrm
source_linux-signed-realtime-6.11.py66520644editdlrm
source_linux-signed-realtime-6.14.py66520644editdlrm
source_linux-signed-realtime-6.17.py66520644editdlrm
source_linux-signed-realtime-7.0.py66520644editdlrm
source_linux-signed-realtime.py66520644editdlrm
source_linux-signed-renesas.py66520644editdlrm
source_linux-signed.py66520644editdlrm
source_linux-snapdragon.py66520644editdlrm
source_linux-xilinx.py66520644editdlrm
source_linux.py66520644editdlrm
source_mdadm.py22520644editdlrm
source_mysql-8.0.py38060644editdlrm
source_nginx.py6470644editdlrm
source_plymouth.py14740644editdlrm
source_shadow.py7200644editdlrm
source_shim-signed.py20000644editdlrm
source_shim.py20000644editdlrm
source_sudo.py11600755editdlrm
source_ubiquity.py88640644editdlrm
source_ubuntu-advantage-tools.py12460644editdlrm
source_ubuntu-release-upgrader.py26850644editdlrm
source_unattended-upgrades.py7050644editdlrm
source_update-manager.py25460644editdlrm
subiquity.py52550644editdlrm
systemd.py8710644editdlrm
ubuntu-desktop-bootstrap.py32000644editdlrm
udev.py4550644editdlrm
udisks2.py7520644editdlrm
Edit: /usr/share/apport/package-hooks/subiquity.py (5255B)
"""Send reports about subiquity to the correct Launchpad project.""" import os import re from apport import Report, hookutils from apport.ui import HookUI def get_journal(report: Report, log_map: dict[str, str]) -> None: """Get installer environment journal log. Appends the installer specific journal to the log map if it exists, otherwise appends the system journal to the report directly. """ installer_journal = "/var/log/installer/installer-journal.txt" if os.path.exists(installer_journal): log_map["InstallerJournal"] = installer_journal else: report["SystemJournal"] = hookutils.recent_syslog(re.compile(".")) def get_revision(debug_log_contents: str) -> str: """Get subiquity revision from debug log contents. Returns revision found (e.g. "1234") or "unknown" if not found. """ # Revision information is always in the first line of the log file first_line = debug_log_contents.splitlines()[0] marker = "Starting Subiquity server revision" if marker in first_line: revision = first_line.split(marker)[1].strip() else: revision = "unknown" return revision def add_info(report: Report, unused_ui: HookUI) -> None: """Package hook entry point.""" # Check if the snap was updated # TODO: Add logic to support this outside of the live environment. # It may be possible someone wants to report a bug against the # installer after first boot. report["SnapUpdated"] = str(os.path.exists("/run/subiquity/updating")) # rewrite this section so the report goes to the project in Launchpad report[ "CrashDB" ] = """\ { "impl": "launchpad", "project": "subiquity", "bug_pattern_url": "http://people.canonical.com/" "~ubuntu-archive/bugpatterns/bugpatterns.xml", } """ # add in hardware information hookutils.attach_hardware(report) # This key is important for checking revision information later debug_log_key = "InstallerServerLog" # static subiquity generated logs log_map = { debug_log_key: "/var/log/installer/subiquity-server-debug.log", "InstallerServerLogInfo": "/var/log/installer/subiquity-server-info.log", "InstallerClientLog": "/var/log/installer/subiquity-client-debug.log", "InstallerClientLogInfo": "/var/log/installer/subiquity-client-info.log", "CurtinLog": "/var/log/installer/curtin-install.log", "CurtinAptConfig": ( "/var/log/installer/curtin-install/subiquity-curtin-apt.conf" ), "CurtinCurthooksConfig": ( "/var/log/installer/curtin-install/subiquity-curthooks.conf" ), "CurtinExtractConfig": ( "/var/log/installer/curtin-install/subiquity-extract.conf" ), "CurtinInitialConfig": ( "/var/log/installer/curtin-install/subiquity-initial.conf" ), "CurtinPartitioningConfig": ( "/var/log/installer/curtin-install/subiquity-partitioning.conf" ), "ProbeData": "/var/log/installer/block/probe-data.json", "Traceback": "/var/log/installer/subiquity-traceback.txt", "NetplanInstallerConfig": "/etc/netplan/00-installer-config.yaml", "NetplanSnapdConfig": "/etc/netplan/00-snapd-config.yaml", } # Add journal log get_journal(report, log_map) # Add ubuntu-desktop-bootstrap information if available udb_log = os.path.realpath("/var/log/installer/ubuntu_bootstrap.log") if os.path.exists(udb_log): log_map["BootstrapLog"] = udb_log report.add_tags(["ubuntu-desktop-bootstrap"]) # check for udb snap version udb_snap = os.path.realpath("/snap/ubuntu-desktop-bootstrap/current") if os.path.exists(udb_snap): # "current" is a symlink to the current revision and # os.path.realpath should have resolved it report["DesktopInstallerRev"] = os.path.basename(udb_snap) # Attach logs if they exist # The conventional way to attach logs would be to use the # hookutils.attach_file_if_exists method, but since subiquity logs # are mostly locked down with root r/w only then we will get a permission # error if the caller does not have permissions. Ask for elevated # permissions instead of requiring users know to run with sudo or similar command_mapping = {} for name, path in log_map.items(): if os.path.exists(path): real_path = os.path.realpath(path) command_mapping[name] = f"cat {real_path}" hookutils.attach_root_command_outputs(report, command_mapping) # Get revision to display in the UI prompt # If attach_root_command_outputs fails the log won't be in the report revision = "unknown" if debug_log_key in report: revision = get_revision(report[debug_log_key]) report["Package"] = f"subiquity ({revision})" report["SourcePackage"] = "subiquity" # Package and SourcePackage keys are deleted when the Snap is chosen, # so make a separate key to keep track of the revision report["SnapVersion"] = revision # Always set reports to private since we might collect sensitive data report["LaunchpadPrivate"] = "1"