All Projects → siyb → Tbar

siyb / Tbar

Licence: apache-2.0
tBar is yet another tool bar capable of displaying your system's status in a compact, well readable form. It features different widgets that can be arranged and colored using a provided configuration file. tBar is written in TCL/TK and is licensed under the terms of the GPL 3.

Programming Languages

tcl
693 projects

TOC

  1. Feature Ideas

  2. Installation 1.1 Normal installation 1.2 Starkit 1.3 Linux distributions

  3. Feature notes 2.1 User specific libraries and widgets 2.2 Automatic dependency management 2.3 Tracking

  4. Widget notes

  5. Misc notes

  6. License

  7. Acknowledgement

  8. Contact

  9. Feature Ideas

  • wicd support
  • alarm feature (eggtimer)
  1. Installation

    1.1 Normal installation

    • Install Tcl/Tk 8.5 or higher, libtk-img, tcllib, unix_sockets and libsqlite3-tcl (read 2.2 for more information!)

    • Run: make install (or: make DESTFILE=mydir install)

    • Modify /etc/tbar/config.tcl to fit your needs or create ~/.tbar/ and copy /etc/tbar/config.tcl there, to have a user specific config

    • Run: tbar

    • To uninstall run: make uninstall, make sure to specify DESTFILE if you have done so in the install

    1.2 Starkit

    • Unpack the archive and run: make install (or: make DESTFILE=mydir install)

    • Modify /etc/tbar/config.tcl to fit your needs or create ~/.tbar/ and copy /etc/tbar/config.tcl there, to have a user specific config

    • Run: tbar

    • To uninstall run: make uninstall, make sure to specify DESTFILE if you have done so in the install

    1.3 Linux distributions

     1.3.1 Arch Linux:
     
     Check http://aur.archlinux.org/packages.php?ID=37314
    
  2. Feature notes

    2.1 User specific libraries, widgets and snippets

    From version 1.2 onwards, users are able to integrate custom libraries and widgets using folders located in their userland. Place custom libraries (along with a pkgIndex.tcl file) in ~/.tbar/lib, in order to make the libraries accessible to tbar. You will have to create the folder manually, if it exists, it will be automatically appended to tcl's auto_path of the interpreter tbar is running in.

    If you wish to install custom widgets on a per user basis (for your user only), create ~/.tbar/widget and copy the widget wrapper files to be loaded there. The widget wrapper file must be named after the widget, e.g. widgetname foobar would imply foobar.tcl as widget wrapper file name.

    From version 1.4 onwards, users can create small snippets and place them in ~/.tbar/snips. Snippets are meant to decrease the config file size. They should be used when a widget offers the execution of TCL code. Please check out the example snippet, located in /usr/share/doc/tbar/examples/snippet.tcl for more information.

    2.2 Automatic dependency management

    From version 1.4 onwards, tBar manages dependencies automatically. Packages are loaded on demand and warning messages are logged if a package is not available. tBar knows about widget dependency on the widget and parameter level. It will remove parameters from widgets, which require packages, that are not installed, thus preventing widget loading errors.

    2.3 Tracking

    From version 1.4 onwards, tBar supports automatic tracking. It is disabled by default, but can be enabled in order to provide useful information to tBar developers. Since privacy and transparancy is important, this paragraph states what, how and why something is being tracked.

    What is being tracked?

    • Currently, only used widgets, their configuration and runtime exceptions (errors) are being tracked.

    How will this data be tracked?

    • The data is send to a webservice using http post. The source code of the webservice is included in tBar and can be reviewed. In order to assign data to a certain tBar user, an anonymous pseudo uid (unique id) will be generated.

    Where do I find my tracking uid and what is it composed of?

    • The tracking uid can be found in $HOME/.tbar/uid. The algorithm that is used to create the uid can be found below:
      1. get current timestamp
      2. multiply with random number
      3. remove decimal point
      4. trim result to 9 numbers

    Why should I enable tracking?

    • The major objective is automatic bugtracking and faster bug fixing. The widget usage statistics provide a rough overview of features commonly used, thus allowing to prioritize feature enhancements and bug fixes.

    I don't trust you, where can I find the tracking code?

    • The actual tracking code can be found in lib/util/track.tcl, tracking happens in lib/tbar/tbar.tcl.
  3. Widget notes

    This section contains special notes on modules:

    i3_workspace.tcl: This module requires the library from http://sourceforge.net/projects/tcl-unixsockets/. Unfortunatly, the source was not compilable at the time this note was written, which is why you will need to obtain the patched source from: http://siyb.mount.at/tbar/releases/unixsocket_tbar_0.1.tar.gz.

     autoconf -> ./configure -> make -> make install
    
  4. Misc Notes

    4.1 Makefile

     The Makefile supports the following parameters:
    
     EXPERIMENTAL - Effects the deploy option only. Will create a version containing the git hash of the commit, which was used
     	       to create the build.
    

    4.2 Versioning

     Version numbering is not specified, but a version can be succeeded by a flag, indicating the state of the version. The following
     example will illustrate how these successing flags should be understood.
    
     1.4r1  - Release 1 of version 1.4. Releases may still contain bugs, if these bugs are considered to be critical (security, file
     	 or system integrity, tBar not usable, etc), a release may be revised. The "r" flag is used to mark revised releases. 
     1.4rc1 - Release candidate 1 of version 1.4. A release candidate is a test version of an upcoming release and may still contain
     	 bugs and other glitches.
     1.4e   - The e tag indicates that 1.4 is currently experimental, meaning that all work done on the experimental git branch will
     	 contribute to the future 1.4 release (i.e. version 1.4 has no rc / r, but the contents of the experimental git branch
     	 reflect the progress of the 1.4 release.)
    
  5. License

    tBar is licensed under the terms of the GPL 3. Please refer to the LICENSE file for more information on the GPL 3.

  6. Acknowledgement

  7. Contact

    Website: http://siyb.mount.at/tbar Email: [email protected] IRC: #woot @ quipu.mount.at:6697 (SSL only!)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].