about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/misc
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/tools/misc')
-rw-r--r--nixpkgs/pkgs/development/tools/misc/act/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/automake/automake-1.16.x.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/misc/aviator/default.nix23
-rw-r--r--nixpkgs/pkgs/development/tools/misc/avrdude/default.nix34
-rw-r--r--nixpkgs/pkgs/development/tools/misc/binutils/bfd-elf-Dont-read-non-existing-secondary-relocs.patch26
-rw-r--r--nixpkgs/pkgs/development/tools/misc/binutils/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/misc/blackmagic/default.nix78
-rwxr-xr-xnixpkgs/pkgs/development/tools/misc/blackmagic/helper.sh52
-rw-r--r--nixpkgs/pkgs/development/tools/misc/bossa/bin2c.c122
-rw-r--r--nixpkgs/pkgs/development/tools/misc/bossa/bossa-no-applet-build.patch16
-rw-r--r--nixpkgs/pkgs/development/tools/misc/bossa/default.nix53
-rw-r--r--nixpkgs/pkgs/development/tools/misc/c2ffi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cc-tool/default.nix42
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ccache/default.nix22
-rw-r--r--nixpkgs/pkgs/development/tools/misc/chruby/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/circleci-cli/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cproto/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ddd/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/misc/distcc/masq.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/misc/dwz/default.nix23
-rw-r--r--nixpkgs/pkgs/development/tools/misc/easypdkprog/default.nix27
-rw-r--r--nixpkgs/pkgs/development/tools/misc/editorconfig-checker/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/fujprog/default.nix39
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gputils/default.nix19
-rw-r--r--nixpkgs/pkgs/development/tools/misc/grpc-tools/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/hydra/common.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/hydra/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/jiq/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/k2tf/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/kibana/7.x.nix22
-rw-r--r--nixpkgs/pkgs/development/tools/misc/linuxkit/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/lttng-tools/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/misc/lttng-ust/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/misc/luarocks/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/misc/luarocks/luarocks-nix.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/mkcert/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/msitools/default.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/misc/openfpgaloader/default.nix36
-rw-r--r--nixpkgs/pkgs/development/tools/misc/openocd/default.nix66
-rw-r--r--nixpkgs/pkgs/development/tools/misc/pwndbg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/qtspim/default.nix61
-rw-r--r--nixpkgs/pkgs/development/tools/misc/remarkable/remarkable-toolchain/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/misc/remarkable/remarkable2-toolchain/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/misc/saleae-logic-2/default.nix27
-rw-r--r--nixpkgs/pkgs/development/tools/misc/spruce/default.nix23
-rw-r--r--nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix71
-rw-r--r--nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix27
-rw-r--r--nixpkgs/pkgs/development/tools/misc/strace/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/teensy-loader-cli/default.nix31
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terracognita/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix31
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraformer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix43
-rw-r--r--nixpkgs/pkgs/development/tools/misc/uisp/default.nix20
-rw-r--r--nixpkgs/pkgs/development/tools/misc/unused/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/usbsdmux/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/watson-ruby/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/xc3sprog/default.nix26
-rw-r--r--nixpkgs/pkgs/development/tools/misc/xspim/default.nix49
-rw-r--r--nixpkgs/pkgs/development/tools/misc/xxgdb/default.nix43
-rw-r--r--nixpkgs/pkgs/development/tools/misc/xxgdb/xxgdb-pty.patch84
-rw-r--r--nixpkgs/pkgs/development/tools/misc/yodl/default.nix4
65 files changed, 513 insertions, 935 deletions
diff --git a/nixpkgs/pkgs/development/tools/misc/act/default.nix b/nixpkgs/pkgs/development/tools/misc/act/default.nix
index 38520b4b3e56..88f75d70fccc 100644
--- a/nixpkgs/pkgs/development/tools/misc/act/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/act/default.nix
@@ -2,20 +2,20 @@
 
 buildGoModule rec {
   pname = "act";
-  version = "0.2.23";
+  version = "0.2.24";
 
   src = fetchFromGitHub {
     owner = "nektos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-PBhlBWycAYuczfP0D+Gf1pDvrfI9gz3JyGe5FBq782Y=";
+    sha256 = "sha256-BWSw1yELxLDMUg2LxXuy+N0IRxLQYtVdzny1FGYVXEY=";
   };
 
   vendorSha256 = "sha256-dLIsVWN/PjcH0CUYRmn4YaF8Pczf/gaWhD3lulqGiuA=";
 
   doCheck = false;
 
-  buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
+  ldflags = [ "-s" "-w" "-X main.version=${version}" ];
 
   meta = with lib; {
     description = "Run your GitHub Actions locally";
diff --git a/nixpkgs/pkgs/development/tools/misc/automake/automake-1.16.x.nix b/nixpkgs/pkgs/development/tools/misc/automake/automake-1.16.x.nix
index 48f01f8d0f67..042aff09a5fc 100644
--- a/nixpkgs/pkgs/development/tools/misc/automake/automake-1.16.x.nix
+++ b/nixpkgs/pkgs/development/tools/misc/automake/automake-1.16.x.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchurl, perl, autoconf }:
 
 stdenv.mkDerivation rec {
+  # When updating, beware of https://github.com/NixOS/nixpkgs/pull/131928#issuecomment-896614165
   name = "automake-1.16.3";
 
   src = fetchurl {
diff --git a/nixpkgs/pkgs/development/tools/misc/aviator/default.nix b/nixpkgs/pkgs/development/tools/misc/aviator/default.nix
new file mode 100644
index 000000000000..66b2ae450351
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/aviator/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "aviator";
+  version = "1.8.1";
+
+  src = fetchFromGitHub {
+    owner = "herrjulz";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-Oa4z8n+q7LKWMnwk+xj9UunzOa3ChaPBCTo828yYJGQ=";
+  };
+
+  deleteVendor = true;
+  vendorSha256 = "sha256-rYOphvI1ZE8X5UExfgxHnWBn697SDkNnmxeY7ihIZ1s=";
+
+  meta = with lib; {
+    description = "Merge YAML/JSON files in a in a convenient fashion";
+    homepage = "https://github.com/herrjulz/aviator";
+    license = licenses.mit;
+    maintainers = with maintainers; [ risson ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/avrdude/default.nix b/nixpkgs/pkgs/development/tools/misc/avrdude/default.nix
deleted file mode 100644
index db2ffce50cec..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/avrdude/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv, fetchurl, bison, flex, libusb-compat-0_1, libelf, libftdi1, readline
-# docSupport is a big dependency, disabled by default
-, docSupport ? false, texLive ? null, texinfo ? null, texi2html ? null
-}:
-
-assert docSupport -> texLive != null && texinfo != null && texi2html != null;
-
-stdenv.mkDerivation rec {
-  pname = "avrdude";
-  version = "6.3";
-
-  src = fetchurl {
-    url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "15m1w1qad3dj7r8n5ng1qqcaiyx1gyd6hnc3p2apgjllccdp77qg";
-  };
-
-  configureFlags = lib.optionals docSupport "--enable-doc";
-
-  buildInputs = [ bison flex libusb-compat-0_1 libelf libftdi1 readline ]
-    ++ lib.optionals docSupport [ texLive texinfo texi2html ];
-
-  meta = with lib; {
-    description = "Command-line tool for programming Atmel AVR microcontrollers";
-    longDescription = ''
-      AVRDUDE (AVR Downloader/UploaDEr) is an utility to
-      download/upload/manipulate the ROM and EEPROM contents of AVR
-      microcontrollers using the in-system programming technique (ISP).
-    '';
-    homepage = "https://www.nongnu.org/avrdude/";
-    license = licenses.gpl2Plus;
-    platforms = with platforms; linux ++ darwin;
-    maintainers = [ maintainers.bjornfor ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/binutils/bfd-elf-Dont-read-non-existing-secondary-relocs.patch b/nixpkgs/pkgs/development/tools/misc/binutils/bfd-elf-Dont-read-non-existing-secondary-relocs.patch
new file mode 100644
index 000000000000..c166066c9803
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/binutils/bfd-elf-Dont-read-non-existing-secondary-relocs.patch
@@ -0,0 +1,26 @@
+X-Git-Url: https://sourceware.org/git/?p=binutils-gdb.git;a=blobdiff_plain;f=bfd%2Felf.c;h=af62aadc3d446cd5b1f0201b207c90c22e7809b1;hp=36733e080dd9d9be28b576b246aaf5bd8c8569c7;hb=84fd26d8209e99fc3a432dd0b09b6c053de1ce65;hpb=abe2a28aaa7a2bfd0f3061c72a98eb898976b721
+
+diff --git a/bfd/elf.c b/bfd/elf.c
+index 36733e080dd..af62aadc3d4 100644
+--- a/bfd/elf.c
++++ b/bfd/elf.c
+@@ -2454,6 +2454,8 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
+ 		     "for section %pA found - ignoring"),
+ 		   abfd, name, target_sect);
+ 	      }
++	    else
++	      esdt->has_secondary_relocs = TRUE;
+ 	    goto success;
+ 	  }
+ 
+@@ -12587,6 +12589,9 @@ _bfd_elf_slurp_secondary_reloc_section (bfd *       abfd,
+ #endif
+     r_sym = elf32_r_sym;
+   
++  if (!elf_section_data (sec)->has_secondary_relocs)
++    return TRUE;
++
+   /* Discover if there are any secondary reloc sections
+      associated with SEC.  */
+   for (relsec = abfd->sections; relsec != NULL; relsec = relsec->next)
+
diff --git a/nixpkgs/pkgs/development/tools/misc/binutils/default.nix b/nixpkgs/pkgs/development/tools/misc/binutils/default.nix
index a4233886a854..7a06e290a966 100644
--- a/nixpkgs/pkgs/development/tools/misc/binutils/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/binutils/default.nix
@@ -61,6 +61,15 @@ stdenv.mkDerivation {
     # cross-compiling.
     ./always-search-rpath.patch
 
+    # Fix quadratic slowdown in `strip` performance.
+    # See #129467 and https://sourceware.org/bugzilla/show_bug.cgi?id=28058
+    # Remove when we're on binutils > 2.36.1.
+    # The patch is downloaded from
+    #     https://sourceware.org/git/?p=binutils-gdb.git;a=blobdiff_plain;f=bfd/elf.c;h=af62aadc3d446cd5b1f0201b207c90c22e7809b1;hp=36733e080dd9d9be28b576b246aaf5bd8c8569c7;hb=84fd26d8209e99fc3a432dd0b09b6c053de1ce65;hpb=abe2a28aaa7a2bfd0f3061c72a98eb898976b721
+    # which is the 2.36 backport (using `TRUE` instead of `true` of binutils master commit:
+    #     https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=956ea65cd707707c0f725930214cbc781367a831
+    ./bfd-elf-Dont-read-non-existing-secondary-relocs.patch
+
     ./CVE-2020-35448.patch
   ] ++ lib.optional stdenv.targetPlatform.isiOS ./support-ios.patch
     ++ # This patch was suggested by Nick Clifton to fix
diff --git a/nixpkgs/pkgs/development/tools/misc/blackmagic/default.nix b/nixpkgs/pkgs/development/tools/misc/blackmagic/default.nix
deleted file mode 100644
index f3b3b0b2d04b..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/blackmagic/default.nix
+++ /dev/null
@@ -1,78 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, fetchpatch
-, gcc-arm-embedded, libftdi1, libusb-compat-0_1, pkg-config
-, python3
-}:
-
-with lib;
-
-stdenv.mkDerivation rec {
-  pname = "blackmagic";
-  version = "unstable-2020-08-05";
-  # `git describe --always`
-  firmwareVersion = "v1.6.1-539-gdd74ec8";
-
-  src = fetchFromGitHub {
-    owner = "blacksphere";
-    repo = "blackmagic";
-    rev = "dd74ec8e6f734302daa1ee361af88dfb5043f166";
-    sha256 = "18w8y64fs7wfdypa4vm3migk5w095z8nbd8qp795f322mf2bz281";
-    fetchSubmodules = true;
-  };
-
-  patches = [
-    # Fix deprecation warning with libftdi 1.5
-    (fetchpatch {
-      url = "https://github.com/blacksphere/blackmagic/commit/dea4be2539c5ea63836ec78dca08b52fa8b26ab5.patch";
-      sha256 = "0f81simij1wdhifsxaavalc6yxzagfbgwry969dbjmxqzvrsrds5";
-    })
-  ];
-
-  nativeBuildInputs = [
-    gcc-arm-embedded pkg-config
-    python3
-  ];
-
-  buildInputs = [
-    libftdi1
-    libusb-compat-0_1
-  ];
-
-  strictDeps = true;
-
-  postPatch = ''
-    # Prevent calling out to `git' to generate a version number:
-    substituteInPlace src/Makefile \
-      --replace '$(shell git describe --always --dirty)' '${firmwareVersion}'
-
-    # Fix scripts that generate headers:
-    for f in $(find scripts libopencm3/scripts -type f); do
-      patchShebangs "$f"
-    done
-  '';
-
-  buildPhase = "${stdenv.shell} ${./helper.sh}";
-  dontInstall = true;
-
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "In-application debugger for ARM Cortex microcontrollers";
-    longDescription = ''
-      The Black Magic Probe is a modern, in-application debugging tool
-      for embedded microprocessors. It allows you to see what is going
-      on "inside" an application running on an embedded microprocessor
-      while it executes.
-
-      This package builds the firmware for all supported platforms,
-      placing them in separate directories under the firmware
-      directory.  It also places the FTDI version of the blackmagic
-      executable in the bin directory.
-    '';
-    homepage = "https://github.com/blacksphere/blackmagic";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ pjones emily sorki ];
-    # fails on darwin with
-    # arm-none-eabi-gcc: error: unrecognized command line option '-iframework'
-    platforms = platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/blackmagic/helper.sh b/nixpkgs/pkgs/development/tools/misc/blackmagic/helper.sh
deleted file mode 100755
index bae57f633cfb..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/blackmagic/helper.sh
+++ /dev/null
@@ -1,52 +0,0 @@
-################################################################################
-# Build all of the platforms manually since the `all_platforms' target
-# doesn't preserve all of the build outputs and overrides CFLAGS.
-set -e
-set -u
-
-################################################################################
-# Prevent a warning from shellcheck:
-out=${out:-/tmp}
-
-################################################################################
-export CFLAGS=$NIX_CFLAGS_COMPILE
-export MAKEFLAGS="\
-  ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}"
-
-################################################################################
-PRODUCTS="blackmagic.bin blackmagic.hex blackmagic_dfu.bin blackmagic_dfu.hex"
-
-################################################################################
-make_platform() {
-  echo "Building for hardware platform $1"
-
-  make clean
-  make PROBE_HOST="$1"
-
-  if [ "$1" = "hosted" ]; then
-    install -m 0555 blackmagic "$out/bin"
-  fi
-
-  for f in $PRODUCTS; do
-    if [ -r "$f" ]; then
-      mkdir -p "$out/firmware/$1"
-      install -m 0444 "$f" "$out/firmware/$1"
-    fi
-  done
-
-}
-
-################################################################################
-# Start by building libopencm3:
-make -C libopencm3
-
-################################################################################
-# And now all of the platforms:
-cd src
-
-mkdir -p "$out/bin"
-
-for platform in platforms/*/Makefile.inc; do
-  probe=$(basename "$(dirname "$platform")")
-  make_platform "$probe"
-done
diff --git a/nixpkgs/pkgs/development/tools/misc/bossa/bin2c.c b/nixpkgs/pkgs/development/tools/misc/bossa/bin2c.c
deleted file mode 100644
index f0b915de540a..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/bossa/bin2c.c
+++ /dev/null
@@ -1,122 +0,0 @@
-// bin2c.c
-//
-// convert a binary file into a C source vector
-//
-// THE "BEER-WARE LICENSE" (Revision 3.1415):
-// sandro AT sigala DOT it wrote this file. As long as you retain this notice you can do
-// whatever you want with this stuff.  If we meet some day, and you think this stuff is
-// worth it, you can buy me a beer in return.  Sandro Sigala
-//
-// syntax:  bin2c [-c] [-z] <input_file> <output_file>
-//
-//          -c    add the "const" keyword to definition
-//          -z    terminate the array with a zero (useful for embedded C strings)
-//
-// examples:
-//     bin2c -c myimage.png myimage_png.cpp
-//     bin2c -z sometext.txt sometext_txt.cpp
- 
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
- 
-#ifndef PATH_MAX
-#define PATH_MAX 1024
-#endif
- 
-int useconst = 0;
-int zeroterminated = 0;
- 
-int myfgetc(FILE *f)
-{
-	int c = fgetc(f);
-	if (c == EOF && zeroterminated)
-	{
-		zeroterminated = 0;
-		return 0;
-	}
-	return c;
-}
- 
-void process(const char *ifname, const char *ofname)
-{
-	FILE *ifile, *ofile;
-	ifile = fopen(ifname, "rb");
-	if (ifile == NULL)
-	{
-		fprintf(stderr, "cannot open %s for reading\n", ifname);
-		exit(1);
-	}
-	ofile = fopen(ofname, "wb");
-	if (ofile == NULL)
-	{
-		fprintf(stderr, "cannot open %s for writing\n", ofname);
-		exit(1);
-	}
-	char buf[PATH_MAX], *p;
-	const char *cp;
-	if ((cp = strrchr(ifname, '/')) != NULL)
-	{
-		++cp;
-	} else {
-		if ((cp = strrchr(ifname, '\\')) != NULL)
-			++cp;
-		else
-			cp = ifname;
-	}
-	strcpy(buf, cp);
-	for (p = buf; *p != '\0'; ++p)
-	{
-		if (!isalnum(*p))
-			*p = '_';
-	}
-	fprintf(ofile, "static %sunsigned char %s[] = {\n", useconst ? "const " : "", buf);
-	int c, col = 1;
-	while ((c = myfgetc(ifile)) != EOF)
-	{
-		if (col >= 78 - 6)
-		{
-			fputc('\n', ofile);
-			col = 1;
-		}
-		fprintf(ofile, "0x%.2x, ", c);
-		col += 6;
-	}
-	fprintf(ofile, "\n};\n");
- 
-	fclose(ifile);
-	fclose(ofile);
-}
- 
-void usage(void)
-{
-	fprintf(stderr, "usage: bin2c [-cz] <input_file> <output_file>\n");
-	exit(1);
-}
- 
-int main(int argc, char **argv)
-{
-	while (argc > 3)
-	{
-		if (!strcmp(argv[1], "-c"))
-		{
-			useconst = 1;
-			--argc;
-			++argv;
-		} else if (!strcmp(argv[1], "-z"))
-		{
-			zeroterminated = 1;
-			--argc;
-			++argv;
-		} else {
-			usage();
-		}
-	}
-	if (argc != 3)
-	{
-		usage();
-	}
-	process(argv[1], argv[2]);
-	return 0;
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/bossa/bossa-no-applet-build.patch b/nixpkgs/pkgs/development/tools/misc/bossa/bossa-no-applet-build.patch
deleted file mode 100644
index 4284245f485d..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/bossa/bossa-no-applet-build.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/Makefile b/Makefile
-index cc8882e..97b11ee 100644
---- a/Makefile
-+++ b/Makefile
-@@ -184,11 +184,6 @@ $(foreach src,$(COMMON_SRCS),$(eval $(call common_obj,$(src))))
- # Applet rules
- #
- define applet_obj
--$(SRCDIR)/$(1:%.asm=%.cpp): $(SRCDIR)/$(1)
--	@echo APPLET $(1:%.asm=%)
--	$$(Q)$$(ARMAS) -o $$(@:%.o=%.obj) $$<
--	$$(Q)$$(ARMOBJCOPY) -O binary $$(@:%.o=%.obj) $$(@:%.o=%.bin)
--	$$(Q)appletgen $(1:%.asm=%) $(SRCDIR) $(OBJDIR)
- $(OBJDIR)/$(1:%.asm=%.o): $(SRCDIR)/$(1:%.asm=%.cpp)
- 	@echo CPP APPLET $$<
- 	$$(Q)$$(CXX) $$(COMMON_CXXFLAGS) -c -o $$(@) $$(<:%.asm=%.cpp)
diff --git a/nixpkgs/pkgs/development/tools/misc/bossa/default.nix b/nixpkgs/pkgs/development/tools/misc/bossa/default.nix
deleted file mode 100644
index 4e35ff35f660..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/bossa/default.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-{ lib, stdenv, fetchgit, wxGTK, libX11, readline }:
-
-let
-  # BOSSA needs a "bin2c" program to embed images.
-  # Source taken from:
-  # http://wiki.wxwidgets.org/Embedding_PNG_Images-Bin2c_In_C
-  bin2c = stdenv.mkDerivation {
-    name = "bossa-bin2c";
-    src = ./bin2c.c;
-    dontUnpack = true;
-    buildPhase = "cc $src -o bin2c";
-    installPhase = "mkdir -p $out/bin; cp bin2c $out/bin/";
-  };
-
-in
-stdenv.mkDerivation {
-  pname = "bossa";
-  version = "1.8";
-
-  src = fetchgit {
-    url = "https://github.com/shumatech/BOSSA";
-    rev = "3be622ca0aa6214a2fc51c1ec682c4a58a423d62";
-    sha256 = "19ik86qbffcb04cgmi4mnascbkck4ynfj87ha65qdk6fmp5q35vm";
-  };
-
-  patches = [ ./bossa-no-applet-build.patch ];
-
-  nativeBuildInputs = [ bin2c ];
-  buildInputs = [ wxGTK libX11 readline ];
-
-  # Explicitly specify targets so they don't get stripped.
-  makeFlags = [ "bin/bossac" "bin/bossash" "bin/bossa" ];
-  NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp bin/bossa{c,sh,} $out/bin/
-  '';
-
-  meta = with lib; {
-    description = "A flash programming utility for Atmel's SAM family of flash-based ARM microcontrollers";
-    longDescription = ''
-      BOSSA is a flash programming utility for Atmel's SAM family of
-      flash-based ARM microcontrollers. The motivation behind BOSSA is
-      to create a simple, easy-to-use, open source utility to replace
-      Atmel's SAM-BA software. BOSSA is an acronym for Basic Open
-      Source SAM-BA Application to reflect that goal.
-    '';
-    homepage = "http://www.shumatech.com/web/products/bossa";
-    license = licenses.bsd3;
-    platforms = platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/c2ffi/default.nix b/nixpkgs/pkgs/development/tools/misc/c2ffi/default.nix
index b7a5b1dc7eb8..6db9557c6e1b 100644
--- a/nixpkgs/pkgs/development/tools/misc/c2ffi/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/c2ffi/default.nix
@@ -12,13 +12,13 @@ in
 
 llvmPackages.stdenv.mkDerivation {
   pname = "c2ffi-${c2ffiBranch}";
-  version = "unstable-2021-04-15";
+  version = "unstable-2021-06-15";
 
   src = fetchFromGitHub {
     owner = "rpav";
     repo = "c2ffi";
-    rev = "0255131f80b21334e565231331c2b451b6bba8c4";
-    sha256 = "0ihysgqjyg5xwi098hxf15lpdi6g4nwpzczp495is912c48fy6b6";
+    rev = "f50243926a0afb589de1078a073ac08910599582";
+    sha256 = "UstGicFzFY0/Jge5HGYTPwYSnh9OUBY5346ObZYfR54=";
   };
 
   passthru.updateScript = unstableGitUpdater {
diff --git a/nixpkgs/pkgs/development/tools/misc/cc-tool/default.nix b/nixpkgs/pkgs/development/tools/misc/cc-tool/default.nix
deleted file mode 100644
index e2a511a0e328..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/cc-tool/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, boost
-, libusb1
-, pkg-config
-}:
-
-stdenv.mkDerivation rec {
-  pname = "cc-tool";
-  version = "unstable-2020-05-19";
-
-  src = fetchFromGitHub {
-    owner = "dashesy";
-    repo = pname;
-    rev = "19e707eafaaddee8b996ad27a9f3e1aafcb900d2";
-    hash = "sha256:1f78j498fdd36xbci57jkgh25gq14g3b6xmp76imdpar0jkpyljv";
-  };
-
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ boost libusb1 ];
-
-  postPatch = ''
-    substituteInPlace udev/90-cc-debugger.rules \
-      --replace 'MODE="0666"' 'MODE="0660", GROUP="plugdev", TAG+="uaccess"'
-  '';
-
-  postInstall = ''
-    install -D udev/90-cc-debugger.rules $out/lib/udev/rules.d/90-cc-debugger.rules
-  '';
-
-  meta = with lib; {
-    description = "Command line tool for the Texas Instruments CC Debugger";
-    longDescription = ''
-      cc-tool provides support for Texas Instruments CC Debugger
-    '';
-    homepage = "https://github.com/dashesy/cc-tool";
-    license = licenses.gpl2;
-    platforms = with platforms; linux ++ darwin;
-    maintainers = [ maintainers.CRTified ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/ccache/default.nix b/nixpkgs/pkgs/development/tools/misc/ccache/default.nix
index 909a160c7eea..3b1b54e6547a 100644
--- a/nixpkgs/pkgs/development/tools/misc/ccache/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ccache/default.nix
@@ -1,10 +1,9 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , substituteAll
 , binutils
-, asciidoc
+, asciidoctor
 , cmake
 , perl
 , zstd
@@ -15,13 +14,13 @@
 
 let ccache = stdenv.mkDerivation rec {
   pname = "ccache";
-  version = "4.3";
+  version = "4.4";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ZBxDTMUZiZJLIYbvACTFwvlss+IZiMjiL0khfM5hFCM=";
+    hash = "sha256-ZewR1srksfKCxehhAg3i8m+0OvmOSF+24njbtcc1GQY=";
   };
 
   outputs = [ "out" "man" ];
@@ -35,16 +34,17 @@ let ccache = stdenv.mkDerivation rec {
       src = ./force-objdump-on-darwin.patch;
       objdump = "${binutils.bintools}/bin/objdump";
     })
-    # Fix clang C++ modules test (remove in next release)
-    (fetchpatch {
-      url = "https://github.com/ccache/ccache/commit/8b0c783ffc77d29a3e3520345b776a5c496fd892.patch";
-      sha256 = "13qllx0qhfrdila6bdij9lk74fhkm3vdj01zgq1ri6ffrv9lqrla";
-    })
   ];
 
-  nativeBuildInputs = [ asciidoc cmake perl ];
+  nativeBuildInputs = [ asciidoctor cmake perl ];
   buildInputs = [ zstd ];
 
+  cmakeFlags = [
+    # Build system does not autodetect redis library presence.
+    # Requires explicit flag.
+    "-DREDIS_STORAGE_BACKEND=OFF"
+  ];
+
   doCheck = true;
   checkInputs = [
     # test/run requires the compgen function which is available in
@@ -56,7 +56,7 @@ let ccache = stdenv.mkDerivation rec {
     runHook preCheck
     export HOME=$(mktemp -d)
     ctest --output-on-failure ${lib.optionalString stdenv.isDarwin ''
-      -E '^(test.nocpp2|test.basedir|test.multi_arch)$'
+      -E '^(test.nocpp2|test.basedir|test.multi_arch|test.trim_dir)$'
     ''}
     runHook postCheck
   '';
diff --git a/nixpkgs/pkgs/development/tools/misc/chruby/default.nix b/nixpkgs/pkgs/development/tools/misc/chruby/default.nix
index bcc0687f55b6..1aef6d52075f 100644
--- a/nixpkgs/pkgs/development/tools/misc/chruby/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/chruby/default.nix
@@ -19,8 +19,6 @@ in stdenv.mkDerivation rec {
     sha256 = "1894g6fymr8kra9vwhbmnrcr58l022mcd7g9ans4zd3izla2j3gx";
   };
 
-  phases = [ "unpackPhase" "patchPhase" "installPhase" "fixupPhase" ];
-
   patches = lib.optionalString (rubies != null) [
     ./env.patch
   ];
diff --git a/nixpkgs/pkgs/development/tools/misc/circleci-cli/default.nix b/nixpkgs/pkgs/development/tools/misc/circleci-cli/default.nix
index 2d5e77f79186..6ce86c44d7f9 100644
--- a/nixpkgs/pkgs/development/tools/misc/circleci-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/circleci-cli/default.nix
@@ -2,20 +2,20 @@
 
 buildGoModule rec {
   pname = "circleci-cli";
-  version = "0.1.15149";
+  version = "0.1.15824";
 
   src = fetchFromGitHub {
     owner = "CircleCI-Public";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-pmLDCNgCQv4fetl/q6ZokH1qF6pSqsR0DUWbzGeEtaw=";
+    sha256 = "sha256-bTRtzjIm5NI89O09hMyiDVL4skkfg1C8/92IEDaIAak=";
   };
 
-  vendorSha256 = "sha256-j7VP/QKKMdmWQ60BYpChG4syDlll7CY4rb4wfb4+Z1s=";
+  vendorSha256 = "sha256-VOPXM062CZ6a6CJGzYTHav1OkyiH7XUHXWrRdGekaGQ=";
 
   doCheck = false;
 
-  buildFlagsArray = [ "-ldflags=-s -w -X github.com/CircleCI-Public/circleci-cli/version.Version=${version} -X github.com/CircleCI-Public/circleci-cli/version.Commit=${src.rev} -X github.com/CircleCI-Public/circleci-cli/version.packageManager=nix" ];
+  ldflags = [ "-s" "-w" "-X github.com/CircleCI-Public/circleci-cli/version.Version=${version}" "-X github.com/CircleCI-Public/circleci-cli/version.Commit=${src.rev}" "-X github.com/CircleCI-Public/circleci-cli/version.packageManager=nix" ];
 
   preBuild = ''
     substituteInPlace data/data.go \
diff --git a/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix b/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix
index 8534f1e2d85a..2d9aa55ed050 100644
--- a/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/coccinelle/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, python, ncurses, ocamlPackages, pkg-config }:
+{ fetchurl, lib, stdenv, python3, ncurses, ocamlPackages, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "coccinelle";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = with ocamlPackages; [
     ocaml findlib menhir
     ocaml_pcre parmap stdcompat
-    python ncurses pkg-config
+    python3 ncurses pkg-config
   ];
 
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/tools/misc/cproto/default.nix b/nixpkgs/pkgs/development/tools/misc/cproto/default.nix
index 84890f166235..cfd2ed81e7c4 100644
--- a/nixpkgs/pkgs/development/tools/misc/cproto/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cproto/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "cproto";
-  version = "4.7r";
+  version = "4.7s";
 
   src = fetchurl {
     urls = [
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
       # No version listings and apparently no versioned tarball over http(s).
       "ftp://ftp.invisible-island.net/cproto/cproto-${version}.tgz"
     ];
-    sha256 = "sha256-bgRg2yVZXHobUz8AUaV4ZKBkp2KjP+2oXbDXmPTUX8U=";
+    sha256 = "sha256-TGpZNahykQjRcUhgmwgDRQ/OFRWFiW+7gXhfHGEYQrg=";
   };
 
   # patch made by Joe Khoobyar copied from gentoo bugs
diff --git a/nixpkgs/pkgs/development/tools/misc/ddd/default.nix b/nixpkgs/pkgs/development/tools/misc/ddd/default.nix
index ca50deb504d3..ecb198d72480 100644
--- a/nixpkgs/pkgs/development/tools/misc/ddd/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ddd/default.nix
@@ -10,14 +10,22 @@ stdenv.mkDerivation rec {
   buildInputs = [motif ncurses libX11 libXt];
   configureFlags = [ "--with-x" ];
 
-  patches = [ ./gcc44.patch ];
+  patches = [
+    # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=504868
+    ./gcc44.patch
+  ];
 
   NIX_CFLAGS_COMPILE = "-fpermissive";
 
+  postInstall = ''
+    install -D icons/ddd.xpm $out/share/pixmaps/ddd.xpm
+  '';
+
   meta = {
     homepage = "https://www.gnu.org/software/ddd";
     description = "Graphical front-end for command-line debuggers";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl3Plus;
     platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ angustrau ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/distcc/masq.nix b/nixpkgs/pkgs/development/tools/misc/distcc/masq.nix
index 2387ab1bd418..27840481a109 100644
--- a/nixpkgs/pkgs/development/tools/misc/distcc/masq.nix
+++ b/nixpkgs/pkgs/development/tools/misc/distcc/masq.nix
@@ -3,7 +3,8 @@
 stdenv.mkDerivation {
   name = "distcc-masq-${gccRaw.name}";
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
+
   installPhase = ''
     mkdir -p $out/bin
 
diff --git a/nixpkgs/pkgs/development/tools/misc/dwz/default.nix b/nixpkgs/pkgs/development/tools/misc/dwz/default.nix
new file mode 100644
index 000000000000..0a13d4a68dd0
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/dwz/default.nix
@@ -0,0 +1,23 @@
+{ lib, stdenv, fetchurl, elfutils }:
+
+stdenv.mkDerivation rec {
+  pname = "dwz";
+  version = "0.14";
+
+  src = fetchurl {
+    url = "https://www.sourceware.org/ftp/${pname}/releases/${pname}-${version}.tar.gz";
+    sha256 = "07qdvzfk4mvbqj5z3aff7vc195dxqn1mi27w2dzs1w2zhymnw01k";
+  };
+
+  nativeBuildInputs = [ elfutils ];
+
+  makeFlags = [ "prefix=${placeholder "out"}" ];
+
+  meta = with lib; {
+    homepage = "https://sourceware.org/dwz/";
+    description = "DWARF optimization and duplicate removal tool";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ jbcrail ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/easypdkprog/default.nix b/nixpkgs/pkgs/development/tools/misc/easypdkprog/default.nix
deleted file mode 100644
index 92d1a550ea80..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/easypdkprog/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  pname = "easypdkprog";
-  version = "1.3";
-
-  src = fetchFromGitHub {
-    owner = "free-pdk";
-    repo = "easy-pdk-programmer-software";
-    rev = version;
-    sha256 = "0hc3gdmn6l01z63hzzwdhbdyy288gh5v219bsfm8fb1498vpnd6f";
-  };
-
-  installPhase = ''
-    install -Dm755 -t $out/bin easypdkprog
-  '' + lib.optionalString stdenv.isLinux ''
-    install -Dm644 -t $out/etc/udev/rules.d Linux_udevrules/70-stm32vcp.rules
-  '';
-
-  meta = with lib; {
-    description = "Read, write and execute programs on PADAUK microcontroller";
-    homepage = "https://github.com/free-pdk/easy-pdk-programmer-software";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ david-sawatzke ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/editorconfig-checker/default.nix b/nixpkgs/pkgs/development/tools/misc/editorconfig-checker/default.nix
index b4359bb18601..37f455e91bed 100644
--- a/nixpkgs/pkgs/development/tools/misc/editorconfig-checker/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/editorconfig-checker/default.nix
@@ -17,7 +17,7 @@ buildGoModule rec {
 
   nativeBuildInputs = [ installShellFiles ];
 
-  buildFlagsArray = [ "-ldflags=-X main.version=${version}" ];
+  ldflags = [ "-X main.version=${version}" ];
 
   postInstall = ''
     installManPage docs/editorconfig-checker.1
diff --git a/nixpkgs/pkgs/development/tools/misc/fujprog/default.nix b/nixpkgs/pkgs/development/tools/misc/fujprog/default.nix
deleted file mode 100644
index db1f42e3a266..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/fujprog/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib, stdenv
-, fetchFromGitHub
-, cmake
-, pkg-config
-, IOKit
-, libftdi1
-, libusb-compat-0_1
-}:
-
-stdenv.mkDerivation rec {
-  pname = "fujprog";
-  version = "4.8";
-
-  src = fetchFromGitHub {
-    owner = "kost";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "08kzkzd5a1wfd1aycywdynxh3qy6n7z9i8lihkahmb4xac3chmz5";
-  };
-
-  nativeBuildInputs = [
-    cmake
-    pkg-config
-  ];
-
-  buildInputs = [
-    libftdi1
-    libusb-compat-0_1
-  ] ++ lib.optionals stdenv.isDarwin [ IOKit ];
-
-  meta = with lib; {
-    description = "JTAG programmer for the ULX3S and ULX2S open hardware FPGA development boards";
-    homepage = "https://github.com/kost/fujprog";
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ trepetti ];
-    platforms = platforms.all;
-    changelog = "https://github.com/kost/fujprog/releases/tag/v${version}";
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/gputils/default.nix b/nixpkgs/pkgs/development/tools/misc/gputils/default.nix
deleted file mode 100644
index c07949e80968..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/gputils/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ lib, stdenv, fetchurl }:
-
-stdenv.mkDerivation rec {
-  pname = "gputils";
-  version = "1.5.0-1";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/gputils/${pname}-${version}.tar.bz2";
-    sha256 = "055v83fdgqljprapf7rmh8x66mr13fj0qypj49xba5spx0ca123g";
-  };
-
-  meta = with lib; {
-    homepage = "https://gputils.sourceforge.io";
-    description = "A collection of tools for the Microchip (TM) PIC microcontrollers. It includes gpasm, gplink, and gplib";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ yorickvp ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/grpc-tools/default.nix b/nixpkgs/pkgs/development/tools/misc/grpc-tools/default.nix
index 3e06f10cbf1e..96bdce6d0ef6 100644
--- a/nixpkgs/pkgs/development/tools/misc/grpc-tools/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/grpc-tools/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "grpc-tools";
-  version = "1.10.0";
+  version = "1.11.2";
 
   src = fetchFromGitHub {
     owner = "grpc";
     repo = "grpc-node";
-    rev = "3a094f01711942f79abd8a536c45a91b574d626f"; # version 1.10.0 was not tagged
-    sha256 = "1a7l91kxc3g7mqfqvhc3nb7zy0n21ifs5ck0qqg09qh3f44q04xm";
+    rev = "grpc-tools@${version}";
+    sha256 = "00432y19pjcimwachjcqpzra21vzmlqchhhlqxnk98bfh25kxdcb";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/hydra/common.nix b/nixpkgs/pkgs/development/tools/misc/hydra/common.nix
index 5b1973c2b9e0..fd1896f24b81 100644
--- a/nixpkgs/pkgs/development/tools/misc/hydra/common.nix
+++ b/nixpkgs/pkgs/development/tools/misc/hydra/common.nix
@@ -26,6 +26,7 @@ let
         CatalystPluginAccessLog
         CatalystPluginAuthorizationRoles
         CatalystPluginCaptcha
+        CatalystPluginPrometheusTiny
         CatalystPluginSessionStateCookie
         CatalystPluginSessionStoreFastMmap
         CatalystPluginSmartURI
@@ -59,6 +60,7 @@ let
         NetPrometheus
         NetStatsd
         PadWalker
+        PrometheusTinyShared
         Readonly
         SQLSplitStatement
         SetScalar
diff --git a/nixpkgs/pkgs/development/tools/misc/hydra/default.nix b/nixpkgs/pkgs/development/tools/misc/hydra/default.nix
index a124b4a5c6e2..ac5600519b49 100644
--- a/nixpkgs/pkgs/development/tools/misc/hydra/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/hydra/default.nix
@@ -2,12 +2,12 @@
 
 {
   hydra-unstable = callPackage ./common.nix {
-    version = "2021-05-03";
+    version = "2021-08-11";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "hydra";
-      rev = "886e6f85e45a1f757e9b77d2a9e4539fbde29468";
-      sha256 = "t7Qb57Xjc0Ou+VDGC1N5u9AmeODW6MVOwKSrYRJq5f0=";
+      rev = "9bce425c3304173548d8e822029644bb51d35263";
+      sha256 = "sha256-tGzwKNW/odtAYcazWA9bPVSmVXMGKfXsqCA1UYaaxmU=";
     };
     nix = nixUnstable;
 
diff --git a/nixpkgs/pkgs/development/tools/misc/jiq/default.nix b/nixpkgs/pkgs/development/tools/misc/jiq/default.nix
index c52a9ae4c030..61477a4c7de0 100644
--- a/nixpkgs/pkgs/development/tools/misc/jiq/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/jiq/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "jiq";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "fiatjaf";
     repo = pname;
-    rev = version;
-    sha256 = "sha256-EPhnfgmn0AufuxwcwRrEEQk+RD97akFJSzngkTl4LmY=";
+    rev = "v${version}";
+    sha256 = "sha256-txhttYngN+dofA3Yp3gZUZPRRZWGug9ysXq1Q0RP7ig=";
   };
 
   vendorSha256 = "sha256-ZUmOhPGy+24AuxdeRVF0Vnu8zDGFrHoUlYiDdfIV5lc=";
diff --git a/nixpkgs/pkgs/development/tools/misc/k2tf/default.nix b/nixpkgs/pkgs/development/tools/misc/k2tf/default.nix
index 904256ee66a9..bc24d4563a5c 100644
--- a/nixpkgs/pkgs/development/tools/misc/k2tf/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/k2tf/default.nix
@@ -13,7 +13,7 @@ buildGoModule rec {
 
   vendorSha256 = "1c2mwhrj0xapc661z1nb6am4qq3rd1pvbvjaxikjyx95n0gs8gjk";
 
-  buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version} -X main.commit=v${version}" ];
+  ldflags = [ "-s" "-w" "-X main.version=${version}" "-X main.commit=v${version}" ];
 
   meta = with lib; {
     description = "Kubernetes YAML to Terraform HCL converter";
diff --git a/nixpkgs/pkgs/development/tools/misc/kibana/7.x.nix b/nixpkgs/pkgs/development/tools/misc/kibana/7.x.nix
index 754559969d50..33298f68334a 100644
--- a/nixpkgs/pkgs/development/tools/misc/kibana/7.x.nix
+++ b/nixpkgs/pkgs/development/tools/misc/kibana/7.x.nix
@@ -1,16 +1,17 @@
 { elk7Version
 , enableUnfree ? true
-, lib, stdenv
+, lib
+, stdenv
 , makeWrapper
 , fetchurl
-, nodejs-10_x
+, nodejs-14_x
 , coreutils
 , which
 }:
 
 with lib;
 let
-  nodejs = nodejs-10_x;
+  nodejs = nodejs-14_x;
   inherit (builtins) elemAt;
   info = splitString "-" stdenv.hostPlatform.system;
   arch = elemAt info 0;
@@ -18,20 +19,21 @@ let
   shas =
     if enableUnfree
     then {
-      x86_64-linux  = "1wq4fc2fifkg1qz7nxdfb4yi2biay8cgdz7kl5k0p37sxn0sbkja";
-      x86_64-darwin = "06346kj7bv49py49pmmnmh8m24322m88v1af19909pj9cxgd0p6v";
+      x86_64-linux = "sha256-lTPBppKm51zgKSQtSdO0PgZ/aomvaStwqwYYGNPY4Bo=";
+      x86_64-darwin = "sha256-d7xHmoASiywDlZCJX/CfUX1VIi4iOcDrqvK0su54MJc=";
     }
     else {
-      x86_64-linux  = "0ygpmcm6wdcnvw8azwqc5257lyic7yw31rqvm2pw3afhpha62lpj";
-      x86_64-darwin = "0xy81g0bhxp47p29kkkh5llfzqkzqzr5dk50ap2hy0hjw33ld6g1";
+      x86_64-linux = "sha256-+pkKpiXBpLHs72KKNtMJbqipw6eu5XC1xu/iLFCHGRQ=";
+      x86_64-darwin = "sha256-CyJ5iRXaPgXO2lyy+E24OcGtb9V3e1gMZRIu25bVyzk=";
     };
 
-in stdenv.mkDerivation rec {
-  name = "kibana-${optionalString (!enableUnfree) "oss-"}${version}";
+in
+stdenv.mkDerivation rec {
+  pname = "kibana${optionalString (!enableUnfree) "-oss"}";
   version = elk7Version;
 
   src = fetchurl {
-    url = "https://artifacts.elastic.co/downloads/kibana/${name}-${plat}-${arch}.tar.gz";
+    url = "https://artifacts.elastic.co/downloads/kibana/${pname}-${version}-${plat}-${arch}.tar.gz";
     sha256 = shas.${stdenv.hostPlatform.system} or (throw "Unknown architecture");
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/linuxkit/default.nix b/nixpkgs/pkgs/development/tools/misc/linuxkit/default.nix
index eeb2102bdf0c..da608ba5a061 100644
--- a/nixpkgs/pkgs/development/tools/misc/linuxkit/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/linuxkit/default.nix
@@ -15,7 +15,7 @@ buildGoPackage rec {
 
   subPackages = [ "src/cmd/linuxkit" ];
 
-  buildFlagsArray = [ "-ldflags=-s -w -X ${goPackagePath}/src/cmd/linuxkit/version.GitCommit=${src.rev} -X ${goPackagePath}/src/cmd/linuxkit/version.Version=${version}" ];
+  ldflags = [ "-s" "-w" "-X ${goPackagePath}/src/cmd/linuxkit/version.GitCommit=${src.rev}" "-X ${goPackagePath}/src/cmd/linuxkit/version.Version=${version}" ];
 
   meta = with lib; {
     description = "A toolkit for building secure, portable and lean operating systems for containers";
diff --git a/nixpkgs/pkgs/development/tools/misc/lttng-tools/default.nix b/nixpkgs/pkgs/development/tools/misc/lttng-tools/default.nix
index 223e10d04ab5..71485a2da3da 100644
--- a/nixpkgs/pkgs/development/tools/misc/lttng-tools/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/lttng-tools/default.nix
@@ -2,20 +2,22 @@
 
 stdenv.mkDerivation rec {
   pname = "lttng-tools";
-  version = "2.11.0";
+  version = "2.13.0";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-tools/${pname}-${version}.tar.bz2";
-    sha256 = "1g0g7ypxvc7wd5x4d4ixmfgl9yk0lxax3ymm95hcjwxn5p497r6w";
+    sha256 = "1ri93h45q5z6l3qmg4dakm9aj0ghfmf38i63q51yjh58lzwr9j4d";
   };
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ popt libuuid liburcu lttng-ust libxml2 kmod ];
 
+  enableParallelBuilding = true;
+
   meta = with lib; {
     description = "Tracing tools (kernel + user space) for Linux";
     homepage = "https://lttng.org/";
-    license = licenses.lgpl21;
+    license = with licenses; [ lgpl21Only gpl2Only ];
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
   };
diff --git a/nixpkgs/pkgs/development/tools/misc/lttng-ust/default.nix b/nixpkgs/pkgs/development/tools/misc/lttng-ust/default.nix
index 94d2e4a33f29..244d6442c15f 100644
--- a/nixpkgs/pkgs/development/tools/misc/lttng-ust/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/lttng-ust/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, liburcu, python3 }:
+{ lib, stdenv, fetchurl, pkg-config, liburcu, numactl, python3 }:
 
 # NOTE:
 #   ./configure ...
@@ -13,14 +13,15 @@
 
 stdenv.mkDerivation rec {
   pname = "lttng-ust";
-  version = "2.10.5";
+  version = "2.13.0";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-ust/${pname}-${version}.tar.bz2";
-    sha256 = "0ddwk0nl28bkv2xb78gz16a2bvlpfbjmzwfbgwf5p1cq46dyvy86";
+    sha256 = "0l0p6y2zrd9hgd015dhafjmpcj7waz762n6wf5ws1xlwcwrwkr2l";
   };
 
-  buildInputs = [ python3 ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ numactl python3 ];
 
   preConfigure = ''
     patchShebangs .
@@ -28,10 +29,12 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ liburcu ];
 
+  enableParallelBuilding = true;
+
   meta = with lib; {
     description = "LTTng Userspace Tracer libraries";
     homepage = "https://lttng.org/";
-    license = licenses.lgpl21Plus;
+    license = with licenses; [ lgpl21Only gpl2Only mit ];
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
   };
diff --git a/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix b/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix
index f3ec4b4d7a43..c2449de5dd28 100644
--- a/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix
@@ -5,6 +5,7 @@
 , zip
 # some packages need to be compiled with cmake
 , cmake
+, installShellFiles
 }:
 
 stdenv.mkDerivation rec {
@@ -37,9 +38,9 @@ stdenv.mkDerivation rec {
     fi
   '';
 
-  buildInputs = [
-    lua curl makeWrapper which
-  ];
+  nativeBuildInputs = [ makeWrapper installShellFiles ];
+
+  buildInputs = [ lua curl which ];
 
   postInstall = ''
     sed -e "1s@.*@#! ${lua}/bin/lua$LUA_SUFFIX@" -i "$out"/bin/*
@@ -52,6 +53,9 @@ stdenv.mkDerivation rec {
               --suffix LUA_CPATH ";" "$(echo "$out"/share/lua/*/)?/init.lua"
         }
     done
+
+    installShellCompletion --cmd luarocks --bash <($out/bin/luarocks completion bash)
+    installShellCompletion --cmd luarocks --zsh <($out/bin/luarocks completion zsh)
   '';
 
   propagatedBuildInputs = [ zip unzip cmake ];
diff --git a/nixpkgs/pkgs/development/tools/misc/luarocks/luarocks-nix.nix b/nixpkgs/pkgs/development/tools/misc/luarocks/luarocks-nix.nix
index 30e02a3623fa..22872bdcbfa8 100644
--- a/nixpkgs/pkgs/development/tools/misc/luarocks/luarocks-nix.nix
+++ b/nixpkgs/pkgs/development/tools/misc/luarocks/luarocks-nix.nix
@@ -5,7 +5,10 @@ luarocks.overrideAttrs(old: {
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = "luarocks-nix";
-    rev = "v3.5.0_nix";
-    sha256 = "sha256-Ea3PVkCaUPO/mvVZtHtD1G9T/Yom28M9oN6duY4ovHk=";
+    rev = "test-speedup";
+    sha256 = "sha256-WfzLSpIp0V7Ib4sjYvoJHF+/vHaieccvfVAr5W47QsQ=";
   };
+  patches = [];
+
+  meta.mainProgram = "luarocks";
 })
diff --git a/nixpkgs/pkgs/development/tools/misc/mkcert/default.nix b/nixpkgs/pkgs/development/tools/misc/mkcert/default.nix
index 0f110ae0b082..bfd551570090 100644
--- a/nixpkgs/pkgs/development/tools/misc/mkcert/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/mkcert/default.nix
@@ -15,9 +15,9 @@ buildGoModule rec {
 
   doCheck = false;
 
-  buildFlagsArray = ''
-    -ldflags=-s -w -X main.Version=v${version}
-  '';
+  ldflags = [
+    "-s" "-w" "-X main.Version=v${version}"
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/FiloSottile/mkcert";
diff --git a/nixpkgs/pkgs/development/tools/misc/msitools/default.nix b/nixpkgs/pkgs/development/tools/misc/msitools/default.nix
index ab196ebc5b34..84a9a1135b51 100644
--- a/nixpkgs/pkgs/development/tools/misc/msitools/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/msitools/default.nix
@@ -59,7 +59,8 @@ stdenv.mkDerivation rec {
     bzip2
   ];
 
-  doCheck = true;
+  # WiX tests fail on darwin
+  doCheck = !stdenv.isDarwin;
 
   postPatch = ''
     patchShebangs subprojects/bats-core/{bin,libexec}
diff --git a/nixpkgs/pkgs/development/tools/misc/openfpgaloader/default.nix b/nixpkgs/pkgs/development/tools/misc/openfpgaloader/default.nix
deleted file mode 100644
index 1e3b3469dca3..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/openfpgaloader/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, cmake
-, pkg-config
-, libftdi1
-, libusb1
-, udev
-}:
-
-stdenv.mkDerivation rec {
-  pname = "openfpgaloader";
-  version = "0.2.6";
-
-  src = fetchFromGitHub {
-    owner = "trabucayre";
-    repo = "openFPGALoader";
-    rev = "v${version}";
-    sha256 = "sha256-OWRMWNOPm6flgeTKYWYE+LcG3HW6i8s2NQ1dr/oeOEw=";
-  };
-
-  nativeBuildInputs = [ cmake pkg-config ];
-
-  buildInputs = [
-    libftdi1
-    libusb1
-    udev
-  ];
-
-  meta = with lib; {
-    description = "Universal utility for programming FPGAs";
-    homepage = "https://github.com/trabucayre/openFPGALoader";
-    license = licenses.agpl3Only;
-    maintainers = with maintainers; [ danderson ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/openocd/default.nix b/nixpkgs/pkgs/development/tools/misc/openocd/default.nix
deleted file mode 100644
index 7b3a16fb75e4..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/openocd/default.nix
+++ /dev/null
@@ -1,66 +0,0 @@
-{ stdenv
-, lib
-, fetchurl
-, pkg-config
-, hidapi
-, libftdi1
-, libusb1
-}:
-
-stdenv.mkDerivation rec {
-  pname = "openocd";
-  version = "0.11.0";
-  src = fetchurl {
-    url = "mirror://sourceforge/project/${pname}/${pname}/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "0z8y7mmv0mhn2l5gs3vz6l7cnwak7agklyc7ml33f7gz99rwx8s3";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ hidapi libftdi1 libusb1 ];
-
-  configureFlags = [
-    "--enable-jtag_vpi"
-    "--enable-usb_blaster_libftdi"
-    (lib.enableFeature (! stdenv.isDarwin) "amtjtagaccel")
-    (lib.enableFeature (! stdenv.isDarwin) "gw16012")
-    "--enable-presto_libftdi"
-    "--enable-openjtag_ftdi"
-    (lib.enableFeature (! stdenv.isDarwin) "oocd_trace")
-    "--enable-buspirate"
-    (lib.enableFeature stdenv.isLinux "sysfsgpio")
-    "--enable-remote-bitbang"
-  ];
-
-  NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
-    "-Wno-error=cpp"
-    "-Wno-error=strict-prototypes" # fixes build failure with hidapi 0.10.0
-  ];
-
-  postInstall = lib.optionalString stdenv.isLinux ''
-    mkdir -p "$out/etc/udev/rules.d"
-    rules="$out/share/openocd/contrib/60-openocd.rules"
-    if [ ! -f "$rules" ]; then
-        echo "$rules is missing, must update the Nix file."
-        exit 1
-    fi
-    ln -s "$rules" "$out/etc/udev/rules.d/"
-  '';
-
-  meta = with lib; {
-    description = "Free and Open On-Chip Debugging, In-System Programming and Boundary-Scan Testing";
-    longDescription = ''
-      OpenOCD provides on-chip programming and debugging support with a layered
-      architecture of JTAG interface and TAP support, debug target support
-      (e.g. ARM, MIPS), and flash chip drivers (e.g. CFI, NAND, etc.).  Several
-      network interfaces are available for interactiving with OpenOCD: HTTP,
-      telnet, TCL, and GDB.  The GDB server enables OpenOCD to function as a
-      "remote target" for source-level debugging of embedded systems using the
-      GNU GDB program.
-    '';
-    homepage = "https://openocd.sourceforge.net/";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ bjornfor prusnak ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/pwndbg/default.nix b/nixpkgs/pkgs/development/tools/misc/pwndbg/default.nix
index 764fa6677345..9aa11f35957f 100644
--- a/nixpkgs/pkgs/development/tools/misc/pwndbg/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/pwndbg/default.nix
@@ -21,14 +21,14 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "pwndbg";
-  version = "2020.07.23";
+  version = "2021.06.22";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "pwndbg";
     repo = "pwndbg";
     rev = version;
-    sha256 = "0w1dmjy8ii12367wza8c35a9q9x204fppf6x328q75bhb3gd845c";
+    sha256 = "sha256-8jaWhpn7Q3X7FBHURX6nyOAhu+C113DnC4KBSE3FBuE=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/misc/qtspim/default.nix b/nixpkgs/pkgs/development/tools/misc/qtspim/default.nix
new file mode 100644
index 000000000000..23d33a9f81c5
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/qtspim/default.nix
@@ -0,0 +1,61 @@
+{ lib, stdenv, fetchsvn, wrapQtAppsHook, qtbase, qttools, qmake, bison, flex, ... }:
+stdenv.mkDerivation rec {
+  pname = "qtspim";
+  version = "9.1.22";
+
+  src = fetchsvn {
+    url = "https://svn.code.sf.net/p/spimsimulator/code/";
+    rev = "r739";
+    sha256 = "1kazfgrbmi4xq7nrkmnqw1280rhdyc1hmr82flrsa3g1b1rlmj1s";
+  };
+
+  postPatch = ''
+    cd QtSpim
+
+    # Patches from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=qtspim
+    sed -i 's/zero_imm/is_zero_imm/g' parser_yacc.cpp
+    sed -i 's/^int data_dir/bool data_dir/g' parser_yacc.cpp
+    sed -i 's/^int text_dir/bool text_dir/g' parser_yacc.cpp
+    sed -i 's/^int parse_error_occurred/bool parse_error_occurred/g' parser_yacc.cpp
+
+    substituteInPlace QtSpim.pro --replace /usr/lib/qtspim/lib $out/lib
+    substituteInPlace menu.cpp \
+      --replace /usr/lib/qtspim/bin/assistant ${qttools.dev}/bin/assistant \
+      --replace /usr/lib/qtspim/help/qtspim.qhc $out/share/help/qtspim.qhc
+    substituteInPlace ../Setup/qtspim_debian_deployment/qtspim.desktop \
+      --replace /usr/bin/qtspim qtspim \
+      --replace /usr/lib/qtspim/qtspim.png qtspim
+  '';
+
+  nativeBuildInputs = [ wrapQtAppsHook qttools qmake bison flex ];
+  buildInputs = [ qtbase ];
+  QT_PLUGIN_PATH = "${qtbase}/${qtbase.qtPluginPrefix}";
+
+  qmakeFlags = [
+    "QtSpim.pro"
+    "-spec"
+    "linux-g++"
+    "CONFIG+=release"
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -D QtSpim $out/bin/qtspim
+    install -D ../Setup/qtspim_debian_deployment/copyright $out/share/licenses/qtspim/copyright
+    install -D ../Setup/qtspim_debian_deployment/qtspim.desktop $out/share/applications/qtspim.desktop
+    install -D ../Setup/NewIcon48x48.png $out/share/icons/hicolor/48x48/apps/qtspim.png
+    install -D ../Setup/NewIcon256x256.png $out/share/icons/hicolor/256x256/apps/qtspim.png
+    cp -r help $out/share/help
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "New user interface for spim, a MIPS simulator";
+    homepage = "http://spimsimulator.sourceforge.net/";
+    license = licenses.bsdOriginal;
+    maintainers = with maintainers; [ angustrau ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable-toolchain/default.nix b/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable-toolchain/default.nix
index 643e28e82b27..e5ed098af8e1 100644
--- a/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable-toolchain/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable-toolchain/default.nix
@@ -1,18 +1,18 @@
-{ lib, stdenv, fetchurl, libarchive, python, file, which }:
+{ lib, stdenv, fetchurl, libarchive, python3, file, which }:
 
 stdenv.mkDerivation rec {
   pname = "remarkable-toolchain";
-  version = "1.8-23.9.2019";
+  version = "3.1.2";
 
   src = fetchurl {
-    url = "https://remarkable.engineering/oecore-x86_64-cortexa9hf-neon-toolchain-zero-gravitas-${version}.sh";
-    sha256 = "1rk1r80m5d18sw6hrybj6f78s8pna0wrsa40ax6j8jzfwahgzmfb";
+    url = "https://storage.googleapis.com/remarkable-codex-toolchain/codex-x86_64-cortexa9hf-neon-rm10x-toolchain-${version}.sh";
+    sha256 = "sha256-ocODUUx2pgmqxMk8J+D+OvqlSHBSay6YzcqnxC9n59w=";
     executable = true;
   };
 
   nativeBuildInputs = [
     libarchive
-    python
+    python3
     file
     which
   ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A toolchain for cross-compiling to reMarkable tablets";
     homepage = "https://remarkable.engineering/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ nickhu siraben ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable2-toolchain/default.nix b/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable2-toolchain/default.nix
index 7b4df5df1647..fe54390c7858 100644
--- a/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable2-toolchain/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/remarkable/remarkable2-toolchain/default.nix
@@ -1,32 +1,28 @@
-{ lib, stdenv, fetchurl, libarchive, python3, file }:
+{ lib, stdenv, fetchurl, libarchive, python3, file, which }:
 
 stdenv.mkDerivation rec {
   pname = "remarkable2-toolchain";
-  version = "2.5.2";
+  version = "3.1.2";
 
   src = fetchurl {
-    url = "https://storage.googleapis.com/codex-public-bucket/codex-x86_64-cortexa7hf-neon-rm11x-toolchain-${version}.sh";
-    sha256 = "1v410q1jn8flisdpkrymxd4pa1ylawd0rh3rljjpkqw1bp8a5vw1";
+    url = "https://storage.googleapis.com/remarkable-codex-toolchain/codex-x86_64-cortexa7hf-neon-rm11x-toolchain-${version}.sh";
+    sha256 = "sha256-JKMDRbkvoxwHiTm/o4JdLn3Mm2Ld1LyxTnCCwvnxk4c=";
+    executable = true;
   };
 
   nativeBuildInputs = [
     libarchive
     python3
     file
+    which
   ];
 
-  unpackCmd = ''
-    mkdir src
-    install $curSrc src/install-toolchain.sh
-  '';
-
+  dontUnpack = true;
   dontBuild = true;
 
   installPhase = ''
-    patchShebangs install-toolchain.sh
-    sed -i -e '3,9d' install-toolchain.sh # breaks PATH
-    sed -i 's|PYTHON=.*$|PYTHON=${python3}/bin/python|' install-toolchain.sh
-    ./install-toolchain.sh -D -y -d $out
+    mkdir -p $out
+    ENVCLEANED=1 $src -y -d $out
   '';
 
   meta = with lib; {
@@ -34,6 +30,6 @@ stdenv.mkDerivation rec {
     homepage = "https://remarkable.engineering/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ tadfisher ];
-    platforms = platforms.x86_64;
+    platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix b/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix
index 24e2e0fea6b2..b39ab68f06c0 100644
--- a/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix
@@ -2,22 +2,22 @@
 
 buildGoModule rec {
   pname = "reviewdog";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "18fk4xzl6ys3azyw9ap14zgf3av5fdsrdn4mxx9calimvzbl4nfp";
+    sha256 = "sha256-PneUN59ddYvhVIXqZeDCh0tWADkRTU9Dj0HNf0V8s3g=";
   };
 
-  vendorSha256 = "1qcp8v426500cpfrchazsh5rw4nr0c31vmrhbfgb9js4vxrn8acr";
+  vendorSha256 = "sha256-NI5pzKfUTjXqDukeQ1wFN/D0TBeXfDPGL69oEL7reCE=";
 
   doCheck = false;
 
   subPackages = [ "cmd/reviewdog" ];
 
-  buildFlagsArray = [ "-ldflags=-s -w -X github.com/reviewdog/reviewdog/commands.Version=${version}" ];
+  ldflags = [ "-s" "-w" "-X github.com/reviewdog/reviewdog/commands.Version=${version}" ];
 
   meta = with lib; {
     description = "Automated code review tool integrated with any code analysis tools regardless of programming language";
diff --git a/nixpkgs/pkgs/development/tools/misc/saleae-logic-2/default.nix b/nixpkgs/pkgs/development/tools/misc/saleae-logic-2/default.nix
new file mode 100644
index 000000000000..9fcd87f3476d
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/saleae-logic-2/default.nix
@@ -0,0 +1,27 @@
+{ lib, fetchurl, appimageTools }:
+let
+  name = "saleae-logic-2";
+  version = "2.3.33";
+  src = fetchurl {
+    url = "https://downloads.saleae.com/logic2/Logic-${version}-master.AppImage";
+    sha256 = "09vypl03gj58byk963flskzkhl4qrd9qw1kh0sywbqnzbzvj5cgm";
+  };
+in
+appimageTools.wrapType2 {
+  inherit name src;
+
+  extraInstallCommands =
+    let appimageContents = appimageTools.extractType2 { inherit name src; }; in
+    ''
+      mkdir -p $out/etc/udev/rules.d
+      cp ${appimageContents}/resources/linux/99-SaleaeLogic.rules $out/etc/udev/rules.d/
+    '';
+
+  meta = with lib; {
+    homepage = "https://www.saleae.com/";
+    description = "Software for Saleae logic analyzers";
+    license = licenses.unfree;
+    platforms = [ "x86_64-linux" ];
+    maintainers = [ maintainers.j-hui ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/spruce/default.nix b/nixpkgs/pkgs/development/tools/misc/spruce/default.nix
new file mode 100644
index 000000000000..ff95242681bb
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/spruce/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "spruce";
+  version = "1.28.0";
+
+  src = fetchFromGitHub {
+    owner = "geofffranks";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-cNO+6rMQPO1e4Hen8vcFU1FRnnCv2+fDYtXXbuR2UCU=";
+  };
+
+  deleteVendor = true;
+  vendorSha256 = "sha256-5EM4Z9AN1Mjy7DayII0Iu+XrjM9lyUqrScMT/fe43dw=";
+
+  meta = with lib; {
+    description = "A BOSH template merge tool";
+    homepage = "https://github.com/geofffranks/spruce";
+    license = licenses.mit;
+    maintainers = with maintainers; [ risson ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix b/nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix
deleted file mode 100644
index bca4f87f9a55..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/stm32cubemx/default.nix
+++ /dev/null
@@ -1,71 +0,0 @@
-{ lib, stdenv, makeDesktopItem, copyDesktopItems, icoutils, fdupes, imagemagick, jdk11, fetchzip }:
-# TODO: JDK16 causes STM32CubeMX to crash right now, so we fixed the version to JDK11
-# This may be fixed in a future version of STM32CubeMX. This issue has been reported to ST:
-# https://community.st.com/s/question/0D53W00000jnOzPSAU/stm32cubemx-crashes-on-launch-with-openjdk16
-# If you're updating this derivation, check the link above to see if it's been fixed upstream
-# and try replacing all occurrences of jdk11 with jre and test whether it works.
-let
-  iconame = "STM32CubeMX";
-in
-stdenv.mkDerivation rec {
-  pname = "stm32cubemx";
-  version = "6.2.1";
-
-  src = fetchzip {
-    url = "https://sw-center.st.com/packs/resource/library/stm32cube_mx_v${builtins.replaceStrings ["."] [""] version}-lin.zip";
-    sha256 = "0m5h01iq0mgrr9svj4gmykfi9lsyjpqzrkvlizff26c8dqad59c5";
-    stripRoot = false;
-  };
-
-  nativeBuildInputs = [ icoutils fdupes imagemagick copyDesktopItems];
-  desktopItems = [
-    (makeDesktopItem {
-      name = "stm32CubeMX";
-      exec = "stm32cubemx";
-      desktopName = "STM32CubeMX";
-      categories = "Development;";
-      comment = "STM32Cube initialization code generator";
-      icon = "stm32cubemx";
-    })
-  ];
-
-  buildCommand = ''
-    mkdir -p $out/{bin,opt/STM32CubeMX}
-    cp -r $src/MX/. $out/opt/STM32CubeMX/
-    chmod +rx $out/opt/STM32CubeMX/STM32CubeMX
-    cat << EOF > $out/bin/${pname}
-    #!${stdenv.shell}
-    ${jdk11}/bin/java -jar $out/opt/STM32CubeMX/STM32CubeMX
-    EOF
-    chmod +x $out/bin/${pname}
-
-    icotool --extract $out/opt/STM32CubeMX/help/${iconame}.ico
-    fdupes -dN . > /dev/null
-    ls
-    for size in 16 24 32 48 64 128 256; do
-      mkdir -pv $out/share/icons/hicolor/"$size"x"$size"/apps
-      if [ $size -eq 256 ]; then
-        mv ${iconame}_*_"$size"x"$size"x32.png \
-          $out/share/icons/hicolor/"$size"x"$size"/apps/${pname}.png
-      else
-        convert -resize "$size"x"$size" ${iconame}_*_256x256x32.png \
-          $out/share/icons/hicolor/"$size"x"$size"/apps/${pname}.png
-      fi
-    done;
-  '';
-
-  meta = with lib; {
-    description = "A graphical tool for configuring STM32 microcontrollers and microprocessors";
-    longDescription = ''
-      A graphical tool that allows a very easy configuration of STM32
-      microcontrollers and microprocessors, as well as the generation of the
-      corresponding initialization C code for the Arm® Cortex®-M core or a
-      partial Linux® Device Tree for Arm® Cortex®-A core), through a
-      step-by-step process.
-    '';
-    homepage = "https://www.st.com/en/development-tools/stm32cubemx.html";
-    license = licenses.unfree;
-    maintainers = with maintainers; [ wucke13 ];
-    platforms = platforms.all;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix b/nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix
deleted file mode 100644
index bc33d417f885..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, stdenv, fetchurl }:
-
-stdenv.mkDerivation rec {
-  pname = "stm32flash";
-  version = "0.5";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "01p396daqw3zh6nijffbfbwyqza33bi2k4q3m5yjzs02xwi99alp";
-  };
-
-  buildFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
-
-  installPhase = ''
-    # Manually copy, make install copies to /usr/local/bin
-    mkdir -pv $out/bin/
-    cp stm32flash $out/bin/
-  '';
-
-  meta = with lib; {
-    description = "Open source flash program for the STM32 ARM processors using the ST bootloader";
-    homepage = "https://sourceforge.net/projects/stm32flash/";
-    license = lib.licenses.gpl2;
-    platforms = platforms.all; # Should work on all platforms
-    maintainers = with maintainers; [ elitak ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/strace/default.nix b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
index b3722965fdcd..785331fb50be 100644
--- a/nixpkgs/pkgs/development/tools/misc/strace/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "strace";
-  version = "5.13";
+  version = "5.14";
 
   src = fetchurl {
     url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-Wsw0iIudUQrWrJFdSo3wj1HPGukg6iRkn2pLuYTQtlY=";
+    sha256 = "sha256-kBvubbXhfeutRTDdn/tNyalsSmVu2+HDFBt8swexHnM=";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/nixpkgs/pkgs/development/tools/misc/teensy-loader-cli/default.nix b/nixpkgs/pkgs/development/tools/misc/teensy-loader-cli/default.nix
deleted file mode 100644
index 156e3f7f895d..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/teensy-loader-cli/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, go-md2man, installShellFiles, libusb-compat-0_1 }:
-
-stdenv.mkDerivation rec {
-  pname = "teensy-loader-cli";
-  version = "2.1.20191110";
-
-  src = fetchFromGitHub {
-    owner = "PaulStoffregen";
-    repo = "teensy_loader_cli";
-    rev = "e98b5065cdb9f04aa4dde3f2e6e6e6f12dd97592";
-    sha256 = "1yx8vsh6b29pqr4zb6sx47429i9x51hj9psn8zksfz75j5ivfd5i";
-  };
-
-  buildInputs = [ libusb-compat-0_1 ];
-
-  nativeBuildInputs = [ go-md2man installShellFiles ];
-
-  installPhase = ''
-    install -Dm555 teensy_loader_cli $out/bin/teensy-loader-cli
-    install -Dm444 -t $out/share/doc/${pname} *.md *.txt
-    go-md2man -in README.md -out ${pname}.1
-    installManPage *.1
-  '';
-
-  meta = with lib; {
-    description = "Firmware uploader for the Teensy microcontroller boards";
-    homepage = "https://www.pjrc.com/teensy/";
-    license = licenses.gpl3;
-    platforms = platforms.unix;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix b/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix
index cc5f6f72a4cf..c10543e17689 100644
--- a/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix
@@ -2,22 +2,22 @@
 
 buildGoModule rec {
   pname = "terracognita";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "cycloidio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "119rbjg3lsm73mdw6ymvslyj4y4ghj3a3dvxnvkrm55v9g0s03l9";
+    sha256 = "sha256-n+aCNKGujvmXSFmLo2h1d29NFgdk/G+ehGwMHCJQoU8=";
   };
 
-  vendorSha256 = "1fvp53d694a4aj8l4hj7q2lvyadn9y9c52q4bzl6yrfjq6708y8d";
+  vendorSha256 = "sha256-i6AkLAXGOXe3jmAKKQN6aX/DvovSS9CYFYO28bYIdUw=";
 
   doCheck = false;
 
   subPackages = [ "." ];
 
-  buildFlagsArray = [ "-ldflags=-s -w -X github.com/cycloidio/terracognita/cmd.Version=${version}" ];
+  ldflags = [ "-s" "-w" "-X github.com/cycloidio/terracognita/cmd.Version=${version}" ];
 
   meta = with lib; {
     description = "Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration";
diff --git a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
index 86afbcc9421a..7ea4625bad11 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
@@ -2,36 +2,27 @@
 
 buildGoModule rec {
   pname = "terraform-ls";
-  version = "0.19.1";
+  version = "0.21.0";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ag8Dq3lhLoKE4rgrnWLHtKRHEnw/ytyXI+pRt5CgZJI=";
+    sha256 = "sha256-x1HPr1xzByyNnuNr8B4vqdxw+EeFJsqse/FG1I/b0+g=";
   };
-  vendorSha256 = "sha256-/lpjlThr6HPkuJ6om9ifBsdsh0x4kVXM6PAonk7GJCY=";
+  vendorSha256 = "sha256-f/y2i/aPeiUBiUaoCyehO8835qtxJkJsSh9/RAowsLI=";
 
   ldflags = [ "-s" "-w" "-X main.version=v${version}" "-X main.prerelease=" ];
 
-  preCheck = ''
-    # Remove tests that requires networking
-    rm internal/terraform/exec/exec_test.go
-  '' + lib.optionalString stdenv.isAarch64 ''
-    # Not all test failures have tracking issues as HashiCorp do not have
-    # aarch64 testing infra easily available, see issue 549 below.
+  # There's a mixture of tests that use networking and several that fail on aarch64
+  doCheck = false;
 
-    # Remove file that contains `TestLangServer_workspaceExecuteCommand_modules_multiple`
-    # which fails on aarch64: https://github.com/hashicorp/terraform-ls/issues/549
-    rm internal/langserver/handlers/execute_command_modules_test.go
-
-    # `TestModuleManager_ModuleCandidatesByPath` variants fail
-    rm internal/terraform/module/module_manager_test.go
-
-    # internal/terraform/module/module_ops_queue_test.go:17:15: undefined: testLogger
-    # internal/terraform/module/watcher_test.go:39:11: undefined: testLogger
-    # internal/terraform/module/watcher_test.go:79:14: undefined: testLogger
-    rm internal/terraform/module/{watcher_test,module_ops_queue_test}.go
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+    $out/bin/terraform-ls --help
+    $out/bin/terraform-ls version | grep "v${version}"
+    runHook postInstallCheck
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix b/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix
index 0cfd63ffa283..d55367e70658 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraform-lsp/default.nix
@@ -13,7 +13,7 @@ buildGoPackage rec {
 
   goPackagePath = "github.com/juliosueiras/terraform-lsp";
 
-  buildFlagsArray = [ "-ldflags=-s -w -X main.Version=${version} -X main.GitCommit=${src.rev}" ];
+  ldflags = [ "-s" "-w" "-X main.Version=${version}" "-X main.GitCommit=${src.rev}" ];
 
   meta = with lib; {
     description = "Language Server Protocol for Terraform";
diff --git a/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix b/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix
index 60124ef44c93..ac20ca26f808 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "terraformer";
-  version = "0.8.11";
+  version = "0.8.15";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = pname;
     rev = version;
-    sha256 = "sha256-y6cgBYiqy+M8dfcNS6iDohqyip6xAs222MJHJFhloiI=";
+    sha256 = "sha256-d8DOUvUj5hdc1kcd0vgMufVIOJqV0eG4sXQIX597L/w=";
   };
 
-  vendorSha256 = "sha256-PQj3+qcmN/raDrAbufAcVT+vSumGuOY47i7ZYfvx3yk=";
+  vendorSha256 = "sha256-VQ3yZQqpq9KbAkBDnQAfOE+axlT0GhvUpMIjb59PYT0=";
 
   subPackages = [ "." ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix b/nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix
deleted file mode 100644
index 06a8c3e98712..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/tinyprog/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, python3Packages
-, fetchFromGitHub
-}:
-
-with python3Packages; buildPythonApplication rec {
-  pname = "tinyprog";
-  # `python setup.py --version` from repo checkout
-  version = "1.0.24.dev114+g${lib.substring 0 7 src.rev}";
-
-  src = fetchFromGitHub {
-    owner = "tinyfpga";
-    repo = "TinyFPGA-Bootloader";
-    rev = "97f6353540bf7c0d27f5612f202b48f41da75299";
-    sha256 = "0zbrvvb957z2lwbfd39ixqdsnd2w4wfjirwkqdrqm27bjz308731";
-  };
-
-  sourceRoot = "source/programmer";
-
-  propagatedBuildInputs = [
-    pyserial
-    jsonmerge
-    intelhex
-    tqdm
-    six
-    packaging
-    setuptools
-    pyusb
-  ];
-
-  nativeBuildInputs = [ setuptools-scm ];
-
-  preBuild = ''
-    export SETUPTOOLS_SCM_PRETEND_VERSION="${version}"
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/tinyfpga/TinyFPGA-Bootloader/tree/master/programmer";
-    description = "Programmer for FPGA boards using the TinyFPGA USB Bootloader";
-    maintainers = with maintainers; [ emily ];
-    license = licenses.asl20;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/uisp/default.nix b/nixpkgs/pkgs/development/tools/misc/uisp/default.nix
deleted file mode 100644
index 986a560ff6e8..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/uisp/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ lib, stdenv, fetchurl }:
-
-stdenv.mkDerivation rec {
-  pname = "uisp";
-  version = "20050207";
-
-  src = fetchurl {
-    url = "https://savannah.nongnu.org/download/uisp/uisp-${version}.tar.gz";
-    sha256 = "1bncxp5yxh9r1yrp04vvhfiva8livi1pwic7v8xj99q09zrwahvw";
-  };
-
-  NIX_CFLAGS_COMPILE = "-Wno-error";
-
-  meta = {
-    description = "Tool for AVR microcontrollers which can interface to many hardware in-system programmers";
-    license = lib.licenses.gpl2;
-    homepage = "https://savannah.nongnu.org/projects/uisp";
-    platforms = lib.platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/unused/default.nix b/nixpkgs/pkgs/development/tools/misc/unused/default.nix
index ee89df5d8391..4c3872377142 100644
--- a/nixpkgs/pkgs/development/tools/misc/unused/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/unused/default.nix
@@ -1,18 +1,18 @@
 { lib, fetchFromGitHub, rustPlatform, cmake }:
 rustPlatform.buildRustPackage rec {
   pname = "unused";
-  version = "0.2.2";
+  version = "0.2.3";
 
   src = fetchFromGitHub {
     owner = "unused-code";
     repo = pname;
     rev = version;
-    sha256 = "0igpf0y45rrdrwq8bznq0d5nnph0vijvn6fw96mqxhbffz0csbi9";
+    sha256 = "sha256-1R50oCVvk+XJG4EhLusY1aY6RjWNeZvlIDS8PJXIA7o=";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  cargoSha256 = "1fngn9mmvx7jw8305w465z0nf9acc2cdl7314p77c2rz25z6rlin";
+  cargoSha256 = "sha256-PjCR+kHlgPWkTkhN0idotGmLSe/FaKkgI9AMEJtoRz8=";
 
   meta = with lib; {
     description = "A tool to identify potentially unused code";
diff --git a/nixpkgs/pkgs/development/tools/misc/usbsdmux/default.nix b/nixpkgs/pkgs/development/tools/misc/usbsdmux/default.nix
index ed7a6d8a2201..07db23607ceb 100644
--- a/nixpkgs/pkgs/development/tools/misc/usbsdmux/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/usbsdmux/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "usbsdmux";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "sha256-ydDUSqBTY62iOtWdgrFh2qrO9LMi+OCYIw5reh6uoIA=";
+    sha256 = "sha256-gCxwR5jxzkH22B6nxBwAd0HpwWMIj/zp5VROJ0IWq7c=";
   };
 
   # usbsdmux is not meant to be used as an importable module and has no tests
diff --git a/nixpkgs/pkgs/development/tools/misc/watson-ruby/default.nix b/nixpkgs/pkgs/development/tools/misc/watson-ruby/default.nix
index 23ec0643d77d..4d17680471d2 100644
--- a/nixpkgs/pkgs/development/tools/misc/watson-ruby/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/watson-ruby/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   pname = "watson-ruby";
   version = (import ./gemset.nix).watson-ruby.version;
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = let
     env = bundlerEnv {
diff --git a/nixpkgs/pkgs/development/tools/misc/xc3sprog/default.nix b/nixpkgs/pkgs/development/tools/misc/xc3sprog/default.nix
deleted file mode 100644
index b9785bac7c5c..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/xc3sprog/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib, stdenv, fetchsvn, cmake, libusb-compat-0_1, libftdi }:
-
-# The xc3sprog project doesn't seem to make proper releases, they only put out
-# prebuilt binary subversion snapshots on sourceforge.
-
-stdenv.mkDerivation rec {
-  version = "787";
-  pname = "xc3sprog";
-
-  src = fetchsvn {
-    url = "https://svn.code.sf.net/p/xc3sprog/code/trunk";
-    sha256 = "1rfhms3i7375kdlg0sdg5k52ix3xv5llj2dr30vamyg7pk74y8rx";
-    rev = version;
-  };
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ libusb-compat-0_1 libftdi ];
-
-  meta = with lib; {
-    description = "Command-line tools for programming FPGAs, microcontrollers and PROMs via JTAG";
-    homepage = "http://xc3sprog.sourceforge.net/";
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-    maintainers = [ maintainers.bjornfor ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/tools/misc/xspim/default.nix b/nixpkgs/pkgs/development/tools/misc/xspim/default.nix
new file mode 100644
index 000000000000..2e6e3e3eb108
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/xspim/default.nix
@@ -0,0 +1,49 @@
+{ lib, stdenv, fetchsvn, imake, bison, flex, xlibsWrapper, libXaw, libXpm, ... }:
+
+stdenv.mkDerivation rec {
+  pname = "xspim";
+  version = "9.1.22";
+
+  src = fetchsvn {
+    url = "https://svn.code.sf.net/p/spimsimulator/code/";
+    rev = "r739";
+    sha256 = "1kazfgrbmi4xq7nrkmnqw1280rhdyc1hmr82flrsa3g1b1rlmj1s";
+  };
+
+  nativeBuildInputs = [ imake bison flex ];
+  buildInputs = [ xlibsWrapper libXaw libXpm ];
+
+  preConfigure = ''
+    cd xspim
+    xmkmf
+  '';
+
+  makeFlags = [
+    "BIN_DIR=${placeholder "out"}/bin"
+    "EXCEPTION_DIR=${placeholder "out"}/share/spim"
+    "MAN_DIR=${placeholder "out"}/share/man/man1"
+  ];
+
+  doCheck = true;
+  preCheck = ''
+    pushd ../spim
+  '';
+  postCheck = ''
+    popd
+  '';
+
+  preInstall = ''
+    mkdir -p $out/share/spim
+    install -D ../spim/spim $out/bin/spim
+    install -D ../Documentation/spim.man $out/share/man/man1/spim.1
+    install -D ../Documentation/xspim.man $out/share/man/man1/xspim.1
+  '';
+
+  meta = with lib; {
+    description = "A MIPS32 simulator";
+    homepage = "http://spimsimulator.sourceforge.net/";
+    license = licenses.bsdOriginal;
+    maintainers = with maintainers; [ angustrau ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/xxgdb/default.nix b/nixpkgs/pkgs/development/tools/misc/xxgdb/default.nix
new file mode 100644
index 000000000000..fc0a38ee7499
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/xxgdb/default.nix
@@ -0,0 +1,43 @@
+{ lib, stdenv, fetchurl, imake, xlibsWrapper, gccmakedep, libXaw }:
+
+stdenv.mkDerivation rec {
+  pname = "xxgdb";
+  version = "1.12";
+
+  src = fetchurl {
+    url = "http://deb.debian.org/debian/pool/main/x/xxgdb/xxgdb_${version}.orig.tar.gz";
+    sha256 = "0jwazg99wk2l7r390ggw0yr8xipl07bp0qynni141xss530i6d1a";
+  };
+
+  patches = [
+    # http://zhu-qy.blogspot.com.es/2012/11/slackware-14-i-still-got-xxgdb-all-ptys.html
+    ./xxgdb-pty.patch
+  ];
+
+  nativeBuildInputs = [ imake gccmakedep ];
+  buildInputs = [ xlibsWrapper libXaw ];
+
+  preConfigure = ''
+    mkdir build
+    xmkmf
+  '';
+
+  makeFlags = [
+    "DESTDIR=build"
+  ];
+
+  postInstall = ''
+    # Fix up install paths
+    shopt -s globstar
+    mv build/**/bin $out/bin
+
+    install -D xxgdb.1 $out/share/man/man1/xxgdb.1
+  '';
+
+  meta = with lib; {
+    description = "A simple but powerful graphical interface to gdb";
+    license = licenses.mit;
+    maintainers = with maintainers; [ angustrau ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/xxgdb/xxgdb-pty.patch b/nixpkgs/pkgs/development/tools/misc/xxgdb/xxgdb-pty.patch
new file mode 100644
index 000000000000..735bb1b0b5fc
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/xxgdb/xxgdb-pty.patch
@@ -0,0 +1,84 @@
+--- xxgdb-1.12-org/calldbx.c	2012-10-26 17:17:49.810750909 -0700
++++ xxgdb-1.12/calldbx.c	2012-10-26 17:53:59.209918816 -0700
+@@ -69,6 +69,12 @@
+  *    create_io_window(): create an io window for gdb to use 
+  */
+ 
++#ifdef linux
++#ifndef _GNU_SOURCE
++#define _GNU_SOURCE
++#endif
++#endif
++
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -126,6 +132,13 @@
+ {
+     int master;
+     
++#ifdef _POSIX_SOURCE
++    if ((master = posix_openpt (O_RDWR|O_NOCTTY)) < 0) {
++	perror("posix_openpt failed:");
++    } else {
++	return master;
++    }
++#else
+ #ifdef SVR4				/* (MJH) Use STREAMS */
+ 
+     if((master = open(MASTER_CLONE, O_RDWR)) < 0)
+@@ -152,6 +165,7 @@
+ 	}
+ #endif
+ #endif /* SVR4 */
++#endif /*  _POSIX_SOURCE */
+ 
+ #ifdef GDB
+     fprintf(stderr, "xxgdb: all ptys in use\n");
+@@ -167,7 +181,28 @@
+ {
+     int slave;
+ 
+-#ifdef SVR4				/* (MJH) */
++#ifdef _POSIX_SOURCE
++    char *slave_name = ptsname (master);
++    if (slave_name == NULL) {
++	perror ("Pseudo-tty slave");
++	exit (2);
++    } // end if
++    if (grantpt (master) < 0) {
++	perror ("grantpt error");
++	exit (3);
++    }
++    if (unlockpt (master) < 0) {
++	perror ("unlockpt error");
++	exit (4);
++    }
++    if ((slave = open (slave_name, O_RDWR)) < 0) {
++	perror (slave_name);
++	exit (5);
++    } // end if
++    return slave;
++#else
++#ifdef SVR4		
++	/* (MJH) */
+     char *slave_name = "unknown";
+     extern char *ptsname(int master);
+     void (*handler)();
+@@ -194,6 +229,7 @@
+ 	    }
+     return slave;
+ #endif /* SVR4 */
++#endif /*  _POSIX_SOURCE */
+ }
+ 
+ #ifdef CREATE_IO_WINDOW 
+@@ -230,7 +266,7 @@
+     {
+ 	/* child */
+ 	/* printf("xterm xterm -l -e xxgdbiowin\n");*/
+-	if (execlp("xterm", "xterm", "-e", "xxgdbiowin", 0))
++	if (execlp("xterm", "xterm", "-e", "xxgdbiowin", NULL))
+ 	{
+ 	    printf("exec of 'xterm -e xxgdbiowin' fails\n");
+ 	    unlink("/tmp/iowindowtty");
diff --git a/nixpkgs/pkgs/development/tools/misc/yodl/default.nix b/nixpkgs/pkgs/development/tools/misc/yodl/default.nix
index 4f4dddbc9453..2eee78c1c19c 100644
--- a/nixpkgs/pkgs/development/tools/misc/yodl/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/yodl/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "yodl";
-  version = "4.03.02";
+  version = "4.03.03";
 
   nativeBuildInputs = [ icmake ];
 
   buildInputs = [ perl ];
 
   src = fetchFromGitLab {
-    sha256 = "sha256-ZxiF9He0JgqhbnQS2pE7Y85sED8avbdwGuVmFN8/XgE=";
+    sha256 = "sha256-MeD/jjhwoiWTb/G8pHrnEEX22h+entPr9MhJ6WHO3DM=";
     rev = version;
     repo = "yodl";
     owner = "fbb-git";