1{ stdenv
2, buildPythonPackage
3, fetchPypi
4, fetchpatch
5, requests
6, pytz
7, tzlocal
8
9, file
10, acpi
11, coreutils
12, alsaUtils
13, i3
14, procps
15, lm_sensors
16, libnotify
17, xorg
18}:
19
20buildPythonPackage rec {
21 pname = "py3status";
22 version = "3.16";
23
24 src = fetchPypi {
25 inherit pname version;
26 sha256 = "1xrfph277bgjln3jbpzpgkhxad04fjvj7s3xfil42q1sxi4s3q3g";
27 };
28
29 doCheck = false;
30 propagatedBuildInputs = [ pytz requests tzlocal ];
31 buildInputs = [ file ];
32 prePatch = ''
33 sed -i -e "s|'file|'${file}/bin/file|" py3status/parse_config.py
34 sed -i -e "s|\[\"acpi\"|\[\"${acpi}/bin/acpi\"|" py3status/modules/battery_level.py
35 sed -i -e "s|notify-send|${libnotify}/bin/notify-send|" py3status/modules/battery_level.py
36 sed -i -e "s|/usr/bin/whoami|${coreutils}/bin/whoami|" py3status/modules/external_script.py
37 sed -i -e "s|'amixer|'${alsaUtils}/bin/amixer|" py3status/modules/volume_status.py
38 sed -i -e "s|'i3-nagbar|'${i3}/bin/i3-nagbar|" py3status/modules/pomodoro.py
39 sed -i -e "s|'free|'${procps}/bin/free|" py3status/modules/sysdata.py
40 sed -i -e "s|'sensors|'${lm_sensors}/bin/sensors|" py3status/modules/sysdata.py
41 sed -i -e "s|'setxkbmap|'${xorg.setxkbmap}/bin/setxkbmap|" py3status/modules/keyboard_layout.py
42 sed -i -e "s|'xset|'${xorg.xset}/bin/xset|" py3status/modules/keyboard_layout.py
43 '';
44
45 meta = with stdenv.lib; {
46 description = "Extensible i3status wrapper";
47 license = licenses.bsd3;
48 homepage = https://github.com/ultrabug/py3status;
49 maintainers = with maintainers; [ garbas ];
50 };
51}