about summary refs log tree commit diff
path: root/pkgs/development/tools
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools')
-rw-r--r--pkgs/development/tools/build-managers/ekam/default.nix67
-rw-r--r--pkgs/development/tools/build-managers/msbuild/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/drone-cli/default.nix1
-rw-r--r--pkgs/development/tools/electron/default.nix16
-rw-r--r--pkgs/development/tools/omnisharp-roslyn/default.nix4
5 files changed, 82 insertions, 10 deletions
diff --git a/pkgs/development/tools/build-managers/ekam/default.nix b/pkgs/development/tools/build-managers/ekam/default.nix
new file mode 100644
index 000000000000..9247a2b21302
--- /dev/null
+++ b/pkgs/development/tools/build-managers/ekam/default.nix
@@ -0,0 +1,67 @@
+{ lib, stdenv, fetchFromGitHub, capnproto }:
+
+stdenv.mkDerivation {
+  pname = "ekam";
+  version = "unstable-2021-09-18";
+
+  src = fetchFromGitHub {
+    owner = "capnproto";
+    repo = "ekam";
+    rev = "77c338f8bd8f4a2ce1e6199b2a52363f1fccf388";
+    sha256 = "0q4bizlb1ykzdp4ca0kld6xm5ml9q866xrj3ijffcnyiyqr51qr8";
+  };
+
+  # The capnproto *source* is required to build ekam.
+  # https://github.com/capnproto/ekam/issues/5
+  #
+  # Specifically, the git version of the source is required, as
+  # capnproto release tarballs do not include ekam rule files.
+  postUnpack = ''
+    mkdir -p $sourceRoot/deps
+    cp -r ${capnproto.src} $sourceRoot/deps/capnproto
+  '';
+
+  postPatch = ''
+    # A single capnproto test file expects to be able to write to
+    # /var/tmp.  We change it to use /tmp because /var is not available
+    # under nix-build.
+    substituteInPlace deps/capnproto/c++/src/kj/filesystem-disk-test.c++ \
+      --replace "/var/tmp" "/tmp"
+  '';
+
+  # NIX_ENFORCE_PURITY prevents ld from linking against anything outside
+  # of the nix store -- but ekam builds capnp locally and links against it,
+  # so that causes the build to fail. So, we turn this off.
+  #
+  # See: https://nixos.wiki/wiki/Development_environment_with_nix-shell#Troubleshooting
+  preBuild = ''
+    unset NIX_ENFORCE_PURITY
+  '';
+
+  makeFlags = [
+    "PARALLEL=$(NIX_BUILD_CORES)"
+  ];
+
+  installPhase = ''
+    mkdir $out
+    cp -r bin $out
+
+    # Remove capnproto tools; there's a separate nix package for that.
+    rm $out/bin/capnp*
+    # Don't distribute ekam-bootstrap, which is not needed outside this build.
+    rm $out/bin/ekam-bootstrap
+  '';
+
+  meta = with lib; {
+    description = ''Build system ("make" in reverse)'';
+    longDescription = ''
+      Ekam ("make" spelled backwards) is a build system which automatically
+      figures out what to build and how to build it purely based on the
+      source code. No separate "makefile" is needed.
+    '';
+    homepage = "https://github.com/capnproto/ekam";
+    license = licenses.asl20;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.garrison ];
+  };
+}
diff --git a/pkgs/development/tools/build-managers/msbuild/default.nix b/pkgs/development/tools/build-managers/msbuild/default.nix
index b214f89eac98..5c3225c683f7 100644
--- a/pkgs/development/tools/build-managers/msbuild/default.nix
+++ b/pkgs/development/tools/build-managers/msbuild/default.nix
@@ -1,7 +1,9 @@
-{ lib, stdenv, fetchurl, fetchpatch, makeWrapper, glibcLocales, mono, dotnetPackages, unzip, dotnet-sdk, writeText, roslyn }:
+{ lib, stdenv, fetchurl, fetchpatch, makeWrapper, glibcLocales, mono, dotnetPackages, unzip, dotnetCorePackages, writeText, roslyn }:
 
 let
 
+  dotnet-sdk = dotnetCorePackages.sdk_5_0;
+
   xplat = fetchurl {
     url = "https://github.com/mono/msbuild/releases/download/v16.9.0/mono_msbuild_6.12.0.137.zip";
     sha256 = "1wnzbdpk4s9bmawlh359ak2b8zi0sgx1qvcjnvfncr1wsck53v7q";
diff --git a/pkgs/development/tools/continuous-integration/drone-cli/default.nix b/pkgs/development/tools/continuous-integration/drone-cli/default.nix
index a95f9914fe71..38382ea43474 100644
--- a/pkgs/development/tools/continuous-integration/drone-cli/default.nix
+++ b/pkgs/development/tools/continuous-integration/drone-cli/default.nix
@@ -21,6 +21,7 @@ buildGoModule rec {
   };
 
   meta = with lib; {
+    mainProgram = "drone";
     maintainers = with maintainers; [ ];
     license = licenses.asl20;
     description = "Command line client for the Drone continuous integration server";
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index 5a70d57045ce..2134c8e033f7 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -135,13 +135,13 @@ rec {
     headers = "1pw67w9l63xgkwp78wmnxfjgyzlrmij27bapd2yjrvj6ag7j9xgy";
   };
 
-  electron_15 = mkElectron "15.1.2" {
-    armv7l-linux = "fd176f658478c56355adb0ee81949f1b1bd073a86afba54ebb703923b99ff5f0";
-    aarch64-linux = "9493f410e983cb6a11f24375ea7959cc3e8ccab3b805b6095f4dafc9fa548e67";
-    x86_64-linux = "7acb839f6bf9bc95ae7ce26722fb6c5e9fd09bb9d58b674415bf92bded3b808e";
-    i686-linux = "018a5546baff524a649fe34957eddb88c30811dae6bd2c3bd110d15b41bc8554";
-    x86_64-darwin = "f95f70790fa689684ec2d4822451e45968a2307ccd674a4378a89667f1e2c50d";
-    aarch64-darwin = "edcfb7e83c5edad21b05d9babb4a2840157e68dbe4278c3ab3b609ece22e1372";
-    headers = "093ndqsqxk0k13rpdnpsjajf9a9599crzhhb412xlvzf8kzdzhxy";
+  electron_15 = mkElectron "15.2.0" {
+    armv7l-linux = "b682f5adca133673c8a7488c0d7e0dab8bddf0028218a2b4b842c85c12393aea";
+    aarch64-linux = "dea4ebd0583f149909acb6fe3168e225e4f6cb5470c1d0eb6c86cb58db0fb623";
+    x86_64-linux = "35d1c7e02fde920664ca245ad694cae82e3acfdac0175a1d32345497eb455673";
+    i686-linux = "52d48fbd6a6d8cae565a0d3f7574305c6313c42cac96bbdde39621b201df0082";
+    x86_64-darwin = "32d3d4e5f7dbb8fe035a7b91dc64c042eb930461424784d4c450e06768e7162d";
+    aarch64-darwin = "a7982607416ca2d30d7f48fbc3b16ab072c46170b117123a5e9763f85227a5cb";
+    headers = "0l9hbvikkw5qd1zp4kwa5w1pj80m466skdlz6j474jzqk1qz2nzm";
   };
 }
diff --git a/pkgs/development/tools/omnisharp-roslyn/default.nix b/pkgs/development/tools/omnisharp-roslyn/default.nix
index da15f47b6a2c..25f7ce4e7aa6 100644
--- a/pkgs/development/tools/omnisharp-roslyn/default.nix
+++ b/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , mono6
 , msbuild
-, dotnet-sdk
+, dotnetCorePackages
 , makeWrapper
 , unzip
 , writeText
@@ -11,6 +11,8 @@
 
 let
 
+  dotnet-sdk = dotnetCorePackages.sdk_5_0;
+
   deps = map (package: stdenv.mkDerivation (with package; {
     pname = name;
     inherit version src;