2.3 KiB
Variables
Here we set some important variables that are used by other parts of the configuration.
Guix
Set up my Guix profile so that I can use all the right tools.
export GUIX_PROFILE="/home/chelys/.guix-profile"
source "$GUIX_PROFILE/etc/profile"
Add the system's data directories to XDG_DATA_DIRS
. Guix will set the XDG_DATA_DIRS
environment variable, but this will prevent the rest of the system from using the default ones. This causes a crash in Firefox when I try to upload or download files (well, open a file dialog). According to the XDG Base Directory Specification:
If
$XDG_DATA_DIRS
is either not set or empty, a value equal to/usr/local/share/:/usr/share/
should be used.
export XDG_DATA_DIRS="${XDG_DATA_DIRS}${XDG_DATA_DIRS:+:}/usr/local/share/:/usr/share/"
XDG
I keep my XDG files in the normal place, but specifying them in an environment variable makes things a little easier/clearer.
Set the config home.
export XDG_CONFIG_HOME="${HOME}/.config"
Set the data home.
export XDG_DATA_HOME="${HOME}/.local/share"
PATH
Add composer binaries to PATH.
PATH="${XDG_CONFIG_HOME}/composer/vendor/bin:${PATH}"
Add $HOME/usr/bin
to $PATH
because that is where I keep all of
my personal utilities and helper commands.
PATH="${HOME}/usr/bin:${PATH}"
Export it so programs and subshells know about it.
export PATH
Dbus
Make the session bus address fixed so other processes can know where to find it.
DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$(id -u)/bus"
Export it so programs and subshells know about it.
export DBUS_SESSION_BUS_ADDRESS
.Net
I don't want to send any telemetry to Microsoft about my usage of the dotnet
tool.
export DOTNET_CLI_TELEMETRY_OPTOUT=1
Systemd
Import some variables into the systemd environment so that services started after this know about them.
systemctl --user import-environment PATH