47 lines
1.2 KiB
Nix
47 lines
1.2 KiB
Nix
{ lib
|
|
, rustPlatform
|
|
, fetchFromGitHub
|
|
}:
|
|
|
|
rustPlatform.buildRustPackage {
|
|
pname = "sonic-server";
|
|
version = "1.4.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "valeriansaliou";
|
|
repo = "sonic";
|
|
rev = "f5302f5c424256648ba0be32b3c5909d846821fe";
|
|
sha256 = "sha256-WebEluXijgJckZQOka2BDPYn7PqzPTsIcV2T380fxW8=";
|
|
};
|
|
|
|
cargoSha256 = "sha256-ObhKGjaIma6fUVUT3xadpy/GPYlnm0nKmRVxFmoePyQ=";
|
|
|
|
doCheck = false;
|
|
|
|
nativeBuildInputs = [
|
|
rustPlatform.bindgenHook
|
|
];
|
|
|
|
postPatch = ''
|
|
substituteInPlace src/main.rs --replace "./config.cfg" "$out/etc/sonic/config.cfg"
|
|
'';
|
|
|
|
postInstall = ''
|
|
mkdir -p $out/etc/
|
|
mkdir -p $out/usr/lib/systemd/system/
|
|
|
|
install -Dm444 -t $out/etc/sonic config.cfg
|
|
substitute \
|
|
./examples/config/systemd.service $out/usr/lib/systemd/system/sonic-server.service \
|
|
--replace /bin/sonic $out/bin/sonic \
|
|
--replace /etc/sonic.cfg $out/etc/sonic/config.cfg
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Fast, lightweight and schema-less search backend";
|
|
homepage = "https://github.com/valeriansaliou/sonic";
|
|
license = licenses.mpl20;
|
|
platforms = platforms.unix;
|
|
maintainers = with maintainers; [ pleshevskiy ];
|
|
};
|
|
}
|