- d/.gitignore: Ignore all temporary files and subdirectories such as debian/location-importer/ and debian/location-importer.debhelper.log with the exception of debian/source/ and potential debian/patches/ which may be used for Quilt, considering the source format is set to '3.0 (quilt)'.
- d/clean: Remove m4/intltool.m4 and po/Makefile.in.in autogenerated files prior to building/in-between builds. Without removal of these autogenerated files, build tooling complains about unexpected changes to the source tree.
- d/control: Move libloc1 to 'libs' section (lintian: wrong-section-according-to-package-name). - d/control: Set 'Multi-Arch: foreign' hint for location-importer and location-python, due to py3compile via dh-python (lintian: multi-arch-same-package-calls-pycompile).
- d/copyright: Update format link to use HTTPS instead of HTTP (lintian: insecure-copyright-format-uri).
- d/libloc1.symbols: Added symbols export file (lintian: no-symbols-control-file). For generation: $ debuild -uc -us # to easily build everything to debian/tmp/ $ dpkg-gensymbols -plibloc1 -Odebian/libloc1.symbols $ sed -i -E -e 's/( [0-9.]+)-.+$/\1/' debian/*.symbols
- d/location-python.examples: Add the examples/python/ to documentation (lintian: package-does-not-install-examples).
- d/rules: Remove _location.la from location-python package (lintian: unknown-file-in-python-module-directory, incorrect-libdir-in-la-file, non-empty-dependency_libs-in-la-file). Considering the dependency library is not being installed, the la file does not appear too useful. Additionally, dh-python moves the site-packages files dist-packages resulting in a broken libdir, and unexpected .la files being added to Python root. - d/rules: Remove location/{database,importer}.py from location-python package. These files get installed to location-importer package (lintian: binaries-have-file-conflict).
- d/watch: Add uscan configuration, as expected for '3.0 (quilt)' format (lintian: debian-watch-file-is-missing).
- src/systemd/location-update.service.in: Add a generic Documentation= linking to the manual page of location, for `systemctl help <name>` (lintian: systemd-service-file-missing-documentation-key).
Following this, the only complaints from Lintian are about: - `location-importer` not having a manpage. - Short package Descriptions, not explaining what they do in detail. - An out-dated Standards-Version. - An old debhelper compatibility level. - Lack of an autopkgtest testsuite.
Signed-off-by: Valters Jansons valter.jansons@gmail.com --- debian/.gitignore | 8 +- debian/clean | 2 + debian/control | 5 +- debian/copyright | 2 +- debian/libloc1.symbols | 134 +++++++++++++++++++++++++ debian/location-python.examples | 1 + debian/rules | 8 ++ debian/watch | 3 + src/systemd/location-update.service.in | 1 + 9 files changed, 157 insertions(+), 7 deletions(-) create mode 100644 debian/clean create mode 100644 debian/libloc1.symbols create mode 100644 debian/location-python.examples create mode 100644 debian/watch
diff --git a/debian/.gitignore b/debian/.gitignore index 0faf920..4a7eb9a 100644 --- a/debian/.gitignore +++ b/debian/.gitignore @@ -2,9 +2,9 @@ /autoreconf.* /debhelper-build-stamp /files -/libloc/ -/libloc-dev/ -/libloc-perl/ -/tmp +/*/ *.debhelper +*.log *.substvars +!/patches/ +!/source/ diff --git a/debian/clean b/debian/clean new file mode 100644 index 0000000..54a6877 --- /dev/null +++ b/debian/clean @@ -0,0 +1,2 @@ +m4/intltool.m4 +po/Makefile.in.in diff --git a/debian/control b/debian/control index dc40927..ec27f92 100644 --- a/debian/control +++ b/debian/control @@ -23,6 +23,7 @@ Vcs-Browser: https://git.ipfire.org/pub/git/location/libloc.git
Package: libloc1 Architecture: any +Section: libs Pre-Depends: ${misc:Pre-Depends} Depends: @@ -67,7 +68,7 @@ Depends: location-python (= ${binary:Version}), ${misc:Depends}, ${python3:Depends} -Multi-Arch: same +Multi-Arch: foreign Description: Tools to author location databases This package contains tools that are required to build location databases
@@ -80,6 +81,6 @@ Depends: ${misc:Depends}, ${python3:Depends}, ${shlibs:Depends} -Multi-Arch: same +Multi-Arch: foreign Description: Python modules for libloc This package contains Python bindings for libloc diff --git a/debian/copyright b/debian/copyright index 636af48..3bd7654 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,4 +1,4 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: libloc Upstream-Contact: Michael Tremer michael.tremer@ipfire.org Source: https://location.ipfire.org/download diff --git a/debian/libloc1.symbols b/debian/libloc1.symbols new file mode 100644 index 0000000..74b70b5 --- /dev/null +++ b/debian/libloc1.symbols @@ -0,0 +1,134 @@ +libloc.so.1 libloc1 #MINVER# +* Build-Depends-Package: libloc-dev + LIBLOC_1@LIBLOC_1 0.9.4 + LIBLOC_PRIVATE@LIBLOC_PRIVATE 0.9.4 + loc_as_cmp@LIBLOC_1 0.9.4 + loc_as_get_name@LIBLOC_1 0.9.4 + loc_as_get_number@LIBLOC_1 0.9.4 + loc_as_list_append@LIBLOC_1 0.9.5 + loc_as_list_clear@LIBLOC_1 0.9.5 + loc_as_list_contains@LIBLOC_1 0.9.5 + loc_as_list_contains_number@LIBLOC_1 0.9.5 + loc_as_list_empty@LIBLOC_1 0.9.5 + loc_as_list_get@LIBLOC_1 0.9.5 + loc_as_list_new@LIBLOC_1 0.9.5 + loc_as_list_ref@LIBLOC_1 0.9.5 + loc_as_list_size@LIBLOC_1 0.9.5 + loc_as_list_unref@LIBLOC_1 0.9.5 + loc_as_new@LIBLOC_1 0.9.4 + loc_as_ref@LIBLOC_1 0.9.4 + loc_as_set_name@LIBLOC_1 0.9.4 + loc_as_unref@LIBLOC_1 0.9.4 + loc_country_cmp@LIBLOC_1 0.9.4 + loc_country_code_is_valid@LIBLOC_1 0.9.4 + loc_country_get_code@LIBLOC_1 0.9.4 + loc_country_get_continent_code@LIBLOC_1 0.9.4 + loc_country_get_name@LIBLOC_1 0.9.4 + loc_country_list_append@LIBLOC_1 0.9.5 + loc_country_list_clear@LIBLOC_1 0.9.5 + loc_country_list_contains@LIBLOC_1 0.9.5 + loc_country_list_contains_code@LIBLOC_1 0.9.5 + loc_country_list_empty@LIBLOC_1 0.9.5 + loc_country_list_get@LIBLOC_1 0.9.5 + loc_country_list_new@LIBLOC_1 0.9.5 + loc_country_list_ref@LIBLOC_1 0.9.5 + loc_country_list_size@LIBLOC_1 0.9.5 + loc_country_list_unref@LIBLOC_1 0.9.5 + loc_country_new@LIBLOC_1 0.9.4 + loc_country_ref@LIBLOC_1 0.9.4 + loc_country_set_continent_code@LIBLOC_1 0.9.4 + loc_country_set_name@LIBLOC_1 0.9.4 + loc_country_unref@LIBLOC_1 0.9.4 + loc_database_count_as@LIBLOC_1 0.9.4 + loc_database_created_at@LIBLOC_1 0.9.4 + loc_database_enumerator_get_asns@LIBLOC_1 0.9.5 + loc_database_enumerator_get_countries@LIBLOC_1 0.9.5 + loc_database_enumerator_new@LIBLOC_1 0.9.4 + loc_database_enumerator_next_as@LIBLOC_1 0.9.4 + loc_database_enumerator_next_country@LIBLOC_1 0.9.4 + loc_database_enumerator_next_network@LIBLOC_1 0.9.4 + loc_database_enumerator_ref@LIBLOC_1 0.9.4 + loc_database_enumerator_set_asns@LIBLOC_1 0.9.5 + loc_database_enumerator_set_countries@LIBLOC_1 0.9.5 + loc_database_enumerator_set_family@LIBLOC_1 0.9.4 + loc_database_enumerator_set_flag@LIBLOC_1 0.9.4 + loc_database_enumerator_set_string@LIBLOC_1 0.9.4 + loc_database_enumerator_unref@LIBLOC_1 0.9.4 + loc_database_get_as@LIBLOC_1 0.9.4 + loc_database_get_country@LIBLOC_1 0.9.4 + loc_database_get_description@LIBLOC_1 0.9.4 + loc_database_get_license@LIBLOC_1 0.9.4 + loc_database_get_vendor@LIBLOC_1 0.9.4 + loc_database_lookup@LIBLOC_1 0.9.4 + loc_database_lookup_from_string@LIBLOC_1 0.9.4 + loc_database_new@LIBLOC_1 0.9.4 + loc_database_ref@LIBLOC_1 0.9.4 + loc_database_unref@LIBLOC_1 0.9.4 + loc_database_verify@LIBLOC_1 0.9.4 + loc_discover_latest_version@LIBLOC_1 0.9.4 + loc_get_log_priority@LIBLOC_1 0.9.4 + loc_network_address_family@LIBLOC_1 0.9.4 + loc_network_cmp@LIBLOC_1 0.9.5 + loc_network_exclude@LIBLOC_1 0.9.5 + loc_network_exclude_list@LIBLOC_1 0.9.5 + loc_network_format_first_address@LIBLOC_1 0.9.4 + loc_network_format_last_address@LIBLOC_1 0.9.4 + loc_network_get_asn@LIBLOC_1 0.9.4 + loc_network_get_country_code@LIBLOC_1 0.9.4 + loc_network_get_first_address@LIBLOC_1 0.9.5 + loc_network_get_last_address@LIBLOC_1 0.9.5 + loc_network_has_flag@LIBLOC_1 0.9.4 + loc_network_is_subnet@LIBLOC_1 0.9.5 + loc_network_list_clear@LIBLOC_1 0.9.5 + loc_network_list_contains@LIBLOC_1 0.9.5 + loc_network_list_dump@LIBLOC_1 0.9.5 + loc_network_list_empty@LIBLOC_1 0.9.5 + loc_network_list_get@LIBLOC_1 0.9.5 + loc_network_list_merge@LIBLOC_1 0.9.5 + loc_network_list_new@LIBLOC_1 0.9.5 + loc_network_list_pop@LIBLOC_1 0.9.5 + loc_network_list_pop_first@LIBLOC_1 0.9.5 + loc_network_list_push@LIBLOC_1 0.9.5 + loc_network_list_ref@LIBLOC_1 0.9.5 + loc_network_list_size@LIBLOC_1 0.9.5 + loc_network_list_unref@LIBLOC_1 0.9.5 + loc_network_match_address@LIBLOC_1 0.9.5 + loc_network_match_asn@LIBLOC_1 0.9.4 + loc_network_match_country_code@LIBLOC_1 0.9.4 + loc_network_match_flag@LIBLOC_1 0.9.4 + loc_network_new@LIBLOC_1 0.9.4 + loc_network_new_from_string@LIBLOC_1 0.9.4 + loc_network_overlaps@LIBLOC_1 0.9.5 + loc_network_prefix@LIBLOC_1 0.9.5 + loc_network_ref@LIBLOC_1 0.9.4 + loc_network_set_asn@LIBLOC_1 0.9.4 + loc_network_set_country_code@LIBLOC_1 0.9.4 + loc_network_set_flag@LIBLOC_1 0.9.4 + loc_network_str@LIBLOC_1 0.9.4 + loc_network_subnets@LIBLOC_1 0.9.5 + loc_network_unref@LIBLOC_1 0.9.4 + loc_new@LIBLOC_1 0.9.4 + loc_ref@LIBLOC_1 0.9.4 + loc_set_log_fn@LIBLOC_1 0.9.4 + loc_set_log_priority@LIBLOC_1 0.9.4 + loc_stringpool_add@LIBLOC_PRIVATE 0.9.4 + loc_stringpool_dump@LIBLOC_PRIVATE 0.9.4 + loc_stringpool_get@LIBLOC_PRIVATE 0.9.4 + loc_stringpool_get_size@LIBLOC_PRIVATE 0.9.4 + loc_stringpool_new@LIBLOC_PRIVATE 0.9.4 + loc_stringpool_ref@LIBLOC_PRIVATE 0.9.4 + loc_stringpool_unref@LIBLOC_PRIVATE 0.9.4 + loc_unref@LIBLOC_1 0.9.4 + loc_writer_add_as@LIBLOC_1 0.9.4 + loc_writer_add_country@LIBLOC_1 0.9.4 + loc_writer_add_network@LIBLOC_1 0.9.4 + loc_writer_get_description@LIBLOC_1 0.9.4 + loc_writer_get_license@LIBLOC_1 0.9.4 + loc_writer_get_vendor@LIBLOC_1 0.9.4 + loc_writer_new@LIBLOC_1 0.9.4 + loc_writer_ref@LIBLOC_1 0.9.4 + loc_writer_set_description@LIBLOC_1 0.9.4 + loc_writer_set_license@LIBLOC_1 0.9.4 + loc_writer_set_vendor@LIBLOC_1 0.9.4 + loc_writer_unref@LIBLOC_1 0.9.4 + loc_writer_write@LIBLOC_1 0.9.4 diff --git a/debian/location-python.examples b/debian/location-python.examples new file mode 100644 index 0000000..cf2a6ee --- /dev/null +++ b/debian/location-python.examples @@ -0,0 +1 @@ +examples/python/ diff --git a/debian/rules b/debian/rules index 8893b7b..05b88fd 100755 --- a/debian/rules +++ b/debian/rules @@ -18,3 +18,11 @@ override_dh_perl:
override_dh_systemd_enable: dh_systemd_enable location-update.timer + +override_dh_install: + dh_install + # lintian: unknown-file-in-python-module-directory + rm debian/location-python/usr/lib/python3*/site-packages/_location.la + # linitan: binaries-have-file-conflict (d/location-importer.install) + rm debian/location-python/usr/lib/python3*/site-packages/location/database.py + rm debian/location-python/usr/lib/python3*/site-packages/location/importer.py diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..19ace6d --- /dev/null +++ b/debian/watch @@ -0,0 +1,3 @@ +version=4 +https://source.ipfire.org/releases/libloc/ \ + @PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@ debian uupdate diff --git a/src/systemd/location-update.service.in b/src/systemd/location-update.service.in index daae2c5..1c8e116 100644 --- a/src/systemd/location-update.service.in +++ b/src/systemd/location-update.service.in @@ -1,5 +1,6 @@ [Unit] Description=Automatic Location Database Updater +Documentation=man:location(8) https://man-pages.ipfire.org/libloc/location.html Requires=network.target
[Service]