I also run OpenNebula and stuff, so some ruby stuff sneaks in there.
This is what I install on any system:
"bacula-client", "procps", "bash", "python", "screen",
"ncurses", "gawk", "grep", "lsof", "ethtool", "iptables", "ip6tables",
"coreutils", "python", "vim", "zsh", "rsync"
I usually install the following dependency packages for Xen hosts:
"ruby", "ruby-gems", "iproute2", "libvirt", "pciutils", "dmidecode",
"ebtables", "dnsmasq", "lvm", "openvswitch", "libvirt-daemon",
"sg3_utils", "mdadm", "lsscsi"
I also added the following as a KVM fallback while Libvirt has issues with Xen. (Just like half a year, who cares about accessibility when you're hip)
"qemu", "libvirt-qemu", "qemu-img", "qemu-x86_64"
I might also install targetcli to run iSCSI into a VM from the host.
I'm still looking for the packages containing some utilities.
I don't have notes about installing the Xen packages.
Do it as you found it in the docs.
Don't forget to
Some host specific stuff needs to be added to /etc/modules after installing Xen
I give more RAM than the example since I found the memory calculation is broken and you'll have a few 100 meg less than you define. Everything with tmem is experimental stuff. Don't use it if you don't need it. Iommu=1 is said to be a default. Since the docs are useless / outdated I can't tell if it's true and thus set it. acpi=ht is my last straw since I would dearly love to reboot/poweroff my server which does not work!
These changes take effect by running update-extlinux
After a reboot, you should see the Xen bootup prior to your host boot, and be able to run "xl info" or "xl dmesg"
What you're still missing is a bridged networking config.
This example gives a full bridging + v6 config
As should become pretty obvious, if you add a few more NICs, a few dozen VLANs or more tunnels, the Debian-Style "networking" config file way of doing networking is a bad match for networking.
Suggestion would be to only bring up your management interface via the /etc/network/interfaces and do the rest elsewhere with something that wasn't designed by a dev for his laptop.
An example VM config.