Skip to content
Snippets Groups Projects
  1. Dec 30, 2019
  2. Nov 14, 2019
  3. Oct 17, 2019
    • Joey Hess's avatar
      deal with flakey hdiutil · b02bf9f0
      Joey Hess authored
      hdiutil create -format UDBZ -size 640m -srcfolder tmp/build-dmg \
      		-volname git-annex -o tmp/git-annex.dmg
      hdiutil: create failed - Resource busy
      
      Sometimes it has failed this way for weeks until reboot. Sometimes a single
      retry makes it work. Despite many reports of this problem, I have never
      found for an explanation for it, other than <shrug> OSX.
      b02bf9f0
    • Joey Hess's avatar
      OSX: Deal with symbolic link problem that caused git to not be included in the git-annex.dmg · 5463f97c
      Joey Hess authored
      Homebrew now has eg:
      
      datalads-imac:~ joey$ ls -l /Users/joey/homebrew/Cellar/git/2.23.0/libexec/git-core
      total 36776
      lrwxr-xr-x   1 joey  staff       13 Aug 29 13:38 git -> ../../bin/git
      lrwxr-xr-x   1 joey  staff       13 Aug 29 13:38 git-add -> ../../bin/git
      
      So the target of the symlink also needs to be installed now.
      
      Doing it in shell code was too hairy for my dentistry-addled brain, so
      reimplemented in haskell. Also using it for building linuxstandalone.
      5463f97c
  4. Sep 13, 2019
    • Joey Hess's avatar
      building a standalone rpm from the standalone tarball · 45081985
      Joey Hess authored
      This allows the rpm to be built anywhere the necessary build deps are
      available (including on debian) and the resulting package will work on as
      broad a range of rpm distributions as the libc/kernel supports.
      
      The DistributionUpdate changes to use the new script have not yet been
      tested.
      45081985
  5. Aug 16, 2019
    • Joey Hess's avatar
      Makefile: Changed default zsh completion location to zsh default fpath. · 7f975759
      Joey Hess authored
      Systems such as Debian that have overridden the default fpath will need to
      set ZSH_COMPLETIONS_PATH.
      
      I feel that Debian is causing unncessary complexity by making this change,
      and have filed a bug report about it.
      
      This also means that when git-annex is installed with PREFIX=/usr/local
      it will use /usr/local/share/zsh/site-functions which works with probably
      all versions of zsh.
      7f975759
    • Joey Hess's avatar
      simplify · e03919bd
      Joey Hess authored
      git-annex build-depends on a new enough optparse-applicative that zsh
      and fish completions will always be generated
      e03919bd
    • Joey Hess's avatar
      add missing build dep of install-completions · b532d694
      Joey Hess authored
      Since it runs git-annex to generate the completions files.
      b532d694
    • Joey Hess's avatar
      use GHC not ghc · 83cdc511
      Joey Hess authored
      83cdc511
  6. Jun 26, 2019
  7. May 08, 2019
  8. Mar 18, 2019
  9. Feb 13, 2019
    • Joey Hess's avatar
      fix tags generation · 53e98aeb
      Joey Hess authored
      The location of the cabal_macros.h file has changed. Also, need to
      tell hothasktags about language extensions that are enabled by default
      in the cabal file.
      
      This commit was sponsored by Thomas May.
      53e98aeb
  10. Nov 21, 2018
  11. Oct 13, 2018
    • Joey Hess's avatar
      removed the old Android app · 38d691a1
      Joey Hess authored
      Running git-annex linux builds in termux seems to work well enough that the
      only reason to keep the Android app would be to support Android 4-5, which
      the old Android app supported, and which I don't know if the termux method
      works on (although I see no reason why it would not).
      According to [1], Android 4-5 remains on around 29% of devices, down from
      51% one year ago.
      
      [1] https://www.statista.com/statistics/271774/share-of-android-platforms-on-mobile-devices-with-android-os/
      
      This is a rather large commit, but mostly very straightfoward removal of
      android ifdefs and patches and associated cruft.
      
      Also, removed support for building with very old ghc < 8.0.1, and with
      yesod < 1.4.3, and without concurrent-output, which were only being used
      by the cross build.
      
      Some documentation specific to the Android app (screenshots etc) needs
      to be updated still.
      
      This commit was sponsored by Brett Eisenberg on Patreon.
      38d691a1
  12. Jul 10, 2018
    • Joey Hess's avatar
      deal with the persistent locpath issue · e8023230
      Joey Hess authored
      linux standalone: Generate locale files in ~/.cache/git-annex/locales/ so
      they're available even when the standalone tarball is installed in a
      directory owned by root.
      
      This avoids a full-on reference counting cleanup hell, by letting old
      locale caches linger as long as the standalone bundle directory associated
      with them is still around. Old ones get cleaned up.
      
      In the case where the directory has a new bundle unpacked over top of it,
      the old locale cache is invalidated and rebuilt. Of course, running
      programs using that may get confused, but this was already the case, and
      unpacking over top of a bundle is probably not a good idea anyhow.
      
      To support that, added a buildid file, which only needs to be unique across
      builds of git-annex with different libc versions. sha1sum of git-annex
      seems good enough for that.
      
      Removed debian/patches/standalone-no-LOCPATH as it's no longer
      necessary.
      
      This commit was supported by the NSF-funded DataLad project.
      e8023230
  13. Jun 26, 2018
    • Joey Hess's avatar
      Make Build/BuildVersion update embedded version number · a1b55056
      Joey Hess authored
      This way, autobuilders can run it before building, in a tree where
      git-annex was already built, and get the current git rev embedded in the
      build.
      
      Before, the version number only updated when the setup program was run,
      which was up to cabal and not on every build.
      a1b55056
  14. Apr 16, 2018
  15. Feb 27, 2018
    • Joey Hess's avatar
      remove chrpath hack · 8f71b316
      Joey Hess authored
      Makefile: Remove chrpath workaround for bug in cabal,  which is no longer
      needed.
      
      https://github.com/haskell/cabal/issues/2717 says it uses RUNPATH instead
      of RPATH now, but I don't even see that for statically linked libraries;
      the bug with that appears to be fixed.
      
      cabal-install version 1.24.0.2
      compiled using version 1.24.2.0 of the Cabal library
      
      I left the rpath removal using otool on OSX because those straight up
      broke the linker, and I don't know if the OSX autobuilder is updated to
      a new enough cabal to not need it.
      
      This commit was sponsored by Ewen McNeill on Patreon.
      8f71b316
  16. Jan 15, 2018
    • Joey Hess's avatar
      avoid warning with current ghc · 66c377bf
      Joey Hess authored
      Seems that the cabal macros file is no longer needed to build
      DistributionUpdate, and it produced a ton of warnings, so stop including
      manually.
      66c377bf
  17. Dec 20, 2017
    • Joey Hess's avatar
      Removed the testsuite build flag · 79857d7e
      Joey Hess authored
      Test suite is always included.
      
      Building with this flag disabled has actually been broken for some time,
      since Command.TestRemote uses tasty. Fewer build flags are better, so good
      time to drop it.
      
      This commit was sponsored by Thomas Hochstein on Patreon.
      79857d7e
  18. Dec 14, 2017
    • Joey Hess's avatar
      fold Build/SysConfig.hs into BuildInfo via include · 308cd138
      Joey Hess authored
      This avoids warnings from stack about the module not being listed in the
      cabal file. So, the generated file is also renamed to Build/SysConfig.
      
      Note that the setup program seems to be cached despite these changes; I
      had to cabal clean to get cabal to update it so that Build/SysConfig was
      written.
      
      This commit was sponsored by Jochen Bartl on Patreon.
      308cd138
  19. Dec 11, 2017
  20. Nov 29, 2017
  21. Nov 07, 2017
  22. Sep 14, 2017
  23. Jul 12, 2017
  24. Jun 09, 2017
    • Joey Hess's avatar
      zsh and fish completions · 5cf72167
      Joey Hess authored
      optparse-applicative-0.14.0.0 adds support for these, so have the
      Makefile install their scripts when built with it.
      
      CmdLine/GitAnnex/Options.hs now uses action "file" in cmdParams,
      which affects the bash and zsh completions, letting them complete
      filenames for subcommands that use that. This is not needed for
      bash, since bash-completion.bash enables -o bashdefault, which
      lets it complete filenames too. But it does not seem to break the bash
      completions. It is needed for zsh; the zsh completion otherwise
      does not complete filenames. The fish completion will always complete
      filenames no matter what. Messy.
      
      This commit was sponsored by Denis Dzyubenko on Patreon.
      5cf72167
  25. May 16, 2017
    • Joey Hess's avatar
      run stack setup when building with stack · 5bbb17b8
      Joey Hess authored
      This gets ghc installed if it's not already.
      
      Motivation: Ævar's git test that runs git-annex test using git
      can be called with BUILDER=stack, but without stack setup being run
      sometime, the stack build will fail.
      5bbb17b8
  26. May 10, 2017
  27. Mar 18, 2017
  28. Mar 17, 2017
  29. Feb 28, 2017
  30. Feb 26, 2017
  31. Feb 24, 2017
    • Joey Hess's avatar
      add back a configure target · 02d3fbbd
      Joey Hess authored
      Otherwise, make reconfigures every time and then rebuilds all files.
      
      I went too far in 3af9f5ed. All that's
      needed is to make the configure target not use Build/SysConfig.hs as the
      target name, so make won't delete that file after a failed build.
      
      This commit was supported by the NSF-funded DataLad project
      02d3fbbd