Giter VIP home page Giter VIP logo

tianbar's Introduction

Tianbar

Build status Hackage

Tianbar is a status bar for XMonad and possibly similar window managers. It is using WebKit as its rendering engine, meaning that the entire look and feel is customizable using HTML, CSS and JavaScript.

Screenshot

Usage

Tianbar will show index.html from its XDG configuration directory (usually $HOME/.config/tianbar). It it up to you to create that, add styles, widgets and other behavior.

A small collection of widgets written in JavaScript is bundled with Tianbar, see scripts directory. Widgets are loaded using RequireJS, which, as well as jQuery and other libraries required, are bundled with Tianbar.

For an example of RequireJS configuration, see the example index.html.

IBus

Displays the status of IBus input method.

Network

Displays the connection status from NetworkManager.

Power

Displays the battery status for all the batteries reporting through UPower.

Time

Displays the time and date.

Volume

Displays the current PulseAudio volume. Note that module-dbus-protocol is required to be available.

Weather

Displays the weather at current location (determined via HTML geolocation API) through OpenWeatherMap.

XMonad

XMonad status widget works by listening on DBus for messages sent by the provided logHook, see System.Tianbar.XMonadLog documentation for details.

Quirks

  • AJAX requests from Tianbar are not subject to the same origin policy. This makes it easier to interact with various Web services. You can also make requests to the local files, for example, to extract CPU activity statistics from /proc/stat.
  • Interaction with the displayed Web page is limited. For example, text fields are not active if there are other windows on the screen.

Acknowledgements

The project is essentially a fork of Taffybar, stripped down of Haskell configuration and widgets and not yet having achieved functional parity with it.

tianbar's People

Contributors

koterpillar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

tianbar's Issues

Searches for javascriptcore in the wrong location perhaps

Trying out a clean install. I don't have a local cabal or ghc, and basically use the stack env vars to replicate a normal haskell environment which doesn't run into dependency conflicts all the time.

A stack build results in a build failure on gi-javascriptcore-4.0.3

--  While building package gi-javascriptcore-4.0.3 using:
      /tmp/saksham/stack10491/gi-javascriptcore-4.0.3/.stack-work/dist/x86_64-linux/Cabal-1.22.5.0/setup/setup --builddir=.stack-work/dist/x86_64-linux/Cabal-1.22.5.0 configure --with-ghc=/home/saksham/.stack/programs/x86_64-linux/ghc-7.10.3/bin/ghc --with-ghc-pkg=/home/saksham/.stack/programs/x86_64-linux/ghc-7.10.3/bin/ghc-pkg --user --package-db=clear --package-db=global --package-db=/home/saksham/.stack/snapshots/x86_64-linux/lts-6.7/7.10.3/pkgdb --package-db=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/pkgdb --libdir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/lib --bindir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/bin --datadir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/share --libexecdir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/libexec --sysconfdir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/etc --docdir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/doc/gi-javascriptcore-4.0.3 --htmldir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/doc/gi-javascriptcore-4.0.3 --haddockdir=/home/saksham/tianbar/.stack-work/install/x86_64-linux/lts-6.7/7.10.3/doc/gi-javascriptcore-4.0.3 --dependency=base=base-4.8.2.0-0d6d1084fbc041e1cded9228e80e264d --dependency=bytestring=bytestring-0.10.6.0-9a873bcf33d6ce2fd2698ce69e2c1c66 --dependency=containers=containers-0.5.6.2-59326c33e30ec8f6afd574cbac625bbb --dependency=haskell-gi=haskell-gi-0.17.4-002bfdf5cbb537370ae1f8090f943d4b --dependency=haskell-gi-base=haskell-gi-base-0.17-a8c6cf7598c5eb7b92497e19257d9083 --dependency=text=text-1.2.2.1-f5b1651133426aa2c83c19d64d248779 --dependency=transformers=transformers-0.4.2.0-81450cd8f86b36eaa8fa0cbaf6efc3a3
    Process exited with code: ExitFailure 1
    Logs have been written to: /home/saksham/tianbar/.stack-work/logs/gi-javascriptcore-4.0.3.log

    [1 of 1] Compiling Main             ( /tmp/saksham/stack10491/gi-javascriptcore-4.0.3/Setup.hs, /tmp/saksham/stack10491/gi-javascriptcore-4.0.3/.stack-work/dist/x86_64-linux/Cabal-1.22.5.0/setup/Main.o )
    Linking /tmp/saksham/stack10491/gi-javascriptcore-4.0.3/.stack-work/dist/x86_64-linux/Cabal-1.22.5.0/setup/setup ...
    setup: Did not find a GI repository for JavaScriptCore-4.0 in ["/usr/local/share/gir-1.0","/usr/share/gir-1.0"]

I believe there's some assumption made about the location of GI at some place?
P.S. Tested on Gentoo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.