Git Product home page Git Product logo

Comments (18)

desdic avatar desdic commented on September 21, 2024 3

Hah I figured out a solution ..
If I change line 25

mpw=$(rofi -dmenu -p "Master Password" -password -lines 0) || exit $?

to

mpw=$(printf ''| rofi -dmenu -p "Master Password" -password -lines 0) || exit $?

when it works perfectly and no longer waits for stdin

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

Do you have a custom theme for rofi that could fail to load for dmenu mode with the password flag?

Is it possible to start rofi in that configuration at all?
(I would've given you an example command but I'm not near a PC right now.)

from bitwarden-rofi.

desdic avatar desdic commented on September 21, 2024

I did but tried to disable it. The weird part is that if I start bwmenu from a shell it always works so something must be missing in my environment for i3

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

Do you get any output if you run your shortcut command manually from a shell?

Does this work for you?

rofi -dmenu -p "Enter something" -password -lines 0

If not, does this work for you?

rofi -dmenu -p "Test" -password -lines 0 -theme /dev/null

from bitwarden-rofi.

desdic avatar desdic commented on September 21, 2024

both of them works when in a terminal. But when adding them to i3 like

bindsym $mod+Shift+b exec --no-startup-id they hang

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

Can you show your exact command?

from bitwarden-rofi.

desdic avatar desdic commented on September 21, 2024

The excact command I was using is:
bindsym $mod+Shift+b exec --no-startup-id /sbin/bwmenu
Tried talking to a co-worker and he is having the same issue as I .. however if I start the normal rofi menu and then launch bwmenu then it does not hang

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

Does it work when not placed in sbin?

I wonder what would happen if you wrapped the command in a terminal temporarily, because then we could perhaps see some output or at least kill the script using ^C.

For example if you are using gnome-shell you can write it as gnome-terminal -e /sbin/bwmenu.

from bitwarden-rofi.

desdic avatar desdic commented on September 21, 2024

Just tried with

bindsym $mod+Shift+b exec --no-startup-id alacritty -e /sbin/bwmenu

and that works every time except I do get a temporary terminal. Its like I'm missing something in my i3 environment but no idea on what. Rofi works fine so I'm suspecting its keyctl that somehow needs something although when haning I can see the process of rofi asking for a password but its not displayed

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

Are you using bash as your default shell? If not, maybe bash is missing some setup. (Note that bwmenu runs in bash)

You could test if i3 is missing something by binding the command env > ~/i3-env, running it, then comparing it to the env of your shell.

diff -u i3-env <(env)

from bitwarden-rofi.

desdic avatar desdic commented on September 21, 2024
--- i3-env.sorted	2020-03-23 13:51:50.654699219 +0100
+++ zsh-env.sorted	2020-03-23 13:52:04.261497714 +0100
@@ -1,25 +1,59 @@
+ALACRITTY_LOG=/tmp/Alacritty-1282162.log
+BROWSER=brave
+COLORTERM=truecolor
 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
 DESKTOP_SESSION=/usr/share/xsessions/i3
 DISPLAY=:0
+EDITOR=nvim
+FCEDIT=nvim
+FZF_DEFAULT_COMMAND=ag --hidden --ignore .git -f -g ''
+GOPATH=/home/kgn/go
 GTK_MODULES=canberra-gtk-module
+HISTFILE=/home/kgn/.zsh_history
+HISTSIZE=50000
 HOME=/home/kgn
 I3SOCK=/run/user/1000/i3/ipc-socket.1024751
 LANG=en_US.UTF-8
 LC_COLLATE=C
+LC_CTYPE=en_US.UTF-8
 LC_MESSAGES=C
 LC_MONETARY=da_DK.UTF-8
 LC_NUMERIC=C
 LC_TIME=da_DK.UTF-8
+LESS=-Xr
+LESS_TERMCAP_mb=�[01;31m
+LESS_TERMCAP_md=�[01;38;5;74m
+LESS_TERMCAP_me=�[0m
+LESS_TERMCAP_se=�[0m
+LESS_TERMCAP_so=�[38;5;246m
+LESS_TERMCAP_ue=�[0m
+LESS_TERMCAP_us=�[04;38;5;146m
 LOGNAME=kgn
+LSCOLORS=Gxfxcxdxbxegedabagacad
+LS_COLORS=no=00:fi=00:di=36:ln=35:pi=30;44:so=35;44:do=35;44:bd=33;44:cd=37;44:or=05;37;41:mi=05;37;41:ex=01;31:*.cmd=01;31:*.exe=01;31:*.com=01;31:*.bat=01;31:*.reg=01;31:*.app=01;31:*.txt=32:*.org=32:*.md=32:*.mkd=32:*.h=32:*.c=32:*.C=32:*.cc=32:*.cpp=32:*.cxx=32:*.objc=32:*.cl=32:*.sh=32:*.bash=32:*.csh=32:*.zsh=32:*.el=32:*.vim=32:*.java=32:*.pl=32:*.pm=32:*.py=32:*.rb=32:*.hs=32:*.php=32:*.htm=32:*.html=32:*.shtml=32:*.erb=32:*.haml=32:*.xml=32:*.rdf=32:*.css=32:*.sass=32:*.scss=32:*.less=32:*.js=32:*.coffee=32:*.man=32:*.0=32:*.1=32:*.2=32:*.3=32:*.4=32:*.5=32:*.6=32:*.7=32:*.8=32:*.9=32:*.l=32:*.n=32:*.p=32:*.pod=32:*.tex=32:*.go=32:*.sql=32:*.csv=32:*.bmp=33:*.cgm=33:*.dl=33:*.dvi=33:*.emf=33:*.eps=33:*.gif=33:*.jpeg=33:*.jpg=33:*.JPG=33:*.mng=33:*.pbm=33:*.pcx=33:*.pdf=33:*.pgm=33:*.png=33:*.PNG=33:*.ppm=33:*.pps=33:*.ppsx=33:*.ps=33:*.svg=33:*.svgz=33:*.tga=33:*.tif=33:*.tiff=33:*.xbm=33:*.xcf=33:*.xpm=33:*.xwd=33:*.xwd=33:*.yuv=33:*.aac=33:*.au=33:*.flac=33:*.m4a=33:*.mid=33:*.midi=33:*.mka=33:*.mp3=33:*.mpa=33:*.mpeg=33:*.mpg=33:*.ogg=33:*.opus=33:*.ra=33:*.wav=33:*.anx=33:*.asf=33:*.avi=33:*.axv=33:*.flc=33:*.fli=33:*.flv=33:*.gl=33:*.m2v=33:*.m4v=33:*.mkv=33:*.mov=33:*.MOV=33:*.mp4=33:*.mp4v=33:*.mpeg=33:*.mpg=33:*.nuv=33:*.ogm=33:*.ogv=33:*.ogx=33:*.qt=33:*.rm=33:*.rmvb=33:*.swf=33:*.vob=33:*.webm=33:*.wmv=33:*.doc=31:*.docx=31:*.rtf=31:*.odt=31:*.dot=31:*.dotx=31:*.ott=31:*.xls=31:*.xlsx=31:*.ods=31:*.ots=31:*.ppt=31:*.pptx=31:*.odp=31:*.otp=31:*.fla=31:*.psd=31:*.7z=1;35:*.apk=1;35:*.arj=1;35:*.bin=1;35:*.bz=1;35:*.bz2=1;35:*.cab=1;35:*.deb=1;35:*.dmg=1;35:*.gem=1;35:*.gz=1;35:*.iso=1;35:*.jar=1;35:*.msi=1;35:*.rar=1;35:*.rpm=1;35:*.tar=1;35:*.tbz=1;35:*.tbz2=1;35:*.tgz=1;35:*.tx=1;35:*.war=1;35:*.xpi=1;35:*.xz=1;35:*.z=1;35:*.Z=1;35:*.zip=1;35:*.ANSI-30-black=30:*.ANSI-01;30-brblack=01;30:*.ANSI-31-red=31:*.ANSI-01;31-brred=01;31:*.ANSI-32-green=32:*.ANSI-01;32-brgreen=01;32:*.ANSI-33-yellow=33:*.ANSI-01;33-bryellow=01;33:*.ANSI-34-blue=34:*.ANSI-01;34-brblue=01;34:*.ANSI-35-magenta=35:*.ANSI-01;35-brmagenta=01;35:*.ANSI-36-cyan=36:*.ANSI-01;36-brcyan=01;36:*.ANSI-37-white=37:*.ANSI-01;37-brwhite=01;37:*.log=01;34:*~=01;34:*#=01;34:*.bak=01;36:*.BAK=01;36:*.old=01;36:*.OLD=01;36:*.org_archive=01;36:*.off=01;36:*.OFF=01;36:*.dist=01;36:*.DIST=01;36:*.orig=01;36:*.ORIG=01;36:*.swp=01;36:*.swo=01;36:*,v=01;36:*.gpg=34:*.gpg=34:*.pgp=34:*.asc=34:*.3des=34:*.aes=34:*.enc=34:*.sqlite=34:
 MAIL=/var/spool/mail/kgn
 MOZ_PLUGIN_PATH=/usr/lib/mozilla/plugins
 OLDPWD=/home/kgn
-PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
+PAGER=less -R
+PATH=/home/kgn/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/bin/core_perl:/home/kgn/go/bin:/opt/chefdk/embedded/bin/:/home/kgn/.gem/ruby/2.7.0/bin:/home/kgn/.gem/ruby/2.6.0/bin
 PWD=/home/kgn
+SAVEHIST=10000
 SHELL=/usr/bin/zsh
 SHLVL=1
 SSH_AUTH_SOCK=/run/user/1000/ssh-agent.socket
+TERM=xterm-256color
+TERMINAL=alacritty
 USER=kgn
+VISUAL=nvim
+WINDOWID=20971522
 XAUTHORITY=/home/kgn/.Xauthority
 XDG_CURRENT_DESKTOP=i3
 XDG_RUNTIME_DIR=/run/user/1000

there are a some differences but none that I can say is the one that does it (Btw. I use zsh)

from bitwarden-rofi.

desdic avatar desdic commented on September 21, 2024

If I run the script with a
set -x
and output to a file I get

++ basename /sbin/bwmenu
+ NAME=bwmenu
+ VERSION=0.4
+ DEFAULT_CLEAR=5
+ BW_HASH=
+ CLEAR=5
+ SHOW_PASSWORD=no
+ AUTO_LOCK=900
+ ITEMS=
+ CLIPBOARD_MODE=
+ ROFI_OPTIONS=()
+ parse_cli_arguments
++ getopt -o c:C --long auto-lock:,clear:,no-clear,show-password,state-path:,help,version --
+ ARGUMENTS=' --'
+ eval set -- ' --'
++ set -- --
+ true
+ case "$1" in
+ shift
+ ROFI_OPTIONS=("$@")
+ break
+ get_session_key
+ '[' 900 -eq 0 ']'
++ keyctl request user bw_session
+ key_id=
++ ask_password
+++ rofi -dmenu -p 'Master Password' -password -lines 0

so I guess its in rofi

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

What happens if you change the shebang to run in ZSH instead?

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

Right now the likeliest thing to me is either the PATH change running the wrong Rofi bin or Rofi having this behavior when stdin is empty but isn't closing itself, and this happens for some reason.

from bitwarden-rofi.

desdic avatar desdic commented on September 21, 2024

yeah tried to switch it to zsh but still no luck .. with strace I can see a poll on fd=0 so its waiting for stdin. Also checked that I only have one rofi binary

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

Hey, that's great!

from bitwarden-rofi.

Mange avatar Mange commented on September 21, 2024

See #47 for fix.

from bitwarden-rofi.

mattydebie avatar mattydebie commented on September 21, 2024

fixed in #48

from bitwarden-rofi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.