diff options
| author | Ralph Amissah <ralph.amissah@gmail.com> | 2024-12-02 19:06:00 -0500 | 
|---|---|---|
| committer | Ralph Amissah <ralph.amissah@gmail.com> | 2024-12-02 19:06:11 -0500 | 
| commit | 115001db9ca4382c4ddfea3a636bde30abe5c459 (patch) | |
| tree | 25593bb6548d97744d3c64c32e83ee8fd7ca1709 | |
| parent | nix dlang overlay ldc-1.39.0 (diff) | |
nix build houskeeping, version updates, incl. dmd & dub
| -rw-r--r-- | .envrc-nix | 4 | ||||
| -rw-r--r-- | README | 14 | ||||
| -rw-r--r-- | flake.lock | 12 | ||||
| -rw-r--r-- | flake.nix | 12 | ||||
| -rw-r--r-- | nix-overlays/dmd/default.nix | 6 | ||||
| -rw-r--r-- | nix-overlays/dmd/generic.nix | 17 | ||||
| -rw-r--r-- | nix-overlays/dub/default.nix | 4 | ||||
| -rw-r--r-- | org/dlang-nix-flakes.org | 87 | ||||
| -rwxr-xr-x | shell.nix | 2 | 
9 files changed, 115 insertions, 43 deletions
@@ -1,7 +1,7 @@  NIX_ENFORCE_PURITY=1  # - https://github.com/nix-community/nix-direnv -NixDirEnvVersion="3.0.4" -NixDirEnvSHA="sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4=" +NixDirEnvVersion="3.0.6" +NixDirEnvSHA="sha256-RYcUJaRMf8oF5LznDrlCXbkOQrywm0HDv1VjYGaJGdM="  if ! has nix_direnv_version || ! nix_direnv_version ${NixDirEnvVersion}; then    source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/${NixDirEnvVersion}/direnvrc" "${NixDirEnvSHA}"  fi @@ -36,10 +36,10 @@ nix control files  nix overlays for (updates nixpkgs, more recent versions of):    - ldc     ( 1.30.0 -> 1.39.0 ) -  - dub     ( 1.23.0 -> 1.36.0 ) [for nix versions 1.31.0 ... 1.33.0 broken] +  - dub     ( 1.23.0 -> 1.38.1 ) [for nix versions 1.31.0 ... 1.33.0 broken]    - dtools  ( 2.095.1 -> 2.103.1 ) -  - dmd     ( 2.100.2 -> 2.109.0 ) +  - dmd     ( 2.100.2 -> 2.109.1 )    - gdc     [not yet available]  (updates nixpkgs circa 2023-05-12) @@ -85,14 +85,14 @@ search nixpkgs here:  - version in nixpkgs:    - https://search.nixos.org/packages?channel=unstable&show=ldc&from=0&size=100&sort=relevance&type=packages&query=ldc -*** dmd OK ✓ ( 2.100.2 -> 2.109.0 ) +*** dmd OK ✓ ( 2.100.2 -> 2.109.1 )  - https://dlang.org/    - https://wiki.dlang.org/LDC  - https://github.com/dlang/dmd    - https://github.com/dlang/dmd/tags -    nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.109.0.tar.gz +    nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.109.1.tar.gz    - https://github.com/dlang/dmd/pulls  - version in nixpkgs: @@ -114,13 +114,13 @@ not yet provided in nixpkgs with gcc12, no attempt made  - https://github.com/D-Programming-GDC/gdc  ** build tool -*** dub ( 1.23.0 -> 1.36.0 ) +*** dub ( 1.23.0 -> 1.38.1 )  - https://code.dlang.org/packages/dub  - https://github.com/dlang/dub    - https://github.com/dlang/dub/releases -    nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.36.0.tar.gz +    nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.38.1.tar.gz    - https://github.com/dlang/dub/issues  - version in nixpkgs: @@ -128,7 +128,7 @@ not yet provided in nixpkgs with gcc12, no attempt made  - dub nixpkg overlay is updated and runs most dub tests correctly -- dub OK ✓ ( 1.30.0 -> 1.36.0 ) +- dub OK ✓ ( 1.30.0 -> 1.38.1 )    from v1.31.0 requires seeting of pwd in buildPhase else fails to build    packages with nix tools that previous version of dub built; @@ -5,11 +5,11 @@          "systems": "systems"        },        "locked": { -        "lastModified": 1710146030, -        "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", +        "lastModified": 1731533236, +        "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",          "owner": "numtide",          "repo": "flake-utils", -        "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", +        "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",          "type": "github"        },        "original": { @@ -20,11 +20,11 @@      },      "nixpkgs": {        "locked": { -        "lastModified": 1720058333, -        "narHash": "sha256-gM2RCi5XkxmcsZ44pUkKIYBiBMfZ6u7MdcZcykmccrs=", +        "lastModified": 1733064805, +        "narHash": "sha256-7NbtSLfZO0q7MXPl5hzA0sbVJt6pWxxtGWbaVUDDmjs=",          "owner": "NixOS",          "repo": "nixpkgs", -        "rev": "6842b061970bf96965d66fcc86a28e1f719aae95", +        "rev": "31d66ae40417bb13765b0ad75dd200400e98de84",          "type": "github"        },        "original": { @@ -22,8 +22,8 @@      '';      localOverlay = (final: prev: {        ldc = prev.callPackage ./nix-overlays/ldc {  };       # -> ok 1.39.0 -      dmd = prev.callPackage ./nix-overlays/dmd {  };       # -> ok 2.109.0 -      dub = prev.callPackage ./nix-overlays/dub {  };       # -> ? 1.36.0 +      dmd = prev.callPackage ./nix-overlays/dmd {  };       # -> ok 2.109.1 +      dub = prev.callPackage ./nix-overlays/dub {  };       # -> ? 1.38.1        dtools = prev.callPackage ./nix-overlays/dtools {  }; # -> ok 2.103.1        #gdc = prev.callPackage ./nix-overlays/gdc {  };      # empty      }); @@ -86,7 +86,7 @@      in        with pkgs-ovl; {          dsh-overlay-dtools = mkShell { -          name = "overlay - ldc-1.39.0 - dub-1.36.0 - dtools-2.103.1"; +          name = "overlay - ldc-1.39.0 - dub-1.38.1 - dtools-2.103.1";            inherit shell;            inherit devEnv;            packages = [ @@ -98,7 +98,7 @@            inherit shellHook;          };          dsh-overlay-ldc-dub = mkShell { -          name = "overlay - ldc-1.39.0 - dub-1.36.0"; +          name = "overlay - ldc-1.39.0 - dub-1.38.1";            inherit shell;            inherit devEnv;            packages = [ @@ -109,7 +109,7 @@            inherit shellHook;          };          dsh-overlay-dmd-dub = mkShell { -          name = "overlay - dmd-2.109.0 - dub-1.36.0"; +          name = "overlay - dmd-2.109.1 - dub-1.38.1";            inherit shell;            inherit devEnv;            packages = [ @@ -120,7 +120,7 @@            inherit shellHook;          };          dsh-overlay-dtest-tilix = mkShell { -          name = "overlay - ldc-1.39.0 - dub-1.36.0 - tilix - gtkd"; +          name = "overlay - ldc-1.39.0 - dub-1.38.1 - tilix - gtkd";            inherit shell;            inherit devEnv;            packages = [ diff --git a/nix-overlays/dmd/default.nix b/nix-overlays/dmd/default.nix index 155a950..b5268b7 100644 --- a/nix-overlays/dmd/default.nix +++ b/nix-overlays/dmd/default.nix @@ -1,5 +1,5 @@  import ./generic.nix { -  version = "2.109.0"; -  dmdHash = "sha256-unAZgyZyT6qomlj6pdlOx4h1SKuDjutl1/0FM9AhBWc="; -  phobosHash = "sha256-b91FeluFqhmjHd1wwkyq98QzIlwjE646xNj2n6hP3aM="; +  version = "2.109.1"; +  dmdHash = "sha256-3nCDPZnb4eQZmhYYxcH6qOmsP8or0KYuzAa5g/C9xdU="; +  phobosHash = "sha256-73I0k7tCBwe5tl4K6uMs3/nT2JTZ2SppFYzmokS4W5Y=";  } diff --git a/nix-overlays/dmd/generic.nix b/nix-overlays/dmd/generic.nix index 63c2bd1..22f7fa8 100644 --- a/nix-overlays/dmd/generic.nix +++ b/nix-overlays/dmd/generic.nix @@ -37,7 +37,7 @@ let    bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;    osname = -    if stdenv.isDarwin then +    if stdenv.hostPlatform.isDarwin then        "osx"      else        stdenv.hostPlatform.parsed.kernel.name; @@ -97,6 +97,7 @@ stdenv.mkDerivation (finalAttrs: {      rm dmd/compiler/test/runnable/gdb4149.d      rm dmd/compiler/test/runnable/gdb4181.d      rm dmd/compiler/test/compilable/ddocYear.d +    rm dmd/compiler/test/fail_compilation/needspkgmod.d      # Disable tests that rely on objdump whitespace until fixed upstream:      #   https://issues.dlang.org/show_bug.cgi?id=23317 @@ -106,9 +107,9 @@ stdenv.mkDerivation (finalAttrs: {      rm dmd/compiler/test/dshell/test6952.d    '' + lib.optionalString (lib.versionAtLeast version "2.092.2") ''      substituteInPlace dmd/compiler/test/dshell/test6952.d --replace-fail "/usr/bin/env bash" "${bash}/bin/bash" -  '' + lib.optionalString stdenv.isLinux '' +  '' + lib.optionalString stdenv.hostPlatform.isLinux ''      substituteInPlace phobos/std/socket.d --replace-fail "assert(ih.addrList[0] == 0x7F_00_00_01);" "" -  '' + lib.optionalString stdenv.isDarwin '' +  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''      substituteInPlace phobos/std/socket.d --replace-fail "foreach (name; names)" "names = []; foreach (name; names)"    ''; @@ -123,7 +124,7 @@ stdenv.mkDerivation (finalAttrs: {    buildInputs = [      curl      tzdata -  # ] ++ lib.optionals stdenv.isDarwin [ +  # ] ++ lib.optionals stdenv.hostPlatform.isDarwin []    #   Foundation    ]; @@ -208,14 +209,22 @@ stdenv.mkDerivation (finalAttrs: {    disallowedReferences = [ dmdBootstrap ]; +  passthru = { +    inherit dmdBootstrap; +  }; +    meta = with lib; {      description = "Official reference compiler for the D language";      homepage = "https://dlang.org/"; +    changelog = "https://dlang.org/changelog/${finalAttrs.version}.html";      # Everything is now Boost licensed, even the backend.      # https://github.com/dlang/dmd/pull/6680      license = licenses.boost;      mainProgram = "dmd";      maintainers = with maintainers; [ lionello dukc jtbx ];      platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; +    # ld: section __DATA/__thread_bss has type zero-fill but non-zero file offset file '/private/tmp/nix-build-dmd-2.109.1.drv-0/.rdmd-301/rdmd-build.d-A1CF043A7D87C5E88A58F3C0EF5A0DF7/objs/build.o' for architecture x86_64 +    # clang-16: error: linker command failed with exit code 1 (use -v to see invocation) +    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64;    };  }) diff --git a/nix-overlays/dub/default.nix b/nix-overlays/dub/default.nix index 819a5e5..0eec437 100644 --- a/nix-overlays/dub/default.nix +++ b/nix-overlays/dub/default.nix @@ -4,7 +4,7 @@ assert dcompiler != null;  stdenv.mkDerivation rec {    pname = "dub"; -  version = "1.36.0"; +  version = "1.38.1";    enableParallelBuilding = true; @@ -12,7 +12,7 @@ stdenv.mkDerivation rec {      owner = "dlang";      repo = "dub";      rev = "v${version}"; -    sha256 = "sha256-S8pls9zxbGAQTwqYf4bDT2q7Ow12S8bBsJE5UmsACBs="; +    sha256 = "sha256-8Lr/0sx4SKwU1aNOxZArta0RXpDM+EWl29ZsPDdPWFo=";    };    #postUnpack = '' diff --git a/org/dlang-nix-flakes.org b/org/dlang-nix-flakes.org index 888b2e0..393d55c 100644 --- a/org/dlang-nix-flakes.org +++ b/org/dlang-nix-flakes.org @@ -17,6 +17,14 @@  #+OPTIONS:     H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t  * nix ( written to ../ ) +** check updates CHECK + +- https://github.com/nix-community/nix-direnv/releases +- https://github.com/dlang/dmd/tags +- https://github.com/ldc-developers/ldc/releases +- https://github.com/dlang/dub/releases +- https://github.com/dlang/tools/tags +  ** README  #+HEADER: :tangle "../README" @@ -298,6 +306,7 @@ fi  *** .envrc-nix  - https://github.com/nix-community/nix-direnv +- https://github.com/nix-community/nix-direnv/releases    - source_url      - direnv fetchurl "https://raw.githubusercontent.com/nix-community/nix-direnv/<<direnv-version>>/direnvrc" "<<direnv-sha>>"      - ${NixDirEnvVersion} @@ -327,15 +336,25 @@ use flake .  #use flake .#default  #+END_SRC -*** 3.0.4 +*** 3.0.6  #+NAME: direnv-version  #+BEGIN_SRC sh -3.0.4 +3.0.6  #+END_SRC  #+NAME: direnv-sha  #+BEGIN_SRC sh +sha256-RYcUJaRMf8oF5LznDrlCXbkOQrywm0HDv1VjYGaJGdM= +#+END_SRC + +*** 3.0.4 + +#+BEGIN_SRC sh +3.0.4 +#+END_SRC + +#+BEGIN_SRC sh  sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4=  #+END_SRC @@ -570,7 +589,7 @@ with pkgs-nix;        # ❯❯❯ nix_related        #nix        direnv -      nixVersions.nix_2_21 #nixVersions.latest #nixVersions.git +      nixVersions.latest #nixVersions.latest #nixVersions.git        nix-prefetch-git        validatePkgConfig        nix-output-monitor @@ -1250,7 +1269,7 @@ let    bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;    osname = -    if stdenv.isDarwin then +    if stdenv.hostPlatform.isDarwin then        "osx"      else        stdenv.hostPlatform.parsed.kernel.name; @@ -1310,6 +1329,7 @@ stdenv.mkDerivation (finalAttrs: {      rm dmd/compiler/test/runnable/gdb4149.d      rm dmd/compiler/test/runnable/gdb4181.d      rm dmd/compiler/test/compilable/ddocYear.d +    rm dmd/compiler/test/fail_compilation/needspkgmod.d      # Disable tests that rely on objdump whitespace until fixed upstream:      #   https://issues.dlang.org/show_bug.cgi?id=23317 @@ -1319,9 +1339,9 @@ stdenv.mkDerivation (finalAttrs: {      rm dmd/compiler/test/dshell/test6952.d    '' + lib.optionalString (lib.versionAtLeast version "2.092.2") ''      substituteInPlace dmd/compiler/test/dshell/test6952.d --replace-fail "/usr/bin/env bash" "${bash}/bin/bash" -  '' + lib.optionalString stdenv.isLinux '' +  '' + lib.optionalString stdenv.hostPlatform.isLinux ''      substituteInPlace phobos/std/socket.d --replace-fail "assert(ih.addrList[0] == 0x7F_00_00_01);" "" -  '' + lib.optionalString stdenv.isDarwin '' +  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''      substituteInPlace phobos/std/socket.d --replace-fail "foreach (name; names)" "names = []; foreach (name; names)"    ''; @@ -1336,7 +1356,7 @@ stdenv.mkDerivation (finalAttrs: {    buildInputs = [      curl      tzdata -  # ] ++ lib.optionals stdenv.isDarwin [ +  # ] ++ lib.optionals stdenv.hostPlatform.isDarwin []    #   Foundation    ]; @@ -1421,15 +1441,23 @@ stdenv.mkDerivation (finalAttrs: {    disallowedReferences = [ dmdBootstrap ]; +  passthru = { +    inherit dmdBootstrap; +  }; +    meta = with lib; {      description = "Official reference compiler for the D language";      homepage = "https://dlang.org/"; +    changelog = "https://dlang.org/changelog/${finalAttrs.version}.html";      # Everything is now Boost licensed, even the backend.      # https://github.com/dlang/dmd/pull/6680      license = licenses.boost;      mainProgram = "dmd";      maintainers = with maintainers; [ lionello dukc jtbx ];      platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; +    # ld: section __DATA/__thread_bss has type zero-fill but non-zero file offset file '/private/tmp/nix-build-dmd-2.109.1.drv-0/.rdmd-301/rdmd-build.d-A1CF043A7D87C5E88A58F3C0EF5A0DF7/objs/build.o' for architecture x86_64 +    # clang-16: error: linker command failed with exit code 1 (use -v to see invocation) +    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64;    };  })  #+END_SRC @@ -1537,17 +1565,37 @@ stdenv.mkDerivation {  #+NAME: dmd_version  #+BEGIN_SRC nix -<<dmd_version_2_109_0>> +<<dmd_version_2_109_1>>  #+END_SRC  #+NAME: dmd_hash  #+BEGIN_SRC nix -<<dmd_hash_2_109_0>> +<<dmd_hash_2_109_1>>  #+END_SRC  #+NAME: phobos_hash  #+BEGIN_SRC nix -<<phobos_hash_2_109_0>> +<<phobos_hash_2_109_1>> +#+END_SRC + +**** 2.109.1 OK ✓ + +- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.109.1.tar.gz +- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.109.1.tar.gz + +#+NAME: dmd_version_2_109_1 +#+BEGIN_SRC nix +2.109.1 +#+END_SRC + +#+NAME: phobos_hash_2_109_1 +#+BEGIN_SRC nix +sha256-73I0k7tCBwe5tl4K6uMs3/nT2JTZ2SppFYzmokS4W5Y= +#+END_SRC + +#+NAME: dmd_hash_2_109_1 +#+BEGIN_SRC nix +sha256-3nCDPZnb4eQZmhYYxcH6qOmsP8or0KYuzAa5g/C9xdU=  #+END_SRC  **** 2.109.0 OK ✓ @@ -1819,12 +1867,27 @@ stdenv.mkDerivation rec {  #+NAME: dub_version  #+BEGIN_SRC nix -<<dub_version_1_36_0>> +<<dub_version_1_38_1>>  #+END_SRC  #+NAME: dub_hash  #+BEGIN_SRC nix -<<dub_hash_1_36_0>> +<<dub_hash_1_38_1>> +#+END_SRC + +**** 1.38 OK ✓ +***** 1.38.1 + +- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.38.1.tar.gz + +#+NAME: dub_version_1_38_1 +#+BEGIN_SRC nix +1.38.1 +#+END_SRC + +#+NAME: dub_hash_1_38_1 +#+BEGIN_SRC nix +sha256-8Lr/0sx4SKwU1aNOxZArta0RXpDM+EWl29ZsPDdPWFo=  #+END_SRC  **** 1.36 OK ✓ @@ -7,7 +7,7 @@ with pkgs-nix;        # ❯❯❯ nix_related        #nix        direnv -      nixVersions.nix_2_21 #nixVersions.latest #nixVersions.git +      nixVersions.latest #nixVersions.latest #nixVersions.git        nix-prefetch-git        validatePkgConfig        nix-output-monitor  | 
