All Projects → pltanton → Net_widgets

pltanton / Net_widgets

Licence: mit
Network widgets for Awesome WM

Programming Languages

lua
6591 projects

Projects that are alternatives of or similar to Net widgets

awesome
Configs for awesomeWM
Stars: ✭ 42 (-59.22%)
Mutual labels:  widget, awesomewm
keyboard layout
Keyboard switcher for Awesome WM with additional layouts
Stars: ✭ 48 (-53.4%)
Mutual labels:  widget, awesomewm
awesome-power widget
A Power widget for the Awesome Window Manager
Stars: ✭ 25 (-75.73%)
Mutual labels:  widget, awesomewm
Awesome Pulseaudio widget
PulseAudio widgtet for the Awesome Window Manager that uses DBus
Stars: ✭ 29 (-71.84%)
Mutual labels:  awesomewm, widget
Brightid
Reference mobile app for BrightID
Stars: ✭ 101 (-1.94%)
Mutual labels:  network
Evntouchiddemo
🆔 iOS fingerprint login process implementation
Stars: ✭ 98 (-4.85%)
Mutual labels:  widget
Netfil
A kernel network manager with monitoring and limiting capabilities for macOS. #nsacyber
Stars: ✭ 97 (-5.83%)
Mutual labels:  network
Beluganos
The new network OS designed for white-box switches based on open API.
Stars: ✭ 95 (-7.77%)
Mutual labels:  network
Stanchion
Add priorities to your web app's network requests
Stars: ✭ 103 (+0%)
Mutual labels:  network
Calendar view
an android widget to show calendar
Stars: ✭ 102 (-0.97%)
Mutual labels:  widget
Mud
Multipath UDP library
Stars: ✭ 100 (-2.91%)
Mutual labels:  network
Netconan
netconan - a Network Configuration Anonymizer
Stars: ✭ 98 (-4.85%)
Mutual labels:  network
Gate
A high performant & paralleled Minecraft proxy server with scalability, flexibility & excellent server version support - ready for the cloud!
Stars: ✭ 102 (-0.97%)
Mutual labels:  network
Collision
A window management module for AwesomeWM
Stars: ✭ 96 (-6.8%)
Mutual labels:  awesomewm
Dysentery
Exploring ways to participate in a Pioneer Pro DJ Link network
Stars: ✭ 102 (-0.97%)
Mutual labels:  network
Ffw
A fuzzing framework for network servers
Stars: ✭ 97 (-5.83%)
Mutual labels:  network
React Autocomplete Input
Autocomplete input field for React
Stars: ✭ 100 (-2.91%)
Mutual labels:  widget
Machina
Network capture library for realtime TCP/IP decoding from a windows application. Includes an extension library to support FFXIV data capture.
Stars: ✭ 102 (-0.97%)
Mutual labels:  network
Graph sampling
Graph Sampling is a python package containing various approaches which samples the original graph according to different sample sizes.
Stars: ✭ 99 (-3.88%)
Mutual labels:  network
Iglance
Free system monitor for OSX and macOS. See all system information at a glance in the menu bar.
Stars: ✭ 1,358 (+1218.45%)
Mutual labels:  network

Network Widgets

If you use netctl or another network manager which doesn't provide any good tray icon or if you want something more native than nm-applet, this is for you.

network widgets total

How to use

First of all you should clone repository in your awesome config directory

git clone https://github.com/pltanton/net_widgets.git ~/.config/awesome/net_widgets

Then, paste this in your 'rc.lua'

local net_widgets = require("net_widgets")

Wireless widget.

wireless widget Widget is simple as hell. Icon changes depend on signal level, if you put mouse pointer on it you can see some information about current connection.

Create widget by (make sure you place it after beautiful.init otherwise the font is not yet defined)

net_wireless = net_widgets.wireless({interface="wlp1s0"})

After that just place net_wireless wherever you want. You can also change widget update timeout. By default it is timeout=5, interface=wlan0

To display metrics about ESSID, bit rate and more, make sure that you have iw installed on your system.

Wired network indicator.

wired widget If network is disconnected icon changes color to red. You can set multiple interfaces to indicate it. If you don't set interfaces or set it to nil, the widget will detect interfaces every time it checks status. In any case, any interfaces inthe ignore_interfaces argument will not be processed. There's also a popup which shows the IP and MAC addresses, plus associated routes and processes, for each queried or supplied interface.

Note that you can show your wireless interface in here, but it won't show wireless-specific properties like signal strength or SSID. Use the wireless widget for that.

Set skipcmdline to false if you want to show the command line of any process associated with the interface. If true, it implies skipvpncheck. NB: the cmdline functionality requires passwordless sudo find and sudo grep

Set skiproutes to false if you want to show the routes associated with the interface. If true, implies skipvpncheck.

Set skipvpncheck to false if you want to auto-detect a full-route-coverage VPN and change the icon. Supports OpenVPN, Cisco vpnc, and WireGuard. NB: the WireGuard checks require passwordless sudo wg

To create widget put in rc.lua

net_wired = net_widgets.indicator({
    interfaces  = {"enp2s0", "another_interface", "and_another_one"},
    timeout     = 5
})

By default interfaces=nil, timeout=10

Internet access indicator.

internet widget This indicator shows up when there is no internet access (detected by trying to connect to 8.8.8.8). Set showconnected to true if you're extra precautionary about your internet connection and don't mind seeing a green check mark almost all the time.

net_internet = net_widgets.internet({indent = 0, timeout = 5})

Tips

Table looks bad

You can change font to monospace by font option.

Display the signal strength in the popup instead of next to icon

strenght in popup

Set popup_signal=true.

Set action on click

Just set onclick argument, for example

net_wireless = net_widgets.wireless({interface   = "wlp3s0",
                                     onclick     = terminal .. " -e sudo wifi-menu" })

Get table of wireless widgets or set container widget

Just set widget argument as false to get table or some widget layout to change default layout, for example

net_wireless = net_widgets.wireless({interface   = "wlp3s0",
                                     widget = false, })

or

net_wireless = net_widgets.wireless({interface   = "wlp3s0",
                                     widget = wibox.layout.fixed.vertical(), })

By default widget = wibox.layout.fixed.horizontal()

Set indent in wireless textbox

Just set indent

net_wireless = net_widgets.wireless({interface   = "wlp3s0",
                                     indent = 0, })

or

net_wireless = net_widgets.wireless({interface   = "wlp3s0",
                                     indent = 5, })

By default indent = 3

Set the pop-up position

Helpful if the widget is placed on the bottom bar and you want the pop-up to appear near the widget rather than on top of the screen.

net_wireless = net_widgets.wireless({interface   = "wlp3s0",
                                     popup_position = "bottom_right" })
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].