Go to file
Simon Vieille 64908e4eb4
ci/woodpecker/manual/woodpecker Pipeline was successful Details
fix block spotify (handle stopped status)
2022-09-14 09:24:21 +02:00
blocks fix block spotify (handle stopped status) 2022-09-14 09:24:21 +02:00
rendering fix block spotify: & -> et 2022-09-05 10:44:42 +02:00
.gitignore remove build directory from git 2022-08-28 21:06:57 +02:00
.woodpecker.yml update ci 2022-09-05 11:17:36 +02:00
Makefile update ci 2022-09-05 10:58:42 +02:00
README.md update readme 2022-09-02 16:58:51 +02:00
go.mod init 2022-08-28 14:59:15 +02:00
go.sum init 2022-08-28 14:59:15 +02:00

README.md

I3 Blocks

Blocks compatible with i3blocks.

Requirements

  • go for compilation
  • sudo and wg-quick for wireguard block
  • tmux for app and date blocks
  • df for du block
  • xdg-open for du block
  • playerctl for spotify block

Installation

From binaries

Get binaries from releases.

From sources

git clone https://gitnet.fr/deblan/i3-blocks-go.git
cd i3-blocks-go
make

Usage

Each binary has a help, eg ./app -h.

App

Add the shortcut <name> and run <command> when clicked.

[app_otp]
command=/path/to/app -block=app_otp -name=🔐 -bg-color='#363636' -fg-color='#ffc337' -cmd=otpclient
format=json
markup=pango
interval=1000

[app_flameshot]
command=/path/to/app -block=app_flameshot -name=F -bg-color='#bf007e' -fg-color='#fff' -cmd="flameshot gui --delay 500"
format=json
markup=pango
interval=1000

[app_ksnip]
command=/path/to/app -block=app_youtube -name=Y -bg-color='#c74a42' -fg-color='#fff' -cmd="xdg-open https://www.youtube.com/"
format=json
markup=pango
interval=1000

Date

Show the time using the given format.

[time]
command=/home/simon/www/repo/i3-blocks-go/build/date -format="%H:%M:%S %d/%m/%Y"
format=json
markup=pango
interval=persist

Disk usage

Show mount point usage and warns with limits and colors.

[du_root]
command=/path/to/du -block=du_root -mount-point=/ -name=root -limit-warning=70 -limit-danger=90
format=json
markup=pango
interval=30

[du_home]
command=/path/to/du -block=du_home  -mount-point=/home -name=home -limit-warning=90 -limit-danger=95
format=json
markup=pango
interval=30

IP

Show the IP of the given iface.

[ip_wg0_ip4]
command=/path/to/ip -iface=wg0 -version=ip4 -name=VPN
format=json
markup=pango
interval=3

[ip_eth0_ip4]
command=/path/to/ip -iface=eth0 -version=ip4 -name=Foo
format=json
markup=pango
interval=3

[ip_eth0_ip6]
command=/path/to/ip -iface=eth0 -version=ip4 -name=Bar
format=json
markup=pango
interval=3

IP (wan)

Show the public IP.

[ip_wan]
command=/path/to/ip_wan
format=json
markup=pango
interval=100

Prusa telemetry

Show the telemetry using Prusa Printer API.

[prusa]
command=/path/to/prusa_telemetry -api=http://1.2.3.4/api/telemetry
format=json
markup=pango
interval=60

Process

Show a message when the given process is running (use preg -f).

[ps]
command=/path/to/ps -process=foo -message="Foo is running"
format=json
markup=pango
interval=3

Feed indicator

Show indicator of RSS.

[rss_foo]
command=/path/to/rss -block=rss_foo -feed="https://foo.example.com/feed.xml" -website="https://foo.example.com/" -empty-color="#CCCCCC" -non-empty-color="#B3FF6C"
align=left
interval=30
format=json
markup=pango

[rss_bar]
command=/path/to/rss -block=rss_bar -feed="https://bar.example.com/atom.xml" -website="https://bar.example.com/" -empty-color="#aabfc1" -non-empty-color="#00d8f0"
align=left
interval=30
format=json
markup=pango

Spotify status

Show current song played (spotify).

[spotify]
command=/path/to/spotify
format=json
markup=pango
interval=3

Volume

Show volume.

[volume]
command=/path/to/volume -channel=Master
format=json
markup=pango
interval=1

Weather

Show the weather of the given location (https://fr.wttr.in/).

[weather]
command=/path/to/weather -loc=Paris -lang=fr
format=json
markup=pango
interval=1800

Wireguard toggler

Toggler for wireguard.

[wireguard_wg0]
command=/path/to/wireguard -iface=wg0 -name=Foo
format=json
markup=pango
interval=2

[wireguard_wg1]
command=/path/to/wireguard -iface=wg1 -name=Bar
format=json
markup=pango
interval=2

Workspace Apps (task bar)

Add blocks that represent opened apps and create a task bar.

[workspace_apps]
command=/path/to/workspace_apps -x=$relative_x
format=json
markup=pango
interval=1