Skip to content
Snippets Groups Projects
  1. Sep 22, 2020
    • regnat's avatar
      Disable `FORTIFY_SOURCE` when compiling without optims · 97b51547
      regnat authored
      Otherwise the build is cluttered with
      
      ```
      /nix/store/fwpn2f7a4iqszyydw7ag61zlnp6xk5d3-glibc-2.30-dev/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
        382 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
            |    ^~~~~~~
      ```
      
      when building with `OPTIMIZE=0`
      97b51547
  2. Jun 24, 2020
  3. Jun 16, 2020
    • Eelco Dolstra's avatar
      StorePath: Rewrite in C++ · 759947bf
      Eelco Dolstra authored
      On nix-env -qa -f '<nixpkgs>', this reduces maximum RSS by 20970 KiB
      and runtime by 0.8%. This is mostly because we're not parsing the hash
      part as a hash anymore (just validating that it consists of base-32
      characters).
      
      Also, replace storePathToHash() by StorePath::hashPart().
      759947bf
  4. May 21, 2020
  5. May 13, 2020
  6. May 12, 2020
  7. May 10, 2020
  8. May 08, 2020
  9. May 06, 2020
  10. Apr 22, 2020
  11. Apr 07, 2020
    • Eelco Dolstra's avatar
      Backport libfetchers from the flakes branch · 462421d3
      Eelco Dolstra authored
      This provides a pluggable mechanism for defining new fetchers. It adds
      a builtin function 'fetchTree' that generalizes existing fetchers like
      'fetchGit', 'fetchMercurial' and 'fetchTarball'. 'fetchTree' takes a
      set of attributes, e.g.
      
        fetchTree {
          type = "git";
          url = "https://example.org/repo.git";
          ref = "some-branch";
          rev = "abcdef...";
        }
      
      The existing fetchers are just wrappers around this. Note that the
      input attributes to fetchTree are the same as flake input
      specifications and flake lock file entries.
      
      All fetchers share a common cache stored in
      ~/.cache/nix/fetcher-cache-v1.sqlite. This replaces the ad hoc caching
      mechanisms in fetchGit and download.cc (e.g. ~/.cache/nix/{tarballs,git-revs*}).
      
      This also adds support for Git worktrees (c169ea59).
      462421d3
  12. Apr 03, 2020
  13. Mar 30, 2020
  14. Nov 26, 2019
  15. Nov 07, 2019
  16. Jul 03, 2019
  17. Oct 26, 2018
  18. Mar 20, 2018
  19. Mar 14, 2018
  20. Feb 08, 2018
  21. Aug 20, 2017
    • Matthew Bauer's avatar
      Remove nix-mode.el from Nix. · 2c75945d
      Matthew Bauer authored
      This removes the file nix-mode.el from Nix. The file is now available within the
      repository https://github.com/NixOS/nix-mode.
      
      Fixes #662
      Fixes #1040
      Fixes #1054
      Fixes #1055
      Closes #1119
      Fixes #1419
      
      NOTE: all of the above should be fixed within NixOS/nix-mode. If one of those
      hasn’t please reopen within NixOS/nix-mode and not within NixOS/nix.
      2c75945d
  22. Feb 08, 2017
    • Tuomas Tynkkynen's avatar
      Include config.h implicitly with '-include config.h' in CFLAGS · 2cd46887
      Tuomas Tynkkynen authored
      Because config.h can #define things like _FILE_OFFSET_BITS=64 and not
      every compilation unit includes config.h, we currently compile half of
      Nix with _FILE_OFFSET_BITS=64 and other half with _FILE_OFFSET_BITS
      unset. This causes major havoc with the Settings class on e.g. 32-bit ARM,
      where different compilation units disagree with the struct layout.
      
      E.g.:
      
      diff --git a/src/libstore/globals.cc b/src/libstore/globals.cc
      @@ -166,6 +166,8 @@ void Settings::update()
           _get(useSubstitutes, "build-use-substitutes");
      +    fprintf(stderr, "at Settings::update(): &useSubstitutes = %p\n", &nix::settings.useSubstitutes);
           _get(buildUsersGroup, "build-users-group");
      diff --git a/src/libstore/remote-store.cc b/src/libstore/remote-store.cc
      +++ b/src/libstore/remote-store.cc
      @@ -138,6 +138,8 @@ void RemoteStore::initConnection(Connection & conn)
       void RemoteStore::setOptions(Connection & conn)
       {
      +    fprintf(stderr, "at RemoteStore::setOptions(): &useSubstitutes = %p\n", &nix::settings.useSubstitutes);
           conn.to << wopSetOptions
      
      Gave me:
      
      at Settings::update(): &useSubstitutes = 0xb6e5c5cb
      at RemoteStore::setOptions(): &useSubstitutes = 0xb6e5c5c7
      
      That was not a fun one to debug!
      2cd46887
  23. Feb 07, 2017
  24. Jan 20, 2017
  25. Jan 16, 2017
  26. Nov 10, 2016
  27. Aug 13, 2016
  28. Aug 11, 2016
  29. Aug 09, 2016
    • Shea Levy's avatar
      nix-build: Port to c++ · 80ebc553
      Shea Levy authored
      This was a dumb line-for-line rewrite, because nix build/nix run/etc.
      will replace it.
      80ebc553
  30. Jun 01, 2016
  31. May 04, 2016
  32. Apr 25, 2016
  33. Apr 11, 2016
    • Eelco Dolstra's avatar
      Remove manifest support · 86796726
      Eelco Dolstra authored
      Manifests have been superseded by binary caches for years. This also
      gets rid of nix-pull, nix-generate-patches and bsdiff/bspatch.
      86796726
Loading