Add support for generating GNS3 appliance file for amd64 builds

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2023-01-16 19:15:40 +01:00
parent 2a89445570
commit 9018024ca9
5 changed files with 86 additions and 2 deletions
+15
View File
@@ -0,0 +1,15 @@
serial 0 115200
timeout 20
totaltimeout 100
ontimeout qemu
ui menu.c32
label qemu
kernel __KERNEL_PATH__
initrd __INITRD_PATH__
append root=/dev/sr0 console=ttyS0 quiet
label live
kernel __KERNEL_PATH__
initrd __INITRD_PATH__
append root=/dev/sr0 console=tty0 quiet
+5
View File
@@ -1,5 +1,6 @@
CONFIG_SYSVIPC=y
CONFIG_CGROUPS=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_SMP=y
CONFIG_HYPERVISOR_GUEST=y
CONFIG_PARAVIRT=y
@@ -63,8 +64,12 @@ CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_FW_CFG_SYSFS=y
CONFIG_FW_CFG_SYSFS_CMDLINE=y
CONFIG_BLK_DEV_NULL_BLK=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_VIRTIO_BLK=y
CONFIG_BLK_DEV_SD=y
CONFIG_BLK_DEV_SR=y
CONFIG_SCSI_VIRTIO=y
CONFIG_ATA=y
CONFIG_ATA_PIIX=y
+51
View File
@@ -0,0 +1,51 @@
#!/bin/sh
cat <<EOF >"$BINARIES_DIR/infix.gns3a"
{
"name": "infix",
"category": "router",
"description": "Infix Network Operating System",
"vendor_name": "KernelKit",
"vendor_url": "https://github.com/kernelkit/",
"product_name": "Infix",
"registry_version": 6,
"status": "stable",
"maintainer": "KernelKit",
"maintainer_email": "infix@example.com",
"port_name_format": "eth{0}",
"linked_clone": true,
"qemu": {
"adapter_type": "virtio-net-pci",
"adapters": 10,
"ram": 192,
"cpus": 1,
"hda_disk_interface": "virtio",
"arch": "x86_64",
"console_type": "telnet",
"kvm": "allow"
},
"images": [
{
"filename": "rootfs.iso9660",
"filesize": $(stat --printf='%s' "$BINARIES_DIR/rootfs.iso9660"),
"md5sum": "$(md5sum "$BINARIES_DIR/rootfs.iso9660" | awk '{print $1}')",
"version": "v0.0"
},
{
"filename": "rw.ext4",
"filesize": $(stat --printf='%s' "$BINARIES_DIR/rw.ext4"),
"md5sum": "$(md5sum "$BINARIES_DIR/rw.ext4" | awk '{print $1}')",
"version": "v0.0"
}
],
"versions": [
{
"name": "v0.0",
"images": {
"cdrom_image": "rootfs.iso9660",
"hda_disk_image": "rw.ext4"
}
}
]
}
EOF
+8 -2
View File
@@ -1,5 +1,11 @@
#!/bin/sh
# shellcheck disable=SC1090
. "$BR2_CONFIG" 2>/dev/null
common=$(dirname $(readlink -f "$0"))
common=$(dirname "$(readlink -f "$0")")
$common/mkfit.sh
"$common/mkfit.sh"
if [ "$BR2_ARCH" = "x86_64" ]; then
"$common/mkgns3a.sh"
fi
+7
View File
@@ -56,7 +56,14 @@ BR2_PACKAGE_WATCHDOGD=y
BR2_PACKAGE_MG=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_SIZE="128M"
BR2_TARGET_ROOTFS_ISO9660=y
BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="$(BR2_EXTERNAL_INFIX_PATH)/board/amd64/isolinux.cfg"
BR2_TARGET_ROOTFS_ISO9660_HYBRID=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TARGET_SYSLINUX=y
BR2_TARGET_SYSLINUX_ISOLINUX=y
BR2_TARGET_SYSLINUX_MBR=y
BR2_TARGET_SYSLINUX_C32="dmi.c32 libcom32.c32 libgpl.c32 liblua.c32 libutil.c32 lua.c32 menu.c32 syslinux.c32"
BR2_PACKAGE_HOST_ENVIRONMENT_SETUP=y
BR2_PACKAGE_FACTORY=y
BR2_PACKAGE_FINIT_SULOGIN=y