There is no replacement for dmenu

Are there really none? We are now years into the transition to wayland, yet one problem still remains: There is no dmenu replacement. Instantmenu is based on dmenu, which remains stuck on X11, which is becoming a problem. You might say ’look at fuzzel/rofi/whatevershinynewthing’, but they are not what dmenu was truly good at: Not interrupting my workflow. Instantmenu was truly tiny. And the very first thing it did was to grab my keyboard input. I could make it part of my typing flow, as I could use it purely from muscle memory without thinking about it. This is not possible with the wayland equivalents of it. They all take a variable and non-negligible amount of time to load. This means that if I continue typing before they loaded, the first few keystrokes will go to whatever application is currently in focus. Depending on what that application is, this could be annoying to disastrous. It also means those characters are not in the menu when it eventually opens. Double bummer. ...

September 15, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

Instantcli Dotfiles

UPDATE This article is an early idea of what the tool could be. Since I wrote it, it has evolved and changed a lot. Stay tuned for more information about the current version of the tool. The tool has since been renamed to ins Idea I want to unify lots of instantOS things into an instantCLI the base command will just be instant Dotfiles I wrote about ideas for dotfile management a while back. I thought about it some more. I am abandoning the “home dir as git worktree” approach. It’s just not flexible enough. ...

September 6, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

Instantarch_rewrite

Edit This is an early draft of what the new ins arch instantOS installer actually became. The new installer works a bit different but is inspired by this scribble I did on my phone. Post This is written on my phone, really quick, dirty thoughts Rust installConfig struct instantosconfig { user: userconfig partitions: partitionconfig } serializable to toml -> reusable trait from_answers { fn from_answer(answers) -> Result Self } struct instantOSInstall { user: UserConfig } UserConfig = { username: string password: string } trait AskStep { fn collect_choices fn validate fn prompt } struct AskStepInfo { optional: bool AskStepType } enum Question { Input { default: Option<string> } SelectMultiple { choices } SelectOne { choices } YesNo } struct QuestionData { choices: map(QuestionType, data) answers: map(QuestionType, answer) } Enum QuestionType { UserName(UserNameQuestion), UserPassword(PasswordQuestion) } Alternative approach type StepId = string answerRegistry = Map<AnswerKind, Answer> ActiveQuestions = [AnswerKind] NodeRegistry = [AnswerKind, Node] build_dependencies while get_unsatisfied(unsatisfied) for step in step if step.conditions.active if step.unanswered return step struct stepCondition ValueEquals(stepID, val) ValueNot(stepID, val) ValueIn(stepID, vec val) goback() for answer in get_active() if active[i+1] == currentstep currentstep = active[i] trait Leaf<data> data: data leafkind: enum fn verify fn get_choices enum leafkind YesNo Input ChooseOne ChooseMulti Custom(lambda stuff) askLeaf(leaf) match leafkind YesNo data = gum ask SelectOne data = gum choose get_choices verify SelectMultiple data = gum choose get_choices verify struct Step { junction: Option<Vec<AskDependency>>, question: Option<Leaf(askstuff)> } struct AskDependency { name: string dependencies: [dependency] } partitionconfig depends on rootpartition bootloaderpartition fn get_unsatisfied(ActiveQuestions, NodeRegistry) sort active_questions by leaf first, junction second for question in active_questions if question.unsatisfied return question tech stack duct for commands gum for UI

August 30, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

Cline

My experiences with Cline Cline is an open-source AI-powered coding agent living in VS Code. I find VS Code rather annoying to use compared to Neovim and Zed. Cline is the thing making me keep a resource-hogging instance of VS Code open next to the other two. KiloCode and Roo Code made it seem like Cline is basically Debian, very conservative and purposefully behind in terms of features. From my experience that doesn’t seem to be the case. Cline has the most or most competent developers behind it compared to the other VS Code coders, and being mostly upstream from them has some features earlier or plain better than the others. ...

August 18, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

Namecheap is horrible

It’s horrible Stay away from it. They are not capable of delivering anything resembling good service. Horrible UI The UI is terrible. There is a dropdown menu called “Actions” at the top which for years has only contained a single action called “Delete”. Why not replace that with a button called “Delete”? By default the entry management UI shows a whopping 5 entries. There is a button which allows it to display all of them. So it’s either 5 or potentially hundreds or thousands, depending on what you’re using your domain for. No paging. ...

August 14, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

The Future of instantWM

The state of Wayland I started instantWM in (I believe around) 2019. Wayland adoption was low. It had major open issues. Screen recording. Screen sharing. No support from Nvidia. No distros using it by default. No software ecosystem with utilities coming even close to what Xorg had. Some of these are still issues. Flameshot does not work by default on Wayland. It still complains after applying a few fixes. Espanso is really hacky on Wayland. Some features straight up do not work. ...

August 12, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

Niri

Niri I have recently come across Niri. I do not know how I managed to miss that this is a thing for this long. In my limited experience this is even better than Hyprland. Overview hjkl The overview mode is amazing. It would be even more amazing if you could use hjkl vim navigation in addition to the arrow keys. This should be fairly simple XWayland XWayland is a bit rough on niri. instantmenu spawns on the wrong workspace and sometimes behind normal tiled windows. Sometimes it also opens in a window even though it is supposed to render above other windows, not inside one. I do not know if this is a problem with xwayland-satellite or niri, but sadly it makes X11-based menus nearly unusable. ...

June 11, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

Immich

My thoughts on Immich Immich is amazing. It looks like Google Photos, it feels like Google Photos, and it’s even faster. Google Photos tends to move infrequently accessed photos to really slow storage, so going through your timeline can be very slow. The desktop version of Immich is also worlds above whatever Google cannot manage to achieve. Video playback works without tons of buffering and dealing with what seems to be an outdated and probably unmaintained fork of the YouTube player. (August 2025 update: they fixed the video player, yay!) ...

February 10, 2025 · map[email:paperbenni@gmail.com name:paperbenni]

Linux Gaming Rant

Disclaimer This is a script for a video I started writing a few years ago. I didn’t want to see it rot in a notes app I no longer use, so here it is. I may have formulated it differently nowadays, but the point still stands. Rant I have long been using Linux as my primary operating system for gaming. Back when I couldn’t get wine applications to access the internet I never ever would have thought that the majority of AAA games would ever run on Linux. I love the platform and am amazed at how far it has come. However, there are things that don’t work on Linux. And oftentimes the fault lies not with Linux developers. However, this does not change the fact that some things still don’t work, and problems don’t get better if nobody talks about them. Lately I have increasingly come upon people on Linux communities who seem to function along the following lines: ...

December 30, 2024 · map[email:paperbenni@gmail.com name:paperbenni]

Automated Dotfile Management

Introduction instantOS relies on a lot of tools which use plaintext configuration in the home directory and have pretty much all their features disabled by default. This means that in order to ship a somewhat functional system out of the box, user settings need to be managed in some automated way, unless the user modifies them manually. In that case, automated changes in these files can be very destructive, as it could lead to unexpected behaviors or loss of user customizations. ...

December 13, 2024 · map[email:paperbenni@gmail.com name:paperbenni]