No description
Find a file
Safin Singh c57713ca9a CI/CD & Formatting (#6)
* Improve autoformatting guides, add editorconfig and add CI/CD
2020-10-18 23:25:00 +02:00
.github/workflows CI/CD & Formatting (#6) 2020-10-18 23:25:00 +02:00
src CI/CD & Formatting (#6) 2020-10-18 23:25:00 +02:00
.editorconfig CI/CD & Formatting (#6) 2020-10-18 23:25:00 +02:00
.gitignore init 2020-09-19 11:12:24 +02:00
Cargo.lock Implement hover and scroll 2020-10-18 23:25:00 +02:00
Cargo.toml CI/CD & Formatting (#6) 2020-10-18 23:25:00 +02:00
README.md CI/CD & Formatting (#6) 2020-10-18 23:25:00 +02:00
rust-toolchain add toolchain file 2020-10-18 23:25:00 +02:00
rustfmt.toml CI/CD & Formatting (#6) 2020-10-18 23:25:00 +02:00

Table of Contents

About

Elkowars Wacky Widgets is a standalone Widget System made in rust to add AwesomeWM like widgets to any WM

Configuration

Ewws configuration should be placed in ~/.config/eww/eww.xml and any scss styles you want to add should be put into ~/.config/eww/eww.scss.

Example Config

<eww>
  <definitions>
    <def name="test">
      <layout orientation="v">
        {{foo}}
        <button onclick='notify-send "that hurt,..."'>
            click me if you dare :&lt;
          </button>
        <layout>
          {{ree}}
          <slider min="0" max="100" value="50" onchange="notify-send {}"/>
        </layout>
      </layout>
    </def>
  </definitions>

  <variables>
    <var name="foo">test</var>
  </variables>


  <windows>
    <window name="main_window">
      <size x="100" y="200" />
      <pos x="100" y="200" />
      <widget>
        <test ree="test" />
      </widget>
    </window>
  </windows>
</eww>

Building

Prerequisites

  • rustc
  • cargo (nightly toolchain)

Rather than with your system package manager, I recommend installing it using rustup, as this makes it easy to use the nightly toolchain, which is necessary to build eww.

Installation

Build the Binary using -:

$ git clone https://github.com/Elkowar/eww.git
$ cd eww
$ cargo build --release

then copy the built binary from ./target/release to anywhere in $PATH (example - ~/.local/bin)

Usage

Create a Config and then just do eww!