aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2024-12-02 19:18:50 -0500
committerRalph Amissah <ralph.amissah@gmail.com>2024-12-02 19:18:50 -0500
commit01b97ab40ec20a0ad73d2271b1397122e7b1bed5 (patch)
tree2063f9f05bf50a05bc6392bd1b1ccc4950bb3c7a
parentpod zip fixes (diff)
nix build houskeeping, version updates, incl. dmd & dub
-rw-r--r--.envrc-nix4
-rw-r--r--derivation.nix2
-rw-r--r--devenv.nix4
-rw-r--r--flake.lock12
-rw-r--r--nix-overlays/README14
-rw-r--r--nix-overlays/dmd/default.nix6
-rw-r--r--nix-overlays/dmd/generic.nix17
-rw-r--r--nix-overlays/dub/default.nix4
-rw-r--r--org/config_env.org14
-rw-r--r--org/config_nix.org10
-rw-r--r--org/nixpkgs_overlays_d_related.org87
-rwxr-xr-xshell.nix4
12 files changed, 130 insertions, 48 deletions
diff --git a/.envrc-nix b/.envrc-nix
index e73a20d..71f009b 100644
--- a/.envrc-nix
+++ b/.envrc-nix
@@ -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
diff --git a/derivation.nix b/derivation.nix
index 1457658..3ad7056 100644
--- a/derivation.nix
+++ b/derivation.nix
@@ -90,7 +90,7 @@ with (
version = "0.17.0";
src = ./.;
nativeBuildInputs = with pkgs; [dub ldc];
- buildInputs = with pkgs; [nixVersions.nix_2_21 sqlite];
+ buildInputs = with pkgs; [nixVersions.latest sqlite];
meta = with pkgs.lib; {
description = "A sisu like parser & document generator";
longDescription = ''
diff --git a/devenv.nix b/devenv.nix
index b1b3b8d..60a373e 100644
--- a/devenv.nix
+++ b/devenv.nix
@@ -10,13 +10,13 @@ with pkgs;
# ❯❯❯ nix_related
#nix # if not on NixOS, this is needed
direnv
- nixVersions.nix_2_21 #nixVersions.latest #nixVersions.git
+ nixVersions.latest #nixVersions.latest #nixVersions.git
nix-prefetch-git
validatePkgConfig
nix-output-monitor
nix-tree
jq #gx
- #alejandra
+ #nixfmt-rfc-style
git
# ❯❯❯ dev
gnumake
diff --git a/flake.lock b/flake.lock
index 45a3017..e209cb3 100644
--- a/flake.lock
+++ b/flake.lock
@@ -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": 1720571246,
- "narHash": "sha256-nkUXwunTck+hNMt2wZuYRN+jf2ySRjKTzI0fo5TDH78=",
+ "lastModified": 1733064805,
+ "narHash": "sha256-7NbtSLfZO0q7MXPl5hzA0sbVJt6pWxxtGWbaVUDDmjs=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "16e401f01842c5bb2499e78c1fe227f939c0c474",
+ "rev": "31d66ae40417bb13765b0ad75dd200400e98de84",
"type": "github"
},
"original": {
diff --git a/nix-overlays/README b/nix-overlays/README
index 44e76b6..ff0b5bb 100644
--- a/nix-overlays/README
+++ b/nix-overlays/README
@@ -17,10 +17,10 @@ of publishing, in some cases with additional fixes.
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.106.1 -> 2.109.0 )
+ - dmd ( 2.106.1 -> 2.109.1 )
- gdc [not yet available]
dlang-nix-flakes.org --❯
@@ -59,14 +59,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:
@@ -88,13 +88,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:
@@ -102,7 +102,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;
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/config_env.org b/org/config_env.org
index 1ea434a..7b0d67d 100644
--- a/org/config_env.org
+++ b/org/config_env.org
@@ -123,15 +123,25 @@ echo "•
"
#+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
diff --git a/org/config_nix.org b/org/config_nix.org
index 9f4617d..fc31bd8 100644
--- a/org/config_nix.org
+++ b/org/config_nix.org
@@ -406,13 +406,13 @@ 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
nix-tree
jq #gx
- #alejandra
+ #nixfmt-rfc-style
git
# ❯❯❯ dev
gnumake
@@ -486,13 +486,13 @@ with pkgs;
# ❯❯❯ nix_related
#nix # if not on NixOS, this is needed
direnv
- nixVersions.nix_2_21 #nixVersions.latest #nixVersions.git
+ nixVersions.latest #nixVersions.latest #nixVersions.git
nix-prefetch-git
validatePkgConfig
nix-output-monitor
nix-tree
jq #gx
- #alejandra
+ #nixfmt-rfc-style
git
# ❯❯❯ dev
gnumake
@@ -620,7 +620,7 @@ with (
version = "<<spine_version>>";
src = ./.;
nativeBuildInputs = with pkgs; [dub ldc];
- buildInputs = with pkgs; [nixVersions.nix_2_21 sqlite];
+ buildInputs = with pkgs; [nixVersions.latest sqlite];
meta = with pkgs.lib; {
description = "A sisu like parser & document generator";
longDescription = ''
diff --git a/org/nixpkgs_overlays_d_related.org b/org/nixpkgs_overlays_d_related.org
index 5eedd71..0190383 100644
--- a/org/nixpkgs_overlays_d_related.org
+++ b/org/nixpkgs_overlays_d_related.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 ./dlang-nix-flakes/ )
+** 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 "../nix-overlays/README"
@@ -243,6 +251,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}
@@ -272,15 +281,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
@@ -459,7 +478,7 @@ with pkgs;
# ❯❯❯ 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
@@ -1125,7 +1144,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;
@@ -1185,6 +1204,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
@@ -1194,9 +1214,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)"
'';
@@ -1211,7 +1231,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
curl
tzdata
- # ] ++ lib.optionals stdenv.isDarwin [
+ # ] ++ lib.optionals stdenv.hostPlatform.isDarwin []
# Foundation
];
@@ -1296,15 +1316,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
@@ -1412,17 +1440,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 ✓
@@ -1694,12 +1742,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 ✓
diff --git a/shell.nix b/shell.nix
index 389fa7b..22d6dce 100755
--- a/shell.nix
+++ b/shell.nix
@@ -7,13 +7,13 @@ 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
nix-tree
jq #gx
- #alejandra
+ #nixfmt-rfc-style
git
# ❯❯❯ dev
gnumake