Project

General

Profile

Feature #15259

Feature #14568: Additional Software Packages

Feature #14594: Code & integration into Tails: Additional Software Packages GUI

Feature #14595: Code for Additional Software Packages GUI: Persistence Setup

Add button in tails-persistence-setup to open the configuration interface of Additional Software

Added by sajolida over 1 year ago. Updated about 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Persistence
Target version:
Start date:
01/29/2018
Due date:
% Done:

100%

QA Check:
Feature Branch:
perl5lib:feature/14594-asp-gui, iuk:feature/14594-asp-gui, persistence-setup:feature/14594-asp-gui, feature/14594-asp-gui
Type of work:
Code
Blueprint:
Starter:
Affected tool:
Additional Software Packages

power.png View (30.7 KB) sajolida, 01/29/2018 10:40 AM


Related issues

Related to Tails - Feature #15314: Replace custom widget button in persistent wizard with standard GNOME switches Resolved 02/15/2018

Associated revisions

Revision 77a2172d (diff)
Added by intrigeri about 1 year ago

WIP: update test suite for new Persistent Wizard UI (refs: #6485, #15259, #15314).

The tails-persistence-setup UI has changed in a number of ways:

- some setting lines now have a "Configure" button
- custom widgets were replaced with standard GNOME ones
- a "preset" can now map to N lines in persistence.conf

Revision 619bf11b (diff)
Added by intrigeri about 1 year ago

Update more of the test suite for new Persistent Wizard UI (refs: #6485, #15259, #15314).

History

#1 Updated by intrigeri over 1 year ago

I did not expect I would be asked to fully rewrite the GUI as part of #14595 when I did my time estimates, but whatever: your proposal makes a lot of sense and indeed, the current design does not leave much room to add the widgets we need here, so yeah :)

#2 Updated by intrigeri over 1 year ago

  • Target version set to Tails_3.7

#3 Updated by intrigeri over 1 year ago

  • Assignee changed from intrigeri to sajolida
  • Target version changed from Tails_3.7 to Tails_3.6

sajolida, once this is ready for implementation, please set Type of work = Code, Target version = 3.7, and reassign to me.

#4 Updated by sajolida over 1 year ago

  • File deleted (modern hig.png)

#5 Updated by sajolida over 1 year ago

  • Assignee changed from sajolida to intrigeri
  • QA Check set to Info Needed

I'm removing "modern hig.png" and instead you should refer to:

https://raw.githubusercontent.com/sajolida/tails-wireframes/master/additional%20software/png/persistent%20storage%20-%20configuration%20changed.png

There are 2 aspects to the changes that we are proposing:

First, the important one is to make space to have a button to open the configuration interface of Additional Software. We're achieving this by replacing the custom widget that we currently have (a button with a check mark when selected) with a list of options with "On/Off" switches. I'm happy to discuss with you which other options would work for people while still being easier for you to implement.

Second, the bonus one, is the fact of removing the "Save" button and replace it with what is the consistent behavior of GNOME configuration interfaces these days: changing an option means applying it, without the need for an explicit "Save" action.

We've replaced the screen after clicking "Save" by a infobar asking to restart and a confirmation dialog if the "Restart" button is clicked in the info bar:

https://raw.githubusercontent.com/sajolida/tails-wireframes/master/additional%20software/png/persistent%20storage%20-%20confirm%20restart.png

This change is not required for the Additional Software feature to work and might be more work for you to do in the backend. Since we were redesigning and testing changes it made sense for us to include this change in our mockups even if you don't have time to implement it.

Spoiler, my secret plan is to get rid of the need to call this a "wizard" and have it behave more like a regular GNOME configuration dialog: getting rid of the concept of having several screens in a sequence.

I'm aware that changing the "Save" button also relates to #12448, but the interactions that we might propose for #12448 will likely be different whether or not we have a "Save" button so settling on how easy it would be to remove it, will inform our design for #12448 (which is anyway not planned any time soon).

What other information do you need before putting this in "Code"? If you need software comunication plans, you have to talk to Alan :)

#6 Updated by intrigeri over 1 year ago

  • Subject changed from Apply modern GNOME HIG to persistent storage configuration to Add button in tails-persistence-setup to open the configuration interface of Additional Software

#7 Updated by intrigeri over 1 year ago

  • Assignee changed from intrigeri to sajolida

I'm removing "modern hig.png" and instead you should refer to:
https://raw.githubusercontent.com/sajolida/tails-wireframes/master/additional%20software/png/persistent%20storage%20-%20configuration%20changed.png

There are 2 aspects to the changes that we are proposing:

First, the important one is to make space to have a button to open the configuration interface of Additional Software. We're achieving this by replacing the custom widget that we currently have (a button with a check mark when selected) with a list of options with "On/Off" switches.

At first glance this seems doable. I have no idea how this relates to "make space to have a button to open the configuration interface of Additional Software", to me this seems entirely orthogonal, but you're the GUI design boss so it's of course your call. Now I'm curious and I want to learn, so I'd love if you could explain the "We're achieving this by" part.

I've retitled this ticket to better express what's required for the sponsor deliverable ("make space to have a button to open the configuration interface of Additional Software") and what's something else.

I'm happy to discuss with you which other options would work for people while still being easier for you to implement.

There's another option that would be quite cheaper (and thus I would have more time to do whatever else you want me to on this project): keep the current custom on/off widget, add a column on the right that for each row can be either empty or display a "configure" button. I think I should anyway start by doing that: in terms of code, adding a dedicated on/off widget is orthogonal to adding the "configure" button.

So I propose I start by doing that (keep the current on/off widget, add a configure button), so we have something that satisfies "make space to have a button to open the configuration interface of Additional Software", and then depending on how much time is left you can decide if I should replace the current custom on/off widgets with sliders. I expect I'll need your input to make the decision at some point between March 2 and March 4. Will you be around so we can discuss it and decide promptly so I can allocate my remaining development time during that sprint in the best possible way?

Second, the bonus one, […]

I'll ignore this one for now: I think it'll require a deep refactoring (but I can't tell for sure before I see the proposed design). Feel free to track this on a dedicated ticket. That one could actually be titled "Apply modern GNOME HIG" :)

#8 Updated by sajolida over 1 year ago

  • Assignee changed from sajolida to intrigeri
  • QA Check deleted (Info Needed)
  • Type of work changed from User interface design to Code

I'm fine with you starting with adding another column to have a configure button on the right of the custom widgets.

Creating:

  • #15314 for the switches (quite important).
  • #15313 for the bonus work.

#9 Updated by intrigeri over 1 year ago

  • Target version changed from Tails_3.6 to Tails_3.7

#10 Updated by intrigeri about 1 year ago

  • Related to Feature #15314: Replace custom widget button in persistent wizard with standard GNOME switches added

#11 Updated by intrigeri about 1 year ago

  • Related to Feature #15313: Apply changes to persistent features without the need for a Save button added

#12 Updated by intrigeri about 1 year ago

  • Description updated (diff)

#13 Updated by intrigeri about 1 year ago

  • Status changed from Confirmed to In Progress
  • % Done changed from 0 to 10
  • Feature Branch set to perl5lib:feature/14594-asp-gui, persistence-setup:feature/14594-asp-gui, feature/14594-asp-gui

I have a working prototype that needs lots of polishing.

#14 Updated by intrigeri about 1 year ago

  • Related to deleted (Feature #15313: Apply changes to persistent features without the need for a Save button)

#15 Updated by intrigeri about 1 year ago

  • Feature Branch changed from perl5lib:feature/14594-asp-gui, persistence-setup:feature/14594-asp-gui, feature/14594-asp-gui to perl5lib:feature/14594-asp-gui, iuk:feature/14594-asp-gui, persistence-setup:feature/14594-asp-gui, feature/14594-asp-gui

#16 Updated by intrigeri about 1 year ago

  • Assignee changed from intrigeri to sajolida
  • QA Check set to Info Needed

It works fine but I don't know what should happenwhen the config of ASP fails, i.e. on the blueprint: "Notifications of failures" -> "When the Additional Software configuration GUI fails to do its work" -> "started from the persistence wizard".

#17 Updated by intrigeri about 1 year ago

  • Assignee changed from sajolida to intrigeri

Hold on, Alan has a proposal that would work for me and mostly avoids asking this question.

#18 Updated by intrigeri about 1 year ago

  • QA Check deleted (Info Needed)

Implemented Alan's proposal (tl;dr: Consider the ASP config GUI as an independent application; don't wait for it to exit, don't attempt to disguise the t-p-s window as if the ASP config GUI was a modal dialog, which it is not.)

Next step: test if it works in an ISO.

#19 Updated by intrigeri about 1 year ago

  • % Done changed from 10 to 20

intrigeri wrote:

Next step: test if it works in an ISO.

It works but tails-additional-software-config crashes (missing tailslib.additionalsoftware.config). We'll see once that is fixed.

#20 Updated by intrigeri about 1 year ago

  • Status changed from In Progress to Resolved
  • % Done changed from 20 to 100

Works for me!

Also available in: Atom PDF