install -m 755 -d $(DESTDIR)$(SYSCONFDIR)
install -m 755 -d $(DESTDIR)$(MANPREFIX)/share/man/man1
install -m 755 i3status $(DESTDIR)$(PREFIX)/bin/i3status
- # Allow network configuration for getting the link speed
- (which setcap && setcap cap_net_admin=ep $(DESTDIR)$(PREFIX)/bin/i3status) || true
install -m 644 i3status.conf $(DESTDIR)$(SYSCONFDIR)/i3status.conf
install -m 644 man/i3status.1 $(DESTDIR)$(MANPREFIX)/share/man/man1
* libyajl-dev
* libasound2-dev
* libnl-genl-3-dev
- * libcap2-bin (for getting network status without root permissions)
* asciidoc (only for the documentation)
* libpulse-dev (for getting the current volume using PulseAudio)
On debian-based systems, the following line will install all requirements:
```bash
-apt-get install libconfuse-dev libyajl-dev libasound2-dev libiw-dev asciidoc libcap2-bin libpulse-dev libnl-genl-3-dev
+apt-get install libconfuse-dev libyajl-dev libasound2-dev libiw-dev asciidoc libpulse-dev libnl-genl-3-dev
```
## Upstream
}
ethernet _first_ {
- # if you use %speed, i3status requires root privileges
format_up = "E: %ip (%speed)"
format_down = "E: down"
}
}
ethernet eth0 {
- # if you use %speed, i3status requires the cap_net_admin capability
format_up = "E: %ip (%speed)"
format_down = "E: down"
}
Gets the IP address and (if possible) the link speed of the given ethernet
interface. If no IPv4 address is available and an IPv6 address is, it will be
-displayed. Getting the link speed requires the cap_net_admin capability.
-Set it using +setcap cap_net_admin=ep $(which i3status)+.
+displayed.
The special interface name `_first_` will be replaced by the first non-wireless
network interface found on the system (excluding devices starting with "lo").
static int print_eth_speed(char *outwalk, const char *interface) {
#if defined(LINUX)
- /* This code path requires root privileges */
int ethspeed = 0;
struct ifreq ifr;
struct ethtool_cmd ecmd;