# simple-i3blocks ![demo0](https://will.kein.hk/git/koksnuss/simple-i3blocks/raw/master/demo-full-0.png) ![demo1](https://will.kein.hk/git/koksnuss/simple-i3blocks/raw/master/demo-full-1.png) This is a simple collection of i3blocks-modules accompagnied by a config file with the aim to display only important information in favor of not spilling lots of numbers into the status bar. # Usage - *datetime* -- A left click will toggle long and short displays. The short version is displayed in the format `HH:MM`. The long version also shows the day of the week, weeknumber, date and seconds. - *audio* -- Current audio output level. `instance=mic` will show the microphone input level instead. - *ram* -- Free ram and swap are shown in the format `a+b G` where `a` is ram and `b` is swap. If you want to show ram and swap seperatly, use `instance=ram` or `instance=swap`. - *cpu* -- Total idle cpu time of all cores together. Use `instance=long` to show the percentage instead. - *temp* -- Current temperature of the cpu. - *battery* -- Total energy left of all batteries. Use `instance=x` to show the status of `BATx` in case you have more than one battery in `/sys/class/powersupply`. - *backlight* -- Brightness level. Use `instance=long` to show the brightness percentage. Use `instance="color"` to print the brightness level colored which is nice when using a device in battery mode. # Requirements Install [i3 window manager](https://i3wm.org) alongside with [i3blocks](https://github.com/vivien/i3blocks) and `git`. The following shows the requirements for each module: ``` module dependency -------------------------- audio amixer battery none, searches in /sys/class/power_supply/BAT... cpu top, htop for click support temp sensors datetime date ip curl ram none, searches in /proc/meminfo, htop for click support storage df backlight none, searches in /sys/class/backlight, intel and ati/amd supported ``` # Install One-Liner: Open up a terminal and paste: `bash <(curl -s https://will.kein.hk/git/koksnuss/simple-i3blocks/raw/master/install.sh)` - Backup: `mv ~/.config/i3blocks{,.bak}` - Clone: `git clone https://will.kein.hk/git/koksnuss/simple-i3blocks.git ~/.config/i3blocks` - Adjust `~/.config/i3blocks/config` to control i3 status bar output (see [Usage](#usage)). - Make sure you've added `bar { status_command i3blocks }` in your i3-config file (i.e. `~/config/i3/config`). - Finally reload your `i3` window manager. The default shortcut is `mod + SHIFT + r`, you should see a flickering. # Roadmap ## Modules - [x] datetime - [x] ram/swap - [x] cpu - [x] cpu temp - [x] audio/mic - [x] storage - [x] ip - [x] battery - [x] backlight - [ ] wifi/ethernet/bluetooth - [ ] mount - [ ] ethernet bandwith ## Refractor - [ ] centralize color palette and progress bar - [ ] centralize long/short view: rewrite config + i3reload? how to make it permanent? - [ ] centralize click interactions ## Click interactions ### Long/Short preview: Middle click - [ ] Toggle long (numbers and units) and short (representative bar) preview ### Open another program: Left click - [c] audio/mic: open pavucontrol - [c] ram/cpu/temp: open htop - [c] storage: open ranger - [c] ip: middle: open firefox - [ ] mount: mount it somewhere (with pmount?) and open ranger ### Other behaviour - [c] audio/mic: toggle mute - [ ] onn/off behaviour: backlight, ethernet, audio, mic ## Signals - [x] audio, mic - [ ] backlight - [ ] mount ## Other features - [x] nice icons as labels - [x] showing percentage values as a vertical bar