diff --git a/pkgs/applications/networking/instant-messengers/schildichat/pin.json b/pkgs/applications/networking/instant-messengers/schildichat/pin.json deleted file mode 100644 index fbae80954e8b..000000000000 --- a/pkgs/applications/networking/instant-messengers/schildichat/pin.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "version": "1.11.30-sc.2", - "rev": "v1.11.30-sc.2", - "srcHash": "1qb1fcr52gyzxndz3j77vn3ddwjpxwvicnh16c72zpzpfbbky7a5", - "webYarnHash": "0bg5vc7q8afqfpsaqqkczf9whbzici5d2bxj5cadhrlmlb27f8nx", - "jsSdkYarnHash": "0p1whh3pmqz170l542fiq3zgljl5daa9b96i59p3wvggnx7kny7j", - "reactSdkYarnHash": "02ysshiyjj3w00b628is9bd7i8qc3vc8kr1zam2dpj26lb9k5pdd", - "desktopYarnHash": "16pzmlwzf3z8mky3wb4azaiggigyfnpxmbq3irjp30ic6yhl50yw" -} diff --git a/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix b/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix deleted file mode 100644 index 86bc2d671eb0..000000000000 --- a/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix +++ /dev/null @@ -1,131 +0,0 @@ -{ lib -, element-desktop # for seshat and keytar -, schildichat-web -, stdenv -, fetchFromGitHub -, makeWrapper -, makeDesktopItem -, copyDesktopItems -, fetchYarnDeps -, yarn -, nodejs -, prefetch-yarn-deps -, electron -, Security -, AppKit -, CoreServices -, sqlcipher -}: - -let - pinData = lib.importJSON ./pin.json; - executableName = "schildichat-desktop"; -in -stdenv.mkDerivation rec { - pname = "schildichat-desktop"; - inherit (pinData) version; - - src = fetchFromGitHub { - owner = "SchildiChat"; - repo = "schildichat-desktop"; - inherit (pinData) rev; - sha256 = pinData.srcHash; - fetchSubmodules = true; - }; - - offlineCache = fetchYarnDeps { - yarnLock = src + "/element-desktop/yarn.lock"; - sha256 = pinData.desktopYarnHash; - }; - - nativeBuildInputs = [ yarn prefetch-yarn-deps nodejs makeWrapper copyDesktopItems ]; - inherit (element-desktop) seshat keytar; - - configurePhase = '' - runHook preConfigure - - export HOME=$(mktemp -d) - pushd element-desktop - yarn config --offline set yarn-offline-mirror $offlineCache - fixup-yarn-lock yarn.lock - yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive - rm -rf node_modules/matrix-seshat node_modules/keytar - ln -s $keytar node_modules/keytar - ln -s $seshat node_modules/matrix-seshat - patchShebangs node_modules/ - popd - - runHook postConfigure - ''; - - # Only affects unused scripts in $out/share/element/electron/scripts. Also - # breaks because there are some `node`-scripts with a `npx`-shebang and - # this shouldn't be in the closure just for unused scripts. - dontPatchShebangs = true; - - buildPhase = '' - runHook preBuild - - pushd element-desktop - yarn --offline run build:ts - yarn --offline run i18n - yarn --offline run build:res - popd - - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - - # resources - mkdir -p "$out/share/element" - ln -s '${schildichat-web}' "$out/share/element/webapp" - mv element-desktop "$out/share/element/electron" - cp -r "$out/share/element/electron/res/img" "$out/share/element" - cp $out/share/element/electron/lib/i18n/strings/en_EN.json $out/share/element/electron/lib/i18n/strings/en-us.json - ln -s $out/share/element/electron/lib/i18n/strings/en{-us,}.json - - # icons - for icon in $out/share/element/electron/build/icons/*.png; do - mkdir -p "$out/share/icons/hicolor/$(basename $icon .png)/apps" - ln -s "$icon" "$out/share/icons/hicolor/$(basename $icon .png)/apps/schildichat.png" - done - - # executable wrapper - # LD_PRELOAD workaround for sqlcipher not found: https://github.com/matrix-org/seshat/issues/102 - makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \ - --set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher.so \ - --add-flags "$out/share/element/electron" \ - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" - - runHook postInstall - ''; - - # The desktop item properties should be kept in sync with data from upstream: - # https://github.com/schildichat/element-desktop/blob/sc/package.json - desktopItems = [ - (makeDesktopItem { - name = "schildichat-desktop"; - exec = "${executableName} %u"; - icon = "schildichat"; - desktopName = "SchildiChat"; - genericName = "Matrix Client"; - comment = meta.description; - categories = [ "Network" "InstantMessaging" "Chat" ]; - startupWMClass = "schildichat"; - mimeTypes = [ "x-scheme-handler/element" ]; - }) - ]; - - passthru.updateScript = ./update.sh; - - meta = with lib; { - description = "Matrix client / Element Desktop fork"; - homepage = "https://schildi.chat/"; - changelog = "https://github.com/SchildiChat/schildichat-desktop/releases"; - maintainers = teams.matrix.members ++ (with maintainers; [ kloenk yuka ]); - license = licenses.asl20; - platforms = platforms.all; - }; -} diff --git a/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix b/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix deleted file mode 100644 index 0803bcc37791..000000000000 --- a/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix +++ /dev/null @@ -1,113 +0,0 @@ -{ stdenv, lib -, fetchFromGitHub -, fetchYarnDeps -, nodejs -, yarn -, prefetch-yarn-deps -, writeText, jq, conf ? {} -}: - -let - pinData = lib.importJSON ./pin.json; - noPhoningHome = { - disable_guests = true; # disable automatic guest account registration at matrix.org - }; - configOverrides = writeText "element-config-overrides.json" (builtins.toJSON (noPhoningHome // conf)); - -in stdenv.mkDerivation rec { - pname = "schildichat-web"; - inherit (pinData) version; - - src = fetchFromGitHub { - owner = "SchildiChat"; - repo = "schildichat-desktop"; - inherit (pinData) rev; - sha256 = pinData.srcHash; - fetchSubmodules = true; - }; - - webOfflineCache = fetchYarnDeps { - yarnLock = src + "/element-web/yarn.lock"; - sha256 = pinData.webYarnHash; - }; - jsSdkOfflineCache = fetchYarnDeps { - yarnLock = src + "/matrix-js-sdk/yarn.lock"; - sha256 = pinData.jsSdkYarnHash; - }; - reactSdkOfflineCache = fetchYarnDeps { - yarnLock = src + "/matrix-react-sdk/yarn.lock"; - sha256 = pinData.reactSdkYarnHash; - }; - - nativeBuildInputs = [ yarn prefetch-yarn-deps jq nodejs ]; - - configurePhase = '' - runHook preConfigure - - export HOME=$PWD/tmp - # with the update of openssl3, some key ciphers are not supported anymore - # this flag will allow those codecs again as a workaround - # see https://medium.com/the-node-js-collection/node-js-17-is-here-8dba1e14e382#5f07 - # and https://github.com/vector-im/element-web/issues/21043 - export NODE_OPTIONS=--openssl-legacy-provider - mkdir -p $HOME - - pushd element-web - fixup-yarn-lock yarn.lock - yarn config --offline set yarn-offline-mirror $webOfflineCache - yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive - patchShebangs node_modules - rm -rf node_modules/matrix-react-sdk - ln -s $PWD/../matrix-react-sdk node_modules/ - rm -rf node_modules/matrix-js-sdk - ln -s $PWD/../matrix-js-sdk node_modules/ - popd - - pushd matrix-js-sdk - fixup-yarn-lock yarn.lock - yarn config --offline set yarn-offline-mirror $jsSdkOfflineCache - yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive - patchShebangs node_modules - popd - - pushd matrix-react-sdk - fixup-yarn-lock yarn.lock - yarn config --offline set yarn-offline-mirror $reactSdkOfflineCache - yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive - patchShebangs node_modules scripts - popd - - runHook postConfigure - ''; - - buildPhase = '' - runHook preBuild - - pushd element-web - export VERSION=${version} - yarn build:res --offline - yarn build:module_system --offline - yarn build:bundle --offline - popd - - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - - mv element-web/webapp $out - jq -s '.[0] * .[1]' "configs/sc/config.json" "${configOverrides}" > "$out/config.json" - - runHook postInstall - ''; - - meta = with lib; { - description = "Matrix client / Element Web fork"; - homepage = "https://schildi.chat/"; - changelog = "https://github.com/SchildiChat/schildichat-desktop/releases"; - maintainers = teams.matrix.members ++ (with maintainers; [ kloenk yuka ]); - license = licenses.asl20; - platforms = platforms.all; - }; -} diff --git a/pkgs/applications/networking/instant-messengers/schildichat/update.sh b/pkgs/applications/networking/instant-messengers/schildichat/update.sh deleted file mode 100755 index 6ddc99902c3b..000000000000 --- a/pkgs/applications/networking/instant-messengers/schildichat/update.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=../../../../../ -i bash -p nix wget prefetch-yarn-deps nix-prefetch-git jq - -if [[ "$#" -gt 2 || "$1" == -* ]]; then - echo "Regenerates packaging data for the SchildiChat packages." - echo "Usage: $0 [git revision or tag] [version string override]" - exit 1 -fi - -rev="$1" -version="$2" - -set -euo pipefail - -if [ -z "$rev" ]; then - rev="$(wget -O- "https://api.github.com/repos/SchildiChat/schildichat-desktop/releases?per_page=1" | jq -r '.[0].tag_name')" -fi - -if [ -z "$version" ]; then - # strip leading "v" - version="${rev#v}" -fi - -src_data=$(nix-prefetch-git https://github.com/SchildiChat/schildichat-desktop --fetch-submodules --rev $rev) -src=$(echo $src_data | jq -r .path) -src_hash=$(echo $src_data | jq -r .sha256) - -web_yarn_hash=$(prefetch-yarn-deps $src/element-web/yarn.lock) -desktop_yarn_hash=$(prefetch-yarn-deps $src/element-desktop/yarn.lock) -js_sdk_yarn_hash=$(prefetch-yarn-deps $src/matrix-js-sdk/yarn.lock) -react_sdk_yarn_hash=$(prefetch-yarn-deps $src/matrix-react-sdk/yarn.lock) - -cat > pin.json << EOF -{ - "version": "$version", - "rev": "$rev", - "srcHash": "$src_hash", - "webYarnHash": "$web_yarn_hash", - "jsSdkYarnHash": "$js_sdk_yarn_hash", - "reactSdkYarnHash": "$react_sdk_yarn_hash", - "desktopYarnHash": "$desktop_yarn_hash" -} -EOF diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 666989b18da8..7e3b949f4240 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -841,6 +841,13 @@ mapAliases ({ s2n = s2n-tls; # Added 2021-03-03 sane-backends-git = sane-backends; # Added 2021-02-19 scantailor = scantailor-advanced; # Added 2022-05-26 + schildichat-web = throw '' + schildichat has been removed as it is severely lacking behind the Element upstream and does not receive regular security fixes. + Please participate in upstream discussion on getting out new releases: + https://github.com/SchildiChat/schildichat-desktop/issues/212 + https://github.com/SchildiChat/schildichat-desktop/issues/215''; # Added 2023-12-05 + schildichat-desktop = schildichat-web; + schildichat-desktop-wayland = schildichat-web; sdlmame = throw "'sdlmame' has been renamed to/replaced by 'mame'"; # Converted to throw 2023-09-10 searx = throw "'searx' has been removed as it is unmaintained. Please switch to searxng"; # Added 2023-10-03 session-desktop-appimage = session-desktop; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5b60a93f6bad..ecc9681d53da 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7811,19 +7811,6 @@ with pkgs; strawberry = libsForQt5.callPackage ../applications/audio/strawberry { }; - schildichat-desktop = callPackage ../applications/networking/instant-messengers/schildichat/schildichat-desktop.nix { - inherit (darwin.apple_sdk.frameworks) Security AppKit CoreServices; - electron = electron_25; - }; - schildichat-desktop-wayland = writeScriptBin "schildichat-desktop" '' - #!/bin/sh - NIXOS_OZONE_WL=1 exec ${schildichat-desktop}/bin/schildichat-desktop "$@" - ''; - - schildichat-web = callPackage ../applications/networking/instant-messengers/schildichat/schildichat-web.nix { - conf = config.schildichat-web.conf or { }; - }; - schleuder = callPackage ../tools/security/schleuder { }; schleuder-cli = callPackage ../tools/security/schleuder/cli { };