diff options
| author | Ralph Amissah <ralph.amissah@gmail.com> | 2025-08-08 22:47:16 -0400 | 
|---|---|---|
| committer | Ralph Amissah <ralph.amissah@gmail.com> | 2025-08-08 22:47:16 -0400 | 
| commit | d393ad85676436fef1e37e712405d6d10593977d (patch) | |
| tree | b92788594825930d746415aedac103ff788b624b | |
| parent | ldc-1.41.0 overlay; nix direnv 3.0.7 (diff) | |
| -rw-r--r-- | README | 8 | ||||
| -rw-r--r-- | flake.lock | 6 | ||||
| -rw-r--r-- | flake.nix | 10 | ||||
| -rw-r--r-- | nix-overlays/dub/package.nix | 6 | ||||
| -rw-r--r-- | nix-overlays/ldc/bootstrap.nix | 12 | ||||
| -rw-r--r-- | nix-overlays/ldc/package.nix | 25 | ||||
| -rw-r--r-- | org/dlang-nix-flakes.org | 82 | ||||
| -rw-r--r-- | org/nix-develop-dlang-shared.org | 36 | 
8 files changed, 105 insertions, 80 deletions
@@ -36,7 +36,7 @@ nix control files  nix overlays for (updates nixpkgs, more recent versions of):    - ldc     ( 1.30.0 -> 1.41.0 ) -  - dub     ( 1.23.0 -> 1.39.0 ) [for nix versions 1.31.0 ... 1.33.0 broken] +  - dub     ( 1.23.0 -> 1.40.0 ) [for nix versions 1.31.0 ... 1.33.0 broken]    - dtools  ( 2.095.1 -> 2.110.0 )    - dmd     ( 2.100.2 -> 2.111.0 ) @@ -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.39.0 ) +*** dub ( 1.23.0 -> 1.40.0 )  - 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.39.0.tar.gz +    nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.40.0.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.39.0 ) +- dub OK ✓ ( 1.30.0 -> 1.40.0 )    from v1.31.0 requires seeting of pwd in buildPhase else fails to build    packages with nix tools that previous version of dub built; @@ -2,11 +2,11 @@    "nodes": {      "nixpkgs": {        "locked": { -        "lastModified": 1749213349, -        "narHash": "sha256-UAaWOyQhdp7nXzsbmLVC67fo+QetzoTm9hsPf9X3yr4=", +        "lastModified": 1754651824, +        "narHash": "sha256-aB7ft6njy9EJfuW+rdToNChfRrHNRw/yTg5cSEnG+HI=",          "owner": "NixOS",          "repo": "nixpkgs", -        "rev": "a4ff0e3c64846abea89662bfbacf037ef4b34207", +        "rev": "b069b7c1e2fe1a3a24221428558bf44128d3d5c8",          "type": "github"        },        "original": { @@ -23,7 +23,7 @@      localOverlay = (final: prev: {        ldc = prev.callPackage ./nix-overlays/ldc {  };       # -> ok 1.41.0        dmd = prev.callPackage ./nix-overlays/dmd {  };       # -> ok 2.111.0 -      dub = prev.callPackage ./nix-overlays/dub {  };       # -> ? 1.39.0 +      dub = prev.callPackage ./nix-overlays/dub {  };       # -> ? 1.40.0        dtools = prev.callPackage ./nix-overlays/dtools {  }; # -> ok 2.110.0        #gdc = prev.callPackage ./nix-overlays/gdc {  };      # empty      }); @@ -85,7 +85,7 @@      in        with pkgs-ovl; {          dsh-overlay-dtools = mkShell { -          name = "overlay - ldc-1.41.0 - dub-1.39.0 - dtools-2.110.0"; +          name = "overlay - ldc-1.41.0 - dub-1.40.0 - dtools-2.110.0";            inherit shell;            inherit devEnv;            packages = [ @@ -97,7 +97,7 @@            inherit shellHook;          };          dsh-overlay-ldc-dub = mkShell { -          name = "overlay - ldc-1.41.0 - dub-1.39.0 - dtools-2.110.0"; +          name = "overlay - ldc-1.41.0 - dub-1.40.0 - dtools-2.110.0";            inherit shell;            inherit devEnv;            packages = [ @@ -109,7 +109,7 @@            inherit shellHook;          };          dsh-overlay-dmd-dub = mkShell { -          name = "overlay - dmd-2.111.0 - dub-1.39.0 - dtools-2.110.0"; +          name = "overlay - dmd-2.111.0 - dub-1.40.0 - dtools-2.110.0";            inherit shell;            inherit devEnv;            packages = [ @@ -121,7 +121,7 @@            inherit shellHook;          };          dsh-overlay-dtest-tilix = mkShell { -          name = "overlay - ldc-1.41.0 - dub-1.39.0 - tilix - gtkd"; +          name = "overlay - ldc-1.41.0 - dub-1.40.0 - tilix - gtkd";            inherit shell;            inherit devEnv;            packages = [ diff --git a/nix-overlays/dub/package.nix b/nix-overlays/dub/package.nix index b537a43..4d63f2d 100644 --- a/nix-overlays/dub/package.nix +++ b/nix-overlays/dub/package.nix @@ -13,7 +13,7 @@ assert dcompiler != null;  stdenv.mkDerivation (finalAttrs: {    pname = "dub"; -  version = "1.39.0"; +  version = "1.40.0";    enableParallelBuilding = true; @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {      owner = "dlang";      repo = "dub";      rev = "v${finalAttrs.version}"; -    hash = "sha256-73b15A9+hClD6IbuxTy9QZKpTKjUFYBuqGOclUyhrnM="; +    hash = "sha256-OirchEKf66gis70gCSTOYcrHLyHhCsyt/rTEGT83Vcc=";    };    postPatch = '' @@ -39,7 +39,6 @@ stdenv.mkDerivation (finalAttrs: {          break        fi      done -    #export DMD=${ldc}/bin/ldmd2      if [ "$DC" == "" ]; then        exit "Error: could not find D compiler"      fi @@ -71,6 +70,7 @@ stdenv.mkDerivation (finalAttrs: {      rm -rf test/pr2642-cache-db # added to build v1.34.0      rm -rf test/pr2644-describe-artifact-path # added to build v1.36.0      rm -rf test/pr2647-build-deep # added to build v1.36.0 +    rm -rf test/issue2698-cimportpaths-broken-with-dmd-ldc # added to build v1.40.0      ./test/run-unittest.sh      runHook postCheck diff --git a/nix-overlays/ldc/bootstrap.nix b/nix-overlays/ldc/bootstrap.nix index 8f76b5b..f166568 100644 --- a/nix-overlays/ldc/bootstrap.nix +++ b/nix-overlays/ldc/bootstrap.nix @@ -13,13 +13,13 @@ let    inherit (stdenv) hostPlatform;    OS = if hostPlatform.isDarwin then "osx" else hostPlatform.parsed.kernel.name;    ARCH = if hostPlatform.isDarwin && hostPlatform.isAarch64 then "arm64" else hostPlatform.parsed.cpu.name; -  version = "1.25.0"; +  version = "1.41.0";    hashes = { -    # Get these from `nix store prefetch-file https://github.com/ldc-developers/ldc/releases/download/v1.25.0/ldc2-1.25.0-osx-x86_64.tar.xz` etc.. -    osx-x86_64 = "sha256-6iKnbS+oalLKmyS8qYD/wS21b7+O+VgsWG2iT4PrWPU="; -    linux-x86_64 = "sha256-sfg47RdlsIpryc3iZvE17OtLweh3Zw6DeuNJYgpuH+o="; -    linux-aarch64  = "sha256-UDZ43x4flSo+SfsPeE8juZO2Wtk2ZzwySk0ADHnvJBI="; -    osx-arm64  = "sha256-O/x0vy0wwQFaDc4uWSeMhx+chJKqbQb6e5QNYf+7DCw="; +    # Get these from `nix store prefetch-file https://github.com/ldc-developers/ldc/releases/download/v1.41.0/ldc2-1.41.0-osx-x86_64.tar.xz` etc.. +    osx-x86_64 = "sha256-W8/0i2PFakXbqs2wxb3cjqa+htSgx7LHyDGOBH9yEYE="; +    linux-x86_64 = "sha256-SkOUV/D+WeadAv1rV1Sfw8h60PVa2fueQlB7b44yfI8="; +    linux-aarch64 = "sha256-HEuVChPVM3ntT1ZDZsJ+xW1iYeIWhogNcMdIaz6Me6g="; +    osx-arm64 = "sha256-FXJnBC8QsEchBhkxSqcZtPC/iHYB6TscY0qh7LPFRuQ=";    };  in stdenv.mkDerivation {    pname = "ldc-bootstrap"; diff --git a/nix-overlays/ldc/package.nix b/nix-overlays/ldc/package.nix index ff2089b..1767785 100644 --- a/nix-overlays/ldc/package.nix +++ b/nix-overlays/ldc/package.nix @@ -2,20 +2,21 @@    lib,    stdenv,    fetchFromGitHub, +  fetchpatch, +  callPackage, +  makeWrapper, +  removeReferencesTo, +  runCommand, +  writeText, +  targetPackages,    cmake,    ninja, -  llvm_19, +  llvm_20,    curl,    tzdata,    lit,    gdb,    unzip, -  darwin, -  callPackage, -  makeWrapper, -  runCommand, -  writeText, -  targetPackages,    ldcBootstrap ? callPackage ./bootstrap.nix { },  }: @@ -63,9 +64,7 @@ stdenv.mkDerivation (finalAttrs: {    '';    nativeBuildInputs = [ -    cmake ldcBootstrap lit lit.python llvm_19.dev makeWrapper ninja unzip -  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ -    darwin.apple_sdk.frameworks.Foundation +    cmake ldcBootstrap lit lit.python llvm_20.dev makeWrapper ninja unzip    ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [      # https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818      gdb @@ -135,6 +134,12 @@ stdenv.mkDerivation (finalAttrs: {        --set-default CC ${targetPackages.stdenv.cc}/bin/cc    ''; +  preFixup = '' +    find $out/bin -type f -exec ${removeReferencesTo}/bin/remove-references-to -t ${ldcBootstrap} '{}' + +  ''; + +  disallowedReferences = [ ldcBootstrap ]; +    meta = with lib; {      description = "LLVM-based D compiler";      homepage = "https://github.com/ldc-developers/ldc"; diff --git a/org/dlang-nix-flakes.org b/org/dlang-nix-flakes.org index 14e5894..c6c68a9 100644 --- a/org/dlang-nix-flakes.org +++ b/org/dlang-nix-flakes.org @@ -602,10 +602,6 @@ pkgs.callPackage ./shell.nix {}  - version in nixpkgs:    - https://search.nixos.org/packages?channel=unstable&show=ldc&from=0&size=100&sort=relevance&type=packages&query=ldc -**** notes - -- OK ldc 1.32.2 tested -  *** overlays OK ✓  **** default.nix @@ -622,6 +618,13 @@ import ./package.nix    lib,    stdenv,    fetchFromGitHub, +  fetchpatch, +  callPackage, +  makeWrapper, +  removeReferencesTo, +  runCommand, +  writeText, +  targetPackages,    cmake,    ninja,    <<ldc_llvm_set>>, @@ -630,12 +633,6 @@ import ./package.nix    lit,    gdb,    unzip, -  darwin, -  callPackage, -  makeWrapper, -  runCommand, -  writeText, -  targetPackages,    ldcBootstrap ? callPackage ./bootstrap.nix { },  }: @@ -684,8 +681,6 @@ stdenv.mkDerivation (finalAttrs: {    nativeBuildInputs = [      cmake ldcBootstrap lit lit.python <<ldc_llvm_set>>.dev makeWrapper ninja unzip -  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ -    darwin.apple_sdk.frameworks.Foundation    ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [      # https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818      gdb @@ -755,6 +750,12 @@ stdenv.mkDerivation (finalAttrs: {        --set-default CC ${targetPackages.stdenv.cc}/bin/cc    ''; +  preFixup = '' +    find $out/bin -type f -exec ${removeReferencesTo}/bin/remove-references-to -t ${ldcBootstrap} '{}' + +  ''; + +  disallowedReferences = [ ldcBootstrap ]; +    meta = with lib; {      description = "LLVM-based D compiler";      homepage = "https://github.com/ldc-developers/ldc"; @@ -822,7 +823,7 @@ let    inherit (stdenv) hostPlatform;    OS = if hostPlatform.isDarwin then "osx" else hostPlatform.parsed.kernel.name;    ARCH = if hostPlatform.isDarwin && hostPlatform.isAarch64 then "arm64" else hostPlatform.parsed.cpu.name; -  <<ldc_bootstrap_1-25-0_hashes>> +  <<ldc_bootstrap_1-41-0_hashes>>  in stdenv.mkDerivation {    pname = "ldc-bootstrap";    inherit version; @@ -862,17 +863,17 @@ in stdenv.mkDerivation {  #+END_SRC  ***** bootstrap.nix version SELECT -****** bootstrap.nix ldc2-1.25.0 +****** bootstrap.nix ldc2-1.41.0 -#+NAME: ldc_bootstrap_1-25-0_hashes +#+NAME: ldc_bootstrap_1-41-0_hashes  #+BEGIN_SRC nix -version = "1.25.0"; +version = "1.41.0";  hashes = { -  # Get these from `nix store prefetch-file https://github.com/ldc-developers/ldc/releases/download/v1.25.0/ldc2-1.25.0-osx-x86_64.tar.xz` etc.. -  osx-x86_64 = "sha256-6iKnbS+oalLKmyS8qYD/wS21b7+O+VgsWG2iT4PrWPU="; -  linux-x86_64 = "sha256-sfg47RdlsIpryc3iZvE17OtLweh3Zw6DeuNJYgpuH+o="; -  linux-aarch64  = "sha256-UDZ43x4flSo+SfsPeE8juZO2Wtk2ZzwySk0ADHnvJBI="; -  osx-arm64  = "sha256-O/x0vy0wwQFaDc4uWSeMhx+chJKqbQb6e5QNYf+7DCw="; +  # Get these from `nix store prefetch-file https://github.com/ldc-developers/ldc/releases/download/v1.41.0/ldc2-1.41.0-osx-x86_64.tar.xz` etc.. +  osx-x86_64 = "sha256-W8/0i2PFakXbqs2wxb3cjqa+htSgx7LHyDGOBH9yEYE="; +  linux-x86_64 = "sha256-SkOUV/D+WeadAv1rV1Sfw8h60PVa2fueQlB7b44yfI8="; +  linux-aarch64 = "sha256-HEuVChPVM3ntT1ZDZsJ+xW1iYeIWhogNcMdIaz6Me6g="; +  osx-arm64 = "sha256-FXJnBC8QsEchBhkxSqcZtPC/iHYB6TscY0qh7LPFRuQ=";  };  #+END_SRC @@ -890,6 +891,20 @@ hashes = {  };  #+END_SRC +****** bootstrap.nix ldc2-1.25.0 + +#+NAME: ldc_bootstrap_1-25-0_hashes +#+BEGIN_SRC nix +version = "1.25.0"; +hashes = { +  # Get these from `nix store prefetch-file https://github.com/ldc-developers/ldc/releases/download/v1.25.0/ldc2-1.25.0-osx-x86_64.tar.xz` etc.. +  osx-x86_64 = "sha256-6iKnbS+oalLKmyS8qYD/wS21b7+O+VgsWG2iT4PrWPU="; +  linux-x86_64 = "sha256-sfg47RdlsIpryc3iZvE17OtLweh3Zw6DeuNJYgpuH+o="; +  linux-aarch64  = "sha256-UDZ43x4flSo+SfsPeE8juZO2Wtk2ZzwySk0ADHnvJBI="; +  osx-arm64  = "sha256-O/x0vy0wwQFaDc4uWSeMhx+chJKqbQb6e5QNYf+7DCw="; +}; +#+END_SRC +  ** dmd OK ✓  *** info  **** links @@ -904,12 +919,6 @@ hashes = {  - version in nixpkgs:    - https://search.nixos.org/packages?channel=unstable&show=dmd&from=0&size=100&sort=relevance&type=packages&query=dmd -**** notes KO ✗ - -- dmd nixpkg modified and appears to build ok - -- ISSUES dmd on nixos FAILS to build (my working projects), appears not to find parts of itself -  *** overlays  **** default.nix @@ -1289,19 +1298,6 @@ stdenv.mkDerivation {  - version in nixpkgs:    - https://search.nixos.org/packages?channel=unstable&show=dub&from=0&size=100&sort=relevance&type=packages&query=dub -**** notes - -- OK dub == current OK ✓ - -- NOTES for dub 1.33.0 >= 1.31.0 KO ✗ -  - dub builds test tilix which calls in gtkd -  - ISSUES dub FAILS to build project from local disk that has built without issue -    since dub v1.23.0 -    - BROKEN breaks on subproject ends up in nix: Error /homeless-shelter: -      Permission denied - -- OK dub == 1.30.0 OK ✓ -  *** overlays  **** default.nix @@ -1355,7 +1351,6 @@ stdenv.mkDerivation (finalAttrs: {          break        fi      done -    #export DMD=${ldc}/bin/ldmd2      if [ "$DC" == "" ]; then        exit "Error: could not find D compiler"      fi @@ -1387,6 +1382,7 @@ stdenv.mkDerivation (finalAttrs: {      rm -rf test/pr2642-cache-db # added to build v1.34.0      rm -rf test/pr2644-describe-artifact-path # added to build v1.36.0      rm -rf test/pr2647-build-deep # added to build v1.36.0 +    rm -rf test/issue2698-cimportpaths-broken-with-dmd-ldc # added to build v1.40.0      ./test/run-unittest.sh      runHook postCheck @@ -1713,12 +1709,12 @@ Adapted from https://github.com/dlang/tools/commit/6c6a042d1b08e3ec1790bd07a7f69  ** sha256 blank_hash  #+NAME: sha256-blank -#+BEGIN_SRC nix +#+BEGIN_SRC emacs-lisp  <<./nix-develop-dlang-shared.org:sha256-blank()>>  #+END_SRC  #+NAME: blank_hash -#+BEGIN_SRC nix +#+BEGIN_SRC emacs-lisp  <<./nix-develop-dlang-shared.org:sha256-blank()>>  #+END_SRC diff --git a/org/nix-develop-dlang-shared.org b/org/nix-develop-dlang-shared.org index b7f4f79..5c9c631 100644 --- a/org/nix-develop-dlang-shared.org +++ b/org/nix-develop-dlang-shared.org @@ -112,6 +112,10 @@ sha256-XQzUAvL6pysIJnRJyR7uVpmUSZfc7LSgWQwq/4mBr1U=  * dlang  ** ldc +*** tags link + +- https://github.com/ldc-developers/ldc/tags +  *** NOTES to update ldc  check for latest version: @@ -185,7 +189,7 @@ sha256-6LcpY3LSFK4KgEiGrFp/LONu5Vr+/+vI04wEEpF3s+s=  #+NAME: ldc_llvm_set_1_41_0  #+BEGIN_SRC nix -llvm_19 +llvm_20  #+END_SRC  **** 1.40 OK ✓ @@ -322,6 +326,7 @@ sha256-/bs3bwgkLZF5IqaiKnc5gCF/r6MQBG/F1kWUkK8j2s0=  #+END_SRC  ** dmd +*** tags link  - https://github.com/dlang/dmd/tags @@ -499,20 +504,39 @@ sha256-yRL9ub3u4mREG9PVxBvgQ/LDXD57RadPTZ2h08qyh/s=  #+END_SRC  ** dub +*** tags link + +- https://github.com/dlang/dub/releases +  *** version SET  #+NAME: dub-version  #+HEADER: :noweb yes  #+BEGIN_SRC org -<<dub_version_1_39_0>> +<<dub_version_1_40_0>>  #+END_SRC  #+NAME: dub-hash  #+BEGIN_SRC org -<<dub_hash_1_39_0>> +<<dub_hash_1_40_0>>  #+END_SRC  *** versions +**** 1.40 OK ✓ +***** 1.40.0 + +- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.40.0.tar.gz + +#+NAME: dub_version_1_40_0 +#+BEGIN_SRC nix +1.40.0 +#+END_SRC + +#+NAME: dub_hash_1_40_0 +#+BEGIN_SRC nix +sha256-OirchEKf66gis70gCSTOYcrHLyHhCsyt/rTEGT83Vcc= +#+END_SRC +  **** 1.39 OK ✓  ***** 1.39.0 @@ -694,17 +718,17 @@ sha256-Pfj8Kwf5AlcrHhLs5A/0vIFWLZaNR3ro+esbs7oWN9I=  ** sha256 blank_hash  #+NAME: blank_hash -#+BEGIN_SRC nix +#+BEGIN_SRC org  <<sha256-blank>>  #+END_SRC  #+NAME: sha256-blank -#+BEGIN_SRC nix +#+BEGIN_SRC org  sha256-0000000000000000000000000000000000000000000=  #+END_SRC  #+NAME: assumed_hash -#+BEGIN_SRC nix +#+BEGIN_SRC org  sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=  #+END_SRC  | 
