diff options
Diffstat (limited to 'pkgs/servers')
32 files changed, 1032 insertions, 210 deletions
diff --git a/pkgs/servers/amqp/rabbitmq-server/default.nix b/pkgs/servers/amqp/rabbitmq-server/default.nix index da0ec89cbc6..09b091b323c 100644 --- a/pkgs/servers/amqp/rabbitmq-server/default.nix +++ b/pkgs/servers/amqp/rabbitmq-server/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { name = "rabbitmq-server-${version}"; - version = "3.2.4"; + version = "3.3.4"; src = fetchurl { url = "http://www.rabbitmq.com/releases/rabbitmq-server/v${version}/${name}.tar.gz"; - sha256 = "17rvqhzcb7rscp228vmgixk0rsqi42m820jzxj9g5wid6qmzjc59"; + sha256 = "13nnsn34b44mz8w4b69bcpxmq4daqnxzd0lppg0f138pcssha43l"; }; buildInputs = diff --git a/pkgs/servers/etcd/default.nix b/pkgs/servers/etcd/default.nix new file mode 100644 index 00000000000..1fb21f2b8ab --- /dev/null +++ b/pkgs/servers/etcd/default.nix @@ -0,0 +1,30 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "0.4.3"; + name = "etcd-${version}"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + go build -v -o etcd github.com/coreos/etcd + ''; + + installPhase = '' + ensureDir $out/bin + mv etcd $out/bin/etcd + ''; + + meta = with stdenv.lib; { + description = "A highly-available key value store for shared configuration and service discovery"; + homepage = http://coreos.com/using-coreos/etcd/; + license = licenses.asl20; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/etcd/deps.nix b/pkgs/servers/etcd/deps.nix new file mode 100644 index 00000000000..e9fd4a50d3e --- /dev/null +++ b/pkgs/servers/etcd/deps.nix @@ -0,0 +1,54 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "github.com/coreos/etcd"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "etcd"; + rev = "9970141f76241c909977af7bafe7b6f2c4923de8"; + sha256 = "1bva46gfy4rkfw8k8pb3lsfzfg16csds01f0nvfrkh99pr7sp0sy"; + }; + } + { + root = "github.com/stathat/go"; + src = fetchFromGitHub { + owner = "stathat"; + repo = "go"; + rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77"; + sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi"; + }; + } + { + root = "github.com/stretchr/objx"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "objx"; + rev = "cbeaeb16a013161a98496fad62933b1d21786672"; + sha256 = "1xn7iibjik77h6h0jilfvcjkkzaqz45baf44p3rb2i03hbmkqkp1"; + }; + } + { + root = "github.com/stretchr/testify"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "testify"; + rev = "3e03dde72495487a4deb74152ac205d0619fbc8d"; + sha256 = "1xd9sbi6y68cfwkxgybcz0dbfx4r6jmxq51wjj6six3wm9p7m8ls"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/servers/fleet/default.nix b/pkgs/servers/fleet/default.nix new file mode 100644 index 00000000000..627c1ff0cf9 --- /dev/null +++ b/pkgs/servers/fleet/default.nix @@ -0,0 +1,30 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "0.5.0"; + name = "fleet-${version}"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + go build -v -o fleet github.com/coreos/fleet + ''; + + installPhase = '' + ensureDir $out/bin + mv fleet $out/bin + ''; + + meta = with stdenv.lib; { + description = "A distributed init system"; + homepage = http://coreos.com/using-coreos/clustering/; + license = licenses.asl20; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/fleet/deps.nix b/pkgs/servers/fleet/deps.nix new file mode 100644 index 00000000000..d0529db37a2 --- /dev/null +++ b/pkgs/servers/fleet/deps.nix @@ -0,0 +1,81 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "code.google.com/p/gogoprotobuf"; + src = fetchgit { + url = "https://code.google.com/p/gogoprotobuf"; + rev = "7fd1620f09261338b6b1ca1289ace83aee0ec946"; + sha256 = "0f13y29zpxkv7b7kwnszygvg04fd5m9r8vpkl1wa3gxnc6az54i9"; + }; + } + { + root = "github.com/coreos/etcd"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "etcd"; + rev = "1359d29fa451b059bb76b51260610d92853e7316"; + sha256 = "0iz3vmf3nfp1i5r8al207wm0jvj68i47a814w90b1jl8g4f2amp7"; + }; + } + { + root = "github.com/coreos/fleet"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "fleet"; + rev = "da0a02ed3b07d83b0b542dcdee56e08d2457ab9c"; + sha256 = "0b8aq4ppyv1fjvf3f2qjq80mvjvf9r104bf4048wgsrs0pccs6s8"; + }; + } + { + root = "github.com/coreos/raft"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "raft"; + rev = "67dca7288f1665b59860421673d46314f4348e45"; + sha256 = "1l27kjkwcxgx89d2m537plagbp1wh6qlzxirza6lliblrgxry6mw"; + }; + } + { + root = "github.com/stathat/go"; + src = fetchFromGitHub { + owner = "stathat"; + repo = "go"; + rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77"; + sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi"; + }; + } + { + root = "github.com/stretchr/objx"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "objx"; + rev = "cbeaeb16a013161a98496fad62933b1d21786672"; + sha256 = "1xn7iibjik77h6h0jilfvcjkkzaqz45baf44p3rb2i03hbmkqkp1"; + }; + } + { + root = "github.com/stretchr/testify"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "testify"; + rev = "3e03dde72495487a4deb74152ac205d0619fbc8d"; + sha256 = "1xd9sbi6y68cfwkxgybcz0dbfx4r6jmxq51wjj6six3wm9p7m8ls"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} + diff --git a/pkgs/servers/http/apache-httpd/2.4.nix b/pkgs/servers/http/apache-httpd/2.4.nix index 7deab6584f8..e164c21ec78 100644 --- a/pkgs/servers/http/apache-httpd/2.4.nix +++ b/pkgs/servers/http/apache-httpd/2.4.nix @@ -14,12 +14,12 @@ assert sslSupport -> aprutil.sslSupport && openssl != null; assert ldapSupport -> aprutil.ldapSupport && openldap != null; stdenv.mkDerivation rec { - version = "2.4.9"; + version = "2.4.10"; name = "apache-httpd-${version}"; src = fetchurl { url = "mirror://apache/httpd/httpd-${version}.tar.bz2"; - sha256 = "00vnhki0rdwlhl4cjgvkq5vpf8szx2sdd3yi7bcg7jj7z86wk37p"; + sha256 = "0slwcqw9f7fnb3kyz27hlsgh8j4wiza4yzqyp6vhfpvl3an4sv0p"; }; buildInputs = [perl] ++ diff --git a/pkgs/servers/http/couchdb/default.nix b/pkgs/servers/http/couchdb/default.nix index 36d932c1ace..35d4ebbf89f 100644 --- a/pkgs/servers/http/couchdb/default.nix +++ b/pkgs/servers/http/couchdb/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { name = "couchdb-${version}"; - version = "1.5.1"; + version = "1.6.0"; src = fetchurl { url = "mirror://apache/couchdb/source/${version}/apache-${name}.tar.gz"; - sha256 = "0isddp29zh72idgwjaswqy887c1fwx5g1lwlbzscwcv6q70xrmfr"; + sha256 = "0m4k7i3gibzzcabssysv42rmdr89myppc6765xr0jggwkwdxgxmx"; }; buildInputs = [ erlang icu openssl spidermonkey curl help2man sphinx which diff --git a/pkgs/servers/http/nginx/default.nix b/pkgs/servers/http/nginx/default.nix index 32d4634e7fb..8f748078dcf 100644 --- a/pkgs/servers/http/nginx/default.nix +++ b/pkgs/servers/http/nginx/default.nix @@ -3,7 +3,10 @@ , rtmp ? false , fullWebDAV ? false , syslog ? false -, moreheaders ? false}: +, moreheaders ? false +, echo ? false }: + +with stdenv.lib; let version = "1.6.0"; @@ -35,6 +38,12 @@ let rev = "0c6e05d3125a97892a250e9ba8b7674163ba500b"; sha256 = "e121d97fd3c81c64e6cbf6902bbcbdb01be9ac985c6832d40434379d5e998eaf"; }; + + echo-ext = fetchgit { + url = https://github.com/openresty/echo-nginx-module.git; + rev = "refs/tags/v0.53"; + sha256 = "90d4e3a49c678019f4f335bc18529aa108fcc9cfe0747ea4e2f6084a70da2868"; + }; in stdenv.mkDerivation rec { @@ -43,7 +52,7 @@ stdenv.mkDerivation rec { buildInputs = [ openssl zlib pcre libxml2 libxslt gd geoip - ] ++ stdenv.lib.optional fullWebDAV expat; + ] ++ optional fullWebDAV expat; patches = if syslog then [ "${syslog-ext}/syslog-1.5.6.patch" ] else []; @@ -69,12 +78,15 @@ stdenv.mkDerivation rec { "--with-ipv6" # Install destination problems # "--with-http_perl_module" - ] ++ stdenv.lib.optional rtmp "--add-module=${rtmp-ext}" - ++ stdenv.lib.optional fullWebDAV "--add-module=${dav-ext}" - ++ stdenv.lib.optional syslog "--add-module=${syslog-ext}" - ++ stdenv.lib.optional moreheaders "--add-module=${moreheaders-ext}"; + ] ++ optional rtmp "--add-module=${rtmp-ext}" + ++ optional fullWebDAV "--add-module=${dav-ext}" + ++ optional syslog "--add-module=${syslog-ext}" + ++ optional moreheaders "--add-module=${moreheaders-ext}" + ++ optional echo "--add-module=${echo-ext}" + ++ optional (elem stdenv.system (with platforms; linux ++ freebsd)) "--with-file-aio"; + - additionalFlags = stdenv.lib.optionalString stdenv.isDarwin "-Wno-error=deprecated-declarations"; + additionalFlags = optionalString stdenv.isDarwin "-Wno-error=deprecated-declarations"; preConfigure = '' export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2}/include/libxml2 $additionalFlags" @@ -87,8 +99,8 @@ stdenv.mkDerivation rec { meta = { description = "A reverse proxy and lightweight webserver"; homepage = http://nginx.org; - license = stdenv.lib.licenses.bsd2; - platforms = stdenv.lib.platforms.all; - maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ]; + license = licenses.bsd2; + platforms = platforms.all; + maintainers = with maintainers; [ thoughtpolice raskin ]; }; } diff --git a/pkgs/servers/http/nix-binary-cache/default.nix b/pkgs/servers/http/nix-binary-cache/default.nix new file mode 100644 index 00000000000..b007c09b056 --- /dev/null +++ b/pkgs/servers/http/nix-binary-cache/default.nix @@ -0,0 +1,61 @@ +{stdenv, fetchurl +, coreutils, findutils, nix, xz, bzip2, gnused, gnugrep, openssl +, lighttpd, iproute }: +stdenv.mkDerivation rec { + version = "2014-06-29-1"; + name = "nix-binary-cache-${version}"; + + phases = ["installPhase"]; + + installPhase = '' + mkdir -p "$out/bin" + substitute "${./nix-binary-cache.cgi.in}" "$out"/bin/nix-binary-cache.cgi \ + --replace @out@ "$out/bin" \ + --replace @shell@ "${stdenv.shell}" \ + --replace @coreutils@ "${coreutils}/bin" \ + --replace @findutils@ "${findutils}/bin" \ + --replace @nix@ "${nix}/bin" \ + --replace @xz@ "${xz}/bin" \ + --replace @bzip2@ "${bzip2}/bin" \ + --replace @gnused@ "${gnused}/bin" \ + --replace @gnugrep@ "${gnugrep}/bin" \ + --replace @openssl@ "${openssl}/bin" \ + --replace @lighttpd@ "${lighttpd}/sbin" \ + --replace @iproute@ "${iproute}/sbin" \ + --replace "xXxXx" "xXxXx" + + chmod a+x "$out/bin/nix-binary-cache.cgi" + + substitute "${./nix-binary-cache-start.in}" "$out"/bin/nix-binary-cache-start \ + --replace @out@ "$out/bin" \ + --replace @shell@ "${stdenv.shell}" \ + --replace @coreutils@ "${coreutils}/bin" \ + --replace @findutils@ "${findutils}/bin" \ + --replace @nix@ "${nix}/bin" \ + --replace @xz@ "${xz}/bin" \ + --replace @bzip2@ "${bzip2}/bin" \ + --replace @gnused@ "${gnused}/bin" \ + --replace @gnugrep@ "${gnugrep}/bin" \ + --replace @openssl@ "${openssl}/bin" \ + --replace @lighttpd@ "${lighttpd}/sbin" \ + --replace @iproute@ "${iproute}/sbin" \ + --replace "xXxXx" "xXxXx" + + chmod a+x "$out/bin/nix-binary-cache-start" + ''; + + meta = { + description = ''A set of scripts to serve the Nix store as a binary cache''; + longDescription = '' + This package installs a CGI script that serves Nix store path in the + binary cache format. It also installs a launcher called + nix-binary-cache-start that can be run without any setup to launch + a binary cache and get the example arguments for its usage. + ''; + maintainers = [stdenv.lib.maintainers.raskin]; + license = stdenv.lib.licenses.gpl2Plus; + inherit version; + platforms = stdenv.lib.platforms.all; + hydraPlatforms = []; + }; +} diff --git a/pkgs/servers/http/nix-binary-cache/nix-binary-cache-start.in b/pkgs/servers/http/nix-binary-cache/nix-binary-cache-start.in new file mode 100644 index 00000000000..2a2356f39ab --- /dev/null +++ b/pkgs/servers/http/nix-binary-cache/nix-binary-cache-start.in @@ -0,0 +1,105 @@ +#! @shell@ + +parse_opts () { + while @coreutils@/test -n "$1" && @coreutils@/test "x$1" != x-- ; do + case "$1" in + --store-dir) + shift; + echo "STORE_DIR='$1'" + shift; + ;; + --priority) + shift; + echo "PRIORITY=$1"; + shift; + ;; + --compression) + shift; + echo "COMPRESSION=$1"; + shift; + ;; + --key) + shift; + echo "KEY=${1#*:}" + echo "KEYNAME=${1%%:*}" + shift; + ;; + --nix-remote) + shift; + echo "NIX_REMOTE=$1" + shift; + ;; + --mass-query) + shift; + echo "MASS_QUERY=$1" + shift; + ;; + --port) + shift; + echo "PORT=$1" + shift; + ;; + --help) + cat <<EOF >&2 +"$0": start the Nix binary cache serving the Nix store dynamically. + +Recognized options: + +--port server port +--store-dir served Nix store + +--priority binary cache priority +--mass-query 0 or 1 - whether binary cache expects queries for nix-env -qas + +--compression compression to use: bzip2 or xz +--key name:/path/to/key - key to use for narinfo signing + +--nix-remote 'daemon' or empty string '' - whether to use daemon for store + operations + +--help show help and exit +EOF + exit 1; + ;; + *) shift ;; + esac; + done +} + +workingdir="$(@coreutils@/mktemp -d)" +cd "$workingdir" + +PORT=8080 +(echo "STORE_DIR=${NIX_STORE_DIR:-/nix/store}"; parse_opts "$@" + ) > nix-binary-cache.conf || exit +. "$workingdir/nix-binary-cache.conf" + +echo " +server.port = $PORT +server.modules = ( \"mod_cgi\", \"mod_setenv\", ) +server.document-root = \"$workingdir\" +cgi.assign = ( \".cgi\" => \"@shell@\" ) +setenv.add-request-header = ( \"NIX_BINARY_CACHE_CONFIG\" => \"$workingdir/nix-binary-cache.conf\" ) +" > lighttpd.conf + +cp @out@/nix-binary-cache.cgi . +cp @out@/nix-binary-cache.cgi ./nix-bc.cgi + +ip="$(@iproute@/ip a | @gnugrep@/grep 'inet .* scope global' | @coreutils@/head -n 1)" +ip="${ip%%/*}" +ip="${ip##* }" + +url="http://$ip:$PORT/nix-bc.cgi?" + +echo "Working directory: $workingdir" +echo +echo "Address of the binary cache: $url" +echo +echo "Usage example: NIX_REMOTE= nix-store --option binary-caches '$url'" +echo +echo + +@lighttpd@/lighttpd -D -f "$workingdir/lighttpd.conf" + +cd / +@coreutils@/rm -rf "$workingdir" diff --git a/pkgs/servers/http/nix-binary-cache/nix-binary-cache.cgi.in b/pkgs/servers/http/nix-binary-cache/nix-binary-cache.cgi.in new file mode 100644 index 00000000000..219ab9763ad --- /dev/null +++ b/pkgs/servers/http/nix-binary-cache/nix-binary-cache.cgi.in @@ -0,0 +1,97 @@ +#! @shell@ + +STORE_DIR="${NIX_STORE_DIR:-/nix/store}" +MASS_QUERY=0 +PRIORITY=75 +COMPRESSION=bzip2 +KEY= +KEYNAME=na + +export NIX_REMOTE=daemon + +config="${NIX_BINARY_CACHE_CONFIG:-${HTTP_NIX_BINARY_CACHE_CONFIG:-/etc/nix/nix-binary-cache.cgi.conf}}" +config="$(cd "$(@coreutils@/dirname "$config")"; + @coreutils@/pwd)/$(@coreutils@/basename "$config")" +@coreutils@/test -e "$config" && . "$config" + +header(){ + echo "Content-Type: text/plain; charset=utf-8" + echo +} + +clean_path() { + @gnused@/sed -re "s@^$STORE_DIR/?@@" | @findutils@/xargs +} + +storeq(){ + @nix@/nix-store -q "$@" +} + +sign(){ + test -n "$1" && + @coreutils@/sha256sum | @gnused@/sed -e 's/ .*//' | + @openssl@/openssl rsautl -sign -inkey "$@" | @coreutils@/base64 -w 0 +} + +case "$QUERY_STRING" in + "") + header + echo "Hello, this is a dynamically-generated Nix binary cache" + ;; + /debug) + header + set + ;; + /nix-cache-info) + header + echo "StoreDir: $STORE_DIR" + echo "WantMassQuery: $MASS_QUERY" + echo "Priority: $PRIORITY" + ;; + *.narinfo) + hash=${QUERY_STRING%.narinfo} + hash=${hash#/} + path="$(echo "$STORE_DIR/$hash-"* )" + if [ -n "$path" ] && [ -e "$path" ]; then + header + info="$( + echo "StorePath: $path" + echo "URL: $(@coreutils@/basename "$path" + ).nar.$COMPRESSION" + echo "Compression: $COMPRESSION" + echo "NarHash: $(storeq --hash "$path")" + echo "NarSize: $(storeq --size "$path")" + echo "References: $(storeq --references "$path" | + @coreutils@/tac | clean_path )" + echo "Deriver: $(storeq --deriver "$path" | + clean_path )" + )" + signature="$(echo "$info" | sign "$KEY")" + + echo "$info" + echo "Signature: 1;$KEYNAME;$signature" + + else + exit 1 + fi + ;; + *.nar.xz) + path="$STORE_DIR${QUERY_STRING%.nar.xz}" + if [ -n "$path" ] && [ -e "$path" ]; then + header + @nix@/nix-store --dump "$path" | @xz@/xz + else + exit 1 + fi + ;; + *.nar.bzip2) + path="$STORE_DIR${QUERY_STRING%.nar.bzip2}" + echo "$path" >&2; + if [ -n "$path" ] && [ -e "$path" ]; then + header + @nix@/nix-store --dump "$path" | @bzip2@/bzip2 + else + exit 1 + fi + ;; +esac diff --git a/pkgs/servers/http/tomcat/axis2/default.nix b/pkgs/servers/http/tomcat/axis2/default.nix index 4bf3d59685b..cf64ba2d3c6 100644 --- a/pkgs/servers/http/tomcat/axis2/default.nix +++ b/pkgs/servers/http/tomcat/axis2/default.nix @@ -10,4 +10,8 @@ stdenv.mkDerivation { buildInputs = [ unzip apacheAnt jdk ]; builder = ./builder.sh; + + meta = { + description = "Web Services / SOAP / WSDL engine, the successor to the widely used Apache Axis SOAP stack"; + }; } diff --git a/pkgs/servers/monitoring/munin/default.nix b/pkgs/servers/monitoring/munin/default.nix index be890ff5900..245c838607f 100644 --- a/pkgs/servers/monitoring/munin/default.nix +++ b/pkgs/servers/monitoring/munin/default.nix @@ -99,18 +99,17 @@ stdenv.mkDerivation rec { ln -s $out/nix-support/propagated-native-build-inputs $out/nix-support/propagated-user-env-packages fi - # TODO: toPerlLibPath can be added to - # pkgs/development/interpreters/perl5.16/setup-hook.sh (and the other perl - # versions) just like for python. NOTE: it causes massive rebuilds. - # $(toPerlLibPath $out perlPackages.Log4Perl ...) - for file in "$out"/bin/munindoc "$out"/sbin/munin-* "$out"/lib/munin-* "$out"/www/cgi/*; do # don't wrap .jar files case "$file" in *.jar) continue;; esac wrapProgram "$file" \ - --set PERL5LIB "$out/lib/perl5/site_perl:${perlPackages.Log4Perl}/lib/perl5/site_perl:${perlPackages.IOSocketInet6}/lib/perl5/site_perl:${perlPackages.Socket6}/lib/perl5/site_perl:${perlPackages.URI}/lib/perl5/site_perl:${perlPackages.DBFile}/lib/perl5/site_perl:${perlPackages.DateManip}/lib/perl5/site_perl:${perlPackages.HTMLTemplate}/lib/perl5/site_perl:${perlPackages.FileCopyRecursive}/lib/perl5/site_perl:${perlPackages.FCGI}/lib/perl5/site_perl:${perlPackages.NetSNMP}/lib/perl5/site_perl:${perlPackages.NetServer}/lib/perl5/site_perl:${perlPackages.ListMoreUtils}/lib/perl5/site_perl:${perlPackages.TimeHiRes}/lib/perl5/site_perl:${rrdtool}/lib/perl:${perlPackages.DBDPg}/lib/perl5/site_perl:${perlPackages.LWPUserAgent}/lib/perl5/site_perl" + --set PERL5LIB "$out/lib/perl5/site_perl:${with perlPackages; stdenv.lib.makePerlPath [ + Log4Perl IOSocketInet6 Socket6 URI DBFile DateManip + HTMLTemplate FileCopyRecursive FCGI NetSNMP NetServer + ListMoreUtils TimeHiRes DBDPg LWPUserAgent + ]}" done ''; diff --git a/pkgs/servers/monitoring/nagios/default.nix b/pkgs/servers/monitoring/nagios/default.nix index dba063bb106..5af759db1c9 100644 --- a/pkgs/servers/monitoring/nagios/default.nix +++ b/pkgs/servers/monitoring/nagios/default.nix @@ -1,23 +1,30 @@ -{ stdenv, fetchurl, perl, gdSupport ? false -, gd ? null, libpng ? null, zlib ? null -}: +{ stdenv, fetchurl, perl, php, gd, libpng, zlib }: stdenv.mkDerivation { - name = "nagios-2.10"; + name = "nagios-4.0.7"; src = fetchurl { - url = mirror://sourceforge/nagios/nagios-2.10.tar.gz; - md5 = "8c3a29e138f2ff8c8abbd3dd8a40c4b6"; + url = mirror://sourceforge/nagios/nagios-4.x/nagios-4.0.7/nagios-4.0.7.tar.gz; + sha256 = "1687qnbsag84r57y9745g2klypacfixd6gkzaj42lmzn0v8y27gg"; }; - patches = [./nagios.patch]; - buildInputs = [perl] ++ (if gdSupport then [gd libpng zlib] else []); + patches = [ ./nagios.patch ]; + buildInputs = [ php perl gd libpng zlib ]; + + configureFlags = [ "--localstatedir=/var/lib/nagios" ]; buildFlags = "all"; + + # Do not create /var directories + preInstall = '' + substituteInPlace Makefile --replace '$(MAKE) install-basic' "" + ''; installTargets = "install install-config"; meta = { description = "A host, service and network monitoring program"; - homepage = http://www.nagios.org/; - license = "GPL"; + homepage = http://www.nagios.org/; + license = stdenv.lib.licenses.gpl2; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ thoughtpolice relrod ]; }; } diff --git a/pkgs/servers/monitoring/nagios/nagios.patch b/pkgs/servers/monitoring/nagios/nagios.patch index 6fc27153617..cec4c4942b5 100644 --- a/pkgs/servers/monitoring/nagios/nagios.patch +++ b/pkgs/servers/monitoring/nagios/nagios.patch @@ -1,7 +1,7 @@ -diff -ruN nagios-2.6/configure nagios-2.6.new/configure ---- nagios-2.6/configure 2006-11-28 03:29:04.000000000 +0100 -+++ nagios-2.6.new/configure 2006-12-28 01:22:56.000000000 +0100 -@@ -4810,7 +4810,8 @@ +diff -ruN nagios-4.0.7.orig/configure nagios-4.0.7/configure +--- nagios-4.0.7.orig/configure 2014-06-03 10:41:42.000000000 -0400 ++++ nagios-4.0.7/configure 2014-06-12 00:30:17.516468583 -0400 +@@ -6014,7 +6014,8 @@ #define DEFAULT_NAGIOS_GROUP "$nagios_grp" _ACEOF @@ -11,3 +11,13 @@ diff -ruN nagios-2.6/configure nagios-2.6.new/configure +@@ -6035,7 +6036,8 @@ + + + +-COMMAND_OPTS="-o $command_user -g $command_grp" ++#COMMAND_OPTS="-o $command_user -g $command_grp" ++COMMAND_OPTS="" + + + MAIL_PROG=no diff --git a/pkgs/servers/monitoring/nagios/plugins/official/default.nix b/pkgs/servers/monitoring/nagios/plugins/official-2.x.nix index c466813b23b..3420003c641 100644 --- a/pkgs/servers/monitoring/nagios/plugins/official/default.nix +++ b/pkgs/servers/monitoring/nagios/plugins/official-2.x.nix @@ -1,11 +1,12 @@ -{stdenv, fetchurl, openssh}: +{ stdenv, fetchurl, openssh }: -stdenv.mkDerivation { - name = "nagios-plugins-1.4.10"; +stdenv.mkDerivation rec { + name = "nagios-plugins-${version}"; + version = "2.0"; src = fetchurl { - url = https://www.monitoring-plugins.org/download/nagios-plugins-1.4.10.tar.gz; - sha256 = "0vm7sjiygxbfc5vbsi1g0dakpvynfzi86fhqx4yxd61brn0g8ghr"; + url = "http://nagios-plugins.org/download/${name}.tar.gz"; + sha256 = "113nv9jqpbqpdjqilqbj1iyshxyvcmq8w94bq5ajz4dxi9j8045s"; }; # !!! Awful hack. Grrr... this of course only works on NixOS. @@ -22,11 +23,14 @@ stdenv.mkDerivation { postInstall = "ln -s libexec $out/bin"; - buildInputs = [openssh]; # !!! make openssh a runtime dependency only + # !!! make openssh a runtime dependency only + buildInputs = [ openssh ]; meta = { - description = "Plugins for Nagios"; - homepage = http://www.monitoring-plugins.org; - license = "GPL"; + description = "Official plugins for Nagios"; + homepage = http://www.nagios.org/download/plugins; + license = stdenv.lib.licenses.gpl2; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ thoughtpolice relrod ]; }; } diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix index 5bc55039260..38be02e76ef 100644 --- a/pkgs/servers/mpd/default.nix +++ b/pkgs/servers/mpd/default.nix @@ -55,7 +55,7 @@ in stdenv.mkDerivation rec { ++ opt mpg123Support mpg123 ++ opt aacSupport faad2 ++ opt zipSupport zziplib - ++ opt zipSupport pulseaudio; + ++ opt pulseaudioSupport pulseaudio; configureFlags = [ (mkFlag (!stdenv.isDarwin && alsaSupport) "alsa") diff --git a/pkgs/servers/nsq/default.nix b/pkgs/servers/nsq/default.nix new file mode 100644 index 00000000000..b1570d96c7b --- /dev/null +++ b/pkgs/servers/nsq/default.nix @@ -0,0 +1,37 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "0.2.28"; + name = "nsq-${version}"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + apps=(nsq_pubsub nsq_stat nsq_tail nsq_to_file nsq_to_http nsq_to_nsq nsqd nsqlookupd) + + mkdir build + + go build -v -o build/nsqadmin github.com/bitly/nsq/nsqadmin + for app in "''${apps[@]}"; do + go build -v -o build/$app github.com/bitly/nsq/apps/$app + done + ''; + + installPhase = '' + ensureDir $out/bin + mv build/* $out/bin + ''; + + meta = with stdenv.lib; { + description = "A realtime distributed messaging platform"; + homepage = http://nsq.io/; + license = licenses.mit; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/nsq/deps.nix b/pkgs/servers/nsq/deps.nix new file mode 100644 index 00000000000..bd98357ece6 --- /dev/null +++ b/pkgs/servers/nsq/deps.nix @@ -0,0 +1,134 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "code.google.com/p/snappy-go"; + src = fetchhg { + url = "http://code.google.com/p/snappy-go"; + rev = "14"; + sha256 = "0ywa52kcii8g2a9lbqcx8ghdf6y56lqq96sl5nl9p6h74rdvmjr7"; + }; + } + { + root = "github.com/BurntSushi/toml"; + src = fetchFromGitHub { + owner = "BurntSushi"; + repo = "toml"; + rev = "f87ce853111478914f0bcffa34d43a93643e6eda"; + sha256 = "0g8203y9ycf34j2q3ymxb8nh4habgwdrjn9vdgrginllx73yq565"; + }; + } + { + root = "github.com/bitly/go-hostpool"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "go-hostpool"; + rev = "fed86fae5cacdc77e7399937e2f8836563620a2e"; + sha256 = "0nbssfp5ksj4hhc0d8lfq54afd9nqv6qzk3vi6rinxr3fgplrj44"; + }; + } + { + root = "github.com/bitly/go-nsq"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "go-nsq"; + rev = "c79a282f05364e340eadc2ce2f862a3d44eea9c0"; + sha256 = "19jlwj5419p5xwjzfnzlddjnbh5g7ifnqhd00i5p0b6ww1gk011p"; + }; + } + { + root = "github.com/bitly/go-simplejson"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "go-simplejson"; + rev = "1cfceb0e12f47ec02665ef480212d7b531d6f4c5"; + sha256 = "1d8x0himl58qn87lv418djy6mbs66p9ai3zpqq13nhkfl67fj3bi"; + }; + } + { + root = "github.com/bitly/nsq"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "nsq"; + rev = "048691a8242c9ec224fc46bf7d05f321026b69f8"; + sha256 = "0drmf1j5w3q4l6f7xjy3y7d7cl50gcx0qwci6mahxsyaaclx60yx"; + }; + } + { + root = "github.com/bmizerany/assert"; + src = fetchFromGitHub { + owner = "bmizerany"; + repo = "assert"; + rev = "e17e99893cb6509f428e1728281c2ad60a6b31e3"; + sha256 = "1lfrvqqmb09y6pcr76yjv4r84cshkd4s7fpmiy7268kfi2cvqnpc"; + }; + } + { + root = "github.com/bmizerany/perks"; + src = fetchFromGitHub { + owner = "bmizerany"; + repo = "perks"; + rev = "aac9e2eab5a334037057336897fd10b0289a5ae8"; + sha256 = "1d027jgc327qz5xmal0hrpqvsj45i9yqmm9pxk3xp3hancvz3l3k"; + }; + } + { + root = "github.com/kr/pretty"; + src = fetchFromGitHub { + owner = "kr"; + repo = "pretty"; + rev = "bc9499caa0f45ee5edb2f0209fbd61fbf3d9018f"; + sha256 = "1m61y592qsnwsqn76v54mm6h2pcvh4wlzbzscc1ag645x0j33vvl"; + }; + } + { + root = "github.com/kr/pty"; + src = fetchFromGitHub { + owner = "kr"; + repo = "pty"; + rev = "67e2db24c831afa6c64fc17b4a143390674365ef"; + sha256 = "1l3z3wbb112ar9br44m8g838z0pq2gfxcp5s3ka0xvm1hjvanw2d"; + }; + } + { + root = "github.com/kr/text"; + src = fetchFromGitHub { + owner = "kr"; + repo = "text"; + rev = "6807e777504f54ad073ecef66747de158294b639"; + sha256 = "1wkszsg08zar3wgspl9sc8bdsngiwdqmg3ws4y0bh02sjx5a4698"; + }; + } + { + root = "github.com/mreiferson/go-options"; + src = fetchFromGitHub { + owner = "mreiferson"; + repo = "go-options"; + rev = "896a539cd709f4f39d787562d1583c016ce7517e"; + sha256 = "0hg0n5grcjcj5719rqchz0plp39wfk3znqxw8y354k4jwsqwmn17"; + }; + } + { + root = "github.com/mreiferson/go-snappystream"; + src = fetchFromGitHub { + owner = "mreiferson"; + repo = "go-snappystream"; + rev = "97c96e6648e99c2ce4fe7d169aa3f7368204e04d"; + sha256 = "08ylvx9r6b1fi76v6cqjvny4yqsvcqjfsg93jdrgs7hi4mxvxynn"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/servers/polipo/default.nix b/pkgs/servers/polipo/default.nix index 3e49715b94d..08ccbbd06c6 100644 --- a/pkgs/servers/polipo/default.nix +++ b/pkgs/servers/polipo/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, texinfo }: -stdenv.mkDerivation rec { +stdenv.mkDerivation rec { name = "polipo-${version}"; - version = "1.0.4.1"; + version = "1.1.1"; src = fetchurl { - url = "http://freehaven.net/~chrisd/polipo/${name}.tar.gz"; - sha256 = "1ykwkyvmdw6fsaj2hc40971pkwf60hvi9c43whijim00qvgbyvwd"; + url = "http://www.pps.univ-paris-diderot.fr/~jch/software/files/polipo/${name}.tar.gz"; + sha256 = "05g09sg9qkkhnc2mxldm1w1xkxzs2ylybkjzs28w8ydbjc3pand2"; }; buildInputs = [ texinfo ]; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { homepage = http://www.pps.jussieu.fr/~jch/software/polipo/; description = "A small and fast caching web proxy"; license = licenses.mit; - maintainers = [ maintainers.phreedom ]; + maintainers = with maintainers; [ phreedom emery ]; platforms = platforms.all; }; } \ No newline at end of file diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix index 35922b3c46f..0665222a9e0 100644 --- a/pkgs/servers/pulseaudio/default.nix +++ b/pkgs/servers/pulseaudio/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, gnum4, gdbm, libtool, glib, dbus, avahi , gconf, gtk, intltool, gettext, alsaLib, libsamplerate, libsndfile, speex , bluez, sbc, udev, libcap, json_c -, jackaudioSupport ? false, jackaudio ? null +, jackaudioSupport ? false, jack2 ? null , x11Support ? false, xlibs , useSystemd ? false, systemd ? null }: -assert jackaudioSupport -> jackaudio != null; +assert jackaudioSupport -> jack2 != null; stdenv.mkDerivation rec { name = "pulseaudio-5.0"; @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig gnum4 libtool intltool glib dbus avahi libsamplerate libsndfile speex json_c ] - ++ stdenv.lib.optional jackaudioSupport jackaudio + ++ stdenv.lib.optional jackaudioSupport jack2 ++ stdenv.lib.optionals x11Support [ xlibs.xlibs xlibs.libXtst xlibs.libXi ] ++ stdenv.lib.optional useSystemd systemd ++ stdenv.lib.optionals stdenv.isLinux [ alsaLib bluez sbc udev ]; diff --git a/pkgs/servers/restund/default.nix b/pkgs/servers/restund/default.nix index e817151e778..d6952e9700e 100644 --- a/pkgs/servers/restund/default.nix +++ b/pkgs/servers/restund/default.nix @@ -24,5 +24,9 @@ stdenv.mkDerivation rec { platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [raskin]; license = with stdenv.lib.licenses; bsd3; + inherit version; + downloadPage = "http://www.creytiv.com/pub/"; + updateWalker = true; + downloadURLRegexp = "/restund-.*[.]tar[.]"; }; } diff --git a/pkgs/servers/samba/default.nix b/pkgs/servers/samba/default.nix index ade79e2c99c..08f12d97506 100644 --- a/pkgs/servers/samba/default.nix +++ b/pkgs/servers/samba/default.nix @@ -18,11 +18,11 @@ assert useKerberos -> kerberos != null; stdenv.mkDerivation rec { - name = "samba-3.6.22"; + name = "samba-3.6.24"; src = fetchurl { - url = "http://us3.samba.org/samba/ftp/stable/${name}.tar.gz"; - sha256 = "1sny3irf1p4fjli5qa29swr3l217grg90cva35rmay48fw7g5g9h"; + url = "http://samba.org/samba/ftp/stable/${name}.tar.gz"; + sha256 = "19rln8m1k359bz6dhmlv39kzyjg7p296dz4y4mq1jwrlnw2bvl0i"; }; buildInputs = [ readline pam openldap popt iniparser libunwind fam acl cups ] diff --git a/pkgs/servers/search/elasticsearch/default.nix b/pkgs/servers/search/elasticsearch/default.nix index b227832ad73..76e416d6472 100644 --- a/pkgs/servers/search/elasticsearch/default.nix +++ b/pkgs/servers/search/elasticsearch/default.nix @@ -1,15 +1,18 @@ { stdenv, fetchurl, makeWrapper, jre, utillinux }: + +with stdenv.lib; + stdenv.mkDerivation rec { - name = "elasticsearch-1.2.1"; + name = "elasticsearch-1.2.2"; src = fetchurl { url = "https://download.elasticsearch.org/elasticsearch/elasticsearch/${name}.tar.gz"; - sha256 = "11lirxl0hb0xfd57accsgldq1adrlv9pak2520jll2sj5gg71cmj"; + sha256 = "1vpvxndcq48rcsgw2jnzdh4fwnf141hf5wjxrjs1g7p2qw0d0cy8"; }; patches = [ ./es-home.patch ]; - buildInputs = [ makeWrapper jre utillinux ]; + buildInputs = [ makeWrapper jre ] ++ optional (!stdenv.isDarwin) utillinux; installPhase = '' mkdir -p $out @@ -21,7 +24,7 @@ stdenv.mkDerivation rec { # set ES_CLASSPATH and JAVA_HOME wrapProgram $out/bin/elasticsearch \ --prefix ES_CLASSPATH : "$out/lib/${name}.jar":"$out/lib/*":"$out/lib/sigar/*" \ - --prefix PATH : "${utillinux}/bin/" \ + ${optionalString (!stdenv.isDarwin) ''--prefix PATH : "${utillinux}/bin/"''} \ --set JAVA_HOME "${jre}" wrapProgram $out/bin/elasticsearch-plugin \ --prefix ES_CLASSPATH : "$out/lib/${name}.jar":"$out/lib/*":"$out/lib/sigar/*" --set JAVA_HOME "${jre}" @@ -30,5 +33,6 @@ stdenv.mkDerivation rec { meta = { description = "Open Source, Distributed, RESTful Search Engine"; license = "ASL2.0"; + platforms = platforms.unix; }; } diff --git a/pkgs/servers/search/elasticsearch/plugins.nix b/pkgs/servers/search/elasticsearch/plugins.nix new file mode 100644 index 00000000000..c03a2feae5f --- /dev/null +++ b/pkgs/servers/search/elasticsearch/plugins.nix @@ -0,0 +1,53 @@ +{ pkgs, stdenv, fetchurl, unzip, elasticsearch }: + +with pkgs.lib; + +let + esPlugin = a@{ + pluginName, + installPhase ? '' + mkdir -p $out + ES_HOME=$out ${elasticsearch}/bin/elasticsearch-plugin --install ${pluginName} --url file://$src + '', + ... + }: + stdenv.mkDerivation (a // { + inherit installPhase; + unpackPhase = "true"; + buildInputs = [ unzip ]; + meta = a.meta // { + platforms = elasticsearch.meta.platforms; + maintainers = (a.meta.maintainers or []) ++ [ maintainers.offline ]; + }; + }); +in { + elasticsearch_river_jdbc = esPlugin rec { + name = "elasticsearch-river-jdbc-${version}"; + pluginName = "jdbc"; + version = "1.2.1.1"; + src = fetchurl { + url = "http://xbib.org/repository/org/xbib/elasticsearch/plugin/elasticsearch-river-jdbc/${version}/${name}-plugin.zip"; + sha1 = "68e7e1fdf45d0e5852b21610a84740595223ea11"; + }; + meta = { + homepage = "https://github.com/jprante/elasticsearch-river-jdbc"; + description = "Plugin to fetch data from JDBC sources for indexing into Elasticsearch"; + license = licenses.asl20; + }; + }; + + elasticsearch_analisys_lemmagen = esPlugin rec { + name = "elasticsearch-analysis-lemmagen-${version}"; + pluginName = "elasticsearch-analysis-lemmagen"; + version = "0.1"; + src = fetchurl { + url = "https://github.com/vhyza/elasticsearch-analysis-lemmagen/releases/download/v${version}/${name}-plugin.zip"; + sha256 = "bf7bf5ce3ccdd3afecd0e18cd6fce1ef56f824e41f4ef50553ae598caa5c366d"; + }; + meta = { + homepage = "https://github.com/vhyza/elasticsearch-analysis-lemmagen"; + description = "LemmaGen Analysis plugin provides jLemmaGen lemmatizer as Elasticsearch token filter"; + license = licenses.asl20; + }; + }; +} diff --git a/pkgs/servers/serfdom/default.nix b/pkgs/servers/serfdom/default.nix index 274fc89f94d..92ab3bd780a 100644 --- a/pkgs/servers/serfdom/default.nix +++ b/pkgs/servers/serfdom/default.nix @@ -1,126 +1,30 @@ -{ stdenv, fetchurl, fetchgit, fetchhg, go, lib }: +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: -let - goDeps = [ - { - dir = "github.com/hashicorp"; - name = "serf"; - rev = "c5b41a9d1d261135117a8d501d3293efade3cc74"; - sha256 = "a314d3c13fb370842a8f7c6650abfa907b51172a09c64f9184a240fab05b43df"; - fetcher = git; - } - { - dir = "github.com/armon"; - name = "go-metrics"; - rev = "e12c3591b520e819e8234bd585d592774f2b2ad5"; - sha256 = "79476efefb68876fcad7e71e76d95f4a7eece2cfcdc5a9c10f998af3178230ba"; - fetcher = git; - } - { - dir = "github.com/hashicorp"; - name = "logutils"; - rev = "8e0820fe7ac5eb2b01626b1d99df47c5449eb2d8"; - sha256 = "184lnn7x1v3xvj6zz1rg9s0252wkkd59kij2iyrrm7y80bym2jys"; - fetcher = git; - } - { - dir = "github.com/hashicorp"; - name = "memberlist"; - rev = "d5be01d1f4d75b086eba4ae808f2767c08cbbf73"; - sha256 = "4ab2b610d439e96c169d9caf9ac0e009d71d3ef9a2fd2c812870b71eb6b27dfc"; - fetcher = git; - } - { - dir = "github.com/ugorji"; - name = "go"; - rev = "71c2886f5a673a35f909803f38ece5810165097b"; - sha256 = "128853bcc5f114c300772cbce316b55e84206fa56705c5b9cc94c1693b11ee94"; - fetcher = git; - } - { - dir = "github.com/mitchellh"; - name = "cli"; - rev = "69f0b65ce53b27f729b1b807b88dc88007f41dd3"; - sha256 = "0hnnqd8vg5ca2hglkrj141ba2akdh7crl2lsrgz8d6ipw6asszx3"; - fetcher = git; - } - { - dir = "github.com/armon"; - name = "mdns"; - rev = "8be7e3ac4e941555169a99d01abcabd3c982d87a"; - sha256 = "87cd3a0ada3b094ee8fc4c4742158e0d051cde893da1ea320158a47d6254f69d"; - fetcher = git; - } - { - dir = "github.com/miekg"; - name = "dns"; - rev = "7ebb4c59b39d5984952a355086606dd91f6cfe86"; - sha256 = "8418ad2d27e607cef1dc0003471416294443e467f2de9df135e3a2ab411e2512"; - fetcher = git; - } - { - dir = "github.com/mitchellh"; - name = "mapstructure"; - rev = "57bb2fa7a7e00b26c80e4c4b0d4f15a210d94039"; - sha256 = "13lvd5vw8y6h5zl3samkrb7237kk778cky7k7ys1cm46mfd957zy"; - fetcher = git; - } - { - dir = "github.com/ryanuber"; - name = "columnize"; - rev = "d066e113d6e13232f45bda646a915dffeee7f1a4"; - sha256 = "2aaec396a223fc4b45117a595e74c0a874bd5cd9604c742b8c4747436b4721e9"; - fetcher = git; - } - { - dir = "code.google.com/p"; - name = "go.net"; - rev = "89dbba2db2d4"; - sha256 = "0168inai10nkdrz4g0rjlj8b5v34mv135v8bhyvh501vnqql50jn"; - fetcher = hg; - } - ]; - git = desc: fetchgit { url = "https://${desc.dir}/${desc.name}"; - inherit (desc) rev sha256; }; - hg = desc: fetchhg { url = "https://${desc.dir}/${desc.name}"; - tag = desc.rev; - inherit (desc) sha256; }; - createGoPathCmds = - lib.concatStrings - (map (desc: - let fetched = desc.fetcher desc; in '' - mkdir -p $GOPATH/src/${desc.dir} - ln -s ${fetched} $GOPATH/src/${desc.dir}/${desc.name} - '') goDeps); -in - stdenv.mkDerivation rec { - version = "0.5.0"; - name = "serfdom-${version}"; +stdenv.mkDerivation rec { + version = "0.6.3"; + name = "serfdom-${version}"; - src = fetchurl { - url = "https://github.com/hashicorp/serf/archive/v${version}.tar.gz"; - sha256 = "1p2cpkdx0gck1ypxc98im7gsv3275avpkizhsif3nxvl1xd8g1qp"; - }; + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; - buildInputs = [ go ]; + buildInputs = [ go ]; - buildPhase = '' - mkdir $TMPDIR/go - export GOPATH=$TMPDIR/go - ${createGoPathCmds} - go build -v -o bin/serf - ''; + buildPhase = '' + export GOPATH=$src + go build -v -o serf github.com/hashicorp/serf + ''; - installPhase = '' - ensureDir $out/bin - cp bin/serf $out/bin - ''; + installPhase = '' + ensureDir $out/bin + mv serf $out/bin/serf + ''; - meta = with stdenv.lib; { - description = "Serf is a service discovery and orchestration tool that is decentralized, highly available, and fault tolerant"; - homepage = http://www.serfdom.io/; - license = licenses.mpl20; - maintainers = [ maintainers.msackman ]; - platforms = platforms.linux; - }; - } + meta = with stdenv.lib; { + description = "Serf is a service discovery and orchestration tool that is decentralized, highly available, and fault tolerant"; + homepage = http://www.serfdom.io/; + license = licenses.mpl20; + maintainers = with maintainers; [ msackman cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/serfdom/deps.nix b/pkgs/servers/serfdom/deps.nix new file mode 100644 index 00000000000..a4b4058a711 --- /dev/null +++ b/pkgs/servers/serfdom/deps.nix @@ -0,0 +1,185 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "code.google.com/p/go.net"; + src = fetchhg { + url = "http://code.google.com/p/go.net"; + rev = "134"; + sha256 = "1jycpgrfwgkfac60zjbx6babcz7sgyn9xgy6cr3l811j6k8r2pbv"; + }; + } + { + root = "code.google.com/p/go.text"; + src = fetchhg { + url = "http://code.google.com/p/go.text"; + rev = "85"; + sha256 = "1x8h6vq9g5gbi7iiwla6dkaaqqf7wmkdm4szj7wvzlsijf2x8dwr"; + }; + } + { + root = "github.com/armon/circbuf"; + src = fetchFromGitHub { + owner = "armon"; + repo = "circbuf"; + rev = "f092b4f207b6e5cce0569056fba9e1a2735cb6cf"; + sha256 = "06kwwdwa3hskdh6ws7clj1vim80dyc3ldim8k9y5qpd30x0avn5s"; + }; + } + { + root = "github.com/armon/go-metrics"; + src = fetchFromGitHub { + owner = "armon"; + repo = "go-metrics"; + rev = "02567bbc4f518a43853d262b651a3c8257c3f141"; + sha256 = "08fk3zmw0ywmdfp2qhrpv0vrk1y97hzqczrgr3y2yip3x8sr37ar"; + }; + } + { + root = "github.com/armon/mdns"; + src = fetchFromGitHub { + owner = "armon"; + repo = "mdns"; + rev = "70462deb060d44247356ee238ebafd7699ddcffe"; + sha256 = "0xkm3d0hsixdm1yrkx9c39723kfjkb3wvrzrmx3np9ylcwn6h5p5"; + }; + } + { + root = "github.com/hashicorp/go-syslog"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "go-syslog"; + rev = "ac3963b72ac367e48b1e68a831e62b93fb69091c"; + sha256 = "1r9s1gsa4azcs05gx1179ixk7qvrkrik3v92wr4s8gwm00m0gf81"; + }; + } + { + root = "github.com/hashicorp/logutils"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "logutils"; + rev = "8e0820fe7ac5eb2b01626b1d99df47c5449eb2d8"; + sha256 = "033rbkc066g657r0dnzysigjz2bs4biiz0kmiypd139d34jvslwz"; + }; + } + { + root = "github.com/hashicorp/memberlist"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "memberlist"; + rev = "17d39b695094be943bfb98442a80b082e6b9ac47"; + sha256 = "0nvgjnwmfqhv2wvr77d2q5mq1bfw4xbpil6wgyj4fyrmhsfzrv3g"; + }; + } + { + root = "github.com/hashicorp/serf"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "serf"; + rev = "5e0771b8d61bee28986087a246f7611d6bd4a87a"; + sha256 = "0ck77ji28bvm4ahzxyyi4sm17c3fxc16k0k5mihl1nlkgdd73m8y"; + }; + } + { + root = "github.com/miekg/dns"; + src = fetchFromGitHub { + owner = "miekg"; + repo = "dns"; + rev = "fc67c4b981930a377f8a26a5a1f2c0ccd5dd1514"; + sha256 = "1csjmkx0gl34r4hmkhdbdxb0693f1p10yrjaj8f2jwli9p9sl4mg"; + }; + } + { + root = "github.com/mitchellh/cli"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "cli"; + rev = "8262fe3f76f0da53b5674eb35c8c6436430794c3"; + sha256 = "0pqkxh1q49kkxihggrfjs8174d927g4c5qqx00ggw8sqqsgrw6vn"; + }; + } + { + root = "github.com/mitchellh/mapstructure"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "mapstructure"; + rev = "6fb2c832bcac61d01212ab1d172f7a14a8585b07"; + sha256 = "0mx855lwhv0rk461wmbnbzbpkhmq5p2ipmrm5bhzimagrr1w17hw"; + }; + } + { + root = "github.com/ryanuber/columnize"; + src = fetchFromGitHub { + owner = "ryanuber"; + repo = "columnize"; + rev = "785d943a7b6886e0bb2f139a60487b823dd8d9de"; + sha256 = "1h3sxzhiwz65vf3cvclirlf6zhdr97v01dpn5cmf3m09rxxpnp3f"; + }; + } + { + root = "github.com/ugorji/go"; + src = fetchFromGitHub { + owner = "ugorji"; + repo = "go"; + rev = "71c2886f5a673a35f909803f38ece5810165097b"; + sha256 = "157f24xnkhclrjwwa1b7lmpj112ynlbf7g1cfw0c657iqny5720j"; + }; + } + { + root = "github.com/ugorji/go-msgpack"; + src = fetchFromGitHub { + owner = "ugorji"; + repo = "go-msgpack"; + rev = "75092644046c5e38257395b86ed26c702dc95b92"; + sha256 = "1bmqi16bfiqw7qhb3d5hbh0dfzhx2bbq1g15nh2pxwxckwh80x98"; + }; + } + { + root = "github.com/vmihailenco/bufio"; + src = fetchFromGitHub { + owner = "vmihailenco"; + repo = "bufio"; + rev = "24e7e48f60fc2d9e99e43c07485d9fff42051e66"; + sha256 = "0x46qnf2f15v7m0j2dcb16raxjamk5rdc7hqwgyxfr1sqmmw3983"; + }; + } + { + root = "github.com/vmihailenco/msgpack"; + src = fetchFromGitHub { + owner = "vmihailenco"; + repo = "msgpack"; + rev = "20c1b88a6c7fc5432037439f4e8c582e236fb205"; + sha256 = "1dj5scpfhgnw0yrh0w6jlrb9d03halvsv4l3wgjhazrrimdqf0q0"; + }; + } + { + root = "launchpad.net/gocheck"; + src = fetchbzr { + url = "https://launchpad.net/gocheck"; + rev = "87"; + sha256 = "1y9fa2mv61if51gpik9isls48idsdz87zkm1p3my7swjdix7fcl0"; + }; + } + { + root = "launchpad.net/mgo"; + src = fetchbzr { + url = "https://launchpad.net/mgo"; + rev = "2"; + sha256 = "0h1dxzyx5c4r4gfnmjxv92hlhjxrgx9p4g53p4fhmz6x2fdglb0x"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index d0f7f5ef3e5..1df9f6a440f 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation rec { version = "10.0.11"; src = fetchurl { - url = "https://fossies.org/linux/misc/${name}.tar.gz"; + url = "https://downloads.mariadb.org/interstitial/mariadb-${version}/source/mariadb-${version}.tar.gz"; sha256 = "1p8h06kns30rlbnzw9ddmihs7r3jhp8xlrl4r6h5d107wkcw86v3"; }; diff --git a/pkgs/servers/sql/mysql/5.5.x.nix b/pkgs/servers/sql/mysql/5.5.x.nix index 782019f8ee0..7c31bd7c582 100644 --- a/pkgs/servers/sql/mysql/5.5.x.nix +++ b/pkgs/servers/sql/mysql/5.5.x.nix @@ -11,6 +11,11 @@ stdenv.mkDerivation rec { md5 = "bf1d80c66d4822ec6036300399a33c03"; }; + preConfigure = stdenv.lib.optional stdenv.isDarwin '' + ln -s /bin/ps $TMPDIR/ps + export PATH=$PATH:$TMPDIR + ''; + buildInputs = [ cmake bison ncurses openssl readline zlib ] ++ stdenv.lib.optional stdenv.isDarwin perl; diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 7fca58f5446..1834dfd6a96 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1869,6 +1869,16 @@ let buildInputs = [pkgconfig libX11 libxkbfile ]; })) // {inherit libX11 libxkbfile ;}; + xkbprint = (stdenv.mkDerivation ((if overrides ? xkbprint then overrides.xkbprint else x: x) { + name = "xkbprint-1.0.3"; + builder = ./builder.sh; + src = fetchurl { + url = mirror://xorg/individual/app/xkbprint-1.0.3.tar.bz2; + sha256 = "1h4jb3gjrbjp79h5gcgkjvdxykcy2bmq03smpls820c8wnw6v17s"; + }; + buildInputs = [pkgconfig libX11 libxkbfile ]; + })) // {inherit libX11 libxkbfile ;}; + xkbutils = (stdenv.mkDerivation ((if overrides ? xkbutils then overrides.xkbutils else x: x) { name = "xkbutils-1.0.4"; builder = ./builder.sh; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 512bbbb9eff..e7b3a6f4ad6 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -185,3 +185,4 @@ mirror://xorg/individual/app/xvinfo-1.1.2.tar.bz2 mirror://xorg/individual/app/xwd-1.0.6.tar.bz2 mirror://xorg/individual/app/xwininfo-1.1.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/xwud-1.0.4.tar.bz2 +mirror://xorg/individual/app/xkbprint-1.0.3.tar.bz2 diff --git a/pkgs/servers/xmpp/openfire/default.nix b/pkgs/servers/xmpp/openfire/default.nix index 736517b53f1..3fb89d7a222 100644 --- a/pkgs/servers/xmpp/openfire/default.nix +++ b/pkgs/servers/xmpp/openfire/default.nix @@ -1,34 +1,25 @@ -{ stdenv, fetchurl, builderDefs, jre }: +{ stdenv, fetchurl, jre }: -with builderDefs; - let - version="3_6_3"; - localDefs = builderDefs.passthru.function (rec { - src = /* put a fetchurl here */ - fetchurl { - url = "http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_${version}.tar.gz"; - sha256 = "0ibzhmh9qw4lmx45ir1i280p30npgwnj7vrkl432kj3zi7hp79q2"; - }; +stdenv.mkDerivation rec { + name = "openfire-${version}"; + version = "3_6_3"; - buildInputs = [jre]; - configureFlags = []; + src = fetchurl { + url = "http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_${version}.tar.gz"; + sha256 = "0ibzhmh9qw4lmx45ir1i280p30npgwnj7vrkl432kj3zi7hp79q2"; + }; + + buildInputs = [ jre ]; + + installPhase = '' + sed -e 's@\(common_jvm_locations\)=.*@\1${jre}@' -i bin/openfire + cp -r . $out + rm -r $out/logs + mv $out/conf $out/conf.inst + ln -s /var/log/openfire $out/logs + ln -s /etc/openfire $out/conf + ''; - installPhase = fullDepEntry ('' - sed -e 's@\(common_jvm_locations\)=.*@\1${jre}@' -i bin/openfire - cp -r . $out - rm -r $out/logs - mv $out/conf $out/conf.inst - ln -s /var/log/openfire $out/logs - ln -s /etc/openfire $out/conf - '') - ["minInit" "doUnpack" "addInputs"]; - }); - in with localDefs; -stdenv.mkDerivation rec { - name = "openfire-"+version; - builder = writeScript (name + "-builder") - (textClosure localDefs - [ installPhase doForceShare doPropagate]); meta = { description = "XMPP server in Java"; }; |