about summary refs log tree commit diff
path: root/nixpkgs/pkgs/misc
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2024-01-06 02:12:23 +0100
committerAlyssa Ross <hi@alyssa.is>2024-01-06 02:12:23 +0100
commitf34a1b70eb86e4a63cfb88ea460345bb1aed88e3 (patch)
tree32834d23912250e0c4b86aa4420baacf8091c0fe /nixpkgs/pkgs/misc
parent003ab91dd67b093890db1dd0bab564345db6e496 (diff)
parent7a7cfff8915e06365bc2365ff33d4d413184fa9f (diff)
downloadnixlib-f34a1b70eb86e4a63cfb88ea460345bb1aed88e3.tar
nixlib-f34a1b70eb86e4a63cfb88ea460345bb1aed88e3.tar.gz
nixlib-f34a1b70eb86e4a63cfb88ea460345bb1aed88e3.tar.bz2
nixlib-f34a1b70eb86e4a63cfb88ea460345bb1aed88e3.tar.lz
nixlib-f34a1b70eb86e4a63cfb88ea460345bb1aed88e3.tar.xz
nixlib-f34a1b70eb86e4a63cfb88ea460345bb1aed88e3.tar.zst
nixlib-f34a1b70eb86e4a63cfb88ea460345bb1aed88e3.zip
Merge branch 'nixos-unstable-small' of https://github.com/NixOS/nixpkgs
Conflicts:
	nixpkgs/pkgs/build-support/go/module.nix
Diffstat (limited to 'nixpkgs/pkgs/misc')
-rw-r--r--nixpkgs/pkgs/misc/cups/drivers/cnijfilter_2_80/default.nix4
-rw-r--r--nixpkgs/pkgs/misc/drivers/epson-escpr2/default.nix14
-rw-r--r--nixpkgs/pkgs/misc/drivers/hplip/default.nix10
-rw-r--r--nixpkgs/pkgs/misc/jitsi-meet-prosody/default.nix4
-rw-r--r--nixpkgs/pkgs/misc/lilypond/fonts.nix12
-rw-r--r--nixpkgs/pkgs/misc/lilypond/unstable.nix4
-rw-r--r--nixpkgs/pkgs/misc/logging/pacemaker/default.nix4
-rw-r--r--nixpkgs/pkgs/misc/opensbi/default.nix6
-rw-r--r--nixpkgs/pkgs/misc/tmux-plugins/default.nix2
-rw-r--r--nixpkgs/pkgs/misc/translatelocally-models/default.nix43
-rw-r--r--nixpkgs/pkgs/misc/translatelocally-models/models.json149
-rwxr-xr-xnixpkgs/pkgs/misc/translatelocally-models/update.sh14
-rw-r--r--nixpkgs/pkgs/misc/vencord/default.nix8
-rw-r--r--nixpkgs/pkgs/misc/vencord/package-lock.json90
14 files changed, 299 insertions, 65 deletions
diff --git a/nixpkgs/pkgs/misc/cups/drivers/cnijfilter_2_80/default.nix b/nixpkgs/pkgs/misc/cups/drivers/cnijfilter_2_80/default.nix
index 2b7e416eafef..1a573c032e7f 100644
--- a/nixpkgs/pkgs/misc/cups/drivers/cnijfilter_2_80/default.nix
+++ b/nixpkgs/pkgs/misc/cups/drivers/cnijfilter_2_80/default.nix
@@ -100,6 +100,10 @@ stdenv.mkDerivation {
      them, it undoes the --set-rpath.  this prevents that. */
   dontPatchELF = true;
 
+  # fortify hardening makes the filter crash
+  # https://github.com/NixOS/nixpkgs/issues/276125
+  hardeningDisable = [ "fortify3" ];
+
   meta = with lib; {
     description = "Canon InkJet printer drivers for the iP5400, MP520, MP210, MP140, iP3500, and MP610 series.  (MP520 drivers also work for MX700.)";
     homepage = "http://support-asia.canon-asia.com/content/EN/0100084101.html";
diff --git a/nixpkgs/pkgs/misc/drivers/epson-escpr2/default.nix b/nixpkgs/pkgs/misc/drivers/epson-escpr2/default.nix
index 02553d5a9ebf..4c3b969b425f 100644
--- a/nixpkgs/pkgs/misc/drivers/epson-escpr2/default.nix
+++ b/nixpkgs/pkgs/misc/drivers/epson-escpr2/default.nix
@@ -1,23 +1,23 @@
-{ lib, stdenv, fetchurl, cups, busybox }:
+{ lib, stdenv, fetchurl, cups, rpm, cpio }:
 
 stdenv.mkDerivation rec {
   pname = "epson-inkjet-printer-escpr2";
-  version = "1.1.49";
+  version = "1.2.9";
 
   src = fetchurl {
     # To find new versions, visit
     # http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX and search for
     # some printer like for instance "WF-7210" to get to the most recent
     # version.
-    url = "https://download3.ebz.epson.net/dsc/f/03/00/13/76/47/16f624dc1dfad10c3b4eb141c50c651a6360f69a/epson-inkjet-printer-escpr2-1.1.49-1lsb3.2.src.rpm";
-    sha256 = "sha256-WKDOpS7YL7J/IaNQcTjcoyXNXJGOuEexopdhYFubf50=";
+    url = "https://download3.ebz.epson.net/dsc/f/03/00/15/33/94/3bf10a30a1f8b5b91ddbafa4571c073878ec476b/epson-inkjet-printer-escpr2-1.2.9-1.src.rpm";
+    sha256 = "sha256-2smNBTMSqoKYsGUoBtIHS3Fwk9ODbiXaP7Dtq69FG9U=";
   };
 
   unpackPhase = ''
     runHook preUnpack
 
     rpm2cpio $src | cpio -idmv
-    tar xvf ${pname}-${version}-1lsb3.2.tar.gz
+    tar xvf ${pname}-${version}-1.tar.gz
     cd ${pname}-${version}
 
     runHook postUnpack
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   patches = [ ./cups-filter-ppd-dirs.patch ];
 
   buildInputs = [ cups ];
-  nativeBuildInputs = [ busybox ];
+  nativeBuildInputs = [ rpm cpio ];
 
   meta = with lib; {
     homepage = "http://download.ebz.epson.net/dsc/search/01/search/";
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
       Refer to the description of epson-escpr for usage.
     '';
     license = licenses.gpl2;
-    maintainers = with maintainers; [ ma9e ma27 ];
+    maintainers = with maintainers; [ ma9e ma27 shawn8901 ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/misc/drivers/hplip/default.nix b/nixpkgs/pkgs/misc/drivers/hplip/default.nix
index 0b4abe265060..577cb3ecf8e3 100644
--- a/nixpkgs/pkgs/misc/drivers/hplip/default.nix
+++ b/nixpkgs/pkgs/misc/drivers/hplip/default.nix
@@ -66,6 +66,8 @@ python3Packages.buildPythonApplication {
     perl
     zlib
     avahi
+  ] ++ lib.optionals withQt5 [
+    qt5.qtwayland
   ];
 
   nativeBuildInputs = [
@@ -237,6 +239,8 @@ python3Packages.buildPythonApplication {
   # 1. Calling patchPythonProgram on the original script in $out/share/hplip
   # 2. Making our own wrapper pointing directly to the original script.
   dontWrapPythonPrograms = true;
+  # We also avoid double wrapping in case we add qt5 support
+  dontWrapQtApps = true;
   preFixup = ''
     buildPythonPath "$out $pythonPath"
 
@@ -246,7 +250,7 @@ python3Packages.buildPythonApplication {
       echo "patching \`$py'..."
       patchPythonScript "$py"
       echo "wrapping \`$bin'..."
-      makeWrapper "$py" "$bin" \
+      ${if withQt5 then "makeQtWrapper" else "makeWrapper"} "$py" "$bin" \
           --prefix PATH ':' "$program_PATH" \
           --set PYTHONNOUSERSITE "true" \
           $makeWrapperArgs
@@ -264,10 +268,6 @@ python3Packages.buildPythonApplication {
       --replace {,${util-linux}/bin/}logger \
       --replace {/usr,$out}/bin
     remove-references-to -t ${stdenv.cc.cc} $(readlink -f $out/lib/*.so)
-  '' + lib.optionalString withQt5 ''
-    for f in $out/bin/hp-*;do
-      wrapQtApp $f
-    done
   '';
 
   # There are some binaries there, which reference gcc-unwrapped otherwise.
diff --git a/nixpkgs/pkgs/misc/jitsi-meet-prosody/default.nix b/nixpkgs/pkgs/misc/jitsi-meet-prosody/default.nix
index f7168d6d116d..5f49773abd37 100644
--- a/nixpkgs/pkgs/misc/jitsi-meet-prosody/default.nix
+++ b/nixpkgs/pkgs/misc/jitsi-meet-prosody/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "jitsi-meet-prosody";
-  version = "1.0.7629";
+  version = "1.0.7658";
   src = fetchurl {
     url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
-    sha256 = "4D/E/TS1tyIoTOQ23LctBFbUyvFvsrr2ivvfEbMbAfc=";
+    sha256 = "TCkCtAuzek7qT4udr9edGLderEmZ5ZyYXgRnfUFXgds=";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/misc/lilypond/fonts.nix b/nixpkgs/pkgs/misc/lilypond/fonts.nix
index f1c80ad761b2..b624498f0920 100644
--- a/nixpkgs/pkgs/misc/lilypond/fonts.nix
+++ b/nixpkgs/pkgs/misc/lilypond/fonts.nix
@@ -17,13 +17,17 @@ let
         local fontsdir="$out/share/lilypond/${lilypond.version}/fonts"
 
         install -m755 -d "$fontsdir/otf"
-        for font in {otf,supplementary-fonts}/**.{o,t}tf; do
-          install -Dt "$fontsdir/otf" -m755 "$font"
+
+        shopt -s globstar
+
+        for font in {otf,supplementary-fonts,supplementary-files}/**/*.{o,t}tf; do
+          echo $font
+          install -Dt "$fontsdir/otf" -m644 "$font"
         done
 
         install -m755 -d "$fontsdir/svg"
-        for font in svg/**.{svg,woff}; do
-          install -Dt "$fontsdir/svg" -m755 "$font"
+        for font in {svg,woff}/**.{svg,woff}; do
+          install -Dt "$fontsdir/svg" -m644 "$font"
         done
       '';
 
diff --git a/nixpkgs/pkgs/misc/lilypond/unstable.nix b/nixpkgs/pkgs/misc/lilypond/unstable.nix
index 0285a72393c7..77ac8c3e8d36 100644
--- a/nixpkgs/pkgs/misc/lilypond/unstable.nix
+++ b/nixpkgs/pkgs/misc/lilypond/unstable.nix
@@ -1,10 +1,10 @@
 { lib, fetchurl, lilypond }:
 
 lilypond.overrideAttrs (oldAttrs: rec {
-  version = "2.25.10";
+  version = "2.25.11";
   src = fetchurl {
     url = "https://lilypond.org/download/sources/v${lib.versions.majorMinor version}/lilypond-${version}.tar.gz";
-    hash = "sha256-j1XeQRkcBtrGMJQaFIbp/XktYREEL6ODGXnKt/RtwSA=";
+    hash = "sha256-DDvo1LBTnDVSDyRDYF0aEToFsmvW1dlTaMHdpBEOdMI=";
   };
 
   passthru.updateScript = {
diff --git a/nixpkgs/pkgs/misc/logging/pacemaker/default.nix b/nixpkgs/pkgs/misc/logging/pacemaker/default.nix
index 3ce74457acd2..a3d365cd4170 100644
--- a/nixpkgs/pkgs/misc/logging/pacemaker/default.nix
+++ b/nixpkgs/pkgs/misc/logging/pacemaker/default.nix
@@ -29,13 +29,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pacemaker";
-  version = "2.1.6";
+  version = "2.1.7";
 
   src = fetchFromGitHub {
     owner = "ClusterLabs";
     repo = pname;
     rev = "Pacemaker-${version}";
-    sha256 = "sha256-3+eRQ3NqPusdFhKc0wE7UMMNKsDLRVvh+EhD6zYGoP0=";
+    sha256 = "sha256-cvCMIzeyP9oEzHpafOvCORYwWg6cH5qj3qXOUMW4nHA=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/misc/opensbi/default.nix b/nixpkgs/pkgs/misc/opensbi/default.nix
index e2a9600e2734..347e7deb0d31 100644
--- a/nixpkgs/pkgs/misc/opensbi/default.nix
+++ b/nixpkgs/pkgs/misc/opensbi/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opensbi";
-  version = "1.3.1";
+  version = "1.4";
 
   src = fetchFromGitHub {
     owner = "riscv-software-src";
     repo = "opensbi";
     rev = "v${version}";
-    hash = "sha256-JNkPvmKYd5xbGB2lsZKWrpI6rBIckWbkLYu98bw7+QY=";
+    hash = "sha256-T8ZeAzjM9aeTXitjE7s+m+jjGGtDo2jK1qO5EuKiVLU=";
   };
 
   postPatch = ''
@@ -36,6 +36,8 @@ stdenv.mkDerivation rec {
     "FW_FDT_PATH=${withFDT}"
   ];
 
+  enableParallelBuilding = true;
+
   dontStrip = true;
   dontPatchELF = true;
 
diff --git a/nixpkgs/pkgs/misc/tmux-plugins/default.nix b/nixpkgs/pkgs/misc/tmux-plugins/default.nix
index d17cbe7c33e5..ed9dae360230 100644
--- a/nixpkgs/pkgs/misc/tmux-plugins/default.nix
+++ b/nixpkgs/pkgs/misc/tmux-plugins/default.nix
@@ -658,7 +658,7 @@ in rec {
       sha256 = "1jp4jq57cn116b3i34v6yy69izd8s6mp2ijr260cw86g0470k0fn";
     };
     postInstall = ''
-      sed -i -e '14,20{s|urlview|${pkgs.urlview}/bin/urlview|g}' $target/urlview.tmux
+      sed -i -e '14,20{s|extract_url|${pkgs.extract_url}/bin/extract_url|g}' $target/urlview.tmux
     '';
   };
 
diff --git a/nixpkgs/pkgs/misc/translatelocally-models/default.nix b/nixpkgs/pkgs/misc/translatelocally-models/default.nix
new file mode 100644
index 000000000000..3c71247d1d9a
--- /dev/null
+++ b/nixpkgs/pkgs/misc/translatelocally-models/default.nix
@@ -0,0 +1,43 @@
+{ lib, stdenvNoCC, fetchurl }:
+
+let
+  modelSpecs = (builtins.fromJSON (builtins.readFile ./models.json));
+  withCodeAsKey = f: { code, ... }@attrs: lib.nameValuePair code (f attrs);
+  mkModelPackage = { name, code, version, url, checksum }:
+    stdenvNoCC.mkDerivation {
+      pname = "translatelocally-model-${code}";
+      version = toString version;
+
+      src = fetchurl {
+        inherit url;
+        sha256 = checksum;
+      };
+      dontUnpack = true;
+
+      installPhase = ''
+        TARGET="$out/share/translateLocally/models"
+        mkdir -p "$TARGET"
+        tar -xzf "$src" -C "$TARGET"
+
+        # avoid patching shebangs in inconsistently executable extra files
+        find "$out" -type f -exec chmod -x {} +
+      '';
+
+      meta = {
+        description = "translateLocally model - ${name}";
+        homepage = "https://translatelocally.com/";
+        # https://github.com/browsermt/students/blob/master/LICENSE.md
+        license = lib.licenses.cc-by-sa-40;
+      };
+    };
+  allModelPkgs =
+    lib.listToAttrs (map (withCodeAsKey mkModelPackage) modelSpecs);
+
+in allModelPkgs // {
+  is-en-tiny = allModelPkgs.is-en-tiny.overrideAttrs (super: {
+    # missing model https://github.com/XapaJIaMnu/translateLocally/issues/147
+    meta = super.meta // { broken = true; };
+  });
+} // {
+  passthru.updateScript = ./update.sh;
+}
diff --git a/nixpkgs/pkgs/misc/translatelocally-models/models.json b/nixpkgs/pkgs/misc/translatelocally-models/models.json
new file mode 100644
index 000000000000..98529a1a9549
--- /dev/null
+++ b/nixpkgs/pkgs/misc/translatelocally-models/models.json
@@ -0,0 +1,149 @@
+[
+  {
+    "version": 1,
+    "checksum": "3714539160d5b4dce3ce0d829939315e3daffeaff53647249cc6336d745c09f2",
+    "url": "https://data.statmt.org/bergamot/models/csen/csen.student.base.tar.gz",
+    "name": "Czech-English base",
+    "code": "cs-en-base"
+  },
+  {
+    "version": 1,
+    "checksum": "693aa14ecb86275169ad4b01cbca294f3bd38d8d9bc1fad8dd89fa7e937e7d2c",
+    "url": "https://data.statmt.org/bergamot/models/csen/csen.student.tiny11.tar.gz",
+    "name": "Czech-English tiny",
+    "code": "cs-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "7a57b4e3a11a2c5e03fc6855ffc2b8f61ce3f1a68aeefa4592577a9eebe25031",
+    "url": "https://data.statmt.org/bergamot/models/csen/encs.student.base.tar.gz",
+    "name": "English-Czech base",
+    "code": "en-cs-base"
+  },
+  {
+    "version": 1,
+    "checksum": "f999d6511bdb4f1ff246b0563fdf9b71d836e1c3037fe5306a61836d3b5b8d19",
+    "url": "https://data.statmt.org/bergamot/models/csen/encs.student.tiny11.tar.gz",
+    "name": "English-Czech tiny",
+    "code": "en-cs-tiny"
+  },
+  {
+    "version": 2,
+    "checksum": "e7362faa83c4f61e552adf8fbd4bc528fe706746eb9fc1c286ec9af7566e3daf",
+    "url": "https://data.statmt.org/bergamot/models/deen/deen.student.base.tar.gz",
+    "name": "German-English base",
+    "code": "de-en-base"
+  },
+  {
+    "version": 2,
+    "checksum": "5c11b6ccfa0533fd5632b3cbccbb054972076266e2d1d989d3babb0ec0b10e28",
+    "url": "https://data.statmt.org/bergamot/models/deen/deen.student.tiny11.tar.gz",
+    "name": "German-English tiny",
+    "code": "de-en-tiny"
+  },
+  {
+    "version": 2,
+    "checksum": "cf9ab5a41ce359672ab47579686f9af50fc1fe040552c375ca86912f0fce7827",
+    "url": "https://data.statmt.org/bergamot/models/deen/ende.student.base.tar.gz",
+    "name": "English-German base",
+    "code": "en-de-base"
+  },
+  {
+    "version": 2,
+    "checksum": "0e85d1d7ee4f8a3ec12680696ffc11fa97d67a54d068ceafcf390a87df94877f",
+    "url": "https://data.statmt.org/bergamot/models/deen/ende.student.tiny11.tar.gz",
+    "name": "English-German tiny",
+    "code": "en-de-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "adf49d0e2f21b82414bc353ae1f0904d93360caa92203ae9f2fc209a83882d81",
+    "url": "https://data.statmt.org/bergamot/models/esen/esen.student.tiny11.tar.gz",
+    "name": "Spanish-English tiny",
+    "code": "es-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "6594dda2a4f5d333969c30f8356f4a9f3fe15a9f8a5fd018b0d85b9d9ad2abb0",
+    "url": "https://data.statmt.org/bergamot/models/esen/enes.student.tiny11.tar.gz",
+    "name": "English-Spanish tiny",
+    "code": "en-es-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "05c6525549c9c621e348f8de74533764ad7696aba8245fc9a504116f8ef4053c",
+    "url": "https://data.statmt.org/bergamot/models/eten/eten.student.tiny11.tar.gz",
+    "name": "Estonian-English tiny",
+    "code": "et-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "afce6c566270abdd4db332e8dcf4fe22057ada3b2a1171aab04d0d4817396fb5",
+    "url": "https://data.statmt.org/bergamot/models/eten/enet.student.tiny11.tar.gz",
+    "name": "English-Estonian tiny",
+    "code": "en-et-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "5c1696747590d1a75bef67348dce96bcd3889eb5a06a0f670c3d7232ed79f60e",
+    "url": "https://data.statmt.org/bergamot/models/isen/isen.student.tiny11.tar.gz",
+    "name": "Icelandic-English tiny",
+    "code": "is-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "9f5dde2f4f87438c24c9561990636e624c53b527ddc8505f822b22b073069de8",
+    "url": "https://data.statmt.org/bergamot/models/nben/nben.student.tiny11.tar.gz",
+    "name": "Norwegian (Bokmål)-English tiny",
+    "code": "nb-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "0bb4b83560caaffae95940574d939999092800a7803fae4c79a97e6481887a4f",
+    "url": "https://data.statmt.org/bergamot/models/nnen/nnen.student.tiny11.tar.gz",
+    "name": "Norwegian (Nynorsk)-English tiny",
+    "code": "nn-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "ecfe9c2b0be3406c0205ad2da58f4005893a4ae969e81dd9c523093cf5c7abc3",
+    "url": "https://data.statmt.org/bergamot/models/bgen/bgen.student.tiny11.tar.gz",
+    "name": "Bulgarian-English tiny",
+    "code": "bg-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "eb9a7511ae9c89fb91ab6da1e9d5061946ad752e5801351f39c8eddca9705c74",
+    "url": "https://data.statmt.org/bergamot/models/bgen/enbg.student.tiny11.tar.gz",
+    "name": "English-Bulgarian tiny",
+    "code": "en-bg-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "87148203cbda28421d76fffbd7d3cd6c1fc0d6dae2843c248870274d6512a388",
+    "url": "https://data.statmt.org/bergamot/models/plen/plen.student.tiny11.tar.gz",
+    "name": "Polish-English tiny",
+    "code": "pl-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "c33219daa12e7872cf7ac8a1b86a2f3e0592ebadd7e756bf11d16d9a7725cf9b",
+    "url": "https://data.statmt.org/bergamot/models/plen/enpl.student.tiny11.tar.gz",
+    "name": "English-Polish tiny",
+    "code": "en-pl-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "817a45ed9ec3228bfb797e5e14781ab7fe9f388fe1e834e280031f05089809f8",
+    "url": "https://data.statmt.org/bergamot/models/fren/fren.student.tiny11.tar.gz",
+    "name": "French-English tiny",
+    "code": "fr-en-tiny"
+  },
+  {
+    "version": 1,
+    "checksum": "28deea86d2a02102a7fedf19391a7628386f01f1f532d430306a9728dc5ec2d6",
+    "url": "https://data.statmt.org/bergamot/models/fren/enfr.student.tiny11.tar.gz",
+    "name": "English-French tiny",
+    "code": "en-fr-tiny"
+  }
+]
diff --git a/nixpkgs/pkgs/misc/translatelocally-models/update.sh b/nixpkgs/pkgs/misc/translatelocally-models/update.sh
new file mode 100755
index 000000000000..4c75508211b6
--- /dev/null
+++ b/nixpkgs/pkgs/misc/translatelocally-models/update.sh
@@ -0,0 +1,14 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p curl -p jq
+
+set -eu -o pipefail
+
+curl https://translatelocally.com/models.json \
+  | jq '.models | map(with_entries(select([.key] | inside([
+      "name",
+      "code",
+      "version",
+      "url",
+      "checksum"
+    ]))))' \
+  > "$(dirname "$0")/models.json"
diff --git a/nixpkgs/pkgs/misc/vencord/default.nix b/nixpkgs/pkgs/misc/vencord/default.nix
index a8efd438f024..7431334b91ce 100644
--- a/nixpkgs/pkgs/misc/vencord/default.nix
+++ b/nixpkgs/pkgs/misc/vencord/default.nix
@@ -5,8 +5,8 @@
 , buildWebExtension ? false
 }:
 let
-  version = "1.6.4";
-  gitHash = "6bbf562";
+  version = "1.6.5";
+  gitHash = "d629281";
 in
 buildNpmPackage rec {
   pname = "vencord";
@@ -16,7 +16,7 @@ buildNpmPackage rec {
     owner = "Vendicated";
     repo = "Vencord";
     rev = "v${version}";
-    hash = "sha256-JL6UwxI4lSkxWfrps1Z2Q97LrzU4Hp6zs8kK2MdqXs8=";
+    hash = "sha256-/aZIjHWqk55Lo2fnu8Dx+iERRO8xOo/xjcmMmTPFj50=";
   };
 
   ESBUILD_BINARY_PATH = lib.getExe (esbuild.overrideAttrs (final: _: {
@@ -34,7 +34,7 @@ buildNpmPackage rec {
   npmRebuildFlags = [ "|| true" ];
 
   makeCacheWritable = true;
-  npmDepsHash = "sha256-nb72XkNlMRJL7BcTh3lf7s0jigRj5F5TeY9xuGAdVsk=";
+  npmDepsHash = "sha256-n9RC1B0VKDQtY3jOH+ZZKD1E6yfszkYSwEnRzzruBjg=";
   npmFlags = [ "--legacy-peer-deps" ];
   npmBuildScript = if buildWebExtension then "buildWeb" else "build";
   npmBuildFlags = [ "--" "--standalone" "--disable-updater" ];
diff --git a/nixpkgs/pkgs/misc/vencord/package-lock.json b/nixpkgs/pkgs/misc/vencord/package-lock.json
index 52fab2d1dbac..abc52ec812b7 100644
--- a/nixpkgs/pkgs/misc/vencord/package-lock.json
+++ b/nixpkgs/pkgs/misc/vencord/package-lock.json
@@ -1,12 +1,12 @@
 {
     "name": "vencord",
-    "version": "1.6.4",
+    "version": "1.6.5",
     "lockfileVersion": 3,
     "requires": true,
     "packages": {
         "": {
             "name": "vencord",
-            "version": "1.6.4",
+            "version": "1.6.5",
             "license": "GPL-3.0-or-later",
             "dependencies": {
                 "@sapphi-red/web-noise-suppressor": "0.3.3",
@@ -46,7 +46,8 @@
                 "tsx": "^3.12.7",
                 "type-fest": "^3.9.0",
                 "typescript": "^5.0.4",
-                "zip-local": "^0.3.5"
+                "zip-local": "^0.3.5",
+                "zustand": "^3.7.2"
             },
             "engines": {
                 "node": ">=18",
@@ -703,9 +704,9 @@
             }
         },
         "node_modules/@eslint/eslintrc": {
-            "version": "2.1.3",
-            "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz",
-            "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==",
+            "version": "2.1.4",
+            "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
+            "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
             "dev": true,
             "dependencies": {
                 "ajv": "^6.12.4",
@@ -726,9 +727,9 @@
             }
         },
         "node_modules/@eslint/js": {
-            "version": "8.54.0",
-            "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz",
-            "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==",
+            "version": "8.55.0",
+            "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.55.0.tgz",
+            "integrity": "sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==",
             "dev": true,
             "engines": {
                 "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -848,9 +849,9 @@
             }
         },
         "node_modules/@types/diff": {
-            "version": "5.0.8",
-            "resolved": "https://registry.npmjs.org/@types/diff/-/diff-5.0.8.tgz",
-            "integrity": "sha512-kR0gRf0wMwpxQq6ME5s+tWk9zVCfJUl98eRkD05HWWRbhPB/eu4V1IbyZAsvzC1Gn4znBJ0HN01M4DGXdBEV8Q==",
+            "version": "5.0.9",
+            "resolved": "https://registry.npmjs.org/@types/diff/-/diff-5.0.9.tgz",
+            "integrity": "sha512-RWVEhh/zGXpAVF/ZChwNnv7r4rvqzJ7lYNSmZSVTxjV0PBLf6Qu7RNg+SUtkpzxmiNkjCx0Xn2tPp7FIkshJwQ==",
             "dev": true
         },
         "node_modules/@types/filesystem": {
@@ -893,9 +894,9 @@
             "dev": true
         },
         "node_modules/@types/node": {
-            "version": "18.18.14",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
-            "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+            "version": "18.19.3",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.3.tgz",
+            "integrity": "sha512-k5fggr14DwAytoA/t8rPrIz++lXK7/DqckthCmoZOKNsEbJkId4Z//BqgApXBUGrGddrigYa1oqheo/7YmW4rg==",
             "dev": true,
             "dependencies": {
                 "undici-types": "~5.26.4"
@@ -914,9 +915,9 @@
             "dev": true
         },
         "node_modules/@types/react": {
-            "version": "18.2.39",
-            "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.39.tgz",
-            "integrity": "sha512-Oiw+ppED6IremMInLV4HXGbfbG6GyziY3kqAwJYOR0PNbkYDmLWQA3a95EhdSmamsvbkJN96ZNN+YD+fGjzSBA==",
+            "version": "18.2.45",
+            "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.45.tgz",
+            "integrity": "sha512-TtAxCNrlrBp8GoeEp1npd5g+d/OejJHFxS3OWmrPBMFaVQMSN0OFySozJio5BHxTuTeug00AVXVAjfDSfk+lUg==",
             "dev": true,
             "dependencies": {
                 "@types/prop-types": "*",
@@ -1768,9 +1769,9 @@
             }
         },
         "node_modules/csstype": {
-            "version": "3.1.2",
-            "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
-            "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==",
+            "version": "3.1.3",
+            "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
+            "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
             "dev": true
         },
         "node_modules/debug": {
@@ -2326,15 +2327,15 @@
             }
         },
         "node_modules/eslint": {
-            "version": "8.54.0",
-            "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz",
-            "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==",
+            "version": "8.55.0",
+            "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.55.0.tgz",
+            "integrity": "sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==",
             "dev": true,
             "dependencies": {
                 "@eslint-community/eslint-utils": "^4.2.0",
                 "@eslint-community/regexpp": "^4.6.1",
-                "@eslint/eslintrc": "^2.1.3",
-                "@eslint/js": "8.54.0",
+                "@eslint/eslintrc": "^2.1.4",
+                "@eslint/js": "8.55.0",
                 "@humanwhocodes/config-array": "^0.11.13",
                 "@humanwhocodes/module-importer": "^1.0.1",
                 "@nodelib/fs.walk": "^1.2.8",
@@ -2929,9 +2930,9 @@
             }
         },
         "node_modules/globals": {
-            "version": "13.23.0",
-            "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz",
-            "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==",
+            "version": "13.24.0",
+            "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
+            "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
             "dev": true,
             "dependencies": {
                 "type-fest": "^0.20.2"
@@ -4051,9 +4052,9 @@
             }
         },
         "node_modules/postcss": {
-            "version": "8.4.31",
-            "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
-            "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
+            "version": "8.4.32",
+            "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz",
+            "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==",
             "dev": true,
             "funding": [
                 {
@@ -4070,7 +4071,7 @@
                 }
             ],
             "dependencies": {
-                "nanoid": "^3.3.6",
+                "nanoid": "^3.3.7",
                 "picocolors": "^1.0.0",
                 "source-map-js": "^1.0.2"
             },
@@ -5324,9 +5325,9 @@
             }
         },
         "node_modules/typescript": {
-            "version": "5.3.2",
-            "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz",
-            "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==",
+            "version": "5.3.3",
+            "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz",
+            "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==",
             "dev": true,
             "bin": {
                 "tsc": "bin/tsc",
@@ -5652,6 +5653,23 @@
                 "jszip": "^2.6.1",
                 "q": "^1.4.1"
             }
+        },
+        "node_modules/zustand": {
+            "version": "3.7.2",
+            "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz",
+            "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==",
+            "dev": true,
+            "engines": {
+                "node": ">=12.7.0"
+            },
+            "peerDependencies": {
+                "react": ">=16.8"
+            },
+            "peerDependenciesMeta": {
+                "react": {
+                    "optional": true
+                }
+            }
         }
     }
 }