about summary refs log tree commit diff
path: root/configs/.profile
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2020-03-05T17·26+0000
committerWilliam Carroll <wpcarro@gmail.com>2020-03-06T10·15+0000
commitfe61dee51170a4aa7cdd984e03e56d4dc45afbb9 (patch)
tree7ee427504bee31df4a6e62f763fd43f749e1eea9 /configs/.profile
parent137bd6dc0c8ef65d89c0daada860a2dd25460983 (diff)
Splice configs/shared directory
- Move all children from configs/shared into configs.
- Delete "shared" directory.
Diffstat (limited to 'configs/.profile')
-rw-r--r--configs/.profile49
1 files changed, 49 insertions, 0 deletions
diff --git a/configs/.profile b/configs/.profile
new file mode 100644
index 000000000000..63da222d024c
--- /dev/null
+++ b/configs/.profile
@@ -0,0 +1,49 @@
+# Some programs read from ~/.profile for values. It's best to set environment
+# variables here instead of in ~/.zshrc or similar files, which are sourced
+# everytime a new shell is created. The ~/.profile, on the other hand, is
+# typically sourced only once at login.
+
+# TODO: Consider getting rid of all of these variables and prefer using lorri.
+PATH+=":$HOME/bin"                            # personal
+PATH+=":$HOME/.local/bin"                     # personal
+PATH+=":$HOME/.cargo/bin"                     # Rust
+PATH+=":$HOME/.rvm/bin"                       # Ruby
+PATH+=":$HOME/n/bin"                          # JavaScript, et al
+PATH+=":$HOME/.yarn/bin"                      # JavaScript, et al
+PATH+=":$HOME/.yarn/global/node_modules/.bin" # JavaScript, et al
+export PATH
+systemctl --user import-environment PATH
+
+# Taken from the EXWM configuration documentation.
+if [ -z "$DISPLAY" -a "$(tty)" = '/dev/tty5' ]; then
+  exec xinit -- vt05
+fi
+
+# Application preferences
+export BROWSER=google-chrome-stable
+export TERMINAL=alacritty
+export VISUAL=emacsclient
+export EDITOR=emacsclient
+export ALTERNATE_EDITOR=nvim
+
+# Rust integration. Keep here so programs like Emacs can read this value.
+export RUST_SRC_PATH="$(rustc --print sysroot)/lib/rustlib/src/rust/src"
+
+# This fixes nixpkgs that rely on glibc-2.27, which allegedly breaks locale
+# issues.
+# See this thread for more details: https://github.com/NixOS/nixpkgs/issues/8398
+export LOCALE_ARCHIVE="$(readlink ~/.nix-profile/lib/locale)/locale-archive"
+
+# Start ssh-agent
+eval "$(ssh-agent -s)"
+
+# TODO: Prefer `systemctl start docker.service`
+dockerd &
+
+# Set environment variables for Nix. Don't run this for systems running NixOS.
+# TODO: Learn why I can't use the variables from ~/briefcase/.envrc.
+case $(hostname) in
+  zeno.lon.corp.google.com) . ~/.nix-profile/etc/profile.d/nix.sh;;
+  seneca) . ~/.nix-profile/etc/profile.d/nix.sh;;
+  wpcarro.c.googlers.com) . ~/.nix-profile/etc/profile.d/nix.sh;;
+esac