diff --git a/pkgs/development/tools/misc/ycmd/default.nix b/pkgs/development/tools/misc/ycmd/default.nix new file mode 100644 index 000000000000..029e76e0c996 --- /dev/null +++ b/pkgs/development/tools/misc/ycmd/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchgit, cmake, python, llvmPackages, boost, pythonPackages, buildPythonPackage, makeWrapper +}: + +stdenv.mkDerivation rec { + name = "ycmd-2016-01-12"; + + src = fetchgit { + url = "git://github.com/Valloric/ycmd.git"; + rev = "f982f6251c5ff85e3abe6e862aad8bcd19e85ece"; + sha256 = "1qp3ip6ab34610rfy0x85xsjg7blfkiy025vskwk9zw6gqglf3b3"; + }; + + buildInputs = [ python cmake llvmPackages.clang boost makeWrapper ]; + + propagatedBuildInputs = with pythonPackages; [ waitress frozendict bottle ]; + + buildPhase = '' + python build.py --clang-completer --system-libclang --system-boost + ''; + + configurePhase = ":"; + + installPhase = with pythonPackages; '' + mkdir -p $out/lib/ycmd/third_party $out/bin + cp -r ycmd/ CORE_VERSION libclang.so.* ycm_client_support.so ycm_core.so $out/lib/ycmd/ + wrapProgram $out/lib/ycmd/ycmd/__main__.py \ + --prefix PYTHONPATH : "$(toPythonPath ${waitress}):$(toPythonPath ${frozendict}):$(toPythonPath ${bottle})" + ln -s $out/lib/ycmd/ycmd/__main__.py $out/bin/ycmd + ''; + + meta = { + description = "A code-completion and comprehension server"; + homepage = "https://github.com/Valloric/ycmd"; + license = stdenv.lib.licenses.gpl3; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7561a1976cf5..1c2189d899e3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6097,6 +6097,8 @@ let yacc = bison; + ycmd = callPackage ../development/tools/misc/ycmd { }; + yodl = callPackage ../development/tools/misc/yodl { }; winpdb = callPackage ../development/tools/winpdb { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 88b0eda1a077..3ca87e9d9b67 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4988,6 +4988,21 @@ in modules // { propagatedBuildInputs = with self; [ rpkg offtrac urlgrabber fedora_cert ]; }); + frozendict = buildPythonPackage rec { + name = "frozendict-0.5"; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/f/frozendict/${name}.tar.gz"; + sha256 = "0m4kg6hbadvf99if78nx01q7qnbyhdw3x4znl5dasgciyi54432n"; + }; + + meta = { + homepage = https://github.com/slezica/python-frozendict; + description = "An immutable dictionary"; + license = stdenv.lib.licenses.mit; + }; + }; + fudge = buildPythonPackage rec { name = "fudge-0.9.6"; src = pkgs.fetchurl {