Loading pkgs/by-name/si/signal-desktop-source/libsignal-node.nix 0 → 100644 +87 −0 Original line number Diff line number Diff line { stdenv, rustPlatform, fetchNpmDeps, npmHooks, protobuf, clang, gitMinimal, cmake, boringssl, runCommand, fetchFromGitHub, python3, nodejs, }: let # boring-sys expects the static libraries in build/ instead of lib/ boringssl-wrapper = runCommand "boringssl-wrapper" { } '' mkdir $out cd $out ln -s ${boringssl.out}/lib build ln -s ${boringssl.dev}/include include ''; in rustPlatform.buildRustPackage (finalAttrs: { pname = "libsignal-node"; version = "0.67.0"; src = fetchFromGitHub { owner = "signalapp"; repo = "libsignal"; tag = "v${finalAttrs.version}"; hash = "sha256-Cwra5o9g2+M3dboQUuBikRWyaydL/CGwOfJbImsFRoI="; }; useFetchCargoVendor = true; cargoHash = "sha256-KVt4ESHaHDtD+pcaMMG/DMMznYGpWleEf7uTZB45Ud0="; npmRoot = "node"; npmDeps = fetchNpmDeps { name = "${finalAttrs.pname}-npm-deps"; inherit (finalAttrs) version src; sourceRoot = "${finalAttrs.src.name}/${finalAttrs.npmRoot}"; hash = "sha256-TXRZFfdl86PLJ1FWOkTcXjbx8aZV7gEvs22Pu8b5uFU="; }; nativeBuildInputs = [ python3 protobuf nodejs clang gitMinimal cmake npmHooks.npmConfigHook rustPlatform.bindgenHook ]; env.BORING_BSSL_PATH = "${boringssl-wrapper}"; env.NIX_LDFLAGS = if stdenv.hostPlatform.isDarwin then "-lc++" else "-lstdc++"; patchPhase = '' runHook prePatch substituteInPlace node/binding.gyp \ --replace-fail "'--out-dir', '<(PRODUCT_DIR)/'," \ "'--out-dir', '$out/lib/<(NODE_OS_NAME)-<(target_arch)/'," \ --replace-fail "'target_name': 'libsignal_client_<(NODE_OS_NAME)_<(target_arch).node'," \ "'target_name': '@signalapp+libsignal-client'," substituteInPlace node/build_node_bridge.py \ --replace-fail "dst_base = 'libsignal_client_%s_%s' % (node_os_name, node_arch)" \ "dst_base = '@signalapp+libsignal-client'" runHook postPatch ''; buildPhase = '' runHook preBuild pushd node npx node-gyp rebuild popd runHook postBuild ''; dontCargoInstall = true; }) pkgs/by-name/si/signal-desktop-source/package.nix +6 −2 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ let ''; sqlcipher-signal-extension = callPackage ./sqlcipher-signal-extension.nix { }; libsignal-node = callPackage ./libsignal-node.nix { inherit nodejs; }; ringrtc = stdenv.mkDerivation (finalAttrs: { pname = "ringrtc-bin"; Loading Loading @@ -71,6 +72,7 @@ let runHook postInstall ''; }); in stdenv.mkDerivation (finalAttrs: { pname = "signal-desktop-source"; Loading Loading @@ -122,6 +124,9 @@ stdenv.mkDerivation (finalAttrs: { cp ${sqlcipher-signal-extension}/share/sqlite3.gyp node_modules/@signalapp/better-sqlite3/deps/sqlite3.gyp cp -r ${ringrtc} node_modules/@signalapp/ringrtc/build rm -fr node_modules/@signalapp/libsignal-client/prebuilds cp -r ${libsignal-node}/lib node_modules/@signalapp/libsignal-client/prebuilds ''; buildPhase = '' Loading Loading @@ -183,7 +188,7 @@ stdenv.mkDerivation (finalAttrs: { ]; passthru = { inherit sqlcipher-signal-extension; inherit sqlcipher-signal-extension libsignal-node; }; meta = { Loading Loading @@ -215,7 +220,6 @@ stdenv.mkDerivation (finalAttrs: { fromSource # ringrtc # node_modules/@signalapp/libsignal-client/prebuilds/ binaryNativeCode ]; }; Loading Loading
pkgs/by-name/si/signal-desktop-source/libsignal-node.nix 0 → 100644 +87 −0 Original line number Diff line number Diff line { stdenv, rustPlatform, fetchNpmDeps, npmHooks, protobuf, clang, gitMinimal, cmake, boringssl, runCommand, fetchFromGitHub, python3, nodejs, }: let # boring-sys expects the static libraries in build/ instead of lib/ boringssl-wrapper = runCommand "boringssl-wrapper" { } '' mkdir $out cd $out ln -s ${boringssl.out}/lib build ln -s ${boringssl.dev}/include include ''; in rustPlatform.buildRustPackage (finalAttrs: { pname = "libsignal-node"; version = "0.67.0"; src = fetchFromGitHub { owner = "signalapp"; repo = "libsignal"; tag = "v${finalAttrs.version}"; hash = "sha256-Cwra5o9g2+M3dboQUuBikRWyaydL/CGwOfJbImsFRoI="; }; useFetchCargoVendor = true; cargoHash = "sha256-KVt4ESHaHDtD+pcaMMG/DMMznYGpWleEf7uTZB45Ud0="; npmRoot = "node"; npmDeps = fetchNpmDeps { name = "${finalAttrs.pname}-npm-deps"; inherit (finalAttrs) version src; sourceRoot = "${finalAttrs.src.name}/${finalAttrs.npmRoot}"; hash = "sha256-TXRZFfdl86PLJ1FWOkTcXjbx8aZV7gEvs22Pu8b5uFU="; }; nativeBuildInputs = [ python3 protobuf nodejs clang gitMinimal cmake npmHooks.npmConfigHook rustPlatform.bindgenHook ]; env.BORING_BSSL_PATH = "${boringssl-wrapper}"; env.NIX_LDFLAGS = if stdenv.hostPlatform.isDarwin then "-lc++" else "-lstdc++"; patchPhase = '' runHook prePatch substituteInPlace node/binding.gyp \ --replace-fail "'--out-dir', '<(PRODUCT_DIR)/'," \ "'--out-dir', '$out/lib/<(NODE_OS_NAME)-<(target_arch)/'," \ --replace-fail "'target_name': 'libsignal_client_<(NODE_OS_NAME)_<(target_arch).node'," \ "'target_name': '@signalapp+libsignal-client'," substituteInPlace node/build_node_bridge.py \ --replace-fail "dst_base = 'libsignal_client_%s_%s' % (node_os_name, node_arch)" \ "dst_base = '@signalapp+libsignal-client'" runHook postPatch ''; buildPhase = '' runHook preBuild pushd node npx node-gyp rebuild popd runHook postBuild ''; dontCargoInstall = true; })
pkgs/by-name/si/signal-desktop-source/package.nix +6 −2 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ let ''; sqlcipher-signal-extension = callPackage ./sqlcipher-signal-extension.nix { }; libsignal-node = callPackage ./libsignal-node.nix { inherit nodejs; }; ringrtc = stdenv.mkDerivation (finalAttrs: { pname = "ringrtc-bin"; Loading Loading @@ -71,6 +72,7 @@ let runHook postInstall ''; }); in stdenv.mkDerivation (finalAttrs: { pname = "signal-desktop-source"; Loading Loading @@ -122,6 +124,9 @@ stdenv.mkDerivation (finalAttrs: { cp ${sqlcipher-signal-extension}/share/sqlite3.gyp node_modules/@signalapp/better-sqlite3/deps/sqlite3.gyp cp -r ${ringrtc} node_modules/@signalapp/ringrtc/build rm -fr node_modules/@signalapp/libsignal-client/prebuilds cp -r ${libsignal-node}/lib node_modules/@signalapp/libsignal-client/prebuilds ''; buildPhase = '' Loading Loading @@ -183,7 +188,7 @@ stdenv.mkDerivation (finalAttrs: { ]; passthru = { inherit sqlcipher-signal-extension; inherit sqlcipher-signal-extension libsignal-node; }; meta = { Loading Loading @@ -215,7 +220,6 @@ stdenv.mkDerivation (finalAttrs: { fromSource # ringrtc # node_modules/@signalapp/libsignal-client/prebuilds/ binaryNativeCode ]; }; Loading