test_signal_crashes: replace the use of ping with a custom binary
The tests were previously using `ping` under the assumption that it was
setuid or setcap. However, Debian has dropped all of those in
3:20240905-1 since those privileges aren't necessary anymore on recent
kernels with the proper sysctl knobs. (LP: #2089387)
V2:
* simplify file handling using pathlib
* skip the calling test if GCC isn't present
* drop iputils-ping from test dependencies
The `/usr/share/polkit-1/actions/com.ubuntu.apport.policy` PolicyKit
actions file does not validate against the provided
`/usr/share/polkit-1/policyconfig-1.dtd`:
```
$ xmllint --noout --nonet --dtdvalid /usr/share/polkit-1/policyconfig-1.dtd /usr/share/polkit-1/actions/com.ubuntu.apport.policy
/usr/share/polkit-1/actions/com.ubuntu.apport.policy:10: element action: validity error : Element action content does not follow the DTD, expecting (vendor? , vendor_url? , description+ , message+ , icon_name? , defaults , annotate*), got (description message annotate defaults )
/usr/share/polkit-1/actions/com.ubuntu.apport.policy:22: element action: validity error : Element action content does not follow the DTD, expecting (vendor? , vendor_url? , description+ , message+ , icon_name? , defaults , annotate*), got (description message annotate annotate defaults )
Document /usr/share/polkit-1/actions/com.ubuntu.apport.policy does not validate against /usr/share/polkit-1/policyconfig-1.dtd
```
Move some annotations around to make it validate.
Let the CI depend on libxml2-utils for the xmllint binary and on polkitd
for providing `/usr/share/polkit-1/policyconfig-1.dtd`.
test: do not check for exact encoded gzip data in test_write_file
The test case `test_write_file` fails on s390x from time to time due to
the encoded chunks have a different on-disk representation. Instead of
the expected one compressed chunk
The raw data is identical, but the zlib compressed data on disk differs!
So make the test case less picky by just checking that the data is
compressed and that the decompressed data is correct.