Loading pkgs/by-name/gc/gclient2nix/gclient2nix.py +1 −1 Original line number Diff line number Diff line Loading @@ -107,7 +107,7 @@ class Repo: ) def flatten_repr(self) -> dict: return {"fetcher": self.fetcher, "attrs": {**({"hash": self.hash} if hasattr(self, "hash") else {}), **self.args}} return {"fetcher": self.fetcher, "args": {**({"hash": self.hash} if hasattr(self, "hash") else {}), **self.args}} def flatten(self, path: str) -> dict: out = {path: self.flatten_repr()} Loading pkgs/by-name/si/signal-desktop-source/package.nix +25 −4 Original line number Diff line number Diff line Loading @@ -22,6 +22,23 @@ let pnpm = pnpm_10; electron = electron_35; nodeOS = { "linux" = "linux"; "darwin" = "darwin"; } .${stdenv.hostPlatform.parsed.kernel.name} or (throw "unsupported platform ${stdenv.hostPlatform.parsed.kernel.name}"); nodeArch = { # https://nodejs.org/api/os.html#osarch "x86_64" = "x64"; "aarch64" = "arm64"; } .${stdenv.hostPlatform.parsed.cpu.name} or (throw "unsupported platform ${stdenv.hostPlatform.parsed.cpu.name}"); electron-headers = runCommand "electron-headers" { } '' mkdir -p $out tar -C $out --strip-components=1 -xvf ${electron.headers} Loading @@ -29,7 +46,8 @@ let libsignal-node = callPackage ./libsignal-node.nix { inherit nodejs; }; ringrtc-bin = callPackage ./ringrtc-bin.nix { }; webrtc = callPackage ./webrtc.nix { }; ringrtc = callPackage ./ringrtc.nix { inherit webrtc; }; # Noto Color Emoji PNG files for emoji replacement; see below. noto-fonts-color-emoji-png = noto-fonts-color-emoji.overrideAttrs (prevAttrs: { Loading Loading @@ -145,12 +163,14 @@ stdenv.mkDerivation (finalAttrs: { die "libsignal-client version mismatch" fi if [ "`jq -r '.dependencies."@signalapp/ringrtc"' < package.json`" != "${ringrtc-bin.version}" ] if [ "`jq -r '.dependencies."@signalapp/ringrtc"' < package.json`" != "${ringrtc.version}" ] then die "ringrtc version mismatch" fi cp -r ${ringrtc-bin} node_modules/@signalapp/ringrtc/build mkdir -p node_modules/@signalapp/ringrtc/build install -D ${ringrtc}/lib/libringrtc${stdenv.hostPlatform.extensions.library} \ node_modules/@signalapp/ringrtc/build/${nodeOS}/libringrtc-${nodeArch}.node rm -fr node_modules/@signalapp/libsignal-client/prebuilds cp -r ${libsignal-node}/lib node_modules/@signalapp/libsignal-client/prebuilds Loading Loading @@ -218,7 +238,8 @@ stdenv.mkDerivation (finalAttrs: { passthru = { inherit libsignal-node ringrtc-bin ringrtc webrtc sticker-creator ; tests.application-launch = nixosTests.signal-desktop; Loading pkgs/by-name/si/signal-desktop-source/ringrtc-bin.nixdeleted 100644 → 0 +0 −27 Original line number Diff line number Diff line { stdenv, lib, fetchzip, autoPatchelfHook, libpulseaudio, }: stdenv.mkDerivation (finalAttrs: { pname = "ringrtc-bin"; version = "2.50.3"; src = fetchzip { url = "https://build-artifacts.signal.org/libraries/ringrtc-desktop-build-v${finalAttrs.version}.tar.gz"; hash = "sha256-UJqH/UiT9j36r6fr673CP/Z4lGaSPXIzAkf72YZfExo="; }; installPhase = '' cp -r . $out ''; nativeBuildInputs = [ autoPatchelfHook ]; buildInputs = [ libpulseaudio ]; meta = { homepage = "https://github.com/signalapp/ringrtc"; license = lib.licenses.agpl3Only; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; }; }) pkgs/by-name/si/signal-desktop-source/ringrtc.nix 0 → 100644 +45 −0 Original line number Diff line number Diff line { rustPlatform, lib, fetchFromGitHub, cmake, protobuf, webrtc, }: rustPlatform.buildRustPackage (finalAttrs: { pname = "ringrtc"; version = "2.50.3"; src = fetchFromGitHub { owner = "signalapp"; repo = "ringrtc"; tag = "v${finalAttrs.version}"; hash = "sha256-EuryWZMMTkrDPheVv0wBsH+zL3LylxSSPS+nNnn3cmM="; }; useFetchCargoVendor = true; cargoHash = "sha256-/c+tpTh5X05HLqAHsA/YvWxqy7TSUy49g6OtIQg+rMs="; cargoBuildFlags = [ "-p" "ringrtc" "--features" "electron" ]; doCheck = false; nativeBuildInputs = [ protobuf cmake ]; buildInputs = [ webrtc ]; meta = { homepage = "https://github.com/signalapp/ringrtc"; description = "RingRTC library used by Signal"; license = lib.licenses.agpl3Only; platforms = lib.platforms.unix; }; }) pkgs/by-name/si/signal-desktop-source/update.sh +11 −4 Original line number Diff line number Diff line #!/usr/bin/env nix-shell #!nix-shell -i bash -p bash nix-update common-updater-scripts curl coreutils jq #!nix-shell -i bash -p bash nix-update common-updater-scripts curl coreutils jq gclient2nix set -ex Loading @@ -19,10 +19,12 @@ releaseEpoch=`date -d $releaseDate +%s` packageJson="`curl_github "https://raw.githubusercontent.com/signalapp/Signal-Desktop/refs/tags/$releaseTag/package.json"`" latestVersion="`jq -r '.version' <<< $packageJson`" nodeVersion="`jq -r '.engines.node' <<< $packageJson | head -c2`" electronVersion="`jq -r '.devDependencies.electron' <<< $packageJson | head -c2`" nodeVersion="`jq -r '.engines.node' <<< $packageJson | cut -d. -f1`" electronVersion="`jq -r '.devDependencies.electron' <<< $packageJson | cut -d. -f1`" libsignalClientVersion=`jq -r '.dependencies."@signalapp/libsignal-client"' <<< $packageJson` ringrtcVersion=`jq -r '.dependencies."@signalapp/ringrtc"' <<< $packageJson` ringrtcVersionProperties="`curl_github "https://raw.githubusercontent.com/signalapp/ringrtc/refs/tags/v$ringrtcVersion/config/version.properties"`" webrtcVersion="`grep --only-matching "^webrtc.version=.*$" <<< $ringrtcVersionProperties | sed "s/webrtc.version=//g"`" sed -E -i "s/(nodejs_)../\1$nodeVersion/" $SCRIPT_DIR/package.nix sed -E -i "s/(electron_)../\1$electronVersion/" $SCRIPT_DIR/package.nix Loading @@ -44,4 +46,9 @@ update-source-version signal-desktop-source.libsignal-node \ --ignore-same-version \ --source-key=npmDeps update-source-version signal-desktop-source.ringrtc-bin "$ringrtcVersion" update-source-version signal-desktop-source.ringrtc "$ringrtcVersion" update-source-version signal-desktop-source.ringrtc \ --ignore-same-version \ --source-key=cargoDeps.vendorStaging gclient2nix generate "https://github.com/signalapp/webrtc@$webrtcVersion" > $SCRIPT_DIR/webrtc-sources.json Loading
pkgs/by-name/gc/gclient2nix/gclient2nix.py +1 −1 Original line number Diff line number Diff line Loading @@ -107,7 +107,7 @@ class Repo: ) def flatten_repr(self) -> dict: return {"fetcher": self.fetcher, "attrs": {**({"hash": self.hash} if hasattr(self, "hash") else {}), **self.args}} return {"fetcher": self.fetcher, "args": {**({"hash": self.hash} if hasattr(self, "hash") else {}), **self.args}} def flatten(self, path: str) -> dict: out = {path: self.flatten_repr()} Loading
pkgs/by-name/si/signal-desktop-source/package.nix +25 −4 Original line number Diff line number Diff line Loading @@ -22,6 +22,23 @@ let pnpm = pnpm_10; electron = electron_35; nodeOS = { "linux" = "linux"; "darwin" = "darwin"; } .${stdenv.hostPlatform.parsed.kernel.name} or (throw "unsupported platform ${stdenv.hostPlatform.parsed.kernel.name}"); nodeArch = { # https://nodejs.org/api/os.html#osarch "x86_64" = "x64"; "aarch64" = "arm64"; } .${stdenv.hostPlatform.parsed.cpu.name} or (throw "unsupported platform ${stdenv.hostPlatform.parsed.cpu.name}"); electron-headers = runCommand "electron-headers" { } '' mkdir -p $out tar -C $out --strip-components=1 -xvf ${electron.headers} Loading @@ -29,7 +46,8 @@ let libsignal-node = callPackage ./libsignal-node.nix { inherit nodejs; }; ringrtc-bin = callPackage ./ringrtc-bin.nix { }; webrtc = callPackage ./webrtc.nix { }; ringrtc = callPackage ./ringrtc.nix { inherit webrtc; }; # Noto Color Emoji PNG files for emoji replacement; see below. noto-fonts-color-emoji-png = noto-fonts-color-emoji.overrideAttrs (prevAttrs: { Loading Loading @@ -145,12 +163,14 @@ stdenv.mkDerivation (finalAttrs: { die "libsignal-client version mismatch" fi if [ "`jq -r '.dependencies."@signalapp/ringrtc"' < package.json`" != "${ringrtc-bin.version}" ] if [ "`jq -r '.dependencies."@signalapp/ringrtc"' < package.json`" != "${ringrtc.version}" ] then die "ringrtc version mismatch" fi cp -r ${ringrtc-bin} node_modules/@signalapp/ringrtc/build mkdir -p node_modules/@signalapp/ringrtc/build install -D ${ringrtc}/lib/libringrtc${stdenv.hostPlatform.extensions.library} \ node_modules/@signalapp/ringrtc/build/${nodeOS}/libringrtc-${nodeArch}.node rm -fr node_modules/@signalapp/libsignal-client/prebuilds cp -r ${libsignal-node}/lib node_modules/@signalapp/libsignal-client/prebuilds Loading Loading @@ -218,7 +238,8 @@ stdenv.mkDerivation (finalAttrs: { passthru = { inherit libsignal-node ringrtc-bin ringrtc webrtc sticker-creator ; tests.application-launch = nixosTests.signal-desktop; Loading
pkgs/by-name/si/signal-desktop-source/ringrtc-bin.nixdeleted 100644 → 0 +0 −27 Original line number Diff line number Diff line { stdenv, lib, fetchzip, autoPatchelfHook, libpulseaudio, }: stdenv.mkDerivation (finalAttrs: { pname = "ringrtc-bin"; version = "2.50.3"; src = fetchzip { url = "https://build-artifacts.signal.org/libraries/ringrtc-desktop-build-v${finalAttrs.version}.tar.gz"; hash = "sha256-UJqH/UiT9j36r6fr673CP/Z4lGaSPXIzAkf72YZfExo="; }; installPhase = '' cp -r . $out ''; nativeBuildInputs = [ autoPatchelfHook ]; buildInputs = [ libpulseaudio ]; meta = { homepage = "https://github.com/signalapp/ringrtc"; license = lib.licenses.agpl3Only; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; }; })
pkgs/by-name/si/signal-desktop-source/ringrtc.nix 0 → 100644 +45 −0 Original line number Diff line number Diff line { rustPlatform, lib, fetchFromGitHub, cmake, protobuf, webrtc, }: rustPlatform.buildRustPackage (finalAttrs: { pname = "ringrtc"; version = "2.50.3"; src = fetchFromGitHub { owner = "signalapp"; repo = "ringrtc"; tag = "v${finalAttrs.version}"; hash = "sha256-EuryWZMMTkrDPheVv0wBsH+zL3LylxSSPS+nNnn3cmM="; }; useFetchCargoVendor = true; cargoHash = "sha256-/c+tpTh5X05HLqAHsA/YvWxqy7TSUy49g6OtIQg+rMs="; cargoBuildFlags = [ "-p" "ringrtc" "--features" "electron" ]; doCheck = false; nativeBuildInputs = [ protobuf cmake ]; buildInputs = [ webrtc ]; meta = { homepage = "https://github.com/signalapp/ringrtc"; description = "RingRTC library used by Signal"; license = lib.licenses.agpl3Only; platforms = lib.platforms.unix; }; })
pkgs/by-name/si/signal-desktop-source/update.sh +11 −4 Original line number Diff line number Diff line #!/usr/bin/env nix-shell #!nix-shell -i bash -p bash nix-update common-updater-scripts curl coreutils jq #!nix-shell -i bash -p bash nix-update common-updater-scripts curl coreutils jq gclient2nix set -ex Loading @@ -19,10 +19,12 @@ releaseEpoch=`date -d $releaseDate +%s` packageJson="`curl_github "https://raw.githubusercontent.com/signalapp/Signal-Desktop/refs/tags/$releaseTag/package.json"`" latestVersion="`jq -r '.version' <<< $packageJson`" nodeVersion="`jq -r '.engines.node' <<< $packageJson | head -c2`" electronVersion="`jq -r '.devDependencies.electron' <<< $packageJson | head -c2`" nodeVersion="`jq -r '.engines.node' <<< $packageJson | cut -d. -f1`" electronVersion="`jq -r '.devDependencies.electron' <<< $packageJson | cut -d. -f1`" libsignalClientVersion=`jq -r '.dependencies."@signalapp/libsignal-client"' <<< $packageJson` ringrtcVersion=`jq -r '.dependencies."@signalapp/ringrtc"' <<< $packageJson` ringrtcVersionProperties="`curl_github "https://raw.githubusercontent.com/signalapp/ringrtc/refs/tags/v$ringrtcVersion/config/version.properties"`" webrtcVersion="`grep --only-matching "^webrtc.version=.*$" <<< $ringrtcVersionProperties | sed "s/webrtc.version=//g"`" sed -E -i "s/(nodejs_)../\1$nodeVersion/" $SCRIPT_DIR/package.nix sed -E -i "s/(electron_)../\1$electronVersion/" $SCRIPT_DIR/package.nix Loading @@ -44,4 +46,9 @@ update-source-version signal-desktop-source.libsignal-node \ --ignore-same-version \ --source-key=npmDeps update-source-version signal-desktop-source.ringrtc-bin "$ringrtcVersion" update-source-version signal-desktop-source.ringrtc "$ringrtcVersion" update-source-version signal-desktop-source.ringrtc \ --ignore-same-version \ --source-key=cargoDeps.vendorStaging gclient2nix generate "https://github.com/signalapp/webrtc@$webrtcVersion" > $SCRIPT_DIR/webrtc-sources.json