-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbashrc
More file actions
executable file
·114 lines (99 loc) · 2.9 KB
/
Copy pathbashrc
File metadata and controls
executable file
·114 lines (99 loc) · 2.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#!/bin/bash
# ======================================================================
# bashrc ---
#
# Filename: bashrc
# Description:
# Author: Geoff S Derber
# Maintainer:
# Created: Sun Jan 6 12:22:35 2019 (-0500)
# Version:
# Package-Requires: ()
# Last-Updated: Sun Jun 9 14:50:12 2019 (-0400)
# By: Geoff S Derber
# Update #: 2
# URL:
# Doc URL:
# Keywords:
# Compatibility:
#
#
# Commentary:
#
#
#
#
# Change Log:
#
#
#
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or (at
# your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
#
#
# Code:
# =============================================================== #
#
# PERSONAL $HOME/.bashrc FILE
#
# Last modified: Tue Mar 26 2016
#
# Code from:
#
#
# Others...
#
# =============================================================== #
#-------------------------------------------------------------
# Source global definitions (if any)
#-------------------------------------------------------------
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
so() { [ -s $1 ] && source $1; }
# Host Specific settings
so ~/.bash/${HOSTNAME}_settings
so ~/.bash/bashrc # main configuration
## Uses:
export ENV_NAME=$(uname -s|tr 'A-Z' 'a-z')
so ~/.bash/${ENV_NAME}_profile # configuration per OS linux/OSX/WIN
so ~/.bash/common # common stuff or overriding
so ~/.bash/exports # Exports
so ~/.bash/shopt # Shopts
### Interactive ### {{{
if [[ $- == *i* ]]; then
so ~/.bash/colors
so ~/.bash/commonfunctions # Common Functions
so ~/.bash/functions # Functions
so ~/.bash/prompt # COMMAND_PROMPT function
so ~/.bash/aliases # Alias
so ~/.bash/agent # GPG and SSH agents, have before settings
# Conditional functions
# Functions requiring sudo, which you may not have access to.
#if sudo -v ; then
# so ~/.bash/sudo_functions
#fi
# These functions are only useful for laptops
if [[ ${LAPTOP} == "true" ]]; then
so ~/.bash/laptop_functions
fi
# so ~/.bash/xdisplay
fi
### End Interactive ### }}}
## This needs to be after Interactive, to override
so ~/.bash/settings # Machine dependent settings
## This is last, so it can override everything. Less fighting with mini installs.
so ~/.bash/bashrc.local # machine specific config. not tracked
#
# bashrc ends here