nixpkgs/pkgs/by-name/ri/ricochet-refresh/package.nix
Adam Joseph ea6f3c43ed ricochet-refresh: init at 3.0.18
Co-authored-by: Anderson Torres <torres.anderson.85@protonmail.com>
2024-01-24 11:14:06 +01:00

80 lines
2.1 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, qt5
, openssl
, protobuf3_20 # https://github.com/blueprint-freespeech/ricochet-refresh/issues/178
, pkg-config
, cmake
}:
let
protobuf = protobuf3_20;
in
stdenv.mkDerivation (finalAttrs: {
pname = "ricochet-refresh";
version = "3.0.18";
src = fetchFromGitHub {
owner = "blueprint-freespeech";
repo = "ricochet-refresh";
rev = "v${finalAttrs.version}-release";
hash = "sha256-QN2cxcYWGoszPdrWv+4FoTGNjQViK/OwxbBC6uoDhfA=";
fetchSubmodules = true;
};
sourceRoot = "${finalAttrs.src.name}/src";
strictDeps = true;
buildInputs = (with qt5; [
qtbase
qttools
qtmultimedia
qtquickcontrols2
qtwayland
]) ++ [
openssl
protobuf
];
nativeBuildInputs = [
pkg-config
cmake
qt5.wrapQtAppsHook
];
enableParallelBuilding = true;
# https://github.com/blueprint-freespeech/ricochet-refresh/blob/main/BUILDING.md
cmakeFlags = [
(lib.cmakeFeature "CMAKE_BUILD_TYPE" "MinSizeRel")
(lib.cmakeBool "RICOCHET_REFRESH_INSTALL_DESKTOP" true)
(lib.cmakeBool "USE_SUBMODULE_FMT" true)
];
meta = {
description = "Secure chat without DNS or WebPKI";
longDescription = ''
Ricochet Refresh is a peer-to-peer messenger app that uses Tor
to connect clients.
When you start Ricochet Refresh it creates a Tor hidden
service on your computer. The address of this hidden service
is your anonymous identity on the Tor network and how others
will be able to communicate with you. When you start a chat
with one of your contacts a Tor circuit is created between
your machine and the your contact's machine.
The original Ricochet uses onion "v2" hashed-RSA addresses,
which are no longer supported by the Tor network. Ricochet
Refresh upgrades the original Ricochet protocol to use the
current onion "v3" ed25519 addresses.
'';
homepage = "https://www.ricochetrefresh.net/";
downloadPage = "https://github.com/blueprint-freespeech/ricochet-refresh/releases";
license = lib.licenses.bsd3;
platforms = lib.platforms.unix;
};
})