Interact with this post using Mastodon or
Use me I'm famous: rofi
Published on
While I try to share on this blog stuff that are a little bit more confidential than I think they should be, we will talk today about a famous program: rofi .
╭── The concept
rofi
was originally developed to be a popup window switcher but has been extended with a lot of extra features and can also be used today as an application/ssh launcher, or a drop-in dmenu replacement.
rofi
is a pop-up window which displays a textual list of options where one or more can be selected. Beyond this simple presentation, the list of tasks and their complexity is only limited by your imagination especially when you start using your own scripts; more on that just below.
╭── The default modes
To implement common use cases, rofi
uses built-in modes:
- run: launch applications from $PATH, with option to launch in terminal.
- drun: launch applications based on desktop files. It tries to be compliant to the XDG standard.
- window: switch between windows on an EWMH compatible window manager.
- ssh: connect to a remote host via ssh.
- filebrowser: a basic file-browser for opening files.
- keys: list internal keybindings.
- combi: combine multiple modes into one.
Like most app, you can customize rofi
to make it good for you. You can define the position of the window, change the colors (theme), set up the number of lines/columns to list the results… But did I tell you that the real power comes with scripts? :)
╭── Master everything with scripts
It took me 5 years to realize that rofi
could be a tool for me because I did not dig into the scripts usage at first and the default modes did not match my needs.
And today, I became a script nerd which allow me to use a single tool as:
- an app launcher
- a clipboard manager
- an infobar to show things like the date/time, memory usage, disk space, battery level, wifi signal…
- an omnibar to perform an internet search, quick units conversions
- a calculator for simple math
- a bookmark manager (list, open, edit, add, remove)
- a password/2FA token manager (list, edit, add, remove, autofill internet fields)
- a wifi manager
- a vpn manager
I have some of these scripts (more or less up to date) on my codeberg and I will discuss them in more details on this blog in the future.
If you don’t feel ready yet to write your own scripts, you can also find a lot of scripts online. For example on this page
As always, I could spend hours listing here a bunch of other info but it’s better to rely on people who knows the best and already provide a great wiki: the developers and maintainers of the rofi
project. I just wish to get you eager to give this tool a try and don’t - like I did - waste years figuring out how this tool can help you.
With the list above, you can see how it has became something I use every day, multiple times per hour. Getting rid of it would highly decrease my work flow efficiency.
Thanks for your read. Hope it's been useful to you.
✄ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈ ┈
More food for thoughts? Check other posts about: #Cli #System