X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=.bashrc;h=53e4138d07b1ae1ba1e2fdacee445da6360a7491;hb=d454ba0f3f94d45af71e5a1e72a1bbcb63211645;hp=d0c4b02f6bff6fbbbdc4c647a5ecbbea8812416a;hpb=eb9b839bb5a91c60cc4f6eb9d7e38ffbf73f0e90;p=distro-setup diff --git a/.bashrc b/.bashrc index d0c4b02..53e4138 100644 --- a/.bashrc +++ b/.bashrc @@ -38,20 +38,18 @@ # which we could test for, but I can't think of a way to make that # inherently limited to a single ssh command. I choose to set SendEnv # and AcceptEnv ssh config vars to allow the environment variable -# BASH_LOGIN_SHELL to propagate across ssh. +# BASH_LOGIN_SHELL to propagate across ssh. This also requires that we +# wrap ssh in interactive shells, because, once we export the var, it +# will go into scripts and theres no way to automatically set it. -# assume we want ssh commands to source this file if we are sourcing it, -# and we haven't specified otherwise already -[[ ! $BASH_LOGIN_SHELL ]] && export BASH_LOGIN_SHELL=true -#BASH_LOGIN_SHELL=false # temporary override # first conditions show that we are an ssh command without an interactive shell if [[ $SSH_CONNECTION ]] \ && [[ $- == *c* ]] \ && [[ ! $SSH_TTY ]] \ && [[ $- != *i* ]] \ - && [[ ! $BASH_LOGIN_SHELL == true ]]; then - return + && [[ $BASH_LOGIN_SHELL != true ]]; then + return 0 else if [[ -r /etc/profile ]]; then source /etc/profile @@ -62,3 +60,5 @@ else source $_x fi fi +# ensure no bad programs appending to this file will have an affect +return 0