Skip to content

kraftwerk28/gost

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gost

A JSON feeder for i3bar/swaybar

Installation

TBD...

Configuration

The application is configured via a file in ${XDG_CONFIG_HOME}/gost/config.yml (usually $HOME/.config/gost/config.yml).

config.yml:

version: "1"

theme:
  hue: 0.7
  saturation: 0.7

separator_width: 16

blocks:
  - name: foo_block
    config_option_1: bar_value
    config_option_2:
      - baz_value

sway/config (or i3/config):

bar {
  status_command gost
  # ...
}

You can grab the example config from doc/example-config.yml:

$ curl -sL -o "${XDG_CONFIG_HOME:-$HOME/.config}/gost/config.yml" \
    https://raw.githubusercontent.com/kraftwerk28/gost/master/doc/example-config.yml

Blocklets

Display battery charge level. Requires UPower to work over DBus upower_device can be obtained via DBus using the following command:

$ busctl --json=pretty --system call org.freedesktop.UPower \
  /org/freedesktop/UPower org.freedesktop.UPower \
  EnumerateDevices \
  | jq -r '.data[0] | map(match("[^/]+$").string)[]'`

If empty, the program will try to detect battery device.

Option Type Description
format ConfigFormat
upower_device string Device name. See above.
urgent_level int

Displays connected bluetooth devices

Option Type Description
mac string Mac address of the device
format ConfigFormat
device_format ConfigFormat Device format
Option Type Description
format ConfigFormat
Option Type Description
object_path string
initial_text string
Option Type Description
script string
Option Type Description
player_format ConfigFormat
separator string
Option Type Description
format ConfigFormat
ap_format ConfigFormat
primary_only bool
Option Type Description
node string
format ConfigFormat
icons PulseIconsConfig

Displays output for a shell script It has three modes:

  • run script every N seconds, wait for it to exit
  • run script once, read lines from it's stdout and update the blocklet per each line
  • run script in a loop as soon as it exits
Option Type Description
command string Shell command to run
on_click string Shell command to run when a blocklet is clicked
interval ConfigInterval
restart_on_exit bool
json bool Treat command's output as json instead of plain text

Displays current keyboard layout. Uses sway's IPC API for retrieving the info (i.e. won't work with i3wm)

Option Type Description
format ConfigFormat
input string

No config fields.

Option Type Description
format ConfigFormat
layout string
interval ConfigInterval

This project is inspired by i3status-rust and i3blocks