3.5 KiB
A widget for the Awesome Window Manager to monitor the network with Connman
This widget uses the
connman_dbus
library.
Requirements
In addition to the requirements listed in the rockspec
file, you will need
the Awesome Window Manager
and Connman (for more information about this, see the
connman_dbus
documentation).
Installation
Probably, the easiest way to install this widget is to use luarocks
:
luarocks install connman_widget
You can use the --local
option if you don't want or can't install
it system-wide
This will ensure that all its dependencies are installed.
Note that if you install with --local
you will have to make sure that the
LUA_PATH
environment variable includes the local luarocks path. This can be
achieved by eval
ing the command luarocks path --bin
before Awesome is
started.
For example, if you start Awesome from the Linux console (e.g. xinit awesome
) and you use zsh
, you can add the following lines to your
~/.zprofile
:
if (( $+commands[luarocks] )); then
eval `luarocks path --bin`
fi
If you use bash
, you can add the following lines to your ~/.bash_profile
:
if [[ -n "`which luarocks 2>/dev/null`" ]]; then
eval `luarocks path --bin`
fi
If you use
an X Display Manager you will
need to do what explained above in your ~/.xprofile
or ~/.xinitrc
. See the
documentation of your display manager of choice for more information.
Configuration
The widget displays network icons that are searched in the folders defined
in the table beautiful.connman_icon_theme_dirs
with extensions defined
in the table beautiful.connman_icon_extensions
.
The default is to look into "/usr/share/icons/Adwaita/scalable/devices/"
and "/usr/share/icons/Adwaita/scalable/status/"
for
icons whose extension is "svg"
. Note that the directory paths must end
with a slash and that the extensions must not contain a dot.
The icons are searched using Awesome's
awful.util.geticonpath
function.
Depending on your network devices, you may need some or all of the icons
whose name starts with network-
.
You can specify a GUI client to be launched when the widget is right-clicked.
This can be done by changing the gui_client
field of the widget. A list
of
Desktop clients is also available on the Arch wiki.
Mouse controls
When the widget is focused:
- Right button: launches GUI client (defined by the
gui_client
field)
Tooltip
The tooltip shows the currently connected network, its status and - if applicable - the signal strength.
Usage
Add the following to your ~/.config/awesome/rc.lua
:
Require the module:
-- require *after* `beautiful.init` or the theme will be inconsistent!
local connman = require("connman_widget")
-- set the GUI client.
connman.gui_client = "wicd"
Add the widget to your layout:
- Awesome 4.x
-- Add widgets to the wibox
s.mywibox:setup {
-- more setup
{ -- Right widgets
layout = wibox.layout.fixed.horizontal,
wibox.widget.systray(),
connman, -- <- connman widget
mytextclock,
s.mylayoutbox,
},
}
- Awesome 3.x
right_layout:add(connman)
Limitations
Currently, only wired (ethernet) and WiFi connections are supported.