After a little more testing and research, I have found a workaround for failures to create socket paths larger than the predefined size.
It seems rather silly, but it turns out that the size is not based on the absolute, canonical file path. This means a simple symlink in another location works around the issue. I have unfortunately not been able to instrument this in the test suite of the package I'm working on right now. But the idea is to pre-emptively start an agent for the affected process (in my case, the test suite) under a directory with a shorter path, symlinked to the normal GPGHOMEDIR, something like this: TMPDIR=$(mktemp -d gpghome) ln -s $PWD/testgpghome $TMPDIR/testgpghome gpg-agent --homedir $TMPDIR/testgpghome --daemon ... Because it is a symlink, it does not suffer from the permission problems other proposed solutions have. I create a temporary directory as a parent to work around possible issues with GPG checking the parent directories as well. For some reason, this fails in my test setup: # workaround bug in gpg-agent: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=847206 override_dh_auto_test: TMPDIR=`mktemp -d` && \ ln -s $(CURDIR)/testdata/gpghome $$TMPDIR/testgpghome && \ gpg-agent --homedir $$TMPDIR/testgpghome --daemon dh_auto_test && \ rm -r $$TMPDIR The already started agent gets ignored by the test suite, I don't know why. Instead, I am using this detection code to skip the test suite in case of an hostile environment: SUN_PATH_LIMIT=108 # workaround bug in gpg-agent: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=847206 override_dh_auto_test: SOCKET_PATH="$${PWD}/testdata/gpghome/S.gpg-agent" ; \ if [ $${#SOCKET_PATH} -gt $(SUN_PATH_LIMIT) ]; then \ echo "W: current path too long ($${#SOCKET_PATH} > 108), skipping tests: $$SOCKET_PATH" ; \ else \ echo "I: current path not too long, running tests ($${#SOCKET_PATH}): $$SOCKET_PATH"; dh_auto_test ;\ fi It's crap (because it just skips the tests), but at least it doesn't crash the build. :/ A. -- During the initial stage of the struggle, the oppressed, instead of striving for liberation, tend themselves to become oppressors The very structure of their thought has been conditioned by the contradictions of the concrete, existential situation by which they were shaped. Their ideal is to be men; but for them, to be men is to be oppressors. This is their model of humanity. - Paulo Freire, Pedagogy of the Oppressed