add a main sub
pull install to a sub
automate kernel version selection