[0] https://github.com/lpsantil/slmenu
1. You're limited to binaries and executable scripts in your $PATH
2. Many commands do not have bash-completion support.
vi mode for bash, bash-completion are both innovations trying to tackle this optimization of workflow. I see tools like dmenu and slmenu as better ways to give richer UI and create/reuse workflows. GP's request for `allows fuzzy search of program names, tags and a short description` is highly doable in dmenu/slmenu if not already done [0]. Not so much with bash, vi mode for bash, bash-completion.
May also use i3-dmenu with fzf:
urxvt -title "fzf-menu" -e bash -c 'i3-dmenu-desktop --dmenu=fzf'Coincidental - I just reinstalled my machine and this is the first site I came to. I keep all the applications I installed in a 'packages.new' file, and do
apt-get install -y `cat packages.new`
when I get a new machine.Properly taken notes are much more than a memory aide.
Hey, I didn't claim it was exhaustively complete :-)
I have not used any appimages or flatpaks much. If I am using a program and it is not available on my new install, I'll remember to install it when I look for it.
For source compilation, it's frequently for a once-off use (maybe the repo software is too old, so I compile the latest). Mostly, when I move to a new version I don't need to recompile from source.
If you don't want a package cluttering up your system, but also don't want to forget about its existence you can just comment it out.
A usual line for an install is the package name, the package type (flatpak, appimage, tarball, AUR, deb, etc) and a description of what the package is. Not much longer than the command I typed in to install.
I also keep notes on changes to the system, services created, paths changed, firewall rules, detailed notes on big things and stuff like that. Any time I run into something weird I reference it and make sure it's not something I did before I go hunting for a solution.
> I'm in the habit of keeping a text file with all software I've installed and updating it immediately.
I'll share mine if you share yours. Mine is mostly geared towards Python and PHP development.
Also I use dmenu and a script for using aliases in dmenu, and I create aliases for popping them out in new terminals. Really fast workflow.
If you're using a lot of tui stuff changing workflow from double click to launch really makes the whole experience smoother, much smoother than GUI stuff.