From: Bruno Haible Date: Wed, 3 Apr 2024 17:27:32 +0000 (+0200) Subject: platforms: Add QEMU-based test environments of NetBSD 10. X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=224248196257c1e0f2e31391e93f8a030a0c5d14;p=gnulib%2Fmaint-tools.git platforms: Add QEMU-based test environments of NetBSD 10. --- diff --git a/platforms/environments/qemu/arm64-netbsd.txt b/platforms/environments/qemu/arm64-netbsd.txt deleted file mode 100644 index c84b8c8e..00000000 --- a/platforms/environments/qemu/arm64-netbsd.txt +++ /dev/null @@ -1,171 +0,0 @@ -(DR) Collect pointers to documentation and references ------------------------------------------------------ - -https://www.qemu.org/docs/master/system/target-arm.html -https://wiki.qemu.org/Documentation/Platforms/ARM -https://wiki.netbsd.org/ports/evbarm/qemu_arm/ -https://chrispinnock.com/stuff/emulation/ - -(QV) Choose a QEMU version --------------------------- - -Use qemu-8.2.0 -% PATH=$HOME/inst-qemu/8.2.0/bin:$PATH - -(DL) Download an installation CD-ROM or DVD image -------------------------------------------------- - -Download: https://cdn.netbsd.org/pub/NetBSD/iso/9.3/NetBSD-9.3-evbarm-aarch64.iso - -(XI) Extract a disk image from the CD-ROM or DVD image ------------------------------------------------------- - -We cannot use the CD for installing into an empty disk image, because the CD -- unlike the FreeBSD one - does not have the El Torito extensions that mark -it as "bootable", and the two first UEFI firmwares only boot from CDs with -these extensions. But fortunately, the CD contains a bootable disk image. - -Extract arm64.img: -% sudo mount -r -t iso9660 NetBSD-9.3-evbarm-aarch64.iso /mnt -% cp -p /mnt/evbarm/binary/gzimg/arm64.img.gz arm64.img.gz -% sudo umount /mnt -% gunzip arm64.img - -This is a disk image with two partitions: -% fdisk arm64.img -Device Boot Start End Sectors Size Id Type -arm64.img1 * 32768 196607 163840 80M c W95 FAT32 (LBA) -arm64.img2 196608 2355071 2158464 1G a9 NetBSD -The first partition is for booting. -The second partition contains a preinstalled NetBSD. - -Resize the image to the desired size. On first boot, NetBSD will grow the -root file-system to match the size of the disk. -% qemu-img resize -f raw arm64.img 10G - -Convert it to qcow2: -% qemu-img convert -f raw -O qcow2 arm64.img netbsd93.qcow2 -% rm -f arm64.img - -(CD) Create an empty disk image to be used by the virtual machine ------------------------------------------------------------------ - -This is not needed in this case; we have a disk image already. - -(MA) Choose the machine arguments ---------------------------------- - -% machine_args="-M virt -cpu cortex-a53 -m 512" - -Since QEMU cannot directly boot a NetBSD kernel, we'll need some -boot firmware: - - - Either the UEFI firmware that comes bundled with QEMU: - % machine_args="$machine_args -bios edk2-aarch64-code.fd" - - - Or some UEFI firmware named 'QEMU_EFI.fd' that is part of some Linux - distros, such as in the Ubuntu package 'qemu-efi'. - % machine_args="$machine_args -bios QEMU_EFI.fd" - - - Or U-Boot. - -(DI) Choose the disk arguments ------------------------------- - -% disk_args="-drive file=netbsd93.qcow2,format=qcow2,if=none,id=hd0 -device virtio-blk-device,drive=hd0" - -(NW) Choose the network arguments ---------------------------------- - -There are several possibilities. - -% net_args="" - -This provides an ethernet interface by default: -(qemu) info network -hub 0 - \ hub0port1: #net176: index=0,type=user,net=10.0.2.0,restrict=off - \ hub0port0: virtio-net-pci.0: index=0,type=nic,model=virtio-net-pci,macaddr=52:54:00:12:34:56 -NetBSD will recognize it as 'vioif0'. - -% net_args="-netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=52:54:00:12:34:56" - -This provides an ethernet interface too: -(qemu) info network -virtio-net-device.0: index=0,type=nic,model=virtio-net-device,macaddr=52:54:00:12:34:56 - \ net0: index=0,type=user,net=10.0.2.0,restrict=off -NetBSD will recognize it as 'vioif0'. - -% net_args="-netdev type=user,id=net0 -device e1000,netdev=net0,mac=52:54:00:12:34:56" - -This provides an ethernet interface too: -(qemu) info network -e1000.0: index=0,type=nic,model=e1000,macaddr=52:54:00:12:34:56 - \ net0: index=0,type=user,net=10.0.2.0,restrict=off -NetBSD will recognize it as 'wm0'. - -(DV) Choose the display/video arguments ---------------------------------------- - -% display_args="-nographic" - -(B1) Boot from the disk ------------------------ - -% common_args="$machine_args $disk_args $net_args $display_args" - -Resize the terminal to 80x24. - -% qemu-system-aarch64 $common_args - -This boots fine. Now is the time to switch to a graphic display, if desired: - -% display_args="-display gtk -monitor stdio" -% common_args="$machine_args $disk_args $net_args $display_args" -% qemu-system-aarch64 $common_args - -Login as root. - -Set root password: -# passwd -New Password: ******** - -Edit /etc/rc.conf, changing the value of hostname: -hostname=arm64-netbsd9.MYDOMAINNAME - -Edit /etc/hosts, adding a line: -10.0.2.15 arm64-netbsd9 - -Define the time zone: -# ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime - -Add account: -# useradd -d /home/MY_USER_NAME -m -u 1000 -G wheel MY_USER_NAME -# passwd MY_USER_NAME -New Password: ******** - -Edit /etc/profile to set TERM=vt220: -# env TERM=vt220 vi /etc/profile .cshrc -In /etc/profile, add - TERM=vt220 - export TERM -In .cshrc, add - setenv TERM vt220 - -# halt - -(PK) Install packages ---------------------- - -The list of packages is at http://www.pkgsrc.se/ -and http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/aarch64/9.3/All/. -See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc -# chmod 644 .cshrc .profile -Edit ~/.profile to define PKG_PATH: - export PKG_PATH=http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/aarch64/9.3/All -Logout. - -# pkg_add bash -# pkg_add gmake -# pkg_add vim -# pkg_add emacs-nox11 diff --git a/platforms/environments/qemu/arm64-netbsd10.txt b/platforms/environments/qemu/arm64-netbsd10.txt new file mode 100644 index 00000000..9b4ec34c --- /dev/null +++ b/platforms/environments/qemu/arm64-netbsd10.txt @@ -0,0 +1,187 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://www.qemu.org/docs/master/system/target-arm.html +https://wiki.qemu.org/Documentation/Platforms/ARM +https://wiki.netbsd.org/ports/evbarm/qemu_arm/ +https://chrispinnock.com/stuff/emulation/ + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-8.2.0 +% PATH=$HOME/inst-qemu/8.2.0/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: https://cdn.netbsd.org/pub/NetBSD/iso/10.0/NetBSD-10.0-evbarm-aarch64.iso + +(XK) Extract the kernel from the CD-ROM or DVD image +---------------------------------------------------- + +This is not needed in this case. + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +% qemu-img create -f qcow2 netbsd10.qcow2 10G + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-M virt -cpu cortex-a53 -m 1024" + +Since QEMU cannot directly boot a NetBSD kernel, we'll need some +boot firmware: + + - Either the UEFI firmware that comes bundled with QEMU: + % machine_args="$machine_args -bios edk2-aarch64-code.fd" + + - Or some UEFI firmware named 'QEMU_EFI.fd' that is part of some Linux + distros, such as in the Ubuntu package 'qemu-efi'. + % machine_args="$machine_args -bios QEMU_EFI.fd" + + - Or U-Boot. + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd10.qcow2,format=qcow2,if=none,id=hd0 -device virtio-blk-device,drive=hd0" + +(NW) Choose the network arguments +--------------------------------- + +There are several possibilities. + +% net_args="" + +This provides an ethernet interface by default: +(qemu) info network +hub 0 + \ hub0port1: #net176: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: virtio-net-pci.0: index=0,type=nic,model=virtio-net-pci,macaddr=52:54:00:12:34:56 +NetBSD will recognize it as 'vioif0'. + +% net_args="-netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=52:54:00:12:34:56" + +This provides an ethernet interface too: +(qemu) info network +virtio-net-device.0: index=0,type=nic,model=virtio-net-device,macaddr=52:54:00:12:34:56 + \ net0: index=0,type=user,net=10.0.2.0,restrict=off +NetBSD will recognize it as 'vioif0'. + +% net_args="-netdev type=user,id=net0 -device e1000,netdev=net0,mac=52:54:00:12:34:56" + +This provides an ethernet interface too: +(qemu) info network +e1000.0: index=0,type=nic,model=e1000,macaddr=52:54:00:12:34:56 + \ net0: index=0,type=user,net=10.0.2.0,restrict=off +NetBSD will recognize it as 'wm0'. + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the CD/DVD +------------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" + +Resize the terminal to 80x24. + +% qemu-system-aarch64 $common_args -cdrom NetBSD-10.0-evbarm-aarch64.iso + +(IN) Perform the steps of the installer +--------------------------------------- + +- 1: Install NetBSD +- a: in English +- a: to hard disk +- b: Yes +- a: ld4 +- a: Guid Partition Table +- a: Set sizes +- /boot: 16 MB = 32768 sec, /: 9199 MB = 18839552 sec, swap: 1024 MB = 2097152 sec, /tmp: 0, x +- x: Partition sizes OK +- b: Yes +- b: Installation without X11 +- a: CD-ROM + Doesn't recognize the CD device! +- f: Back +- b: HTTP +- a: vioif0 + enter + Autoconfiguration: Yes + Host name: arm64-netbsd10 + DNS domain: MYDOMAINNAME + Check values: + Nameserver: 10.0.2.3 + Host IP: 10.0.2.15 + Netmask: 255.255.255.0 + IPv4 Gateway: 10.0.2.2 + OK? Yes +- Download location: + Host: cdn.NetBSD.org + Base directory: pub/NetBSD/NetBSD-10.0 + Binary set directory: /evbarm-aarch64/binary/sets + Source set directory: /source/sets + File extension: .tar.xz + x: Get distribution +- Install network configuration in /etc: Yes +- enter +- root password: ******** +- a: enter random characters +- b: timezone + Europe/Berlin +- g: sshd + YES +- h: ntpd + YES +- i: ntpdate at boot + YES +- o: Add a user + user: MY_USER_NAME, group wheel, /bin/sh + password: ******** +- x: Finished configuring +- d: Reboot + +(B2) Boot from the installed disk +--------------------------------- + +This does not need a -kernel option, since a NetBSD efiboot bootloader is installed. +% qemu-system-aarch64 $common_args + +This boots fine. Now is the time to switch to a graphic display, if desired: + +% display_args="-display gtk -monitor stdio" +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-aarch64 $common_args + +Login as root. + +Edit /etc/profile to set TERM=vt220: +# env TERM=vt220 vi /etc/profile .cshrc +In /etc/profile, add + TERM=vt220 + export TERM +In .cshrc, add + setenv TERM vt220 + +# halt + +(PK) Install packages +--------------------- + +The list of packages is at http://www.pkgsrc.se/ +and https://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/aarch64/10.0/All/. +See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc +Edit ~/.profile to define PKG_PATH: + export PKG_PATH=https://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/aarch64/10.0/All +Logout. + +# pkg_add bash +# pkg_add gmake +# pkg_add vim +# pkg_add emacs-nox11 diff --git a/platforms/environments/qemu/arm64-netbsd9.txt b/platforms/environments/qemu/arm64-netbsd9.txt new file mode 100644 index 00000000..c84b8c8e --- /dev/null +++ b/platforms/environments/qemu/arm64-netbsd9.txt @@ -0,0 +1,171 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://www.qemu.org/docs/master/system/target-arm.html +https://wiki.qemu.org/Documentation/Platforms/ARM +https://wiki.netbsd.org/ports/evbarm/qemu_arm/ +https://chrispinnock.com/stuff/emulation/ + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-8.2.0 +% PATH=$HOME/inst-qemu/8.2.0/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: https://cdn.netbsd.org/pub/NetBSD/iso/9.3/NetBSD-9.3-evbarm-aarch64.iso + +(XI) Extract a disk image from the CD-ROM or DVD image +------------------------------------------------------ + +We cannot use the CD for installing into an empty disk image, because the CD +- unlike the FreeBSD one - does not have the El Torito extensions that mark +it as "bootable", and the two first UEFI firmwares only boot from CDs with +these extensions. But fortunately, the CD contains a bootable disk image. + +Extract arm64.img: +% sudo mount -r -t iso9660 NetBSD-9.3-evbarm-aarch64.iso /mnt +% cp -p /mnt/evbarm/binary/gzimg/arm64.img.gz arm64.img.gz +% sudo umount /mnt +% gunzip arm64.img + +This is a disk image with two partitions: +% fdisk arm64.img +Device Boot Start End Sectors Size Id Type +arm64.img1 * 32768 196607 163840 80M c W95 FAT32 (LBA) +arm64.img2 196608 2355071 2158464 1G a9 NetBSD +The first partition is for booting. +The second partition contains a preinstalled NetBSD. + +Resize the image to the desired size. On first boot, NetBSD will grow the +root file-system to match the size of the disk. +% qemu-img resize -f raw arm64.img 10G + +Convert it to qcow2: +% qemu-img convert -f raw -O qcow2 arm64.img netbsd93.qcow2 +% rm -f arm64.img + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +This is not needed in this case; we have a disk image already. + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-M virt -cpu cortex-a53 -m 512" + +Since QEMU cannot directly boot a NetBSD kernel, we'll need some +boot firmware: + + - Either the UEFI firmware that comes bundled with QEMU: + % machine_args="$machine_args -bios edk2-aarch64-code.fd" + + - Or some UEFI firmware named 'QEMU_EFI.fd' that is part of some Linux + distros, such as in the Ubuntu package 'qemu-efi'. + % machine_args="$machine_args -bios QEMU_EFI.fd" + + - Or U-Boot. + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd93.qcow2,format=qcow2,if=none,id=hd0 -device virtio-blk-device,drive=hd0" + +(NW) Choose the network arguments +--------------------------------- + +There are several possibilities. + +% net_args="" + +This provides an ethernet interface by default: +(qemu) info network +hub 0 + \ hub0port1: #net176: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: virtio-net-pci.0: index=0,type=nic,model=virtio-net-pci,macaddr=52:54:00:12:34:56 +NetBSD will recognize it as 'vioif0'. + +% net_args="-netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=52:54:00:12:34:56" + +This provides an ethernet interface too: +(qemu) info network +virtio-net-device.0: index=0,type=nic,model=virtio-net-device,macaddr=52:54:00:12:34:56 + \ net0: index=0,type=user,net=10.0.2.0,restrict=off +NetBSD will recognize it as 'vioif0'. + +% net_args="-netdev type=user,id=net0 -device e1000,netdev=net0,mac=52:54:00:12:34:56" + +This provides an ethernet interface too: +(qemu) info network +e1000.0: index=0,type=nic,model=e1000,macaddr=52:54:00:12:34:56 + \ net0: index=0,type=user,net=10.0.2.0,restrict=off +NetBSD will recognize it as 'wm0'. + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the disk +----------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" + +Resize the terminal to 80x24. + +% qemu-system-aarch64 $common_args + +This boots fine. Now is the time to switch to a graphic display, if desired: + +% display_args="-display gtk -monitor stdio" +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-aarch64 $common_args + +Login as root. + +Set root password: +# passwd +New Password: ******** + +Edit /etc/rc.conf, changing the value of hostname: +hostname=arm64-netbsd9.MYDOMAINNAME + +Edit /etc/hosts, adding a line: +10.0.2.15 arm64-netbsd9 + +Define the time zone: +# ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime + +Add account: +# useradd -d /home/MY_USER_NAME -m -u 1000 -G wheel MY_USER_NAME +# passwd MY_USER_NAME +New Password: ******** + +Edit /etc/profile to set TERM=vt220: +# env TERM=vt220 vi /etc/profile .cshrc +In /etc/profile, add + TERM=vt220 + export TERM +In .cshrc, add + setenv TERM vt220 + +# halt + +(PK) Install packages +--------------------- + +The list of packages is at http://www.pkgsrc.se/ +and http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/aarch64/9.3/All/. +See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc +# chmod 644 .cshrc .profile +Edit ~/.profile to define PKG_PATH: + export PKG_PATH=http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/aarch64/9.3/All +Logout. + +# pkg_add bash +# pkg_add gmake +# pkg_add vim +# pkg_add emacs-nox11 diff --git a/platforms/environments/qemu/hppa-netbsd.txt b/platforms/environments/qemu/hppa-netbsd.txt deleted file mode 100644 index 4b03a2d1..00000000 --- a/platforms/environments/qemu/hppa-netbsd.txt +++ /dev/null @@ -1,154 +0,0 @@ -(DR) Collect pointers to documentation and references ------------------------------------------------------ - -https://parisc.wiki.kernel.org/index.php/Qemu -https://wiki.netbsd.org/ports/hppa/qemu_hppa/ - -(QV) Choose a QEMU version --------------------------- - -Use qemu-8.0.2 -% PATH=$HOME/inst-qemu/8.0.2/bin:$PATH -or -Use qemu-8.1.2 -% PATH=$HOME/inst-qemu/8.1.2/bin:$PATH -or -Use qemu-8.2.0 with hppa patches from Helge Deller -% PATH=$HOME/inst-qemu/8.2.0+-hppa/bin:$PATH - -(DL) Download an installation CD-ROM or DVD image -------------------------------------------------- - -Download: https://cdn.netbsd.org/pub/NetBSD/iso/9.3/NetBSD-9.3-hppa.iso - -(XK) Extract the kernel from the CD-ROM or DVD image ----------------------------------------------------- - -This is not needed in this case. - -(CD) Create an empty disk image to be used by the virtual machine ------------------------------------------------------------------ - -% qemu-img create -f qcow2 netbsd93.qcow2 10G - -(MA) Choose the machine arguments ---------------------------------- - -% machine_args="-m 256" - -(DI) Choose the disk arguments ------------------------------- - -% disk_args="-drive file=netbsd93.qcow2,format=qcow2,index=0" - -(NW) Choose the network arguments ---------------------------------- - -% net_args="" -This provides an ethernet interface: -(qemu) info network -hub 0 - \ hub0port1: #net160: index=0,type=user,net=10.0.2.0,restrict=off - \ hub0port0: tulip.0: index=0,type=nic,model=tulip,macaddr=52:54:00:12:34:56 -But it does not really work from within NetBSD later. Therefore: - -% net_args="-netdev type=user,id=net0 -device rtl8139,netdev=net0,mac=52:54:00:12:34:56" -(qemu) info network -rtl8139.0: index=0,type=nic,model=rtl8139,macaddr=52:54:00:12:34:56 - \ net0: index=0,type=user,net=10.0.2.0,restrict=off - -(DV) Choose the display/video arguments ---------------------------------------- - -% display_args="-nographic" - -(B1) Boot from the CD/DVD -------------------------- - -% common_args="$machine_args $disk_args $net_args $display_args" -% qemu-system-hppa $common_args -cdrom NetBSD-9.3-hppa.iso -boot d - -(IN) Perform the steps of the installer ---------------------------------------- - -Enter: -- a: in English -- a: to hard disk -- b: Yes -- a: sd0 -- a: Set sizes -- /: 2097152, swap: 524288, /usr: 18350080, x -- x: Partition sizes OK -- b: Yes -Ignore messages like this: --------------------------------------------------------------------------------- -[ 504.5268850] esiop0: unhandled scsi interrupt, sist=0x80 sstat1=0x0 DSA=0x1 DS --------------------------------------------------------------------------------- -- b: Installation without X11 -- a: CD-ROM -- enter -- a: configure network - a: re0 - Autoconfigure. - DNS domain: MYDOMAINNAME - OK? No, since the host name is not right. - a: re0 - Autoconfiguration: No - Host name: hppa-netbsd9 - DNS domain: MYDOMAINNAME - IPv4 address: 10.0.2.15 - IPv4 netmask: 255.255.255.0 - IPv4 gateway: 10.0.2.2 - Name server: 10.0.2.3 - OK? Yes - Install in /etc: Yes -- b: timezone - Europe/Berlin -- d: root password - Yes - New password: ******** -- g: sshd - NO because the key generation would later fail with errors like - ------------------------------------------------------------------------------ - assertion "(*wnumtop) == 0" failed: file "/usr/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_div.c", line 439, function "bn_div_fixed_top" - ------------------------------------------------------------------------------ -- h: ntpd - YES -- i: ntpdate at boot - YES -- o: user - name: MY_USER_NAME - Yes - /bin/sh - New password: ******** -- x: Finished configuring -- enter -- x: Exit -# halt - -(B2) Boot from the installed disk ---------------------------------- - -This does not need a -kernel option, since a SeaBIOS bootloader is installed. -% qemu-system-hppa $common_args - -This boots fine. Now is the time to switch to a graphic display, if desired: - -% display_args="-display gtk -monitor stdio" -% common_args="$machine_args $disk_args $net_args $display_args" -% qemu-system-hppa $common_args - -(PK) Install packages ---------------------- - -There are no binary packages in -http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/hppa/ . - - -Notes ------ - -The VM is not 100% reliable: -- Some gcc compilation commands crash with "internal compiler error" and - succeed the next time. -- Some gnulib unit tests, e.g. test-dynarray, may spuriously fail. diff --git a/platforms/environments/qemu/hppa-netbsd10.txt b/platforms/environments/qemu/hppa-netbsd10.txt new file mode 100644 index 00000000..c929140c --- /dev/null +++ b/platforms/environments/qemu/hppa-netbsd10.txt @@ -0,0 +1,167 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://parisc.wiki.kernel.org/index.php/Qemu +https://wiki.netbsd.org/ports/hppa/qemu_hppa/ + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-8.2.0 with hppa patches from Helge Deller +% PATH=$HOME/inst-qemu/8.2.0+-hppa/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: https://cdn.netbsd.org/pub/NetBSD/iso/10.0/NetBSD-10.0-hppa.iso + +(XK) Extract the kernel from the CD-ROM or DVD image +---------------------------------------------------- + +This is not needed in this case. + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +% qemu-img create -f qcow2 netbsd10.qcow2 10G + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-m 256" + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd10.qcow2,format=qcow2,index=0" + +(NW) Choose the network arguments +--------------------------------- + +% net_args="" +This provides an ethernet interface: +(qemu) info network +hub 0 + \ hub0port1: #net160: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: tulip.0: index=0,type=nic,model=tulip,macaddr=52:54:00:12:34:56 +But it does not really work from within NetBSD later. Therefore: + +% net_args="-netdev type=user,id=net0 -device rtl8139,netdev=net0,mac=52:54:00:12:34:56" +(qemu) info network +rtl8139.0: index=0,type=nic,model=rtl8139,macaddr=52:54:00:12:34:56 + \ net0: index=0,type=user,net=10.0.2.0,restrict=off + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the CD/DVD +------------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" + +Resize the terminal to 80x24. + +% qemu-system-hppa $common_args -cdrom NetBSD-10.0-hppa.iso -boot d + +(IN) Perform the steps of the installer +--------------------------------------- + +Enter: +- a: in English +- a: to hard disk +- b: Yes +- a: sd0 +- a: Set sizes +- /: 2048 MB = 4194304 sec, swap: 256 MB = 524288 sec, /usr: 7936 MB = 16252928 sec, x +- x: Partition sizes OK +- b: Yes +Ignore messages like this: +-------------------------------------------------------------------------------- +[ 504.5268850] esiop0: unhandled scsi interrupt, sist=0x80 sstat1=0x0 DSA=0x1 DS +-------------------------------------------------------------------------------- +- b: Installation without X11 +- a: CD-ROM + Verify that there were no errors in the unpacking processes. +- enter +- root password: ******** +- a: enter random characters +- a: configure network + a: re0 + Autoconfigure. + Host name: hppa-netbsd10 + DNS domain: MYDOMAINNAME + Check values: + Nameserver: 10.0.2.3 + Host IP: 10.0.2.15 + Netmask: 255.255.255.0 + IPv4 Gateway: 10.0.2.2 + OK? Yes + Install in /etc: Yes +- b: timezone + Europe/Berlin +- g: sshd + NO because the key generation may later fail with errors like + ------------------------------------------------------------------------------ + assertion "(*wnumtop) == 0" failed: file "/usr/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_div.c", line 439, function "bn_div_fixed_top" + ------------------------------------------------------------------------------ +- h: ntpd + YES +- i: ntpdate at boot + YES +- o: user + name: MY_USER_NAME + Yes + /bin/sh + New password: ******** +- x: Finished configuring +- enter +- x: Exit +# halt + +(B2) Boot from the installed disk +--------------------------------- + +This does not need a -kernel option, since a NetBSD LIF/FFS/LFS bootloader is installed. +% qemu-system-hppa $common_args + +This boots fine. Now is the time to switch to a graphic display, if desired: + +% display_args="-display gtk -monitor stdio" +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-hppa $common_args + +Login as root. + +Move the /home directory to the partition that has more room than /: +# mv /home /usr/home +# ln -s usr/home /home + +Edit /etc/profile to set TERM=vt220: +# env TERM=vt220 vi /etc/profile .cshrc +In /etc/profile, add + TERM=vt220 + export TERM +In .cshrc, add + setenv TERM vt220 + +# halt + +(PK) Install packages +--------------------- + +There are no binary packages in +https://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/hppa/ . + + +Notes +----- + +After 1 hour of execution time, sometimes the clock gets stuck in a 2-seconds +loop; then "sleep 1" never completes. + +The VM is not 100% reliable: +- Some gcc compilation commands crash with "internal compiler error" and + succeed the next time. +- Some gnulib unit tests, e.g. test-dynarray, may spuriously fail. diff --git a/platforms/environments/qemu/hppa-netbsd9.txt b/platforms/environments/qemu/hppa-netbsd9.txt new file mode 100644 index 00000000..4b03a2d1 --- /dev/null +++ b/platforms/environments/qemu/hppa-netbsd9.txt @@ -0,0 +1,154 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://parisc.wiki.kernel.org/index.php/Qemu +https://wiki.netbsd.org/ports/hppa/qemu_hppa/ + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-8.0.2 +% PATH=$HOME/inst-qemu/8.0.2/bin:$PATH +or +Use qemu-8.1.2 +% PATH=$HOME/inst-qemu/8.1.2/bin:$PATH +or +Use qemu-8.2.0 with hppa patches from Helge Deller +% PATH=$HOME/inst-qemu/8.2.0+-hppa/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: https://cdn.netbsd.org/pub/NetBSD/iso/9.3/NetBSD-9.3-hppa.iso + +(XK) Extract the kernel from the CD-ROM or DVD image +---------------------------------------------------- + +This is not needed in this case. + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +% qemu-img create -f qcow2 netbsd93.qcow2 10G + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-m 256" + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd93.qcow2,format=qcow2,index=0" + +(NW) Choose the network arguments +--------------------------------- + +% net_args="" +This provides an ethernet interface: +(qemu) info network +hub 0 + \ hub0port1: #net160: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: tulip.0: index=0,type=nic,model=tulip,macaddr=52:54:00:12:34:56 +But it does not really work from within NetBSD later. Therefore: + +% net_args="-netdev type=user,id=net0 -device rtl8139,netdev=net0,mac=52:54:00:12:34:56" +(qemu) info network +rtl8139.0: index=0,type=nic,model=rtl8139,macaddr=52:54:00:12:34:56 + \ net0: index=0,type=user,net=10.0.2.0,restrict=off + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the CD/DVD +------------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-hppa $common_args -cdrom NetBSD-9.3-hppa.iso -boot d + +(IN) Perform the steps of the installer +--------------------------------------- + +Enter: +- a: in English +- a: to hard disk +- b: Yes +- a: sd0 +- a: Set sizes +- /: 2097152, swap: 524288, /usr: 18350080, x +- x: Partition sizes OK +- b: Yes +Ignore messages like this: +-------------------------------------------------------------------------------- +[ 504.5268850] esiop0: unhandled scsi interrupt, sist=0x80 sstat1=0x0 DSA=0x1 DS +-------------------------------------------------------------------------------- +- b: Installation without X11 +- a: CD-ROM +- enter +- a: configure network + a: re0 + Autoconfigure. + DNS domain: MYDOMAINNAME + OK? No, since the host name is not right. + a: re0 + Autoconfiguration: No + Host name: hppa-netbsd9 + DNS domain: MYDOMAINNAME + IPv4 address: 10.0.2.15 + IPv4 netmask: 255.255.255.0 + IPv4 gateway: 10.0.2.2 + Name server: 10.0.2.3 + OK? Yes + Install in /etc: Yes +- b: timezone + Europe/Berlin +- d: root password + Yes + New password: ******** +- g: sshd + NO because the key generation would later fail with errors like + ------------------------------------------------------------------------------ + assertion "(*wnumtop) == 0" failed: file "/usr/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_div.c", line 439, function "bn_div_fixed_top" + ------------------------------------------------------------------------------ +- h: ntpd + YES +- i: ntpdate at boot + YES +- o: user + name: MY_USER_NAME + Yes + /bin/sh + New password: ******** +- x: Finished configuring +- enter +- x: Exit +# halt + +(B2) Boot from the installed disk +--------------------------------- + +This does not need a -kernel option, since a SeaBIOS bootloader is installed. +% qemu-system-hppa $common_args + +This boots fine. Now is the time to switch to a graphic display, if desired: + +% display_args="-display gtk -monitor stdio" +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-hppa $common_args + +(PK) Install packages +--------------------- + +There are no binary packages in +http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/hppa/ . + + +Notes +----- + +The VM is not 100% reliable: +- Some gcc compilation commands crash with "internal compiler error" and + succeed the next time. +- Some gnulib unit tests, e.g. test-dynarray, may spuriously fail. diff --git a/platforms/environments/qemu/sparc-netbsd.txt b/platforms/environments/qemu/sparc-netbsd.txt deleted file mode 100644 index 83d2ebbb..00000000 --- a/platforms/environments/qemu/sparc-netbsd.txt +++ /dev/null @@ -1,137 +0,0 @@ -(DR) Collect pointers to documentation and references ------------------------------------------------------ - -https://www.qemu.org/docs/master/system/target-sparc.html -https://wiki.qemu.org/Documentation/Platforms/SPARC - -(QV) Choose a QEMU version --------------------------- - -Use qemu-2.12.0 -% PATH=$HOME/inst-qemu/2.12.0/bin:$PATH - -(DL) Download an installation CD-ROM or DVD image -------------------------------------------------- - -Download: originally https://cdn.netbsd.org/pub/NetBSD/iso/7.1/NetBSD-7.1-sparc.iso -now: http://archive.netbsd.org/pub/NetBSD-archive/NetBSD-7.1/iso/NetBSD-7.1-sparc.iso - https://ftp.uni-hannover.de/netbsd/iso/7.1/NetBSD-7.1-sparc.iso - https://mirror.dimensiondata.com/mirrors/NetBSD/iso/7.1/NetBSD-7.1-sparc.iso - -(XK) Extract the kernel from the CD-ROM or DVD image ----------------------------------------------------- - -This is not needed in this case. - -(CD) Create an empty disk image to be used by the virtual machine ------------------------------------------------------------------ - -% qemu-img create -f qcow2 netbsd71.qcow2 10G - -(MA) Choose the machine arguments ---------------------------------- - -% machine_args="-m 256" - -(DI) Choose the disk arguments ------------------------------- - -% disk_args="-drive file=netbsd71.qcow2,format=qcow2,index=0" - -(NW) Choose the network arguments ---------------------------------- - -% net_args="" -This provides an ethernet interface: -(qemu) info network -hub 0 - \ hub0port1: user.0: index=0,type=user,net=10.0.2.0,restrict=off - \ hub0port0: lance.0: index=0,type=nic,model=lance,macaddr=52:54:00:12:34:56 - -(DV) Choose the display/video arguments ---------------------------------------- - -% display_args="-nographic" - -(B1) Boot from the CD/DVD -------------------------- - -% common_args="$machine_args $disk_args $net_args $display_args" -% qemu-system-sparc $common_args -cdrom NetBSD-7.1-sparc.iso -boot d - -(IN) Perform the steps of the installer ---------------------------------------- - -Enter: -- 1) cdrom -- CD-ROM [/dev/cd0a]: -- Path to instfs.tgz -- [vt100] xterm -- (I)install/Upgrade: I -- a: in English -- a: to hard disk -- b: Yes -- a: sd0 -- a: Set sizes -- /: 9983 MB, swap: 256 MB, x -- Partition sizes OK -- disk name -- b: Yes -- b: Installation without X11 -- a: CD-ROM -- enter -- a: configure network - le0 - Host name: sparc-netbsd7 - DNS domain: MYDOMAINNAME - IPv4 address: 10.0.2.15 - IPv4 netmask: 0xffffff00 - IPv4 gateway: 10.0.2.2 - Name server: 10.0.2.3 - Install in /etc: Yes -- b: timezone - Europe/Berlin -- d: root password - Yes - New password: ******** -- g: sshd - YES -- h: ntpd - YES -- i: ntpdate at boot - YES -- o: user - name: MY_USER_NAME - Yes - /bin/sh - New password: ******** -- x: Finished configuring - -(B2) Boot from the installed disk ---------------------------------- - -This does not need a -kernel option, since an OpenBIOS bootloader is installed. -% qemu-system-sparc $common_args - -This boots fine. Now is the time to switch to a graphic display, if desired: - -% display_args="-display gtk -monitor stdio" -% common_args="$machine_args $disk_args $net_args $display_args" -% qemu-system-sparc $common_args - -(PK) Install packages ---------------------- - -The list of packages is at http://www.pkgsrc.se/ -and http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/sparc64/7.1/All/ -(no longer available). -See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc -# chmod 644 .cshrc .profile -Edit ~/.profile to define PKG_PATH: - export PKG_PATH=http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/`uname -m`/7.1/All -Logout. - -# pkg_add bash -# pkg_add gmake -# pkg_add vim -# pkg_add emacs-nox11 diff --git a/platforms/environments/qemu/sparc-netbsd10.txt b/platforms/environments/qemu/sparc-netbsd10.txt new file mode 100644 index 00000000..3f4a06d3 --- /dev/null +++ b/platforms/environments/qemu/sparc-netbsd10.txt @@ -0,0 +1,146 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://www.qemu.org/docs/master/system/target-sparc.html +https://wiki.qemu.org/Documentation/Platforms/SPARC + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-8.2.0 +% PATH=$HOME/inst-qemu/8.2.0/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: https://cdn.netbsd.org/pub/NetBSD/iso/10.0/NetBSD-10.0-sparc.iso + +(XK) Extract the kernel from the CD-ROM or DVD image +---------------------------------------------------- + +This is not needed in this case. + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +% qemu-img create -f qcow2 netbsd10.qcow2 10G + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-m 256" + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd10.qcow2,format=qcow2,index=0" + +(NW) Choose the network arguments +--------------------------------- + +% net_args="" +This provides an ethernet interface: +(qemu) info network +hub 0 + \ hub0port1: user.0: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: lance.0: index=0,type=nic,model=lance,macaddr=52:54:00:12:34:56 + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the CD/DVD +------------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" + +Resize the terminal to 80x24. + +% qemu-system-sparc $common_args -cdrom NetBSD-10.0-sparc.iso -boot d + +(IN) Perform the steps of the installer +--------------------------------------- + +Enter: +- 1) cdrom +- CD-ROM [/dev/cd0a]: +- Path to instfs.tgz +- [vt100] xterm +- (I)install/Upgrade: I +- a: in English +- a: to hard disk +- b: Yes +- a: sd0 +- a: Set sizes +- /: 9983 MB, swap: 256 MB, x +- Partition sizes OK +- b: Yes +- b: Installation without X11 +- a: CD-ROM +- enter +- root password: ******** +- a: enter random characters +- a: configure network + le0 + Host name: sparc-netbsd10 + DNS domain: MYDOMAINNAME + IPv4 address: 10.0.2.15 + IPv4 netmask: 0xffffff00 + IPv4 gateway: 10.0.2.2 + Name server: 10.0.2.3 +- Install network configuration in /etc: Yes +- b: timezone + Europe/Berlin +- g: sshd + YES +- h: ntpd + YES +- i: ntpdate at boot + YES +- o: user + name: MY_USER_NAME + Yes + /bin/sh + New password: ******** +- x: Finished configuring +- x: Exit + +(B2) Boot from the installed disk +--------------------------------- + +This does not need a -kernel option, since an NetBSD secondary bootloader is installed. +% qemu-system-sparc $common_args + +This boots fine. Now is the time to switch to a graphic display, if desired: + +% display_args="-display gtk -monitor stdio" +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-sparc $common_args + +Login as root. + +Edit /etc/profile to set TERM=vt220: +# env TERM=vt220 vi /etc/profile .cshrc +In /etc/profile, add + TERM=vt220 + export TERM +In .cshrc, add + setenv TERM vt220 + +# halt + +(PK) Install packages +--------------------- + +The list of packages is at http://www.pkgsrc.se/ +and https://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/sparc/10.0_2023Q4/All/ . +See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc +Edit ~/.profile to define PKG_PATH: + export PKG_PATH=https://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/sparc/10.0_2023Q4/All +Logout. + +# pkg_add bash +# pkg_add gmake +# pkg_add vim +# pkg_add emacs-nox11 diff --git a/platforms/environments/qemu/sparc-netbsd7.txt b/platforms/environments/qemu/sparc-netbsd7.txt new file mode 100644 index 00000000..b6f69552 --- /dev/null +++ b/platforms/environments/qemu/sparc-netbsd7.txt @@ -0,0 +1,137 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://www.qemu.org/docs/master/system/target-sparc.html +https://wiki.qemu.org/Documentation/Platforms/SPARC + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-2.12.0 +% PATH=$HOME/inst-qemu/2.12.0/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: originally https://cdn.netbsd.org/pub/NetBSD/iso/7.1/NetBSD-7.1-sparc.iso +now: http://archive.netbsd.org/pub/NetBSD-archive/NetBSD-7.1/iso/NetBSD-7.1-sparc.iso + https://ftp.uni-hannover.de/netbsd/iso/7.1/NetBSD-7.1-sparc.iso + https://mirror.dimensiondata.com/mirrors/NetBSD/iso/7.1/NetBSD-7.1-sparc.iso + +(XK) Extract the kernel from the CD-ROM or DVD image +---------------------------------------------------- + +This is not needed in this case. + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +% qemu-img create -f qcow2 netbsd71.qcow2 10G + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-m 256" + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd71.qcow2,format=qcow2,index=0" + +(NW) Choose the network arguments +--------------------------------- + +% net_args="" +This provides an ethernet interface: +(qemu) info network +hub 0 + \ hub0port1: user.0: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: lance.0: index=0,type=nic,model=lance,macaddr=52:54:00:12:34:56 + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the CD/DVD +------------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-sparc $common_args -cdrom NetBSD-7.1-sparc.iso -boot d + +(IN) Perform the steps of the installer +--------------------------------------- + +Enter: +- 1) cdrom +- CD-ROM [/dev/cd0a]: +- Path to instfs.tgz +- [vt100] xterm +- (I)install/Upgrade: I +- a: in English +- a: to hard disk +- b: Yes +- a: sd0 +- a: Set sizes +- /: 9983 MB, swap: 256 MB, x +- Partition sizes OK +- disk name +- b: Yes +- b: Installation without X11 +- a: CD-ROM +- enter +- a: configure network + le0 + Host name: sparc-netbsd7 + DNS domain: MYDOMAINNAME + IPv4 address: 10.0.2.15 + IPv4 netmask: 0xffffff00 + IPv4 gateway: 10.0.2.2 + Name server: 10.0.2.3 + Install in /etc: Yes +- b: timezone + Europe/Berlin +- d: root password + Yes + New password: ******** +- g: sshd + YES +- h: ntpd + YES +- i: ntpdate at boot + YES +- o: user + name: MY_USER_NAME + Yes + /bin/sh + New password: ******** +- x: Finished configuring + +(B2) Boot from the installed disk +--------------------------------- + +This does not need a -kernel option, since an OpenBIOS bootloader is installed. +% qemu-system-sparc $common_args + +This boots fine. Now is the time to switch to a graphic display, if desired: + +% display_args="-display gtk -monitor stdio" +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-sparc $common_args + +(PK) Install packages +--------------------- + +The list of packages is at http://www.pkgsrc.se/ +and http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/sparc/7.1/All/ +(no longer available). +See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc +# chmod 644 .cshrc .profile +Edit ~/.profile to define PKG_PATH: + export PKG_PATH=http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/`uname -m`/7.1/All +Logout. + +# pkg_add bash +# pkg_add gmake +# pkg_add vim +# pkg_add emacs-nox11 diff --git a/platforms/environments/qemu/sparc64-netbsd.txt b/platforms/environments/qemu/sparc64-netbsd.txt deleted file mode 100644 index 3e0d6aa7..00000000 --- a/platforms/environments/qemu/sparc64-netbsd.txt +++ /dev/null @@ -1,143 +0,0 @@ -(DR) Collect pointers to documentation and references ------------------------------------------------------ - -https://www.qemu.org/docs/master/system/target-sparc64.html -https://wiki.qemu.org/Documentation/Platforms/SPARC -https://gunkies.org/wiki/Installing_NetBSD_6.1.5_Sparc64_on_Qemu - -(QV) Choose a QEMU version --------------------------- - -Use qemu-3.1.0 -% PATH=$HOME/inst-qemu/3.1.0/bin:$PATH - -(DL) Download an installation CD-ROM or DVD image -------------------------------------------------- - -Download: http://cdn.netbsd.org/pub/NetBSD/iso/8.0/NetBSD-8.0-sparc64.iso - -(XK) Extract the kernel from the CD-ROM or DVD image ----------------------------------------------------- - -This is not needed in this case. - -(CD) Create an empty disk image to be used by the virtual machine ------------------------------------------------------------------ - -% qemu-img create -f qcow2 netbsd80.qcow2 10G - -(MA) Choose the machine arguments ---------------------------------- - -% machine_args="-m 512" - -(DI) Choose the disk arguments ------------------------------- - -% disk_args="-drive file=netbsd80.qcow2,format=qcow2,index=0" - -(NW) Choose the network arguments ---------------------------------- - -% net_args="" -This provides an ethernet interface: -(qemu) info network -hub 0 - \ hub0port1: user.0: index=0,type=user,net=10.0.2.0,restrict=off - \ hub0port0: sunhme.0: index=0,type=nic,model=sunhme,macaddr=52:54:00:12:34:56 - -(DV) Choose the display/video arguments ---------------------------------------- - -% display_args="-nographic" - -(B1) Boot from the CD/DVD -------------------------- - -% common_args="$machine_args $disk_args $net_args $display_args" -% qemu-system-sparc64 $common_args -cdrom NetBSD-8.0-sparc64.iso -boot d - -(IN) Perform the steps of the installer ---------------------------------------- - -Enter: -- Terminal type: xterm -- a: in English -- a: to hard disk -- b: Yes -- a: wd0 -- a: Set sizes -- /: 9727 MB, swap: 512 MB, x -- Partition sizes OK -- disk name -- b: Yes -- b: Installation without X11 -- a: CD-ROM -- enter -- a: configure network - hme0 - Autoconfiguration: Yes - DNS domain: MYDOMAINNAME - Check values: - Nameserver: 10.0.2.3 - Host IP: 10.0.2.15 - Netmask: 255.255.255.0 - IPv4 Gateway: 10.0.2.2 - But the host name is not right. So: - Autoconfiguration: No - Host name: sparc64-netbsd8 - DNS domain: MYDOMAINNAME - Your IPv4 address: 10.0.2.15 - IPv4 netmask: 255.255.255.0 - IPv4 gateway: 10.0.2.2 - DNS server: 10.0.2.3 - Install in /etc: Yes -- b: timezone - Europe/Berlin -- d: root password - Yes - New password: ******** -- g: sshd - YES -- h: ntpd - YES -- i: ntpdate at boot - YES -- o: Add a user - user: MY_USER_NAME, group wheel, /bin/sh - password: ******** -- x: Finished configuring -- d: Reboot - -(B2) Boot from the installed disk ---------------------------------- - -This does not need a -kernel option, since an OpenBIOS bootloader is installed. - -% qemu-system-sparc64 $common_args - -Edit /etc/profile: Set TERM to vt100. - -(PK) Install packages ---------------------- - -The list of packages is at http://www.pkgsrc.se/ -and http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/sparc64/8.0/All/ -(no longer available). -See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc -# chmod 644 .cshrc .profile -Edit ~/.profile to define PKG_PATH: - export PKG_PATH=http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/`uname -m`/8.0/All -Logout. - -# pkg_add bash -# pkg_add gmake -# pkg_add vim -# pkg_add emacs-nox11 - - -Notes ------ - -After 1 hour of execution time, sometimes the clock gets stuck in a 2-seconds -loop; then "sleep 1" never completes. diff --git a/platforms/environments/qemu/sparc64-netbsd10.txt b/platforms/environments/qemu/sparc64-netbsd10.txt new file mode 100644 index 00000000..4c9845c0 --- /dev/null +++ b/platforms/environments/qemu/sparc64-netbsd10.txt @@ -0,0 +1,152 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://www.qemu.org/docs/master/system/target-sparc64.html +https://wiki.qemu.org/Documentation/Platforms/SPARC +https://gunkies.org/wiki/Installing_NetBSD_6.1.5_Sparc64_on_Qemu + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-8.2.0 +% PATH=$HOME/inst-qemu/8.2.0/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: https://cdn.netbsd.org/pub/NetBSD/iso/10.0/NetBSD-10.0-sparc64.iso + +(XK) Extract the kernel from the CD-ROM or DVD image +---------------------------------------------------- + +This is not needed in this case. + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +% qemu-img create -f qcow2 netbsd10.qcow2 10G + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-m 512" + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd10.qcow2,format=qcow2,index=0" + +(NW) Choose the network arguments +--------------------------------- + +% net_args="" +This provides an ethernet interface: +(qemu) info network +hub 0 + \ hub0port1: user.0: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: sunhme.0: index=0,type=nic,model=sunhme,macaddr=52:54:00:12:34:56 + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the CD/DVD +------------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" + +Resize the terminal to 80x24. + +% qemu-system-sparc64 $common_args -cdrom NetBSD-10.0-sparc64.iso -boot d + +(IN) Perform the steps of the installer +--------------------------------------- + +Enter: +- Terminal type: xterm +- a: in English +- a: to hard disk +- b: Yes +- a: wd0 +- a: Set sizes +- /: 9727 MB, swap: 512 MB, /tmp: 0, x +- Partition sizes OK +- disk name +- b: Yes +- b: Installation without X11 +- a: CD-ROM +- enter +- root password: ******** +- a: enter random characters +- a: configure network + hme0 + Autoconfiguration: Yes + Host name: sparc64-netbsd10 + DNS domain: MYDOMAINNAME + Check values: + Nameserver: 10.0.2.3 + Host IP: 10.0.2.15 + Netmask: 255.255.255.0 + IPv4 Gateway: 10.0.2.2 + a: Yes + Install in /etc: Yes +- b: timezone + Europe/Berlin +- g: sshd + YES +- h: ntpd + YES +- i: ntpdate at boot + YES +- o: user + name: MY_USER_NAME + Yes + /bin/sh + New password: ******** +- x: Finished configuring +- x: Exit +# halt + +(B2) Boot from the installed disk +--------------------------------- + +This does not need a -kernel option, since an OpenBIOS and NetBSD OpenFirmware bootloader is installed. + +% qemu-system-sparc64 $common_args + +Login as root. + +Edit /etc/profile to set TERM=vt220: +# env TERM=vt220 vi /etc/profile .cshrc +In /etc/profile, add + TERM=vt220 + export TERM +In .cshrc, add + setenv TERM vt220 + +# halt + +(PK) Install packages +--------------------- + +There are no binary packages in +https://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/sparc64/10.0/All/ . + + +Notes +----- + +After 1 hour of execution time, sometimes the clock gets stuck in a 2-seconds +loop; then "sleep 1" never completes. + +gcc version 10.5.0 (nb3 20231008) produces + internal compiler error: Floating point exception +for some input files: + c-nstrftime.c des.c md4.c md5.c sha1.c sha256.c sha512.c sm3.c fprintftime.c + nstrftime.c parse-datetime.c mktime.c test-hard-locale.c +The workaround is to compile these compilation units with -O0. + +gcc version 10.5.0 (nb3 20231008) miscompiles + hypotl.c +The workaround is to compile these compilation units with -O0. diff --git a/platforms/environments/qemu/sparc64-netbsd8.txt b/platforms/environments/qemu/sparc64-netbsd8.txt new file mode 100644 index 00000000..3e0d6aa7 --- /dev/null +++ b/platforms/environments/qemu/sparc64-netbsd8.txt @@ -0,0 +1,143 @@ +(DR) Collect pointers to documentation and references +----------------------------------------------------- + +https://www.qemu.org/docs/master/system/target-sparc64.html +https://wiki.qemu.org/Documentation/Platforms/SPARC +https://gunkies.org/wiki/Installing_NetBSD_6.1.5_Sparc64_on_Qemu + +(QV) Choose a QEMU version +-------------------------- + +Use qemu-3.1.0 +% PATH=$HOME/inst-qemu/3.1.0/bin:$PATH + +(DL) Download an installation CD-ROM or DVD image +------------------------------------------------- + +Download: http://cdn.netbsd.org/pub/NetBSD/iso/8.0/NetBSD-8.0-sparc64.iso + +(XK) Extract the kernel from the CD-ROM or DVD image +---------------------------------------------------- + +This is not needed in this case. + +(CD) Create an empty disk image to be used by the virtual machine +----------------------------------------------------------------- + +% qemu-img create -f qcow2 netbsd80.qcow2 10G + +(MA) Choose the machine arguments +--------------------------------- + +% machine_args="-m 512" + +(DI) Choose the disk arguments +------------------------------ + +% disk_args="-drive file=netbsd80.qcow2,format=qcow2,index=0" + +(NW) Choose the network arguments +--------------------------------- + +% net_args="" +This provides an ethernet interface: +(qemu) info network +hub 0 + \ hub0port1: user.0: index=0,type=user,net=10.0.2.0,restrict=off + \ hub0port0: sunhme.0: index=0,type=nic,model=sunhme,macaddr=52:54:00:12:34:56 + +(DV) Choose the display/video arguments +--------------------------------------- + +% display_args="-nographic" + +(B1) Boot from the CD/DVD +------------------------- + +% common_args="$machine_args $disk_args $net_args $display_args" +% qemu-system-sparc64 $common_args -cdrom NetBSD-8.0-sparc64.iso -boot d + +(IN) Perform the steps of the installer +--------------------------------------- + +Enter: +- Terminal type: xterm +- a: in English +- a: to hard disk +- b: Yes +- a: wd0 +- a: Set sizes +- /: 9727 MB, swap: 512 MB, x +- Partition sizes OK +- disk name +- b: Yes +- b: Installation without X11 +- a: CD-ROM +- enter +- a: configure network + hme0 + Autoconfiguration: Yes + DNS domain: MYDOMAINNAME + Check values: + Nameserver: 10.0.2.3 + Host IP: 10.0.2.15 + Netmask: 255.255.255.0 + IPv4 Gateway: 10.0.2.2 + But the host name is not right. So: + Autoconfiguration: No + Host name: sparc64-netbsd8 + DNS domain: MYDOMAINNAME + Your IPv4 address: 10.0.2.15 + IPv4 netmask: 255.255.255.0 + IPv4 gateway: 10.0.2.2 + DNS server: 10.0.2.3 + Install in /etc: Yes +- b: timezone + Europe/Berlin +- d: root password + Yes + New password: ******** +- g: sshd + YES +- h: ntpd + YES +- i: ntpdate at boot + YES +- o: Add a user + user: MY_USER_NAME, group wheel, /bin/sh + password: ******** +- x: Finished configuring +- d: Reboot + +(B2) Boot from the installed disk +--------------------------------- + +This does not need a -kernel option, since an OpenBIOS bootloader is installed. + +% qemu-system-sparc64 $common_args + +Edit /etc/profile: Set TERM to vt100. + +(PK) Install packages +--------------------- + +The list of packages is at http://www.pkgsrc.se/ +and http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/sparc64/8.0/All/ +(no longer available). +See https://www.netbsd.org/docs/guide/en/netbsd.html#chap-boot-pkgsrc +# chmod 644 .cshrc .profile +Edit ~/.profile to define PKG_PATH: + export PKG_PATH=http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/`uname -m`/8.0/All +Logout. + +# pkg_add bash +# pkg_add gmake +# pkg_add vim +# pkg_add emacs-nox11 + + +Notes +----- + +After 1 hour of execution time, sometimes the clock gets stuck in a 2-seconds +loop; then "sleep 1" never completes. diff --git a/platforms/test-environments.txt b/platforms/test-environments.txt index d7493c73..a07b7b6f 100644 --- a/platforms/test-environments.txt +++ b/platforms/test-environments.txt @@ -158,8 +158,12 @@ As examples, find in the environments/ directory: * qemu/arm64-alpine-3.13.txt * qemu/arm64-alpine-3.19.txt * qemu/arm64-freebsd132.txt + * qemu/arm64-netbsd9.txt + * qemu/arm64-netbsd10.txt * qemu/hppa-linux-debian12.txt * qemu/hppa-linux-t2sde.txt + * qemu/hppa-netbsd9.txt + * qemu/hppa-netbsd10.txt * qemu/m68k-linux-debian12.txt * qemu/m68k-linux-t2sde.txt * qemu/mipseb-linux-debian8.txt @@ -178,11 +182,13 @@ As examples, find in the environments/ directory: * qemu/s390x-linux-debian8.txt * qemu/s390x-linux-opensuse.txt * qemu/s390x-alpine.txt - * qemu/sparc-netbsd.txt + * qemu/sparc-netbsd7.txt + * qemu/sparc-netbsd10.txt * qemu/sparc64-linux-debian9.txt * qemu/sparc64-linux-t2sde.txt * qemu/sparc64-freebsd12.txt - * qemu/sparc64-netbsd.txt + * qemu/sparc64-netbsd8.txt + * qemu/sparc64-netbsd10.txt Download locations: * GNU/Linux and Linux: