Skip to content
master
Switch branches/tags
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

README.md

This project provides an i3 status bar and is written in Racket. It's not super clever but it works. You may want to use this as the basis for your own custom status bar.

The i3 status bar (i3bar) works by reading JSON data and using that data to populate the status bar, the format of this JSON data comprises the i3bar Input Protocol. When i3 starts, it can be configured to also start the script that will provide this data by writing JSON data to standard out. In your i3 configuration file, configure status_command to start i3status.

bar {
    status_command ~/Projects/i3status/i3status-start.sh
 	tray_output primary
}

An example shell script is included, called i3-status-start.sh. It requires this module and then starts writing JSON data to standard out.

(require (planet cmiles74/i3status:1:4))

(start-status (lambda () (list (mpd)             ;; music player daemon status
                               (mail)            ;; notmuch inbox status
                               (battery-charge)  ;; current battery charge
                               (cpu-time)        ;; CPU load over the last 250ms
                               (system-time))))  ;; current system time

In all cases, these modules have really only been tested on my workstation. I've added optional parameters to the functions that are most likely to need customization in order to work somewhere else. For instance, the path you your laptop's battery status might live somewhere else.

(start-status (lambda () (list (battery-charge
                                #:battery-path "/sys/class/power_supply/BAT0"))))

You can Check out the documentation on the Racket Planet for more information.

About

Racket project to provide an i3 status bar.

Resources

Packages

No packages published