Skip to content

[pass] [bug] Symlinks not working properly #219

@mrmalachai

Description

@mrmalachai

Extension name

pass

Description

Background

In my password-store folder, I have multiple subfolders for different categories. I know this is a common configuration. One of these folders is titled "work" and is where I symlink entries for my job. I store the actual entries under the specific entry's category (for example "applications" or "websites") then symlink from that entry to one under the work directory. There are also other symlinks, such as a multi-word website name being symlinked to it's abbreviation.

Issue

The current behavior of the pass extension causes these symlinks be forced into the "root" of the pass tree, which breaks their connection to the actual filesystem and therefore ends up with them failing to be found when selected.

Possible Solution

Upon tinkering, I believe I've found a solution to this issue, in passctl.ts, essentially replacing line 79 with lines 70-73, but I'm not very versed in symlinks and their consequences, so someone else having a look at this would be very helpful. I'm using my solution on my local copy for now to test it out, and thus far I haven't had any issues, but I'll comment if I do.

Steps to reproduce

  1. Have a password entry in a subdirectory. (for example website/github)
  2. Create a symlink from that password entry to another entry in another subdirectory (for example work/git)
  3. Attempt to access work/git in the extension
  4. git by itself will appear, along with website/github, and git will not work because git.gpg doesn't exist (as it's in the work directory.)

Vicinae version

0.20.7

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions