[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFC] Add support for shells in the graphical installer



On Wed, Jul 16, 2008 at 01:35:45AM +0200, Frans Pop wrote:
> Main thing still is that it's great to have a graphical shell and that it 
> would be a real plus if we can get it ready in time for Lenny. At the 
> same time, it should IMO be solid enough to be included.
> 
> First and most importantly: I've not seen any crashes or weird glitches.

Sounds like a good answer to the previous remark. :)

> Integration into the installer has some problems I think. I really likes 
> the "tabs" idea in your previous test image especially because that also 
> offered a scrollable syslog screen _with_ correct display in foreign 
> scripts. It also makes the shell available in parallel to the 
> installation process instead of temporarily replacing it.

Both are complementary: cdebconf-terminal is meant to be the graphical
version of the debconf-disconnect trick for both the "Execute a shell"
and rescue mode shell options.

Tabs for parallel shells and syslog are graphical versions of the
"Linux VT", accessible with Alt+F{2,3,4}.

> However, I do see that this implementation is simpler and there were 
> issues with the tabs, so post-Lenny for that is fine.

The tabs should, IMHO, come with a wider redesign of the current
interface.  Debian is going to be installed on more and more wide TFT
screens and g-i should support them in a better way that it currently
does.  I would still like to see "Yes" and "No" buttons instead of radio
buttons for single boolean questions.  And I have other changes on my
list… :)

Getting cdebconf-terminal ready for Lenny will allow us to offer users
of languages only supported by the graphical installer at least one way
to access a shell.  And this sounds like a really desirable goal. :)

> It would still be nice if an extra menu item could be added "View system 
> log" that shows a tail of 500 lines or so.

This can easily be added to di-utils-shell or rootskel-gtk.  It also
depends if we decide to include cdebconf-terminal in the initrd or leave
it as an extra udeb.

> What I really don't like from a usability PoV is the requirement to 
> type 'exit' to leave the shell and the IMO unnecessary "two-step exit" 
> (first 'exit' and then 'Continue').

Rationale behind it is that sometimes one mistype a Ctrl+D, and going
back to the menu directly typing random letters sounded like a bad idea.

> Is it technically not possible to just quit the plug-in after typing exit? 

It is possible.

> Why is the Continue button needed? Could an active <Go back> button be 
> shown instead of the Continue that (after a warning) just kills the 
> plug-in if it is clicked (the mouse is still active after all)?

I need to think of a proper way to display a warning, but it sounds like
a better idea.

> I fail to see the point in the "End of shell process." message, even if 
> the two-step exit is technically unavoidable. If you do want to keep some 
> message, then I'd suggest a simple "Click Continue to proceed." which is 
> much more helpful.

One can reach the "Continue" button using the keyboard, that's why I
avoided such message.  The various situations where such a shell could
have been called also made me pounder about something like "proceed".

But maybe it should just be avoided.

> Most important issue: position of "Execute a shell" in the menu is 
> incorrect after anna (before partman instead of after finish-install).
> […]

I did no changes to the actual code for "Execute a shell" or rescue mode
options except that removing the tests which removed these options when
DEBIAN_FRONTEND was "gtk".  So if di-utils-shell position is wrong when
rescue-mode is put on the initrd, normal builds once the patch will have
been applied will not be affected.

> Other issues/suggestions:
> - home and end keys don't work while editing a line

I need to figure out why.

> - scrollback is only 100 lines while it's 200 on VT2/3; would be good to
>   be consistent there

Easily fixed.

> - if possible repeat the "type 'exit' to close the shell and return to the
>   installer" info somewhere on the screen while the plug-in is running;
>   looks like there's little room for this though

I can make this message configurable through a variable, as the "View
system log" option you were asking previously will not need "exit" but
"Ctrl-C".  More strings, angrier Christian…

> - why is the position of the "End of shell process" different for regular
>   shell and rescue shell (for the first it is indented by 7 or 8 chars)

I have noticed it, but haven't been able to understand why. :(

> - Chinese looks reasonable: fairly sharp but some characters are much
>   brighter than others (varying from very dark grey to white); guess
>   antialiasing would be needed?

I see that VteTerminal API has a VTE_ANTI_ALIAS_FORCE_ENABLE option, but
it does not sound like a good idea to use it.  Davide, is there any
special things that we should know about Chinese in DejaVu-Mono?

> > > +Template: rescue/initrd-shell/title
> > > +_Description: Interactive shell in the installer environment
> > > +
> 
> This is not a new string! It's already used in the regular rescue mode. 
> IMO this duplication should be avoided.

I'll see how it could be done.

Cheers,
-- 
Jérémy Bobbio

Attachment: signature.asc
Description: Digital signature


Reply to: