Linux flavours vary slightly when netbooting, here are the two most common versions I use.
default syslinux/menu.c32 prompt 0 MENU TITLE Linux Mint Installer Menu menu separator Label Linux - Mint 19.0 amd64 KERNEL mint/19.0/vmlinuz APPEND initrd=mint/19.0/initrd.lz boot=casper locale=en_GB netboot=nfs nfsroot=192.168.1.111:/export/tftp/mint/19.0/iso toram systemd.mask=dev-hugepages.mount systemd.mask=dev-mqueue.mount systemd.mask=sys-fs-fuse-connections.mount systemd.mask=sys-kernel-config.mount systemd.mask=sys-kernel-debug.mount systemd.mask=tmp.mount Label Linux - Mint 18.3 amd64 KERNEL mint/18.3/vmlinuz APPEND initrd=mint/18.3/initrd.lz root=/dev/nfs boot=casper netboot=nfs nfsroot=192.168.1.111:/export/tftp/mint/18.3/iso nosplash -- LABEL Return MENU LABEL ^Return to Main Menu KERNEL menu.c32 APPEND pxelinux.cfg/default
There are differences between Mint 18.x and 19.x - here is a summary:
There is a bug in the Mint 19.x installer if the installer filesystem is not mounted in RAM it will error out; hence the additional flags added to the kernel compared to Mint 18.x.
Most Ubuntu versions netboot cleanly without any specific options. Here is a summary of my current Ubuntu 16/18 LTS netboot menu:
default syslinux/menu.c32 prompt 0 MENU TITLE Linux Ubuntu Installer Menu menu separator Label Linux - Ubuntu 18.04 LTS amd64 KERNEL ubuntu/18.04/linux APPEND initrd=ubuntu/18.04/initrd.gz vga=788 locale=en_GB.UTF-8 keyboard-configuration/layoutcode=gb Label Linux - Ubuntu 16.04 LTS amd64 KERNEL ubuntu/16.04/linux APPEND initrd=ubuntu/16.04/initrd.gz vga=788 locale=en_GB.UTF-8 keyboard-configuration/layoutcode=gb LABEL Return MENU LABEL ^Return to Main Menu KERNEL menu.c32 APPEND pxelinux.cfg/default
Both the linux kernel image and the initrd.gz ramdisk filesystem come from the Ubuntu network install CD iso. Other than that, the only options I've used are keyboard layout. Everything else simply works and installs over the network (hence you need a working internet connection).