Giter VIP home page Giter VIP logo

tessen's Introduction

About Me

Hi! I'm Ayush. I'm a Linux Systems Administrator and a DevOps enthusiast.

I write my thoughts in my microblog.

I've started using SourceHut as my primary git forge and Codeberg as my primary mirror. I'll keep using GitHub as another mirror for now.

Keys ๐Ÿ”‘

Sign

My OpenBSD signify/minisign public key is

RWTOzC8OW0l2VmPS6SWB6huDGm/rX4HYdpRyFHXX9F8M18zfJUppywsB

I use this key to sign releases. You can also find this key file on GitHub. It's also available as as DNS TXT record.

$ dig TXT signify.ayushnix.com +short | sed 's/"//g'
RWTOzC8OW0l2VmPS6SWB6huDGm/rX4HYdpRyFHXX9F8M18zfJUppywsB

Encrypt

You can send me encrypted files or messages using my age public key. My email address is available on my git commits.

age1dqhwu9r2wryc3j7kvpnrhg20jytts3vuzn9fyz7ku66m6tgpgfyscasmw5

tessen's People

Contributors

ayushnix avatar croissong avatar pshanoop avatar t0fik avatar x4121 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

tessen's Issues

Username override

Right now tessen assumes that username should be taken from a filename.
And that's it.
It's fine but should not be the only option.

It would be nice to use user or username key to override a filename.
Since it's explicitly specified, a user should be quite certain, that it should be used over a filename.

select password by default

Hi,
I'm looking for a way to select automatically the password once selected in tessen and skip the user/password selection as below

Screenshot from 2022-10-12 15-27-46

Is there a way to automatically select the password in tessen ?

Remove checking for oathtool?

Hi, I found this program to replace rofi-pass when using sway, and it works great!

However, I have some issues with otp. The reason is that I'm using NixOS, where all packaged are located in /nix/store/<some hashed path>, and oathtool is not in my PATH. Pass-otp is patched to use absolute path of oathtool, but tessen checks for oathtool and doesn't find it. So it displays an error after selecting otp.

I think checking for oathtool may not be necessary? Since the user already has pass-otp, you can assume that its dependencies are already taken care of.

allow configuring tessen using a configuration file

Using environment variables might be fine for very simple programs but, in my opinion, if a program has more than 4 or 5 options, it should use a configuration file. Restarting your login session or reloading your window manager just to change how a single program works is pretty stupid. Not to mention, your environment variables look like garbage that you'd never want in your ~/.bash_profile.

Sure, you could just script the whole thing or use `env BEMENU_OPTS='....' bemenu and then you won't need to restart your session/window manager but it's not really a good solution, in my opinion.

using tessen in guix / rde

Hi, thanks for a nice program.

I am using this in gnu guix, which has a strong emphasis on repeatability and transparency -- as such, would you be open to allowing the specification of binary paths for the menus, as opposed to reading them from PATH?

A discussion about the nature of the use is open here https://lists.sr.ht/~abcdw/rde-devel/patches/29583

Cheers!
Samuel

No way to work with username key

If a username field is present in a gpg file, tessen would offer extra username is its selection.

However, filename would be used for both of them.

Custom autotype

Right now autotype field is treated like a regular key value pair.

It would be nice to use it as an instruction for an autotype and hide it from selection.

add support for shortcut key bindings

requesting support for key bindings similar to the ones in rofi-pass:

# Custom Keybindings
autotype="Alt+1"
type_user="Alt+2"
type_pass="Alt+3"
open_url="Alt+4"
copy_name="Alt+u"
copy_url="Alt+l"
copy_pass="Alt+p"
show="Alt+o"
copy_entry="Alt+2"
type_entry="Alt+1"
copy_menu="Alt+c"
action_menu="Alt+a"
type_menu="Alt+t"
help="Alt+h"
switch="Alt+x"
insert_pass="Alt+n"

ignore spaces

thaks for writing tessen

I'm using tessen with wofi and when I'm searching for password I use multiple char separated by spaces to select the password I'm looking for

Unfortunatelly tessen is not ignoring spaces and is looking for it so I can't find my password unless I know the exact path location

is it possible for tessen to ignore spaces ?

Using `-a autotype` or `action=autotype` in config doesn't work as expected

Because the script explicitly assigns tsn_action="default" near the start, but later checks -z $tsn_action before changing the value, the value always remains "default", and both autotype and copy are always offered. Just commenting out the default assignment fixes the problem for me.

Thanks for the nice script.

filename used for username, not key

Hey there,
I really like this project overall, but there's one problem that's bugging me: I cannot get tessen to use login or username as the username value.
I added a regex pattern for the username value and it's still using the filename for the username.
My ~/.config/tessen/config:

dmenu_backend="fuzzel"
action="autotype"
delay="100"
notify="true"
userkey="(user.*|login)"

Any idea why that is happening?

Gopass multi store/mounts not working

When using gopass multistore/mounts it always says the password is empty
the command fails to know it's on a store

โžœ tessen -d wofi -p gopass -a copy
misc/teste is empty

โœ–1 โœ—  gopass show -n -f misc/teste
โš  Entry "misc/teste" not found. Starting search...
โœ… Found exact match in "pessoal/misc/teste"
Secret: pessoal/misc/teste

j6Ap)\u(w5
test: hello

โžœ gopass mounts
gopass (/home/sfrique/.local/share/gopass/stores/root)
โ””โ”€โ”€ pessoal (/home/sfrique/.local/share/gopass/stores/pessoal)

Feature request: support for smartcards/yubikey

I have gopass setup to use a gpg key that lives on my yubikey. This works fine with tessen as well, except for when I need to use a password to unlock it. Where gopass would normally prompt me with pinentry tessen doesn't generate any kind of prompt at all. This means I have to go enter the pin elsewhere to unlock the yubikey before I can use tessen. Ideally tessen would pop up with a pinentry window when it's necessary.

Add "totp" keyword for gopass compatibility

I was trying to figure out why OTP generation was not working correctly for me (I use gopass, and primarily totp tokens stored with the "totp" keyword).

Looking into the tessen script, I noticed the comment gopass totp is deprecated. May I ask why this is the case? It seems that a very minor change would make it work again, like this one.

allow using any dmenu backend

Maintaining a whitelist of allowed backends and their options doesn't sound good. tessen should let users choose a dmenu like backend of their own choosing. The list of available software I'm aware of that have a dmenu-like mode and work on Wayland are:

Tessen creates an "invisible" folder

Hi,

I'm using Tessen with Wofi and noticed that it creates a folder named " " (white space) containing a dev subfolder containing itself a null subfolder.

The problem comes from the following line:

dmenu_backend_opts=('-d' '-k /dev/null')

It should be replaced with:

dmenu_backend_opts=('-d' '-k/dev/null')

or:

dmenu_backend_opts=('-d' '--cache-file=/dev/null')

Best regards

gopass backend is not functional with gopass v1.15+

gopass v1.15 adopted a new configuration syntax and the output of gopass config has changed in such a way that tessen no longer parses it correctly. Previously the output was in this format:

autoclip: false
autoimport: true
cliptimeout: 45
exportkeys: true
keychain: false
nopager: false
notifications: true
parsing: true
path: /path/to/stores
safecontent: false

The new output is in this format:

age.usekeychain = false
core.autoclip = false
core.autoimport = true
core.autosync = true
core.cliptimeout = 45
core.exportkeys = true
core.nopager = false
core.notifications = true
core.parsing = true
core.showsafecontent = false
mounts.path = /path/to/stores

Passing backend options

Great project, thank you!
I've been trying to add an option to the rofi backend, for example, a font:

tessen -b 'rofi -dmenu -i -font "Roboto 11"'

but that doesn't seem to work. It'd be great to pass a font and a theme etc. Any ideas? Thanks!

Password prompt

Hi,

I find your tessen as a great substitute of rofi-pass, given the technical context I am using - Arch linux, Wayland, Sway and wofi. Please consider that I am newbie in Arch and have some tolerance - the cool kids don't let me hang out with them oherwise.

What I am trying to do Is to bind tessen to a key bind, here is the code I have added in my ~/.config/sway/config:
bindsym Alt+p exec tessen

I used to pull that/similar trick in Ubuntu with rofi-pass and it worked great. I do not assume this is the correct way of doing.

The issue I have, is that when I run tessen with the key combination mentioned above, when it is the time to ask for a password to use the gpg key, which encrypts my secrets, no password prompt shows up. However, if I run tessen in the terminal (Alacrity with fish shell), I get password prompt, and after that I can use tessen through the shortcut combo while it is still authorized without any problems.

In short, how should I configure my system to get gui password prompt when I use tessen with a shortcut?

I know one of my colleagues is using rofi-pass in the same environment (Arch, Wayland and Sway), but he is on vacation and I want to make a good impression when he is back. :D I am not sure what trick he pulls to get the password prompt popup. Please help.

Sincerely

add support for bitwarden

The official bitwarden CLI isn't really human friendly but it does output JSON and that can be parsed with jq. An unofficial cli, rbw, seems like a much more human friendly interface.

It seems like there are already several dmenu wrapper projects for both the official CLI and for rbw. Still, it should be interesting to add support for bitwarden in tessen. We already support pass and gopass. I intend to add support for both the official CLI and rbw in the next major release of tessen.

Conflict with rofi and dmenu

Hello, previously i use rofi, then i installed tessen with

yay -S wtype
yay -S tessen

then tessen opened by dmenu?? how change tessen run with rofi . also my keybind are doubled with dmenu like if i press window tab / a usually it open rofi now its open tessen and rofi ( double )

Keybinding rofi
image
then when i close , it open rofi
image

Add support for gopass

gopass is a rewrite of the venerable pass code in golang. Unfortunately the commands are not always the same; the largest difference is gopass requires the use of a 'show' command to display output. Haven't tested the otp support, but with minimal changes tessen works really well with gopass.

add support for keepassxc

It looks like keepassxc provides a CLI interface and there are a few dmenu wrappers that use it although they also support adding, editing, and generating passwords. I'm not sure if I want to support those features.

Apparently, there's also something called the secret service API on Linux to retrieve passwords from an application that supports this and keepassxc seems to do that. If this is agnostic towards desktop environments and window managers, makes sense to support this as well.

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.