eufon

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

README.md (1917B)


      1 # Blinkenlicht
      2 
      3 Yet another "bar" program for wlroots-basd Wayland compositors, but
      4 this one is written in [Fennel](https://fennel-lang.org/) and
      5 therefore better than all the others because it is more niche.
      6 
      7 More seriously: you might prefer this over another status bar program
      8 if you want fine-grained control over what is shown in your bar and
      9 you are happy to exert that control in a Lua-based Lisp language.
     10 
     11 ## Current status and usage
     12 
     13 Not quite dogfood-ready yet, but fast approaching.
     14 
     15 * bl.fnl is an example, using licht.css for its styling
     16 
     17 * blinkenlicht.fnl is the module that parses `bar` and `indicator`
     18   forms and does all the UI
     19 
     20 * metric/*.fnl is a collection of modules that read metrics (load
     21   average, connectivity, battery status etc) from the system, for
     22   indicators to display.
     23 
     24 Use the `default.nix` for guidance as to libraries and other setup
     25 required - or just use it, of course.
     26 
     27     nix-shell
     28     lua $fennel bl.fnl
     29 
     30 The funny symbols in bl.fnl are code points that exist only in the
     31 "Font Awesome" font, and render to handy icons like "battery, half
     32 empty".  You need to install Font Awesome to see them; however due to
     33 the Gtk font fallback system - at least, that's what I think is doing
     34 it - you don't actually need to specify that font in your CSS because
     35 Gtk will find it anyway. Magic.
     36 
     37 
     38 ## Plan
     39 
     40 * [X] use gtk-layer-shell to put it in a layer
     41 * [X] update only at relevant intervals
     42 * [X] cache icon pixbufs
     43 * [X] add some mechanism for indicators that wait for events instead of polling
     44 * [X] set indicator background colour (use css for this?)
     45 * [ ] update image/label widget instead of destroying
     46 * [ ] allow image height customisation
     47 * [X] set poll interval based on indicators' requested intervals
     48 * [X] allow indicator to change styles based on status
     49 * [ ] add metrics for
     50   - [X] wireless connected/strength
     51   - wwan connected/type (hspa, lte, etc)/signal
     52   - cpu %