shell: more flexible per-host profile configuration
[~bandali/configs] / .profile
CommitLineData
9daac239
AB
1# ~/.profile: executed by the command interpreter for login shells.
2# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
3# exists.
14623136 4
47d195d9
AB
5# source host-specific profile
6if [ -f "$HOME/.config/profiles/$(hostname)" ]; then
7 . "$HOME/.config/profiles/$(hostname)"
8fi
9
2446aab5
AB
10export EDITOR="emacsclient -nw"
11export VISUAL="emcl"
d99f86cd 12
9daac239
AB
13PATH="$HOME/bin:$HOME/.local/bin:$PATH"
14PATH="$HOME/.cabal/bin:$HOME/.cargo/bin:$HOME/.elan/bin:$PATH"
47d195d9
AB
15if [ -z "$IS_GUIX_SYSTEM" ]; then
16 PATH="$HOME/.guix-profile/bin:$HOME/.guix-profile/sbin${PATH:+:}$PATH"
17fi
9daac239 18export PATH
a75331ab 19
0f10b2c2
AB
20export XDG_CONFIG_HOME="$HOME/.config"
21export XDG_DATA_HOME="$HOME/.local/share"
9daac239
AB
22
23export INPUTRC="$XDG_CONFIG_HOME"/readline/inputrc
24export SCREENRC="$XDG_CONFIG_HOME"/screen/screenrc
a75331ab 25
0f10b2c2
AB
26export MAILDIR="$HOME/mail"
27export CVS_RSH="ssh"
a75331ab 28
9daac239
AB
29export GOPATH="$HOME/src/go"
30
31# if running bash
32if [ -n "$BASH_VERSION" ]; then
33 # include .bashrc if it exists
34 if [ -f "$HOME/.bashrc" ]; then
35 . "$HOME/.bashrc"
36 fi
37fi
38
47d195d9
AB
39if [ -z "$IS_GUIX_SYSTEM" ]; then
40 # if guix is installed
41 if [ -x "$(command -v guix)" ]; then
42 export GIT_EXEC_PATH="$HOME/.guix-profile/libexec/git-core"
43 export PASSWORD_STORE_SYSTEM_EXTENSION_DIR="$HOME/.guix-profile/lib/password-store/extensions${PASSWORD_STORE_SYSTEM_EXTENSION_DIR:+:}$PASSWORD_STORE_SYSTEM_EXTENSION_DIR"
44 GUIX_PROFILE="$HOME/.guix-profile"
45 . "$GUIX_PROFILE/etc/profile"
46 fi
47fi
48
9daac239 49setxkbmap \
a38abd4c 50 -layout us,ir \
9daac239 51 -option ctrl:nocaps \
9daac239 52 -option grp:shifts_toggle
a38abd4c
AB
53
54xmodmap -e "keysym Menu = Super_R"
55
56xrdb -merge "$HOME/.Xresources"