Commit graph

1628 commits

Author SHA1 Message Date
Willem van de Krol
4eb054792e
module/niri-workspaces: fix crash when monitor off
The niri-workspaces module would crash if niri's event stream produced
a `WorkspaceChanged` event containing a workspace with no output,
which can occur if the monitor is turned off.  Update the response
parser to handle this situation.
2025-03-25 19:34:03 +01:00
Daniel Eklöf
43e1944607
Merge branch 'mpris-fixes' 2025-03-20 09:00:03 +01:00
haruInDisguise
ca0f565237 module_mpris: Refactoring + Fixed mutex usage
- Addressed inconsistens variable naming and removed redundant code.
- Mutex locks are now used correctly.
- The context struct now references the modules config, making config
  access less awkward
2025-03-18 13:56:08 +01:00
haruInDisguise
dfa0970b75 module_mpris: Fixed multi threading issues regarding 'identity_list'
This addresses changes requested by @dnkl
2025-03-10 13:36:25 +01:00
haruInDisguise
dcbb0f88ae module_mpris: Cleanup
Fixed inconsistent variable naming/debug logging
2025-03-10 11:34:29 +01:00
haruInDisguise
6a97b364a0 module_mpris: Fixed inconsistent string validation checks
This addresses changes requested by @mathstuf
2025-03-10 11:13:17 +01:00
Ben Boeckel
87c74d54b7
meson: guard the full-conf-good test by the plugins it expects 2025-03-10 07:57:47 +01:00
haruInDisguise
0bcde5c453 module_mpris: Fixed memory leak
The identity list now uses tlllist and is deallocated properly
2025-03-10 01:36:26 +01:00
Ben Boeckel
56467d0ba3 meson: require 0.60.0
This introduces dependencies with multiple names which is used for the
`sdbus_library` dependency of the `mpris` module.
2025-03-10 01:24:55 +01:00
Ben Boeckel
7e76d53c0a modules/mpris: fix dependency search
Move dependency discovery to be with other module dependency searches.
Also only define the `sdbus` dependency if the module is enabled.

The `mpris` module was always being compiled because the `sdbus`
dependency always existed. Instead, check for the external
dependency's status and create the `sdbus` bridge dependency only when
necessary.
2025-03-10 01:24:54 +01:00
haruInDisguise
dcf936fd9b module_mpris: Fixed 'use after free' 2025-03-10 00:32:14 +01:00
haruInDisguise
e423776000 module_mpris: Added 'query-timeout' option
This enables us to configure the communication timeout
with the dbus daemon.
2025-03-09 23:02:59 +01:00
Daniel Eklöf
e68ed8d843
module: mpris: mark debug-only variables with attribute unused
Fixes release builds
2025-03-05 08:41:04 +01:00
haruInDisguise
c27de56bea
Added 'MPRIS' module
This commit adds the ability to display status information for MPRIS
compatible music players.

Closes #53
2025-03-05 08:37:02 +01:00
Nicholas Sudsgaard
b5450c3918
modules/i3: Add unused attribute to focused
This variable is only used in assert() which expands to nothing in
release builds. Adding the unused attribute prevents the compiler from
throwing an error (-Wunused-but-set-variable) when building.
2025-03-05 08:25:17 +01:00
Nicholas Sudsgaard
5a515eae99
bar/wayland: Add unused attribute to count
This variable is only used in LOG_DBG which expands to nothing by
default. Adding the unused attribute prevents the compiler from throwing
an error (-Wunused-but-set-variable) when building.
2025-03-05 08:25:17 +01:00
Daniel Eklöf
b486088f77
examples: codespell: re-using -> reusing 2025-03-05 08:21:54 +01:00
Daniel Eklöf
a242d3d569
ci: sr.ht: skip codespell (this is done in woodpecker) 2025-03-05 08:21:03 +01:00
Daniel Eklöf
2eb1cda733
changelog: pipewire: spacing attributes 2025-03-05 08:19:29 +01:00
Ralph Torres
21f374d2eb module/pipewire: add spacing config 2025-02-24 04:59:37 +00: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
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
bagnaram
4826a52306
string like operation 2024-09-16 10:39:12 -05: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
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