Differentiate between host-specific startup progs and profiles
[~bandali/configs] / .profile
index 65221c4..c4b9019 100644 (file)
--- a/.profile
+++ b/.profile
@@ -1,16 +1,22 @@
 # ~/.profile: executed by the command interpreter for login shells.
 # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
 # exists.
+# see /usr/share/doc/bash/examples/startup-files for examples.
+# the files are located in the bash-doc package.
+
+# the default umask is set in /etc/profile; for setting the umask
+# for ssh logins, install and configure the libpam-umask package.
+#umask 022
 
 # source host-specific profile
-if [ -f "$HOME/.config/profiles/$(hostname)" ]; then
-    . "$HOME/.config/profiles/$(hostname)"
+if [ -f "$HOME/.config/$(hostname).profile" ]; then
+    . "$HOME/.config/$(hostname).profile"
 fi
 
 export EDITOR="emacsclient -nw"
 export VISUAL="emcl"
+export GPG_TTY=$(tty)
 
-PATH="$HOME/usr/local/bin:$HOME/.local/bin:$PATH"
 PATH="$HOME/.cabal/bin:$HOME/.cargo/bin:$HOME/.elan/bin:$PATH"
 if [ -z "$IS_GUIX_SYSTEM" ]; then
     PATH="$HOME/.config/guix/current/bin${PATH:+:}$PATH"
@@ -20,16 +26,32 @@ fi
 export PATH
 export INFOPATH
 
+export MY_GUIX_MANIFESTS="$HOME/.config/guix/manifest"
+export MY_GUIX_PROFILES="$HOME/.config/guix/profile"
+
 export XDG_CONFIG_HOME="$HOME/.config"
 export XDG_DATA_HOME="$HOME/.local/share"
 
+if [ -f "$HOME/.config/user-dirs.dirs" ]; then
+    set -a
+    . "$HOME/.config/user-dirs.dirs"
+    set +a
+fi
+
 export INPUTRC="$XDG_CONFIG_HOME"/readline/inputrc
 export SCREENRC="$XDG_CONFIG_HOME"/screen/screenrc
 
 export MAILDIR="$HOME/mail"
 export CVS_RSH="ssh"
 
-export GOPATH="$HOME/src/go"
+if [ -x "$(command -v go)" ]; then
+    export GOPATH="$HOME/s/go"
+    export PATH="$GOPATH/bin:$PATH"
+fi
+
+export _JAVA_AWT_WM_NONREPARENTING=1
+export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true'
+#export MOZ_USE_XINPUT2=1  # precise scrolling in firefox
 
 # if running bash
 if [ -n "$BASH_VERSION" ]; then
@@ -51,12 +73,25 @@ if [ -z "$IS_GUIX_SYSTEM" ]; then
         fi
         GUIX_PROFILE="$HOME/.guix-profile"
         . "$GUIX_PROFILE/etc/profile"
+        unset XDG_DATA_DIRS
     fi
 fi
 
+for p in $MY_GUIX_PROFILES/*; do
+    profile=$p/$(basename "$p")
+    if [ -f "$profile"/etc/profile ]; then
+        GUIX_PROFILE="$profile"
+        . "$GUIX_PROFILE"/etc/profile
+    fi
+    unset profile
+done
+
+export PATH="$HOME/u/local/bin:$HOME/.local/bin:$PATH"
+
 # start an ssh-agent (with guix's openssh)
 if [ -z "$IS_GUIX_SYSTEM" ]; then
     if ! pgrep -u "$USER" ssh-agent > /dev/null; then
+        rm -f ~/.ssh-agent-thing
         ssh-agent > ~/.ssh-agent-thing
     fi
     if [[ ! "$SSH_AUTH_SOCK" ]]; then