salt: init at 2015.8.8

Also init salttesting at 2015.7.10 as a build dependency.

+90
+51
pkgs/tools/admin/salt/default.nix
··· 1 + { 2 + stdenv, fetchurl, pythonPackages, openssl, 3 + 4 + # Many Salt modules require various Python modules to be installed, 5 + # passing them in this array enables Salt to find them. 6 + extraInputs ? [] 7 + }: 8 + 9 + pythonPackages.buildPythonApplication rec { 10 + name = "salt-${version}"; 11 + version = "2015.8.8"; 12 + 13 + disabled = pythonPackages.isPy3k; 14 + 15 + src = fetchurl { 16 + url = "https://pypi.python.org/packages/source/s/salt/${name}.tar.gz"; 17 + sha256 = "1xcfcs50pyammb60myph4f8bi2r6iwkxwsnnhrjwvkv2ymxwxv5j"; 18 + }; 19 + 20 + propagatedBuildInputs = with pythonPackages; [ 21 + futures 22 + jinja2 23 + markupsafe 24 + msgpack 25 + pycrypto 26 + pyyaml 27 + pyzmq 28 + requests 29 + salttesting 30 + tornado 31 + ] ++ extraInputs; 32 + 33 + patches = [ ./fix-libcrypto-loading.patch ]; 34 + 35 + postPatch = '' 36 + substituteInPlace "salt/utils/rsax931.py" \ 37 + --subst-var-by "libcrypto" "${openssl}/lib/libcrypto.so" 38 + ''; 39 + 40 + # The tests fail due to socket path length limits at the very least; 41 + # possibly there are more issues but I didn't leave the test suite running 42 + # as is it rather long. 43 + doCheck = false; 44 + 45 + meta = with stdenv.lib; { 46 + homepage = https://saltstack.com/; 47 + description = "Portable, distributed, remote execution and configuration management system"; 48 + maintainers = with maintainers; [ aneeshusa ]; 49 + license = licenses.asl20; 50 + }; 51 + }
+11
pkgs/tools/admin/salt/fix-libcrypto-loading.patch
··· 1 + diff --git a/salt/utils/rsax931.py b/salt/utils/rsax931.py 2 + index 9eb1f4a..d764f7a 100644 3 + --- a/salt/utils/rsax931.py 4 + +++ b/salt/utils/rsax931.py 5 + @@ -36,7 +36,7 @@ def _load_libcrypto(): 6 + 'libcrypto.so*')) 7 + lib = lib[0] if len(lib) > 0 else None 8 + if lib: 9 + - return cdll.LoadLibrary(lib) 10 + + return cdll.LoadLibrary('@libcrypto@') 11 + raise OSError('Cannot locate OpenSSL libcrypto')
+24
pkgs/tools/admin/salt/testing.nix
··· 1 + { stdenv, fetchurl, pythonPackages }: 2 + 3 + pythonPackages.buildPythonApplication rec { 4 + name = "SaltTesting-${version}"; 5 + version = "2015.7.10"; 6 + 7 + disabled = pythonPackages.isPy3k; 8 + 9 + propagatedBuildInputs = with pythonPackages; [ 10 + six 11 + ]; 12 + 13 + src = fetchurl { 14 + url = "https://pypi.python.org/packages/source/S/SaltTesting/${name}.tar.gz"; 15 + sha256 = "0p0y8kb77pis18rcig1kf9dnns4bnfa3mr91q40lq4mw63l1b34h"; 16 + }; 17 + 18 + meta = with stdenv.lib; { 19 + homepage = https://github.com/saltstack/salt-testing; 20 + description = "Common testing tools used in the Salt Stack projects"; 21 + maintainers = with maintainers; [ aneeshusa ]; 22 + license = licenses.asl20; 23 + }; 24 + }
+4
pkgs/top-level/python-packages.nix
··· 20299 20299 }; 20300 20300 }; 20301 20301 20302 + salt = callPackage ../tools/admin/salt {}; 20303 + 20304 + salttesting = callPackage ../tools/admin/salt/testing.nix {}; 20305 + 20302 20306 sandboxlib = buildPythonPackage rec { 20303 20307 name = "sandboxlib-${version}"; 20304 20308 version = "0.31";