1{ stdenv, fetchFromGitHub, python3Packages, glibcLocales, coreutils }:
2
3python3Packages.buildPythonApplication rec {
4 name = "xonsh-${version}";
5 version = "0.6.8";
6
7 src = fetchFromGitHub {
8 owner = "scopatz";
9 repo = "xonsh";
10 rev = version;
11 sha256= "1a74xpww7k432b2z44388rl31nqvckn2q3fswci04f48698hzs5l";
12 };
13
14 LC_ALL = "en_US.UTF-8";
15 postPatch = ''
16 rm xonsh/winutils.py
17
18 sed -ie "s|/bin/ls|${coreutils}/bin/ls|" tests/test_execer.py
19 sed -ie 's|/usr/bin/env|${coreutils}/bin/env|' scripts/xon.sh
20
21 patchShebangs .
22 '';
23
24 checkPhase = ''
25 HOME=$TMPDIR XONSH_INTERACTIVE=0 \
26 pytest \
27 -k 'not test_man_completion and not test_printfile and not test_sourcefile and not test_printname ' \
28 tests
29 '';
30
31 checkInputs = with python3Packages; [ pytest glibcLocales ];
32
33 propagatedBuildInputs = with python3Packages; [ ply prompt_toolkit ];
34
35 meta = with stdenv.lib; {
36 description = "A Python-ish, BASHwards-compatible shell";
37 homepage = http://xon.sh/;
38 license = licenses.bsd3;
39 maintainers = with maintainers; [ spwhitt garbas vrthra ];
40 platforms = platforms.all;
41 };
42
43 passthru = {
44 shellPath = "/bin/xonsh";
45 };
46}