Skip to content
Snippets Groups Projects
  1. Nov 07, 2021
    • Dan Callahan's avatar
      Minor cleanup to Debian packaging (#11269) · 9799c569
      Dan Callahan authored
      
      * Remove unused Vagrant scripts
      
      * Change package Architecture to any
      
      * Preinstall the wheel package when building venvs.
      
      Addresses the following warnings during Debian builds:
      
          Using legacy 'setup.py install' for jaeger-client, since package 'wheel' is not installed.
          Using legacy 'setup.py install' for matrix-synapse-ldap3, since package 'wheel' is not installed.
          Using legacy 'setup.py install' for opentracing, since package 'wheel' is not installed.
          Using legacy 'setup.py install' for psycopg2, since package 'wheel' is not installed.
          Using legacy 'setup.py install' for systemd-python, since package 'wheel' is not installed.
          Using legacy 'setup.py install' for pympler, since package 'wheel' is not installed.
          Using legacy 'setup.py install' for threadloop, since package 'wheel' is not installed.
          Using legacy 'setup.py install' for thrift, since package 'wheel' is not installed.
      
      * Allow /etc/default/matrix-synapse to be missing
      
      Per the systemd.exec manpage, prefixing an EnvironmentFile with "-":
      
      > indicates that if the file does not exist, it will not be read and no
      > error or warning message is logged.
      
      Signed-off-by: default avatarDan Callahan <danc@element.io>
      Unverified
      9799c569
  2. Jul 21, 2021
  3. Jan 15, 2021
    • Richard van der Hoff's avatar
      Remote dependency on distutils (#9125) · 9ffac2be
      Richard van der Hoff authored
      `distutils` is pretty much deprecated these days, and replaced with
      `setuptools`. It's also annoying because it's you can't `pip install` it, and
      it's hard to figure out which debian package we should depend on to make sure
      it's there.
      
      Since we only use it for a tiny function anyway, let's just vendor said
      function into our codebase.
      Unverified
      9ffac2be
  4. Jan 12, 2021
    • Dan Callahan's avatar
      Fix failures in Debian packaging (#9079) · fa6deb29
      Dan Callahan authored
      Debian package builds were failing for two reasons:
      
       1. Python versions prior to 3.7 throw exceptions when attempting to print
          Unicode characters under a "C" locale. (#9076)
      
       2. We depended on `dh-systemd` which no longer exists in Debian Bullseye, but
          is necessary in Ubuntu Xenial. (#9073)
      
      Setting `LANG="C.UTF-8"` in the build environment fixes the first issue.
      See also: https://bugs.python.org/issue19846
      
      
      
      The second issue is a bit trickier. The dh-systemd package was merged into
      debhelper version 9.20160709 and a transitional package left in its wake.
      
      The transitional dh-systemd package was removed in Debian Bullseye.
      
      However, Ubuntu Xenial ships an older debhelper, and still needs dh-systemd.
      
      Thus, builds were failing on Bullseye since we depended on a package which had
      ceased existing, but we couldn't remove it from the debian/control file and our
      build scripts because we still needed it for Ubuntu Xenial.
      
      We can fix the debian/control issue by listing dh-systemd as an alternative to
      the newer versions of debhelper. Since dh-systemd declares that it depends on
      debhelper, Ubuntu Xenial will select its older dh-systemd which will in turn
      pull in its older debhelper, resulting in no change from the status quo. All
      other supported releases will satisfy the debhelper dependency constraint and
      skip the dh-systemd alternative.
      
      Build scripts were fixed by unconditionally attempting to install dh-systemd on
      all releases and suppressing failures.
      
      Once we drop support for Ubuntu Xenial, we can revert most of this commit and
      rely on the version constraint on debhelper in debian/control.
      
      Fixes #9076
      Fixes #9073
      
      Signed-off-by: default avatarDan Callahan <danc@element.io>
      Unverified
      fa6deb29
  5. Aug 15, 2019
  6. Jul 17, 2019
    • Richard van der Hoff's avatar
      Improve `Depends` specs in debian package. (#5675) · 1def2981
      Richard van der Hoff authored
      This is basically a contrived way of adding a `Recommends` on `libpq5`, to fix #5653.
      
      The way this is supposed to happen in debhelper is to run
      `dh_shlibdeps`, which in turn runs `dpkg-shlibdeps`, which spits things out
      into `debian/<package>.substvars` whence they can later be included by
      `control`.
      
      Previously, we had disabled `dh_shlibdeps`, mostly because `dpkg-shlibdeps`
      gets confused about PIL's interdependent objects, but that's not really the
      right thing to do and there is another way to work around that.
      
      Since we don't always use postgres, we don't necessarily want a hard Depends on
      libpq5, so I've actually ended up adding an explicit invocation of
      `dpkg-shlibdeps` for `psycopg2`.
      
      I've also updated the build-depends list for the package, which was missing a
      couple of entries.
      Unverified
      1def2981
  7. Jan 23, 2019
  8. Jan 11, 2019
  9. Jan 09, 2019
  10. Jan 04, 2019
  11. Jan 02, 2019
  12. Dec 20, 2018
Loading