about summary refs log tree commit diff
path: root/pkgs/servers/web-apps/sogo
diff options
context:
space:
mode:
authorajs124 <git@ajs124.de>2022-07-18 15:28:05 +0200
committerajs124 <git@ajs124.de>2022-07-18 15:28:55 +0200
commit7bd91bca24b0f6e758ce21ba4c3ad965ddbeeef8 (patch)
treeb42f65b69ebbe3d212027fd5eb35fb7ed40820b6 /pkgs/servers/web-apps/sogo
parent18a5275c3d6781044caaab73200aa30bd3cdcf55 (diff)
sogo: add optional (off by default) EAS/ActiveSync support
Diffstat (limited to 'pkgs/servers/web-apps/sogo')
-rw-r--r--pkgs/servers/web-apps/sogo/default.nix11
-rw-r--r--pkgs/servers/web-apps/sogo/enable-activesync.patch21
2 files changed, 30 insertions, 2 deletions
diff --git a/pkgs/servers/web-apps/sogo/default.nix b/pkgs/servers/web-apps/sogo/default.nix
index 502ba734f39d8..94672ffe6f107 100644
--- a/pkgs/servers/web-apps/sogo/default.nix
+++ b/pkgs/servers/web-apps/sogo/default.nix
@@ -1,6 +1,8 @@
 { gnustep, lib, fetchFromGitHub, fetchpatch, makeWrapper, python3, lndir
 , openssl, openldap, sope, libmemcached, curl, libsodium, libytnef, libzip, pkg-config, nixosTests
-, oath-toolkit }:
+, oath-toolkit
+, enableActiveSync ? false
+, libwbxml }:
 gnustep.stdenv.mkDerivation rec {
   pname = "SOGo";
   version = "5.7.0";
@@ -13,7 +15,10 @@ gnustep.stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ gnustep.make makeWrapper python3 ];
-  buildInputs = [ gnustep.base sope openssl libmemcached curl libsodium libytnef libzip pkg-config openldap oath-toolkit ];
+  buildInputs = [ gnustep.base sope openssl libmemcached curl libsodium libytnef libzip pkg-config openldap oath-toolkit ]
+    ++ lib.optional enableActiveSync libwbxml;
+
+  patches = lib.optional enableActiveSync ./enable-activesync.patch;
 
   postPatch = ''
     # Exclude NIX_ variables
@@ -60,6 +65,8 @@ gnustep.stdenv.mkDerivation rec {
     for bin in $out/bin/*; do
       wrapProgram $bin --prefix LD_LIBRARY_PATH : $out/lib/sogo --prefix GNUSTEP_CONFIG_FILE : $out/share/GNUstep/GNUstep.conf
     done
+
+    rmdir $out/nix
   '';
 
   passthru.tests.sogo = nixosTests.sogo;
diff --git a/pkgs/servers/web-apps/sogo/enable-activesync.patch b/pkgs/servers/web-apps/sogo/enable-activesync.patch
new file mode 100644
index 0000000000000..2c2aba26a2114
--- /dev/null
+++ b/pkgs/servers/web-apps/sogo/enable-activesync.patch
@@ -0,0 +1,21 @@
+--- a/ActiveSync/NSData+ActiveSync.m
++++ b/ActiveSync/NSData+ActiveSync.m
+@@ -36,7 +36,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #import <NGExtensions/NGBase64Coding.h>
+ #import <NGExtensions/NSObject+Logs.h>
+ 
+-#include <wbxml/wbxml.h>
++#include <libwbxml-1.0/wbxml/wbxml.h>
+ 
+ #define WBXMLDEBUG 0
+ 
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -11,6 +11,7 @@ SUBPROJECTS = \
+ 	UI		\
+ 	Tools		\
+ 	Tests/Unit	\
++	ActiveSync	\
+ 
+ 
+ include $(GNUSTEP_MAKEFILES)/aggregate.make