1{ lib
2, buildPythonPackage
3, acpi
4, alsa-utils
5, coreutils
6, dbus-python
7, fetchPypi
8, file
9, i3
10, i3ipc
11, libnotify
12, lm_sensors
13, procps
14, pydbus
15, pygobject3
16, pyserial
17, pytz
18, requests
19, setuptools
20, tzlocal
21, xorg
22}:
23
24buildPythonPackage rec {
25 pname = "py3status";
26 version = "3.50";
27
28 src = fetchPypi {
29 inherit pname version;
30 hash = "sha256-LUFLc7GNEoPIAsTQDhVTt0/NqhwaZHBRLoHF+2nqTUg=";
31 };
32
33 propagatedBuildInputs = [
34 pytz
35 requests
36 tzlocal
37 i3ipc
38 pydbus
39 pygobject3
40 pyserial
41 setuptools
42 dbus-python
43 file
44 ];
45
46 prePatch = ''
47 sed -i -e "s|'file|'${file}/bin/file|" py3status/parse_config.py
48 sed -i -e "s|\[\"acpi\"|\[\"${acpi}/bin/acpi\"|" py3status/modules/battery_level.py
49 sed -i -e "s|notify-send|${libnotify}/bin/notify-send|" py3status/modules/battery_level.py
50 sed -i -e "s|/usr/bin/whoami|${coreutils}/bin/whoami|" py3status/modules/external_script.py
51 sed -i -e "s|'amixer|'${alsa-utils}/bin/amixer|" py3status/modules/volume_status.py
52 sed -i -e "s|'i3-nagbar|'${i3}/bin/i3-nagbar|" py3status/modules/pomodoro.py
53 sed -i -e "s|'free|'${procps}/bin/free|" py3status/modules/sysdata.py
54 sed -i -e "s|'sensors|'${lm_sensors}/bin/sensors|" py3status/modules/sysdata.py
55 sed -i -e "s|'setxkbmap|'${xorg.setxkbmap}/bin/setxkbmap|" py3status/modules/keyboard_layout.py
56 sed -i -e "s|'xset|'${xorg.xset}/bin/xset|" py3status/modules/keyboard_layout.py
57 '';
58
59 doCheck = false;
60
61 meta = with lib; {
62 description = "Extensible i3status wrapper";
63 homepage = "https://github.com/ultrabug/py3status";
64 changelog = "https://github.com/ultrabug/py3status/blob/${version}/CHANGELOG";
65 license = licenses.bsd3;
66 maintainers = with maintainers; [ ];
67 };
68}