#!/bin/zsh

divide-merge() {
	echo "$@ #$#"
	emerge -avuNDt1 $@ && return
	#returns 1 for failed merge and unsatisfieable
	#returns 130 for answer "no" or Ctrl-C
	if [ $# -gt 1 ] ; then
		divide-merge $@[1,$#/2]
		divide-merge $@[$#/2+1,$#]
	fi
}

divide-merge $(< /var/lib/portage/world)
