[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gtk-devel
Subject:    Re: Extending GtkMountOperation to support TrueCrypt/VeraCrypt
From:       Matthias Clasen <matthias.clasen () gmail ! com>
Date:       2018-02-02 17:02:24
Message-ID: CAFwd_vBE03YB3RUiHpW+xYQxKJTXx17CdGOo6OXWaFn0tDmGxQ () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


On Thu, Jan 25, 2018 at 2:15 PM, segfault <segfault@riseup.net> wrote:

> (I resend this email because the first one awaits moderator approval
> since a few days, because I was not subscribed to the list when I sent it)
>
> Hi,
>
> we at Tails (tails.boum.org) are currently working on adding support for
> TrueCrypt and VeraCrypt volumes in udisks and GNOME Disks (see also the
> corresponding thread on devkit-devel [1]). A team mate will also send an
> email regarding this to GNOME UX people in the next days, so you won't
> see any code from us implementing a GUI design that they have not
> accepted. I'm stating this so you can ignore the GUI design implications
> for now.
>
> Beside other things, we also want to support unlocking via the GVfs
> udisks volume monitor, which automatically prompts the user to unlock
> encrypted volumes once they are plugged in. In order to fully support
> TC/VC volumes, the unlock dialog shown to the user must allow specifying
> several other options than only the password, namely: keyfiles required
> to unlock the file, a PIM value [2], and whether the volume is a hidden
> volume, a system volume, or neither.
>

Doesn't sound like the greatest user experience, having to specify
a ton of arcane details like that...


> The work on this part turned out more complicated than we anticipated.
> The unlock dialog is not created by the GVfs monitor directly, but by
> GtkMountOperation, which in turn calls
> org.gtk.MountOperationHandler.AskPassword, which is part of GNOME Shell,
> and which then finally creates the ShellMountPasswordDialog (please
> correct me if I got anything wrong).
>
> This means that we will have to patch a lot more, and more low-level
> GNOME components than we anticipated, and we would like to ask for
> advice on what the best way to solve this would be.
>
> The only way I see is to extend GtkMountOperation (and GMountOperation)
> by fields for the additional options, and create new flags in
> GAskPasswordFlags, which can be passed down from GVfs to
> ShellMountPasswordDialog. This could be a single "VeraCrypt-mode" flag,
> or a separate flag for each of the required options I listed above.
>
> Do you see a better way?
>
>
If you could describe the required data a bit more, it might be possible to
figure out
if we can describe this in a somewhat concise way - it sounds like you need
to add
a file chooser button, an entry and a combobox ?

[Attachment #5 (text/html)]

<div dir="ltr">On Thu, Jan 25, 2018 at 2:15 PM, segfault <span dir="ltr">&lt;<a \
href="mailto:segfault@riseup.net" target="_blank">segfault@riseup.net</a>&gt;</span> \
wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex">(I resend this email because the first one awaits moderator \
approval<br> since a few days, because I was not subscribed to the list when I sent \
it)<br> <br>
Hi,<br>
<br>
we at Tails (<a href="http://tails.boum.org" rel="noreferrer" \
target="_blank">tails.boum.org</a>) are currently working on adding support for<br> \
TrueCrypt and VeraCrypt volumes in udisks and GNOME Disks (see also the<br> \
corresponding thread on devkit-devel [1]). A team mate will also send an<br> email \
regarding this to GNOME UX people in the next days, so you won&#39;t<br> see any code \
from us implementing a GUI design that they have not<br> accepted. I&#39;m stating \
this so you can ignore the GUI design implications<br> for now.<br>
<br>
Beside other things, we also want to support unlocking via the GVfs<br>
udisks volume monitor, which automatically prompts the user to unlock<br>
encrypted volumes once they are plugged in. In order to fully support<br>
TC/VC volumes, the unlock dialog shown to the user must allow specifying<br>
several other options than only the password, namely: keyfiles required<br>
to unlock the file, a PIM value [2], and whether the volume is a hidden<br>
volume, a system volume, or neither.<br></blockquote><div><br></div><div>Doesn&#39;t \
sound like the greatest user experience, having to specify</div><div>a ton of arcane \
details like that...<br></div><div>  </div><blockquote class="gmail_quote" \
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> The work on \
this part turned out more complicated than we anticipated.<br> The unlock dialog is \
not created by the GVfs monitor directly, but by<br> GtkMountOperation, which in turn \
calls<br> org.gtk.MountOperationHandler.<wbr>AskPassword, which is part of GNOME \
Shell,<br> and which then finally creates the ShellMountPasswordDialog (please<br>
correct me if I got anything wrong).<br>
<br>
This means that we will have to patch a lot more, and more low-level<br>
GNOME components than we anticipated, and we would like to ask for<br>
advice on what the best way to solve this would be.<br>
<br>
The only way I see is to extend GtkMountOperation (and GMountOperation)<br>
by fields for the additional options, and create new flags in<br>
GAskPasswordFlags, which can be passed down from GVfs to<br>
ShellMountPasswordDialog. This could be a single &quot;VeraCrypt-mode&quot; flag,<br>
or a separate flag for each of the required options I listed above.<br>
<br>
Do you see a better way?<br><br></blockquote><div><br></div><div>If you could \
describe the required data a bit more, it might be possible to figure \
out</div><div>if we can describe this in a somewhat concise way - it sounds like you \
need to add</div><div>a file chooser button, an entry and a combobox \
?<br></div></div></div></div>



_______________________________________________
gtk-devel-list mailing list
gtk-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-devel-list


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic