all: enhance CMake tests; assorted updates

This commit is contained in:
Markus F.X.J. Oberhumer
2024-04-06 15:47:46 +02:00
parent ed35613d64
commit 97cf29ffbb
22 changed files with 473 additions and 398 deletions
+19 -4
View File
@@ -444,7 +444,7 @@ if(NOT UPX_CONFIG_DISABLE_SELF_PACK_TEST)
set(exe "${CMAKE_EXECUTABLE_SUFFIX}") set(exe "${CMAKE_EXECUTABLE_SUFFIX}")
set(upx_self_exe "$<TARGET_FILE:upx>") set(upx_self_exe "$<TARGET_FILE:upx>")
set(fo "--force-overwrite") set(fo "--force-overwrite")
upx_add_serial_test(upx-self-pack upx -3 "${upx_self_exe}" ${fo} -o upx-packed${exe}) upx_add_serial_test(upx-self-pack upx -3 --all-filters "${upx_self_exe}" ${fo} -o upx-packed${exe})
upx_add_serial_test(upx-self-pack-n2b upx -3 --nrv2b "${upx_self_exe}" ${fo} -o upx-packed-n2b${exe}) upx_add_serial_test(upx-self-pack-n2b upx -3 --nrv2b "${upx_self_exe}" ${fo} -o upx-packed-n2b${exe})
upx_add_serial_test(upx-self-pack-n2d upx -3 --nrv2d "${upx_self_exe}" ${fo} -o upx-packed-n2d${exe}) upx_add_serial_test(upx-self-pack-n2d upx -3 --nrv2d "${upx_self_exe}" ${fo} -o upx-packed-n2d${exe})
upx_add_serial_test(upx-self-pack-n2e upx -3 --nrv2e "${upx_self_exe}" ${fo} -o upx-packed-n2e${exe}) upx_add_serial_test(upx-self-pack-n2e upx -3 --nrv2e "${upx_self_exe}" ${fo} -o upx-packed-n2e${exe})
@@ -452,9 +452,24 @@ if(NOT UPX_CONFIG_DISABLE_SELF_PACK_TEST)
upx_add_serial_test(upx-list upx -l upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe}) upx_add_serial_test(upx-list upx -l upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe})
upx_add_serial_test(upx-fileinfo upx --fileinfo upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe}) upx_add_serial_test(upx-fileinfo upx --fileinfo upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe})
upx_add_serial_test(upx-test upx -t upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe}) upx_add_serial_test(upx-test upx -t upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe})
upx_add_serial_test(upx-unpack upx -d upx-packed${exe} ${fo} -o upx-unpacked${exe})
upx_add_serial_test(upx-run-unpacked ${emu} ./upx-unpacked${exe} --version-short) upx_add_serial_test(upx-unpack upx -d upx-packed${exe} ${fo} -o upx-unpacked${exe})
upx_add_serial_test(upx-run-packed ${emu} ./upx-packed${exe} --version-short) upx_add_serial_test(upx-unpack-n2b upx -d upx-packed-n2b${exe} ${fo} -o upx-unpacked-n2b${exe})
upx_add_serial_test(upx-unpack-n2d upx -d upx-packed-n2d${exe} ${fo} -o upx-unpacked-n2d${exe})
upx_add_serial_test(upx-unpack-n2e upx -d upx-packed-n2e${exe} ${fo} -o upx-unpacked-n2e${exe})
upx_add_serial_test(upx-unpack-lzma upx -d upx-packed-lzma${exe} ${fo} -o upx-unpacked-lzma${exe})
upx_add_serial_test(upx-run-unpacked ${emu} ./upx-unpacked${exe} --version-short)
upx_add_serial_test(upx-run-unpacked-n2b ${emu} ./upx-unpacked-n2b${exe} --version-short)
upx_add_serial_test(upx-run-unpacked-n2d ${emu} ./upx-unpacked-n2d${exe} --version-short)
upx_add_serial_test(upx-run-unpacked-n2e ${emu} ./upx-unpacked-n2e${exe} --version-short)
upx_add_serial_test(upx-run-unpacked-lzma ${emu} ./upx-unpacked-lzma${exe} --version-short)
upx_add_serial_test(upx-run-packed ${emu} ./upx-packed${exe} --version-short)
upx_add_serial_test(upx-run-packed-n2b ${emu} ./upx-packed-n2b${exe} --version-short)
upx_add_serial_test(upx-run-packed-n2d ${emu} ./upx-packed-n2d${exe} --version-short)
upx_add_serial_test(upx-run-packed-n2e ${emu} ./upx-packed-n2e${exe} --version-short)
upx_add_serial_test(upx-run-packed-lzma ${emu} ./upx-packed-lzma${exe} --version-short)
endif() # UPX_CONFIG_DISABLE_SELF_PACK_TEST endif() # UPX_CONFIG_DISABLE_SELF_PACK_TEST
endif() endif()
+2
View File
@@ -37,6 +37,8 @@ Charles W. Sandmann <sandmann@clio.rice.edu>
for the idea with the stubless decompressor in djgpp2/coff for the idea with the stubless decompressor in djgpp2/coff
Ice Ice
for debugging the PE headersize problem down for debugging the PE headersize problem down
Jens Medoch <jssg@users.sourceforge.net>
for the ps1/exe format
Joergen Ibsen <jibz@hotmail.com> and d'b Joergen Ibsen <jibz@hotmail.com> and d'b
for the relocation & address optimization ideas for the relocation & address optimization ideas
John S. Fine <johnfine@erols.com> John S. Fine <johnfine@erols.com>
+1 -5
View File
@@ -779,9 +779,7 @@ http://www.oberhumer.com
Laszlo Molnar &lt;ezerotven+github@gmail.com&gt; Laszlo Molnar &lt;ezerotven+github@gmail.com&gt;
John F. Reiser &lt;jreiser@BitWagon.com&gt; John F. Reiser &lt;jreiser@BitWagon.com&gt;</code></pre>
Jens Medoch &lt;jssg@users.sourceforge.net&gt;</code></pre>
<h1 id="COPYRIGHT">COPYRIGHT</h1> <h1 id="COPYRIGHT">COPYRIGHT</h1>
@@ -791,8 +789,6 @@ Jens Medoch &lt;jssg@users.sourceforge.net&gt;</code></pre>
<p>Copyright (C) 2000-2024 John F. Reiser</p> <p>Copyright (C) 2000-2024 John F. Reiser</p>
<p>Copyright (C) 2002-2024 Jens Medoch</p>
<p><b>UPX</b> is distributed with full source code under the terms of the GNU General Public License v2+; either under the pure GPLv2+ (see the file COPYING), or (at your option) under the GPLv+2 with special exceptions and restrictions granting the free usage for all binaries including commercial programs (see the file LICENSE).</p> <p><b>UPX</b> is distributed with full source code under the terms of the GNU General Public License v2+; either under the pure GPLv2+ (see the file COPYING), or (at your option) under the GPLv+2 with special exceptions and restrictions granting the free usage for all binaries including commercial programs (see the file LICENSE).</p>
<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</p> <p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</p>
-4
View File
@@ -815,8 +815,6 @@ AUTHORS
John F. Reiser <jreiser@BitWagon.com> John F. Reiser <jreiser@BitWagon.com>
Jens Medoch <jssg@users.sourceforge.net>
COPYRIGHT COPYRIGHT
Copyright (C) 1996-2024 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1996-2024 Markus Franz Xaver Johannes Oberhumer
@@ -824,8 +822,6 @@ COPYRIGHT
Copyright (C) 2000-2024 John F. Reiser Copyright (C) 2000-2024 John F. Reiser
Copyright (C) 2002-2024 Jens Medoch
UPX is distributed with full source code under the terms of the GNU UPX is distributed with full source code under the terms of the GNU
General Public License v2+; either under the pure GPLv2+ (see the file General Public License v2+; either under the pure GPLv2+ (see the file
COPYING), or (at your option) under the GPLv+2 with special exceptions COPYING), or (at your option) under the GPLv+2 with special exceptions
Generated
-4
View File
@@ -936,8 +936,6 @@ Please report all bugs immediately to the authors.
\& Laszlo Molnar <ezerotven+github@gmail.com> \& Laszlo Molnar <ezerotven+github@gmail.com>
\& \&
\& John F. Reiser <jreiser@BitWagon.com> \& John F. Reiser <jreiser@BitWagon.com>
\&
\& Jens Medoch <jssg@users.sourceforge.net>
.Ve .Ve
.SH COPYRIGHT .SH COPYRIGHT
.IX Header "COPYRIGHT" .IX Header "COPYRIGHT"
@@ -947,8 +945,6 @@ Copyright (C) 1996\-2024 Laszlo Molnar
.PP .PP
Copyright (C) 2000\-2024 John F. Reiser Copyright (C) 2000\-2024 John F. Reiser
.PP .PP
Copyright (C) 2002\-2024 Jens Medoch
.PP
\&\fBUPX\fR is distributed with full source code under the terms of the \&\fBUPX\fR is distributed with full source code under the terms of the
GNU General Public License v2+; either under the pure GPLv2+ (see GNU General Public License v2+; either under the pure GPLv2+ (see
the file COPYING), or (at your option) under the GPLv+2 with special the file COPYING), or (at your option) under the GPLv+2 with special
-4
View File
@@ -926,8 +926,6 @@ Please report all bugs immediately to the authors.
John F. Reiser <jreiser@BitWagon.com> John F. Reiser <jreiser@BitWagon.com>
Jens Medoch <jssg@users.sourceforge.net>
=head1 COPYRIGHT =head1 COPYRIGHT
@@ -938,8 +936,6 @@ Copyright (C) 1996-2024 Laszlo Molnar
Copyright (C) 2000-2024 John F. Reiser Copyright (C) 2000-2024 John F. Reiser
Copyright (C) 2002-2024 Jens Medoch
B<UPX> is distributed with full source code under the terms of the B<UPX> is distributed with full source code under the terms of the
GNU General Public License v2+; either under the pure GPLv2+ (see GNU General Public License v2+; either under the pure GPLv2+ (see
the file COPYING), or (at your option) under the GPLv+2 with special the file COPYING), or (at your option) under the GPLv+2 with special
+6 -3
View File
@@ -14,11 +14,11 @@ RUN dpkg --add-architecture i386 \
# the following packages are not required for rebuilding the stubs, but # the following packages are not required for rebuilding the stubs, but
# they do make the image *much* more convenient and also allow building # they do make the image *much* more convenient and also allow building
# the full UPX binary inside the container via CMake: # the full UPX binary inside the container via CMake:
7zip bfs busybox bzip2 cabextract ccache chrpath cmake cpio curl elfutils fd-find file fzf \ 7zip bfs busybox bzip2 cabextract ccache chrpath cmake cpio curl elfutils fd-find file fish fzf \
g++ gawk gdb gojq ht htop hyperfine jq libzstd-dev lsb-release lz4 lzip lzop \ g++ gawk gdb gojq ht htop hyperfine jq libzstd-dev lsb-release lz4 lzip lzop \
mksh moreutils ninja-build p7zip parallel patch patchelf patchutils pax-utils \ minify mksh moreutils neovim ninja-build p7zip parallel patch patchelf patchutils pax-utils \
python3 python3-pyasn1 python3-pycryptodome python3-zstd \ python3 python3-pyasn1 python3-pycryptodome python3-zstd \
re2c ripgrep rsync screen universal-ctags unzip vim yash zip zlib1g-dev zsh zstd \ re2c ripgrep rsync screen universal-ctags unzip yash yq zip zlib1g-dev zsh zstd \
# extra packages for compiling with "gcc -m32" and "gcc -mx32": # extra packages for compiling with "gcc -m32" and "gcc -mx32":
g++-multilib gcc-multilib \ g++-multilib gcc-multilib \
&& true && true
@@ -74,6 +74,9 @@ RUN useradd upx -U --uid 2000 --shell /bin/bash -m \
&& for d in bin include lib share state; do mkdir -p .local/$d; done \ && for d in bin include lib share state; do mkdir -p .local/$d; done \
&& ln -s .cache/wine .wine && ln -s .cache/tmp tmp \ && ln -s .cache/wine .wine && ln -s .cache/tmp tmp \
&& ln -s /usr/local/bin/bin-upx-20221212 .local/bin/bin-upx \ && ln -s /usr/local/bin/bin-upx-20221212 .local/bin/bin-upx \
&& echo 'm() { make "$@"; }' >> .bash_aliases \
&& echo 'source /usr/share/bash-completion/completions/make' >> .bash_aliases \
&& echo 'complete -F _make m' >> .bash_aliases \
&& chown -R upx:upx . \ && chown -R upx:upx . \
&& true && true
USER upx USER upx
+372 -334
View File
@@ -1,340 +1,359 @@
Packages: Packages:
+++-============================-=================================-============-================================================================================ +++-=============================-=================================-============-================================================================================
Desired=Unknown/Install/Remove/Purge/Hold Desired=Unknown/Install/Remove/Purge/Hold
ii 7zip 23.01+dfsg-8 amd64 7-Zip file archiver with a high compression ratio ii 7zip 23.01+dfsg-8 amd64 7-Zip file archiver with a high compression ratio
ii apt 2.7.12 amd64 commandline package manager ii apt 2.7.12 amd64 commandline package manager
ii aria2 1.37.0+debian-1build2 amd64 High speed download utility ii aria2 1.37.0+debian-1build2 amd64 High speed download utility
ii base-files 13ubuntu9 amd64 Debian base system miscellaneous files ii base-files 13ubuntu9 amd64 Debian base system miscellaneous files
ii base-passwd 3.6.3 amd64 Debian base system master password and group files ii base-passwd 3.6.3 amd64 Debian base system master password and group files
ii bash 5.2.21-2ubuntu2 amd64 GNU Bourne Again SHell ii bash 5.2.21-2ubuntu2 amd64 GNU Bourne Again SHell
ii bash-completion 1:2.11-8 all programmable completion for the bash shell ii bash-completion 1:2.11-8 all programmable completion for the bash shell
ii bfs 3.1.2-1build1 amd64 Breadth-first version of find(1) ii bfs 3.1.2-1build1 amd64 Breadth-first version of find(1)
ii binutils 2.42-4ubuntu2 amd64 GNU assembler, linker and binary utilities ii binutils 2.42-4ubuntu2 amd64 GNU assembler, linker and binary utilities
ii binutils-common:amd64 2.42-4ubuntu2 amd64 Common files for the GNU assembler, linker and binary utilities ii binutils-common:amd64 2.42-4ubuntu2 amd64 Common files for the GNU assembler, linker and binary utilities
ii binutils-x86-64-linux-gnu 2.42-4ubuntu2 amd64 GNU binary utilities, for x86-64-linux-gnu target ii binutils-x86-64-linux-gnu 2.42-4ubuntu2 amd64 GNU binary utilities, for x86-64-linux-gnu target
ii bsdutils 1:2.39.3-9ubuntu4 amd64 basic utilities from 4.4BSD-Lite ii bsdextrautils 2.39.3-9ubuntu4 amd64 extra utilities from 4.4BSD-Lite
ii busybox 1:1.36.1-6ubuntu1 amd64 Tiny utilities for small and embedded systems ii bsdutils 1:2.39.3-9ubuntu4 amd64 basic utilities from 4.4BSD-Lite
ii bzip2 1.0.8-5ubuntu1 amd64 high-quality block-sorting file compressor - utilities ii busybox 1:1.36.1-6ubuntu1 amd64 Tiny utilities for small and embedded systems
ii ca-certificates 20240203 all Common CA certificates ii bzip2 1.0.8-5ubuntu1 amd64 high-quality block-sorting file compressor - utilities
ii cabextract 1.11-2 amd64 Microsoft Cabinet file unpacker ii ca-certificates 20240203 all Common CA certificates
ii ccache 4.9.1-1 amd64 Compiler cache for fast recompilation of C/C++ code ii cabextract 1.11-2 amd64 Microsoft Cabinet file unpacker
ii chrpath 0.16-2build1 amd64 Tool to edit the rpath in ELF binaries ii ccache 4.9.1-1 amd64 Compiler cache for fast recompilation of C/C++ code
ii cmake 3.28.3-1build6 amd64 cross-platform, open-source make system ii chrpath 0.16-2build1 amd64 Tool to edit the rpath in ELF binaries
ii cmake-data 3.28.3-1build6 all CMake data files (modules, templates and documentation) ii cmake 3.28.3-1build6 amd64 cross-platform, open-source make system
ii coreutils 9.4-3ubuntu5 amd64 GNU core utilities ii cmake-data 3.28.3-1build6 all CMake data files (modules, templates and documentation)
ii cpio 2.15+dfsg-1ubuntu1 amd64 GNU cpio -- a program to manage archives of files ii coreutils 9.4-3ubuntu5 amd64 GNU core utilities
ii cpp 4:13.2.0-7ubuntu1 amd64 GNU C preprocessor (cpp) ii cpio 2.15+dfsg-1ubuntu1 amd64 GNU cpio -- a program to manage archives of files
ii cpp-13 13.2.0-23ubuntu3 amd64 GNU C preprocessor ii cpp 4:13.2.0-7ubuntu1 amd64 GNU C preprocessor (cpp)
ii cpp-13-x86-64-linux-gnu 13.2.0-23ubuntu3 amd64 GNU C preprocessor for x86_64-linux-gnu ii cpp-13 13.2.0-23ubuntu3 amd64 GNU C preprocessor
ii cpp-x86-64-linux-gnu 4:13.2.0-7ubuntu1 amd64 GNU C preprocessor (cpp) for the amd64 architecture ii cpp-13-x86-64-linux-gnu 13.2.0-23ubuntu3 amd64 GNU C preprocessor for x86_64-linux-gnu
ii curl 8.5.0-2ubuntu9 amd64 command line tool for transferring data with URL syntax ii cpp-x86-64-linux-gnu 4:13.2.0-7ubuntu1 amd64 GNU C preprocessor (cpp) for the amd64 architecture
ii dash 0.5.12-6ubuntu5 amd64 POSIX-compliant shell ii curl 8.5.0-2ubuntu9 amd64 command line tool for transferring data with URL syntax
ii debconf 1.5.86 all Debian configuration management system ii dash 0.5.12-6ubuntu5 amd64 POSIX-compliant shell
ii debianutils 5.17build1 amd64 Miscellaneous utilities specific to Debian ii debconf 1.5.86 all Debian configuration management system
ii diffutils 1:3.10-1 amd64 File comparison utilities ii debianutils 5.17build1 amd64 Miscellaneous utilities specific to Debian
ii dpkg 1.22.6ubuntu6 amd64 Debian package management system ii diffutils 1:3.10-1 amd64 File comparison utilities
ii e2fsprogs 1.47.0-2.4~exp1ubuntu3 amd64 ext2/ext3/ext4 file system utilities ii dpkg 1.22.6ubuntu6 amd64 Debian package management system
ii elfutils 0.190-1.1build3 amd64 collection of utilities to handle ELF objects ii e2fsprogs 1.47.0-2.4~exp1ubuntu3 amd64 ext2/ext3/ext4 file system utilities
ii fd-find 9.0.0-1 amd64 Simple, fast and user-friendly alternative to find ii elfutils 0.190-1.1build3 amd64 collection of utilities to handle ELF objects
ii file 1:5.45-3build1 amd64 Recognize the type of data in a file using "magic" numbers ii fd-find 9.0.0-1 amd64 Simple, fast and user-friendly alternative to find
ii findutils 4.9.0-5 amd64 utilities for finding files--find, xargs ii file 1:5.45-3build1 amd64 Recognize the type of data in a file using "magic" numbers
ii fzf 0.44.1-1 amd64 general-purpose command-line fuzzy finder ii findutils 4.9.0-5 amd64 utilities for finding files--find, xargs
ii g++ 4:13.2.0-7ubuntu1 amd64 GNU C++ compiler ii fish 3.7.0-1 amd64 friendly interactive shell
ii g++-13 13.2.0-23ubuntu3 amd64 GNU C++ compiler ii fish-common 3.7.0-1 all friendly interactive shell (architecture-independent files)
ii g++-13-multilib 13.2.0-23ubuntu3 amd64 GNU C++ compiler (multilib support) ii fzf 0.44.1-1 amd64 general-purpose command-line fuzzy finder
ii g++-13-x86-64-linux-gnu 13.2.0-23ubuntu3 amd64 GNU C++ compiler for x86_64-linux-gnu architecture ii g++ 4:13.2.0-7ubuntu1 amd64 GNU C++ compiler
ii g++-multilib 4:13.2.0-7ubuntu1 amd64 GNU C++ compiler (multilib files) ii g++-13 13.2.0-23ubuntu3 amd64 GNU C++ compiler
ii g++-x86-64-linux-gnu 4:13.2.0-7ubuntu1 amd64 GNU C++ compiler for the amd64 architecture ii g++-13-multilib 13.2.0-23ubuntu3 amd64 GNU C++ compiler (multilib support)
ii gawk 1:5.2.1-2build3 amd64 GNU awk, a pattern scanning and processing language ii g++-13-x86-64-linux-gnu 13.2.0-23ubuntu3 amd64 GNU C++ compiler for x86_64-linux-gnu architecture
ii gcc 4:13.2.0-7ubuntu1 amd64 GNU C compiler ii g++-multilib 4:13.2.0-7ubuntu1 amd64 GNU C++ compiler (multilib files)
ii gcc-13 13.2.0-23ubuntu3 amd64 GNU C compiler ii g++-x86-64-linux-gnu 4:13.2.0-7ubuntu1 amd64 GNU C++ compiler for the amd64 architecture
ii gcc-13-base:amd64 13.2.0-23ubuntu3 amd64 GCC, the GNU Compiler Collection (base package) ii gawk 1:5.2.1-2build3 amd64 GNU awk, a pattern scanning and processing language
ii gcc-13-multilib 13.2.0-23ubuntu3 amd64 GNU C compiler (multilib support) ii gcc 4:13.2.0-7ubuntu1 amd64 GNU C compiler
ii gcc-13-x86-64-linux-gnu 13.2.0-23ubuntu3 amd64 GNU C compiler for the x86_64-linux-gnu architecture ii gcc-13 13.2.0-23ubuntu3 amd64 GNU C compiler
ii gcc-14-base:amd64 14-20240330-1ubuntu2 amd64 GCC, the GNU Compiler Collection (base package) ii gcc-13-base:amd64 13.2.0-23ubuntu3 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-14-base:i386 14-20240330-1ubuntu2 i386 GCC, the GNU Compiler Collection (base package) ii gcc-13-multilib 13.2.0-23ubuntu3 amd64 GNU C compiler (multilib support)
ii gcc-multilib 4:13.2.0-7ubuntu1 amd64 GNU C compiler (multilib files) ii gcc-13-x86-64-linux-gnu 13.2.0-23ubuntu3 amd64 GNU C compiler for the x86_64-linux-gnu architecture
ii gcc-x86-64-linux-gnu 4:13.2.0-7ubuntu1 amd64 GNU C compiler for the amd64 architecture ii gcc-14-base:amd64 14-20240330-1ubuntu2 amd64 GCC, the GNU Compiler Collection (base package)
ii gdb 15.0.50.20240219-0ubuntu1 amd64 GNU Debugger ii gcc-14-base:i386 14-20240330-1ubuntu2 i386 GCC, the GNU Compiler Collection (base package)
ii git 1:2.43.0-1ubuntu6 amd64 fast, scalable, distributed revision control system ii gcc-multilib 4:13.2.0-7ubuntu1 amd64 GNU C compiler (multilib files)
ii git-man 1:2.43.0-1ubuntu6 all fast, scalable, distributed revision control system (manual pages) ii gcc-x86-64-linux-gnu 4:13.2.0-7ubuntu1 amd64 GNU C compiler for the amd64 architecture
ii gojq 0.12.13-1 amd64 pure Go implementation of jq (program) ii gdb 15.0.50.20240219-0ubuntu1 amd64 GNU Debugger
ii gpgv 2.4.4-2ubuntu16 amd64 GNU privacy guard - signature verification tool ii git 1:2.43.0-1ubuntu6 amd64 fast, scalable, distributed revision control system
ii grep 3.11-4 amd64 GNU grep, egrep and fgrep ii git-man 1:2.43.0-1ubuntu6 all fast, scalable, distributed revision control system (manual pages)
ii gzip 1.12-1ubuntu2 amd64 GNU compression utilities ii gojq 0.12.13-1 amd64 pure Go implementation of jq (program)
ii hostname 3.23+nmu2ubuntu1 amd64 utility to set/show the host name or domain name ii gpgv 2.4.4-2ubuntu16 amd64 GNU privacy guard - signature verification tool
ii ht 2.1.0+repack1-5 amd64 Viewer/editor/analyser (mostly) for executables ii grep 3.11-4 amd64 GNU grep, egrep and fgrep
ii htop 3.3.0-4 amd64 interactive processes viewer ii groff-base 1.23.0-3build2 amd64 GNU troff text-formatting system (base system components)
ii hyperfine 1.18.0-2build1 amd64 Command-line benchmarking tool ii gzip 1.12-1ubuntu2 amd64 GNU compression utilities
ii init-system-helpers 1.66ubuntu1 all helper tools for all init systems ii hostname 3.23+nmu2ubuntu1 amd64 utility to set/show the host name or domain name
ii jq 1.7.1-3build1 amd64 lightweight and flexible command-line JSON processor ii ht 2.1.0+repack1-5 amd64 Viewer/editor/analyser (mostly) for executables
ii less 590-2ubuntu2 amd64 pager program similar to more ii htop 3.3.0-4 amd64 interactive processes viewer
ii lib32asan8 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector (32bit) ii hyperfine 1.18.0-2build1 amd64 Command-line benchmarking tool
ii lib32atomic1 14-20240330-1ubuntu2 amd64 support library providing __atomic built-in functions (32bit) ii init-system-helpers 1.66ubuntu1 all helper tools for all init systems
ii lib32gcc-13-dev 13.2.0-23ubuntu3 amd64 GCC support library (32 bit development files) ii jq 1.7.1-3build1 amd64 lightweight and flexible command-line JSON processor
ii lib32gcc-s1 14-20240330-1ubuntu2 amd64 GCC support library (32 bit Version) ii less 590-2ubuntu2 amd64 pager program similar to more
ii lib32gomp1 14-20240330-1ubuntu2 amd64 GCC OpenMP (GOMP) support library (32bit) ii lib32asan8 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector (32bit)
ii lib32itm1 14-20240330-1ubuntu2 amd64 GNU Transactional Memory Library (32bit) ii lib32atomic1 14-20240330-1ubuntu2 amd64 support library providing __atomic built-in functions (32bit)
ii lib32quadmath0 14-20240330-1ubuntu2 amd64 GCC Quad-Precision Math Library (32bit) ii lib32gcc-13-dev 13.2.0-23ubuntu3 amd64 GCC support library (32 bit development files)
ii lib32stdc++-13-dev 13.2.0-23ubuntu3 amd64 GNU Standard C++ Library v3 (development files) ii lib32gcc-s1 14-20240330-1ubuntu2 amd64 GCC support library (32 bit Version)
ii lib32stdc++6 14-20240330-1ubuntu2 amd64 GNU Standard C++ Library v3 (32 bit Version) ii lib32gomp1 14-20240330-1ubuntu2 amd64 GCC OpenMP (GOMP) support library (32bit)
ii lib32ubsan1 14-20240330-1ubuntu2 amd64 UBSan -- undefined behaviour sanitizer (32bit) ii lib32itm1 14-20240330-1ubuntu2 amd64 GNU Transactional Memory Library (32bit)
ii libacl1:amd64 2.3.2-1 amd64 access control list - shared library ii lib32quadmath0 14-20240330-1ubuntu2 amd64 GCC Quad-Precision Math Library (32bit)
ii libapt-pkg6.0:amd64 2.7.12 amd64 package management runtime library ii lib32stdc++-13-dev 13.2.0-23ubuntu3 amd64 GNU Standard C++ Library v3 (development files)
ii libarchive13t64:amd64 3.7.2-2 amd64 Multi-format archive and compression library (shared library) ii lib32stdc++6 14-20240330-1ubuntu2 amd64 GNU Standard C++ Library v3 (32 bit Version)
ii libaria2-0:amd64 1.37.0+debian-1build2 amd64 C++ library interface to aria2 ii lib32ubsan1 14-20240330-1ubuntu2 amd64 UBSan -- undefined behaviour sanitizer (32bit)
ii libasan8:amd64 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector ii libacl1:amd64 2.3.2-1 amd64 access control list - shared library
ii libasm1t64:amd64 0.190-1.1build3 amd64 library with a programmable assembler interface ii libapt-pkg6.0:amd64 2.7.12 amd64 package management runtime library
ii libassuan0:amd64 2.5.6-1 amd64 IPC library for the GnuPG components ii libarchive13t64:amd64 3.7.2-2 amd64 Multi-format archive and compression library (shared library)
ii libatomic1:amd64 14-20240330-1ubuntu2 amd64 support library providing __atomic built-in functions ii libaria2-0:amd64 1.37.0+debian-1build2 amd64 C++ library interface to aria2
ii libattr1:amd64 1:2.5.2-1 amd64 extended attribute handling - shared library ii libasan8:amd64 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector
ii libaudit-common 1:3.1.2-2.1build1 all Dynamic library for security auditing - common files ii libasm1t64:amd64 0.190-1.1build3 amd64 library with a programmable assembler interface
ii libaudit1:amd64 1:3.1.2-2.1build1 amd64 Dynamic library for security auditing ii libassuan0:amd64 2.5.6-1 amd64 IPC library for the GnuPG components
ii libbabeltrace1:amd64 1.5.11-3build3 amd64 Babeltrace conversion libraries ii libatomic1:amd64 14-20240330-1ubuntu2 amd64 support library providing __atomic built-in functions
ii libbinutils:amd64 2.42-4ubuntu2 amd64 GNU binary utilities (private shared library) ii libattr1:amd64 1:2.5.2-1 amd64 extended attribute handling - shared library
ii libblkid1:amd64 2.39.3-9ubuntu4 amd64 block device ID library ii libaudit-common 1:3.1.2-2.1build1 all Dynamic library for security auditing - common files
ii libbrotli1:amd64 1.1.0-2build2 amd64 library implementing brotli encoder and decoder (shared libraries) ii libaudit1:amd64 1:3.1.2-2.1build1 amd64 Dynamic library for security auditing
ii libbsd0:amd64 0.12.1-1build1 amd64 utility functions from BSD systems - shared library ii libbabeltrace1:amd64 1.5.11-3build3 amd64 Babeltrace conversion libraries
ii libbz2-1.0:amd64 1.0.8-5ubuntu1 amd64 high-quality block-sorting file compressor library - runtime ii libbinutils:amd64 2.42-4ubuntu2 amd64 GNU binary utilities (private shared library)
ii libc-ares2:amd64 1.27.0-1 amd64 asynchronous name resolver ii libblkid1:amd64 2.39.3-9ubuntu4 amd64 block device ID library
ii libc-bin 2.39-0ubuntu8 amd64 GNU C Library: Binaries ii libbrotli1:amd64 1.1.0-2build2 amd64 library implementing brotli encoder and decoder (shared libraries)
ii libc-dev-bin 2.39-0ubuntu8 amd64 GNU C Library: Development binaries ii libbsd0:amd64 0.12.1-1build1 amd64 utility functions from BSD systems - shared library
ii libc6-dev-i386 2.39-0ubuntu8 amd64 GNU C Library: 32-bit development libraries for AMD64 ii libbz2-1.0:amd64 1.0.8-5ubuntu1 amd64 high-quality block-sorting file compressor library - runtime
ii libc6-dev-x32 2.39-0ubuntu8 amd64 GNU C Library: X32 ABI Development Libraries for AMD64 ii libc-ares2:amd64 1.27.0-1 amd64 asynchronous name resolver
ii libc6-dev:amd64 2.39-0ubuntu8 amd64 GNU C Library: Development Libraries and Header Files ii libc-bin 2.39-0ubuntu8 amd64 GNU C Library: Binaries
ii libc6-i386 2.39-0ubuntu8 amd64 GNU C Library: 32-bit shared libraries for AMD64 ii libc-dev-bin 2.39-0ubuntu8 amd64 GNU C Library: Development binaries
ii libc6-x32 2.39-0ubuntu8 amd64 GNU C Library: X32 ABI Shared libraries for AMD64 ii libc6-dev-i386 2.39-0ubuntu8 amd64 GNU C Library: 32-bit development libraries for AMD64
ii libc6:amd64 2.39-0ubuntu8 amd64 GNU C Library: Shared libraries ii libc6-dev-x32 2.39-0ubuntu8 amd64 GNU C Library: X32 ABI Development Libraries for AMD64
ii libc6:i386 2.39-0ubuntu8 i386 GNU C Library: Shared libraries ii libc6-dev:amd64 2.39-0ubuntu8 amd64 GNU C Library: Development Libraries and Header Files
ii libcap-ng0:amd64 0.8.4-2build2 amd64 alternate POSIX capabilities library ii libc6-i386 2.39-0ubuntu8 amd64 GNU C Library: 32-bit shared libraries for AMD64
ii libcap2:amd64 1:2.66-5ubuntu1 amd64 POSIX 1003.1e capabilities (library) ii libc6-x32 2.39-0ubuntu8 amd64 GNU C Library: X32 ABI Shared libraries for AMD64
ii libcc1-0:amd64 14-20240330-1ubuntu2 amd64 GCC cc1 plugin for GDB ii libc6:amd64 2.39-0ubuntu8 amd64 GNU C Library: Shared libraries
ii libcom-err2:amd64 1.47.0-2.4~exp1ubuntu3 amd64 common error description library ii libc6:i386 2.39-0ubuntu8 i386 GNU C Library: Shared libraries
ii libcrypt-dev:amd64 1:4.4.36-4 amd64 libcrypt development files ii libcap-ng0:amd64 0.8.4-2build2 amd64 alternate POSIX capabilities library
ii libcrypt1:amd64 1:4.4.36-4 amd64 libcrypt shared library ii libcap2:amd64 1:2.66-5ubuntu1 amd64 POSIX 1003.1e capabilities (library)
ii libctf-nobfd0:amd64 2.42-4ubuntu2 amd64 Compact C Type Format library (runtime, no BFD dependency) ii libcc1-0:amd64 14-20240330-1ubuntu2 amd64 GCC cc1 plugin for GDB
ii libctf0:amd64 2.42-4ubuntu2 amd64 Compact C Type Format library (runtime, BFD dependency) ii libcom-err2:amd64 1.47.0-2.4~exp1ubuntu3 amd64 common error description library
ii libcurl3-gnutls:amd64 8.5.0-2ubuntu2 amd64 easy-to-use client-side URL transfer library (GnuTLS flavour) ii libcrypt-dev:amd64 1:4.4.36-4 amd64 libcrypt development files
ii libcurl4t64:amd64 8.5.0-2ubuntu9 amd64 easy-to-use client-side URL transfer library (OpenSSL flavour) ii libcrypt1:amd64 1:4.4.36-4 amd64 libcrypt shared library
ii libdb5.3t64:amd64 5.3.28+dfsg2-6build1 amd64 Berkeley v5.3 Database Libraries [runtime] ii libctf-nobfd0:amd64 2.42-4ubuntu2 amd64 Compact C Type Format library (runtime, no BFD dependency)
ii libdebconfclient0:amd64 0.271ubuntu3 amd64 Debian Configuration Management System (C-implementation library) ii libctf0:amd64 2.42-4ubuntu2 amd64 Compact C Type Format library (runtime, BFD dependency)
ii libdebuginfod-common 0.190-1.1build3 all configuration to enable the Debian debug info server ii libcurl3t64-gnutls:amd64 8.5.0-2ubuntu9 amd64 easy-to-use client-side URL transfer library (GnuTLS flavour)
ii libdebuginfod1t64:amd64 0.190-1.1build3 amd64 library to interact with debuginfod (development files) ii libcurl4t64:amd64 8.5.0-2ubuntu9 amd64 easy-to-use client-side URL transfer library (OpenSSL flavour)
ii libdw1t64:amd64 0.190-1.1build3 amd64 library that provides access to the DWARF debug information ii libdb5.3t64:amd64 5.3.28+dfsg2-6build1 amd64 Berkeley v5.3 Database Libraries [runtime]
ii libelf1t64:amd64 0.190-1.1build3 amd64 library to read and write ELF files ii libdebconfclient0:amd64 0.271ubuntu3 amd64 Debian Configuration Management System (C-implementation library)
ii liberror-perl 0.17029-2 all Perl module for error/exception handling in an OO-ish way ii libdebuginfod-common 0.190-1.1build3 all configuration to enable the Debian debug info server
ii libexpat1:amd64 2.6.1-2build1 amd64 XML parsing C library - runtime library ii libdebuginfod1t64:amd64 0.190-1.1build3 amd64 library to interact with debuginfod (development files)
ii libext2fs2t64:amd64 1.47.0-2.4~exp1ubuntu3 amd64 ext2/ext3/ext4 file system libraries ii libdw1t64:amd64 0.190-1.1build3 amd64 library that provides access to the DWARF debug information
ii libffi8:amd64 3.4.6-1 amd64 Foreign Function Interface library runtime ii libelf1t64:amd64 0.190-1.1build3 amd64 library to read and write ELF files
ii libgcc-13-dev:amd64 13.2.0-23ubuntu3 amd64 GCC support library (development files) ii liberror-perl 0.17029-2 all Perl module for error/exception handling in an OO-ish way
ii libgcc-s1:amd64 14-20240330-1ubuntu2 amd64 GCC support library ii libexpat1:amd64 2.6.1-2build1 amd64 XML parsing C library - runtime library
ii libgcc-s1:i386 14-20240330-1ubuntu2 i386 GCC support library ii libext2fs2t64:amd64 1.47.0-2.4~exp1ubuntu3 amd64 ext2/ext3/ext4 file system libraries
ii libgcrypt20:amd64 1.10.3-2 amd64 LGPL Crypto library - runtime library ii libffi8:amd64 3.4.6-1 amd64 Foreign Function Interface library runtime
ii libgdbm-compat4:amd64 1.23-5 amd64 GNU dbm database routines (legacy support runtime version) ii libgcc-13-dev:amd64 13.2.0-23ubuntu3 amd64 GCC support library (development files)
ii libgdbm6:amd64 1.23-5 amd64 GNU dbm database routines (runtime version) ii libgcc-s1:amd64 14-20240330-1ubuntu2 amd64 GCC support library
ii libglib2.0-0t64:amd64 2.80.0-6ubuntu1 amd64 GLib library of C routines ii libgcc-s1:i386 14-20240330-1ubuntu2 i386 GCC support library
ii libgmp10:amd64 2:6.3.0+dfsg-2ubuntu4 amd64 Multiprecision arithmetic library ii libgcrypt20:amd64 1.10.3-2 amd64 LGPL Crypto library - runtime library
ii libgnutls30t64:amd64 3.8.3-1.1ubuntu3 amd64 GNU TLS library - main runtime library ii libgdbm-compat4t64:amd64 1.23-5.1build1 amd64 GNU dbm database routines (legacy support runtime version)
ii libgomp1:amd64 14-20240330-1ubuntu2 amd64 GCC OpenMP (GOMP) support library ii libgdbm6t64:amd64 1.23-5.1build1 amd64 GNU dbm database routines (runtime version)
ii libgpg-error0:amd64 1.47-3build1 amd64 GnuPG development runtime library ii libglib2.0-0t64:amd64 2.80.0-6ubuntu1 amd64 GLib library of C routines
ii libgpm2:amd64 1.20.7-11 amd64 General Purpose Mouse - shared library ii libgmp10:amd64 2:6.3.0+dfsg-2ubuntu4 amd64 Multiprecision arithmetic library
ii libgprofng0:amd64 2.42-4ubuntu2 amd64 GNU Next Generation profiler (runtime library) ii libgnutls30t64:amd64 3.8.3-1.1ubuntu3 amd64 GNU TLS library - main runtime library
ii libgssapi-krb5-2:amd64 1.20.1-5build1 amd64 MIT Kerberos runtime libraries - krb5 GSS-API Mechanism ii libgomp1:amd64 14-20240330-1ubuntu2 amd64 GCC OpenMP (GOMP) support library
ii libhiredis1.1.0:amd64 1.2.0-6ubuntu3 amd64 minimalistic C client library for Redis ii libgpg-error0:amd64 1.47-3build1 amd64 GnuPG development runtime library
ii libhogweed6t64:amd64 3.9.1-2.2build1 amd64 low level cryptographic library (public-key cryptos) ii libgprofng0:amd64 2.42-4ubuntu2 amd64 GNU Next Generation profiler (runtime library)
ii libhwasan0:amd64 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector ii libgssapi-krb5-2:amd64 1.20.1-6ubuntu2 amd64 MIT Kerberos runtime libraries - krb5 GSS-API Mechanism
ii libicu74:amd64 74.2-1ubuntu1 amd64 International Components for Unicode ii libhiredis1.1.0:amd64 1.2.0-6ubuntu3 amd64 minimalistic C client library for Redis
ii libidn2-0:amd64 2.3.7-2 amd64 Internationalized domain names (IDNA2008/TR46) library ii libhogweed6t64:amd64 3.9.1-2.2build1 amd64 low level cryptographic library (public-key cryptos)
ii libio-pty-perl 1:1.20-1build2 amd64 Perl module for pseudo tty IO ii libhwasan0:amd64 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector
ii libipc-run-perl 20231003.0-1 all Perl module for running processes ii libicu74:amd64 74.2-1ubuntu1 amd64 International Components for Unicode
ii libipt2 2.0.6-1 amd64 Intel Processor Trace Decoder Library ii libidn2-0:amd64 2.3.7-2 amd64 Internationalized domain names (IDNA2008/TR46) library
ii libisl23:amd64 0.26-3 amd64 manipulating sets and relations of integer points bounded by linear constraints ii libio-pty-perl 1:1.20-1build2 amd64 Perl module for pseudo tty IO
ii libitm1:amd64 14-20240330-1ubuntu2 amd64 GNU Transactional Memory Library ii libipc-run-perl 20231003.0-1 all Perl module for running processes
ii libjansson4:amd64 2.14-2 amd64 C library for encoding, decoding and manipulating JSON data ii libipt2 2.0.6-1 amd64 Intel Processor Trace Decoder Library
ii libjq1:amd64 1.7.1-3build1 amd64 lightweight and flexible command-line JSON processor - shared library ii libisl23:amd64 0.26-3 amd64 manipulating sets and relations of integer points bounded by linear constraints
ii libjsoncpp25:amd64 1.9.5-6 amd64 library for reading and writing JSON for C++ ii libitm1:amd64 14-20240330-1ubuntu2 amd64 GNU Transactional Memory Library
ii libk5crypto3:amd64 1.20.1-5build1 amd64 MIT Kerberos runtime libraries - Crypto Library ii libjansson4:amd64 2.14-2 amd64 C library for encoding, decoding and manipulating JSON data
ii libkeyutils1:amd64 1.6.3-3 amd64 Linux Key Management Utilities (library) ii libjq1:amd64 1.7.1-3build1 amd64 lightweight and flexible command-line JSON processor - shared library
ii libkrb5-3:amd64 1.20.1-5build1 amd64 MIT Kerberos runtime libraries ii libjsoncpp25:amd64 1.9.5-6 amd64 library for reading and writing JSON for C++
ii libkrb5support0:amd64 1.20.1-5build1 amd64 MIT Kerberos runtime libraries - Support library ii libk5crypto3:amd64 1.20.1-6ubuntu2 amd64 MIT Kerberos runtime libraries - Crypto Library
ii libldap2:amd64 2.6.7+dfsg-1~exp1ubuntu8 amd64 OpenLDAP libraries ii libkeyutils1:amd64 1.6.3-3 amd64 Linux Key Management Utilities (library)
ii liblsan0:amd64 14-20240330-1ubuntu2 amd64 LeakSanitizer -- a memory leak detector (runtime) ii libkrb5-3:amd64 1.20.1-6ubuntu2 amd64 MIT Kerberos runtime libraries
ii liblz4-1:amd64 1.9.4-1 amd64 Fast LZ compression algorithm library - runtime ii libkrb5support0:amd64 1.20.1-6ubuntu2 amd64 MIT Kerberos runtime libraries - Support library
ii liblzma5:amd64 5.6.1+really5.4.5-1 amd64 XZ-format compression library ii libldap2:amd64 2.6.7+dfsg-1~exp1ubuntu8 amd64 OpenLDAP libraries
ii liblzo2-2:amd64 2.10-2build3 amd64 data compression library ii liblsan0:amd64 14-20240330-1ubuntu2 amd64 LeakSanitizer -- a memory leak detector (runtime)
ii libmagic-mgc 1:5.45-3build1 amd64 File type determination library using "magic" numbers (compiled magic file) ii libluajit-5.1-2:amd64 2.1.0+git20231223.c525bcb+dfsg-1 amd64 Just in time compiler for Lua - library version
ii libmagic1t64:amd64 1:5.45-3build1 amd64 Recognize the type of data in a file using "magic" numbers - library ii libluajit-5.1-common 2.1.0+git20231223.c525bcb+dfsg-1 all Just in time compiler for Lua - common files
ii libmd0:amd64 1.1.0-2 amd64 message digest functions from BSD systems - shared library ii liblz4-1:amd64 1.9.4-1 amd64 Fast LZ compression algorithm library - runtime
ii libmount1:amd64 2.39.3-9ubuntu4 amd64 device mounting library ii liblzma5:amd64 5.6.1+really5.4.5-1 amd64 XZ-format compression library
ii libmpc3:amd64 1.3.1-1 amd64 multiple precision complex floating-point library ii liblzo2-2:amd64 2.10-2build3 amd64 data compression library
ii libmpfr6:amd64 4.2.1-1 amd64 multiple precision floating-point computation ii libmagic-mgc 1:5.45-3build1 amd64 File type determination library using "magic" numbers (compiled magic file)
ii libmspack0t64:amd64 0.11-1.1build1 amd64 library for Microsoft compression formats (shared library) ii libmagic1t64:amd64 1:5.45-3build1 amd64 Recognize the type of data in a file using "magic" numbers - library
ii libncurses6:amd64 6.4+20240113-1ubuntu1 amd64 shared libraries for terminal handling ii libmd0:amd64 1.1.0-2 amd64 message digest functions from BSD systems - shared library
ii libncursesw6:amd64 6.4+20240113-1ubuntu1 amd64 shared libraries for terminal handling (wide character support) ii libmount1:amd64 2.39.3-9ubuntu4 amd64 device mounting library
ii libnettle8t64:amd64 3.9.1-2.2build1 amd64 low level cryptographic library (symmetric and one-way cryptos) ii libmpc3:amd64 1.3.1-1 amd64 multiple precision complex floating-point library
ii libnghttp2-14:amd64 1.59.0-1build2 amd64 library implementing HTTP/2 protocol (shared library) ii libmpfr6:amd64 4.2.1-1 amd64 multiple precision floating-point computation
ii libnl-3-200:amd64 3.7.0-0.3 amd64 library for dealing with netlink sockets ii libmsgpackc2:amd64 4.0.0-3 amd64 binary-based efficient object serialization library
ii libnl-genl-3-200:amd64 3.7.0-0.3 amd64 library for dealing with netlink sockets - generic netlink ii libmspack0t64:amd64 0.11-1.1build1 amd64 library for Microsoft compression formats (shared library)
ii libnpth0:amd64 1.6-3build2 amd64 replacement for GNU Pth using system threads ii libncurses6:amd64 6.4+20240113-1ubuntu1 amd64 shared libraries for terminal handling
ii libonig5:amd64 6.9.9-1 amd64 regular expressions library ii libncursesw6:amd64 6.4+20240113-1ubuntu1 amd64 shared libraries for terminal handling (wide character support)
ii libp11-kit0:amd64 0.25.3-4ubuntu1 amd64 library for loading and coordinating access to PKCS#11 modules - runtime ii libnettle8t64:amd64 3.9.1-2.2build1 amd64 low level cryptographic library (symmetric and one-way cryptos)
ii libpam-modules-bin 1.5.3-5ubuntu4 amd64 Pluggable Authentication Modules for PAM - helper binaries ii libnghttp2-14:amd64 1.59.0-1build2 amd64 library implementing HTTP/2 protocol (shared library)
ii libpam-modules:amd64 1.5.3-5ubuntu4 amd64 Pluggable Authentication Modules for PAM ii libnl-3-200:amd64 3.7.0-0.3 amd64 library for dealing with netlink sockets
ii libpam-runtime 1.5.3-5ubuntu4 all Runtime support for the PAM library ii libnl-genl-3-200:amd64 3.7.0-0.3 amd64 library for dealing with netlink sockets - generic netlink
ii libpam0g:amd64 1.5.3-5ubuntu4 amd64 Pluggable Authentication Modules library ii libnpth0:amd64 1.6-3build2 amd64 replacement for GNU Pth using system threads
ii libpcre2-8-0:amd64 10.42-4ubuntu1 amd64 New Perl Compatible Regular Expression Library- 8 bit runtime files ii libonig5:amd64 6.9.9-1 amd64 regular expressions library
ii libperl5.38t64:amd64 5.38.2-3.2build1 amd64 shared Perl library ii libp11-kit0:amd64 0.25.3-4ubuntu1 amd64 library for loading and coordinating access to PKCS#11 modules - runtime
ii libpopt0:amd64 1.19+dfsg-1 amd64 lib for parsing cmdline parameters ii libpam-modules-bin 1.5.3-5ubuntu4 amd64 Pluggable Authentication Modules for PAM - helper binaries
ii libproc2-0:amd64 2:4.0.4-4ubuntu3 amd64 library for accessing process information from /proc ii libpam-modules:amd64 1.5.3-5ubuntu4 amd64 Pluggable Authentication Modules for PAM
ii libpsl5t64:amd64 0.21.2-1.1build1 amd64 Library for Public Suffix List (shared libraries) ii libpam-runtime 1.5.3-5ubuntu4 all Runtime support for the PAM library
ii libpython2.7-minimal:amd64 2.7.18-8+deb11u1 amd64 Minimal subset of the Python language (version 2.7) ii libpam0g:amd64 1.5.3-5ubuntu4 amd64 Pluggable Authentication Modules library
ii libpython3-stdlib:amd64 3.12.2-0ubuntu2 amd64 interactive high-level object-oriented language (default python3 version) ii libpcre2-32-0:amd64 10.42-4ubuntu1 amd64 New Perl Compatible Regular Expression Library - 32 bit runtime files
ii libpython3.12-minimal:amd64 3.12.2-4build4 amd64 Minimal subset of the Python language (version 3.12) ii libpcre2-8-0:amd64 10.42-4ubuntu1 amd64 New Perl Compatible Regular Expression Library- 8 bit runtime files
ii libpython3.12-stdlib:amd64 3.12.2-4build4 amd64 Interactive high-level object-oriented language (standard library, version 3.12) ii libperl5.38t64:amd64 5.38.2-3.2build1 amd64 shared Perl library
ii libpython3.12t64:amd64 3.12.2-4build4 amd64 Shared Python runtime library (version 3.12) ii libpipeline1:amd64 1.5.7-2 amd64 Unix process pipeline manipulation library
ii libquadmath0:amd64 14-20240330-1ubuntu2 amd64 GCC Quad-Precision Math Library ii libpopt0:amd64 1.19+dfsg-1 amd64 lib for parsing cmdline parameters
ii libreadline8t64:amd64 8.2-4build1 amd64 GNU readline and history libraries, run-time libraries ii libproc2-0:amd64 2:4.0.4-4ubuntu3 amd64 library for accessing process information from /proc
ii librhash0:amd64 1.4.3-3 amd64 shared library for hash functions computing ii libpsl5t64:amd64 0.21.2-1.1build1 amd64 Library for Public Suffix List (shared libraries)
ii librtmp1:amd64 2.4+20151223.gitfa8646d.1-2build7 amd64 toolkit for RTMP streams (shared library) ii libpython2.7-minimal:amd64 2.7.18-8+deb11u1 amd64 Minimal subset of the Python language (version 2.7)
ii libsasl2-2:amd64 2.1.28+dfsg1-5ubuntu2 amd64 Cyrus SASL - authentication abstraction library ii libpython3-stdlib:amd64 3.12.2-0ubuntu2 amd64 interactive high-level object-oriented language (default python3 version)
ii libsasl2-modules-db:amd64 2.1.28+dfsg1-5ubuntu2 amd64 Cyrus SASL - pluggable authentication modules (DB) ii libpython3.12-minimal:amd64 3.12.2-4build4 amd64 Minimal subset of the Python language (version 3.12)
ii libseccomp2:amd64 2.5.5-1ubuntu3 amd64 high level interface to Linux seccomp filter ii libpython3.12-stdlib:amd64 3.12.2-4build4 amd64 Interactive high-level object-oriented language (standard library, version 3.12)
ii libselinux1:amd64 3.5-2ubuntu2 amd64 SELinux runtime shared libraries ii libpython3.12t64:amd64 3.12.2-4build4 amd64 Shared Python runtime library (version 3.12)
ii libsemanage-common 3.5-1build5 all Common files for SELinux policy management libraries ii libquadmath0:amd64 14-20240330-1ubuntu2 amd64 GCC Quad-Precision Math Library
ii libsemanage2:amd64 3.5-1build5 amd64 SELinux policy management library ii libreadline8t64:amd64 8.2-4build1 amd64 GNU readline and history libraries, run-time libraries
ii libsensors-config 1:3.6.0-9build1 all lm-sensors configuration files ii librhash0:amd64 1.4.3-3 amd64 shared library for hash functions computing
ii libsensors5:amd64 1:3.6.0-9build1 amd64 library to read temperature/voltage/fan sensors ii librtmp1:amd64 2.4+20151223.gitfa8646d.1-2build7 amd64 toolkit for RTMP streams (shared library)
ii libsepol2:amd64 3.5-2 amd64 SELinux library for manipulating binary security policies ii libsasl2-2:amd64 2.1.28+dfsg1-5ubuntu2 amd64 Cyrus SASL - authentication abstraction library
ii libsframe1:amd64 2.42-4ubuntu2 amd64 Library to handle the SFrame format (runtime library) ii libsasl2-modules-db:amd64 2.1.28+dfsg1-5ubuntu2 amd64 Cyrus SASL - pluggable authentication modules (DB)
ii libsigsegv2:amd64 2.14-1ubuntu1 amd64 Library for handling page faults in a portable way ii libseccomp2:amd64 2.5.5-1ubuntu3 amd64 high level interface to Linux seccomp filter
ii libsmartcols1:amd64 2.39.3-9ubuntu4 amd64 smart column output alignment library ii libselinux1:amd64 3.5-2ubuntu2 amd64 SELinux runtime shared libraries
ii libsodium23:amd64 1.0.18-1build2 amd64 Network communication, cryptography and signaturing library ii libsemanage-common 3.5-1build5 all Common files for SELinux policy management libraries
ii libsource-highlight-common 3.1.9-4.3build1 all architecture-independent files for source highlighting library ii libsemanage2:amd64 3.5-1build5 amd64 SELinux policy management library
ii libsource-highlight4v5:amd64 3.1.9-4.2build2 amd64 source highlighting library ii libsensors-config 1:3.6.0-9build1 all lm-sensors configuration files
ii libsqlite3-0:amd64 3.45.1-1ubuntu2 amd64 SQLite 3 shared library ii libsensors5:amd64 1:3.6.0-9build1 amd64 library to read temperature/voltage/fan sensors
ii libss2:amd64 1.47.0-2.4~exp1ubuntu3 amd64 command-line interface parsing library ii libsepol2:amd64 3.5-2 amd64 SELinux library for manipulating binary security policies
ii libssh-4:amd64 0.10.6-2build2 amd64 tiny C SSH library (OpenSSL flavor) ii libsframe1:amd64 2.42-4ubuntu2 amd64 Library to handle the SFrame format (runtime library)
ii libssh2-1t64:amd64 1.11.0-4.1build2 amd64 SSH2 client-side library ii libsigsegv2:amd64 2.14-1ubuntu1 amd64 Library for handling page faults in a portable way
ii libssl3t64:amd64 3.0.13-0ubuntu3 amd64 Secure Sockets Layer toolkit - shared libraries ii libsmartcols1:amd64 2.39.3-9ubuntu4 amd64 smart column output alignment library
ii libstdc++-13-dev:amd64 13.2.0-23ubuntu3 amd64 GNU Standard C++ Library v3 (development files) ii libsource-highlight-common 3.1.9-4.3build1 all architecture-independent files for source highlighting library
ii libstdc++6:amd64 14-20240330-1ubuntu2 amd64 GNU Standard C++ Library v3 ii libsource-highlight4t64:amd64 3.1.9-4.3build1 amd64 source highlighting library
ii libsystemd0:amd64 255.4-1ubuntu7 amd64 systemd utility library ii libsqlite3-0:amd64 3.45.1-1ubuntu2 amd64 SQLite 3 shared library
ii libtasn1-6:amd64 4.19.0-3 amd64 Manage ASN.1 structures (runtime) ii libss2:amd64 1.47.0-2.4~exp1ubuntu3 amd64 command-line interface parsing library
ii libtime-duration-perl 1.21-2 all module for rounded or exact English expression of durations ii libssh-4:amd64 0.10.6-2build2 amd64 tiny C SSH library (OpenSSL flavor)
ii libtimedate-perl 2.3300-2 all collection of modules to manipulate date/time information ii libssh2-1t64:amd64 1.11.0-4.1build2 amd64 SSH2 client-side library
ii libtinfo6:amd64 6.4+20240113-1ubuntu1 amd64 shared low-level terminfo library for terminal handling ii libssl3t64:amd64 3.0.13-0ubuntu3 amd64 Secure Sockets Layer toolkit - shared libraries
ii libtsan2:amd64 14-20240330-1ubuntu2 amd64 ThreadSanitizer -- a Valgrind-based detector of data races (runtime) ii libstdc++-13-dev:amd64 13.2.0-23ubuntu3 amd64 GNU Standard C++ Library v3 (development files)
ii libubsan1:amd64 14-20240330-1ubuntu2 amd64 UBSan -- undefined behaviour sanitizer (runtime) ii libstdc++6:amd64 14-20240330-1ubuntu2 amd64 GNU Standard C++ Library v3
ii libudev1:amd64 255.4-1ubuntu7 amd64 libudev shared library ii libsystemd0:amd64 255.4-1ubuntu7 amd64 systemd utility library
ii libunistring5:amd64 1.1-2 amd64 Unicode string library for C ii libtasn1-6:amd64 4.19.0-3 amd64 Manage ASN.1 structures (runtime)
ii liburing2:amd64 2.5-1 amd64 Linux kernel io_uring access library - shared library ii libtermkey1:amd64 0.22-1 amd64 library for processing keyboard input
ii libutempter0:amd64 1.2.1-3 amd64 privileged helper for utmp/wtmp updates (runtime) ii libtime-duration-perl 1.21-2 all module for rounded or exact English expression of durations
ii libuuid1:amd64 2.39.3-9ubuntu4 amd64 Universally Unique ID library ii libtimedate-perl 2.3300-2 all collection of modules to manipulate date/time information
ii libuv1t64:amd64 1.48.0-1.1build1 amd64 asynchronous event notification library - runtime library ii libtinfo6:amd64 6.4+20240113-1ubuntu1 amd64 shared low-level terminfo library for terminal handling
ii libx11-6:amd64 2:1.8.7-1 amd64 X11 client-side library ii libtree-sitter0:amd64 0.20.8-2 amd64 incremental parsing system for programming tools
ii libx11-data 2:1.8.7-1 all X11 client-side library ii libtsan2:amd64 14-20240330-1ubuntu2 amd64 ThreadSanitizer -- a Valgrind-based detector of data races (runtime)
ii libx32asan8 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector (x32) ii libubsan1:amd64 14-20240330-1ubuntu2 amd64 UBSan -- undefined behaviour sanitizer (runtime)
ii libx32atomic1 14-20240330-1ubuntu2 amd64 support library providing __atomic built-in functions (x32) ii libuchardet0:amd64 0.0.8-1 amd64 universal charset detection library - shared library
ii libx32gcc-13-dev 13.2.0-23ubuntu3 amd64 GCC support library (x32 development files) ii libudev1:amd64 255.4-1ubuntu7 amd64 libudev shared library
ii libx32gcc-s1 14-20240330-1ubuntu2 amd64 GCC support library (x32) ii libunibilium4:amd64 2.1.0-3 amd64 simple, self-contained terminfo library
ii libx32gomp1 14-20240330-1ubuntu2 amd64 GCC OpenMP (GOMP) support library (x32) ii libunistring5:amd64 1.1-2 amd64 Unicode string library for C
ii libx32itm1 14-20240330-1ubuntu2 amd64 GNU Transactional Memory Library (x32) ii liburing2:amd64 2.5-1 amd64 Linux kernel io_uring access library - shared library
ii libx32quadmath0 14-20240330-1ubuntu2 amd64 GCC Quad-Precision Math Library (x32) ii libutempter0:amd64 1.2.1-3 amd64 privileged helper for utmp/wtmp updates (runtime)
ii libx32stdc++-13-dev 13.2.0-23ubuntu3 amd64 GNU Standard C++ Library v3 (development files) ii libuuid1:amd64 2.39.3-9ubuntu4 amd64 Universally Unique ID library
ii libx32stdc++6 14-20240330-1ubuntu2 amd64 GNU Standard C++ Library v3 (x32) ii libuv1t64:amd64 1.48.0-1.1build1 amd64 asynchronous event notification library - runtime library
ii libx32ubsan1 14-20240330-1ubuntu2 amd64 UBSan -- undefined behaviour sanitizer (x32) ii libvterm0:amd64 0.3.3-2build1 amd64 abstract terminal library
ii libxau6:amd64 1:1.0.9-1build5 amd64 X11 authorisation library ii libx11-6:amd64 2:1.8.7-1 amd64 X11 client-side library
ii libxcb1:amd64 1.15-1 amd64 X C Binding ii libx11-data 2:1.8.7-1 all X11 client-side library
ii libxdmcp6:amd64 1:1.1.3-0ubuntu5 amd64 X11 Display Manager Control Protocol library ii libx32asan8 14-20240330-1ubuntu2 amd64 AddressSanitizer -- a fast memory error detector (x32)
ii libxml2:amd64 2.9.14+dfsg-1.3ubuntu3 amd64 GNOME XML library ii libx32atomic1 14-20240330-1ubuntu2 amd64 support library providing __atomic built-in functions (x32)
ii libxxhash0:amd64 0.8.2-2 amd64 shared library for xxhash ii libx32gcc-13-dev 13.2.0-23ubuntu3 amd64 GCC support library (x32 development files)
ii libyaml-0-2:amd64 0.2.5-1 amd64 Fast YAML 1.1 parser and emitter library ii libx32gcc-s1 14-20240330-1ubuntu2 amd64 GCC support library (x32)
ii libzstd-dev:amd64 1.5.5+dfsg2-2 amd64 fast lossless compression algorithm -- development files ii libx32gomp1 14-20240330-1ubuntu2 amd64 GCC OpenMP (GOMP) support library (x32)
ii libzstd1:amd64 1.5.5+dfsg2-2 amd64 fast lossless compression algorithm ii libx32itm1 14-20240330-1ubuntu2 amd64 GNU Transactional Memory Library (x32)
ii linux-libc-dev:amd64 6.8.0-11.11 amd64 Linux Kernel Headers for development ii libx32quadmath0 14-20240330-1ubuntu2 amd64 GCC Quad-Precision Math Library (x32)
ii login 1:4.13+dfsg1-4ubuntu1 amd64 system login tools ii libx32stdc++-13-dev 13.2.0-23ubuntu3 amd64 GNU Standard C++ Library v3 (development files)
ii logsave 1.47.0-2.4~exp1ubuntu3 amd64 save the output of a command in a log file ii libx32stdc++6 14-20240330-1ubuntu2 amd64 GNU Standard C++ Library v3 (x32)
ii lsb-release 12.0-2 all Linux Standard Base version reporting utility (minimal implementation) ii libx32ubsan1 14-20240330-1ubuntu2 amd64 UBSan -- undefined behaviour sanitizer (x32)
ii lz4 1.9.4-1 amd64 Fast LZ compression algorithm library - tool ii libxau6:amd64 1:1.0.9-1build5 amd64 X11 authorisation library
ii lzip 1.24.1-1build1 amd64 lossless data compressor based on the LZMA algorithm ii libxcb1:amd64 1.15-1 amd64 X C Binding
ii lzop 1.04-2build2 amd64 fast compression program ii libxdmcp6:amd64 1:1.1.3-0ubuntu5 amd64 X11 Display Manager Control Protocol library
ii make 4.3-4.1build1 amd64 utility for directing compilation ii libxml2:amd64 2.9.14+dfsg-1.3ubuntu3 amd64 GNOME XML library
ii mawk 1.3.4.20240123-1 amd64 Pattern scanning and text processing language ii libxxhash0:amd64 0.8.2-2 amd64 shared library for xxhash
ii media-types 10.1.0 all List of standard media types and their usual file extension ii libyaml-0-2:amd64 0.2.5-1 amd64 Fast YAML 1.1 parser and emitter library
ii mksh 59c-34 amd64 MirBSD Korn Shell ii libzstd-dev:amd64 1.5.5+dfsg2-2 amd64 fast lossless compression algorithm -- development files
ii moreutils 0.69-1 amd64 additional Unix utilities ii libzstd1:amd64 1.5.5+dfsg2-2 amd64 fast lossless compression algorithm
ii mount 2.39.3-9ubuntu4 amd64 tools for mounting and manipulating filesystems ii linux-libc-dev:amd64 6.8.0-11.11 amd64 Linux Kernel Headers for development
ii ncurses-base 6.4+20240113-1ubuntu1 all basic terminal type definitions ii login 1:4.13+dfsg1-4ubuntu1 amd64 system login tools
ii ncurses-bin 6.4+20240113-1ubuntu1 amd64 terminal-related programs and man pages ii logsave 1.47.0-2.4~exp1ubuntu3 amd64 save the output of a command in a log file
ii ncurses-term 6.4+20240113-1ubuntu1 all additional terminal type definitions ii lsb-release 12.0-2 all Linux Standard Base version reporting utility (minimal implementation)
ii netbase 6.4 all Basic TCP/IP networking system ii lua-luv:amd64 1.48.0-2-2build1 amd64 libuv bindings for Lua
ii ninja-build 1.11.1-2 amd64 small build system closest in spirit to Make ii lz4 1.9.4-1 amd64 Fast LZ compression algorithm library - tool
ii openssl 3.0.13-0ubuntu3 amd64 Secure Sockets Layer toolkit - cryptographic utility ii lzip 1.24.1-1build1 amd64 lossless data compressor based on the LZMA algorithm
ii p7zip 16.02+transitional.1 all transitional package ii lzop 1.04-2build2 amd64 fast compression program
ii parallel 20231122+ds-1 all build and execute command lines from standard input in parallel ii make 4.3-4.1build1 amd64 utility for directing compilation
ii passwd 1:4.13+dfsg1-4ubuntu1 amd64 change and administer password and group data ii man-db 2.12.0-4build1 amd64 tools for reading manual pages
ii patch 2.7.6-7build2 amd64 Apply a diff file to an original ii mawk 1.3.4.20240123-1 amd64 Pattern scanning and text processing language
ii patchelf 0.18.0-1.1build1 amd64 modify properties of ELF executables ii media-types 10.1.0 all List of standard media types and their usual file extension
ii patchutils 0.4.2-1build2 amd64 Utilities to work with patches ii minify 2.20.17-1 amd64 CLI implementation of the Go minify library package
ii pax-utils 1.3.7-1 amd64 Security-focused ELF files checking tool ii mksh 59c-34 amd64 MirBSD Korn Shell
ii perl 5.38.2-3.2build1 amd64 Larry Wall's Practical Extraction and Report Language ii moreutils 0.69-1 amd64 additional Unix utilities
ii perl-base 5.38.2-3.2build1 amd64 minimal Perl system ii mount 2.39.3-9ubuntu4 amd64 tools for mounting and manipulating filesystems
ii perl-modules-5.38 5.38.2-3.2build1 all Core Perl modules ii ncurses-base 6.4+20240113-1ubuntu1 all basic terminal type definitions
ii procps 2:4.0.4-4ubuntu3 amd64 /proc file system utilities ii ncurses-bin 6.4+20240113-1ubuntu1 amd64 terminal-related programs and man pages
ii python2.7-minimal 2.7.18-8+deb11u1 amd64 Minimal subset of the Python language (version 2.7) ii ncurses-term 6.4+20240113-1ubuntu1 all additional terminal type definitions
ii python3 3.12.2-0ubuntu2 amd64 interactive high-level object-oriented language (default python3 version) ii neovim 0.9.5-6ubuntu2 amd64 heavily refactored vim fork
ii python3-minimal 3.12.2-0ubuntu2 amd64 minimal subset of the Python language (default python3 version) ii neovim-runtime 0.9.5-6ubuntu2 all heavily refactored vim fork (runtime files)
ii python3-pyasn1 0.4.8-4 all ASN.1 library for Python (Python 3 module) ii netbase 6.4 all Basic TCP/IP networking system
ii python3-pycryptodome 3.20.0+dfsg-1 amd64 cryptographic Python library (Python 3) ii ninja-build 1.11.1-2 amd64 small build system closest in spirit to Make
ii python3-pyelftools 0.30-1 all pure-python3 library for parsing ELF and DWARF ii openssl 3.0.13-0ubuntu3 amd64 Secure Sockets Layer toolkit - cryptographic utility
ii python3-zstd 1.5.5.1-1 amd64 python bindings to Yann Collet ZSTD compression library ii p7zip 16.02+transitional.1 all transitional package
ii python3.12 3.12.2-4build4 amd64 Interactive high-level object-oriented language (version 3.12) ii parallel 20231122+ds-1 all build and execute command lines from standard input in parallel
ii python3.12-minimal 3.12.2-4build4 amd64 Minimal subset of the Python language (version 3.12) ii passwd 1:4.13+dfsg1-4ubuntu1 amd64 change and administer password and group data
ii re2c 3.1-1 amd64 lexer generator for C, C++, Go and Rust ii patch 2.7.6-7build2 amd64 Apply a diff file to an original
ii readline-common 8.2-4build1 all GNU readline and history libraries, common files ii patchelf 0.18.0-1.1build1 amd64 modify properties of ELF executables
ii ripgrep 14.1.0-1 amd64 Recursively searches directories for a regex pattern ii patchutils 0.4.2-1build2 amd64 Utilities to work with patches
ii rpcsvc-proto 1.4.2-0ubuntu6 amd64 RPC protocol compiler and definitions ii pax-utils 1.3.7-1 amd64 Security-focused ELF files checking tool
ii rsync 3.2.7-1build2 amd64 fast, versatile, remote (and local) file-copying tool ii perl 5.38.2-3.2build1 amd64 Larry Wall's Practical Extraction and Report Language
ii screen 4.9.1-1 amd64 terminal multiplexer with VT100/ANSI terminal emulation ii perl-base 5.38.2-3.2build1 amd64 minimal Perl system
ii sed 4.9-2 amd64 GNU stream editor for filtering/transforming text ii perl-modules-5.38 5.38.2-3.2build1 all Core Perl modules
ii sensible-utils 0.0.22 all Utilities for sensible alternative selection ii procps 2:4.0.4-4ubuntu3 amd64 /proc file system utilities
ii sysstat 12.6.1-1ubuntu1 amd64 system performance tools for Linux ii python2.7-minimal 2.7.18-8+deb11u1 amd64 Minimal subset of the Python language (version 2.7)
ii sysvinit-utils 3.08-6ubuntu2 amd64 System-V-like utilities ii python3 3.12.2-0ubuntu2 amd64 interactive high-level object-oriented language (default python3 version)
ii tar 1.35+dfsg-3 amd64 GNU version of the tar archiving utility ii python3-argcomplete 3.1.4-1 all bash tab completion for argparse (for Python 3)
ii time 1.9-0.2 amd64 GNU time program for measuring CPU resource usage ii python3-minimal 3.12.2-0ubuntu2 amd64 minimal subset of the Python language (default python3 version)
ii tzdata 2024a-1ubuntu1 all time zone and daylight-saving time data ii python3-pyasn1 0.4.8-4 all ASN.1 library for Python (Python 3 module)
ii ubuntu-keyring 2023.11.28.1 all GnuPG keys of the Ubuntu archive ii python3-pycryptodome 3.20.0+dfsg-1 amd64 cryptographic Python library (Python 3)
ii ucf 3.0043+nmu1 all Update Configuration File(s): preserve user changes to config files ii python3-pyelftools 0.30-1 all pure-python3 library for parsing ELF and DWARF
ii universal-ctags 5.9.20210829.0-1 amd64 build tag file indexes of source code definitions ii python3-toml 0.10.2-1 all library for Tom's Obvious, Minimal Language - Python 3.x
ii unzip 6.0-28ubuntu3 amd64 De-archiver for .zip files ii python3-xmltodict 0.13.0-1 all Makes working with XML feel like you are working with JSON (Python 3)
ii util-linux 2.39.3-9ubuntu4 amd64 miscellaneous system utilities ii python3-yaml 6.0.1-2build2 amd64 YAML parser and emitter for Python3
ii vim 2:9.1.0016-1ubuntu7 amd64 Vi IMproved - enhanced vi editor ii python3-zstd 1.5.5.1-1 amd64 python bindings to Yann Collet ZSTD compression library
ii vim-common 2:9.1.0016-1ubuntu7 all Vi IMproved - Common files ii python3.12 3.12.2-4build4 amd64 Interactive high-level object-oriented language (version 3.12)
ii vim-runtime 2:9.1.0016-1ubuntu7 all Vi IMproved - Runtime files ii python3.12-minimal 3.12.2-4build4 amd64 Minimal subset of the Python language (version 3.12)
ii wget 1.21.4-1ubuntu3 amd64 retrieves files from the web ii re2c 3.1-1 amd64 lexer generator for C, C++, Go and Rust
ii xz-utils 5.6.1+really5.4.5-1 amd64 XZ-format compression utilities ii readline-common 8.2-4build1 all GNU readline and history libraries, common files
ii yash 2.55-2 amd64 yet another shell ii ripgrep 14.1.0-1 amd64 Recursively searches directories for a regex pattern
ii zip 3.0-13 amd64 Archiver for .zip files ii rpcsvc-proto 1.4.2-0ubuntu6 amd64 RPC protocol compiler and definitions
ii zlib1g-dev:amd64 1:1.3.dfsg-3.1ubuntu2 amd64 compression library - development ii rsync 3.2.7-1build2 amd64 fast, versatile, remote (and local) file-copying tool
ii zlib1g:amd64 1:1.3.dfsg-3.1ubuntu2 amd64 compression library - runtime ii screen 4.9.1-1 amd64 terminal multiplexer with VT100/ANSI terminal emulation
ii zlib1g:i386 1:1.3.dfsg-3.1ubuntu2 i386 compression library - runtime ii sed 4.9-2 amd64 GNU stream editor for filtering/transforming text
ii zsh 5.9-6ubuntu1 amd64 shell with lots of features ii sensible-utils 0.0.22 all Utilities for sensible alternative selection
ii zsh-common 5.9-6ubuntu1 all architecture independent files for Zsh ii sysstat 12.6.1-1ubuntu1 amd64 system performance tools for Linux
ii zstd 1.5.5+dfsg2-2 amd64 fast lossless compression algorithm -- CLI tool ii sysvinit-utils 3.08-6ubuntu2 amd64 System-V-like utilities
rc libgnutls30:amd64 3.8.3-1ubuntu1 amd64 GNU TLS library - main runtime library ii tar 1.35+dfsg-3 amd64 GNU version of the tar archiving utility
ii time 1.9-0.2 amd64 GNU time program for measuring CPU resource usage
ii tzdata 2024a-1ubuntu1 all time zone and daylight-saving time data
ii ubuntu-keyring 2023.11.28.1 all GnuPG keys of the Ubuntu archive
ii ucf 3.0043+nmu1 all Update Configuration File(s): preserve user changes to config files
ii universal-ctags 5.9.20210829.0-1 amd64 build tag file indexes of source code definitions
ii unzip 6.0-28ubuntu3 amd64 De-archiver for .zip files
ii util-linux 2.39.3-9ubuntu4 amd64 miscellaneous system utilities
ii wget 1.21.4-1ubuntu3 amd64 retrieves files from the web
ii xz-utils 5.6.1+really5.4.5-1 amd64 XZ-format compression utilities
ii yash 2.55-2 amd64 yet another shell
ii yq 3.1.0-3 all Command-line YAML processor - jq wrapper for YAML documents
ii zip 3.0-13 amd64 Archiver for .zip files
ii zlib1g-dev:amd64 1:1.3.dfsg-3.1ubuntu2 amd64 compression library - development
ii zlib1g:amd64 1:1.3.dfsg-3.1ubuntu2 amd64 compression library - runtime
ii zlib1g:i386 1:1.3.dfsg-3.1ubuntu2 i386 compression library - runtime
ii zsh 5.9-6ubuntu1 amd64 shell with lots of features
ii zsh-common 5.9-6ubuntu1 all architecture independent files for Zsh
ii zstd 1.5.5+dfsg2-2 amd64 fast lossless compression algorithm -- CLI tool
rc libgnutls30:amd64 3.8.3-1ubuntu1 amd64 GNU TLS library - main runtime library
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description ||/ Name Version Architecture Description
Packages sorted by Installed-Size: Packages sorted by Installed-Size:
854360 ===== TOTAL (321 packages) 870769 ===== TOTAL (340 packages)
72237 gcc-13-x86-64-linux-gnu amd64 72237 gcc-13-x86-64-linux-gnu amd64
37833 g++-13-x86-64-linux-gnu amd64 37833 g++-13-x86-64-linux-gnu amd64
36529 vim-runtime all
36493 cmake amd64 36493 cmake amd64
35919 libicu74 amd64 35919 libicu74 amd64
35023 cpp-13-x86-64-linux-gnu amd64 35023 cpp-13-x86-64-linux-gnu amd64
29327 libperl5.38t64 amd64 29327 libperl5.38t64 amd64
21815 neovim-runtime all
21684 git amd64 21684 git amd64
20517 libstdc++-13-dev amd64 20517 libstdc++-13-dev amd64
19159 perl-modules-5.38 all 19159 perl-modules-5.38 all
@@ -343,6 +362,7 @@ Packages sorted by Installed-Size:
13430 libc6 amd64 13430 libc6 amd64
13111 libc6-dev amd64 13111 libc6-dev amd64
12695 gdb amd64 12695 gdb amd64
12321 fish-common all
12296 libc6 i386 12296 libc6 i386
12003 libc6-x32 amd64 12003 libc6-x32 amd64
11992 libc6-i386 amd64 11992 libc6-i386 amd64
@@ -363,6 +383,7 @@ Packages sorted by Installed-Size:
7162 linux-libc-dev amd64 7162 linux-libc-dev amd64
6946 libc6-dev-i386 amd64 6946 libc6-dev-i386 amd64
6936 coreutils amd64 6936 coreutils amd64
6775 neovim amd64
6743 lib32stdc++-13-dev amd64 6743 lib32stdc++-13-dev amd64
6607 libssl3t64 amd64 6607 libssl3t64 amd64
6433 libx32stdc++-13-dev amd64 6433 libx32stdc++-13-dev amd64
@@ -372,15 +393,17 @@ Packages sorted by Installed-Size:
5169 libpython3.12-minimal amd64 5169 libpython3.12-minimal amd64
4873 libhwasan0 amd64 4873 libhwasan0 amd64
4341 ncurses-term all 4341 ncurses-term all
4130 vim amd64 4244 minify amd64
4104 apt amd64 4104 apt amd64
3983 gojq amd64 3983 gojq amd64
3956 python3-pycryptodome amd64 3956 python3-pycryptodome amd64
3949 libglib2.0-0t64 amd64 3949 libglib2.0-0t64 amd64
3849 libgprofng0 amd64 3849 libgprofng0 amd64
3795 liblsan0 amd64 3795 liblsan0 amd64
3721 groff-base amd64
3627 fzf amd64 3627 fzf amd64
3605 python2.7-minimal amd64 3605 python2.7-minimal amd64
3443 fish amd64
3437 util-linux amd64 3437 util-linux amd64
3429 re2c amd64 3429 re2c amd64
3403 libaria2-0 amd64 3403 libaria2-0 amd64
@@ -393,6 +416,7 @@ Packages sorted by Installed-Size:
2995 parallel all 2995 parallel all
2966 lib32stdc++6 amd64 2966 lib32stdc++6 amd64
2957 elfutils amd64 2957 elfutils amd64
2928 man-db amd64
2785 libpython2.7-minimal amd64 2785 libpython2.7-minimal amd64
2770 libx32stdc++6 amd64 2770 libx32stdc++6 amd64
2431 zsh amd64 2431 zsh amd64
@@ -409,7 +433,6 @@ Packages sorted by Installed-Size:
1980 aria2 amd64 1980 aria2 amd64
1900 bash amd64 1900 bash amd64
1884 openssl amd64 1884 openssl amd64
1852 vim-common all
1796 procps amd64 1796 procps amd64
1778 zstd amd64 1778 zstd amd64
1761 libdb5.3t64 amd64 1761 libdb5.3t64 amd64
@@ -437,16 +460,17 @@ Packages sorted by Installed-Size:
996 screen amd64 996 screen amd64
924 libcurl4t64 amd64 924 libcurl4t64 amd64
916 wget amd64 916 wget amd64
905 libcurl3-gnutls amd64 905 libcurl3t64-gnutls amd64
904 libarchive13t64 amd64 904 libarchive13t64 amd64
884 login amd64 884 login amd64
843 libbrotli1 amd64 843 libbrotli1 amd64
828 busybox amd64 828 busybox amd64
812 lua-luv amd64
780 rsync amd64 780 rsync amd64
765 libdw1t64 amd64 765 libdw1t64 amd64
755 libsepol2 amd64 755 libsepol2 amd64
749 libzstd1 amd64 749 libzstd1 amd64
742 libsource-highlight4v5 amd64 745 libsource-highlight4t64 amd64
732 xz-utils amd64 732 xz-utils amd64
729 python3.12 amd64 729 python3.12 amd64
708 tar amd64 708 tar amd64
@@ -456,8 +480,10 @@ Packages sorted by Installed-Size:
639 libpcre2-8-0 amd64 639 libpcre2-8-0 amd64
629 libonig5 amd64 629 libonig5 amd64
624 python3-pyelftools all 624 python3-pyelftools all
602 libluajit-5.1-2 amd64
560 findutils amd64 560 findutils amd64
560 binutils-common amd64 560 binutils-common amd64
558 libpcre2-32-0 amd64
556 libtinfo6 amd64 556 libtinfo6 amd64
551 libgmp10 amd64 551 libgmp10 amd64
539 gcc-13 amd64 539 gcc-13 amd64
@@ -465,6 +491,7 @@ Packages sorted by Installed-Size:
536 zip amd64 536 zip amd64
536 libldap2 amd64 536 libldap2 amd64
520 curl amd64 520 curl amd64
512 python3-yaml amd64
508 libbabeltrace1 amd64 508 libbabeltrace1 amd64
496 libssh-4 amd64 496 libssh-4 amd64
493 debconf all 493 debconf all
@@ -477,7 +504,6 @@ Packages sorted by Installed-Size:
422 libncursesw6 amd64 422 libncursesw6 amd64
416 make amd64 416 make amd64
415 libssh2-1t64 amd64 415 libssh2-1t64 amd64
402 libsodium23 amd64
389 python3-pyasn1 all 389 python3-pyasn1 all
386 ca-certificates all 386 ca-certificates all
384 ncurses-base all 384 ncurses-base all
@@ -508,6 +534,7 @@ Packages sorted by Installed-Size:
288 libsemanage2 amd64 288 libsemanage2 amd64
288 libblkid1 amd64 288 libblkid1 amd64
287 bsdutils amd64 287 bsdutils amd64
286 bsdextrautils amd64
276 libpam-runtime all 276 libpam-runtime all
273 patchelf amd64 273 patchelf amd64
273 mawk amd64 273 mawk amd64
@@ -532,12 +559,15 @@ Packages sorted by Installed-Size:
224 libidn2-0 amd64 224 libidn2-0 amd64
224 debianutils amd64 224 debianutils amd64
219 patchutils amd64 219 patchutils amd64
218 libluajit-5.1-common all
214 ucf all 214 ucf all
211 libmagic1t64 amd64 211 libmagic1t64 amd64
208 libpam0g amd64 208 libpam0g amd64
207 libuchardet0 amd64
206 libxcb1 amd64 206 libxcb1 amd64
200 libselinux1 amd64 200 libselinux1 amd64
200 libnghttp2-14 amd64 200 libnghttp2-14 amd64
198 libtree-sitter0 amd64
197 libgcc-s1 amd64 197 libgcc-s1 amd64
196 libelf1t64 amd64 196 libelf1t64 amd64
187 dash amd64 187 dash amd64
@@ -553,6 +583,7 @@ Packages sorted by Installed-Size:
159 binutils amd64 159 binutils amd64
157 zlib1g i386 157 zlib1g i386
155 liblz4-1 amd64 155 liblz4-1 amd64
154 python3-argcomplete all
151 libaudit1 amd64 151 libaudit1 amd64
149 libmpc3 amd64 149 libmpc3 amd64
148 libyaml-0-2 amd64 148 libyaml-0-2 amd64
@@ -560,8 +591,8 @@ Packages sorted by Installed-Size:
148 libcc1-0 amd64 148 libcc1-0 amd64
143 libseccomp2 amd64 143 libseccomp2 amd64
137 librtmp1 amd64 137 librtmp1 amd64
136 libkrb5support0 amd64
136 libhiredis1.1.0 amd64 136 libhiredis1.1.0 amd64
132 libkrb5support0 amd64
130 init-system-helpers all 130 init-system-helpers all
127 libipt2 amd64 127 libipt2 amd64
127 libbsd0 amd64 127 libbsd0 amd64
@@ -587,38 +618,45 @@ Packages sorted by Installed-Size:
98 libmspack0t64 amd64 98 libmspack0t64 amd64
97 libcap2 amd64 97 libcap2 amd64
95 liburing2 amd64 95 liburing2 amd64
95 libunibilium4 amd64
95 libbz2-1.0 amd64 95 libbz2-1.0 amd64
93 media-types all 93 media-types all
93 libvterm0 amd64
93 libgdbm6t64 amd64
92 libjansson4 amd64 92 libjansson4 amd64
90 libxxhash0 amd64 90 libxxhash0 amd64
86 libgdbm6 amd64
83 libuuid1 amd64 83 libuuid1 amd64
82 python3 amd64 82 python3 amd64
82 cabextract amd64 82 cabextract amd64
79 libsensors5 amd64 79 libsensors5 amd64
79 libmd0 amd64 79 libmd0 amd64
77 readline-common all 77 readline-common all
77 python3-toml all
75 libsasl2-modules-db amd64 75 libsasl2-modules-db amd64
74 libasm1t64 amd64 74 libasm1t64 amd64
74 libacl1 amd64 74 libacl1 amd64
72 libffi8 amd64 72 libffi8 amd64
69 yq all
69 libss2 amd64 69 libss2 amd64
69 liberror-perl all 69 liberror-perl all
69 libdebuginfod1t64 amd64 69 libdebuginfod1t64 amd64
67 libpipeline1 amd64
65 python3-zstd amd64 65 python3-zstd amd64
63 sensible-utils all 63 sensible-utils all
63 libtermkey1 amd64
63 file amd64 63 file amd64
60 libcap-ng0 amd64 60 libcap-ng0 amd64
60 libattr1 amd64 60 libattr1 amd64
57 libcom-err2 amd64 57 libcom-err2 amd64
53 libnl-genl-3-200 amd64 53 libnl-genl-3-200 amd64
52 libmsgpackc2 amd64
51 logsave amd64 51 logsave amd64
51 libutempter0 amd64 51 libutempter0 amd64
51 libsigsegv2 amd64 51 libsigsegv2 amd64
50 libdebuginfod-common all 50 libdebuginfod-common all
47 python3-xmltodict all
46 hostname amd64 46 hostname amd64
45 libatomic1 amd64 45 libatomic1 amd64
44 libgpm2 amd64
43 libxdmcp6 amd64 43 libxdmcp6 amd64
43 libx32atomic1 amd64 43 libx32atomic1 amd64
41 libkeyutils1 amd64 41 libkeyutils1 amd64
@@ -631,7 +669,7 @@ Packages sorted by Installed-Size:
36 chrpath amd64 36 chrpath amd64
35 libxau6 amd64 35 libxau6 amd64
34 libtime-duration-perl all 34 libtime-duration-perl all
31 libgdbm-compat4 amd64 34 libgdbm-compat4t64 amd64
29 ubuntu-keyring all 29 ubuntu-keyring all
28 g++-13 amd64 28 g++-13 amd64
27 libpython3-stdlib amd64 27 libpython3-stdlib amd64
+20 -6
View File
@@ -62,19 +62,33 @@ exe=".out"
upx_self_exe=$upx_exe upx_self_exe=$upx_exe
fo="--force-overwrite" fo="--force-overwrite"
"${upx_run[@]}" -3 "${upx_self_exe}" ${fo} -o upx-packed${exe} "${upx_run[@]}" -3 --all-filters "${upx_self_exe}" ${fo} -o upx-packed${exe}
"${upx_run[@]}" -3 --nrv2b "${upx_self_exe}" ${fo} -o upx-packed-n2b${exe} "${upx_run[@]}" -3 --nrv2b "${upx_self_exe}" ${fo} -o upx-packed-n2b${exe}
"${upx_run[@]}" -3 --nrv2d "${upx_self_exe}" ${fo} -o upx-packed-n2d${exe} "${upx_run[@]}" -3 --nrv2d "${upx_self_exe}" ${fo} -o upx-packed-n2d${exe}
"${upx_run[@]}" -3 --nrv2e "${upx_self_exe}" ${fo} -o upx-packed-n2e${exe} "${upx_run[@]}" -3 --nrv2e "${upx_self_exe}" ${fo} -o upx-packed-n2e${exe}
"${upx_run[@]}" -1 --lzma "${upx_self_exe}" ${fo} -o upx-packed-lzma${exe} "${upx_run[@]}" -1 --lzma "${upx_self_exe}" ${fo} -o upx-packed-lzma${exe}
"${upx_run[@]}" -l upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe} "${upx_run[@]}" -l upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe}
"${upx_run[@]}" --fileinfo upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe} "${upx_run[@]}" --fileinfo upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe}
"${upx_run[@]}" -t upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe} "${upx_run[@]}" -t upx-packed${exe} upx-packed-n2b${exe} upx-packed-n2d${exe} upx-packed-n2e${exe} upx-packed-lzma${exe}
"${upx_run[@]}" -d upx-packed${exe} ${fo} -o upx-unpacked${exe}
"${upx_run[@]}" -d upx-packed${exe} ${fo} -o upx-unpacked${exe}
"${upx_run[@]}" -d upx-packed-n2b${exe} ${fo} -o upx-unpacked-n2b${exe}
"${upx_run[@]}" -d upx-packed-n2d${exe} ${fo} -o upx-unpacked-n2d${exe}
"${upx_run[@]}" -d upx-packed-n2e${exe} ${fo} -o upx-unpacked-n2e${exe}
"${upx_run[@]}" -d upx-packed-lzma${exe} ${fo} -o upx-unpacked-lzma${exe}
set -x set -x
"${upx_runner[@]}" ./upx-unpacked${exe} --version-short "${upx_runner[@]}" ./upx-unpacked${exe} --version-short
"${upx_runner[@]}" ./upx-unpacked-n2b${exe} --version-short
"${upx_runner[@]}" ./upx-unpacked-n2d${exe} --version-short
"${upx_runner[@]}" ./upx-unpacked-n2e${exe} --version-short
"${upx_runner[@]}" ./upx-unpacked-lzma${exe} --version-short
"${upx_runner[@]}" ./upx-packed${exe} --version-short "${upx_runner[@]}" ./upx-packed${exe} --version-short
"${upx_runner[@]}" ./upx-packed-n2b${exe} --version-short
"${upx_runner[@]}" ./upx-packed-n2d${exe} --version-short
"${upx_runner[@]}" ./upx-packed-n2e${exe} --version-short
"${upx_runner[@]}" ./upx-packed-lzma${exe} --version-short
echo "All done." echo "All done."
+3 -3
View File
@@ -3,8 +3,8 @@
# Copyright (C) Markus Franz Xaver Johannes Oberhumer # Copyright (C) Markus Franz Xaver Johannes Oberhumer
# #
# NOTE: this Makefile is deprecated - please directly use # NOTE: this Makefile is intended for developers - please use
# the top-level CMake build instead. # the top-level Makefile instead
ifndef srcdir ifndef srcdir
srcdir := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST)))) srcdir := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST))))
@@ -14,7 +14,7 @@ ifndef top_srcdir
endif endif
#*********************************************************************** #***********************************************************************
# redirect to top-level CMake build # redirect to top-level Makefile
#*********************************************************************** #***********************************************************************
# NOTE that the top-level Makefile .DEFAULT_GOAL is build/release # NOTE that the top-level Makefile .DEFAULT_GOAL is build/release
+25 -15
View File
@@ -56,7 +56,7 @@ int upx_doctest_check(int argc, char **argv) {
// default for debug builds: do show the [doctest] summary // default for debug builds: do show the [doctest] summary
minimal = false; minimal = false;
#endif #endif
const char *e = getenv("UPX_DEBUG_DOCTEST_VERBOSE"); const char *e = upx_getenv("UPX_DEBUG_DOCTEST_VERBOSE");
if (e && e[0]) { if (e && e[0]) {
if (strcmp(e, "0") == 0) { if (strcmp(e, "0") == 0) {
minimal = true; minimal = true;
@@ -375,8 +375,8 @@ static noinline bool shall_test_float_division_by_zero(void) {
static bool result = false; // default is false static bool result = false; // default is false
static upx_std_once_flag init_done; static upx_std_once_flag init_done;
upx_std_call_once(init_done, []() noexcept { upx_std_call_once(init_done, []() noexcept {
const char envvar[] = "UPX_DEBUG_TEST_FLOAT_DIVISION_BY_ZERO"; static const char envvar[] = "UPX_DEBUG_TEST_FLOAT_DIVISION_BY_ZERO";
const char *e = getenv(envvar); const char *e = upx_getenv(envvar);
bool force = (e && e[0] && strcmp(e, "2") == 0); bool force = (e && e[0] && strcmp(e, "2") == 0);
if (force) if (force)
result = true; result = true;
@@ -441,6 +441,8 @@ static noinline void check_basic_floating_point(void) noexcept {
#include "../util/miniacc.h" #include "../util/miniacc.h"
void upx_compiler_sanity_check(void) noexcept { void upx_compiler_sanity_check(void) noexcept {
check_basic_floating_point();
if (is_envvar_true("UPX_DEBUG_DOCTEST_DISABLE", "UPX_DEBUG_DISABLE_DOCTEST")) { if (is_envvar_true("UPX_DEBUG_DOCTEST_DISABLE", "UPX_DEBUG_DISABLE_DOCTEST")) {
// If UPX_DEBUG_DOCTEST_DISABLE is set then we don't want to throw any // If UPX_DEBUG_DOCTEST_DISABLE is set then we don't want to throw any
// exceptions in order to improve debugging experience. // exceptions in order to improve debugging experience.
@@ -449,8 +451,6 @@ void upx_compiler_sanity_check(void) noexcept {
check_basic_cxx_exception_handling(throwSomeValue); check_basic_cxx_exception_handling(throwSomeValue);
} }
check_basic_floating_point();
// check_basic_decltype() // check_basic_decltype()
{ {
auto a = +0; auto a = +0;
@@ -716,6 +716,11 @@ TEST_CASE("ptr_invalidate_and_poison") {
(void) dp; (void) dp;
} }
TEST_CASE("upx_getenv") {
CHECK_EQ(upx_getenv(nullptr), nullptr);
CHECK_EQ(upx_getenv(""), nullptr);
}
TEST_CASE("working -fno-strict-aliasing") { TEST_CASE("working -fno-strict-aliasing") {
bool ok; bool ok;
long v = 0; long v = 0;
@@ -802,17 +807,22 @@ TEST_CASE("libc qsort") {
assert_noexcept(a->id != b->id); // check not IDENTICAL assert_noexcept(a->id != b->id); // check not IDENTICAL
return a->value < b->value ? -1 : (a->value == b->value ? 0 : 1); return a->value < b->value ? -1 : (a->value == b->value ? 0 : 1);
} }
static noinline bool check_sort(upx_sort_func_t sort, Elem *e, size_t n) { static noinline bool check_sort(upx_sort_func_t sort, Elem *e, size_t n, bool is_stable) {
upx_uint32_t x = 5381 + n + (upx_rand() & 0xff); upx_uint32_t x = 5381 + (upx_rand() & 255);
for (size_t i = 0; i < n; i++) { for (size_t i = 0; i < n; i++) {
e[i].id = (upx_uint16_t) i; e[i].id = (upx_uint16_t) i;
x = x * 33 + 1 + (i & 255); x = x * 33 + 1 + (i & 255);
e[i].value = (upx_uint16_t) x; e[i].value = (upx_uint16_t) ((x >> 4) & 15);
} }
sort(e, n, sizeof(Elem), Elem::compare); sort(e, n, sizeof(Elem), Elem::compare);
for (size_t i = 1; i < n; i++) // verify
for (size_t i = 1; i < n; i++) {
if very_unlikely (e[i - 1].value > e[i].value) if very_unlikely (e[i - 1].value > e[i].value)
return false; return false;
if (is_stable)
if very_unlikely (e[i - 1].value == e[i].value && e[i - 1].id >= e[i].id)
return false;
}
return true; return true;
} }
}; };
@@ -820,17 +830,17 @@ TEST_CASE("libc qsort") {
Elem e[N]; Elem e[N];
for (size_t n = 0; n <= N; n = 2 * n + 1) { for (size_t n = 0; n <= N; n = 2 * n + 1) {
// system sort functions // system sort functions
CHECK(Elem::check_sort(::qsort, e, n)); // libc qsort() CHECK(Elem::check_sort(::qsort, e, n, false)); // libc qsort()
#if UPX_CONFIG_USE_STABLE_SORT #if UPX_CONFIG_USE_STABLE_SORT
upx_sort_func_t wrap_stable_sort = [](void *aa, size_t nn, size_t, upx_compare_func_t cc) { upx_sort_func_t wrap_stable_sort = [](void *aa, size_t nn, size_t, upx_compare_func_t cc) {
upx_std_stable_sort<sizeof(Elem)>(aa, nn, cc); upx_std_stable_sort<sizeof(Elem)>(aa, nn, cc);
}; };
CHECK(Elem::check_sort(wrap_stable_sort, e, n)); // std::stable_sort() CHECK(Elem::check_sort(wrap_stable_sort, e, n, true)); // std::stable_sort()
#endif #endif
// UPX sort functions // simple UPX sort functions
CHECK(Elem::check_sort(upx_gnomesort, e, n)); CHECK(Elem::check_sort(upx_gnomesort, e, n, true));
CHECK(Elem::check_sort(upx_shellsort_memswap, e, n)); CHECK(Elem::check_sort(upx_shellsort_memswap, e, n, false));
CHECK(Elem::check_sort(upx_shellsort_memcpy, e, n)); CHECK(Elem::check_sort(upx_shellsort_memcpy, e, n, false));
} }
} }
+1 -1
View File
@@ -345,7 +345,7 @@ TEST_CASE("upx::noncopyable") {
namespace { namespace {
template <class T> template <class T>
struct TestTriBool { struct TestTriBool {
static void test(bool expect_true) { static noinline void test(bool expect_true) {
static_assert(std::is_class<T>::value); static_assert(std::is_class<T>::value);
static_assert(std::is_nothrow_default_constructible<T>::value); static_assert(std::is_nothrow_default_constructible<T>::value);
static_assert(std::is_nothrow_destructible<T>::value); static_assert(std::is_nothrow_destructible<T>::value);
+1 -1
View File
@@ -214,7 +214,7 @@ upx_off_t InputFile::seek(upx_off_t off, int whence) {
upx_off_t InputFile::st_size_orig() const { return _length_orig; } upx_off_t InputFile::st_size_orig() const { return _length_orig; }
int InputFile::dup() may_throw { int InputFile::dupFd() may_throw {
if (!isOpen()) if (!isOpen())
throwIOException("bad dup"); throwIOException("bad dup");
#if defined(HAVE_DUP) && (HAVE_DUP + 0 == 0) #if defined(HAVE_DUP) && (HAVE_DUP + 0 == 0)
+1 -1
View File
@@ -88,7 +88,7 @@ public:
virtual upx_off_t seek(upx_off_t off, int whence) override; virtual upx_off_t seek(upx_off_t off, int whence) override;
upx_off_t st_size_orig() const; upx_off_t st_size_orig() const;
noinline int dup() may_throw; noinline int dupFd() may_throw;
protected: protected:
upx_off_t _length_orig = 0; upx_off_t _length_orig = 0;
+1 -3
View File
@@ -430,8 +430,6 @@ void show_version(bool one_line) {
fprintf(f, "Copyright (C) 1996-2024 Markus Franz Xaver Johannes Oberhumer\n"); fprintf(f, "Copyright (C) 1996-2024 Markus Franz Xaver Johannes Oberhumer\n");
fprintf(f, "Copyright (C) 1996-2024 Laszlo Molnar\n"); fprintf(f, "Copyright (C) 1996-2024 Laszlo Molnar\n");
fprintf(f, "Copyright (C) 2000-2024 John F. Reiser\n"); fprintf(f, "Copyright (C) 2000-2024 John F. Reiser\n");
// Jens contributed the ps1/exe format; no need to list as main author
// fprintf(f, "Copyright (C) 2002-2024 Jens Medoch\n");
#if (WITH_ZLIB) #if (WITH_ZLIB)
// see vendor/zlib/LICENSE // see vendor/zlib/LICENSE
fprintf(f, "Copyright (C) 1995" "-2024 Jean-loup Gailly and Mark Adler\n"); fprintf(f, "Copyright (C) 1995" "-2024 Jean-loup Gailly and Mark Adler\n");
@@ -591,7 +589,7 @@ void show_sysinfo(const char *options_var) {
#endif #endif
if (options_var && options_var[0]) { if (options_var && options_var[0]) {
const char *e = getenv(options_var); const char *e = upx_getenv(options_var);
con_fprintf(f, "\n"); con_fprintf(f, "\n");
if (e && e[0]) if (e && e[0])
con_fprintf(f, "Contents of environment variable %s: '%s'\n\n", options_var, e); con_fprintf(f, "Contents of environment variable %s: '%s'\n\n", options_var, e);
+4 -1
View File
@@ -37,6 +37,9 @@
**************************************************************************/ **************************************************************************/
#ifndef OPTIONS_VAR #ifndef OPTIONS_VAR
// historical note: "UPX_OPTIONS" would be a better name, but back in the old
// days environment variables used to be short; and we cannot change that now
// because of backward compatibility issues
#define OPTIONS_VAR "UPX" #define OPTIONS_VAR "UPX"
#endif #endif
@@ -1086,7 +1089,7 @@ void main_get_envoptions() {
static const char sep[] = " \t"; static const char sep[] = " \t";
char shortopts[256]; char shortopts[256];
var = getenv(OPTIONS_VAR); var = upx_getenv(OPTIONS_VAR);
if (var == nullptr || !var[0]) if (var == nullptr || !var[0])
return; return;
env = strdup(var); env = strdup(var);
+1 -1
View File
@@ -66,7 +66,7 @@ void Options::reset() noexcept {
#endif #endif
// support NO_COLOR, see https://no-color.org/ // support NO_COLOR, see https://no-color.org/
// "... when present and not an empty string (regardless of its value)" // "... when present and not an empty string (regardless of its value)"
const char *e = getenv("NO_COLOR"); const char *e = upx_getenv("NO_COLOR");
if (e && e[0]) if (e && e[0])
o->console = CON_FILE; o->console = CON_FILE;
+2 -2
View File
@@ -267,7 +267,7 @@ int PackVmlinuzI386::decompressKernel()
fd_pos = -1; fd_pos = -1;
// open // open
fi->seek(gzoff, SEEK_SET); fi->seek(gzoff, SEEK_SET);
fd = fi->dup(); fd = fi->dupFd();
if (fd < 0) if (fd < 0)
break; break;
gzFile zf = gzdopen(fd, "rb"); gzFile zf = gzdopen(fd, "rb");
@@ -849,7 +849,7 @@ int PackVmlinuzARMEL::decompressKernel()
fd_pos = -1; fd_pos = -1;
// open // open
fi->seek(gzoff, SEEK_SET); fi->seek(gzoff, SEEK_SET);
fd = fi->dup(); fd = fi->dupFd();
if (fd < 0) if (fd < 0)
break; break;
gzFile zf = gzdopen(fd, "rb"); gzFile zf = gzdopen(fd, "rb");
+2 -2
View File
@@ -30,7 +30,7 @@
#if defined(__has_include) #if defined(__has_include)
#if __has_include(<features.h>) #if __has_include(<features.h>)
#include <features.h> // for __GLIBC__ #include <features.h> // for __GLIBC__ and __GLIBC_MINOR__
#endif #endif
#endif #endif
@@ -42,8 +42,8 @@
#endif #endif
#endif // _LIBCPP_HAS_NO_LIBRARY_ALIGNED_ALLOCATION #endif // _LIBCPP_HAS_NO_LIBRARY_ALIGNED_ALLOCATION
#if 0 // TODO later
// libc++ hardenining // libc++ hardenining
#if defined(__cplusplus) && 0 // TODO later
#if defined(__clang__) && defined(__clang_major__) && (__clang_major__ + 0 >= 18) #if defined(__clang__) && defined(__clang_major__) && (__clang_major__ + 0 >= 18)
#if DEBUG #if DEBUG
#define _LIBCPP_HARDENING_MODE _LIBCPP_HARDENING_MODE_DEBUG #define _LIBCPP_HARDENING_MODE _LIBCPP_HARDENING_MODE_DEBUG
+1 -1
View File
@@ -29,7 +29,7 @@
#include "system_defs.h" #include "system_defs.h"
#if !(__cplusplus + 0 >= 201703L) #if !(__cplusplus + 0 >= 201703L)
#error "C++17 is required" #error "FATAL ERROR: C++17 is required"
#endif #endif
// check expected defines // check expected defines
+9 -3
View File
@@ -254,6 +254,12 @@ TEST_CASE("ptr_check_no_overlap 3") {
// stdlib // stdlib
**************************************************************************/ **************************************************************************/
const char *upx_getenv(const char *envvar) noexcept {
if (envvar != nullptr && envvar[0])
return ::getenv(envvar);
return nullptr;
}
int upx_rand(void) noexcept { return ::rand(); } int upx_rand(void) noexcept { return ::rand(); }
void *upx_calloc(size_t n, size_t element_size) may_throw { void *upx_calloc(size_t n, size_t element_size) may_throw {
@@ -430,7 +436,7 @@ struct TestSortAllPermutations {
memcpy(a, perm, sizeof(*a) * n); memcpy(a, perm, sizeof(*a) * n);
sort(a, n, sizeof(*a), CompareFunc); sort(a, n, sizeof(*a), CompareFunc);
for (size_t i = 0; i < n; i++) for (size_t i = 0; i < n; i++)
assert_noexcept((a[i] == 255 + i)); assert_noexcept(a[i] == 255 + i);
num_perms += 1; num_perms += 1;
} while (std::next_permutation(perm, perm + n)); } while (std::next_permutation(perm, perm + n));
return num_perms; return num_perms;
@@ -774,11 +780,11 @@ int fn_strcmp(const char *n1, const char *n2) {
// UPX convention: any environment variable that is set and is not strictly equal to "0" is true // UPX convention: any environment variable that is set and is not strictly equal to "0" is true
bool is_envvar_true(const char *envvar, const char *alternate_name) noexcept { bool is_envvar_true(const char *envvar, const char *alternate_name) noexcept {
const char *e = getenv(envvar); const char *e = upx_getenv(envvar);
if (e != nullptr && e[0]) if (e != nullptr && e[0])
return strcmp(e, "0") != 0; return strcmp(e, "0") != 0;
if (alternate_name != nullptr) { if (alternate_name != nullptr) {
e = getenv(alternate_name); e = upx_getenv(alternate_name);
if (e != nullptr && e[0]) if (e != nullptr && e[0])
return strcmp(e, "0") != 0; return strcmp(e, "0") != 0;
} }
+2
View File
@@ -145,6 +145,8 @@ inline void ptr_invalidate_and_poison(T *(&ptr)) noexcept {
noinline void *upx_calloc(size_t n, size_t element_size) may_throw; noinline void *upx_calloc(size_t n, size_t element_size) may_throw;
noinline const char *upx_getenv(const char *envvar) noexcept;
void upx_memswap(void *a, void *b, size_t bytes) noexcept; void upx_memswap(void *a, void *b, size_t bytes) noexcept;
noinline int upx_rand(void) noexcept; noinline int upx_rand(void) noexcept;