HEX
Server: nginx/1.24.0
System: Linux DGT-WORDPRESS-VM-SERVER 6.14.0-1014-azure #14~24.04.1-Ubuntu SMP Fri Oct 3 20:52:11 UTC 2025 x86_64
User: ubuntu (1000)
PHP: 8.4.12
Disabled: NONE
Upload Files
File: //usr/share/apport/apport-checkreports
#!/usr/bin/python3

# Copyright (c) 2006 Canonical Ltd.
# Author: Martin Pitt <[email protected]>
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.  See http://www.gnu.org/copyleft/gpl.html for
# the full text of the license.

"""Check if there are new reports for the invoking user. Exit with 0 if new
reports are available, or with 1 if not."""

# pylint: disable=invalid-name
# pylint: enable=invalid-name

import argparse
import sys

import apport
from apport.fileutils import get_new_reports, get_new_system_reports


def parse_args():
    """Parse command line options and return arguments."""
    parser = argparse.ArgumentParser()
    parser.add_argument(
        "-s",
        "--system",
        action="store_true",
        help="Check for crash reports from system users.",
    )
    return parser.parse_args()


args = parse_args()
if args.system:
    reports = get_new_system_reports()
else:
    reports = get_new_reports()

if len(reports) > 0:
    for report in reports:
        print(report.split(".")[0].split("_")[-1])
    if apport.packaging.enabled():
        sys.exit(0)
    else:
        print("new reports but apport disabled")
        sys.exit(2)
else:
    sys.exit(1)