Hi, Jaimz Fairfax wrote: > The internet seemed to be convinced that it had to be done via systemd > user.conf.
That opinion does not have to be wrong. It depends on the level of software which you want to influence. Environment variables are a very fundamental feature. Programs can see them even if they have not been started by a shell. But of course, the settings in the shell cannot influence what those programs see. So it is sometimes necessary to use the init software or the desktop to define the variable names and values for programs. On the other side ot the spectrum, you may write wrapper programs around the programs which you want to influence. Those wrappers would set up the desired environment variables before starting the desired program. In the most simple case this would be a shell script like #!/bin/sh export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64" android-emulator ...options... So you can set up different environments per program rather than per user. Have a nice day :) Thomas