Graphical installer on arm64 (netboot and cdrom)

classic Classic list List threaded Threaded
28 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Graphical installer on arm64 (netboot and cdrom)

Alper Nebi Yasak
I posted a while ago about graphical installer on arm64, here's an
update. The first two patches I've attached are Wookey's patches with
two module changes (noted in the patch message). The third one is to
enable graphical cdrom builds, which I tested with the d-i bullseye
alpha2 arm64 xfce CD-1 image on both a QEMU virtual machine (via
virt-manager) and my chromebook (rk3399-gru-kevin).

On the VM: I've set the firmware to UEFI, mounted the iso file as a CD,
and used my patched vmlinuz/initrd files with "Direct kernel boot". The
installation went fine except I needed to pass "console=tty0" in the
command line arguments, but that's not a problem in these patches (an
ACPI SPCR table results in Linux not registering tty0 as a console).

On the chromebook: I've written the iso to a partition (/dev/sda1) and
used my patched (also with chromebook stuff) vmlinuz/initrd/dtb to boot.
There, I had to manually specify '/dev/sda1' as the cdrom device in the
cdrom-detect step. It worked for the base-installer step, but not for
the apt-setup step, but the installation continued anyway with a network
mirror and finished with success. I don't know if that apt-setup problem
is considered a bug, I probably wasn't supposed to use a partition as a
cdrom.

I think these patches will work fine on other hardware as well (but I
don't have anything else to test on). Thanks in advance if anyone can
have a look.

0001-Add-support-for-graphical-installer-to-arm64.patch (1K) Download Attachment
0002-Add-missing-modules-usb-fat-virtio-to-arm64-netboot-.patch (1K) Download Attachment
0003-Add-modules-and-build-files-for-arm64-graphical-inst.patch (2K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
Hi!

Great work here! :-) More comments inline...

On Thu, Apr 02, 2020 at 07:46:01PM +0300, Alper Nebi Yasak wrote:

>I posted a while ago about graphical installer on arm64, here's an update.
>The first two patches I've attached are Wookey's patches with two module
>changes (noted in the patch message). The third one is to enable graphical
>cdrom builds, which I tested with the d-i bullseye alpha2 arm64 xfce CD-1
>image on both a QEMU virtual machine (via virt-manager) and my chromebook
>(rk3399-gru-kevin).
>
>On the VM: I've set the firmware to UEFI, mounted the iso file as a CD, and
>used my patched vmlinuz/initrd files with "Direct kernel boot". The
>installation went fine except I needed to pass "console=tty0" in the command
>line arguments, but that's not a problem in these patches (an ACPI SPCR table
>results in Linux not registering tty0 as a console).

ACK.

>On the chromebook: I've written the iso to a partition (/dev/sda1) and used
>my patched (also with chromebook stuff) vmlinuz/initrd/dtb to boot. There, I
>had to manually specify '/dev/sda1' as the cdrom device in the cdrom-detect
>step. It worked for the base-installer step, but not for the apt-setup step,
>but the installation continued anyway with a network mirror and finished with
>success. I don't know if that apt-setup problem is considered a bug, I
>probably wasn't supposed to use a partition as a cdrom.

That'll be exactly it, yes.

>I think these patches will work fine on other hardware as well (but I don't
>have anything else to test on). Thanks in advance if anyone can have a look.

...

>From 1bbfb902cb984d83b2bb1ac40524a526ee13cdcd Mon Sep 17 00:00:00 2001
>From: Wookey <[hidden email]>
>Date: Sat, 19 Jan 2019 03:13:40 +0000
>Subject: [PATCH 2/3] Add missing modules (usb, fat, virtio) to arm64 netboot
> build and xorg modules to netbook-gtk
>
>Alper Nebi Yasak:
>- added event-modules to arm64 netboot-gtk
>- commented-out serial-modules from arm64 netboot

So why comment out the serial modules here? Do they cause a problem?

>Signed-off-by: Alper Nebi Yasak <[hidden email]>
>---
> build/pkg-lists/netboot/arm64.cfg     | 15 ++++++++++++++-
> build/pkg-lists/netboot/gtk/arm64.cfg | 11 +++++++++++
> 2 files changed, 25 insertions(+), 1 deletion(-)
> create mode 100644 build/pkg-lists/netboot/gtk/arm64.cfg
>
>diff --git a/build/pkg-lists/netboot/arm64.cfg b/build/pkg-lists/netboot/arm64.cfg
>index d5635daa9..01fe2b0a5 100644
>--- a/build/pkg-lists/netboot/arm64.cfg
>+++ b/build/pkg-lists/netboot/arm64.cfg
>@@ -11,9 +11,22 @@ nic-modules-${kernel:Version}
> nic-usb-modules-${kernel:Version}
> nic-wireless-modules-${kernel:Version}
> virtio-modules-${kernel:Version} ?
>+usb-modules-${kernel:Version}
>
> fb-modules-${kernel:Version} ?
> input-modules-${kernel:Version} ?
>
>-#for all targets
>+# In case they need to load a driver image.
>+mountmedia
>+media-retriever
>+fat-modules-${kernel:Version}
>+usb-storage-modules-${kernel:Version}
>+mmc-modules-${kernel:Version} ?
>+
>+# brltty
>+brltty-udeb
>+# serial-modules-${kernel:Version} ?
>+usb-serial-modules-${kernel:Version} ?
>+uinput-modules-${kernel:Version} ?
>
>+#for all targets
>diff --git a/build/pkg-lists/netboot/gtk/arm64.cfg b/build/pkg-lists/netboot/gtk/arm64.cfg
>new file mode 100644
>index 000000000..bda77cdab
>--- /dev/null
>+++ b/build/pkg-lists/netboot/gtk/arm64.cfg
>@@ -0,0 +1,11 @@
>+#include "gtk-linux"
>+
>+#mouse-modules-${kernel:Version}
>+event-modules-${kernel:Version}
>+xserver-xorg-input-evdev-udeb
>+xserver-xorg-video-fbdev-udeb
>+
>+#speakup-modules-${kernel:Version}
>+#sound-modules-${kernel:Version}
>+#console-setup-linux-fonts-udeb
>+#espeakup-udeb
>--
>2.26.0
>

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
"Further comment on how I feel about IBM will appear once I've worked out
 whether they're being malicious or incompetent. Capital letters are forecast."
 Matthew Garrett, http://www.livejournal.com/users/mjg59/30675.html

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Marcin Juszkiewicz-4
In reply to this post by Alper Nebi Yasak
W dniu 02.04.2020 o 18:46, Alper Nebi Yasak pisze:

> enable graphical cdrom builds, which I tested with the d-i bullseye
> alpha2 arm64 xfce CD-1 image on both a QEMU virtual machine (via
> virt-manager) and my chromebook (rk3399-gru-kevin).
 
> On the VM: I've set the firmware to UEFI, mounted the iso file as a
> CD, and used my patched vmlinuz/initrd files with "Direct kernel
> boot".

Wrong. If you want to install it then set firmware to UEFI, attach ISO
and boot. "Direct kernel boot" option is only if you do not have
firmware which handle booting.

> The installation went fine except I needed to pass "console=tty0" in
> the command line arguments, but that's not a problem in these patches
> (an ACPI SPCR table results in Linux not registering tty0 as a
> console).

Add Video (virtio), Spice screen, keyboard and tablet (virtio or USB
ones). Then start VM.

UEFI will start, initialize graphics, show Tianocore logo and load grub
from install media. Then Debian starts and should load 'virtio_gpu'
module to initialize graphics and start d-i on graphical console.

If it does not then d-i needs work. Serial console installation is
something to be ashamed of (or 'expert' level option).

Fedora, CentOS, RHEL are at this level for a while. Debian should be
too. For me lack of graphical installer on arm64 should be RC bug.

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Alper Nebi Yasak
In reply to this post by Steve McIntyre
On 06/04/2020 17:48, Steve McIntyre wrote:
>> Alper Nebi Yasak:
>> - added event-modules to arm64 netboot-gtk
>> - commented-out serial-modules from arm64 netboot
>
> So why comment out the serial modules here? Do they cause a problem?

The "serial-modules" udeb isn't built on arm64 yet and including it here
causes an error while building the "stamps/get_udebs-netboot-stamp"
target complaining it can't find the udeb (I haven't looked into it any
further).

Instead, we can enable the udeb on the kernel side, but I didn't want to
wait for another kernel release before I sent these for review.

(The "mouse-modules" udeb isn't built on arm64 either, it depends on
"event-modules" and if enabled can/should replace that here.)

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Alper Nebi Yasak
In reply to this post by Marcin Juszkiewicz-4
On 06/04/2020 20:15, Marcin Juszkiewicz wrote:
> Wrong. If you want to install it then set firmware to UEFI, attach ISO
> and boot. "Direct kernel boot" option is only if you do not have
> firmware which handle booting.

Thanks. I know that's how it should be done, but I haven't learned how
to build a Debian installer cd image yet. I wanted my custom-built
vmlinuz/initramfs to boot while a Debian-built ISO is attached. I think
I could've mounted a disk with the two files and made GRUB boot them,
but I don't know GRUB stuff either. "Direct kernel boot" appeared to be
an easy way that just works.

> Add Video (virtio), Spice screen, keyboard and tablet (virtio or USB
> ones). Then start VM.
>
> UEFI will start, initialize graphics, show Tianocore logo and load grub
> from install media. Then Debian starts and should load 'virtio_gpu'
> module to initialize graphics and start d-i on graphical console.

When I boot properly (with UEFI, virtio, spice as you said) from a
Debian netboot mini.iso that's exactly what I see happens, except d-i
only runs on the serial console (unless I use "console=tty0").

> If it does not then d-i needs work. Serial console installation is
> something to be ashamed of (or 'expert' level option).

D-i tries to run itself on all consoles listed on /proc/consoles, but
doesn't run on tty0 because in this case tty0 isn't in /proc/consoles
even though graphics were initialized. "console=tty0" forces it to be
there, so things work OK with it.

If you have time, please see the commit messages of a patchset [0] where
I assumed tty0 not being in /proc/consoles is a kernel problem and tried
to investigate. (I know the #elif/#else typo in the last patch though.)

[0]
https://lore.kernel.org/lkml/44156595-0eee-58da-4376-fd25b634d21b@.../T/

> Fedora, CentOS, RHEL are at this level for a while. Debian should be
> too. For me lack of graphical installer on arm64 should be RC bug.

I've just downloaded "Fedora-Server-netinst-aarch64-31-1.9.iso" and it
does run in the graphical console even when /proc/consoles doesn't list
tty0 explicitly. Looks nice.

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
In reply to this post by Alper Nebi Yasak
On Mon, Apr 06, 2020 at 10:11:12PM +0300, Alper Nebi Yasak wrote:

>On 06/04/2020 17:48, Steve McIntyre wrote:
>> > Alper Nebi Yasak:
>> > - added event-modules to arm64 netboot-gtk
>> > - commented-out serial-modules from arm64 netboot
>>
>> So why comment out the serial modules here? Do they cause a problem?
>
>The "serial-modules" udeb isn't built on arm64 yet and including it here
>causes an error while building the "stamps/get_udebs-netboot-stamp" target
>complaining it can't find the udeb (I haven't looked into it any further).

OK, fair enough. :-)

>Instead, we can enable the udeb on the kernel side, but I didn't want to wait
>for another kernel release before I sent these for review.
>
>(The "mouse-modules" udeb isn't built on arm64 either, it depends on
>"event-modules" and if enabled can/should replace that here.)

ACK.

Building locally to test here...

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
"Yes, of course duct tape works in a near-vacuum. Duct tape works
 anywhere. Duct tape is magic and should be worshipped."
   -― Andy Weir, "The Martian"

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
On Tue, Apr 14, 2020 at 05:43:36PM +0100, Steve McIntyre wrote:
>
>ACK.
>
>Building locally to test here...

And I have a build that looks OK by eye. Unfortunately, my local test
machine (Macchiatobin) seems to be dying and I can't test this
effectively now. :-(

It needs some tiny debian-cd changes and then we'll get
netinst, DVD images etc. also including the graphical installer. Final
thing missing - the grub.cfg that's generated for the CD/DVD/USB boot
doesn't include menu entries for graphical boot.

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
< liw> everything I know about UK hotels I learned from "Fawlty Towers"

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
On Sun, Apr 19, 2020 at 10:23:06PM +0300, Alper Nebi Yasak wrote:

>On 16/04/2020 15:40, Steve McIntyre wrote:
>> On Tue, Apr 14, 2020 at 05:43:36PM +0100, Steve McIntyre wrote:
>> >
>> > ACK.
>> >
>> > Building locally to test here...
>>
>> And I have a build that looks OK by eye. Unfortunately, my local test
>> machine (Macchiatobin) seems to be dying and I can't test this
>> effectively now. :-(
>
>Ah, OK. Thanks for spending time on this.
>
>> It needs some tiny debian-cd changes and then we'll get
>> netinst, DVD images etc. also including the graphical installer. Final
>> thing missing - the grub.cfg that's generated for the CD/DVD/USB boot
>> doesn't include menu entries for graphical boot.
>Adding INITRD_GTK to build/config/arm.cfg as in:
>
>diff --git a/build/config/arm.cfg b/build/config/arm.cfg
>index fe8cf80f9..898795658 100644
>--- a/build/config/arm.cfg
>+++ b/build/config/arm.cfg
>@@ -23,6 +23,7 @@ arch_cd_info_dir: arm_grub_efi
> grub-gencfg \
> KERNEL /%install%/vmlinuz \
> INITRD /%install%/initrd.gz \
>+ INITRD_GTK /%install%/gtk/initrd.gz \
> HEADER boot/$(ARCH)/grub/grub-efi.cfg \
> > $(TEMP_CD_INFO_DIR)/grub/grub.cfg; \
> cp -a $(GRUB_FONT) $(TEMP_CD_INFO_DIR)/grub/font.pf2; \
>
>seems to be enough for the last part, I'm getting "Graphical install" and
>others in both cdrom{,/gtk}/debian-cd_info.tar.gz files' grub.cfg files.
>
>I expect that change will make the "Graphical" entries appear also on armhf
>where there isn't a cdrom/gtk build yet, so I'll also have a look at that.
>
>Hopefully I can learn enough debian-cd to build and test with proper images
>this time around :)

I'm just going to test again with that change included, then I can
push a netinst image somewhere for you to test...

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
"When C++ is your hammer, everything looks like a thumb." -- Steven M. Haflich

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
On Mon, Apr 20, 2020 at 05:03:02PM +0300, Alper Nebi Yasak wrote:
>On 20/04/2020 16:36, Steve McIntyre wrote:
>> I'm just going to test again with that change included, then I can
>> push a netinst image somewhere for you to test...
>
>I'd appreciate it. Here's another patch, this time for the armhf graphical
>cdrom. I checked that it boots into a graphical installer when run in a QEMU
>arm VM (still with 'direct kernel boot') but no further. If you can also make
>an armhf netinst image from this I can test that too (at least in a VM, not
>sure the configs for my chromebook were enabled on the armhf kernel..).

Ah, OK. I wasn't sure if it was worth trying to add this on armhf
too... :-)

I'm just building with a different local patch to add the setting
GRAPHICAL_INSTALLER=y in arm64.cfg and using that to add (or not) the
graphical installer to each of the grub-gencfg calls. I'll let that
finish first...


--
Steve McIntyre, Cambridge, UK.                                [hidden email]
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
On Mon, Apr 20, 2020 at 03:21:20PM +0100, Steve McIntyre wrote:

>On Mon, Apr 20, 2020 at 05:03:02PM +0300, Alper Nebi Yasak wrote:
>>On 20/04/2020 16:36, Steve McIntyre wrote:
>>> I'm just going to test again with that change included, then I can
>>> push a netinst image somewhere for you to test...
>>
>>I'd appreciate it. Here's another patch, this time for the armhf graphical
>>cdrom. I checked that it boots into a graphical installer when run in a QEMU
>>arm VM (still with 'direct kernel boot') but no further. If you can also make
>>an armhf netinst image from this I can test that too (at least in a VM, not
>>sure the configs for my chromebook were enabled on the armhf kernel..).
>
>Ah, OK. I wasn't sure if it was worth trying to add this on armhf
>too... :-)
>
>I'm just building with a different local patch to add the setting
>GRAPHICAL_INSTALLER=y in arm64.cfg and using that to add (or not) the
>graphical installer to each of the grub-gencfg calls. I'll let that
>finish first...

Try the image at

 http://cdimage.debian.org/cdimage/unofficial/arm64-gi/

please?

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
"Because heaters aren't purple!" -- Catherine Pitt

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Marcin Juszkiewicz-4
W dniu 20.04.2020 o 16:43, Steve McIntyre pisze:

> Try the image at
>
>  http://cdimage.debian.org/cdimage/unofficial/arm64-gi/

Booted VM with it. Debian installer started on serial port still
despite selecting 'graphical install' in grub menu.

Graphical display in meantime displayed only blinking cursor.

Maybe it was because on aarch64 framebuffer is available after
'virtio_gpu' kernel module gets loaded so d-i starts too early
to notice it.

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
Hey Marcin!

On Mon, Apr 20, 2020 at 05:36:30PM +0200, Marcin Juszkiewicz wrote:

>W dniu 20.04.2020 o 16:43, Steve McIntyre pisze:
>
>> Try the image at
>>
>>  http://cdimage.debian.org/cdimage/unofficial/arm64-gi/
>
>Booted VM with it. Debian installer started on serial port still
>despite selecting 'graphical install' in grub menu.
>
>Graphical display in meantime displayed only blinking cursor.
>
>Maybe it was because on aarch64 framebuffer is available after
>'virtio_gpu' kernel module gets loaded so d-i starts too early
>to notice it.

Does /dev/tty0 show up in /proc/consoles in your setup? We might need
to tweak that yet...

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Marcin Juszkiewicz-4
W dniu 20.04.2020 o 17:38, Steve McIntyre pisze:

> Hey Marcin!
>
> On Mon, Apr 20, 2020 at 05:36:30PM +0200, Marcin Juszkiewicz wrote:
>> W dniu 20.04.2020 o 16:43, Steve McIntyre pisze:
>>
>>> Try the image at
>>>
>>>  http://cdimage.debian.org/cdimage/unofficial/arm64-gi/
>>
>> Booted VM with it. Debian installer started on serial port still
>> despite selecting 'graphical install' in grub menu.
>>
>> Graphical display in meantime displayed only blinking cursor.
>>
>> Maybe it was because on aarch64 framebuffer is available after
>> 'virtio_gpu' kernel module gets loaded so d-i starts too early
>> to notice it.
>
> Does /dev/tty0 show up in /proc/consoles in your setup? We might need
> to tweak that yet...


~ # cat /proc/consoles
ttyAMA0              -W- (EC p a)  204:64
~ #

Syslog:

Apr 20 15:41:17 entropy-source: haveged not needed: rng detected
Apr 20 15:41:18 reopen-console: Looking at console ttyAMA0 from /proc/consoles
Apr 20 15:41:18 reopen-console:    Adding ttyAMA0 to possible consoles list
Apr 20 15:41:18 reopen-console:    ttyAMA0 is preferred
Apr 20 15:41:18 reopen-console: Adding inittab entry for ttyAMA0
Apr 20 15:41:18 reopen-console: Restarting init to start d-i on the console(s) we found
Apr 20 15:41:18 init: reloading /etc/inittab
Apr 20 15:41:18 init: starting pid 261, tty '/dev/tty4': '/usr/bin/tail -f /var/log/syslog'
Apr 20 15:41:18 init: starting pid 265, tty '/dev/ttyAMA0': '/sbin/debian-installer'
Apr 20 15:41:19 debconf: Setting debconf/language to en
Apr 20 15:41:20 main-menu[284]: INFO: Falling back to the package description for brltty-udeb
Apr 20 15:41:20 main-menu[284]: INFO: Menu item 'localechooser' selected
Apr 20 15:41:21 debconf: Setting debconf/language to
Apr 20 15:41:23 main-menu[284]: INFO: Menu item 'localechooser' succeeded but requested to be left unconfigured.
Apr 20 15:41:23 main-menu[284]: INFO: Falling back to the package description for brltty-udeb
Apr 20 15:41:25 main-menu[284]: INFO: Falling back to the package description for brltty-udeb
Apr 20 15:41:25 main-menu[284]: INFO: Menu item 'di-utils-shell' selected


Just before d-i started on serial line there was some message
about missing framebuffer.

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
On Mon, Apr 20, 2020 at 05:51:03PM +0200, Marcin Juszkiewicz wrote:

>W dniu 20.04.2020 o 17:38, Steve McIntyre pisze:
>> Hey Marcin!
>>
>> On Mon, Apr 20, 2020 at 05:36:30PM +0200, Marcin Juszkiewicz wrote:
>>> W dniu 20.04.2020 o 16:43, Steve McIntyre pisze:
>>>
>>>> Try the image at
>>>>
>>>>  http://cdimage.debian.org/cdimage/unofficial/arm64-gi/
>>>
>>> Booted VM with it. Debian installer started on serial port still
>>> despite selecting 'graphical install' in grub menu.
>>>
>>> Graphical display in meantime displayed only blinking cursor.
>>>
>>> Maybe it was because on aarch64 framebuffer is available after
>>> 'virtio_gpu' kernel module gets loaded so d-i starts too early
>>> to notice it.
>>
>> Does /dev/tty0 show up in /proc/consoles in your setup? We might need
>> to tweak that yet...
>
>~ # cat /proc/consoles
>ttyAMA0              -W- (EC p a)  204:64
>~ #
>
>Syslog:
>
>Apr 20 15:41:17 entropy-source: haveged not needed: rng detected
>Apr 20 15:41:18 reopen-console: Looking at console ttyAMA0 from /proc/consoles
>Apr 20 15:41:18 reopen-console:    Adding ttyAMA0 to possible consoles list
>Apr 20 15:41:18 reopen-console:    ttyAMA0 is preferred
>Apr 20 15:41:18 reopen-console: Adding inittab entry for ttyAMA0
>Apr 20 15:41:18 reopen-console: Restarting init to start d-i on the console(s) we found
>Apr 20 15:41:18 init: reloading /etc/inittab
>Apr 20 15:41:18 init: starting pid 261, tty '/dev/tty4': '/usr/bin/tail -f /var/log/syslog'
>Apr 20 15:41:18 init: starting pid 265, tty '/dev/ttyAMA0': '/sbin/debian-installer'
>Apr 20 15:41:19 debconf: Setting debconf/language to en
>Apr 20 15:41:20 main-menu[284]: INFO: Falling back to the package description for brltty-udeb
>Apr 20 15:41:20 main-menu[284]: INFO: Menu item 'localechooser' selected
>Apr 20 15:41:21 debconf: Setting debconf/language to
>Apr 20 15:41:23 main-menu[284]: INFO: Menu item 'localechooser' succeeded but requested to be left unconfigured.
>Apr 20 15:41:23 main-menu[284]: INFO: Falling back to the package description for brltty-udeb
>Apr 20 15:41:25 main-menu[284]: INFO: Falling back to the package description for brltty-udeb
>Apr 20 15:41:25 main-menu[284]: INFO: Menu item 'di-utils-shell' selected
>
>Just before d-i started on serial line there was some message
>about missing framebuffer.

OK. Can you edit the grub command line and add "console=tty0" before
starting please?

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
Who needs computer imagery when you've got Brian Blessed?

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Marcin Juszkiewicz-4
W dniu 20.04.2020 o 17:54, Steve McIntyre pisze:
 
> OK. Can you edit the grub command line and add "console=tty0" before
> starting please?

Now I have two d-i running. One on tty0, one on ttyAMA0:

Apr 20 16:04:09 entropy-source: haveged not needed: rng detected
Apr 20 16:04:10 reopen-console: Looking at console tty0 from /proc/consoles
Apr 20 16:04:10 reopen-console:    Adding tty0 to possible consoles list
Apr 20 16:04:10 reopen-console:    tty0 is preferred
Apr 20 16:04:10 reopen-console: Looking at console ttyAMA0 from /proc/consoles
Apr 20 16:04:10 reopen-console:    Adding ttyAMA0 to possible consoles list
Apr 20 16:04:10 reopen-console: Adding inittab entry for tty0
Apr 20 16:04:10 reopen-console: Adding inittab entry for ttyAMA0
Apr 20 16:04:10 reopen-console: Restarting init to start d-i on the console(s) we found
Apr 20 16:04:10 init: reloading /etc/inittab
Apr 20 16:04:10 init: starting pid 271, tty '/dev/tty4': '/usr/bin/tail -f /var/log/syslog'
Apr 20 16:04:10 init: starting pid 275, tty '/dev/tty0': '/sbin/debian-installer'
Apr 20 16:04:10 init: starting pid 276, tty '/dev/ttyAMA0': '/sbin/debian-installer'
Apr 20 16:04:11 debconf: Setting debconf/language to en
Apr 20 16:04:11 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:11 main-menu[312]: INFO: Menu item 'localechooser' selected
Apr 20 16:04:12 init: process '/sbin/debian-installer' (pid 275) exited. Scheduling for restart.
Apr 20 16:04:12 init: starting pid 326, tty '/dev/tty0': '/sbin/debian-installer'
Apr 20 16:04:13 debconf: Setting debconf/language to en
Apr 20 16:04:14 debconf: Setting debconf/language to en
Apr 20 16:04:14 main-menu[398]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:15 main-menu[398]: INFO: Menu item 'localechooser' selected
Apr 20 16:04:22 localechooser: info: Language = 'en'
Apr 20 16:04:22 localechooser: info: line=en;0;US;en_US.UTF-8;;console-setup
Apr 20 16:04:22 localechooser: info: Set debian-installer/language = 'en'
Apr 20 16:04:22 localechooser: info: Default country = 'US'
Apr 20 16:04:22 localechooser: info: Default locale = 'en_US.UTF-8'
Apr 20 16:04:22 localechooser: info: Set debian-installer/consoledisplay = 'console-setup'
Apr 20 16:04:22 debconf: Setting debconf/language to en
Apr 20 16:04:23 localechooser: info: Set debian-installer/country = 'US'
Apr 20 16:04:23 debconf: Setting debconf/language to en
Apr 20 16:04:24 gtk-set-font: Switching to font 'DejaVu Sans' for 'en'
Apr 20 16:04:25 localechooser: info: Set debian-installer/locale = 'en_US.UTF-8'
Apr 20 16:04:25 localechooser: info: System locale (debian-installer/locale) = 'en_US.UTF-8'
Apr 20 16:04:26 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:26 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:26 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:26 main-menu[312]: INFO: Menu item 'brltty-udeb' selected
Apr 20 16:04:26 main-menu[312]: WARNING **: Unable to set title for brltty-udeb.
Apr 20 16:04:26 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:26 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:26 main-menu[312]: INFO: Menu item 'console-setup-udeb' selected
Apr 20 16:04:54 main-menu[312]: INFO: Menu item 'console-setup-udeb' succeeded but requested to be left unconfigured.
Apr 20 16:04:54 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:56 main-menu[312]: INFO: Falling back to the package description for brltty-udeb
Apr 20 16:04:56 main-menu[312]: INFO: Menu item 'di-utils-shell' selected

  168 root         0 IW   [kworker/u4:2]
  205 root      2228 S    /sbin/syslogd -m 0 -O /var/log/syslog -S
  207 root      2228 S    /sbin/klogd -c 2
  268 root         0 IW<  [kworker/0:1H]
  269 root      2228 S    /bin/busybox init
  270 root      2228 S    /bin/busybox init
  271 root      2228 S    /usr/bin/tail -f /var/log/syslog
  276 root      2228 S    {debian-installe} /bin/sh /sbin/debian-installer
  304 root     94160 S    Xorg -noreset -nolisten tcp
  305 root     11196 S    debconf -o d-i /usr/bin/main-menu
  312 root      2112 S    /usr/bin/main-menu
  326 root      2228 S    {debian-installe} /bin/sh /sbin/debian-installer
  391 root      112m S    debconf -o d-i /usr/bin/main-menu
  398 root      2112 S    /usr/bin/main-menu
  405 root      2172 S    udpkg --configure --force-configure localechooser
  406 root      2228 S    {localechooser.p} /bin/sh -e /var/lib/dpkg/info/loca
  407 root      2344 S    {localechooser} /bin/sh /usr/bin/localechooser
 1610 root      2172 S    udpkg --configure --force-configure di-utils-shell
 1611 root      2228 S    {di-utils-shell.} /bin/sh /var/lib/dpkg/info/di-util
 1612 root      2228 S    {start-shell} /bin/sh /bin/start-shell di-utils-shel
 1613 root      2228 S    /bin/sh
 1616 root      2228 R    ps

 
~ # cat /proc/consoles
tty0                 -WU (EC p  )    4:5
ttyAMA0              -W- (E  p a)  204:64
~ #

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
On Mon, Apr 20, 2020 at 06:06:55PM +0200, Marcin Juszkiewicz wrote:
>W dniu 20.04.2020 o 17:54, Steve McIntyre pisze:
>
>> OK. Can you edit the grub command line and add "console=tty0" before
>> starting please?
>
>Now I have two d-i running. One on tty0, one on ttyAMA0:

Yay! Progress - that's what we're aiming for. :-) You should be able
to use either of them now - this is how we support multiple different
hardware configurations.

Can you use the one on tty0 OK? That's what I'm hoping to see here...

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
< Aardvark> I dislike C++ to start with. C++11 just seems to be
            handing rope-creating factories for users to hang multiple
            instances of themselves.

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

wookey-4
In reply to this post by Marcin Juszkiewicz-4
On 2020-04-20 17:51 +0200, Marcin Juszkiewicz wrote:
> W dniu 20.04.2020 o 17:38, Steve McIntyre pisze:

> > Does /dev/tty0 show up in /proc/consoles in your setup? We might need
> > to tweak that yet...
>
> ~ # cat /proc/consoles
> ttyAMA0              -W- (EC p a)  204:64

What platform is this?

The idea is that the kernel should know (better than DI) what the
valid consoles are so we use that list (every 'enabled' console which
is what the 'E' indicates). But you have a machine with no tty0, but
it does have a framebuffer?

Wookey
--
Principal hats:  Linaro, Debian, Wookware, ARM
http://wookware.org/

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Alper Nebi Yasak
In reply to this post by Steve McIntyre
On 20/04/2020 18:38, Steve McIntyre wrote:
> Does /dev/tty0 show up in /proc/consoles in your setup? We might need
> to tweak that yet...

Here is a small but untested patch for rootskel's reopen-console for that.

(Thanks for the cd image, it'll probably take me until tomorrow to test
and report back on it)

0001-Use-dev-tty0-as-a-console-even-if-it-s-not-in-proc-c.patch (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Alper Nebi Yasak
In reply to this post by wookey-4
On 20/04/2020 19:35, Wookey wrote:

> On 2020-04-20 17:51 +0200, Marcin Juszkiewicz wrote:
>> W dniu 20.04.2020 o 17:38, Steve McIntyre pisze:
>
>>> Does /dev/tty0 show up in /proc/consoles in your setup? We might need
>>> to tweak that yet...
>>
>> ~ # cat /proc/consoles
>> ttyAMA0              -W- (EC p a)  204:64
>
> What platform is this?
>
> The idea is that the kernel should know (better than DI) what the
> valid consoles are so we use that list (every 'enabled' console which
> is what the 'E' indicates). But you have a machine with no tty0, but
> it does have a framebuffer?
>
> Wookey
>
It should be an aarch64 QEMU VM, I'm also seeing that behaviour there.
Long story short, there is an ACPI Serial Port Console Redirection table
specifying a serial console, Linux registers it as a preferred console
very early (as a boot console first), and later when VT tries to
register itself as a less-than-preferred console that request is ignored
since there is already a preferred one already registered. There's
nothing wrong with the framebuffer or tty0 at all.

Reply | Threaded
Open this post in threaded view
|

Re: Graphical installer on arm64 (netboot and cdrom)

Steve McIntyre
In reply to this post by Steve McIntyre
On Mon, Apr 20, 2020 at 03:43:57PM +0100, Steve McIntyre wrote:

>On Mon, Apr 20, 2020 at 03:21:20PM +0100, Steve McIntyre wrote:
>>On Mon, Apr 20, 2020 at 05:03:02PM +0300, Alper Nebi Yasak wrote:
>>>On 20/04/2020 16:36, Steve McIntyre wrote:
>>>> I'm just going to test again with that change included, then I can
>>>> push a netinst image somewhere for you to test...
>>>
>>>I'd appreciate it. Here's another patch, this time for the armhf graphical
>>>cdrom. I checked that it boots into a graphical installer when run in a QEMU
>>>arm VM (still with 'direct kernel boot') but no further. If you can also make
>>>an armhf netinst image from this I can test that too (at least in a VM, not
>>>sure the configs for my chromebook were enabled on the armhf kernel..).
>>
>>Ah, OK. I wasn't sure if it was worth trying to add this on armhf
>>too... :-)
>>
>>I'm just building with a different local patch to add the setting
>>GRAPHICAL_INSTALLER=y in arm64.cfg and using that to add (or not) the
>>graphical installer to each of the grub-gencfg calls. I'll let that
>>finish first...
>
>Try the image at
>
> http://cdimage.debian.org/cdimage/unofficial/arm64-gi/
>
>please?

OK, so this lot seems to work in a VM at least (thanks Marcin!), so
I've pushed this set of patches to master now. I'm not sure about
adding the graphical installer for armhf right now, but I'm open to
being convinced...

Once we have a working d-i daily build I'll also push my changes for
debian-cd to use it on arm64.

--
Steve McIntyre, Cambridge, UK.                                [hidden email]
"I can't ever sleep on planes ... call it irrational if you like, but I'm
 afraid I'll miss my stop" -- Vivek Das Mohapatra

12