lol

Adding Radicale package and service

+81 -1
+1
nixos/modules/module-list.nix
··· 213 213 ./services/networking/prayer.nix 214 214 ./services/networking/privoxy.nix 215 215 ./services/networking/quassel.nix 216 + ./services/networking/radicale.nix 216 217 ./services/networking/radvd.nix 217 218 ./services/networking/rdnssd.nix 218 219 ./services/networking/rpcbind.nix
+48
nixos/modules/services/networking/radicale.nix
··· 1 + {config, lib, pkgs, ...}: 2 + 3 + with lib; 4 + 5 + let 6 + 7 + cfg = config.services.radicale; 8 + 9 + confFile = pkgs.writeText "radicale.conf" cfg.config; 10 + 11 + in 12 + 13 + { 14 + 15 + options = { 16 + 17 + services.radicale.enable = mkOption { 18 + type = types.bool; 19 + default = false; 20 + description = '' 21 + Enable Radicale CalDAV and CardDAV server 22 + ''; 23 + }; 24 + 25 + services.radicale.config = mkOption { 26 + type = types.string; 27 + default = ""; 28 + description = '' 29 + Radicale configuration, this will set the service 30 + configuration file 31 + ''; 32 + }; 33 + }; 34 + 35 + config = mkIf cfg.enable { 36 + 37 + environment.systemPackages = [ pkgs.pythonPackages.radicale ]; 38 + 39 + jobs.radicale = { 40 + description = "A Simple Calendar and Contact Server"; 41 + startOn = "started network-interfaces"; 42 + exec = "${pkgs.pythonPackages.radicale}/bin/radicale -C ${confFile} -d"; 43 + daemonType = "fork"; 44 + }; 45 + 46 + }; 47 + 48 + }
+1 -1
pkgs/top-level/all-packages.nix
··· 1155 1155 gnuvd = callPackage ../tools/misc/gnuvd { }; 1156 1156 1157 1157 goaccess = callPackage ../tools/misc/goaccess { }; 1158 - 1158 + 1159 1159 googleAuthenticator = callPackage ../os-specific/linux/google-authenticator { }; 1160 1160 1161 1161 gource = callPackage ../applications/version-management/gource {};
+31
pkgs/top-level/python-packages.nix
··· 2233 2233 }; 2234 2234 }; 2235 2235 2236 + radicale = buildPythonPackage rec { 2237 + name = "radicale-${version}"; 2238 + namePrefix = ""; 2239 + version = "0.9b1"; 2240 + 2241 + src = fetchurl { 2242 + url = "http://pypi.python.org/packages/source/R/Radicale/Radicale-${version}.tar.gz"; 2243 + sha256 = "3a8451909de849f173f577ddec0a085f19040dbb6aa13d5256208a0f8e11d88d"; 2244 + }; 2245 + 2246 + propagatedBuildInputs = with pythonPackages; [ 2247 + flup 2248 + ldap 2249 + sqlalchemy 2250 + ]; 2251 + 2252 + doCheck = false; 2253 + 2254 + meta = { 2255 + homepage = "http://www.radicale.org/"; 2256 + longDescription = '' 2257 + The Radicale Project is a complete CalDAV (calendar) and CardDAV 2258 + (contact) server solution. Calendars and address books are available for 2259 + both local and remote access, possibly limited through authentication 2260 + policies. They can be viewed and edited by calendar and contact clients 2261 + on mobile phones or computers. 2262 + ''; 2263 + license = stdenv.lib.licenses.gpl3Plus; 2264 + maintainers = [ stdenv.lib.maintainers.edwtjo ]; 2265 + }; 2266 + }; 2236 2267 2237 2268 raven = buildPythonPackage rec { 2238 2269 name = "raven-3.4.1";