Giter Club home page Giter Club logo

vaults's People

Contributors

albanobattistella avatar bilelmoussaoui avatar iagocaran avatar jacsonah avatar johns2s avatar kianmeng avatar mpobaschnig avatar oscfdezdz 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

Watchers

 avatar  avatar  avatar

vaults's Issues

Can't resize file picker window

Steps to reproduce

Steps to reproduce the behavior:

  1. Open file picker either from preferences or import menu
  2. Try to resize the window

Current behavior

Can't resize file picker window

Version information

  • Application: 0.2.0
  • CryFS (if related): I do not install CryFS because theres no such package in fedora rpm repo
  • Gocryptfs (if related): 1.8.0
  • Distribution: Fedora 35

Additional information

Kooha-12-27-2021-17-33-47.mp4

Improved adaptive support

Is your feature request related to a problem? Please describe.
On smaller screens (e.g. pinephone and the librem 5) it would be easier to use the configuration dialogs if they took up the whole screen.

Describe the solution you'd like
Windows should take up the full vertical space on small screens.

Additional context
Possible resources: libadwaita and examples of adaptive menus in other projects like clapper.

Images
Note: These were take on the mobile QEMU image of PureOS

image
image

Improve app icon

I have an improvement suggestion for the app icon.
What do you think about?
vaults

Automatically create mount directory with generated directory name

Is your feature request related to a problem? Please describe.
I'd like to be able to mount multiple different encrypted directories without having to keep empty mount directories around.

Describe the solution you'd like
Select a parent directory where mount directories would be automatically created with (partially random?) generated directory names.

Additional context
e.g. I choose the parent directory /run/media/teohhanhui, and Vaults would generate /run/media/teohhanhui/Vaults-{uuid}

Display a warning message to backup config file after making a vault with gocryptfs

gocryptfs in their documentation mention:
The old principle still applies: Important data should have a backup. Also, keep a copy of your master key (printed on mount) in a safe place. This allows you to access the data even if the gocryptfs.conf config file is damaged or you lose the password.

That's why I think it is important to warn user how important gocryptfs.conf is and tell them to back it up.
So that when bitrot happens on the config files or user accidentally delete it they can use the backed up conf.

Also I think having an unencrypted version of file as a backup is defeating the purpose of file encryption.

Describe the solution you'd like
Display a warning message after making a vault

The 'Add' button is grayed out

Steps to reproduce

Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Current behavior

A clear and concise description of the current behavior.

Expected behavior

A clear and concise description of what you expected to happen.

Version information

  • Application:
  • CryFS (if related):
  • Gocryptfs (if related):
  • Distribution:

Additional information

Please provide the terminal output when the bug happens and if applicable, add screenshots or screencasts to help explain your problem.
129377434-56d870be-994f-4ad5-a513-f2c299a028fa

Nuking A Vault

This isn't so much a bug I'd guess, as opposed to just the way things are in Linux with Flatpaks installed as User, AFAIK. As an experiment, I installed Vaults via Flathub as User to my Home folder, then I made a vault using CryFS. Then I simply arbitrarily changed all permissions of everything in Home, as for example, via chmod + read, write, & executable. The result was that Vaults no longer respected their passwords, even if I changed permissions of the flatpak folders (local and var) back to my best guess as to their defaults. This is all somewhat expected, but I thought I should report here how easy it seems to nuke vaults, unless there is some vital piece of information I'm missing in order to restore them after their flatpak contents' permissions are changed via even GNOME Shell File Properties. This was just an experiment; I had no important data in them. But I conclude if somebody was trying to keep important documents or whatever, they should know it seems very easy to destroy access to them with a simple command or GUI gesture, and I'm not sure it's possible to recover. I don't know how the encryption works, but I'm guessing any modification to file permissions ruins a key or config in the app directory? Therefore, I suppose it should be noted somewhere that Vaults ought to be installed as a System Flatpak to reduce the chances of this happening so easily. I didn't see it if it already is. I don't know. Or maybe somebody here knows how to recover after a weird, but simple scenario like this.

Anyway, thanks for this neat app. I like it.

Steps to reproduce the behavior:

  1. Arbitrarily change permissions of Vault flatpak folders back and forth.
  2. Try to re-enter a vault. Password will fail.
  • Application:
  • CryFS
  • Vault Flatpak (user install)
  • Distribution: Fedora 36

"The encrypted data directory is not empty" error

Situation:
My Linux partition was basically bricked a few days ago. All files intact, and I accessed them from new Linux partition, including vaults files.

  • I placed the (gocryptfs) vault files into the correct place, all files intact. (home/name/.var/app/io.github.mpobaschnig.Vaults)
  • Downloaded and installed gocryptfs back-end.
  • I have the correct password to open the files.
  • The "unlock" icon on Vaults lights up. I press it, enter my password, and the error "The encrypted data directory is not empty" appears.

I hope I came to ask at the right place. What does this error mean? and how to solve it?

Close button does not appear outside the home page

Steps to reproduce

Steps to reproduce the behavior:

  1. In the home page click on 'Add or Import New Vault'.
  2. The close button disappeared from header bar.

Current behavior

The close button disappears from the header bar when adding/importing a new vault.

Expected behavior

That the close button remains visible during the entire runtime of the app.

Version information

  • Application: 0.1.0-bb9db3b
  • Distribution: Fedora 34 Workstation

Additional information
image
The close button disappear here:
image

Include the project on GNOME Circle

First of all, thank you for your amazing work. I was using a script in nautilus with zenity to open my vault and even tried to build a gnome extension for it, although, I am not a developer. Thank you.

May I suggest to include your project on the GNOME Circle. The project will benefit from more advertising and visibility, and hopefully also from contributions.

Backend not detected when importing.

Steps to reproduce

Steps to reproduce the behavior:

  1. Go to 'Import vault'
  2. Select directory
  3. Click next
  4. See error

Current behavior

Installed backend not detected when importing an already made vault. While creating and using new one works.

Expected behavior

Installed backend should be detected when importing vault.

Version information

  • Application:0.2.0
  • CryFS (if related):
  • Gocryptfs (if related):
  • Distribution:Fedora Silverblue

Additional information

New vault Import vault

File chooser: Cannot select empty directory from inside

Steps to reproduce

Steps to reproduce the behavior:

  1. Create new vault
  2. Open file chooser to set either mount or data directory
  3. Navigate into an existing empty folder you want to choose as directory

Current behavior

When in an empty directory in the file chooser, it is not possible to "select" the folder (button is greyed out). one needs to navigate one level up, mark the folder and can now click the select button

Expected behavior

When in an empty folder, it should be assumed that I could want to select the current directory as destination, and be offered to click the select button (or confirm via return-key)

Version information

  • Application: 0.3.0 (flatpak)
  • Distribution: Debian unstable

Locking the vault doesn't unmount the directory

Steps to reproduce

Steps to reproduce the behavior:

  1. Go to default screen while vault is unlocked
  2. Click on the lock button
  3. See error

Current behavior

Lock closes, but the actual directory doesn't unmount. When I open the mount directory, I can still see all the files.

Expected behavior

Mount directory should be emptied, same way as when using the fusermount -u command

Version information

  • Application: 0.3.0
  • Gocryptfs (if related): v2.3
  • Distribution: Fedora 36

Entries length in dialogs do not match

Is your feature request related to a problem? Please describe.
The GTK entries without linked buttons do not have the same length as entries with buttons. This stands out.

Describe the solution you'd like
Change the length to match others.

Add aditional config options

Is your feature request related to a problem? Please describe.
CryFS and gocryptfs have some flags that might be interesting for the user to change.

Describe the solution you'd like
In the settings dialog the settings can be changed per-vault.

Additional context
Additional action rows in a config section in settings dialog.

Default path for encrypted data: Vault name is appended to folder name instead of creating a sub-directory

Steps to reproduce:

  1. Go to preferences and set the default path for encrypted data directory e.g. ~/.vaults
  2. Create a new vault e.g. example

Current behavior

The encrypted data directory of the new vault is set as ~/.vaultsexample

Expected behavior

The encrypted data directory of the new vault should be set as ~/.vaults/example

Version information

  • Application: 0.2.1 (Flatpak)
  • Distribution: EndeavourOS with GNOME 41.1

Additional information

This way it would be easier to distinguish these folders when working with many vaults.

Include encryption deps

Is your feature request related to a problem? Please describe.
On distros like fedora silverblue you generally are discouraged from layering packages.

Describe the solution you'd like
Include gocryptfs, CryFS, libfuse in the flatpak.

Additional context
Considering these are sensitive deps I wouldn't want them included in the flatpak unless there was a way to have a flathub bot watch upstream for updates and make automatic PRs.

Show additional information on backends

Is your feature request related to a problem? Please describe.
Currently a user must decide between two backends, but may not know which backend to use when.

Describe the solution you'd like
Add addtional information when to use which backend. Maybe a button that can be clicked which shows an information dialog?

No backends available

Screenshot from 2022-05-10 20-58-49

Vaults can't find CryFS backend.

My setup: Fedora Silverblue 36, latest Vaults from Flathub stable, cryfs-0.11.2-1.fc36.

$ rpm -qi cryfs
Name        : cryfs
Version     : 0.11.2
Release     : 1.fc36
Architecture: x86_64
Install Date: Tue 10 May 2022 18:57:10 MSK
Group       : Unspecified
Size        : 4499524
License     : LGPLv3
Signature   : RSA/SHA256, Sun 27 Mar 2022 13:36:24 MSK, Key ID 999f7cbf38ab71f4
Source RPM  : cryfs-0.11.2-1.fc36.src.rpm
Build Date  : Sun 27 Mar 2022 13:05:17 MSK
Build Host  : buildvm-x86-27.iad2.fedoraproject.org
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : https://www.cryfs.org/
Bug URL     : https://bugz.fedoraproject.org/cryfs
Summary     : Cryptographic filesystem for the cloud
Description :
CryFS provides a FUSE-based mount that encrypts file contents, file
sizes, metadata and directory structure. It uses encrypted same-size
blocks to store both the files themselves and the blocks' relations
to one another. These blocks are stored as individual files in the
base directory, which can then be synchronized to remote storage
(using an external tool)

Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

When we go to preferences and "Choose Encrypted Data Directory" the console shows this:


(vaults:5): GVFS-WARNING **: 14:06:55.635: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

flatpak run --filesystem=xdg-run/gvfsd io.github.mpobaschnig.Vaults fixes the above error message

--filesystem=xdg-run/gvfsd to manifest?

Asynchronously init backend

Is your feature request related to a problem? Please describe.
When initializing the backend, the UI gets stuck if the backend takes too long.

Describe the solution you'd like
Asynchronously init backend and show spinner.

Allow running without flatpak

Is your feature request related to a problem? Please describe.
Currently only Flatpak is supported in the backend using flatpak-spawn commands.

Describe the solution you'd like
Add runtime check if the app is flatpak'd and depending on that use different commands.

Listen for mount/unmount events

Currently, one has to press the refresh button to update the list of mounted/unmounted vaults, so add a way to listen to mount/unmount events to update the list accordingly.

error: No remote refs found similar to ‘org.gnome.Sdk/x86_64/master’

gnome sdk master not found?

flatpak install org.gnome.Sdk/x86_64/master
Looking for matches…
error: No remote refs found similar to ‘org.gnome.Sdk/x86_64/master’
rizvan@asif-pc:~/build/Vaults$ flatpak install org.gnome.Sdk

Looking for matches…
Remotes found with refs similar to ‘org.gnome.Sdk’:

   1) ‘flathub’ (system)
   2) ‘flathub’ (user)

Which do you want to use (0 to abort)? [0-2]: 2
Similar refs found for ‘org.gnome.Sdk’ in remote ‘flathub’ (user):

   1) runtime/org.gnome.Sdk/x86_64/3.24
   2) runtime/org.gnome.Sdk/x86_64/3.26
   3) runtime/org.gnome.Sdk/x86_64/3.28
   4) runtime/org.gnome.Sdk/x86_64/3.30
   5) runtime/org.gnome.Sdk/x86_64/3.32
   6) runtime/org.gnome.Sdk/x86_64/3.34
   7) runtime/org.gnome.Sdk/x86_64/3.36
   8) runtime/org.gnome.Sdk/x86_64/3.38
   9) runtime/org.gnome.Sdk/x86_64/40
  10) runtime/org.gnome.Sdk/x86_64/41
  11) runtime/org.gnome.Sdk/x86_64/42

Password Dialog Cut-off

Steps to reproduce

Steps to reproduce the behavior:

  1. Create vault
  2. Unlock vault

Current behavior

Password dialog gets cut-off when you go to unlock a vault by default.

Expected behavior

Password dialog shouldn't need to be adjusted by default.

Version information

  • Application: 0.1.0
  • CryFS (if related): N/A
  • Gocryptfs (if related): N/A
  • Distribution: Fedora 34 Silverblue

Additional information

image

Incorrect dialog size popup

Steps to reproduce

Steps to reproduce the behavior:

  1. Open Vaults
  2. Click on 'Add' 'Import' or 'Open'
  3. See error

Current behavior

The dialog popup has incorrect size, thus not showing the content properly.

Expected behavior

The dialog popup has the right size, so there'd be no need to resize it manually.

Version information

  • Application: Vaults
  • CryFS (if related):
  • Gocryptfs (if related):
  • Distribution: Fedora Silverblue

Additional information

Screenshot from 2021-09-27 18-27-46

Let tab switch to next entry

Is your feature request related to a problem? Please describe.
Currently, when creating or importing a new vault, pressing tab in one entry focuses the next row instead of entry or combobox.

Describe the solution you'd like
Switch to next entry/combobox.

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.