all repos — dotfiles @ 6ecb7c899fc8d79a96bde7eba8cc269720a52daa

random configuration files

kshrc (raw)

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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
indicator()
{
  if [ $(whoami) != root ]; then
    echo "%"
  else echo "#"
  fi
}

export GTK_THEME=steppenwolf-dark
export GPG_TTY=$(tty)
export VISUAL=micro
export EDITOR=micro
export BROWSER=firefox
export MICRO_TRUECOLOR=1
if [ "$TERM" = "dumb" ]; then
  PS1='$(indicator) '
else
  PS1='\033]0;$(whoami)@$(hostname): ${PWD}\007[ $(hostname): ${PWD} ]\n$(indicator) '
fi
bind -m '^L'='^C'clear'^J'

silence()
{
  "$@" > /dev/null & exit
}

search()
{
  $BROWSER https://duckduckgo.com/?q="$*" > /dev/null & exit
}

acmeInit()
{
  export tabstop=2
  acme -aib -f /mnt/font/SauceCodeProNerdFontComplete-Regular/9a/font &
  #transset -n "acme" 0.85
  exit
}

sshmount()
{
  sshfs $1 $2
}

sshumount()
{
  fusermount3 -u $1
}

decryptmount()
{
  cryptsetup luksOpen $1 $2
  mount /dev/mapper/$2 $3
}

encryptumount()
{
  umount $1
  cryptsetup luksClose $1
}


# one extra step with a logical volume:
# open the luks disk, activate the volume group,
# then finally mount the volume at the desired mount point
decryptmountlv()
{
  cryptsetup luksOpen $1 $2
  vgchange -ay
  mount /dev/mapper/$3 $4
}

# unmount the logical volume,
# close the logical volume,
# then close the disk
encryptumountlv()
{
  umount $1
  cryptsetup luksClose $1
  cryptsetup luksClose $2
}

cuegen()
{
  if [ ! -z "$2" ]; then
    echo "FILE \"$1\" BINARY" > $2
    echo "  TRACK 01 MODE1/2352" >> $2
    echo "  INDEX 01 00:00:00" >> $2
  else
    echo "usage: cuegen IMAGE CUEFILE"
  fi
}

mssqldb()
{
  if [ -z $1 ]; then
    return
  fi

  if [ "$1" = "clear" ]; then
    docker volume rm mssql_data mssql_log mssql_secrets
    return
  fi

  if [ "$1" = "persist" ]; then
    volumes="-v mssql_data:/var/opt/mssql/data -v mssql_log:/var/opt/mssql/log -v mssql_secrets:/var/opt/mssql/secrets"
    shift
  else
    volumes=""
  fi
  
  app=$1

  if [ ! -z $2 ]; then
    docker run -it --rm -e SA_PASSWORD="BadDefaultPassword!" -e MOCK_DATA="$2" -p 1433:1433 ${volumes} ${app}_db
  else
    docker run -it --rm -e SA_PASSWORD="BadDefaultPassword!" -p 1433:1433 ${volumes} ${app}_db
  fi
}

siroonian()
{
  if [ -z $1 ]; then
    echo "usage: siroonian [connect | auth | desktop]"
  fi

  case $1 in
    connect)
      sudo openfortivpn;;
    auth)
      kinit dstevens;;
    desktop)
      rdesktop -u dstevens -d siroonian.local -p - -MKz -x m -r sound:local -r clipboard:PRIMARYCLIPBOARD devworkstation3.siroonian.local;;
    *)
      echo "usage: siroonian [connect | auth | desktop]";;
  esac
}

waitfor()
{
  while pgrep $1; do
    sleep $2
  done
}

mergeandtest()
{
  git checkout $1
  git checkout -b $1_$2_test
  git merge $2
}

9man()
{
  if [ "${TERM}" != "dumb" ]; then
    man "$@"
  else
    man -c "$@" | ul
  fi
}

microCmd()
{
  if [ "$TERM" == linux ]; then
    micro -clipboard internal -colorscheme solarwolf_fb "$@"
  else
    echo -ne "\033]0;micro\007"
    micro "$@"
  fi
}

alias web='silence $BROWSER'
alias mail='silence thunderbird'
alias fs='silence pcmanfm-qt'
alias office='silence libreoffice'
alias acme='acmeInit'
alias man='9man'
alias gpg='gpg2'
alias zoom='flatpak --device=all --filesystem=host run us.zoom.Zoom'
alias teams='flatpak --device=all --filesystem=host run com.microsoft.Teams'
alias micro='microCmd'
alias startx='exec startx'
alias mpv='mpv --player-operation-mode=pseudo-gui --cover-art-files=/home/nilix/lib/img/ux/sound_only.png'

alias ls='ls -lh --group-directories-first'

if [ -d ~/bin ]; then
  PATH=~/bin:${PATH}
  for x in ~/bin/*; do
    if [ -d $x ]; then
      PATH=${x}:${PATH}
    fi
  done
fi