101 lines
2.8 KiB
Org Mode
101 lines
2.8 KiB
Org Mode
* 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.
|
|
|
|
#+begin_src sh
|
|
export GUIX_PROFILE="/home/chelys/.guix-profile"
|
|
source "$GUIX_PROFILE/etc/profile"
|
|
#+end_src
|
|
|
|
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 [[https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html][XDG Base Directory Specification]]:
|
|
|
|
#+begin_quote
|
|
If =$XDG_DATA_DIRS= is either not set or empty, a value equal to =/usr/local/share/:/usr/share/= should be used.
|
|
#+end_quote
|
|
|
|
#+begin_src sh
|
|
export XDG_DATA_DIRS="${XDG_DATA_DIRS}${XDG_DATA_DIRS:+:}/usr/local/share/:/usr/share/"
|
|
#+end_src
|
|
|
|
** 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.
|
|
|
|
#+BEGIN_SRC sh
|
|
export XDG_CONFIG_HOME="${HOME}/.config"
|
|
#+END_SRC
|
|
|
|
Set the data home.
|
|
|
|
#+BEGIN_SRC sh
|
|
export XDG_DATA_HOME="${HOME}/.local/share"
|
|
#+END_SRC
|
|
|
|
** PATH
|
|
|
|
Add composer binaries to PATH.
|
|
|
|
#+BEGIN_SRC sh
|
|
PATH="${XDG_CONFIG_HOME}/composer/vendor/bin:${PATH}"
|
|
#+END_SRC
|
|
|
|
Add =$HOME/usr/bin= to =$PATH= because that is where I keep all of
|
|
my personal utilities and helper commands.
|
|
|
|
#+BEGIN_SRC sh
|
|
PATH="${HOME}/usr/bin:${PATH}"
|
|
#+END_SRC
|
|
|
|
Export it so programs and subshells know about it.
|
|
|
|
#+BEGIN_SRC sh
|
|
export PATH
|
|
#+END_SRC
|
|
|
|
** Dbus
|
|
|
|
Make the session bus address fixed so other processes can know where
|
|
to find it.
|
|
|
|
#+BEGIN_SRC sh
|
|
DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$(id -u)/bus"
|
|
#+END_SRC
|
|
|
|
Export it so programs and subshells know about it.
|
|
|
|
#+BEGIN_SRC sh
|
|
export DBUS_SESSION_BUS_ADDRESS
|
|
#+END_SRC
|
|
|
|
** .Net
|
|
|
|
I don't want to send any telemetry to Microsoft about my usage of the ~dotnet~ tool.
|
|
|
|
#+begin_src sh
|
|
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
|
#+end_src
|
|
|
|
** SCSH
|
|
|
|
Add a directory in my home to the list where scsh will try to load libraries from when using =-ll=. This variable is treated as a list of s-exps, so each element needs to be quoted. And =#f= means to insert the default list of directories there. scsh doesn't understand what =~/= means, so we need to use escaped quotes instead of wrapping everything in single quotes.
|
|
|
|
#+begin_src sh
|
|
export SCSH_LIB_DIRS="#f \"${HOME}/usr/share/scsh/\""
|
|
#+end_src
|
|
|
|
* Systemd
|
|
|
|
Import some variables into the systemd environment so that services
|
|
started after this know about them.
|
|
|
|
#+BEGIN_SRC sh
|
|
systemctl --user import-environment PATH
|
|
#+END_SRC
|