52 lines
2.2 KiB
Nix
52 lines
2.2 KiB
Nix
{ pkgs, stdenv, fetchFromGitHub }:
|
|
|
|
with pkgs;
|
|
|
|
let
|
|
version = "0.7.1";
|
|
rev = "9d54904e4896ab6c3c3a52f97381e5948b455970"; # This revision will get used in modules/react-native-desktop-notification/desktop/CMakeLists.txt#L71
|
|
sha256 = "0ix1qgx877nw9mlbbqsgkis4phkkf4ax2ambziy2w48hg6ai0x4d";
|
|
package = stdenv.mkDerivation {
|
|
name = "snorenotify-patched-source";
|
|
version = "${version}-${lib.strings.substring 0 7 rev}";
|
|
|
|
src = fetchFromGitHub {
|
|
inherit rev sha256;
|
|
owner = "status-im";
|
|
repo = "snorenotify";
|
|
name = "snorenotify-source-${version}";
|
|
};
|
|
|
|
phases = [ "unpackPhase" ];
|
|
unpackPhase = ''
|
|
mkdir -p $out/src
|
|
cp -r $src/* $out/src/
|
|
substituteInPlace $out/src/CMakeLists.txt \
|
|
--replace "cmake_minimum_required( VERSION 2.8.12 )" "" \
|
|
--replace "project( SnoreNotify )" "cmake_minimum_required( VERSION 3.12.1 )
|
|
project( SnoreNotify VERSION ${version} )" \
|
|
--replace "set(SNORE_VERSION_MAJOR 0)" "set(SNORE_VERSION_MAJOR ${lib.versions.major version} )" \
|
|
--replace "set(SNORE_VERSION_MINOR 7)" "set(SNORE_VERSION_MINOR ${lib.versions.minor version} )" \
|
|
--replace "set(SNORE_VERSION_PATCH 1)" "set(SNORE_VERSION_PATCH ${lib.versions.patch version} )"
|
|
substituteInPlace $out/src/src/libsnore/CMakeLists.txt \
|
|
--replace "{SNORE_VERSION_MAJOR}" "SNORE_VERSION_MAJOR" \
|
|
--replace "{SNORE_VERSION_MINOR}" "SNORE_VERSION_MINOR" \
|
|
--replace "{SNORE_VERSION_PATCH}" "SNORE_VERSION_PATCH" \
|
|
--replace "ecm_setup_version(\"\$SNORE_VERSION_MAJOR.\$SNORE_VERSION_MINOR.\$SNORE_VERSION_PATCH\"" "ecm_setup_version(SnoreNotify"
|
|
'';
|
|
|
|
meta = {
|
|
description = "Patched sources for Snorenotify, a multi platform Qt notification framework. Using a plugin system it is possible to create notifications with many different notification systems on Windows, Mac OS and Unix and mobile Devices";
|
|
homepage = https://github.com/status-im/snorenotify;
|
|
license = stdenv.lib.licenses.lgpl3;
|
|
maintainers = [ stdenv.lib.maintainers.pombeirp ];
|
|
platforms = with stdenv.lib.platforms; darwin ++ linux;
|
|
};
|
|
};
|
|
|
|
in package // {
|
|
shellHook = ''
|
|
export SNORENOTIFY_SOURCES="${package}/src"
|
|
'';
|
|
}
|