diff --git a/src/66/66-info.c b/src/66/66-info.c
index 9dee6c8ec0772aecf29380931c1928b661eb8eb6..10ad8d0897428d513a6ee4c033e44e460a8d8ffe 100644
--- a/src/66/66-info.c
+++ b/src/66/66-info.c
@@ -40,6 +40,7 @@
 #include <66/constants.h>
 #include <66/enum.h>
 #include <66/resolve.h>
+#include <66/environ.h>
 
 #include <s6/s6-supervise.h>//s6_svc_ok
 
@@ -606,8 +607,8 @@ int sv_args(int argc, char const *const *argv,char const *const *envp)
 	stralloc tree = STRALLOC_ZERO ;
 	genalloc gatree = GENALLOC_ZERO ;
 	stralloc src = STRALLOC_ZERO ;
-	stralloc env = STRALLOC_ZERO ;
 	stralloc conf = STRALLOC_ZERO ;
+	stralloc env = STRALLOC_ZERO ;
 	
 	ss_resolve_t res = RESOLVE_ZERO ;
 	
@@ -651,12 +652,6 @@ int sv_args(int argc, char const *const *argv,char const *const *envp)
 	
 	size_t newlen ;
 	
-	/*if (!stralloc_copy(&src,&live)) goto err ;
-	if (!stralloc_cats(&src,SS_STATE + 1)) goto err ;
-	if (!stralloc_cats(&src,"/")) goto err ;
-	if (!stralloc_cats(&src,OWNERSTR)) goto err ;
-	if (!stralloc_cats(&src,"/")) goto err ;*/
-	
 	if (!stralloc_copy(&src,&base)) goto err ;
 	if (!stralloc_cats(&src,SS_SYSTEM)) goto err ;
 	if (!stralloc_cats(&src,"/")) goto err ;
@@ -762,26 +757,15 @@ int sv_args(int argc, char const *const *argv,char const *const *envp)
 		}
 	}
 	/** environment */
-	if(!OWNER)
-	{
-		if (!stralloc_cats(&env,SS_SERVICE_ADMCONFDIR)) goto err ;
-		if (!stralloc_0(&env)) goto err ;
-	}
-	else
-	{
-		if (!stralloc_cats(&env,base.s)) goto err ;
-		if (!stralloc_cats(&env,SS_ENVDIR)) goto err ;
-		if (!stralloc_0(&env)) goto err ;
-	}
-	
-	if (dir_search(env.s,svname,S_IFREG))
+	if (res.srconf)
 	{
+		if (!env_resolve_conf(&env,MYUID)) goto err ;
 		if (!file_readputsa(&conf,env.s,svname)) goto err ;
 		if (!info_print_title("environment")) goto err ;
+		if (!bprintf(buffer_1,"%s%s\n","source : ",env.s)) goto err ;
 		if (!bprintf(buffer_1,"%s",conf.s)) goto err ;
 	}
 	
-	
 	/** logger */
 	if (res.type == CLASSIC || res.type == LONGRUN) 
 	{
@@ -823,8 +807,8 @@ int sv_args(int argc, char const *const *argv,char const *const *envp)
 	genalloc_deepfree(stralist,&gatree,stra_free) ;
 	ss_resolve_free(&res) ;
 	stralloc_free(&src) ;
-	stralloc_free(&env) ;
 	stralloc_free(&conf) ;
+	stralloc_free(&env) ;
 	return 1 ;
 	
 	err:
@@ -833,8 +817,8 @@ int sv_args(int argc, char const *const *argv,char const *const *envp)
 		genalloc_deepfree(stralist,&gatree,stra_free) ;
 		ss_resolve_free(&res) ;
 		stralloc_free(&src) ;
-		stralloc_free(&env) ;
 		stralloc_free(&conf) ;
+		stralloc_free(&env) ;
 		return 0 ;
 }