mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-12 05:16:25 +03:00
element-desktop: 1.11.110 -> 1.11.102
Release notes:
- https://github.com/element-hq/element-desktop/releases/tag/v1.11.101
- https://github.com/element-hq/element-desktop/releases/tag/v1.11.102
Changelog: https://github.com/element-hq/element-desktop/compare/v1.11.100...v1.11.102
Updates electron from 35 to 36.
Re-introduces the same mechanism for the yarnOfflineCache as #381196, as
the problem described in there is back again.
(cherry picked from commit 84458a3fcd
)
This commit is contained in:
parent
4c003a0747
commit
e8242f2e3b
3 changed files with 65 additions and 12 deletions
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"version" = "1.11.100";
|
"version" = "1.11.102";
|
||||||
"hashes" = {
|
"hashes" = {
|
||||||
"desktopSrcHash" = "sha256-qlKZkBPWcD1eyEetCrIKsSXmodg6DYCmENfY+UT7Khc=";
|
"desktopSrcHash" = "sha256-wefoN8Nk31lwJFYbBRoKfy+0n69yVg6jskqP6aTHApE=";
|
||||||
"desktopYarnHash" = "sha256-wuRAeb4IpA2Ihr3ohaMPvFsaMod4Bg8o9lm8yzStwmk=";
|
"desktopYarnHash" = "sha256-/Gy/sYk8EBWU07zXwPl0zsDW5ADRq1j5PH4lPFe8dxk=";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,15 +4,15 @@
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
makeWrapper,
|
makeWrapper,
|
||||||
makeDesktopItem,
|
makeDesktopItem,
|
||||||
yarnConfigHook,
|
yarn,
|
||||||
nodejs,
|
nodejs,
|
||||||
fetchYarnDeps,
|
|
||||||
jq,
|
jq,
|
||||||
electron_35,
|
electron_36,
|
||||||
element-web,
|
element-web,
|
||||||
sqlcipher,
|
sqlcipher,
|
||||||
callPackage,
|
callPackage,
|
||||||
desktopToDarwinBundle,
|
desktopToDarwinBundle,
|
||||||
|
typescript,
|
||||||
useKeytar ? true,
|
useKeytar ? true,
|
||||||
# command line arguments which are always set
|
# command line arguments which are always set
|
||||||
commandLineArgs ? "",
|
commandLineArgs ? "",
|
||||||
|
@ -22,7 +22,7 @@ let
|
||||||
pinData = import ./element-desktop-pin.nix;
|
pinData = import ./element-desktop-pin.nix;
|
||||||
inherit (pinData.hashes) desktopSrcHash desktopYarnHash;
|
inherit (pinData.hashes) desktopSrcHash desktopYarnHash;
|
||||||
executableName = "element-desktop";
|
executableName = "element-desktop";
|
||||||
electron = electron_35;
|
electron = electron_36;
|
||||||
keytar = callPackage ./keytar {
|
keytar = callPackage ./keytar {
|
||||||
inherit electron;
|
inherit electron;
|
||||||
};
|
};
|
||||||
|
@ -41,16 +41,22 @@ stdenv.mkDerivation (
|
||||||
hash = desktopSrcHash;
|
hash = desktopSrcHash;
|
||||||
};
|
};
|
||||||
|
|
||||||
offlineCache = fetchYarnDeps {
|
# TODO: fetchYarnDeps currently does not deal properly with a dependency
|
||||||
yarnLock = finalAttrs.src + "/yarn.lock";
|
# declared as a pin to a commit in a specific git repository.
|
||||||
sha256 = desktopYarnHash;
|
# While it does download everything correctly, `yarn install --offline`
|
||||||
|
# always wants to `git ls-remote` to the repository, ignoring the local
|
||||||
|
# cached tarball.
|
||||||
|
offlineCache = callPackage ./yarn.nix {
|
||||||
|
inherit (finalAttrs) version src;
|
||||||
|
hash = desktopYarnHash;
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
yarnConfigHook
|
|
||||||
nodejs
|
nodejs
|
||||||
makeWrapper
|
makeWrapper
|
||||||
jq
|
jq
|
||||||
|
yarn
|
||||||
|
typescript
|
||||||
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ desktopToDarwinBundle ];
|
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ desktopToDarwinBundle ];
|
||||||
|
|
||||||
inherit seshat;
|
inherit seshat;
|
||||||
|
@ -60,13 +66,21 @@ stdenv.mkDerivation (
|
||||||
# this shouldn't be in the closure just for unused scripts.
|
# this shouldn't be in the closure just for unused scripts.
|
||||||
dontPatchShebangs = true;
|
dontPatchShebangs = true;
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
mkdir -p node_modules/
|
||||||
|
cp -r $offlineCache/node_modules/* node_modules/
|
||||||
|
substituteInPlace package.json --replace-fail "tsx " "node node_modules/tsx/dist/cli.mjs "
|
||||||
|
'';
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
runHook preBuild
|
runHook preBuild
|
||||||
|
|
||||||
yarn --offline run build:ts
|
yarn --offline run build:ts
|
||||||
yarn --offline run i18n
|
node node_modules/matrix-web-i18n/scripts/gen-i18n.js
|
||||||
|
yarn --offline run i18n:sort
|
||||||
yarn --offline run build:res
|
yarn --offline run build:res
|
||||||
|
|
||||||
|
chmod -R a+w node_modules/keytar-forked
|
||||||
rm -rf node_modules/matrix-seshat node_modules/keytar-forked
|
rm -rf node_modules/matrix-seshat node_modules/keytar-forked
|
||||||
${lib.optionalString useKeytar "ln -s ${keytar} node_modules/keytar-forked"}
|
${lib.optionalString useKeytar "ln -s ${keytar} node_modules/keytar-forked"}
|
||||||
ln -s $seshat node_modules/matrix-seshat
|
ln -s $seshat node_modules/matrix-seshat
|
||||||
|
@ -82,6 +96,7 @@ stdenv.mkDerivation (
|
||||||
ln -s '${element-web}' "$out/share/element/webapp"
|
ln -s '${element-web}' "$out/share/element/webapp"
|
||||||
cp -r '.' "$out/share/element/electron"
|
cp -r '.' "$out/share/element/electron"
|
||||||
cp -r './res/img' "$out/share/element"
|
cp -r './res/img' "$out/share/element"
|
||||||
|
chmod -R "a+w" "$out/share/element/electron/node_modules"
|
||||||
rm -rf "$out/share/element/electron/node_modules"
|
rm -rf "$out/share/element/electron/node_modules"
|
||||||
cp -r './node_modules' "$out/share/element/electron"
|
cp -r './node_modules' "$out/share/element/electron"
|
||||||
cp $out/share/element/electron/lib/i18n/strings/en_EN.json $out/share/element/electron/lib/i18n/strings/en-us.json
|
cp $out/share/element/electron/lib/i18n/strings/en_EN.json $out/share/element/electron/lib/i18n/strings/en-us.json
|
||||||
|
|
38
pkgs/by-name/el/element-desktop/yarn.nix
Normal file
38
pkgs/by-name/el/element-desktop/yarn.nix
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{
|
||||||
|
stdenvNoCC,
|
||||||
|
yarn,
|
||||||
|
cacert,
|
||||||
|
git,
|
||||||
|
version,
|
||||||
|
src,
|
||||||
|
hash,
|
||||||
|
}:
|
||||||
|
stdenvNoCC.mkDerivation {
|
||||||
|
pname = "element-desktop-yarn-deps";
|
||||||
|
inherit version src;
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
cacert
|
||||||
|
yarn
|
||||||
|
git
|
||||||
|
];
|
||||||
|
|
||||||
|
dontInstall = true;
|
||||||
|
|
||||||
|
NODE_EXTRA_CA_CERTS = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
export HOME=$(mktemp -d)
|
||||||
|
export YARN_ENABLE_TELEMETRY=0
|
||||||
|
|
||||||
|
yarn install --frozen-lockfile --ignore-platform --skip-integrity-check --ignore-scripts --no-progress --non-interactive
|
||||||
|
|
||||||
|
mkdir -p $out/node_modules
|
||||||
|
cp -r node_modules/* $out/node_modules/
|
||||||
|
'';
|
||||||
|
|
||||||
|
dontPatchShebangs = true;
|
||||||
|
|
||||||
|
outputHash = hash;
|
||||||
|
outputHashMode = "recursive";
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue