``` $ lpa ? 2 Analyze the content of Linux packages Usage: lpa[EXE] [OPTIONS] [COMMAND] Commands: import-debian-deb Import a Debian .deb package given a filesystem path import-debian-repository Import the contents of a Debian repository import-rpm-repository Import the contents of an RPM repository cpuid-features-by-package-count Print CPUID features and counts of packages having instructions with them elf-files Print known ELF files elf-files-defining-symbol Print ELF files defining a named symbol elf-files-importing-symbol Print ELF files importing a specified named symbol elf-files-with-ifunc Print ELF files that leverage IFUNC for dynamic dispatch elf-file-total-x86-instruction-counts Print the total number of instructions in all ELF files elf-section-name-counts Print counts of section names in ELF files packages-with-cpuid-feature Print packages having instructions with a given CPUID feature packages-with-filename Print packages having a file with the specified name x86-instruction-counts Print global counts of x86 instructions x86-register-usage-counts Print counts of how many x86 instructions use known registers reference-x86-cpuid-features Print a list of known x86 CPUID features reference-x86-instructions Print a list of known x86 instructions reference-x86-registers Print a list of known x86 registers help Print this message or the help of the given subcommand(s) Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help (see more with '--help') -V, --version Print version ``` ``` $ lpa help # About `lpa` provides a mechanism for analyzing the contents of Linux packages. `lpa` works by importing a source of Linux packages (e.g. a Debian or RPM repository) and storing the indexed result in a local SQLite database. The SQLite database can then be queried by `lpa` (or your own code if desired) to answer questions about content therein. Usage: lpa[EXE] [OPTIONS] [COMMAND] Commands: import-debian-deb Import a Debian .deb package given a filesystem path import-debian-repository Import the contents of a Debian repository import-rpm-repository Import the contents of an RPM repository cpuid-features-by-package-count Print CPUID features and counts of packages having instructions with them elf-files Print known ELF files elf-files-defining-symbol Print ELF files defining a named symbol elf-files-importing-symbol Print ELF files importing a specified named symbol elf-files-with-ifunc Print ELF files that leverage IFUNC for dynamic dispatch elf-file-total-x86-instruction-counts Print the total number of instructions in all ELF files elf-section-name-counts Print counts of section names in ELF files packages-with-cpuid-feature Print packages having instructions with a given CPUID feature packages-with-filename Print packages having a file with the specified name x86-instruction-counts Print global counts of x86 instructions x86-register-usage-counts Print counts of how many x86 instructions use known registers reference-x86-cpuid-features Print a list of known x86 CPUID features reference-x86-instructions Print a list of known x86 instructions reference-x86-registers Print a list of known x86 registers help Print this message or the help of the given subcommand(s) Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help (see a summary with '-h') -V, --version Print version ``` ``` $ lpa cpuid-features-by-package-count help ? 2 error: unexpected argument 'help' found Usage: lpa[EXE] cpuid-features-by-package-count [OPTIONS] For more information, try '--help'. ``` ``` $ lpa help elf-file-total-x86-instruction-counts Print the total number of instructions in all ELF files Usage: lpa[EXE] elf-file-total-x86-instruction-counts [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] --instruction Name of instruction to count -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help elf-files Print known ELF files Usage: lpa[EXE] elf-files [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help elf-files-defining-symbol Print ELF files defining a named symbol Usage: lpa[EXE] elf-files-defining-symbol [OPTIONS] Arguments: Name of symbol to search for Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help elf-files-importing-symbol Print ELF files importing a specified named symbol Usage: lpa[EXE] elf-files-importing-symbol [OPTIONS] [symbol] Arguments: [symbol] Symbol name to match against Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help elf-files-with-ifunc Print ELF files that leverage IFUNC for dynamic dispatch Usage: lpa[EXE] elf-files-with-ifunc [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help elf-section-name-counts Print counts of section names in ELF files Usage: lpa[EXE] elf-section-name-counts [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help import-debian-deb Import a Debian .deb package given a filesystem path Usage: lpa[EXE] import-debian-deb [OPTIONS] Arguments: Path to .deb file to import Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help import-debian-repository Imports the contents of a Debian repository. This command will take an HTTP hosted Debian repository, discover all its packages, then proceed to download and index discovered packages. The provided URL is the directory containing the `InRelease` file. Example values include: * http://ftp.us.debian.org/debian (Debian) * http://us.archive.ubuntu.com/ubuntu (Ubuntu) Usage: lpa[EXE] import-debian-repository [OPTIONS] Arguments: Base URL of Debian repository to import Distribution to import Options: --architectures Comma delimited list of architectures to fetch [default: amd64] --db Path to SQLite database to use [default: lpa.db] --components Comma delimited list of components to fetch [default: main] -t, --threads Number of threads to use -h, --help Print help (see a summary with '-h') ``` ``` $ lpa help import-rpm-repository Import the contents of an RPM repository Usage: lpa[EXE] import-rpm-repository [OPTIONS] Arguments: Base URL of RPM repository to import Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help packages-with-cpuid-feature Print packages having instructions with a given CPUID feature Usage: lpa[EXE] packages-with-cpuid-feature [OPTIONS] ... Arguments: ... Name of CPUID feature to filter on Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help packages-with-filename Print packages having a file with the specified name Usage: lpa[EXE] packages-with-filename [OPTIONS] Arguments: Exact name of file to match against Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help reference-x86-cpuid-features Print a list of known x86 CPUID features Usage: lpa[EXE] reference-x86-cpuid-features [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help reference-x86-instructions Print a list of known x86 instructions Usage: lpa[EXE] reference-x86-instructions [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help reference-x86-registers Print a list of known x86 registers Usage: lpa[EXE] reference-x86-registers [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help x86-instruction-counts Print global counts of x86 instructions Usage: lpa[EXE] x86-instruction-counts [OPTIONS] Options: --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ``` ``` $ lpa help x86-register-usage-counts Print counts of how many x86 instructions use known registers Usage: lpa[EXE] x86-register-usage-counts [OPTIONS] Options: --base Normalize to base register name --db Path to SQLite database to use [default: lpa.db] -t, --threads Number of threads to use -h, --help Print help ```