Due to changes in ebuild scheme (postgresql-server and postgresql-client has been merged into one postgresql ebuild, for example) its not possible to create a different binary packages. I have a build farm for Gentoo binary packages distribution onto my servers. For example I want to install postgresql-server and postgresql-client packages on different machines, but with a new schema I'm able to create only one postgresql binary package. Is there any way to divide server and clients parts for binary packages? Reproducible: Always
Currently, the answer is no. After dealing with the split ebuilds for a long time, it is exponentially more difficult to maintain them than it is to maintain the unified ebuild. It also lead duplication of effort and to some bugs where the best solution was to unify the ebuilds. As for your circumstances, I understand the desire to not have the server binaries installed, however they take up little space, less than 8-10 MiB, and can't run a server unless the cluster has been initialized, both of which requires interactive shell access to do so. Still, there are other solutions for you: Delete the server binaries after installation, change your binhost setup, or setup a private overlay. All the libs are required even for client-only builds, so really the only result of doing a server build is a few more binary executables, which can be safely deleted. You can have 2 separate binhosts: One for server installations and another for clients, setting up one binhost to appear as local and the other as a remote, which if the local binhost doesn't have the appropriate use flags, Portage will search the remote binhost. With a private overlay, you can maintain a split ebuild basing it off of the current dev-db/postgresql ebuilds and strip out the server sections. If there are several admins/users that desire a split ebuild for this purpose, I'll reconsider this.