openSUSE / openSUSEway

dotfiles for Sway on openSUSE
MIT License
82 stars 17 forks source link

Add rofi styling #75

Closed mcepl closed 7 months ago

mcepl commented 1 year ago

Yes, I understand that we prefer wofi for our menu application system (although, that seems to be abandoned), but rofi seems to be much more capable, so there are applications based on it (e.g., I use pinentry-rofi), which cannot be reasonably ported to wofi. And yes, I have pointed out to the rofi port to Wayland.

Unfortunately the problem is that whenever I run any rofi-based application it looks like an alien on my openSUSEway desktop:

screenshot-2022-08-26_18-08-1661532787

(and that's my attempt to find the least offensive rofi theming)

This ticket should consolidate all effort to create some kind of theme for rofi, so that it wouldn't look so horrible.

jubalh commented 1 year ago

Might be of interest: just recently I stumbled upon a theme collection: https://github.com/Murzchnvok/rofi-collection Maybe that helps/inspires.

uncomfyhalomacro commented 1 year ago

Why not fuzzel

jubalh commented 1 year ago

Could you post a comparison? We have both in repos.

uncomfyhalomacro commented 1 year ago

Fuzzel

Fuzzel can now be configured in ini file-format. It's simple to use and can be configured with tessen, a script to interact pass.

It can also be configured with fnott as well since fnott can now be also configured with ini file-format. With a keybind to run a script, one can finally interact notifications using fuzzel.

#!/bin/bash

shopt -s lastpipe

if [ "$1" == "act" ]
then
    fnottctl list | fuzzel -p \
        "Select notif to act on: " \
        -s f2d26fff \
        -S 173f4fff \
        -t 35b9abff \
        -b 061C2Aff \
        -r 0 \
        -C 81c13bff \
        -f "JetBrains Mono:size=8" \
        -x 30 \
        -w 45 \
        -y 70 \
        -l 20 \
        --dmenu \
        --no-run-if-empty | read -r notif

    fnottctl actions "$(echo "${notif}" | cut -d':' -f1)"
else
    fnottctl list | fuzzel -p \
        "Select notif to dismiss: " \
        -s f2d26fff \
        -S 173f4fff \
        -t 35b9abff \
        -b 061C2Aff \
        -r 0 \
        -C 81c13bff \
        -f "JetBrains Mono:size=8" \
        -x 30 \
        -w 45 \
        -y 70 \
        -l 20 \
        --dmenu \
        --no-run-if-empty | read -r notif

    fnottctl dismiss "$(echo "${notif}" | cut -d':' -f1)"
fi

Screenshots

image

image

image

Cons The only con I think is also it's pros. Fuzzel can be configured with ini but it cannot be configured as complex as those like rofi's or wofi's. However, it does the job well, and it requires little configuration so I think it's a win for me.

mcepl commented 1 year ago

Why not fuzzel

Because rofi is much more than just drun substitute. See for example https://github.com/plattfot/pinentry-rofi (aka https://build.opensuse.org/package/show/home:mcepl/pinentry-rofi).

With relation to images, see for example this regular wofi menu:

screenshot-2023-01-23_16-01-1674489309

with this pinentry-rofi:

screenshot-2023-01-23_16-01-1674489517

uncomfyhalomacro commented 1 year ago

Why not fuzzel

Because rofi is much more than just drun substitute. See for example https://github.com/plattfot/pinentry-rofi (aka https://build.opensuse.org/package/show/home:mcepl/pinentry-rofi).

Isn't pinentry rofi just a script that utilizes dmenu mode of rofi? I think that can be done with fuzzel since fuzzel also has dmenu mode.

mcepl commented 1 year ago

Isn't pinentry rofi just a script that utilizes dmenu mode of rofi? I think that can be done with fuzzel since fuzzel also has dmenu mode.

Taken this way, there is no reason why not to use wofi(1), which is already installed. Rewrite of pinentry-rofi either to some reasonable language (aka anything else than Scheme ;), OK, no Haskell either, please) or using wofi/fuzzel would be more than welcome.

Hmm, there is a reason, why not to use wofi(1): it seems to be abandoned. If we want to continue depend on it, somebody should make a fork (or ask for co-maitaining it … it is not completely abandonded, last commit is 29 days ago), and at least collect all those patches.

uncomfyhalomacro commented 1 year ago

Hmm, there is a reason, why not to use wofi(1): it seems to be abandoned. If we want to continue depend on it, somebody should make a fork (or ask for co-maitaining it … it is not completely abandonded, last commit is 29 days ago), and at least collect all those patches.

It's possible someone can take over and maintain it given there are many users that do use it. I have no problem with wofi. Or maybe a rewrite for newer GTK versions inspired from it.

mcepl commented 7 months ago

Taken this way, there is no reason why not to use wofi(1), which is already installed. Rewrite of pinentry-rofi either to some reasonable language (aka anything else than Scheme ;), OK, no Haskell either, please) or using wofi/fuzzel would be more than welcome.

I have created such replacement as pinentry-rofi which is pure bash, but otherwise I have left openSUSEway and do Moldavite instead … full MicroOS/Sway-based distro.

denisok commented 5 months ago

@mcepl congrats on it! I will put alternatives to README! yours and https://github.com/ProjectGreybeard/Info

FilippoBonazziSUSE commented 5 months ago

Should we consider a wofi alternative then?

uncomfyhalomacro commented 5 months ago

Seems wofi is maintained again! https://sr.ht/~scoopta/wofi/

mcepl commented 5 months ago

Seems wofi is maintained again! https://sr.ht/~scoopta/wofi/

Yes, but rofi is much more capable and wofi doesn’t provide anything like the wealth of scripts like https://github.com/davatorium/rofi/wiki/User-scripts.

FilippoBonazziSUSE commented 5 months ago

Seems wofi is maintained again! https://sr.ht/~scoopta/wofi/

There is still this banner though... I don't know

image

mcepl commented 5 months ago

Well, the last patch has been applied 5 months ago, the last ticket closed a month ago, is it truly dead?