1. 19 May, 2019 5 commits
    • intrigeri's avatar
      auto/build: drop checks for conditions that are satisfied in supported build environments. · 54beec54
      intrigeri authored
       - isohybrid is available in our Vagrant build VMs. The manual build
         documentation is totally outdated and broken, nobody complained about it,
         which suggests nobody tried to follow it since 1+ years.
         And anyway, if isohybrid is not installed, the build will fail loudly
         later on.
       - $LB_BINARY_IMAGES is correctly set because auto/config passes
         "--binary-images iso" to "lb config". Checking it here brings no value and
         just makes things harder for anyone who would want to add support for other
         kinds of images.
       - It's been a while since we've stopped releasing source tarballs :) One can't
         reach auto/config via "rake build" if one is not building from Git, and
         building without rake is unsupported (good luck with that).
    • intrigeri's avatar
      Drop obsolete check for syslinux version. · 802aa8ae
      intrigeri authored
      This version requirement is satisfied by Jessie and I doubt Tails would build in
      anything older.
      And anyway, we now only support building in Vagrant, which guarantees us we have
      a recent enough syslinux installed.
    • intrigeri's avatar
      auto/build: clone more build output to the log file. · 21b397a9
      intrigeri authored
      Previously we would start cloning the output later in auto/build, because we
      needed to do a bunch of things first, until we could figure out what the name of
      the build log file was. This is not the case anymore and we can thus generate
      a more complete build log.
      A future improvement would be to move this to the Rakefile or to build-tails,
      but that's more involved and I'm after low-risk, easy incremental improvements
      at the moment.
    • intrigeri's avatar
      auto/build: drop support for GnuPG 1.x. · de3c8090
      intrigeri authored
      Our Vagrant build boxes are all Stretch nowadays.
    • intrigeri's avatar
      auto/{build,config}: prefix informational message with "I: " · bca6a4c8
      intrigeri authored
      This will help understand, while looking at a build failure log, what's an
      informational message we've intentionally printed vs. what's additional info (or
      noise) produced by tools we call.
      This convention is used in many Debian things and in some of our
      own source code already.
  2. 11 Feb, 2019 1 commit
    • intrigeri's avatar
      Limit the memory used by mksquashfs to 512M (refs: #16177) · 1435cb75
      intrigeri authored
      By default mksquashfs will use 25% of the physical memory. So when we use the
      "ram" build option, build in a VM with 13GB of RAM, of which up to 12G is
      supposed to be used by the build tmpfs, mksquashfs will try using 13/4 = 3.25G
      of memory. And then it will get reaped by the OOM killer more or less
      occasionally depending on how much space is really used in the build tmpfs and
      how much memory the rest of the system is using. So let's limit the memory
      used by mksquashfs to 50% of the memory we allocate to the build VM,
      excluding the part of it that we expect tmpfs data to fill.
      In passing, the fact mksquashfs does not get killed every time suggests that our
      current BUILD_SPACE_REQUIREMENT value exceeds the real needs of a build: a value
      around 10 or 11G should be enough. But that will be for another commit.
  3. 15 Dec, 2018 1 commit
  4. 27 Nov, 2018 9 commits
  5. 14 Aug, 2018 1 commit
  6. 27 Feb, 2018 2 commits
  7. 10 Nov, 2017 2 commits
    • intrigeri's avatar
      auto/build: normalize file timestamps in wiki/src before building (refs: #14933) · 0a484302
      intrigeri authored
      The copy of the website included in the ISO image has "Posted" timestamps that
      apparently match when we cloned the Git repository. This is expected since we
      build the website with the rcs setting disabled. Normalizing timestamps before
      building should fix this.
      What's surprising though is that only a few pages seem to be affected, while
      I would expect that all inlined pages without an explicit meta date should
      trigger the exact same problem. But anyway, normalizing mtime should fix it
      everywhere, so if it works, let's not bother investigating this further.
      One potential drawback of this commit is that it may make it harder to refresh
      an older, cached build of the website when we reintroduce this option in the
      future:  ikiwiki will have a hard time knowing which pages it should refresh.
      We'll see.
    • intrigeri's avatar
      auto/build: make list of directories more "git diff"-friendly. · dff0923b
      intrigeri authored
      This should be a no-op change.
  8. 20 Oct, 2017 1 commit
  9. 04 Sep, 2017 1 commit
  10. 02 Sep, 2017 1 commit
    • intrigeri's avatar
      Merge base branch earlier, i.e. in auto/config instead of auto/build (refs: #14459). · 7396e42e
      intrigeri authored
      Previously, a given build from a topic branch would mix inconsistent versions
      of things. Most changes done in $topic_branch..$base_branch would be taken into
      account, but some would not, e.g. changes that affect:
       * everything we set up in auto/config, such as
          - copying tails-transform-mirror-url,
          - APT snapshots
          - debian/changelog, used by `apt-snapshots-serials prepare-build'
       * auto/build
      In practice, we've been suffering from some consequences of this problem
       * ISO build failed on documentation branches based on master;
       * topic branches fail to build building once the APT snapshots they encode
         disappears, even though their base branch encodes newer & valid APT
      This commit implements a cheap and partial fix: as stated on
      https://labs.riseup.net/code/issues/14459, the base branch merge still happens
      too late e.g. to take into account auto/config changes done in
      $topic_branch..$base_branch. Ideally we should do the base branch merge first
      thing in the build process, in a manner that's isolated from other build steps,
      so that *all* build code except the tiny script that performs the merge will be
      in the correct state.
  11. 22 May, 2017 1 commit
  12. 17 May, 2017 1 commit
  13. 17 Apr, 2017 1 commit
  14. 16 Apr, 2017 1 commit
  15. 16 Mar, 2017 5 commits
  16. 15 Mar, 2017 3 commits
  17. 14 Mar, 2017 3 commits
  18. 20 Dec, 2016 1 commit