nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 98 lines 2.4 kB view raw
1{ 2 stdenv, 3 lib, 4 fetchurl, 5 gnome, 6 cmake, 7 gettext, 8 intltool, 9 pkg-config, 10 evolution-data-server, 11 evolution, 12 gtk3, 13 libsoup_3, 14 libical, 15 json-glib, 16 libmspack, 17 webkitgtk_4_1, 18 replaceVars, 19 _experimental-update-script-combinators, 20 glib, 21 makeHardcodeGsettingsPatch, 22}: 23 24stdenv.mkDerivation rec { 25 pname = "evolution-ews"; 26 version = "3.58.2"; 27 28 src = fetchurl { 29 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 30 hash = "sha256-+m/A39F+9hpjCtM8ZFuDWMQmZ2YSbxcWs8ef79KQyPs="; 31 }; 32 33 patches = [ 34 # evolution-ews contains .so files loaded by evolution-data-server referring 35 # schemas from evolution. evolution-data-server is not wrapped with 36 # evolution's schemas because it would be a circular dependency with 37 # evolution. 38 (replaceVars ./hardcode-gsettings.patch { 39 evo = glib.makeSchemaPath evolution evolution.name; 40 }) 41 ]; 42 43 nativeBuildInputs = [ 44 cmake 45 gettext 46 intltool 47 pkg-config 48 ]; 49 50 buildInputs = [ 51 evolution-data-server 52 evolution 53 gtk3 54 libsoup_3 55 libical 56 json-glib 57 libmspack 58 # For evolution-shell-3.0 59 webkitgtk_4_1 60 ]; 61 62 cmakeFlags = [ 63 # don't try to install into ${evolution} 64 "-DFORCE_INSTALL_PREFIX=ON" 65 ]; 66 67 passthru = { 68 hardcodeGsettingsPatch = makeHardcodeGsettingsPatch { 69 inherit src; 70 schemaIdToVariableMapping = { 71 "org.gnome.evolution.mail" = "evo"; 72 "org.gnome.evolution.calendar" = "evo"; 73 }; 74 schemaExistsFunction = "e_ews_common_utils_gsettings_schema_exists"; 75 }; 76 77 updateScript = 78 let 79 updateSource = gnome.updateScript { 80 packageName = "evolution-ews"; 81 versionPolicy = "odd-unstable"; 82 }; 83 updatePatch = _experimental-update-script-combinators.copyAttrOutputToFile "evolution-ews.hardcodeGsettingsPatch" ./hardcode-gsettings.patch; 84 in 85 _experimental-update-script-combinators.sequence [ 86 updateSource 87 updatePatch 88 ]; 89 }; 90 91 meta = { 92 description = "Evolution connector for Microsoft Exchange Server protocols"; 93 homepage = "https://gitlab.gnome.org/GNOME/evolution-ews"; 94 license = lib.licenses.lgpl21Plus; # https://gitlab.gnome.org/GNOME/evolution-ews/issues/111 95 maintainers = [ lib.maintainers.dasj19 ]; 96 platforms = lib.platforms.linux; 97 }; 98}