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/muon/default.nix1
-rw-r--r--pkgs/development/tools/buildpack/default.nix6
-rw-r--r--pkgs/development/tools/database/clickhouse-backup/default.nix6
-rw-r--r--pkgs/development/tools/fdroidserver/default.nix10
-rw-r--r--pkgs/development/tools/haskell/hadrian/ghc-platform.nix16
-rw-r--r--pkgs/development/tools/haskell/hadrian/ghc-toolchain.nix19
-rw-r--r--pkgs/development/tools/haskell/hadrian/hadrian.nix (renamed from pkgs/development/tools/haskell/hadrian/default.nix)29
-rw-r--r--pkgs/development/tools/haskell/hadrian/make-hadrian.nix59
-rw-r--r--pkgs/development/tools/just/default.nix6
-rw-r--r--pkgs/development/tools/language-servers/ruff-lsp/default.nix6
-rw-r--r--pkgs/development/tools/misc/circleci-cli/default.nix6
-rw-r--r--pkgs/development/tools/misc/terraform-ls/default.nix6
-rw-r--r--pkgs/development/tools/omniorb/default.nix4
-rw-r--r--pkgs/development/tools/pandoc/default.nix5
-rw-r--r--pkgs/development/tools/protolint/default.nix1
-rw-r--r--pkgs/development/tools/yq-go/default.nix6
16 files changed, 147 insertions, 39 deletions
diff --git a/pkgs/development/tools/build-managers/muon/default.nix b/pkgs/development/tools/build-managers/muon/default.nix
index c3be1a4bc535..92593bb60e5f 100644
--- a/pkgs/development/tools/build-managers/muon/default.nix
+++ b/pkgs/development/tools/build-managers/muon/default.nix
@@ -130,6 +130,7 @@ stdenv.mkDerivation (finalAttrs: {
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.unix;
     broken = stdenv.isDarwin; # typical `ar failure`
+    mainProgram = "muon";
   };
 })
 # TODO LIST:
diff --git a/pkgs/development/tools/buildpack/default.nix b/pkgs/development/tools/buildpack/default.nix
index 0f09d2814068..b768021035cb 100644
--- a/pkgs/development/tools/buildpack/default.nix
+++ b/pkgs/development/tools/buildpack/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "pack";
-  version = "0.31.0";
+  version = "0.32.0";
 
   src = fetchFromGitHub {
     owner = "buildpacks";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-v46Yfj0gRT84R1vttKkpan28dkeJWHNgzKzI+ZVCiNc=";
+    hash = "sha256-t4//83DD3hCnxsuuw7nB06SWCY4/GcRcIk8Cr3C4bDw=";
   };
 
-  vendorHash = "sha256-KZ2nAd+5D5PFgSDhNeHg6Hnp+h7HqZ2CRsKUek0KZhM=";
+  vendorHash = "sha256-42CrWLwBcv2GE+hEgJJOd7hFQu7rjYrXkPhhUykqIQw=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/database/clickhouse-backup/default.nix b/pkgs/development/tools/database/clickhouse-backup/default.nix
index 2495e09bba51..8ac28618b422 100644
--- a/pkgs/development/tools/database/clickhouse-backup/default.nix
+++ b/pkgs/development/tools/database/clickhouse-backup/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "clickhouse-backup";
-  version = "2.4.1";
+  version = "2.4.2";
 
   src = fetchFromGitHub {
     owner = "AlexAkulov";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NX2687jG0TAt3rOV5XEmgHYiNhuBoWbnUEFnf3w5k6A=";
+    sha256 = "sha256-KJBg64GaWXUV6go8IO9cI82NUeD0j59ySZTTzINo8So=";
   };
 
-  vendorHash = "sha256-NOQV7c930kutXmgi1eaETu1JMJerKNK2Ns4YBRaoBUw=";
+  vendorHash = "sha256-u3UtrsHohuQrSk4ypMXasLPYwkcRYMvOdpBpO8PpwZg=";
 
   ldflags = [
     "-X main.version=${version}"
diff --git a/pkgs/development/tools/fdroidserver/default.nix b/pkgs/development/tools/fdroidserver/default.nix
index ee4d64f118f2..88fc8f6e4f0b 100644
--- a/pkgs/development/tools/fdroidserver/default.nix
+++ b/pkgs/development/tools/fdroidserver/default.nix
@@ -5,6 +5,7 @@
 , buildPythonApplication
 , python3
 , pythonRelaxDepsHook
+, installShellFiles
 , androguard
 , babel
 , clint
@@ -26,14 +27,14 @@
 
 buildPythonApplication rec {
   pname = "fdroidserver";
-  version = "2.2.1";
+  version = "unstable-2023-10-23";
   format = "setuptools";
 
   src = fetchFromGitLab {
     owner = "fdroid";
     repo = "fdroidserver";
-    rev = "refs/tags/${version}";
-    sha256 = "sha256-+Y1YTgELsX834WIrhx/NX34yLMHdkKM+YUNvnHPiC/s=";
+    rev = "f4b10cf83935432d19948dac669964384bef0728";
+    hash = "sha256-GmR6Td5pScwEKK9W6m26xQV4XxBdZ7frN2UvwUGY4Dw=";
   };
 
   pythonRelaxDeps = [
@@ -53,10 +54,13 @@ buildPythonApplication rec {
   postInstall = ''
     patchShebangs gradlew-fdroid
     install -m 0755 gradlew-fdroid $out/bin
+    installShellCompletion --cmd fdroid \
+      --bash completion/bash-completion
   '';
 
   nativeBuildInputs = [
     pythonRelaxDepsHook
+    installShellFiles
   ];
 
   buildInputs = [
diff --git a/pkgs/development/tools/haskell/hadrian/ghc-platform.nix b/pkgs/development/tools/haskell/hadrian/ghc-platform.nix
new file mode 100644
index 000000000000..3b1b17fba2c7
--- /dev/null
+++ b/pkgs/development/tools/haskell/hadrian/ghc-platform.nix
@@ -0,0 +1,16 @@
+{ mkDerivation, base, lib
+  # GHC source tree to build ghc-toolchain from
+, ghcSrc
+, ghcVersion
+}:
+mkDerivation {
+  pname = "ghc-platform";
+  version = ghcVersion;
+  src = ghcSrc;
+  postUnpack = ''
+    sourceRoot="$sourceRoot/libraries/ghc-platform"
+  '';
+  libraryHaskellDepends = [ base ];
+  description = "Platform information used by GHC and friends";
+  license = lib.licenses.bsd3;
+}
diff --git a/pkgs/development/tools/haskell/hadrian/ghc-toolchain.nix b/pkgs/development/tools/haskell/hadrian/ghc-toolchain.nix
new file mode 100644
index 000000000000..035fee7aca80
--- /dev/null
+++ b/pkgs/development/tools/haskell/hadrian/ghc-toolchain.nix
@@ -0,0 +1,19 @@
+{ mkDerivation, base, directory, filepath, ghc-platform, lib
+, process, text, transformers
+  # GHC source tree to build ghc-toolchain from
+, ghcVersion
+, ghcSrc
+}:
+mkDerivation {
+  pname = "ghc-toolchain";
+  version = ghcVersion;
+  src = ghcSrc;
+  postUnpack = ''
+    sourceRoot="$sourceRoot/utils/ghc-toolchain"
+  '';
+  libraryHaskellDepends = [
+    base directory filepath ghc-platform process text transformers
+  ];
+  description = "Utility for managing GHC target toolchains";
+  license = lib.licenses.bsd3;
+}
diff --git a/pkgs/development/tools/haskell/hadrian/default.nix b/pkgs/development/tools/haskell/hadrian/hadrian.nix
index 1801d63cf8b9..1be21d6f4519 100644
--- a/pkgs/development/tools/haskell/hadrian/default.nix
+++ b/pkgs/development/tools/haskell/hadrian/hadrian.nix
@@ -1,20 +1,19 @@
-{ # GHC source tree to build hadrian from
-  ghcSrc ? null, ghcVersion ? null
-, mkDerivation, base, bytestring, Cabal, containers, directory
+# See also ./make-hadria.nix
+{ mkDerivation, base, bytestring, Cabal, containers, directory
 , extra, filepath, lib, mtl, parsec, shake, text, transformers
 , unordered-containers, cryptohash-sha256, base16-bytestring
-, userSettings ? null
-# Whether to pass --hyperlinked-source to haddock or not. This is a custom
-# workaround as we wait for this to be configurable via userSettings or similar.
-# https://gitlab.haskell.org/ghc/ghc/-/issues/23625
-, enableHyperlinkedSource ? true
 , writeText
+  # Dependencies that are not on Hackage and only used in certain Hadrian versions
+, ghc-platform ? null
+, ghc-toolchain ? null
+  # GHC source tree to build hadrian from
+, ghcSrc
+, ghcVersion
+  # Customization
+, userSettings ? null
+, enableHyperlinkedSource
 }:
 
-if ghcSrc == null || ghcVersion == null
-then throw "hadrian: need to specify ghcSrc and ghcVersion arguments manually"
-else
-
 mkDerivation {
   pname = "hadrian";
   version = ghcVersion;
@@ -44,7 +43,13 @@ mkDerivation {
     parsec shake text transformers unordered-containers
   ] ++ lib.optionals (lib.versionAtLeast ghcVersion "9.7") [
     cryptohash-sha256 base16-bytestring
+  ] ++ lib.optionals (lib.versionAtLeast ghcVersion "9.9") [
+    ghc-platform ghc-toolchain
   ];
+  passthru = {
+    # Expose »private« dependencies if any
+    inherit ghc-platform ghc-toolchain;
+  };
   description = "GHC build system";
   license = lib.licenses.bsd3;
 }
diff --git a/pkgs/development/tools/haskell/hadrian/make-hadrian.nix b/pkgs/development/tools/haskell/hadrian/make-hadrian.nix
new file mode 100644
index 000000000000..6aa30cb9e60c
--- /dev/null
+++ b/pkgs/development/tools/haskell/hadrian/make-hadrian.nix
@@ -0,0 +1,59 @@
+# Hadrian is the build system used to (exclusively) build GHC. It can
+# (theoretically) be used starting with GHC 9.4 and is required since 9.6. It is
+# developed in the GHC source tree and specific to the GHC version it is released
+# with, i.e. Hadrian always needs to be built from the same GHC source tree as
+# the GHC we want to build.
+#
+# This fact makes it impossible to integrate Hadrian into our Haskell package
+# sets which are also used to bootstrap GHC, since a package set can bootstrap
+# multiple GHC versions (usually two major versions). A bootstrap set would need
+# knowledge of the GHC it would eventually bootstrap which would make the logic
+# unnecessarily complicated.
+#
+# Luckily Hadrian is, while annoying to bootstrap, relatively simple. Specifically
+# all it requires to build is (relative to the GHC we are trying to build) a
+# build->build GHC and build->build Haskell packages. We can get all of this
+# from bootPkgs which is already passed to the GHC expression.
+#
+# The solution is the following: The GHC expression passes its source tree and
+# version along with some parameters to this function (./make-hadrian.nix)
+# which acts as a common expression builder for all Hadrian version as well as
+# related packages that are managed in the GHC source tree. Its main job is to
+# expose all possible compile time customization in a common interface and
+# take care of all differences between Hadrian versions.
+{ bootPkgs
+, lib
+}:
+
+{ # GHC source tree and version to build hadrian & friends from.
+  # These are passed on to the actual package expressions.
+  ghcSrc
+, ghcVersion
+  # Contents of a non-default UserSettings.hs to use when building hadrian, if any.
+  # Should be a string or null.
+, userSettings ? null
+  # Whether to pass --hyperlinked-source to haddock or not. This is a custom
+  # workaround as we wait for this to be configurable via userSettings or similar.
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/23625
+, enableHyperlinkedSource ? false
+}:
+
+let
+  callPackage' = f: args: bootPkgs.callPackage f ({
+    inherit ghcSrc ghcVersion;
+  } // args);
+
+  ghc-platform = callPackage' ./ghc-platform.nix { };
+  ghc-toolchain = callPackage' ./ghc-toolchain.nix {
+    inherit ghc-platform;
+  };
+in
+
+callPackage' ./hadrian.nix ({
+  inherit userSettings enableHyperlinkedSource;
+} // lib.optionalAttrs (lib.versionAtLeast ghcVersion "9.9") {
+  # Starting with GHC 9.9 development, additional in tree packages are required
+  # to build hadrian. (Hackage-released conditional dependencies are handled
+  # in ./hadrian.nix without requiring intervention here.)
+  inherit ghc-platform ghc-toolchain;
+})
diff --git a/pkgs/development/tools/just/default.nix b/pkgs/development/tools/just/default.nix
index f95483c144a2..732bd8d43f2b 100644
--- a/pkgs/development/tools/just/default.nix
+++ b/pkgs/development/tools/just/default.nix
@@ -12,17 +12,17 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "just";
-  version = "1.15.0";
+  version = "1.16.0";
   outputs = [ "out" "man" "doc" ];
 
   src = fetchFromGitHub {
     owner = "casey";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-r1YJ7L98aLAwBd3g+WlW/UijceR7t9z7aXSZZjlMNnM=";
+    hash = "sha256-lXZCRoTVIguufyhHn7h4vAajG53qIn8AeDBZuha6be8=";
   };
 
-  cargoHash = "sha256-Fx2BdSHo+W43ZM/SX1ccddXG9QHlftrupT2cbyT4KM0=";
+  cargoHash = "sha256-+r8fcoG23p7ug3xireAnUvJHiB/PXAUzBAKowGqKN8E=";
 
   nativeBuildInputs = [ installShellFiles mdbook ];
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
diff --git a/pkgs/development/tools/language-servers/ruff-lsp/default.nix b/pkgs/development/tools/language-servers/ruff-lsp/default.nix
index d91ec72ea6ae..5b40af17c330 100644
--- a/pkgs/development/tools/language-servers/ruff-lsp/default.nix
+++ b/pkgs/development/tools/language-servers/ruff-lsp/default.nix
@@ -16,15 +16,15 @@
 
 buildPythonPackage rec {
   pname = "ruff-lsp";
-  version = "0.0.42";
+  version = "0.0.45";
   pyproject = true;
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "astral-sh";
     repo = "ruff-lsp";
-    rev = "v${version}";
-    hash = "sha256-Dn/xPjYCyJYlDNMUfl61L/tWq5mRJ8WD0G5qZH9OepY=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-jTLkex2K/IQTKZp2duM26/EaYhG5E2bGs/QKt5PA7lc=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/misc/circleci-cli/default.nix b/pkgs/development/tools/misc/circleci-cli/default.nix
index 5fb7386b08d4..7346469804ee 100644
--- a/pkgs/development/tools/misc/circleci-cli/default.nix
+++ b/pkgs/development/tools/misc/circleci-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "circleci-cli";
-  version = "0.1.29041";
+  version = "0.1.29314";
 
   src = fetchFromGitHub {
     owner = "CircleCI-Public";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MEprN5I9ZWz4xTVdl4qZQHfbLbp4Khh63m37ZBq8pgA=";
+    sha256 = "sha256-RJ4WzKGmdfUHJASusVZqq8JKJlnrxxzV4IaZYuK8JTg=";
   };
 
-  vendorHash = "sha256-EcQ5/zp041P4qi8nenrWuVItV3mFI3EHHRhKm/tqpfA=";
+  vendorHash = "sha256-eW36aQSK4W/HwTCPmeHIX53QN229KZhgGTb3oU10IcY=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/misc/terraform-ls/default.nix b/pkgs/development/tools/misc/terraform-ls/default.nix
index ca1f6337dbdb..81ef5745c925 100644
--- a/pkgs/development/tools/misc/terraform-ls/default.nix
+++ b/pkgs/development/tools/misc/terraform-ls/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "terraform-ls";
-  version = "0.32.2";
+  version = "0.32.3";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-jMUPRgo/XS5nAq9fmonkFBgwY75AaLaZ+fw/qhgXpqE=";
+    hash = "sha256-uvSAqk9LE0NbOWn2rcygDu7Hl28Wu3KkM5UhI4aocGo=";
   };
 
-  vendorHash = "sha256-pUPZvx6og4aZCAvgLK1AdeRHSfnX89h+/6F/4mmUTFI=";
+  vendorHash = "sha256-xoyassGp//8YXG/B1e3kW96UvltQLa662ZlH9/CMzm0=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/development/tools/omniorb/default.nix b/pkgs/development/tools/omniorb/default.nix
index 4acf2264fc9c..28c922f2bd6b 100644
--- a/pkgs/development/tools/omniorb/default.nix
+++ b/pkgs/development/tools/omniorb/default.nix
@@ -8,11 +8,11 @@
 stdenv.mkDerivation rec {
 
   pname = "omniorb";
-  version = "4.3.0";
+  version = "4.3.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/omniorb/omniORB/omniORB-${version}/omniORB-${version}.tar.bz2";
-    hash = "sha256-l2BFojQfTpqFBosh9L2SiZMpKTPu7O/qNy2wngIZ6t0=";
+    hash = "sha256-D0K8Prc3yuaA2vqFs645WOn1ajeRLF+2uHWTP4+3OQ0=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/tools/pandoc/default.nix b/pkgs/development/tools/pandoc/default.nix
index 528a1b3f5355..c8c553afad6e 100644
--- a/pkgs/development/tools/pandoc/default.nix
+++ b/pkgs/development/tools/pandoc/default.nix
@@ -33,6 +33,9 @@ in
       remove-references-to \
         -t ${haskellPackages.warp} \
         $out/bin/pandoc
+      remove-references-to \
+        -t ${haskellPackages.pandoc_3_1_8} \
+        $out/bin/pandoc
     '' + lib.optionalString (stdenv.buildPlatform == stdenv.hostPlatform) ''
       mkdir -p $out/share/bash-completion/completions
       $out/bin/pandoc --bash-completion > $out/share/bash-completion/completions/pandoc
@@ -45,5 +48,5 @@ in
     # lead to a transitive runtime dependency on the whole GHC distribution.
     # This should ideally be fixed in haskellPackages (or even Cabal),
     # but a minimal pandoc is important enough to patch it manually.
-    disallowedReferences = [ haskellPackages.pandoc-types haskellPackages.warp ];
+    disallowedReferences = [ haskellPackages.pandoc-types haskellPackages.warp haskellPackages.pandoc_3_1_8 ];
   })
diff --git a/pkgs/development/tools/protolint/default.nix b/pkgs/development/tools/protolint/default.nix
index 47bdd5530e7a..69fcacb4bc15 100644
--- a/pkgs/development/tools/protolint/default.nix
+++ b/pkgs/development/tools/protolint/default.nix
@@ -35,5 +35,6 @@ buildGoModule rec {
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = [ maintainers.zane ];
+    mainProgram = "protolint";
   };
 }
diff --git a/pkgs/development/tools/yq-go/default.nix b/pkgs/development/tools/yq-go/default.nix
index 2e870975d339..9dbbd19d4680 100644
--- a/pkgs/development/tools/yq-go/default.nix
+++ b/pkgs/development/tools/yq-go/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "yq-go";
-  version = "4.35.2";
+  version = "4.40.1";
 
   src = fetchFromGitHub {
     owner = "mikefarah";
     repo = "yq";
     rev = "v${version}";
-    hash = "sha256-iQJx++MeyXT7hS4NATvzYq+YErTEKYCajAzcn1QIWDU=";
+    hash = "sha256-S2hsZkospf1VMH/fDLiALEraOA8dbG62JejGY2T/tRU=";
   };
 
-  vendorHash = "sha256-nh7boYBNYvNe+uMxV460bkmWQ61VYuvFYQ5CIaNEv98=";
+  vendorHash = "sha256-ggb8ZX2KBj/oY+vomCme/7KlnfsykMm4l027kwlxpWY=";
 
   nativeBuildInputs = [ installShellFiles ];