From: Peter Pentchev Date: Sat, 30 May 2020 12:21:04 +0000 (+0300) Subject: A first shot at packaging zchunk for Debian. X-Git-Tag: archive/raspbian/1.1.9+ds1-1+rpi1~1^2~21 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=8dac1544c690b8e02f4c7fd19fc6576628beae77;p=zchunk.git A first shot at packaging zchunk for Debian. To do: - autopkgtest - write some trivial manual pages - more minor clean-up tasks --- diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..b199591 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +zchunk (1.1.6+ds1-1) UNRELEASED; urgency=low + + * Initial release. Closes: #961801 + + -- Peter Pentchev Fri, 29 May 2020 19:35:39 +0300 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..7f40e25 --- /dev/null +++ b/debian/control @@ -0,0 +1,63 @@ +Source: zchunk +Section: utils +Priority: optional +Maintainer: RPM packaging team +Uploaders: Peter Pentchev +Build-Depends: + debhelper-compat (= 13), + libcurl4-openssl-dev, + libzstd-dev, + meson, + pkg-config, +Standards-Version: 4.5.0 +Vcs-Git: https://salsa.debian.org/pkg-rpm-team/zchunk.git +Vcs-Browser: https://salsa.debian.org/pkg-rpm-team/zchunk +Homepage: https://github.com/zchunk/zchunk +Rules-Requires-Root: no + +Package: zchunk +Architecture: any +Multi-Arch: foreign +Depends: ${misc:Depends}, ${shlibs:Depends}, libzck1 (= ${binary:Version}) +Description: compress a file into independent chunks + zchunk is a compressed file format that splits the file into independent + chunks. This allows one to only download changed chunks when + downloading a new version of the file, and also makes zchunk files + efficient over rsync. + . + zchunk files are protected with strong checksums to verify that the file + downloaded is, in fact, the file desired. + . + This package contains the command-line tools. + +Package: libzck1 +Section: libs +Architecture: any +Multi-Arch: same +Depends: ${misc:Depends}, ${shlibs:Depends} +Description: compress a file into independent chunks - shared library + zchunk is a compressed file format that splits the file into independent + chunks. This allows one to only download changed chunks when + downloading a new version of the file, and also makes zchunk files + efficient over rsync. + . + zchunk files are protected with strong checksums to verify that the file + downloaded is, in fact, the file desired. + . + This package contains the shared library. + +Package: libzck-dev +Section: libdevel +Architecture: any +Multi-Arch: same +Depends: ${misc:Depends}, libzck1 (= ${binary:Version}) +Description: compress a file into independent chunks - development files + zchunk is a compressed file format that splits the file into independent + chunks. This allows one to only download changed chunks when + downloading a new version of the file, and also makes zchunk files + efficient over rsync. + . + zchunk files are protected with strong checksums to verify that the file + downloaded is, in fact, the file desired. + . + This package contains the header files used for development. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..46ef110 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,151 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: zchunk +Upstream-Contact: Jonathan Dieter +Source: https://github.com/zchunk/zchunk +License: BSD-2-clause +Files-Excluded: + test/abi/stable/* + +Files: * +Copyright: + 2018 Jonathan Dieter +License: BSD-2-clause + +Files: src/lib/buzhash/* +Copyright: + (c) 2015, the urlblock developers. + (c) 2018 Jonathan Dieter +License: Expat + +Files: src/lib/hash/sha1/* +Copyright: + NO COPYRIGHT - THIS IS 100% IN THE PUBLIC DOMAIN +License: public-sha1 + +Files: src/lib/hash/sha2/* +Copyright: + (C) 2005, 2007 Olivier Gay +License: BSD-3-clause + +Files: src/lib/uthash.h +Copyright: + (c) 2003-2018, Troy D. Hanson http://troydhanson.github.com/uthash/ +License: BSD-1-clause + +Files: src/memmem.c +Copyright: + (C) 2008 The Android Open Source Project +License: BSD-2-clause + +Files: debian/* +Copyright: + (c) 2020 Peter Pentchev +License: BSD-2-clause + +License: BSD-1-clause + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + . + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + . + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +License: BSD-3-clause + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the project nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + +License: public-sha1 + NO COPYRIGHT - THIS IS 100% IN THE PUBLIC DOMAIN + . + The original unmodified version is available at: + ftp://ftp.funet.fi/pub/crypt/hash/sha/sha1.c + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. diff --git a/debian/libzck-dev.docs b/debian/libzck-dev.docs new file mode 100644 index 0000000..5b2130b --- /dev/null +++ b/debian/libzck-dev.docs @@ -0,0 +1 @@ +zchunk_format.txt diff --git a/debian/libzck-dev.install b/debian/libzck-dev.install new file mode 100644 index 0000000..275578c --- /dev/null +++ b/debian/libzck-dev.install @@ -0,0 +1,3 @@ +usr/include +usr/lib/*/libzck.so +usr/lib/*/pkgconfig/zck.pc diff --git a/debian/libzck1.install b/debian/libzck1.install new file mode 100644 index 0000000..928cae2 --- /dev/null +++ b/debian/libzck1.install @@ -0,0 +1 @@ +usr/lib/*/libzck.so.* diff --git a/debian/libzck1.symbols b/debian/libzck1.symbols new file mode 100644 index 0000000..0e77a42 --- /dev/null +++ b/debian/libzck1.symbols @@ -0,0 +1,77 @@ +libzck.so.1 libzck1 #MINVER# +* Build-Depends-Package: libzck-devel + zck_clear_error@Base 1.1.6 + zck_close@Base 1.1.6 + zck_comp_name_from_type@Base 1.1.6 + zck_compare_chunk_digest@Base 1.1.6 + zck_copy_chunks@Base 1.1.6 + zck_create@Base 1.1.6 + zck_dl_free@Base 1.1.6 + zck_dl_get_bytes_downloaded@Base 1.1.6 + zck_dl_get_bytes_uploaded@Base 1.1.6 + zck_dl_get_range@Base 1.1.6 + zck_dl_get_zck@Base 1.1.6 + zck_dl_init@Base 1.1.6 + zck_dl_reset@Base 1.1.6 + zck_dl_set_header_cb@Base 1.1.6 + zck_dl_set_header_data@Base 1.1.6 + zck_dl_set_range@Base 1.1.6 + zck_dl_set_write_cb@Base 1.1.6 + zck_dl_set_write_data@Base 1.1.6 + zck_dl_set_zck@Base 1.1.6 + zck_end_chunk@Base 1.1.6 + zck_failed_chunks@Base 1.1.6 + zck_find_valid_chunks@Base 1.1.6 + zck_free@Base 1.1.6 + zck_get_chunk@Base 1.1.6 + zck_get_chunk_comp_data@Base 1.1.6 + zck_get_chunk_comp_size@Base 1.1.6 + zck_get_chunk_count@Base 1.1.6 + zck_get_chunk_data@Base 1.1.6 + zck_get_chunk_digest@Base 1.1.6 + zck_get_chunk_digest_size@Base 1.1.6 + zck_get_chunk_hash_type@Base 1.1.6 + zck_get_chunk_number@Base 1.1.6 + zck_get_chunk_size@Base 1.1.6 + zck_get_chunk_start@Base 1.1.6 + zck_get_chunk_valid@Base 1.1.6 + zck_get_data_digest@Base 1.1.6 + zck_get_data_length@Base 1.1.6 + zck_get_error@Base 1.1.6 + zck_get_fd@Base 1.1.6 + zck_get_first_chunk@Base 1.1.6 + zck_get_full_digest_size@Base 1.1.6 + zck_get_full_hash_type@Base 1.1.6 + zck_get_header_digest@Base 1.1.6 + zck_get_header_length@Base 1.1.6 + zck_get_lead_length@Base 1.1.6 + zck_get_length@Base 1.1.6 + zck_get_min_download_size@Base 1.1.6 + zck_get_missing_range@Base 1.1.6 + zck_get_next_chunk@Base 1.1.6 + zck_get_range@Base 1.1.6 + zck_get_range_char@Base 1.1.6 + zck_get_range_count@Base 1.1.6 + zck_hash_name_from_type@Base 1.1.6 + zck_header_cb@Base 1.1.6 + zck_init_adv_read@Base 1.1.6 + zck_init_read@Base 1.1.6 + zck_init_write@Base 1.1.6 + zck_is_error@Base 1.1.6 + zck_missing_chunks@Base 1.1.6 + zck_range_free@Base 1.1.6 + zck_read@Base 1.1.6 + zck_read_header@Base 1.1.6 + zck_read_lead@Base 1.1.6 + zck_reset_failed_chunks@Base 1.1.6 + zck_set_fd@Base 1.1.6 + zck_set_ioption@Base 1.1.6 + zck_set_log_fd@Base 1.1.6 + zck_set_log_level@Base 1.1.6 + zck_set_soption@Base 1.1.6 + zck_validate_checksums@Base 1.1.6 + zck_validate_data_checksum@Base 1.1.6 + zck_validate_lead@Base 1.1.6 + zck_write@Base 1.1.6 + zck_write_chunk_cb@Base 1.1.6 + zck_write_zck_header_cb@Base 1.1.6 diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..b5297b6 --- /dev/null +++ b/debian/rules @@ -0,0 +1,14 @@ +#!/usr/bin/make -f + +# Aim for the top, adapt if anything should break on the buildds. +DEB_BUILD_MAINT_OPTIONS= hardening=+all +export DEB_BUILD_MAINT_OPTIONS + +%: + dh '$@' + +override_dh_auto_configure: + dh_auto_configure -- -Dwith-openssl=disabled + +override_dh_makeshlibs: + dh_makeshlibs -- -c4 diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/upstream/metadata b/debian/upstream/metadata new file mode 100644 index 0000000..a314eeb --- /dev/null +++ b/debian/upstream/metadata @@ -0,0 +1,5 @@ +Bug-Database: https://github.com/zchunk/zchunk/issues +Bug-Submit: https://github.com/zchunk/zchunk/issues/new +Security-Contact: Jonathan Dieter +Repository: https://github.com/zchunk/zchunk.git +Repository-Browse: https://github.com/zchunk/zchunk diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..5b9be27 --- /dev/null +++ b/debian/watch @@ -0,0 +1,3 @@ +version=4 +opts=repack,repacksuffix=+ds1,dversionmangle=s/\+ds[1-9][0-9]*//,filenamemangle=s/.+\/v?(\d\S+)\.tar\.gz/zchunk-$1\.tar\.gz/ \ + https://github.com/zchunk/zchunk/tags .*/v?(\d\S+)\.tar\.gz diff --git a/debian/zchunk.docs b/debian/zchunk.docs new file mode 100644 index 0000000..b43bf86 --- /dev/null +++ b/debian/zchunk.docs @@ -0,0 +1 @@ +README.md diff --git a/debian/zchunk.install b/debian/zchunk.install new file mode 100644 index 0000000..e772481 --- /dev/null +++ b/debian/zchunk.install @@ -0,0 +1 @@ +usr/bin