Bug 11176

Summary: F2 doesn't make a screenshot of help screens in drakx-installer-stage2
Product: Mageia Reporter: Marja Van Waes <marja11>
Component: InstallerAssignee: Thierry Vignaud <thierry.vignaud>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Normal CC: dvgevers
Version: Cauldron   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard: 4RC
Source RPM: drakx-installer-stage2 CVE:
Status comment:
Attachments: report.bug.xz
report.bug.xz of last install
I'm considering doing sg like this
I'm considering doing sg like this
OEM patch

Description Marja Van Waes 2013-09-06 10:34:57 CEST
For Mageia 1 and 2, it was possible to get a screenshot from a help screen in stage 2 by pressing F2

Since Mageia 3 that isn't possible any more.

When there is something wrong in a help text, seeing the screenshot makes the problem more clear than a description that is written from memory after install.

Is it possible to enable making screenshots from help screens again?

Reproducible: 

Steps to Reproduce:
Comment 1 Marja Van Waes 2013-12-31 11:38:46 CET
dvg just reported:

2013:12:31:11:27 < dvg> marja: good morning. as far as I can see the F2 button during install isn't working well

I'm not sure whether he only saw screenshotting the help texts still doesn't work, or also that screenshotting some non-help stage 2 screens doesn't work

@ dvg

Please tell us, because when some non-help screens can't be screenshotted, that is worse (for docteam) than the same for the help screens only.

CC: (none) => dvgevers
Whiteboard: (none) => 4RC

Comment 2 Thierry Vignaud 2013-12-31 12:43:02 CET
It's a side effect of having moved the actual display of help in another program (display_installer_help)

But we did so in 2009...
Comment 3 Dick Gevers 2013-12-31 16:49:33 CET
Indeed I believe only the help screens do not save as screenshot: I did not see another place yet where it will not record a shot.
Comment 4 Mageia Robot 2014-01-18 15:30:33 CET
commit 4431e39d37e37a7c9e40cacb0939ec9bd8aa7766
Author: Thierry Vignaud <thierry.vignaud@...>
Date:   Sat Jan 18 15:27:45 2014 +0100

    make screenshots work (mga#11176)
    
    screenshots were not working since we moved the actual display of help
    in another program.
    Switch to install mode and make sure we've a real $::o object.
    
    Today is Marja's birthday!
---
 Commit Link:
   http://gitweb.mageia.org/software/drakx/commit/?id=4431e39d37e37a7c9e40cacb0939ec9bd8aa7766
Comment 5 Thierry Vignaud 2014-01-18 15:31:41 CET
Fixed

(In reply to Dick Gevers from comment #3)
> Indeed I believe only the help screens do not save as screenshot: I did not
> see another place yet where it will not record a shot.

Technically, for the same reason, it wouldn't work on release notes dialog.
But I don't think anyone really care about that...

Status: NEW => RESOLVED
Resolution: (none) => FIXED

Comment 6 Marja Van Waes 2014-01-18 18:58:55 CET
(In reply to Mageia Robot from comment #4)
> commit 4431e39d37e37a7c9e40cacb0939ec9bd8aa7766
> Author: Thierry Vignaud <thierry.vignaud@...>
> Date:   Sat Jan 18 15:27:45 2014 +0100
> 
>     make screenshots work (mga#11176)
>     
>     screenshots were not working since we moved the actual display of help
>     in another program.
>     Switch to install mode and make sure we've a real $::o object.
>     
>     Today is Marja's birthday!

Thanks a lot, Thierry :-D

I'll adopt January 18th as my birthday, now that already 3 Mageians, after reading your commit message, congratulated me with my birthday ;-)
Comment 7 Marja Van Waes 2014-01-20 18:29:58 CET
Created attachment 4826 [details]
report.bug.xz

Sorry, Thierry, it doesn't seem to work.

yesterday I did a fast boot.iso upgrade of a cauldron, just to test making a screenshot of a help text, but despite a nice message popping up about where to find the screenshot after install, there was no /root/DrakX-screenshots.

Just now I tried with the first round mageia-4-final 32bit DVD.

The message that normally pops up only at the first shot, popped up every time I tried to make a shot of a help screen (but not at all normal screens).

After install, none of those were in /root/DrakX-screenshots, only a large part - but far from all - of the other ones were there. 

I'll try whether more screenshots of normal screens are saved, if I do /not/ make screenshots of help texts (I had started to wonder whether every time the message about where the screenshots are stored pops up, the already taken ones are deleted)
Comment 8 Marja Van Waes 2014-01-20 18:31:21 CET
s/not at all normal screens/only at the first normal screen/
Comment 9 Marja Van Waes 2014-01-20 21:16:54 CET
Just did another install with the same iso, and only pressed "F2" in the normal (non-help) screens.

Now all screenshots are in /root/DrakX-screenshots/ 
So it really seems screenshotting a help screen does wipe other screenshots (plus itself)

Status: RESOLVED => REOPENED
Resolution: FIXED => (none)

Comment 10 Mageia Robot 2014-01-21 07:04:03 CET
commit 51b9492dab4d6523fa888d70d940acfaa3c543d1
Author: Thierry Vignaud <thierry.vignaud@...>
Date:   Tue Jan 21 07:02:12 2014 +0100

    do not warn if a screenshot already has been taked (mga#11176)
    
    as help runs in a one shot process, it doesn't remember the warning has
    already been done
---
 Commit Link:
   http://gitweb.mageia.org/software/drakx/commit/?id=51b9492dab4d6523fa888d70d940acfaa3c543d1
Comment 11 Thierry Vignaud 2014-01-21 07:26:29 CET
(In reply to Marja van Waes from comment #9)
> Now all screenshots are in /root/DrakX-screenshots/ 
> So it really seems screenshotting a help screen does wipe other screenshots
> (plus itself)

Humm it should not.
Can you try again?
Comment 12 Marja Van Waes 2014-01-21 16:49:48 CET
Created attachment 4836 [details]
report.bug.xz of last install

(In reply to Thierry Vignaud from comment #11)
> (In reply to Marja van Waes from comment #9)
> > Now all screenshots are in /root/DrakX-screenshots/ 
> > So it really seems screenshotting a help screen does wipe other screenshots
> > (plus itself)
> 
> Humm it should not.
> Can you try again?

OK, with boot.iso and (apparently) the new stage2

There are no more messages about where to find the screenshots after install at all (so not on the very first shot in a normal screen, either)

I made a screenshot of the language choice screen, then one of its help page, then /again/ one of the language choice screen.
The same was done for every screen before doPartitionDisks.

From doPartitionDisks onward, I took no more screenshots of help screens, but only of the installer screens.

After reboot, only the screenshots *after* the last screenshotted help screen, are in /root/DrakX-screenshots/ 

(except for the one of exitInstall, but that is probably caused by whatever caused exitInstall failing to reboot, I had to switch to tty2 to and reboot with ctrl+alt+del there)

So the extra messages did not cause the screenshots to be wiped :-/

Attachment 4826 is obsolete: 0 => 1

Comment 13 Thierry Vignaud 2014-01-21 18:10:47 CET
Strange, very strange...

fb2png is indeed run several time on the same file whereas we do test for file existence:
    my $nb = 1;
    $nb++ while -e "$dir/$nb.png";
    run_program::run('fb2png', '/dev/fb0', "$dir/$nb.png", '0');

(http://gitweb.mageia.org/software/drakx/tree/perl-install/install/any.pm#n1384)
Comment 14 Thierry Vignaud 2014-01-21 18:15:26 CET
So it looks like we moved the screenshots several times :-(
We first put them in /tmp, then once the partitioning is done, we:
- mount the system to be installed in /mnt
- move the already taken screenshots in /mnt/root/...
- later put directly new screenshots in /mnt/root/...

$ xzgrep fb2png report.bug.xz
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
* running: fb2png /dev/fb0 //root/DrakX-screenshots/2.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
* running: fb2png /dev/fb0 //root/DrakX-screenshots/3.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
* running: fb2png /dev/fb0 //root/DrakX-screenshots/4.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
* running: fb2png /dev/fb0 //root/DrakX-screenshots/5.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/3.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/4.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/5.png 0
* running: fb2png /dev/fb0 /tmp/DrakX-screenshots/6.png 0
* running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/7.png 0
* running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/8.png 0
* running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/9.png 0
* running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/10.png 0
(...)

The issue being that the help process doesn't know about $::prefix being /mnt...
Comment 15 Thierry Vignaud 2014-01-21 18:17:02 CET
Created attachment 4838 [details]
I'm considering doing sg like this
Comment 16 Thierry Vignaud 2014-01-21 18:17:37 CET
Created attachment 4839 [details]
I'm considering doing sg like this
Comment 17 Thierry Vignaud 2014-01-21 18:45:34 CET
Created attachment 4840 [details]
OEM patch

Can you try this OEM patch?

See https://wiki.mageia.org/en/Drakx-installer_tips_and_tricks#Customisation_of_the_install_by_patching_it

Attachment 4839 is obsolete: 0 => 1

Comment 18 Marja Van Waes 2014-01-21 21:24:59 CET
(In reply to Thierry Vignaud from comment #17)
> Created attachment 4840 [details]
> OEM patch
> 
> Can you try this OEM patch?
> 
> See
> https://wiki.mageia.org/en/Drakx-
> installer_tips_and_tricks#Customisation_of_the_install_by_patching_it

I'll have to redo it, forgot to make the patch executable :-[
Besides that, I did not manage to follow the exact instructions (lacking too much knowledge).

Would this (if I had made the patch executable) have been OK: 
* unpack newest QA dual iso to /QA/Mageia-4-dual-DVD
* add your patch as /QA/Mageia-4-dual-DVD/x86_64/install/patch-oem.pl and as 
/QA/Mageia-4-dual-DVD/i586/install/patch-oem.pl
* run " /usr/lib64/drakx-installer-stage2/misc/drakx-in-chroot /QA/Mageia-4-dual-DVD/x86_64 /tmp/test "

Or am I using the stage2 from the dual iso then, instead of the last one you pushed and which I installed
Comment 19 Thierry Vignaud 2014-01-21 22:44:37 CET
Just put it as patch.pl on some USB key you'll plug to the machine/VM you'll install too and add the "patch" option to the command line when booting (eg: "linux patch" instead of just <enter> at the boot.iso prompt

Note to myself: document this on the wiki
Comment 20 Mageia Robot 2014-01-21 23:52:32 CET
commit 0eb005c4912494eda1fd348bce8fd78800373349
Author: Thierry Vignaud <thierry.vignaud@...>
Date:   Tue Jan 21 23:41:26 2014 +0100

    do warn on first screenshot (mga#11176)
    
    first screenshot already exists by this time...
---
 Commit Link:
   http://gitweb.mageia.org/software/drakx/commit/?id=0eb005c4912494eda1fd348bce8fd78800373349
Comment 21 Mageia Robot 2014-01-22 00:44:21 CET
commit aaddffc8b7cbe3340adc69c397ef506e2a4f2965
Author: Thierry Vignaud <thierry.vignaud@...>
Date:   Wed Jan 22 00:41:54 2014 +0100

    fix lost help screenshots (mga#11176)
    
    The issue being that the help process doesn't know about $::prefix being
    /mnt...  So we moved the screenshots several times :-(
    
    $ xzgrep fb2png report.bug.xz
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
    * running: fb2png /dev/fb0 //root/DrakX-screenshots/2.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
    * running: fb2png /dev/fb0 //root/DrakX-screenshots/3.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
    * running: fb2png /dev/fb0 //root/DrakX-screenshots/4.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
    * running: fb2png /dev/fb0 //root/DrakX-screenshots/5.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/1.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/2.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/3.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/4.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/5.png 0
    * running: fb2png /dev/fb0 /tmp/DrakX-screenshots/6.png 0
    * running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/7.png 0
    * running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/8.png 0
    * running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/9.png 0
    * running: fb2png /dev/fb0 /mnt/root/DrakX-screenshots/10.png 0
    (...)
---
 Commit Link:
   http://gitweb.mageia.org/software/drakx/commit/?id=aaddffc8b7cbe3340adc69c397ef506e2a4f2965
Comment 22 Thierry Vignaud 2014-01-22 00:47:28 CET
Closing

Status: REOPENED => RESOLVED
Resolution: (none) => FIXED

Comment 23 Marja Van Waes 2014-01-22 14:53:41 CET
@ tv

Wow, you manage to let your brain produce good work in the middle of night!

Thanks a lot for the fix :-D