From: Sjoerd Simons Date: Thu, 3 Nov 2016 21:48:01 +0000 (+0000) Subject: Import ostree_2016.12-2.debian.tar.xz X-Git-Tag: archive/raspbian/2017.12-1+rpi1~1^2^2^2^2^2^2^2^2^2^2^2~4^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=70959bd4cc96bac01bff928109c026306ea04a33;p=ostree.git Import ostree_2016.12-2.debian.tar.xz [dgit import tarball ostree 2016.12-2 ostree_2016.12-2.debian.tar.xz] --- 70959bd4cc96bac01bff928109c026306ea04a33 diff --git a/changelog b/changelog new file mode 100644 index 00000000..208d98cc --- /dev/null +++ b/changelog @@ -0,0 +1,277 @@ +ostree (2016.12-2) unstable; urgency=medium + + * d/p/Filter-bootloader-supplied-kernel-cmdline-options.patch: + - Filter out kernel command line parameters set by the bootloading when + deriving the configuration from /proc/cmdline. + * Add myself to uploaders + + -- Sjoerd Simons Thu, 03 Nov 2016 15:48:01 -0600 + +ostree (2016.12-1) unstable; urgency=medium + + * Force LC_ALL=C.UTF-8 during build, so that builds in non-English + locales can pass their build-time tests + * New upstream release + * Build-depend on ca-certificates. glib-networking now generates + warnings if those are missing, causing the build-time tests to fail. + + -- Simon McVittie Wed, 26 Oct 2016 19:11:14 +0100 + +ostree (2016.11-1) unstable; urgency=medium + + * New upstream release + * Relicense debian/ from GPL-2+ to LGPL-2+, with permission from + David King + * Install GObject-Introspection typelibs to multiarch path, + and mark gir1.2-ostree-1.0 as Multi-Arch: same + * libostree-dev: stop depending on ostree. It isn't necessary to + use the library, and would break multiarch installability + * Move to debhelper compat level 10 + - stop using dh --parallel, it's the default now + - don't use autoreconf and systemd addons explicitly, they are + the default now + * d/p/dist/Retrieve-some-missing-test-files-from-upstream-git.patch: + fetch missing test files from upstream git + - debian/rules: make the missing scripts executable + + -- Simon McVittie Fri, 07 Oct 2016 23:39:06 +0100 + +ostree (2016.10-1) unstable; urgency=medium + + * New upstream release + * Make libostree-dev Multi-Arch: same + * Make libostree-doc Multi-Arch: foreign + + -- Simon McVittie Thu, 15 Sep 2016 08:26:51 +0100 + +ostree (2016.9-2) unstable; urgency=medium + + * debian/patches/Terminate-individual-tests-after-half-an-hour.patch: + terminate individual tests after 30 minutes, in an attempt to debug + what happened on the ppc64el buildd + + -- Simon McVittie Fri, 09 Sep 2016 08:23:44 +0100 + +ostree (2016.9-1) unstable; urgency=medium + + * New upstream version + - update symbols file for new ABI + - update copyright file + - update ostree-boot packaging: the utilities in /usr/sbin moved to + /usr/lib/ostree + - drop libgsystem build-dependency + - d/p/Makefile-tests.am-make-check-uses-the-built-binaries.patch: + drop, applied upstream + * Explicitly build-depend on xsltproc, which is directly used + + -- Simon McVittie Tue, 06 Sep 2016 09:59:00 +0100 + +ostree (2016.7-1) unstable; urgency=medium + + * New upstream version + - drop all patches, applied upstream + - build-depend on libsystemd (unconditionally, because this package is + Linux-specific already) + - update symbols file for new ABI + * d/p/Makefile-tests.am-make-check-uses-the-built-binaries.patch: + add patch from upstream to make sure we use the built binaries for + build-time testing + * d/control: mention Flatpak, not its former name xdg-app + + -- Simon McVittie Thu, 28 Jul 2016 07:40:27 +0100 + +ostree (2016.6-4) unstable; urgency=medium + + * Switch sense of check in debian/test.sh so we really ignore test + failures on mipsel, and not on !mipsel. + + -- Simon McVittie Wed, 06 Jul 2016 15:23:31 +0100 + +ostree (2016.6-3) unstable; urgency=medium + + * Ignore build-time test failures on mipsel. "ostree pull" + intermittently fails with a bus error on at least some mipsel CPUs, + and applying gdb to the resulting core dump does not produce any + useful information. Debugging help would be appreciated. + (Mitigates: #827473) + + -- Simon McVittie Wed, 06 Jul 2016 10:17:43 +0100 + +ostree (2016.6-2) unstable; urgency=medium + + * d/p/tests-Improve-check-for-proc-cmdline-kargs.patch: add patch from + upstream fixing FTBFS on host machines without root= in /proc/cmdline, + such as the reproducible builds armhf workers + * d/control, d/copyright: use the GitHub repository as the Homepage + and Source: the GNOME wiki page is less frequently updated + + -- Simon McVittie Tue, 28 Jun 2016 09:29:53 +0100 + +ostree (2016.6-1) unstable; urgency=medium + + [ Jeremy Bicha ] + * Fix debian/watch (Closes: #827440) + + [ Simon McVittie ] + * New upstream release + - drop all patches, included upstream + - update symbols file + - this version is more careful about thread-safety, which appears + to fix the test failures that caused FTBFS on mipsel + (Closes: #827473) + * d/watch: fetch releases from GitHub instead of GNOME + * d/gbp.conf: configure to use upstream/latest for upstream imports + * d/gbp.conf: configure to merge upstream tags into upstream/latest + (add https://github.com/ostreedev/ostree as a remote) + * d/p/libostree.sym-Fix-test-symbols.patch: apply patch from upstream + to fix a build-time test + * d/p/pull-Correctly-handle-repo-parent_repo-when-applying-stat.patch: + apply patch from upstream to fix a bug that flatpak currently works + around + * d/p/tests-fail-the-build-if-symlinking-tests-ostree-fails.patch, + d/p/tests-use-our-own-generated-libtool-not-the-one-in-PATH.patch: + add patches to ensure that the build-time tests act on the copy + of ostree that we just built + * d/p/entry_pathname_test_helper-these-tests-need-extended-attr.patch: + skip more tests if /var/tmp doesn't support extended attributes + * d/control: ostree no longer needs its Suggests on dracut. A stronger + dependency on dracut will be needed in the ostree-boot package when + the boot integration is reinstated (see #824650). + + -- Simon McVittie Sun, 26 Jun 2016 19:51:31 +0100 + +ostree (2016.5-4) unstable; urgency=medium + + * d/p/test-sysroot.js-set-strict-mode-when-sourcing-libtest.sh.patch, + d/p/tests-Use-strict-mode-by-default-for-C-tests.patch: add patches + to make sure the tests fail as soon as something goes wrong + * Build-depend on procps, used to check for leaked processes + * debian/test.sh: factor out our dh_auto_test wrapper, and clean + up any stray processes even if the test fails + * If build-time tests fail, try 4 more times to get an idea of + whether the failure is reproducible (hoping to diagnose #826858) + * Add a patch to link libreaddir-rand to libdl, which should fix + test failures on Ubuntu (Closes: #826857) + + -- Simon McVittie Tue, 14 Jun 2016 15:35:18 -0400 + +ostree (2016.5-3) unstable; urgency=medium + + * Remove ostree-grub2 and the boot-related parts of ostree, leaving + the library and the command-line tool, which are also used by + Flatpak. + When we have documentation for how to use and test OSTree + deployments with a Debian derivative (see #824649), they should be + reinstated in an ostree-boot package (see #824650). + * Upload to unstable. + + -- Simon McVittie Wed, 08 Jun 2016 11:58:01 +0100 + +ostree (2016.5-2) experimental; urgency=medium + + * Add a patch to skip the test-parent test if /var/tmp doesn't support + user xattrs, hopefully fixing FTBFS on x86-csail-02 buildd + + -- Simon McVittie Mon, 25 Apr 2016 12:51:33 +0100 + +ostree (2016.5-1) experimental; urgency=medium + + * New upstream release + - Remove all patches, applied upstream + - debian/libostree-1-1.symbols: update for new versioned symbols + - Build-depend on libmount-dev + - debian/copyright: update + - debian/rules, debian/ostree-tests.install: adjust for new installation + directory for installed-tests + - debian/rules: use Debian's grub2-mkconfig path + * debian/gbp.conf: use DEP-14 branch names; disable numbered patches + * Fix ITP bug number in changelog (was #813308, should have been #697477) + * debian/control: build-depend on attr, for the tests (only required if + /var/tmp supports extended attributes) + * debian/rules: clean up stale gpg-agent processes after testing + * debian/rules: warn if there are leftover daemon processes after testing + * debian/ostree-tests.lintian-overrides: override a couple of false + positives + * Run dh_auto_test with VERBOSE=1, to get logs with older debhelper + * Build-depend on elfutils, for test-abi.sh + * Work around #821235 to avoid undefined macro 'AQ' in some man pages + * Add a patch to put more information in the log if tests fail, + in an attempt to debug a failure in test/pull-resume.sh which + I can no longer reproduce + * Standards-version: 3.9.8 (no changes needed) + + -- Simon McVittie Mon, 25 Apr 2016 07:46:16 +0100 + +ostree (2016.3-1) experimental; urgency=medium + + * Prepare package for Debian (Closes: #697477) + * New upstream release + * Remove -dbg package, rely on automatic dbgsym packages instead + * Extend package descriptions a bit + * debian/.gitignore: add + * debian/copyright: fill in all copyright holders and licenses + * debian/control: set Maintainer to the pkg-utopia team, with packaging + in collab-maint git, and myself and Matthias Klumpp as uploaders + * Normalize packaging via `wrap-and-sort -abst` + * debian/control: move shared library to Section: libs + * debian/control: remove redundant Section + * debian/control: change Section to admin + * Remove unnecessary uses of dh-exec + * debian/patches: remove all patches, no longer needed or applied + * Use dh_install --fail-missing to catch mistakes + * Add a symbols file + * Add missing dependency on libglib2.0-dev + * Add an ostree-tests package, and use it for autopkgtest + * Enable systemd helpers, but do not start the early-boot systemd services + on installation + * Don't override dh_auto_clean to nothing + * ostree-grub2: recommend concrete GRUB packages instead of hard-depending + on a transitional package. This is only a Recommends because you + could be using some other architecture's grub packages. + * Redirect libexecdir to /usr/lib (not /usr/lib/${multiarch}) since we don't + need multiarch for anything that's installed there, fixing a broken + symlink in ostree-grub2 + * Document the limited situations in which ostree-grub2 will work in + practice + * Only build on Linux architectures; this package is specifically + not portable + * Add patch to fix underlinking of test-archive + * Add patch to skip one build-time test if /var/tmp cannot support xattrs, + for example if it is on tmpfs + * Stop dh_makeshlibs thinking that the LD_PRELOAD module libreaddir-rand.so + (part of the tests) is meant to be a shared library + * Add a missing #!/bin/sh to one test + + -- Simon McVittie Sat, 19 Mar 2016 17:56:21 +0000 + +ostree (2016.1-alexlarsson1~wily1) wily; urgency=medium + + * New upstream release + + -- Alexander Larsson Thu, 01 Oct 2015 11:28:39 +0200 + +ostree (2015.11-alexlarsson1~vivid1) vivid; urgency=medium + + * New upstream release + + -- Alexander Larsson Thu, 01 Oct 2015 11:28:39 +0200 + +ostree (2015.9-alexlarsson1) vivid; urgency=medium + + * New upstream release + + -- Alexander Larsson Thu, 01 Oct 2015 11:28:39 +0200 + +ostree (2015.4-0amigadave2) trusty; urgency=low + + [ David King ] + * Add build dependency on libattr1-dev. + + -- David King Wed, 08 Apr 2015 13:10:39 +0100 + +ostree (2015.4-0amigadave1) trusty; urgency=low + + [ David King ] + * Initial packaging. + + -- David King Thu, 02 Apr 2015 15:40:52 +0000 diff --git a/compat b/compat new file mode 100644 index 00000000..f599e28b --- /dev/null +++ b/compat @@ -0,0 +1 @@ +10 diff --git a/control b/control new file mode 100644 index 00000000..ae5b273c --- /dev/null +++ b/control @@ -0,0 +1,150 @@ +Source: ostree +Section: admin +Priority: optional +Maintainer: Utopia Maintenance Team +Uploaders: + Matthias Klumpp , + Simon McVittie , + Sjoerd Simons +Build-Depends: + attr, + bison, + ca-certificates, + cpio, + debhelper (>= 10~), + docbook-xml, + docbook-xsl, + e2fslibs-dev, + elfutils, + fuse, + gjs, + gobject-introspection, + gtk-doc-tools (>= 1.15), + libarchive-dev (>= 2.8.0), + libattr1-dev, + libcap-dev, + libfuse-dev, + libgirepository1.0-dev (>= 1.34.0), + libglib2.0-dev (>= 2.40.0), + libgpgme11-dev (>= 1.1.8), + liblzma-dev (>= 5.0.5), + libmount-dev (>= 2.23), + libselinux1-dev, + libsoup2.4-dev (>= 2.39.1), + libsystemd-dev, + procps, + xsltproc, + zlib1g-dev, +Standards-Version: 3.9.8 +Homepage: https://github.com/ostreedev/ostree/ +Vcs-Git: https://anonscm.debian.org/git/collab-maint/ostree.git +Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/ostree.git + +Package: gir1.2-ostree-1.0 +Architecture: linux-any +Multi-Arch: same +Section: introspection +Depends: + ${gir:Depends}, + ${misc:Depends}, +Description: content-addressed filesystem for operating system binaries (introspection) + OSTree is a tool for managing bootable, immutable, versioned filesystem + trees. See the ostree package's description for more details. + . + This package contains GObject-Introspection metadata, which can be used + to generate dynamic bindings into languages such as Python and JavaScript. + +Package: libostree-1-1 +Architecture: linux-any +Section: libs +Depends: + ${misc:Depends}, + ${shlibs:Depends}, +Pre-Depends: + ${misc:Pre-Depends}, +Multi-arch: same +Description: content-addressed filesystem for operating system binaries (library) + OSTree is a tool and library for managing bootable, immutable, versioned + filesystem trees. It is like git in that it checksums individual files + and has a content-addressed object store; unlike git, it "checks out" + the files using hardlinks into an immutable directory tree. This + can be used to provide atomic upgrades with rollback, history and + parallel-installation, particularly useful on "fixed purpose" systems + such as embedded devices. It is also used by the Flatpak application + runtime system. + . + This package contains the shared library. + +Package: libostree-dev +Architecture: linux-any +Multi-Arch: same +Section: libdevel +Depends: + gir1.2-ostree-1.0 (= ${binary:Version}), + libglib2.0-dev, + pkg-config, + ${misc:Depends}, +Suggests: + libostree-doc, +Description: Development files for the ostree library + OSTree is a tool and library for managing bootable, immutable, versioned + filesystem trees. It is like git in that it checksums individual files + and has a content-addressed object store; unlike git, it "checks out" + the files using hardlinks into an immutable directory tree. This + can be used to provide atomic upgrades with rollback, history and + parallel-installation, particularly useful on "fixed purpose" systems + such as embedded devices. It is also used by the Flatpak application + runtime system. + . + This package contains development headers and the pkg-config file for ostree. + +Package: libostree-doc +Architecture: all +Multi-Arch: foreign +Section: doc +Depends: + ${misc:Depends}, +Suggests: + devhelp, +Description: Development documentation for the ostree library + OSTree is a tool for managing bootable, immutable, versioned filesystem + trees. See the ostree package's description for more details. + . + This package contains development documentation for ostree. + +Package: ostree +Architecture: linux-any +Depends: + ${misc:Depends}, + ${shlibs:Depends}, +Description: content-addressed filesystem for operating system binaries + OSTree is a tool and library for managing bootable, immutable, versioned + filesystem trees. It is like git in that it checksums individual files + and has a content-addressed object store; unlike git, it "checks out" + the files using hardlinks into an immutable directory tree. This + can be used to provide atomic upgrades with rollback, history and + parallel-installation, particularly useful on "fixed purpose" systems + such as embedded devices. + . + This package contains the executables used to manage and create + filesystem trees. It does not affect the boot process for the system + on which it is installed. + +Package: ostree-tests +Architecture: linux-any +Depends: + attr, + ca-certificates, + cpio, + fuse, + gir1.2-ostree-1.0, + gjs, + ostree, + python, + ${misc:Depends}, + ${shlibs:Depends}, +Description: content-addressed filesystem for operating system binaries - tests + OSTree is a tool for managing bootable, immutable, versioned filesystem + trees. See the ostree package's description for more details. + . + This package contains automated tests. diff --git a/copyright b/copyright new file mode 100644 index 00000000..d97db4b3 --- /dev/null +++ b/copyright @@ -0,0 +1,237 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: OSTree +Source: https://github.com/ostreedev/ostree/ + +Files: * +Copyright: + © 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + © 1999-2000, 2002-2005 Free Software Foundation, Inc. + © 2010-2016 Red Hat, Inc + © 2011-2016 Colin Walters + © 2011 Avery Pennarun + © 2013 Collabora Ltd. + © 2013 Stef Walter + © 2013 Javier Martinez + © 2013 Jeremy Whiting + © 2013 Sjoerd Simons + © 2014-2016 Alexander Larsson + © 2014 Owen Taylor + © 2015 Dan Nicholson + © 2015 Canonical Ltd. +License: LGPL-2+ + +Files: + git.mk +Copyright: + © 2009 Red Hat, Inc. + © 2010-2013 Behdad Esfahbod +License: GNU-permissive + +Files: + libglnx/glnx-lockfile.* + libglnx/glnx-fdio.* + libglnx/glnx-missing-syscall.h + libglnx/glnx-missing.h +Copyright: + © 2010-2011 Lennart Poettering + © 2014-2015 Colin Walters + © 2016 Zbigniew Jędrzejewski-Szmek +License: LGPL-2.1+ + +Files: + src/libostree/ostree-varint.c +Copyright: + © 2008 Google Inc. + © 2013 Colin Walters +License: LGPL-2+ and BSD-3-clause + +Files: + buildutil/attributes.m4 +Copyright: + 2006-2008 Diego Pettenò + 2006-2008 xine project + 2012 Lucas De Marchi +License: GPL-2+ with Autoconf exception + +Files: + GNUmakefile + build-aux/useless-if-before-free + build-aux/vc-list-files +Copyright: + 2001-2014 Free Software Foundation, Inc. +License: GPL-3+ + +Files: + bsdiff/* +Copyright: + © 2003-2005 Colin Percival + © 2012 Matthew Endsley +License: BSD-2-clause + +Files: + contrib/golang/* +Copyright: + © 2013 Conformal Systems LLC +License: ISC + +Files: debian/* +Copyright: + © 2015 David King + © 2016 Collabora Ltd. +License: LGPL-2+ + +License: GPL-2+ with Autoconf exception + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + . + 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. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. + . + As a special exception, the copyright owners of the + macro gives unlimited permission to copy, distribute and modify the + configure scripts that are the output of Autoconf when processing the + Macro. You need not follow the terms of the GNU General Public + License when using or distributing such scripts, even though portions + of the text of the Macro appear in them. The GNU General Public + License (GPL) does govern all other use of the material that + constitutes the Autoconf Macro. + . + This special exception to the GPL applies to versions of the + Autoconf Macro released by this project. When you make and + distribute a modified version of the Autoconf Macro, you may extend + this special exception to the GPL to apply to your modified version as + well. +Comment: + On Debian systems, the full text of the GNU General Public + License version 2 can be found in the file + '/usr/share/common-licenses/GPL-2'. + +License: GPL-3+ + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + . + 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. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . +Comment: + On Debian systems, the full text of the GNU General Public + License version 3 can be found in the file + '/usr/share/common-licenses/GPL-3'. + +License: LGPL-2+ + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Library General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + . + 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. See the + GNU Library General Public License for more details. + . + You should have received a copy of the GNU Library General Public License + along with this program. If not, see . +Comment: + On Debian systems, the full text of the GNU Library General Public + License version 2 can be found in the file + '/usr/share/common-licenses/LGPL-2'. + +License: LGPL-2.1+ + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + . + 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. See the + GNU Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . +Comment: + On Debian systems, the full text of the GNU Lesser General Public + License version 2.1 can be found in the file + '/usr/share/common-licenses/LGPL-2.1'. + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted providing 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 AUTHOR ``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 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 + 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. + * 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. + * Neither the name of Google Inc. 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 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: ISC + Permission to use, copy, modify, and distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +License: GNU-permissive + Copying and distribution of this file, with or without modification, + is permitted in any medium without royalty provided the copyright + notice and this notice are preserved. diff --git a/docs b/docs new file mode 100644 index 00000000..b43bf86b --- /dev/null +++ b/docs @@ -0,0 +1 @@ +README.md diff --git a/gbp.conf b/gbp.conf new file mode 100644 index 00000000..2bda9c8b --- /dev/null +++ b/gbp.conf @@ -0,0 +1,7 @@ +[DEFAULT] +pristine-tar = True +compression = xz +debian-branch = debian/master +upstream-branch = upstream/latest +patch-numbers = False +upstream-vcs-tag = v%(version)s diff --git a/gir1.2-ostree-1.0.install b/gir1.2-ostree-1.0.install new file mode 100644 index 00000000..49d71c96 --- /dev/null +++ b/gir1.2-ostree-1.0.install @@ -0,0 +1 @@ +usr/lib/*/girepository-1.0 diff --git a/libostree-1-1.install b/libostree-1-1.install new file mode 100644 index 00000000..989a3850 --- /dev/null +++ b/libostree-1-1.install @@ -0,0 +1 @@ +usr/lib/*/libostree-1.so.* diff --git a/libostree-1-1.symbols b/libostree-1-1.symbols new file mode 100644 index 00000000..bcc7c6c0 --- /dev/null +++ b/libostree-1-1.symbols @@ -0,0 +1,312 @@ +libostree-1.so.1 libostree-1-1 #MINVER# +* Build-Depends-Package: libostree-dev + LIBOSTREE_2016.3@LIBOSTREE_2016.3 2016.4 + LIBOSTREE_2016.4@LIBOSTREE_2016.4 2016.4 + LIBOSTREE_2016.5@LIBOSTREE_2016.5 2016.5 + LIBOSTREE_2016.6@LIBOSTREE_2016.6 2016.6 + LIBOSTREE_2016.7@LIBOSTREE_2016.7 2016.7 + LIBOSTREE_2016.8@LIBOSTREE_2016.8 2016.8 + ostree_async_progress_finish@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_get_status@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_get_type@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_get_uint64@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_get_uint@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_new@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_new_and_connect@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_set_status@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_set_uint64@LIBOSTREE_2016.3 2016.4 + ostree_async_progress_set_uint@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_clone@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_get@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_get_type@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_new@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_parse@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_parse_at@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_set@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_write@LIBOSTREE_2016.3 2016.4 + ostree_bootconfig_parser_write_at@LIBOSTREE_2016.3 2016.4 + ostree_chain_input_stream_get_type@LIBOSTREE_2016.3 2016.4 + ostree_chain_input_stream_new@LIBOSTREE_2016.3 2016.4 + ostree_checksum_b64_from_bytes@LIBOSTREE_2016.8 2016.8 + ostree_checksum_b64_inplace_from_bytes@LIBOSTREE_2016.3 2016.4 + ostree_checksum_b64_inplace_to_bytes@LIBOSTREE_2016.3 2016.4 + ostree_checksum_b64_to_bytes@LIBOSTREE_2016.8 2016.8 + ostree_checksum_bytes_peek@LIBOSTREE_2016.3 2016.4 + ostree_checksum_bytes_peek_validate@LIBOSTREE_2016.3 2016.4 + ostree_checksum_file@LIBOSTREE_2016.3 2016.4 + ostree_checksum_file_async@LIBOSTREE_2016.3 2016.4 + ostree_checksum_file_async_finish@LIBOSTREE_2016.3 2016.4 + ostree_checksum_file_from_input@LIBOSTREE_2016.3 2016.4 + ostree_checksum_from_bytes@LIBOSTREE_2016.3 2016.4 + ostree_checksum_from_bytes_v@LIBOSTREE_2016.3 2016.4 + ostree_checksum_inplace_from_bytes@LIBOSTREE_2016.3 2016.4 + ostree_checksum_inplace_to_bytes@LIBOSTREE_2016.3 2016.4 + ostree_checksum_input_stream_get_type@LIBOSTREE_2016.3 2016.4 + ostree_checksum_input_stream_new@LIBOSTREE_2016.3 2016.4 + ostree_checksum_to_bytes@LIBOSTREE_2016.3 2016.4 + ostree_checksum_to_bytes_v@LIBOSTREE_2016.3 2016.4 + ostree_cmd__private__@LIBOSTREE_2016.3 2016.4 + ostree_cmp_checksum_bytes@LIBOSTREE_2016.3 2016.4 + ostree_commit_get_parent@LIBOSTREE_2016.3 2016.4 + ostree_commit_get_timestamp@LIBOSTREE_2016.3 2016.4 + ostree_content_file_parse@LIBOSTREE_2016.3 2016.4 + ostree_content_file_parse_at@LIBOSTREE_2016.3 2016.4 + ostree_content_stream_parse@LIBOSTREE_2016.3 2016.4 + ostree_create_directory_metadata@LIBOSTREE_2016.3 2016.4 + ostree_deployment_clone@LIBOSTREE_2016.3 2016.4 + ostree_deployment_equal@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_bootconfig@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_bootcsum@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_bootserial@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_csum@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_deployserial@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_index@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_origin@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_origin_relpath@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_osname@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_type@LIBOSTREE_2016.3 2016.4 + ostree_deployment_get_unlocked@LIBOSTREE_2016.4 2016.4 + ostree_deployment_hash@LIBOSTREE_2016.3 2016.4 + ostree_deployment_new@LIBOSTREE_2016.3 2016.4 + ostree_deployment_set_bootconfig@LIBOSTREE_2016.3 2016.4 + ostree_deployment_set_bootserial@LIBOSTREE_2016.3 2016.4 + ostree_deployment_set_index@LIBOSTREE_2016.3 2016.4 + ostree_deployment_set_origin@LIBOSTREE_2016.3 2016.4 + ostree_deployment_unlocked_state_to_string@LIBOSTREE_2016.4 2016.4 + ostree_diff_dirs@LIBOSTREE_2016.3 2016.4 + ostree_diff_item_get_type@LIBOSTREE_2016.3 2016.4 + ostree_diff_item_ref@LIBOSTREE_2016.3 2016.4 + ostree_diff_item_unref@LIBOSTREE_2016.3 2016.4 + ostree_diff_print@LIBOSTREE_2016.3 2016.4 + ostree_fetcher_config_flags_get_type@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_count_all@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_count_valid@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_describe@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_describe_variant@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_get@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_get_all@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_get_type@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_lookup@LIBOSTREE_2016.3 2016.4 + ostree_gpg_verify_result_require_valid_signature@LIBOSTREE_2016.6 2016.6 + ostree_hash_object_name@LIBOSTREE_2016.3 2016.4 + ostree_metadata_variant_type@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_ensure_dir@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_ensure_parent_dirs@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_get_contents_checksum@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_get_files@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_get_metadata_checksum@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_get_subdirs@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_get_type@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_lookup@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_new@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_replace_file@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_set_contents_checksum@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_set_metadata_checksum@LIBOSTREE_2016.3 2016.4 + ostree_mutable_tree_walk@LIBOSTREE_2016.3 2016.4 + ostree_object_from_string@LIBOSTREE_2016.3 2016.4 + ostree_object_name_deserialize@LIBOSTREE_2016.3 2016.4 + ostree_object_name_serialize@LIBOSTREE_2016.3 2016.4 + ostree_object_to_string@LIBOSTREE_2016.3 2016.4 + ostree_object_type_from_string@LIBOSTREE_2016.3 2016.4 + ostree_object_type_to_string@LIBOSTREE_2016.3 2016.4 + ostree_parse_refspec@LIBOSTREE_2016.3 2016.4 + ostree_raw_file_to_archive_z2_stream@LIBOSTREE_2016.6 2016.6 + ostree_raw_file_to_content_stream@LIBOSTREE_2016.3 2016.4 + ostree_repo_abort_transaction@LIBOSTREE_2016.3 2016.4 + ostree_repo_add_gpg_signature_summary@LIBOSTREE_2016.3 2016.4 + ostree_repo_append_gpg_signature@LIBOSTREE_2016.3 2016.4 + ostree_repo_checkout_at@LIBOSTREE_2016.8 2016.8 + ostree_repo_checkout_gc@LIBOSTREE_2016.3 2016.4 + ostree_repo_checkout_tree@LIBOSTREE_2016.3 2016.4 + ostree_repo_checkout_tree_at@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_modifier_get_type@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_modifier_new@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_modifier_ref@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_modifier_set_devino_cache@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_modifier_set_sepolicy@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_modifier_set_xattr_callback@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_modifier_unref@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_transaction@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_traverse_iter_cleanup@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_traverse_iter_clear@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_traverse_iter_get_dir@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_traverse_iter_get_file@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_traverse_iter_init_commit@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_traverse_iter_init_dirtree@LIBOSTREE_2016.3 2016.4 + ostree_repo_commit_traverse_iter_next@LIBOSTREE_2016.3 2016.4 + ostree_repo_copy_config@LIBOSTREE_2016.3 2016.4 + ostree_repo_create@LIBOSTREE_2016.3 2016.4 + ostree_repo_delete_object@LIBOSTREE_2016.3 2016.4 + ostree_repo_devino_cache_get_type@LIBOSTREE_2016.3 2016.4 + ostree_repo_devino_cache_new@LIBOSTREE_2016.3 2016.4 + ostree_repo_devino_cache_ref@LIBOSTREE_2016.3 2016.4 + ostree_repo_devino_cache_unref@LIBOSTREE_2016.3 2016.4 + ostree_repo_export_tree_to_archive@LIBOSTREE_2016.3 2016.3 + ostree_repo_file_ensure_resolved@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_get_checksum@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_get_repo@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_get_root@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_get_type@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_get_xattrs@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_tree_find_child@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_tree_get_contents@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_tree_get_contents_checksum@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_tree_get_metadata@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_tree_get_metadata_checksum@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_tree_query_child@LIBOSTREE_2016.3 2016.4 + ostree_repo_file_tree_set_metadata@LIBOSTREE_2016.3 2016.4 + ostree_repo_get_config@LIBOSTREE_2016.3 2016.4 + ostree_repo_get_dfd@LIBOSTREE_2016.4 2016.4 + ostree_repo_get_disable_fsync@LIBOSTREE_2016.3 2016.3 + ostree_repo_get_mode@LIBOSTREE_2016.3 2016.4 + ostree_repo_get_parent@LIBOSTREE_2016.3 2016.4 + ostree_repo_get_path@LIBOSTREE_2016.3 2016.4 + ostree_repo_get_remote_boolean_option@LIBOSTREE_2016.5 2016.5 + ostree_repo_get_remote_list_option@LIBOSTREE_2016.5 2016.5 + ostree_repo_get_remote_option@LIBOSTREE_2016.5 2016.5 + ostree_repo_get_type@LIBOSTREE_2016.3 2016.4 + ostree_repo_gpg_verify_data@LIBOSTREE_2016.6 2016.6 + ostree_repo_has_object@LIBOSTREE_2016.3 2016.4 + ostree_repo_import_archive_to_mtree@LIBOSTREE_2016.3 2016.3 + ostree_repo_import_object_from@LIBOSTREE_2016.3 2016.4 + ostree_repo_import_object_from_with_trust@LIBOSTREE_2016.5 2016.5 + ostree_repo_is_system@LIBOSTREE_2016.3 2016.4 + ostree_repo_is_writable@LIBOSTREE_2016.3 2016.4 + ostree_repo_list_commit_objects_starting_with@LIBOSTREE_2016.3 2016.4 + ostree_repo_list_objects@LIBOSTREE_2016.3 2016.4 + ostree_repo_list_refs@LIBOSTREE_2016.3 2016.4 + ostree_repo_list_refs_ext@LIBOSTREE_2016.4 2016.4 + ostree_repo_list_static_delta_names@LIBOSTREE_2016.3 2016.4 + ostree_repo_load_commit@LIBOSTREE_2016.3 2016.4 + ostree_repo_load_file@LIBOSTREE_2016.3 2016.4 + ostree_repo_load_object_stream@LIBOSTREE_2016.3 2016.4 + ostree_repo_load_variant@LIBOSTREE_2016.3 2016.4 + ostree_repo_load_variant_if_exists@LIBOSTREE_2016.3 2016.4 + ostree_repo_mode_from_string@LIBOSTREE_2016.3 2016.4 + ostree_repo_new@LIBOSTREE_2016.3 2016.4 + ostree_repo_new_default@LIBOSTREE_2016.3 2016.4 + ostree_repo_new_for_sysroot_path@LIBOSTREE_2016.3 2016.4 + ostree_repo_open@LIBOSTREE_2016.3 2016.4 + ostree_repo_prepare_transaction@LIBOSTREE_2016.3 2016.4 + ostree_repo_prune@LIBOSTREE_2016.3 2016.4 + ostree_repo_prune_static_deltas@LIBOSTREE_2016.3 2016.4 + ostree_repo_pull@LIBOSTREE_2016.3 2016.4 + ostree_repo_pull_default_console_progress_changed@LIBOSTREE_2016.3 2016.4 + ostree_repo_pull_one_dir@LIBOSTREE_2016.3 2016.4 + ostree_repo_pull_with_options@LIBOSTREE_2016.3 2016.4 + ostree_repo_query_object_storage_size@LIBOSTREE_2016.3 2016.4 + ostree_repo_read_commit@LIBOSTREE_2016.3 2016.4 + ostree_repo_read_commit_detached_metadata@LIBOSTREE_2016.3 2016.4 + ostree_repo_regenerate_summary@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_add@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_change@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_delete@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_fetch_summary@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_fetch_summary_with_options@LIBOSTREE_2016.6 2016.6 + ostree_repo_remote_get_gpg_verify@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_get_gpg_verify_summary@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_get_url@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_gpg_import@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_list@LIBOSTREE_2016.3 2016.4 + ostree_repo_remote_list_refs@LIBOSTREE_2016.3 2016.4 + ostree_repo_resolve_rev@LIBOSTREE_2016.3 2016.4 + ostree_repo_resolve_rev_ext@LIBOSTREE_2016.7 2016.7 + ostree_repo_scan_hardlinks@LIBOSTREE_2016.3 2016.4 + ostree_repo_set_cache_dir@LIBOSTREE_2016.5 2016.5 + ostree_repo_set_disable_fsync@LIBOSTREE_2016.3 2016.4 + ostree_repo_set_ref_immediate@LIBOSTREE_2016.3 2016.4 + ostree_repo_sign_commit@LIBOSTREE_2016.3 2016.4 + ostree_repo_sign_delta@LIBOSTREE_2016.3 2016.4 + ostree_repo_static_delta_execute_offline@LIBOSTREE_2016.3 2016.4 + ostree_repo_static_delta_generate@LIBOSTREE_2016.3 2016.4 + ostree_repo_transaction_set_ref@LIBOSTREE_2016.3 2016.4 + ostree_repo_transaction_set_refspec@LIBOSTREE_2016.3 2016.4 + ostree_repo_transaction_stats_get_type@LIBOSTREE_2016.3 2016.4 + ostree_repo_traverse_commit@LIBOSTREE_2016.3 2016.4 + ostree_repo_traverse_commit_union@LIBOSTREE_2016.3 2016.4 + ostree_repo_traverse_new_reachable@LIBOSTREE_2016.3 2016.4 + ostree_repo_verify_commit@LIBOSTREE_2016.3 2016.4 + ostree_repo_verify_commit_ext@LIBOSTREE_2016.3 2016.4 + ostree_repo_verify_summary@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_archive_to_mtree@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_commit@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_commit_detached_metadata@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_commit_with_time@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_config@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_content@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_content_async@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_content_finish@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_content_trusted@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_dfd_to_mtree@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_directory_to_mtree@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_metadata@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_metadata_async@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_metadata_finish@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_metadata_stream_trusted@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_metadata_trusted@LIBOSTREE_2016.3 2016.4 + ostree_repo_write_mtree@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_fscreatecon_cleanup@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_get_csum@LIBOSTREE_2016.5 2016.5 + ostree_sepolicy_get_label@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_get_name@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_get_path@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_get_type@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_new@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_restorecon@LIBOSTREE_2016.3 2016.4 + ostree_sepolicy_setfscreatecon@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_cleanup@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_deploy_tree@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_deployment_set_kargs@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_deployment_set_mutable@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_deployment_unlock@LIBOSTREE_2016.4 2016.4 + ostree_sysroot_ensure_initialized@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_booted_deployment@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_bootversion@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_deployment_directory@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_deployment_dirpath@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_deployment_origin_path@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_deployments@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_fd@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_merge_deployment@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_path@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_repo@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_subbootversion@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_get_type@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_init_osname@LIBOSTREE_2016.4 2016.4 + ostree_sysroot_load@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_load_if_changed@LIBOSTREE_2016.4 2016.4 + ostree_sysroot_lock@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_lock_async@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_lock_finish@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_new@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_new_default@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_origin_new_from_refspec@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_prepare_cleanup@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_simple_write_deployment@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_try_lock@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_unload@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_unlock@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_check_timestamps@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_deploy@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_dup_origin@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_flags_get_type@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_get_origin@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_get_origin_description@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_get_type@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_new@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_new_for_os@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_new_for_os_with_flags@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_pull@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_pull_one_dir@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_upgrader_set_origin@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_write_deployments@LIBOSTREE_2016.3 2016.4 + ostree_sysroot_write_origin_file@LIBOSTREE_2016.3 2016.4 + ostree_validate_checksum_string@LIBOSTREE_2016.3 2016.4 + ostree_validate_rev@LIBOSTREE_2016.3 2016.4 + ostree_validate_structureof_checksum_string@LIBOSTREE_2016.3 2016.4 + ostree_validate_structureof_commit@LIBOSTREE_2016.3 2016.4 + ostree_validate_structureof_csum_v@LIBOSTREE_2016.3 2016.4 + ostree_validate_structureof_dirmeta@LIBOSTREE_2016.3 2016.4 + ostree_validate_structureof_dirtree@LIBOSTREE_2016.3 2016.4 + ostree_validate_structureof_file_mode@LIBOSTREE_2016.3 2016.4 + ostree_validate_structureof_objtype@LIBOSTREE_2016.3 2016.4 diff --git a/libostree-dev.install b/libostree-dev.install new file mode 100644 index 00000000..3700ef29 --- /dev/null +++ b/libostree-dev.install @@ -0,0 +1,4 @@ +usr/include/* +usr/lib/*/libostree-1.so +usr/lib/*/pkgconfig +usr/share/gir-1.0/OSTree-1.0.gir diff --git a/libostree-doc.install b/libostree-doc.install new file mode 100644 index 00000000..95af827a --- /dev/null +++ b/libostree-doc.install @@ -0,0 +1 @@ +usr/share/gtk-doc diff --git a/ostree-boot.README.Debian b/ostree-boot.README.Debian new file mode 100644 index 00000000..f156b6a7 --- /dev/null +++ b/ostree-boot.README.Debian @@ -0,0 +1,10 @@ +This package contains configuration snippets for using ostree with GRUB 2. +This integration currently has some limitations: + + - the initramfs must have been made using dracut + - the root filesystem must be one that dracut can mount without a root= + command-line argument (an EFI partition with the GUID defined in + the Discoverable Partitions specification[1]) + - /boot must be a separate partition + +[1] https://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/ diff --git a/ostree-boot.control b/ostree-boot.control new file mode 100644 index 00000000..ac76885c --- /dev/null +++ b/ostree-boot.control @@ -0,0 +1,32 @@ +Package: ostree-boot +Architecture: linux-any +Depends: + dracut, + ostree (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends}, +Recommends: + grub-efi-amd64 | grub-pc | extlinux | syslinux | u-boot, +Breaks: + ostree (<< ${binary:Version}), + ostree-grub2 (<< ${binary:Version}), +Replaces: + ostree (<< ${binary:Version}), + ostree-grub2 (<< ${binary:Version}), +Provides: + ostree-grub2 (= ${binary:Version}), +Description: ostree boot loader and initramfs integration + OSTree is a tool for managing bootable, immutable, versioned filesystem + trees. See the ostree package's description for more details. + . + This package contains configuration snippets and executables needed to + boot a Debian derivative using OSTree. This integration currently has some + limitations: + . + - the initramfs must have been made using dracut + - the root filesystem must be one that dracut can mount without a root= + command-line argument (an EFI partition with the GUID defined in + the Discoverable Partitions specification) + - /boot must be a separate partition + - the boot loader must be one that is supported by ostree, currently + GNU GRUB 2, syslinux/extlinux or Das U-Boot diff --git a/ostree-boot.install b/ostree-boot.install new file mode 100644 index 00000000..7701a276 --- /dev/null +++ b/ostree-boot.install @@ -0,0 +1,8 @@ +etc/dracut.conf.d/ostree.conf +etc/grub.d/15_ostree +lib/systemd/system/ostree-prepare-root.service +lib/systemd/system/ostree-remount.service +usr/lib/dracut/modules.d/98ostree +usr/lib/ostree/grub2-15_ostree +usr/lib/ostree/ostree-prepare-root +usr/lib/ostree/ostree-remount diff --git a/ostree-tests.install b/ostree-tests.install new file mode 100644 index 00000000..42a29879 --- /dev/null +++ b/ostree-tests.install @@ -0,0 +1,2 @@ +usr/lib/installed-tests/ostree +usr/share/installed-tests/ostree diff --git a/ostree-tests.lintian-overrides b/ostree-tests.lintian-overrides new file mode 100644 index 00000000..97b8f0c4 --- /dev/null +++ b/ostree-tests.lintian-overrides @@ -0,0 +1,7 @@ +# This is deliberate: it's just some random signed file to be verified, and +# upstream happens to have used the text of the LGPL as the signed file +ostree-tests: extra-license-file usr/lib/installed-tests/ostree/gpg-verify-data/lgpl2 +ostree-tests: extra-license-file usr/lib/installed-tests/ostree/gpg-verify-data/lgpl2.sig + +# This is deliberate, working around the assumption of recursive make +ostree-tests: symlink-is-self-recursive usr/lib/installed-tests/ostree/tests . diff --git a/ostree.install b/ostree.install new file mode 100644 index 00000000..4e555f92 --- /dev/null +++ b/ostree.install @@ -0,0 +1,5 @@ +etc/ostree +usr/bin/ostree +usr/bin/rofiles-fuse +usr/share/man +usr/share/ostree/trusted.gpg.d diff --git a/patches/Filter-bootloader-supplied-kernel-cmdline-options.patch b/patches/Filter-bootloader-supplied-kernel-cmdline-options.patch new file mode 100644 index 00000000..8ffe864c --- /dev/null +++ b/patches/Filter-bootloader-supplied-kernel-cmdline-options.patch @@ -0,0 +1,145 @@ +From f0e493bf2992d752ec3cf517542e60d9ea376be4 Mon Sep 17 00:00:00 2001 +From: Sjoerd Simons +Date: Sun, 30 Oct 2016 21:06:27 +0100 +Subject: [PATCH] Filter bootloader supplied kernel cmdline options + +Various bootloader add kernel commandline options dynamically, filter +these out when grabbing boot options from /proc/cmdline. Specifically +grub adds BOOT_IMAGE and systemd-boot adds initrd. + +Closes: #560 +Approved by: cgwalters +--- + src/libostree/ostree-kernel-args.c | 43 ++++++++++++++++++++++++++++++---- + src/libostree/ostree-kernel-args.h | 3 +++ + tests/test-admin-deploy-karg.sh | 2 ++ + tests/test-admin-instutil-set-kargs.sh | 2 ++ + 4 files changed, 46 insertions(+), 4 deletions(-) + +diff --git a/src/libostree/ostree-kernel-args.c b/src/libostree/ostree-kernel-args.c +index ec189fc..22b5caa 100644 +--- a/src/libostree/ostree-kernel-args.c ++++ b/src/libostree/ostree-kernel-args.c +@@ -53,6 +53,23 @@ split_keyeq (char *arg) + } + } + ++static gboolean ++_arg_has_prefix (const char *arg, ++ char **prefixes) ++{ ++ char **strviter; ++ ++ for (strviter = prefixes; strviter && *strviter; strviter++) ++ { ++ const char *prefix = *strviter; ++ ++ if (g_str_has_prefix (arg, prefix)) ++ return TRUE; ++ } ++ ++ return FALSE; ++} ++ + OstreeKernelArgs * + _ostree_kernel_args_new (void) + { +@@ -154,18 +171,28 @@ _ostree_kernel_args_replace_argv (OstreeKernelArgs *kargs, + } + + void +-_ostree_kernel_args_append_argv (OstreeKernelArgs *kargs, +- char **argv) ++_ostree_kernel_args_append_argv_filtered (OstreeKernelArgs *kargs, ++ char **argv, ++ char **prefixes) + { + char **strviter; + + for (strviter = argv; strviter && *strviter; strviter++) + { + const char *arg = *strviter; +- _ostree_kernel_args_append (kargs, arg); ++ ++ if (!_arg_has_prefix (arg, prefixes)) ++ _ostree_kernel_args_append (kargs, arg); + } + } + ++void ++_ostree_kernel_args_append_argv (OstreeKernelArgs *kargs, ++ char **argv) ++{ ++ _ostree_kernel_args_append_argv_filtered (kargs, argv, NULL); ++} ++ + gboolean + _ostree_kernel_args_append_proc_cmdline (OstreeKernelArgs *kargs, + GCancellable *cancellable, +@@ -175,6 +202,13 @@ _ostree_kernel_args_append_proc_cmdline (OstreeKernelArgs *kargs, + g_autofree char *proc_cmdline = NULL; + gsize proc_cmdline_len = 0; + g_auto(GStrv) proc_cmdline_args = NULL; ++ /* When updating the filter list don't forget to update the list in the tests ++ * e.g. tests/test-admin-deploy-karg.sh and ++ * tests/test-admin-instutil-set-kargs.sh ++ */ ++ char *filtered_prefixes[] = { "BOOT_IMAGE=", /* GRUB 2 */ ++ "initrd=", /* sd-boot */ ++ NULL }; + + if (!g_file_load_contents (proc_cmdline_path, cancellable, + &proc_cmdline, &proc_cmdline_len, +@@ -184,7 +218,8 @@ _ostree_kernel_args_append_proc_cmdline (OstreeKernelArgs *kargs, + g_strchomp (proc_cmdline); + + proc_cmdline_args = g_strsplit (proc_cmdline, " ", -1); +- _ostree_kernel_args_append_argv (kargs, proc_cmdline_args); ++ _ostree_kernel_args_append_argv_filtered (kargs, proc_cmdline_args, ++ filtered_prefixes); + + return TRUE; + } +diff --git a/src/libostree/ostree-kernel-args.h b/src/libostree/ostree-kernel-args.h +index 18710d7..ceaa1ca 100644 +--- a/src/libostree/ostree-kernel-args.h ++++ b/src/libostree/ostree-kernel-args.h +@@ -39,6 +39,9 @@ void _ostree_kernel_args_append (OstreeKernelArgs *kargs, + const char *key); + void _ostree_kernel_args_append_argv (OstreeKernelArgs *kargs, + char **argv); ++void _ostree_kernel_args_append_argv_filtered (OstreeKernelArgs *kargs, ++ char **argv, ++ char **prefixes); + + gboolean _ostree_kernel_args_append_proc_cmdline (OstreeKernelArgs *kargs, + GCancellable *cancellable, +diff --git a/tests/test-admin-deploy-karg.sh b/tests/test-admin-deploy-karg.sh +index b7305f4..643aef7 100755 +--- a/tests/test-admin-deploy-karg.sh ++++ b/tests/test-admin-deploy-karg.sh +@@ -46,6 +46,8 @@ ${CMD_PREFIX} ostree admin deploy --karg-proc-cmdline --os=testos testos:testos/ + for arg in $(cat /proc/cmdline); do + case "$arg" in + ostree=*) # Skip ostree arg that gets stripped out ++ ;; ++ initrd=*|BOOT_IMAGE=*) # Skip options set by bootloader that gets filtered out + ;; + *) assert_file_has_content sysroot/boot/loader/entries/ostree-testos-0.conf "options.*$arg" + ;; +diff --git a/tests/test-admin-instutil-set-kargs.sh b/tests/test-admin-instutil-set-kargs.sh +index 40f4b74..132c933 100755 +--- a/tests/test-admin-instutil-set-kargs.sh ++++ b/tests/test-admin-instutil-set-kargs.sh +@@ -58,6 +58,8 @@ for arg in $(cat /proc/cmdline); do + case "$arg" in + ostree=*) # Skip ostree arg that gets stripped out + ;; ++ initrd=*|BOOT_IMAGE=*) # Skip options set by bootloader that gets filtered out ++ ;; + *) assert_file_has_content sysroot/boot/loader/entries/ostree-testos-0.conf "options.*$arg" + ;; + esac +-- +2.10.2 + diff --git a/patches/Terminate-individual-tests-after-half-an-hour.patch b/patches/Terminate-individual-tests-after-half-an-hour.patch new file mode 100644 index 00000000..3b279bb6 --- /dev/null +++ b/patches/Terminate-individual-tests-after-half-an-hour.patch @@ -0,0 +1,25 @@ +From: Simon McVittie +Date: Fri, 9 Sep 2016 08:23:36 +0100 +Subject: Terminate individual tests after half an hour + +While using the Automake parallel test harness, if a test hangs for +long enough for an external watchdog to kill the entire build process +(as happens in Debian sbuild after 150 minutes with no activity on +stdout/stderr), the logs will not be shown. If we make an individual +test time out sooner, logs are more likely to be shown. + +Signed-off-by: Simon McVittie +--- + buildutil/tap-test | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/buildutil/tap-test b/buildutil/tap-test +index 6b2eb5c..4971f0b 100755 +--- a/buildutil/tap-test ++++ b/buildutil/tap-test +@@ -20,4 +20,4 @@ function cleanup () { + } + trap cleanup EXIT + cd ${tempdir} +-${srcd}/${bn} -k --tap ++timeout --kill-after=60 1800 ${srcd}/${bn} -k --tap diff --git a/patches/dist/Retrieve-some-missing-test-files-from-upstream-git.patch b/patches/dist/Retrieve-some-missing-test-files-from-upstream-git.patch new file mode 100644 index 00000000..5ff1ed1d --- /dev/null +++ b/patches/dist/Retrieve-some-missing-test-files-from-upstream-git.patch @@ -0,0 +1,946 @@ +From: Simon McVittie +Date: Fri, 7 Oct 2016 23:14:40 +0100 +Subject: Retrieve some missing test files from upstream git + +These were missing from "make dist". +--- + tests/glib.supp | 562 +++++++++++++++++++++++++++++++++++++++++++++++ + tests/ostree.supp | 1 + + tests/test-core.js | 55 +++++ + tests/test-corruption.sh | 43 ++++ + tests/test-sizes.js | 82 +++++++ + tests/test-sysroot.js | 147 +++++++++++++ + 6 files changed, 890 insertions(+) + create mode 100644 tests/glib.supp + create mode 100644 tests/ostree.supp + create mode 100644 tests/test-core.js + create mode 100755 tests/test-corruption.sh + create mode 100644 tests/test-sizes.js + create mode 100644 tests/test-sysroot.js + +diff --git a/tests/glib.supp b/tests/glib.supp +new file mode 100644 +index 0000000..7ac6ed8 +--- /dev/null ++++ b/tests/glib.supp +@@ -0,0 +1,562 @@ ++# This GLib suppressions file is known to be used at least by: ++# ++# - rpm-software-management/libhif ++# ++# Please use the upstream verison in libhif for changes. ++{ ++ gobject_init_1 ++ Memcheck:Leak ++ ... ++ fun:gobject_init ++} ++{ ++ g_type_register_static_1 ++ Memcheck:Leak ++ ... ++ fun:g_type_register_static ++} ++{ ++ g_type_register_dynamic ++ Memcheck:Leak ++ ... ++ fun:g_type_register_dynamic ++} ++{ ++ g_type_register_fundamental ++ Memcheck:Leak ++ ... ++ fun:g_type_register_fundamental ++} ++{ ++ g_type_init_with_debug_flags ++ Memcheck:Leak ++ ... ++ fun:g_type_init_with_debug_flags ++} ++{ ++ g_type_class_ref_1 ++ Memcheck:Leak ++ ... ++ fun:type_iface_vtable_base_init_Wm ++ ... ++ fun:g_type_class_ref ++} ++{ ++ g_type_class_ref_2 ++ Memcheck:Leak ++ ... ++ fun:type_class_init_Wm ++ ... ++ fun:g_type_class_ref ++} ++{ ++ g_type_add_interface_static ++ Memcheck:Leak ++ ... ++ fun:g_type_add_interface_static ++} ++{ ++ g_type_add_interface_dynamic ++ Memcheck:Leak ++ ... ++ fun:g_type_add_interface_dynamic ++} ++{ ++ g_param_spec_internal ++ Memcheck:Leak ++ ... ++ fun:g_type_class_ref ++ fun:g_type_create_instance ++ fun:g_param_spec_internal ++} ++{ ++ g_param_spec_enum ++ Memcheck:Leak ++ ... ++ fun:g_type_class_ref ++ fun:g_param_spec_enum ++} ++{ ++ g_param_spec_flags ++ Memcheck:Leak ++ ... ++ fun:g_type_class_ref ++ fun:g_param_spec_flags ++} ++{ ++ g_quark_from_static_string ++ Memcheck:Leak ++ ... ++ fun:g_quark_from_static_string ++} ++{ ++ g_quark_from_string ++ Memcheck:Leak ++ ... ++ fun:g_quark_from_string ++} ++{ ++ g_value_register_transform_func ++ Memcheck:Leak ++ ... ++ fun:g_value_register_transform_func ++} ++{ ++ test_run_seed ++ Memcheck:Leak ++ ... ++ fun:g_rand_new_with_seed_array ++ fun:test_run_seed ++ ... ++ fun:g_test_run_suite ++} ++{ ++ g_test_init ++ Memcheck:Leak ++ ... ++ fun:g_rand_new_with_seed_array ++ ... ++ fun:g_test_init ++} ++{ ++ g_intern_static_string ++ Memcheck:Leak ++ ... ++ fun:g_intern_static_string ++} ++{ ++ g_main_context_push_thread_default ++ Memcheck:Leak ++ ... ++ fun:g_queue_new ++ fun:g_main_context_push_thread_default ++} ++{ ++ g_main_context_push_thread_default_inlined ++ Memcheck:Leak ++ ... ++ fun:g_slice_alloc0 ++ fun:g_main_context_push_thread_default ++} ++{ ++ g_dbus_error_register_error ++ Memcheck:Leak ++ ... ++ fun:g_dbus_error_register_error ++} ++{ ++ g_param_spec_pool_insert ++ Memcheck:Leak ++ ... ++ fun:g_param_spec_pool_insert ++} ++{ ++ g_main_context_default ++ Memcheck:Leak ++ ... ++ fun:g_main_context_default ++} ++{ ++ g_main_context_check ++ Memcheck:Leak ++ ... ++ fun:g_ptr_array_add ++ fun:g_main_context_check ++} ++{ ++ g_test_run_suite ++ Memcheck:Leak ++ ... ++ fun:g_slist_copy ++ fun:g_test_run_suite_internal ++ fun:g_test_run_suite ++} ++{ ++ g_dbus_interface_info_cache_build ++ Memcheck:Leak ++ ... ++ fun:g_dbus_interface_info_cache_build ++} ++{ ++ g_cancellable_push_current ++ Memcheck:Leak ++ ... ++ fun:thread_memory_from_self ++ ... ++ fun:g_cancellable_push_current ++} ++{ ++ _g_io_module_get_default ++ Memcheck:Leak ++ ... ++ fun:g_io_module_new ++ fun:g_io_modules_scan_all_in_directory_with_scope ++ fun:_g_io_modules_ensure_loaded ++ fun:_g_io_module_get_default ++} ++{ ++ g_io_scheduler_push_job ++ Memcheck:Leak ++ ... ++ fun:init_scheduler ++ fun:g_once_impl ++ fun:g_io_scheduler_push_job ++} ++{ ++ g_io_scheduler_push_job_2 ++ Memcheck:Leak ++ ... ++ fun:g_system_thread_new ++ ... ++ fun:g_io_scheduler_push_job ++} ++{ ++ g_bus_get_sync__available_connections ++ Memcheck:Leak ++ ... ++ fun:g_hash_table_new ++ fun:initable_init ++ fun:g_initable_init ++ fun:g_bus_get_sync ++} ++{ ++ g_socket_connection_factory_register_type ++ Memcheck:Leak ++ ... ++ fun:g_socket_connection_factory_register_type ++} ++{ ++ g_test_add_vtable ++ Memcheck:Leak ++ ... ++ fun:g_test_add_vtable ++} ++{ ++ g_mutex_lock ++ Memcheck:Leak ++ ... ++ fun:g_mutex_impl_new ++ fun:g_mutex_get_impl ++ fun:g_mutex_lock ++} ++{ ++ g_thread_self ++ Memcheck:Leak ++ ... ++ fun:g_thread_self ++} ++{ ++ g_rec_mutex_lock ++ Memcheck:Leak ++ ... ++ fun:g_rec_mutex_impl_new ++ fun:g_rec_mutex_get_impl ++ fun:g_rec_mutex_lock ++} ++{ ++ test_case_run ++ Memcheck:Leak ++ ... ++ fun:g_malloc0 ++ fun:test_case_run ++ ... ++ fun:g_test_run_suite ++} ++{ ++ g_get_charset ++ Memcheck:Leak ++ ... ++ fun:g_get_charset ++} ++{ ++ g_test_run_suite__timer_new ++ Memcheck:Leak ++ ... ++ fun:g_timer_new ++ fun:test_case_run ++ ... ++ fun:g_test_run_suite ++} ++{ ++ g_test_run_suite__timer_new2 ++ Memcheck:Leak ++ ... ++ fun:g_timer_new ++ fun:test_case_run_suite_internal ++ ... ++ fun:g_test_run_suite ++} ++{ ++ g_test_run_suite__strconcat ++ Memcheck:Leak ++ ... ++ fun:g_strconcat ++ fun:test_case_run ++ ... ++ fun:g_test_run_suite ++ fun:g_test_run ++} ++{ ++ g_type_interface_add_prerequisite ++ Memcheck:Leak ++ ... ++ fun:g_type_interface_add_prerequisite ++} ++{ ++ ++ Memcheck:Leak ++ ... ++ fun:g_slist_copy ++ fun:g_test_run_suite_internal ++ ... ++ fun:g_test_run_suite ++} ++{ ++ g_set_prgname ++ Memcheck:Leak ++ ... ++ fun:g_set_prgname ++} ++{ ++ g_test_run_suite__strconcat_2 ++ Memcheck:Leak ++ ... ++ fun:g_strconcat ++ fun:g_test_run_suite_internal ++} ++{ ++ g_test_run_suite__strdup ++ Memcheck:Leak ++ ... ++ fun:g_strdup ++ fun:g_test_run_suite_internal ++} ++{ ++ g_private_get ++ Memcheck:Leak ++ ... ++ fun:g_private_get ++} ++{ ++ g_private_set ++ Memcheck:Leak ++ ... ++ fun:g_private_set ++} ++{ ++ g_static_mutex_get_mutex_impl ++ Memcheck:Leak ++ ... ++ fun:g_static_mutex_get_mutex_impl ++} ++{ ++ g_variant_type_info_unref ++ Memcheck:Leak ++ ... ++ fun:g_hash_table_remove ++ fun:g_variant_type_info_unref ++} ++{ ++ g_rw_lock_reader_lock ++ Memcheck:Leak ++ ... ++ fun:g_rw_lock_impl_new ++ fun:g_rw_lock_get_impl ++ fun:g_rw_lock_reader_lock ++} ++{ ++ g_child_watch_finalize__rt_sigaction ++ Memcheck:Param ++ rt_sigaction(act->sa_flags) ++ fun:__libc_sigaction ++ ... ++ fun:g_child_watch_finalize ++} ++{ ++ g_dbus_worker_new ++ Memcheck:Leak ++ fun:calloc ++ ... ++ fun:_g_dbus_worker_new ++} ++{ ++ gdbus_shared_thread_func ++ Memcheck:Leak ++ match-leak-kinds: definite ++ ... ++ fun:g_malloc ++ ... ++ fun:gdbus_shared_thread_func ++} ++{ ++ g_task_start_task_thread ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ fun:g_malloc ++ fun:g_slice_alloc ++ fun:g_slice_alloc0 ++ ... ++ fun:g_thread_pool_push ++ fun:g_task_start_task_thread ++} ++{ ++ g_task_to_pool ++ Memcheck:Leak ++ ... ++ fun:g_thread_pool_start_thread ++ ... ++ fun:g_task_run_in_thread ++} ++{ ++ g_get_language_names ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:calloc ++ fun:g_malloc0 ++ fun:g_get_language_names ++} ++{ ++ g_get_filename_charsets ++ Memcheck:Leak ++ match-leak-kinds: definite ++ ... ++ fun:g_get_filename_charsets ++ fun:g_filename_display_name ++} ++{ ++ g_main_current_source ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ fun:g_malloc ++ ... ++ fun:g_main_current_source ++ fun:g_task_return ++ fun:g_task_thread_pool_thread ++} ++{ ++ g_once_init_enter ++ Memcheck:Leak ++ match-leak-kinds: definite ++ ... ++ fun:g_once_init_enter ++} ++{ ++ g_child_watch_source_new ++ Memcheck:Leak ++ match-leak-kinds: definite ++ ... ++ fun:g_thread_new ++ ... ++ fun:g_child_watch_source_new ++} ++{ ++ continue_writing_in_idle_cb ++ Memcheck:Leak ++ match-leak-kinds: definite ++ ... ++ fun:g_task_new ++ ... ++ fun:continue_writing_in_idle_cb ++ fun:g_main_context_dispatch ++} ++{ ++ g_main_current_source ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ ... ++ fun:g_main_current_source ++} ++{ ++ g_thread_pool_push ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ ... ++ fun:g_thread_pool_push ++} ++{ ++ leak_test_dbus_dispose ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ ... ++ fun:g_main_loop_run ++ fun:g_test_dbus_down ++} ++{ ++ leak_test_dbus_down ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:calloc ++ fun:g_malloc0 ++ fun:g_main_loop_new ++ fun:g_test_dbus_down ++} ++{ ++ leak_socket_client_connect ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ fun:g_malloc ++ fun:g_slice_alloc ++ fun:g_slice_alloc0 ++ fun:g_socket_client_connect_async ++ fun:g_socket_client_connect_to_uri_async ++} ++{ ++ leak_signal_handlers_disconnect_matched ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:calloc ++ fun:g_malloc0 ++ ... ++ fun:g_slice_alloc ++ ... ++ fun:g_signal_handlers_disconnect_matched ++} ++{ ++ g_tls_connection_gnutls_init_priorities ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ fun:g_malloc ++ fun:g_strdup ++ fun:g_tls_connection_gnutls_init_priorities ++} ++{ ++ g_tls_connection_gnutls_heisenbug_likely_same_as_above ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ fun:g_malloc ++ fun:g_strdup ++ ... ++ fun:g_tls_client_connection_new ++} ++{ ++ g_unix_signal_add_full ++ Memcheck:Leak ++ match-leak-kinds: definite ++ fun:malloc ++ fun:g_malloc ++ ... ++ fun:g_thread_new ++ ... ++ fun:g_unix_signal_add_full ++} ++{ ++ glib_worker_1 ++ Memcheck:Leak ++ ... ++ fun:glib_worker_main ++} ++{ ++ glib_worker_2 ++ Memcheck:Leak ++ ... ++ fun:g_thread_new ++ fun:g_get_worker_context ++} +diff --git a/tests/ostree.supp b/tests/ostree.supp +new file mode 100644 +index 0000000..b81ea51 +--- /dev/null ++++ b/tests/ostree.supp +@@ -0,0 +1 @@ ++# Use this to suppress "possibly lost" for global statics +diff --git a/tests/test-core.js b/tests/test-core.js +new file mode 100644 +index 0000000..e9ace6e +--- /dev/null ++++ b/tests/test-core.js +@@ -0,0 +1,55 @@ ++#!/usr/bin/env gjs ++// ++// Copyright (C) 2013 Colin Walters ++// ++// This library is free software; you can redistribute it and/or ++// modify it under the terms of the GNU Lesser General Public ++// License as published by the Free Software Foundation; either ++// version 2 of the License, or (at your option) any later version. ++// ++// This library 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. See the GNU ++// Lesser General Public License for more details. ++// ++// You should have received a copy of the GNU Lesser General Public ++// License along with this library; if not, write to the ++// Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++// Boston, MA 02111-1307, USA. ++ ++const Gio = imports.gi.Gio; ++const OSTree = imports.gi.OSTree; ++ ++function assertEquals(a, b) { ++ if (a != b) ++ throw new Error("assertion failed " + JSON.stringify(a) + " == " + JSON.stringify(b)); ++} ++ ++let testDataDir = Gio.File.new_for_path('test-data'); ++testDataDir.make_directory(null); ++testDataDir.get_child('some-file').replace_contents("hello world!", null, false, 0, null); ++ ++let repoPath = Gio.File.new_for_path('repo'); ++let repo = OSTree.Repo.new(repoPath); ++repo.create(OSTree.RepoMode.ARCHIVE_Z2, null); ++ ++repo.open(null); ++ ++assertEquals(repo.get_mode(), OSTree.RepoMode.ARCHIVE_Z2); ++ ++repo.prepare_transaction(null); ++ ++let mtree = OSTree.MutableTree.new(); ++repo.write_directory_to_mtree(testDataDir, mtree, null, null); ++let [,dirTree] = repo.write_mtree(mtree, null); ++let [,commit] = repo.write_commit(null, 'Some subject', 'Some body', null, dirTree, null); ++print("commit => " + commit); ++ ++repo.commit_transaction(null, null); ++ ++let [,root,checksum] = repo.read_commit(commit, null); ++let child = root.get_child('some-file'); ++let info = child.query_info("standard::name,standard::type,standard::size", 0, null); ++assertEquals(info.get_size(), 12); ++ ++print("test-core complete"); +diff --git a/tests/test-corruption.sh b/tests/test-corruption.sh +new file mode 100755 +index 0000000..ef0e94e +--- /dev/null ++++ b/tests/test-corruption.sh +@@ -0,0 +1,43 @@ ++#!/bin/bash ++# ++# Copyright (C) 2011 Colin Walters ++# ++# This library is free software; you can redistribute it and/or ++# modify it under the terms of the GNU Lesser General Public ++# License as published by the Free Software Foundation; either ++# version 2 of the License, or (at your option) any later version. ++# ++# This library 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. See the GNU ++# Lesser General Public License for more details. ++# ++# You should have received a copy of the GNU Lesser General Public ++# License along with this library; if not, write to the ++# Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++# Boston, MA 02111-1307, USA. ++ ++set -euo pipefail ++ ++echo "1..2" ++ ++. $(dirname $0)/libtest.sh ++ ++setup_test_repository "bare" ++$OSTREE checkout test2 checkout-test2 ++cd checkout-test2 ++chmod o+x firstfile ++$OSTREE fsck -q && (echo 1>&2 "fsck unexpectedly succeeded"; exit 1) ++chmod o-x firstfile ++$OSTREE fsck -q ++ ++echo "ok chmod" ++ ++cd ${test_tmpdir} ++rm checkout-test2 -rf ++$OSTREE checkout test2 checkout-test2 ++cd checkout-test2 ++chmod o+x firstfile ++$OSTREE fsck -q --delete && (echo 1>&2 "fsck unexpectedly succeeded"; exit 1) ++ ++echo "ok chmod" +diff --git a/tests/test-sizes.js b/tests/test-sizes.js +new file mode 100644 +index 0000000..5cf765f +--- /dev/null ++++ b/tests/test-sizes.js +@@ -0,0 +1,82 @@ ++#!/usr/bin/env gjs ++// ++// Copyright (C) 2013 Colin Walters ++// ++// This library is free software; you can redistribute it and/or ++// modify it under the terms of the GNU Lesser General Public ++// License as published by the Free Software Foundation; either ++// version 2 of the License, or (at your option) any later version. ++// ++// This library 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. See the GNU ++// Lesser General Public License for more details. ++// ++// You should have received a copy of the GNU Lesser General Public ++// License along with this library; if not, write to the ++// Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++// Boston, MA 02111-1307, USA. ++ ++const GLib = imports.gi.GLib; ++const Gio = imports.gi.Gio; ++const OSTree = imports.gi.OSTree; ++ ++function assertEquals(a, b) { ++ if (a != b) ++ throw new Error("assertion failed " + JSON.stringify(a) + " == " + JSON.stringify(b)); ++} ++ ++let testDataDir = Gio.File.new_for_path('test-data'); ++testDataDir.make_directory(null); ++testDataDir.get_child('some-file').replace_contents("hello world!", null, false, 0, null); ++testDataDir.get_child('another-file').replace_contents("hello world again!", null, false, 0, null); ++ ++let repoPath = Gio.File.new_for_path('repo'); ++let repo = OSTree.Repo.new(repoPath); ++repo.create(OSTree.RepoMode.ARCHIVE_Z2, null); ++ ++repo.open(null); ++ ++let commitModifier = OSTree.RepoCommitModifier.new(OSTree.RepoCommitModifierFlags.GENERATE_SIZES, null); ++ ++assertEquals(repo.get_mode(), OSTree.RepoMode.ARCHIVE_Z2); ++ ++repo.prepare_transaction(null); ++ ++let mtree = OSTree.MutableTree.new(); ++repo.write_directory_to_mtree(testDataDir, mtree, commitModifier, null); ++let [,dirTree] = repo.write_mtree(mtree, null); ++let [,commit] = repo.write_commit(null, 'Some subject', 'Some body', null, dirTree, null); ++print("commit => " + commit); ++ ++repo.commit_transaction(null, null); ++ ++// Test the sizes metadata ++let [,commitVariant] = repo.load_variant(OSTree.ObjectType.COMMIT, commit); ++let metadata = commitVariant.get_child_value(0); ++let sizes = metadata.lookup_value('ostree.sizes', GLib.VariantType.new('aay')); ++let nSizes = sizes.n_children(); ++assertEquals(nSizes, 2); ++let expectedUncompressedSizes = [12, 18]; ++let foundExpectedUncompressedSizes = 0; ++for (let i = 0; i < nSizes; i++) { ++ let sizeEntry = sizes.get_child_value(i).deep_unpack(); ++ assertEquals(sizeEntry.length, 34); ++ let compressedSize = sizeEntry[32]; ++ let uncompressedSize = sizeEntry[33]; ++ print("compressed = " + compressedSize); ++ print("uncompressed = " + uncompressedSize); ++ for (let j = 0; j < expectedUncompressedSizes.length; j++) { ++ let expected = expectedUncompressedSizes[j]; ++ if (expected == uncompressedSize) { ++ print("Matched expected uncompressed size " + expected); ++ expectedUncompressedSizes.splice(j, 1); ++ break; ++ } ++ } ++} ++if (expectedUncompressedSizes.length > 0) { ++ throw new Error("Failed to match expectedUncompressedSizes: " + JSON.stringify(expectedUncompressedSizes)); ++} ++ ++print("test-sizes complete"); +diff --git a/tests/test-sysroot.js b/tests/test-sysroot.js +new file mode 100644 +index 0000000..7e8fcf7 +--- /dev/null ++++ b/tests/test-sysroot.js +@@ -0,0 +1,147 @@ ++#!/usr/bin/env gjs ++// ++// Copyright (C) 2013 Colin Walters ++// ++// This library is free software; you can redistribute it and/or ++// modify it under the terms of the GNU Lesser General Public ++// License as published by the Free Software Foundation; either ++// version 2 of the License, or (at your option) any later version. ++// ++// This library 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. See the GNU ++// Lesser General Public License for more details. ++// ++// You should have received a copy of the GNU Lesser General Public ++// License along with this library; if not, write to the ++// Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++// Boston, MA 02111-1307, USA. ++ ++const GLib = imports.gi.GLib; ++const Gio = imports.gi.Gio; ++const OSTree = imports.gi.OSTree; ++ ++function assertEquals(a, b) { ++ if (a != b) ++ throw new Error("assertion failed " + JSON.stringify(a) + " == " + JSON.stringify(b)); ++} ++ ++function assertNotEquals(a, b) { ++ if (a == b) ++ throw new Error("assertion failed " + JSON.stringify(a) + " != " + JSON.stringify(b)); ++} ++ ++function libtestExec(shellCode) { ++ let testdatadir = GLib.getenv("G_TEST_SRCDIR"); ++ let libtestPath = GLib.build_filenamev([testdatadir, 'libtest.sh']) ++ let proc = Gio.Subprocess.new(['bash', '-c', 'set -xeuo pipefail; . ' + GLib.shell_quote(libtestPath) + '; ' + shellCode], 0); ++ proc.wait_check(null); ++} ++ ++libtestExec('setup_os_repository archive-z2 syslinux'); ++ ++let upstreamRepo = OSTree.Repo.new(Gio.File.new_for_path('testos-repo')); ++upstreamRepo.open(null); ++ ++let runtimeRef = 'testos/buildmaster/x86_64-runtime'; ++let [,rev] = upstreamRepo.resolve_rev(runtimeRef, false); ++ ++print("testos => " + rev); ++ ++//// TEST: We should have no deployments ++ ++let sysroot = OSTree.Sysroot.new(Gio.File.new_for_path('sysroot')); ++sysroot.load(null); ++let deployments = sysroot.get_deployments(); ++assertEquals(deployments.length, 0); ++ ++//// Add the remote, and do a pull ++ ++let [,sysrootRepo] = sysroot.get_repo(null); ++sysrootRepo.remote_add('testos', 'file://' + upstreamRepo.get_path().get_path(), ++ GLib.Variant.new('a{sv}', {'gpg-verify': GLib.Variant.new('b', false), ++ 'branches': GLib.Variant.new('as', [runtimeRef])}), null); ++sysrootRepo.pull('testos', null, 0, null, null); ++ ++//// TEST: We can deploy one tree ++ ++let mergeDeployment = sysroot.get_merge_deployment('testos'); ++ ++let origin = sysroot.origin_new_from_refspec(runtimeRef); ++let [,deployment] = sysroot.deploy_tree('testos', rev, origin, ++ mergeDeployment, null, ++ null); ++let newDeployments = deployments; ++deployments = null; ++newDeployments.unshift(deployment); ++sysroot.write_deployments(newDeployments, null); ++deployments = sysroot.get_deployments(); ++assertEquals(deployments.length, newDeployments.length); ++assertEquals(deployments[0].get_csum(), deployment.get_csum()); ++ ++let deploymentPath = sysroot.get_deployment_directory(deployment); ++assertEquals(deploymentPath.query_exists(null), true); ++ ++print("OK one deployment"); ++ ++/// TEST: We can delete the deployment, going back to empty ++sysroot.write_deployments([], null); ++ ++print("OK empty deployments"); ++ ++assertEquals(deploymentPath.query_exists(null), false); ++ ++//// Ok, redeploy, then add a new revision upstream and pull it ++ ++let [,deployment] = sysroot.deploy_tree('testos', rev, origin, ++ mergeDeployment, null, ++ null); ++newDeployments = deployments; ++deployments = null; ++newDeployments.unshift(deployment); ++print(JSON.stringify(newDeployments)); ++sysroot.write_deployments(newDeployments, null); ++ ++libtestExec('os_repository_new_commit'); ++ ++sysrootRepo.pull('testos', null, 0, null, null); ++ ++let [,newRev] = upstreamRepo.resolve_rev(runtimeRef, false); ++ ++print("testos => " + newRev); ++assertNotEquals(rev, newRev); ++ ++mergeDeployment = sysroot.get_merge_deployment('testos'); ++assertEquals(mergeDeployment.get_csum(), deployment.get_csum()); ++let [,newDeployment] = sysroot.deploy_tree('testos', newRev, origin, ++ mergeDeployment, null, ++ null); ++newDeployments = [newDeployment, mergeDeployment]; ++assertNotEquals(mergeDeployment.get_bootcsum(), newDeployment.get_bootcsum()); ++assertNotEquals(mergeDeployment.get_csum(), newDeployment.get_csum()); ++sysroot.write_deployments(newDeployments, null); ++deployments = sysroot.get_deployments(); ++assertEquals(deployments.length, 2); ++assertEquals(deploymentPath.query_exists(null), true); ++let newDeploymentPath = sysroot.get_deployment_directory(newDeployment); ++assertEquals(newDeploymentPath.query_exists(null), true); ++ ++print("OK two deployments"); ++ ++libtestExec('os_repository_new_commit 0 1'); ++ ++sysrootRepo.pull('testos', null, 0, null, null); ++ ++let [,thirdRev] = sysrootRepo.resolve_rev(runtimeRef, false); ++assertNotEquals(newRev, thirdRev); ++ ++mergeDeployment = sysroot.get_merge_deployment('testos'); ++let [,thirdDeployment] = sysroot.deploy_tree('testos', thirdRev, origin, ++ mergeDeployment, null, ++ null); ++assertEquals(mergeDeployment.get_bootcsum(), thirdDeployment.get_bootcsum()); ++assertNotEquals(mergeDeployment.get_csum(), thirdDeployment.get_csum()); ++newDeployments = [deployment, newDeployment, thirdDeployment]; ++sysroot.write_deployments(newDeployments, null); ++deployments = sysroot.get_deployments(); ++assertEquals(deployments.length, 3); diff --git a/patches/series b/patches/series new file mode 100644 index 00000000..0b5a666d --- /dev/null +++ b/patches/series @@ -0,0 +1,3 @@ +Terminate-individual-tests-after-half-an-hour.patch +dist/Retrieve-some-missing-test-files-from-upstream-git.patch +Filter-bootloader-supplied-kernel-cmdline-options.patch diff --git a/rules b/rules new file mode 100755 index 00000000..a0edd3e4 --- /dev/null +++ b/rules @@ -0,0 +1,74 @@ +#!/usr/bin/make -f + +export DEB_BUILD_MAINT_OPTIONS = hardening=+all +export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed +# Some tests assert that we will see English strings +export LC_ALL=C.UTF-8 + +%: + dh $@ --with=gir + +override_dh_auto_clean: + if [ -e Makefile ]; then dh_auto_clean; fi + +override_dh_autoreconf: + env NOCONFIGURE=1 dh_autoreconf ./autogen.sh + +override_dh_auto_configure: + dh_auto_configure -- \ + --disable-silent-rules \ + --enable-gtk-doc \ + --enable-installed-tests \ + --libexecdir='$${prefix}/lib' \ + --with-dracut \ + --with-grub2 \ + --with-grub2-mkconfig-path=/usr/sbin/grub-mkconfig \ + --with-systemdsystemunitdir=/lib/systemd/system \ + $(NULL) + chmod +x tests/*.js + chmod +x tests/*.sh + +override_dh_auto_test: + debian/test.sh + +override_dh_auto_install: + dh_auto_install + # docbook-xsl capitalizes the whole heading, including the macro + # used to represent a single quote... https://bugs.debian.org/821235 + sed -i -e 's,\*(AQ,*(Aq,g' \ + debian/tmp/usr/share/man/man1/ostree-remote.1 \ + debian/tmp/usr/share/man/man1/ostree-static-delta.1 \ + $(NULL) + +override_dh_install: + rm -f debian/tmp/usr/lib/*/*.la + rm -f debian/tmp/usr/lib/installed-tests/ostree/*.la + : + # FIXME: when someone documents how to test these (#824649) they + # should be installed in a new ostree-boot package: see + # debian/ostree-boot.* and https://bugs.debian.org/824650 + rm -f debian/tmp/etc/dracut.conf.d/ostree.conf + rm -f debian/tmp/etc/grub.d/15_ostree + rm -f debian/tmp/lib/systemd/system/ostree-prepare-root.service + rm -f debian/tmp/lib/systemd/system/ostree-remount.service + rm -fr debian/tmp/usr/lib/dracut/modules.d/98ostree/ + rm -f debian/tmp/usr/lib/ostree/grub2-15_ostree + rm -f debian/tmp/usr/lib/ostree/ostree-prepare-root + rm -f debian/tmp/usr/lib/ostree/ostree-remount + : + dh_install --fail-missing + +override_dh_makeshlibs: + # this is an LD_PRELOAD, not a real shared library + dh_makeshlibs -Xinstalled-tests/ostree/libreaddir-rand.so + +override_dh_fixperms-arch: + dh_fixperms -X'*.js' + chmod -v 0755 debian/ostree-tests/usr/lib/installed-tests/ostree/*.js + chmod -v 0755 debian/ostree-tests/usr/lib/installed-tests/ostree/*.py + chmod -v 0755 debian/ostree-tests/usr/lib/installed-tests/ostree/*.sh + # this one is a library, not a script + chmod -v 0644 debian/ostree-tests/usr/lib/installed-tests/ostree/libtest.sh + +override_dh_systemd_start: + dh_systemd_start --no-start diff --git a/source/format b/source/format new file mode 100644 index 00000000..163aaf8d --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/test.sh b/test.sh new file mode 100755 index 00000000..dc8eed28 --- /dev/null +++ b/test.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +set -e + +ignore= + +case "$DEB_HOST_ARCH" in + (mipsel) + ignore=yes + ;; +esac + +export VERBOSE=1 + +try_tests=5 + +failed=0 +make check || failed=1 + +if [ "$failed" -gt 0 ] || [ -n "$ignore" ]; then + [ "$failed" -eq 0 ] || echo "Test failed! Checking how reproducible it is..." + for i in $(seq 1 "$(( $try_tests - 1 ))"); do + if ! make check; then + failed=$(( $failed + 1 )) + fi + done +fi + +pkill --full "gpg-agent --homedir /var/tmp/tap-test\\.[^/]+/.*" || : + +if pgrep lt-ostree || pgrep --full "gpg-agent --homedir /var/tmp/tap-test."; then \ + echo "WARNING: daemon processes were leaked" + pgrep gpg-agent | xargs --no-run-if-empty ps ww + pgrep lt-ostree | xargs --no-run-if-empty ps ww +fi + +if [ "$failed" -gt 0 ]; then + echo "Failed $failed out of $try_tests test runs" + if [ -z "$ignore" ]; then + exit 1 + else + echo "Ignoring test failure for this architecture" + fi +fi + +exit 0 + +# vim:set et sw=4 sts=4: diff --git a/tests/build b/tests/build new file mode 100755 index 00000000..594e4f77 --- /dev/null +++ b/tests/build @@ -0,0 +1,22 @@ +#!/bin/sh + +set -e +exec 2>&1 +set -x + +cd "$ADTTMP" + +cat > trivial.c < + +int main (void) +{ + g_object_unref (ostree_repo_new_default ()); + return 0; +} +EOF + +gcc -o trivial trivial.c $(pkg-config --cflags --libs ostree-1 gobject-2.0) +test -x trivial +./trivial +echo "ok 3 run it" diff --git a/tests/control b/tests/control new file mode 100644 index 00000000..88ffde7f --- /dev/null +++ b/tests/control @@ -0,0 +1,5 @@ +Tests: gnome-desktop-testing +Depends: gnome-desktop-testing, ostree-tests + +Tests: build +Depends: build-essential, libostree-dev, pkg-config diff --git a/tests/gnome-desktop-testing b/tests/gnome-desktop-testing new file mode 100755 index 00000000..e3015ccb --- /dev/null +++ b/tests/gnome-desktop-testing @@ -0,0 +1,6 @@ +#!/bin/sh + +set -e +exec 2>&1 + +exec gnome-desktop-testing-runner ostree diff --git a/watch b/watch new file mode 100644 index 00000000..0d9ef4e8 --- /dev/null +++ b/watch @@ -0,0 +1,2 @@ +version=4 +https://github.com/ostreedev/ostree/releases .*/ostree-(\d\S*)\.tar\.xz