From f0bafef6a129ed8ab0d2566ae18b10ee9c4bc161 Mon Sep 17 00:00:00 2001 From: Thomas Pham Date: Fri, 19 Jan 2018 13:44:14 +0100 Subject: add Serviio Media server package and service --- pkgs/servers/serviio/default.nix | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 pkgs/servers/serviio/default.nix (limited to 'pkgs/servers') diff --git a/pkgs/servers/serviio/default.nix b/pkgs/servers/serviio/default.nix new file mode 100644 index 000000000000..0c956a6c7573 --- /dev/null +++ b/pkgs/servers/serviio/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "serviio-${version}"; + version = "1.9"; + + src = fetchurl { + url = "http://download.serviio.org/releases/${name}-linux.tar.gz"; + sha256 = "0vi9dwpdrk087gpi0xib0hwpvdmaf9g99nfdfx2r3wmmdzw7wysl"; + }; + + phases = ["unpackPhase" "installPhase"]; + + installPhase = '' + mkdir -p $out + cp -R config legal lib library plugins LICENCE.txt NOTICE.txt README.txt RELEASE_NOTES.txt $out + ''; + + meta = with stdenv.lib; { + homepage = http://serviio.org; + description = "UPnP Media Streaming Server"; + longDescription = '' + Serviio is a free media server. It allows you to stream your media files (music, video or images) + to any DLNA-certified renderer device (e.g. a TV set, Bluray player, games console) on your home network. + ''; + license = licenses.free; + maintainers = [ maintainers.thpham ]; + platforms = platforms.linux; + }; +} \ No newline at end of file -- cgit 1.4.1 From 53682b90943e2b5387fcc92c1b7545ea52dbd527 Mon Sep 17 00:00:00 2001 From: Thomas Pham Date: Fri, 19 Jan 2018 19:11:03 +0100 Subject: Update license to unfree --- pkgs/servers/serviio/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkgs/servers') diff --git a/pkgs/servers/serviio/default.nix b/pkgs/servers/serviio/default.nix index 0c956a6c7573..876cc01592e9 100644 --- a/pkgs/servers/serviio/default.nix +++ b/pkgs/servers/serviio/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { Serviio is a free media server. It allows you to stream your media files (music, video or images) to any DLNA-certified renderer device (e.g. a TV set, Bluray player, games console) on your home network. ''; - license = licenses.free; + license = licenses.unfree; maintainers = [ maintainers.thpham ]; platforms = platforms.linux; }; -- cgit 1.4.1 From 226965da67c25bbad0c6c0cc6d21b64a647beed8 Mon Sep 17 00:00:00 2001 From: Florian Jacob Date: Fri, 22 Dec 2017 01:17:48 +0100 Subject: prosody: 0.9.12 -> 0.10.0 updating config options, removing luazlib as mod_compression was removed for security reasons. --- nixos/doc/manual/release-notes/rl-1803.xml | 27 ++++ nixos/modules/services/networking/prosody.nix | 202 +++++++++++++++++++++++--- pkgs/servers/xmpp/prosody/default.nix | 9 +- pkgs/top-level/all-packages.nix | 5 +- 4 files changed, 216 insertions(+), 27 deletions(-) (limited to 'pkgs/servers') diff --git a/nixos/doc/manual/release-notes/rl-1803.xml b/nixos/doc/manual/release-notes/rl-1803.xml index b755245a69fb..20f23261b608 100644 --- a/nixos/doc/manual/release-notes/rl-1803.xml +++ b/nixos/doc/manual/release-notes/rl-1803.xml @@ -322,6 +322,33 @@ following incompatible changes: external module. + + + The Prosody XMPP server has received a major update. The following modules were renamed: + + + + is now + + + + + is now + + + + + + + Many new modules are now core modules, most notably + and . + + + + The better-performing libevent backend is now enabled by default. + + + diff --git a/nixos/modules/services/networking/prosody.nix b/nixos/modules/services/networking/prosody.nix index 9d7e6d6018af..a7b43fb78a95 100644 --- a/nixos/modules/services/networking/prosody.nix +++ b/nixos/modules/services/networking/prosody.nix @@ -15,6 +15,7 @@ let description = "Path to the key file."; }; + # TODO: rename to certificate to match the prosody config cert = mkOption { type = types.path; description = "Path to the certificate file."; @@ -30,7 +31,7 @@ let }; moduleOpts = { - + # Generally required roster = mkOption { type = types.bool; default = true; @@ -61,12 +62,38 @@ let description = "Service discovery"; }; - legacyauth = mkOption { + # Not essential, but recommended + carbons = mkOption { type = types.bool; default = true; - description = "Legacy authentication. Only used by some old clients and bots"; + description = "Keep multiple clients in sync"; + }; + + pep = mkOption { + type = types.bool; + default = true; + description = "Enables users to publish their mood, activity, playing music and more"; }; + private = mkOption { + type = types.bool; + default = true; + description = "Private XML storage (for room bookmarks, etc.)"; + }; + + blocklist = mkOption { + type = types.bool; + default = true; + description = "Allow users to block communications with other users"; + }; + + vcard = mkOption { + type = types.bool; + default = true; + description = "Allow users to set vCards"; + }; + + # Nice to have version = mkOption { type = types.bool; default = true; @@ -91,36 +118,112 @@ let description = "Replies to XMPP pings with pongs"; }; - console = mkOption { + register = mkOption { + type = types.bool; + default = true; + description = "Allow users to register on this server using a client and change passwords"; + }; + + mam = mkOption { + type = types.bool; + default = false; + description = "Store messages in an archive and allow users to access it"; + }; + + # Admin interfaces + admin_adhoc = mkOption { + type = types.bool; + default = true; + description = "Allows administration via an XMPP client that supports ad-hoc commands"; + }; + + admin_telnet = mkOption { type = types.bool; default = false; - description = "telnet to port 5582"; + description = "Opens telnet console interface on localhost port 5582"; }; + # HTTP modules bosh = mkOption { type = types.bool; default = false; description = "Enable BOSH clients, aka 'Jabber over HTTP'"; }; - httpserver = mkOption { + websocket = mkOption { + type = types.bool; + default = false; + description = "Enable WebSocket support"; + }; + + http_files = mkOption { type = types.bool; default = false; description = "Serve static files from a directory over HTTP"; }; - websocket = mkOption { + # Other specific functionality + limits = mkOption { type = types.bool; default = false; - description = "Enable WebSocket support"; + description = "Enable bandwidth limiting for XMPP connections"; + }; + + groups = mkOption { + type = types.bool; + default = false; + description = "Shared roster support"; + }; + + server_contact_info = mkOption { + type = types.bool; + default = false; + description = "Publish contact information for this service"; + }; + + announce = mkOption { + type = types.bool; + default = false; + description = "Send announcement to all online users"; + }; + + welcome = mkOption { + type = types.bool; + default = false; + description = "Welcome users who register accounts"; + }; + + watchregistrations = mkOption { + type = types.bool; + default = false; + description = "Alert admins of registrations"; + }; + + motd = mkOption { + type = types.bool; + default = false; + description = "Send a message to users when they log in"; + }; + + legacyauth = mkOption { + type = types.bool; + default = false; + description = "Legacy authentication. Only used by some old clients and bots"; + }; + + proxy65 = mkOption { + type = types.bool; + default = false; + description = "Enables a file transfer proxy service which clients behind NAT can use"; }; }; toLua = x: if builtins.isString x then ''"${x}"'' - else if builtins.isBool x then toString x + else if builtins.isBool x then (if x == true then "true" else "false") else if builtins.isInt x then toString x + else if builtins.isList x then ''{ ${lib.concatStringsSep ", " (map (n: toLua n) x) } }'' else throw "Invalid Lua value"; createSSLOptsStr = o: '' @@ -198,6 +301,59 @@ in description = "Allow account creation"; }; + c2sRequireEncryption = mkOption { + type = types.bool; + default = true; + description = '' + Force clients to use encrypted connections? This option will + prevent clients from authenticating unless they are using encryption. + ''; + }; + + s2sRequireEncryption = mkOption { + type = types.bool; + default = true; + description = '' + Force servers to use encrypted connections? This option will + prevent servers from authenticating unless they are using encryption. + Note that this is different from authentication. + ''; + }; + + s2sSecureAuth = mkOption { + type = types.bool; + default = false; + description = '' + Force certificate authentication for server-to-server connections? + This provides ideal security, but requires servers you communicate + with to support encryption AND present valid, trusted certificates. + For more information see https://prosody.im/doc/s2s#security + ''; + }; + + s2sInsecureDomains = mkOption { + type = types.listOf types.str; + default = []; + example = [ "insecure.example.com" ]; + description = '' + Some servers have invalid or self-signed certificates. You can list + remote domains here that will not be required to authenticate using + certificates. They will be authenticated using DNS instead, even + when s2s_secure_auth is enabled. + ''; + }; + + s2sSecureDomains = mkOption { + type = types.listOf types.str; + default = []; + example = [ "jabber.org" ]; + description = '' + Even if you leave s2s_secure_auth disabled, you can still require valid + certificates for some domains by specifying a list here. + ''; + }; + + modules = moduleOpts; extraModules = mkOption { @@ -266,26 +422,34 @@ in data_path = "/var/lib/prosody" - allow_registration = ${boolToString cfg.allowRegistration}; - - ${ optionalString cfg.modules.console "console_enabled = true;" } - ${ optionalString (cfg.ssl != null) (createSSLOptsStr cfg.ssl) } - admins = { ${lib.concatStringsSep ", " (map (n: "\"${n}\"") cfg.admins) } }; + admins = ${toLua cfg.admins} + + -- we already build with libevent, so we can just enable it for a more performant server + use_libevent = true modules_enabled = { ${ lib.concatStringsSep "\n\ \ " (lib.mapAttrsToList - (name: val: optionalString val ''"${name}";'') + (name: val: optionalString val "${toLua name};") cfg.modules) } - ${ optionalString cfg.allowRegistration "\"register\"\;" } + ${ lib.concatStringsSep "\n" (map (x: "${toLua x};") cfg.extraModules)} + }; - ${ lib.concatStringsSep "\n" (map (x: "\"${x}\";") cfg.extraModules)} + allow_registration = ${toLua cfg.allowRegistration} + + c2s_require_encryption = ${toLua cfg.c2sRequireEncryption} + + s2s_require_encryption = ${toLua cfg.s2sRequireEncryption} + + s2s_secure_auth = ${toLua cfg.s2sSecureAuth} + + s2s_insecure_domains = ${toLua cfg.s2sInsecureDomains} + + s2s_secure_domains = ${toLua cfg.s2sSecureDomains} - "posix"; - }; ${ cfg.extraConfig } diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix index b0e3492c0da1..eb3e858ac4dc 100644 --- a/pkgs/servers/xmpp/prosody/default.nix +++ b/pkgs/servers/xmpp/prosody/default.nix @@ -1,14 +1,12 @@ { stdenv, fetchurl, libidn, openssl, makeWrapper, fetchhg , lua5, luasocket, luasec, luaexpat, luafilesystem, luabitop , withLibevent ? true, luaevent ? null -, withZlib ? true, luazlib ? null , withDBI ? true, luadbi ? null # use withExtraLibs to add additional dependencies of community modules , withExtraLibs ? [ ] , withCommunityModules ? [ ] }: assert withLibevent -> luaevent != null; -assert withZlib -> luazlib != null; assert withDBI -> luadbi != null; with stdenv.lib; @@ -16,7 +14,6 @@ with stdenv.lib; let libs = [ luasocket luasec luaexpat luafilesystem luabitop ] ++ optional withLibevent luaevent - ++ optional withZlib luazlib ++ optional withDBI luadbi ++ withExtraLibs; getPath = lib : type : "${lib}/lib/lua/${lua5.luaversion}/?.${type};${lib}/share/lua/${lua5.luaversion}/?.${type}"; @@ -27,12 +24,12 @@ let in stdenv.mkDerivation rec { - version = "0.9.12"; + version = "0.10.0"; name = "prosody-${version}"; src = fetchurl { url = "http://prosody.im/downloads/source/${name}.tar.gz"; - sha256 = "139yxqpinajl32ryrybvilh54ddb1q6s0ajjhlcs4a0rnwia6n8s"; + sha256 = "1644jy5dk46vahmh6nna36s79k8k668sbi3qamjb4q3c4m3y853l"; }; communityModules = fetchhg { @@ -65,7 +62,7 @@ stdenv.mkDerivation rec { meta = { description = "Open-source XMPP application server written in Lua"; license = licenses.mit; - homepage = http://www.prosody.im; + homepage = https://prosody.im; platforms = platforms.linux; maintainers = [ ]; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e267a460d0d8..924058cc0919 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12225,8 +12225,9 @@ with pkgs; hyp = callPackage ../servers/http/hyp/default.nix { }; prosody = callPackage ../servers/xmpp/prosody { - lua5 = lua5_1; - inherit (lua51Packages) luasocket luasec luaexpat luafilesystem luabitop luaevent luazlib luadbi; + # _compat can probably be removed on next minor version after 0.10.0 + lua5 = lua5_2_compat; + inherit (lua52Packages) luasocket luasec luaexpat luafilesystem luabitop luaevent luadbi; }; biboumi = callPackage ../servers/xmpp/biboumi { }; -- cgit 1.4.1 From 2c0b230330b3292e31f1de2392a293db6bede69e Mon Sep 17 00:00:00 2001 From: Florian Jacob Date: Fri, 22 Dec 2017 01:20:01 +0100 Subject: prosody: update community modules --- pkgs/servers/xmpp/prosody/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/servers') diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix index eb3e858ac4dc..1567a4a6b30b 100644 --- a/pkgs/servers/xmpp/prosody/default.nix +++ b/pkgs/servers/xmpp/prosody/default.nix @@ -34,8 +34,8 @@ stdenv.mkDerivation rec { communityModules = fetchhg { url = "https://hg.prosody.im/prosody-modules"; - rev = "9a3e51f348fe"; - sha256 = "09g4vi52rv0r3jzcm0bsgp4ngqq6iapfbxfh0l7qj36qnajp4vm6"; + rev = "150a7bd59043"; + sha256 = "0nfx3lngcy88nd81gb7v4kh3nz1bzsm67bxgpd2lprk54diqcrz1"; }; buildInputs = [ lua5 makeWrapper libidn openssl ]; -- cgit 1.4.1 From eb7b4ce2568322892800683b10aa64dac84fd7a8 Mon Sep 17 00:00:00 2001 From: Ryan Mulligan Date: Sat, 17 Mar 2018 12:32:55 -0700 Subject: bind: 9.12.0 -> 9.12.1 Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done: - built on NixOS - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/delv help` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/delv -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-rrchecker -h` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-rrchecker --help` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-rrchecker -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-rrchecker -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-rrchecker --version` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-rrchecker --help` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/mdig -h` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/mdig -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/ddns-confgen -h` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-cds -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-dsfromkey -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-importkey -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-keyfromlabel -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-keygen -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-revoke -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-settime -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-signzone -h` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-signzone --help` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-signzone -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-signzone -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-signzone --version` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-signzone -h` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-signzone --help` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-verify -h` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-verify --help` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-verify -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-verify -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-verify --version` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-verify -h` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/dnssec-verify --help` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named -V` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-checkconf -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/named-checkzone -v` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/rndc -h` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/rndc -h` and found version 9.12.1 - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/rndc-confgen -h` got 0 exit code - ran `/nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1/bin/rndc-confgen -h` and found version 9.12.1 - found 9.12.1 with grep in /nix/store/9i6c9yx3p0gvhphd4ahj8pfcm0n78han-bind-9.12.1 - directory tree listing: https://gist.github.com/e9daefd05b7c96cd83a144018a3b6aaf --- pkgs/servers/dns/bind/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/servers') diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix index 55368ac9a4dc..86e756a0db37 100644 --- a/pkgs/servers/dns/bind/default.nix +++ b/pkgs/servers/dns/bind/default.nix @@ -4,14 +4,14 @@ assert enableSeccomp -> libseccomp != null; -let version = "9.12.0"; in +let version = "9.12.1"; in stdenv.mkDerivation rec { name = "bind-${version}"; src = fetchurl { url = "http://ftp.isc.org/isc/bind9/${version}/${name}.tar.gz"; - sha256 = "10iwkghl5g50b7wc17bsb9wa0dh2gd57bjlk6ynixhywz6dhx1r9"; + sha256 = "043mjcw405qa0ghm5dkhfsq35gsy279724fz3mjqpr1mbi14dr0n"; }; outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ]; -- cgit 1.4.1 From 0a80f2c0f4284428235b0f54e228f6e76f1673a7 Mon Sep 17 00:00:00 2001 From: Robin Gloster Date: Thu, 22 Mar 2018 03:40:46 +0100 Subject: prosody: improve module handling --- nixos/doc/manual/release-notes/rl-1803.xml | 5 +++++ nixos/modules/services/networking/prosody.nix | 14 +++++++++++--- pkgs/servers/xmpp/prosody/default.nix | 10 +++++++--- 3 files changed, 23 insertions(+), 6 deletions(-) (limited to 'pkgs/servers') diff --git a/nixos/doc/manual/release-notes/rl-1803.xml b/nixos/doc/manual/release-notes/rl-1803.xml index 20f23261b608..e67f14484660 100644 --- a/nixos/doc/manual/release-notes/rl-1803.xml +++ b/nixos/doc/manual/release-notes/rl-1803.xml @@ -347,6 +347,11 @@ following incompatible changes: The better-performing libevent backend is now enabled by default. + + + withCommunityModules now passes through the modules to . + Use withOnlyInstalledCommunityModules for modules that should not be enabled directly, e.g lib_ldap. + diff --git a/nixos/modules/services/networking/prosody.nix b/nixos/modules/services/networking/prosody.nix index a7b43fb78a95..d57ebb61f636 100644 --- a/nixos/modules/services/networking/prosody.nix +++ b/nixos/modules/services/networking/prosody.nix @@ -362,6 +362,12 @@ in description = "Enable custom modules"; }; + extraPluginPaths = mkOption { + type = types.listOf types.path; + default = []; + description = "Addtional path in which to look find plugins/modules"; + }; + virtualHosts = mkOption { description = "Define the virtual hosts"; @@ -411,16 +417,18 @@ in config = mkIf cfg.enable { - environment.systemPackages = [ pkgs.prosody ]; + environment.systemPackages = [ cfg.package ]; environment.etc."prosody/prosody.cfg.lua".text = '' pidfile = "/var/lib/prosody/prosody.pid" - log = "*syslog" data_path = "/var/lib/prosody" + plugin_paths = { + ${lib.concatStringsSep ", " (map (n: "\"${n}\"") cfg.extraPluginPaths) } + } ${ optionalString (cfg.ssl != null) (createSSLOptsStr cfg.ssl) } @@ -434,7 +442,7 @@ in ${ lib.concatStringsSep "\n\ \ " (lib.mapAttrsToList (name: val: optionalString val "${toLua name};") cfg.modules) } - + ${ lib.concatStringsSep "\n" (map (x: "${toLua x};") cfg.package.communityModules)} ${ lib.concatStringsSep "\n" (map (x: "${toLua x};") cfg.extraModules)} }; diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix index 1567a4a6b30b..2d0e1a529dac 100644 --- a/pkgs/servers/xmpp/prosody/default.nix +++ b/pkgs/servers/xmpp/prosody/default.nix @@ -4,6 +4,7 @@ , withDBI ? true, luadbi ? null # use withExtraLibs to add additional dependencies of community modules , withExtraLibs ? [ ] +, withOnlyInstalledCommunityModules ? [ ] , withCommunityModules ? [ ] }: assert withLibevent -> luaevent != null; @@ -38,7 +39,8 @@ stdenv.mkDerivation rec { sha256 = "0nfx3lngcy88nd81gb7v4kh3nz1bzsm67bxgpd2lprk54diqcrz1"; }; - buildInputs = [ lua5 makeWrapper libidn openssl ]; + buildInputs = [ lua5 makeWrapper libidn openssl ] + ++ optional withDBI luadbi; configureFlags = [ "--ostype=linux" @@ -49,7 +51,7 @@ stdenv.mkDerivation rec { postInstall = '' ${concatMapStringsSep "\n" (module: '' cp -r $communityModules/mod_${module} $out/lib/prosody/modules/ - '') withCommunityModules} + '') (withCommunityModules ++ withOnlyInstalledCommunityModules)} wrapProgram $out/bin/prosody \ --set LUA_PATH '${luaPath};' \ --set LUA_CPATH '${luaCPath};' @@ -59,11 +61,13 @@ stdenv.mkDerivation rec { --set LUA_CPATH '${luaCPath};' ''; + passthru.communityModules = withCommunityModules; + meta = { description = "Open-source XMPP application server written in Lua"; license = licenses.mit; homepage = https://prosody.im; platforms = platforms.linux; - maintainers = [ ]; + maintainers = with maintainers; [ fpletz globin ]; }; } -- cgit 1.4.1 From a7046d5ecf08da2588ae3228173a8281b10b3099 Mon Sep 17 00:00:00 2001 From: Ryan Mulligan Date: Sat, 17 Mar 2018 01:09:23 -0700 Subject: nextcloud-news-updater: 10.0.0 -> 10.0.1 Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done: - built on NixOS - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/.nextcloud-news-updater-wrapped -h` got 0 exit code - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/.nextcloud-news-updater-wrapped --help` got 0 exit code - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/.nextcloud-news-updater-wrapped -v` and found version 10.0.1 - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/.nextcloud-news-updater-wrapped --version` and found version 10.0.1 - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/nextcloud-news-updater -h` got 0 exit code - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/nextcloud-news-updater --help` got 0 exit code - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/nextcloud-news-updater -v` and found version 10.0.1 - ran `/nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1/bin/nextcloud-news-updater --version` and found version 10.0.1 - found 10.0.1 with grep in /nix/store/58kz8y29n2habv056d7iz20484rq87mr-nextcloud-news-updater-10.0.1 - directory tree listing: https://gist.github.com/ef3eb260a3fd46598a3b70c142c2ef2c --- pkgs/servers/nextcloud/news-updater.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/servers') diff --git a/pkgs/servers/nextcloud/news-updater.nix b/pkgs/servers/nextcloud/news-updater.nix index a78b3d59095e..0fcb5047549d 100644 --- a/pkgs/servers/nextcloud/news-updater.nix +++ b/pkgs/servers/nextcloud/news-updater.nix @@ -2,11 +2,11 @@ python3Packages.buildPythonApplication rec { name = "nextcloud-news-updater-${version}"; - version = "10.0.0"; + version = "10.0.1"; src = fetchurl { url = "mirror://pypi/n/nextcloud_news_updater/nextcloud_news_updater-${version}.tar.gz"; - sha256 = "00pscz0p4s10y1ymb6sm0gx4a5wdbhimn30582x8i28n58nnl8j0"; + sha256 = "14jj3w417wfsm1ki34d980b0s6vfn8i29g4c66qb2fizdq1d0z6q"; }; doCheck = false; -- cgit 1.4.1 From 678211bb37821597a8c4426664cbe3bc821ac70e Mon Sep 17 00:00:00 2001 From: Robin Gloster Date: Thu, 22 Mar 2018 17:14:34 +0100 Subject: openpts: remove Broken, dead prject that only was a PoC implementation. --- pkgs/servers/openpts/bugs.patch | 12 --------- pkgs/servers/openpts/default.nix | 54 ---------------------------------------- pkgs/servers/openpts/ptsc.patch | 28 --------------------- pkgs/servers/openpts/tboot.patch | 21 ---------------- pkgs/servers/openpts/zlib.patch | 12 --------- pkgs/top-level/all-packages.nix | 1 - 6 files changed, 128 deletions(-) delete mode 100644 pkgs/servers/openpts/bugs.patch delete mode 100644 pkgs/servers/openpts/default.nix delete mode 100644 pkgs/servers/openpts/ptsc.patch delete mode 100644 pkgs/servers/openpts/tboot.patch delete mode 100644 pkgs/servers/openpts/zlib.patch (limited to 'pkgs/servers') diff --git a/pkgs/servers/openpts/bugs.patch b/pkgs/servers/openpts/bugs.patch deleted file mode 100644 index d818bafbc9f3..000000000000 --- a/pkgs/servers/openpts/bugs.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urNp openpts-0.2.6-cvs-patched/src/fsm.c openpts-0.2.6-current/src/fsm.c ---- openpts-0.2.6-cvs-patched/src/fsm.c 2012-01-05 03:49:15.000000000 -0500 -+++ openpts-0.2.6-current/src/fsm.c 2012-01-09 12:11:17.338706205 -0500 -@@ -934,7 +934,7 @@ char *getEventString(OPENPTS_PCR_EVENT_W - /* event */ - event = eventWrapper->event; - if (event != NULL) { -- // len = snprintf(buf, size, "PCR[%d],TYPE=%d", (int)event->ulPcrIndex, event->eventType); -+ snprintf(buf, size, "PCR[%d],TYPE=%d", (int)event->ulPcrIndex, event->eventType); - } else { - LOG(LOG_ERR, "NULL event\n"); // TODO(munetoh) - xfree(buf); diff --git a/pkgs/servers/openpts/default.nix b/pkgs/servers/openpts/default.nix deleted file mode 100644 index 27731af3803e..000000000000 --- a/pkgs/servers/openpts/default.nix +++ /dev/null @@ -1,54 +0,0 @@ -{ stdenv, fetchurl, autoconf, automake, pkgconfig, libtool, trousers, openssl, libxml2, libuuid, gettext, perl }: - -stdenv.mkDerivation rec { - name = "openpts-${version}"; - version = "0.2.6"; - - src = fetchurl { - url = "http://jaist.dl.osdn.jp/openpts/54410/openpts-${version}.tar.gz"; - sha256 = "1b5phshl49fxr5y3g5zz75gm0n4cw8i7n29x5f1a95xkwrjpazi0"; - }; - - # patches from https://apps.fedoraproject.org/packages/openpts/sources/patches/ - patches = [ ./bugs.patch ./zlib.patch ./tboot.patch ./ptsc.patch ]; - - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ autoconf automake libtool trousers openssl libxml2 libuuid gettext ]; - - preConfigure = '' - substituteInPlace include/Makefile.am --replace "./cvs2msg.pl" "${perl}/bin/perl cvs2msg.pl"; - $SHELL bootstrap.sh - ''; - - configureFlags = [ "--with-tss" "--with-aru" "--with-tboot" "--enable-tnc" "--with-aide" ]; - - NIX_CFLAGS_COMPILE = "-I${trousers}/include/trousers -I${trousers}/include/tss -Wno-deprecated-declarations"; - - preInstall = '' - mkdir -p $out - mkdir -p $out/etc - cp -p dist/ptsc.conf.in $out/etc/ptsc.conf - cp -p dist/ptsv.conf.in $out/etc/ptsv.conf - mkdir -p $out/share/openpts/models - cp -p models/*.uml $out/share/openpts/models/ - - mkdir -p $out/share/openpts/tpm_emulator - cp dist/tpm_emulator/README.rhel $out/share/openpts/tpm_emulator/README - cp dist/tpm_emulator/binary_bios_measurements $out/share/openpts/tpm_emulator/ - cp dist/tpm_emulator/tcsd $out/share/openpts/tpm_emulator/ - - mkdir -p $out/share/openpts/tboot - cp dist/tboot/README.fedora15 $out/share/openpts/tboot/README - cp dist/tboot/ptsc.conf.fedora15 $out/share/openpts/tboot/ptsc.conf - cp dist/tboot/tcsd.conf.fedora15 $out/share/openpts/tboot/tcsd.conf - cp dist/tboot/tcsd.fedora15 $out/share/openpts/tboot/tcsd - ''; - - meta = { - description = "TCG Platform Trust Service (PTS)"; - homepage = http://sourceforge.jp/projects/openpts; - license = stdenv.lib.licenses.cpl10; - platforms = stdenv.lib.platforms.linux; - maintainers = with stdenv.lib.maintainers; [ tstrobel ]; - }; -} diff --git a/pkgs/servers/openpts/ptsc.patch b/pkgs/servers/openpts/ptsc.patch deleted file mode 100644 index b6fcde740744..000000000000 --- a/pkgs/servers/openpts/ptsc.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -urNp openpts-0.2.6-patched/src/ptsc.c openpts-0.2.6-current/src/ptsc.c ---- openpts-0.2.6-patched/src/ptsc.c 2012-08-21 15:57:07.733841433 -0400 -+++ openpts-0.2.6-current/src/ptsc.c 2012-08-21 16:13:26.479732504 -0400 -@@ -457,7 +457,10 @@ void ptsc_lock(void) { - exit(1); - } - oldgrp = getegid(); -- setegid(grp.gr_gid); -+ if(setegid(grp.gr_gid) != 0){ -+ LOG(LOG_ERR, "setegid fail"); -+ exit(1); -+ } - } - - oldmask = umask(0); -@@ -467,7 +470,10 @@ void ptsc_lock(void) { - } - if (grpent) { - chmod(LOCK_DIR, 02775); -- setegid(oldgrp); -+ if(setegid(oldgrp) != 0){ -+ LOG(LOG_ERR, "setegid fail"); -+ exit(1); -+ } - } - fd = open(LOCK_FILE, O_RDWR | O_CREAT | O_TRUNC, 0660); - if (fd < 0) { - diff --git a/pkgs/servers/openpts/tboot.patch b/pkgs/servers/openpts/tboot.patch deleted file mode 100644 index 6ecee5839202..000000000000 --- a/pkgs/servers/openpts/tboot.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -urNp openpts-0.2.6-patched/src/tboot2iml.c openpts-0.2.6-current/src/tboot2iml.c ---- openpts-0.2.6-patched/src/tboot2iml.c 2012-07-23 16:30:12.381361421 -0400 -+++ openpts-0.2.6-current/src/tboot2iml.c 2012-07-23 17:25:59.053945778 -0400 -@@ -531,7 +531,7 @@ int sinit_acm_hash(char *filename, int s - - - int sha1sum_unzip(char *filename, int *filesize, BYTE *digest) { -- FILE *fp; -+ gzFile fp; - char buf[2048]; - SHA_CTX sha_ctx; - int len; -@@ -541,7 +541,7 @@ int sha1sum_unzip(char *filename, int *f - - /* open */ - fp = gzopen(filename, "rb"); -- if (fp == NULL) { -+ if (fp == Z_NULL) { - LOG(LOG_ERR, "File %s does not exist\n", filename); - return 0; - } diff --git a/pkgs/servers/openpts/zlib.patch b/pkgs/servers/openpts/zlib.patch deleted file mode 100644 index 7fa3fce10fe9..000000000000 --- a/pkgs/servers/openpts/zlib.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urNp openpts-0.2.6-cvs-patched/src/Makefile.am openpts-0.2.6-current/src/Makefile.am ---- openpts-0.2.6-cvs-patched/src/Makefile.am 2012-01-05 03:49:15.000000000 -0500 -+++ openpts-0.2.6-current/src/Makefile.am 2012-01-09 14:12:02.507361732 -0500 -@@ -30,7 +30,7 @@ localedir = $(datadir)/locale - - - AM_CPPFLAGS = -I$(top_srcdir)/include $(LIBXML2_CFLAGS) $(TSS_CFLAGS) -I../include -DLOCALEDIR=\"$(localedir)\" --AM_LDFLAGS = $(LIBXML2_LIBS) $(LIBCRYPTO_LIBS) $(TSS_LIBS) -lopenpts -+AM_LDFLAGS = $(LIBXML2_LIBS) $(LIBCRYPTO_LIBS) $(TSS_LIBS) -lz -lopenpts - # $(LIBINTL) -lopenpts - - if HAVE_LIBUUID diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1542203c23d7..c4d153bd8b9a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12438,7 +12438,6 @@ with pkgs; oauth2_proxy = callPackage ../servers/oauth2_proxy { }; openafs = callPackage ../servers/openafs { tsmbac = null; ncurses = null; }; - openpts = callPackage ../servers/openpts { }; openresty = callPackage ../servers/http/openresty { }; -- cgit 1.4.1