Code Monkey home page Code Monkey logo

sfwbar's Introduction

SFWBar

SFWBar (S* Floating Window Bar) is a flexible taskbar application for wayland compositors, designed with a stacking layout in mind. Originally developed for Sway, SFWBar will work with any wayland compositor supporting layer shell protocol, the taskbar and window switcher functionality shall work with any compositor supportinig foreign toplevel protocol, but the pager, and window placement functionality require sway (or at least i3 IPC support).

If you're getting expression errors when upgrading from version 1.0_beta9 or earlier, please check your data types. The expression parser now applies strict type checks.

SFWBar is licensed under GNU GPL. Weather icons are from yr.no and are licensed under MIT license

SFWBar implements the following features:

  1. Taskbar - to control floating windows
  2. Task Switcher - to allow switching active window (Alt-Tab)
  3. Pager - to allow switching between workspaces
  4. Tray - a system tray using status notification item protocol
  5. Window placement engine - to open new windows in more logical locations
  6. A simple widget set to display information from system files

Compiling from Source

Install dependencies:

  • gtk3
  • gtk-layer-shell
  • json-c

Runtime dependencies:

  • python is used by some widgets (i.e. battery and start menu widgets)
  • symbolic icons are used by battery.widget

Compile instructions:

meson setup build
ninja -C build
sudo ninja -C build install

Configuration

Copy sfwbar.config from /usr/share/sfwbar/ to ~/.config/sfwbar/ If you prefer to start with something more like tint2 bar, you can copy t2.config into ~/.config/sfwbar/sfwbar.config instead. If you want something like waybar, you can copy wbar.config and if you prefer something from the darker side, w10.config could be for you. For more information on the format of configuration file, please see the man page

If you're using sway, you may want to add the following lines to your sway config file to open windows as floating by default:

# open new windows as floating by default
for_window [app_id="[.]*"] floating enable
# set Alt-tab as a task switcher combo
bindsym Alt+Tab bar hidden_state toggle 
# set $mod+c to hide/unhide taskbar 
bindsym $mod+c bar mode toggle

sfwbar's People

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.