Commit graph

1624 commits

Author SHA1 Message Date
haruInDisguise
6fea536354 Merge remote-tracking branch 'origin/master' into module_mpris 2025-01-25 21:09:41 +01:00
Daniel Eklöf
fc24ea225d
changelog: fix ref (again) for #405 - the issue number is #404 2025-01-01 13:57:32 +01:00
Daniel Eklöf
e1f7c0292f
changelog: fix ref for #405 2025-01-01 13:52:52 +01:00
vova
d746d12f6a
add niri-workspaces and niri-language modules 2025-01-01 13:51:25 +01:00
Ben Boeckel
61d082c802
typos: fix some typos 2025-01-01 13:49:32 +01:00
Ben Boeckel
57711f0dbe mpd: support the single flag
This flag indicates that `mpd` will automatically stop after the
current song is played.
2024-12-28 21:04:54 +01:00
Alexey Yerin
b15714b38a pipewire: Improve handling of node switching
When switching to a node that has a missing property, yambar didn't
reset its internal state to the default value, causing outdated
information to be displayed.
2024-11-27 00:03:12 +03:00
haruInDisguise
c79d8da397 Merge branch 'module_mpris' of https://codeberg.org/haruInDisguise/yambar into module_mpris 2024-11-18 15:28:43 +01:00
haruInDisguise
0d7a05af55 Applied suggestions by 'nemo' and drop 'basu' subproject 2024-11-17 23:28:31 +01:00
Daniel Eklöf
3e0083c9f2
module/removables: no need to open+fdopen, just do fopen() 2024-10-23 09:40:06 +02:00
Daniel Eklöf
a367895dc6
Open sockets, files etc with FD_CLOEXEC 2024-10-23 09:36:59 +02:00
Mathias Stærk
650d1f13f9
docs: fix typo in example 2024-10-08 15:42:03 +02:00
Daniel Eklöf
e1b6a78f22
doc: particles: remove trailing spaces 2024-10-02 08:11:02 +02:00
Daniel Eklöf
20d48a753b
particle/map: code style 2024-10-02 08:10:53 +02:00
Daniel Eklöf
37ecc251a4
changelog: line-wrap 2024-10-02 08:10:30 +02:00
haruInDisguise
d6067f6057 module/mpris: Updated manpage and fixed a typo 2024-09-18 15:54:14 +02:00
haruInDisguise
b55d5a6739 modules/mpris: Moved code over to 'sd-bus'
- Ported d-bus specific code from 'libdbus' to 'sd-bus'
- 'sd_bus' has been added to mesons dependencies. If systemd (>=221) is
  not installed, we fall back to [basu](https://git.sr.ht/~emersion/basu)
  v2.1
- Fixed a memory leak upon metadata change
2024-09-18 14:55:31 +02:00
bagnaram
4826a52306
string like operation 2024-09-16 10:39:12 -05:00
haruInDisguise
8415d40988 modules/mpris: Fixed progress bar not dispalying progress 2024-09-12 17:52:51 +02:00
Daniel Eklöf
0f47cbb889
changelog: i3/sway: output tag 2024-09-07 08:35:58 +02:00
Daniel Eklöf
c3f7fe013d
doc: i3/sway: add 'output' to tag list 2024-09-07 08:35:39 +02:00
Daniel Eklöf
b81e41c3c4
module/i3: add 'output' tag
This allows bars to render workspaces differently, depending on which
output the workspace is on:

    - map:
      default: ...
      conditions:
        output == DP-1:
          ...
2024-09-05 11:56:10 +02:00
Daniel Eklöf
060586dbbe
tag: remove the :b formatter
Superseded by /N. Removing since a) it's no longer needed, and b) its
name is not consistent with the other kb/mb/gb formatters.
2024-09-05 08:23:47 +02:00
Daniel Eklöf
c80bae7604
changelog: /N tag formatter 2024-09-05 08:20:59 +02:00
Zhong Jianxin
311c481bfe
tag: add '/N' formatter 2024-09-05 08:19:28 +02:00
Zhong Jianxin
9498d7e445
tag: combine FMT_*BYTE into one FMT_DIVIDE 2024-09-05 08:19:28 +02:00
Daniel Eklöf
2d651d1c0e
changelog: bar position in multi-monitor setups, with location=bottom 2024-09-05 08:16:25 +02:00
fraktal
1b2dee55ef fix bar Y position in case of multi-monitor setups with mixed resolutions 2024-09-04 15:33:25 +02:00
haruInDisguise
5636977a52 modules/mpris: Added support for multiple clients
This module now supports multiple MPRIS clients and displays the
status fo the most recently active one.
I've also removed any atempts at supporting incomplete/incorrect MPRIS
implementations. The entire update cycle is now completely event
based.
This also means that MPRIS clients must start up after yambar to be
recognized.
2024-09-02 15:52:27 +02:00
haruInDisguise
240b8b16e7 modules/mpris: fix: 'position' property now updates on metadata change
Not updating the position upon metadata change could result in a crash
due to the progress-bar particle begin initialized with invalid
arguments.
2024-08-31 02:27:01 +02:00
haruInDisguise
f5d7e5c227 modules/mpris.c: codespell: fixed typo 2024-08-29 12:05:27 +02:00
haruInDisguise
e04024a16b module/mpris: Added a man page 2024-08-29 11:55:01 +02:00
haruInDisguise
0d8ef94921 Merge branch 'master' into module_mpris 2024-08-28 23:34:09 +00:00
haruInDisguise
0a91025a1c modules/mpris: Fixed playback position
The playback position properly handles playing/pausing/seeking
2024-08-28 23:22:29 +02:00
haruInDisguise
eeeb33aee1 modules/mpris: Bugfixes and restructuring
- The 'update_status_from_message()' function now properly parses all
  changed properties, instead of only the first one.
- Implemented support for the 'Seekd' signal
2024-08-25 21:45:16 +02:00
haruInDisguise
63199c1378 modules/mpris: Major Update. See description
- Added support for signals and therefore the ability to listen
  for updates to the internal state, without having to query it
  manually every update cycle
- The entire implementation recieved various changes all across the
  codebase.
2024-08-24 21:06:28 +02:00
Daniel Eklöf
700bf5b28c
tag: add 'b' formatter
Divides the tag's decimal value by 8.

Closes #392
2024-08-20 14:34:45 +02:00
Daniel Eklöf
f8ba887dcd
readme: repology: use four columns 2024-08-20 09:11:17 +02:00
Daniel Eklöf
887e770202
doc: network: update example
Only display Ethernet and WLAN devices (not loopback, bridges etc).
2024-08-20 07:40:09 +02:00
Daniel Eklöf
54902f46ab
module: network: hardcode type to "wlan" when we see NL80211_CMD_NEW_INTERFACE
Wlan interfaces apparently report themselves as ARPHRD_ETHER in their
ifinfomsg struct (despite there being a ARPHRD_IEEE80211 type...).

"Fix" by hardcoding the type to "wlan" when we receive a
NL80211_CMD_NEW_INTERFACE message.
2024-08-20 07:40:08 +02:00
Daniel Eklöf
699c563051
module: network: add 'kind' tag
The tag maps to the IFLA_INFO_KIND (part of the IFLA_LINKINFO)
netlink attribute.

This attribute is only available on virtual interfaces. Examples of
valid values are:

* bond
* bridge
* gre
* tun
* veth
2024-08-20 07:40:08 +02:00
Daniel Eklöf
a5ae61b5df
module: network: add 'type` tag
This tag maps to the ifinfomsg->ifi_type member, which is set to one
of the ARPHRD_xyz values, defined in linux/if_arp.h.

There's a *ton* of them, and we can't possibly add a string mapping
for _all_ of them, so for now, set to one of:

* loopback
* ether
* wlan
* ARPHRD_NNN, where N is a number
2024-08-20 07:39:59 +02:00
Daniel Eklöf
568eb1140f
modules/mpd: fix reconnect when we're not using inotify
When we're not able to use inotify, we rely on polling. However, we
never detected poll() timeouts, which meant we never re-attempted to
reconnect to MPD.

Maybe #394
2024-08-20 07:34:46 +02:00
Daniel Eklöf
3e0a65f185
meson: fix misdetection of memfd_create() 2024-08-07 17:27:26 +02:00
Daniel Eklöf
1a323c6d21
log: respect the NO_COLOR environment variable
http://no-color.org/
2024-07-18 08:31:46 +02:00
haruInDisguise
32ab5b9309 module/mpris: Improved error handeling 2024-07-06 10:32:13 +02:00
haruInDisguise
1b8962d296 Added 'MPRIS' module
This commit adds the ability to display status information for MPRIS
compatible music players.
I've adapted most of the naming conventions (and some code) from the
MPD module.
2024-07-05 23:22:20 +02:00
Daniel Eklöf
739dc30323
changelog: env var substitution: fix issue reference
Reference the issue, not the PR.
2024-06-09 10:12:32 +02:00
Daniel Eklöf
8422e7e0b1
doc: yambar(5): remove trailing whitespace 2024-06-09 10:12:23 +02:00
Daniel Eklöf
9cc5e0f7a7
module/network: plug memory leak
Free the 'ifaces' list, not just its contents.
2024-06-09 10:08:38 +02:00