nixpkgs/pkgs/applications/version-management/sparkleshare/default.nix

92 lines
1.7 KiB
Nix
Raw Normal View History

2020-08-31 23:51:24 +01:00
{
appindicator-sharp,
bash,
2020-08-31 23:51:24 +01:00
coreutils,
fetchFromGitHub,
git,
git-lfs,
2020-08-31 23:51:24 +01:00
glib,
gtk-sharp-3_0,
lib,
makeWrapper,
meson,
mono,
ninja,
notify-sharp,
openssh,
openssl,
pkg-config,
stdenv,
symlinkJoin,
webkit2-sharp,
2021-02-01 08:05:09 +00:00
xdg-utils,
2020-08-31 23:51:24 +01:00
}:
stdenv.mkDerivation rec {
pname = "sparkleshare";
2020-12-01 09:22:54 +00:00
version = "3.38";
2020-08-31 23:51:24 +01:00
src = fetchFromGitHub {
owner = "hbons";
repo = "SparkleShare";
rev = version;
2020-12-01 09:22:54 +00:00
sha256 = "1a9csflmj96iyr1l0mdm3ziv1bljfcjnzm9xb2y4qqk7ha2p6fbq";
2020-08-31 23:51:24 +01:00
};
nativeBuildInputs = [
makeWrapper
meson
mono
ninja
pkg-config
];
buildInputs = [
appindicator-sharp
gtk-sharp-3_0
notify-sharp
webkit2-sharp
];
patchPhase = ''
# Nix will manage the icon cache.
echo '#!/bin/sh' >scripts/post-install.sh
'';
postInstall = ''
wrapProgram $out/bin/sparkleshare \
--set PATH ${symlinkJoin {
name = "mono-path";
paths = [
bash
2020-08-31 23:51:24 +01:00
coreutils
git
git-lfs
2020-08-31 23:51:24 +01:00
glib
mono
openssh
openssl
2021-02-01 08:05:09 +00:00
xdg-utils
2020-08-31 23:51:24 +01:00
];
}}/bin \
--set MONO_GAC_PREFIX ${lib.concatStringsSep ":" [
appindicator-sharp
gtk-sharp-3_0
webkit2-sharp
]} \
--set LD_LIBRARY_PATH ${lib.makeLibraryPath [
appindicator-sharp
gtk-sharp-3_0.gtk3
webkit2-sharp
webkit2-sharp.webkitgtk
]}
'';
meta = {
description = "Share and collaborate by syncing with any Git repository instantly. Linux, macOS, and Windows";
2020-08-31 23:51:24 +01:00
homepage = "https://sparkleshare.org";
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ kevincox ];
};
}