Name | blstatus JSON |
Version |
0.2
JSON |
| download |
home_page | None |
Summary | A status monitor for DWM or other window managers that use WM_NAME |
upload_time | 2024-03-23 10:11:46 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.8 |
license | MIT License Copyright (c) 2022 Brenton Leighton Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
keywords |
dwm
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# blstatus
A status monitor for [DWM](https://dwm.suckless.org/) (or any window manager that uses WM_NAME to fill a status bar).
Compared to [slstatus](https://tools.suckless.org/slstatus/), blstatus is capable of displaying more information, and it also updates network, audio volume, and battery information asynchronously, rather than using polling.

## Installation
blstatus has the following dependencies:
- python3-dev
- libcairo2-dev
- libgirepository1.0-dev
And the following dependencies available on PyPI:
- apscheduler
- asyncio-glib
- pulsectl-asyncio
- pydbus
- xlib
The package can be installed using [pipx](https://pipx.pypa.io/stable/installation/), e.g.:
```bash
sudo apt install pipx python3-dev libcairo2-dev libgirepository1.0-dev
pipx install blstatus
```
## Configuration
blstatus can be configured with a file located at `~/.config/blstatus/config.ini`, e.g.
```ini
[general]
# Text to use between components
# Needs to be quoted if spaces (or a quote character) are used
spacer = ' | '
# Enable if using statuscmd (https://dwm.suckless.org/patches/statuscmd/)
enable_signal_text = false
[date_time]
# Format string for the date command
# Must be quoted and % must be doubled
format = '+"%%Y-%%m-%%d %%A %%-I:%%M %%P"'
[memory]
# Interval in seconds between updating memory status
interval = 2.0
# Enable using nvidia-smi to get GPU memory usage
enable_gpu = false
[volume]
# Dictionary to map a PulseAudio sink/source name to an abbreviation
# If the end of a PulseAudio device name matches a key the value will be used
# If a PulseAudio device name doesn't match anything in the dictionary, source_sink_unknown_abbreviation is used
# Must be a single line
source_sink_abbreviations = { 'analog-stereo': 'A', 'hdmi-stereo': 'H', 'a2dp_sink': 'B', 'handsfree_head_unit': 'B' }
# Abbreviation to use if a sink/source name isn't known
source_sink_unknown_abbreviation = 'U'
```
To determine the key part of `source_sink_abbreviations`, PulseAudio sink/source names can be printed with:
```python
import pulsectl
pulse = pulsectl.Pulse()
print([sink.name for sink in pulse.sink_list()])
print([source.name for source in pulse.source_list()])
```
Raw data
{
"_id": null,
"home_page": null,
"name": "blstatus",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "Brenton Leighton <12228142+brenton-leighton@users.noreply.github.com>",
"keywords": "dwm",
"author": null,
"author_email": "Brenton Leighton <12228142+brenton-leighton@users.noreply.github.com>",
"download_url": "https://files.pythonhosted.org/packages/af/02/5546bed37f22c7678a848d67f80964e4586364dbd81f383d7d34f671b738/blstatus-0.2.tar.gz",
"platform": null,
"description": "# blstatus\n\nA status monitor for [DWM](https://dwm.suckless.org/) (or any window manager that uses WM_NAME to fill a status bar).\nCompared to [slstatus](https://tools.suckless.org/slstatus/), blstatus is capable of displaying more information, and it also updates network, audio volume, and battery information asynchronously, rather than using polling.\n\n\n\n## Installation\n\nblstatus has the following dependencies:\n\n- python3-dev\n- libcairo2-dev\n- libgirepository1.0-dev\n\nAnd the following dependencies available on PyPI:\n\n- apscheduler\n- asyncio-glib\n- pulsectl-asyncio\n- pydbus\n- xlib\n\nThe package can be installed using [pipx](https://pipx.pypa.io/stable/installation/), e.g.:\n\n```bash\nsudo apt install pipx python3-dev libcairo2-dev libgirepository1.0-dev\npipx install blstatus\n```\n\n## Configuration\n\nblstatus can be configured with a file located at `~/.config/blstatus/config.ini`, e.g.\n\n```ini\n[general]\n# Text to use between components\n# Needs to be quoted if spaces (or a quote character) are used\nspacer = ' | '\n\n# Enable if using statuscmd (https://dwm.suckless.org/patches/statuscmd/)\nenable_signal_text = false\n\n[date_time]\n# Format string for the date command\n# Must be quoted and % must be doubled\nformat = '+\"%%Y-%%m-%%d %%A %%-I:%%M %%P\"'\n\n[memory]\n# Interval in seconds between updating memory status\ninterval = 2.0\n\n# Enable using nvidia-smi to get GPU memory usage\nenable_gpu = false\n\n[volume]\n# Dictionary to map a PulseAudio sink/source name to an abbreviation\n# If the end of a PulseAudio device name matches a key the value will be used\n# If a PulseAudio device name doesn't match anything in the dictionary, source_sink_unknown_abbreviation is used\n# Must be a single line\nsource_sink_abbreviations = { 'analog-stereo': 'A', 'hdmi-stereo': 'H', 'a2dp_sink': 'B', 'handsfree_head_unit': 'B' }\n\n# Abbreviation to use if a sink/source name isn't known\nsource_sink_unknown_abbreviation = 'U'\n```\n\nTo determine the key part of `source_sink_abbreviations`, PulseAudio sink/source names can be printed with:\n\n```python\nimport pulsectl\n\npulse = pulsectl.Pulse()\nprint([sink.name for sink in pulse.sink_list()])\nprint([source.name for source in pulse.source_list()])\n```\n",
"bugtrack_url": null,
"license": "MIT License Copyright (c) 2022 Brenton Leighton Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
"summary": "A status monitor for DWM or other window managers that use WM_NAME",
"version": "0.2",
"project_urls": {
"Homepage": "https://github.com/brenton-leighton/blstatus"
},
"split_keywords": [
"dwm"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3583280cf24c8b3e104065b8fc62de17638ee8adcb6cb6c6fe7bdff9402edc1f",
"md5": "2e4ae503e7a1dcaf6bcdfe1da6f90183",
"sha256": "26ed053d345ae6ce521254b7cd70d8e65d3cdc49725e74442aa5fbdf981cef99"
},
"downloads": -1,
"filename": "blstatus-0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2e4ae503e7a1dcaf6bcdfe1da6f90183",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 12048,
"upload_time": "2024-03-23T10:11:44",
"upload_time_iso_8601": "2024-03-23T10:11:44.613508Z",
"url": "https://files.pythonhosted.org/packages/35/83/280cf24c8b3e104065b8fc62de17638ee8adcb6cb6c6fe7bdff9402edc1f/blstatus-0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "af025546bed37f22c7678a848d67f80964e4586364dbd81f383d7d34f671b738",
"md5": "b4007c3a98861d1e56898e9c3577dbc9",
"sha256": "b0d3252393a04b914bc82de1762e3cd865926f3f8cad565425f0b5bc6913661e"
},
"downloads": -1,
"filename": "blstatus-0.2.tar.gz",
"has_sig": false,
"md5_digest": "b4007c3a98861d1e56898e9c3577dbc9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 10222,
"upload_time": "2024-03-23T10:11:46",
"upload_time_iso_8601": "2024-03-23T10:11:46.970379Z",
"url": "https://files.pythonhosted.org/packages/af/02/5546bed37f22c7678a848d67f80964e4586364dbd81f383d7d34f671b738/blstatus-0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-23 10:11:46",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "brenton-leighton",
"github_project": "blstatus",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "blstatus"
}