Skip to content

Budgie applet that displays script's output on the panel

License

Notifications You must be signed in to change notification settings

szwsck/budgie-script-applet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

budgie-script-applet

A simple, but very versatile Budgie applet that periodically runs a script and displays its output. It makes it very easy to implement your own indicator-style applets with your favorite language. Inspired by Polybar's script module.

Note: for most purposes, this applet's functionality is a subset of indicator-sysmonitor. It has, however, some advantages:

  • many more theming options using CSS - support for setting styles either globally or dynamically through script's output
  • each script is a separate applet, meaning you can place them in different places in the panel and style them separately
  • custom tooltip text support
  • support for click actions
  • (planned) support for native system icon(s) inside the applet
  • (planned) support for scroll actions

Installation

Install PyGObject for your platform

Then run:

mkdir -p ~/.local/share/budgie-desktop/plugins
cd ~/.local/share/budgie-desktop/plugins
git clone https://github.com/shymmq/budgie-script-applet.git

Usage

After you add the widget to the panel, you should configure it inside Budgie Desktop Settings. Make sure your script is executable(chmod +x script.sh).

Only the first line of the output will be displayed. In the following lines, you can pass any CSS properties supported by GTK. You can also set tooltip text with tooltip: <tooltip>

For example, this script:

$ python ~/events.py
No events
color: green
font-style: italic
tooltip: Next event: Meeting tomorrow at 9:00

will result in:

image

You can run budgie-panel with budgie-panel --replace --gtk-debug=interactive & to preview your CSS props in a live editor.

If you want to set a global theme, you can do so in ~/.config/gtk-3.0/gtk.css. You can find the CSS selector for the given widget in settings. Note that this doesn't support tooltips. Use nohup budgie-panel --replace & to reset the panel after making changes.

For simple monochrome icons, you can use an icon font such as MaterialDesign-Font

Warning: This applet naively runs whatever command you set, without any constraints, timeouts or caching. Don't execute any expensive operations; if you make network calls, it's probably a good idea to cache the result inside your script.

Ideas

  • Display next event from Google Calendar. See i3-agenda

image

  • Most of polybar-scripts should work out of the box
  • Display current CPU/Disk/RAM usage
  • Check available package updates
  • Display unread notifications from Reddit, Facebook etc.
  • Display currently playing song title

About

Budgie applet that displays script's output on the panel

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages