1{ lib
2, fetchFromGitHub
3, python
4, buildPythonPackage
5, socat
6, psutil
7, hglib
8, pygit2
9, pyuv
10, i3ipc
11}:
12
13# TODO: bzr support is missing because nixpkgs switched to `breezy`
14
15buildPythonPackage rec {
16 version = "2.8.1";
17 pname = "powerline";
18
19 src = fetchFromGitHub {
20 owner = pname;
21 repo = pname;
22 rev = version;
23 sha256 = "0xscckcbw75pbcl4546ndrjs4682pn2sqqrd6qvqm0s6zswg7a0y";
24 };
25
26 propagatedBuildInputs = [
27 socat
28 psutil
29 hglib
30 pygit2
31 pyuv
32 i3ipc
33 ];
34
35 # tests are travis-specific
36 doCheck = false;
37
38 postInstall = ''
39 install -dm755 "$out/share/fonts/OTF/"
40 install -dm755 "$out/etc/fonts/conf.d"
41 install -m644 "font/PowerlineSymbols.otf" "$out/share/fonts/OTF/PowerlineSymbols.otf"
42 install -m644 "font/10-powerline-symbols.conf" "$out/etc/fonts/conf.d/10-powerline-symbols.conf"
43
44 cp -ra powerline/bindings/{bash,fish,shell,tcsh,tmux,vim,zsh} $out/share/
45 rm $out/share/*/*.py
46 '';
47
48 meta = {
49 homepage = "https://github.com/powerline/powerline";
50 description = "The ultimate statusline/prompt utility";
51 license = lib.licenses.mit;
52 };
53}