Add resources directory with baseline common file/templates
This commit is contained in:
		
							
								
								
									
										4
									
								
								resources/bash/aliases-workstation.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								resources/bash/aliases-workstation.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
alias doc='cd ~/Documents'
 | 
			
		||||
alias dn='cd ~/Downloads'
 | 
			
		||||
alias gg='cd ~/Git'
 | 
			
		||||
alias explorer='nautilus'
 | 
			
		||||
							
								
								
									
										12
									
								
								resources/bash/aliases.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								resources/bash/aliases.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
alias bk='cd -'
 | 
			
		||||
alias fuck='sudo $(history -p \!\!)'
 | 
			
		||||
alias ls='ls -lshF --color --group-directories-first --time-style=long-iso'
 | 
			
		||||
alias version='uname -orp && lsb_release -a | grep Description'
 | 
			
		||||
alias activate='source ./bin/activate'
 | 
			
		||||
alias cls='clear'
 | 
			
		||||
alias ls='/usr/bin/ls -lshF --color --group-directories-first --time-style=long-iso'
 | 
			
		||||
alias gmtime='/usr/bin/date -u --iso-8601=seconds'
 | 
			
		||||
alias date='/usr/bin/date --iso-8601=seconds'
 | 
			
		||||
alias whatismyip='curl https://icanhazip.com/'
 | 
			
		||||
alias uuid="python3 -c 'import uuid; print(uuid.uuid4());'"
 | 
			
		||||
alias epoch="python3 -c 'import time; print(time.time());'"
 | 
			
		||||
							
								
								
									
										7
									
								
								resources/bash/global.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								resources/bash/global.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
function _parse_git_branch() {
 | 
			
		||||
    git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export PS1="\[\e[0;97m\]\[\e[37m\e[1m\]\u\[\e[1;94m\]@\[\e[94m\]\H\[\e[0;33m\]\$(_parse_git_branch) \[\e[37m\]\w\[\e[33m\] \[\e[0;97m\]$\[\e[0m\] "
 | 
			
		||||
export rc=/home/$USERNAME/.bashrc
 | 
			
		||||
export VIRTUALENV_DIR=/home/$USERNAME/.venvs
 | 
			
		||||
							
								
								
									
										18
									
								
								resources/bash/helpers.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								resources/bash/helpers.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
random() {
 | 
			
		||||
     if [[ $# -eq 0 ]]; then
 | 
			
		||||
          num=32
 | 
			
		||||
     else
 | 
			
		||||
          num=$1
 | 
			
		||||
     fi
 | 
			
		||||
     cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w $num | head -n 1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function up() { cd $(eval printf '../'%.0s {1..$1}); }
 | 
			
		||||
 | 
			
		||||
function pipin() { pip freeze | grep $1; }
 | 
			
		||||
 | 
			
		||||
function passhash() {
 | 
			
		||||
     read -sp 'Password: ' tmppass;
 | 
			
		||||
     echo $tmppass | python3 -c 'import crypt; print(crypt.crypt(input(), crypt.mksalt(crypt.METHOD_SHA512)));';
 | 
			
		||||
     unset tmppass;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										76
									
								
								resources/bash/pyenv.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								resources/bash/pyenv.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,76 @@
 | 
			
		||||
#!/env/bash
 | 
			
		||||
 | 
			
		||||
function pyenv () {
 | 
			
		||||
    usage="Custom Python virtualenv manager
 | 
			
		||||
sivenv [list, delete, load, new] [VENV]
 | 
			
		||||
Commands:
 | 
			
		||||
  list                List existing virtualenvs (alias: 'ls')
 | 
			
		||||
  load VENV           Activate the virtualenv named VENV (alias: 'source')
 | 
			
		||||
  new VENV [VERSION]  Create and load a new virtualenv named VENV. Optionally VERSION
 | 
			
		||||
                      can be a python version to use for creating the venv. Note that
 | 
			
		||||
                      only python3 versions are supported.
 | 
			
		||||
  delete VENV         Delete the virtualenv named VENV (alias: 'rm')";
 | 
			
		||||
 | 
			
		||||
    if [ $# -eq 0 ]; then
 | 
			
		||||
        echo "Error: no command specified" >&2;
 | 
			
		||||
        echo "$usage";
 | 
			
		||||
        return 1;
 | 
			
		||||
    fi;
 | 
			
		||||
 | 
			
		||||
    case $1 in
 | 
			
		||||
        "-h"| "--help")
 | 
			
		||||
            echo "$usage";
 | 
			
		||||
            return 0;;
 | 
			
		||||
        "ls"| "list")
 | 
			
		||||
            lsvenv "$VIRTUALENV_DIR";;
 | 
			
		||||
        "rm"| "delete")
 | 
			
		||||
            if [ $# -ne 2 ]; then
 | 
			
		||||
                echo "Error: no virtualenv specified" >&2;
 | 
			
		||||
                return 1;
 | 
			
		||||
            fi;
 | 
			
		||||
            rm --recursive --force "${VIRTUALENV_DIR:?}/$2";;
 | 
			
		||||
        "source" | "load")
 | 
			
		||||
            if [ $# -ne 2 ]; then
 | 
			
		||||
                echo "Error: no virtualenv specified" >&2;
 | 
			
		||||
                return 1;
 | 
			
		||||
            fi;
 | 
			
		||||
            # shellcheck source=/dev/null
 | 
			
		||||
            source "$VIRTUALENV_DIR/$2/bin/activate";;
 | 
			
		||||
        "new")
 | 
			
		||||
            if [ $# -lt 2 ]; then
 | 
			
		||||
                echo "Error: no virtualenv specified" >&2;
 | 
			
		||||
                return 1;
 | 
			
		||||
            fi;
 | 
			
		||||
            if [ $# -eq 3 ]; then
 | 
			
		||||
                version="$3";
 | 
			
		||||
            else
 | 
			
		||||
                version="3";
 | 
			
		||||
            fi
 | 
			
		||||
            if ! command -v "python$version" &>/dev/null; then
 | 
			
		||||
                echo "Error: no interpreter found for python version '$version'" >&2;
 | 
			
		||||
                return 2;
 | 
			
		||||
            fi
 | 
			
		||||
 | 
			
		||||
            if python$version -m venv "$VIRTUALENV_DIR/$2"; then
 | 
			
		||||
                echo "New virtualenv '$2' created using $(command -v python$version)" >&2;
 | 
			
		||||
                # shellcheck source=/dev/null
 | 
			
		||||
                source "$VIRTUALENV_DIR/$2/bin/activate"
 | 
			
		||||
            else
 | 
			
		||||
                return $?;
 | 
			
		||||
            fi;;
 | 
			
		||||
        *)
 | 
			
		||||
            echo "Error: unknown command '$1'" >&2;
 | 
			
		||||
            echo "$usage";
 | 
			
		||||
            return 1;;
 | 
			
		||||
    esac
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function lsvenv () {
 | 
			
		||||
    venvs=()
 | 
			
		||||
    for item in /usr/bin/ls -d "$1"/*/; do
 | 
			
		||||
        if stat "${item}/bin/activate" &>/dev/null; then
 | 
			
		||||
          venvs+=("$(basename "$item")");
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
    echo "${venvs[*]}"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								resources/motd.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								resources/motd.j2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
 | 
			
		||||
     ////////////   ////     ////   ///////////
 | 
			
		||||
    ////           //////   ////   ////    ////
 | 
			
		||||
   ////////       //// /// ////   ///////////
 | 
			
		||||
  ////           ////   //////   ////
 | 
			
		||||
 ////////////   ////     ////   {{ omni_description | default('Omni Network System') }}
 | 
			
		||||
 _______________________________{{ omni_description | default('Omni Network System') | length * '\\' }}\
 | 
			
		||||
							
								
								
									
										9
									
								
								resources/networkd/netdev.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								resources/networkd/netdev.j2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
			
		||||
# ANSIBLE MANAGED FILE - DO NOT EDIT
 | 
			
		||||
[NetDev]
 | 
			
		||||
Name={{ item.0.key }}
 | 
			
		||||
Kind=vlan
 | 
			
		||||
 | 
			
		||||
[VLAN]
 | 
			
		||||
Id={{ item.1 }}
 | 
			
		||||
 | 
			
		||||
# EOF
 | 
			
		||||
							
								
								
									
										27
									
								
								resources/networkd/network.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								resources/networkd/network.j2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
# ANSIBLE MANAGED FILE - DO NOT EDIT
 | 
			
		||||
[Match]
 | 
			
		||||
Name={{ item.key }}
 | 
			
		||||
 | 
			
		||||
[Network]
 | 
			
		||||
DHCP={{ 'Yes' if item.value['dhcp'] | default(false) == true else 'No' }}
 | 
			
		||||
IPv6AcceptRA={{ 'Yes' if item.value['dhcp6'] | default(false) == true else 'No' }}
 | 
			
		||||
{% if item.value['addresses'] is defined %}
 | 
			
		||||
{% for ip_addr in item.value['addresses'] %}
 | 
			
		||||
Address={{ ip_addr }}
 | 
			
		||||
{% endfor %}
 | 
			
		||||
{% endif %}
 | 
			
		||||
{% if item.value['dns'] is defined %}
 | 
			
		||||
{% for dns_server in item.value['dns'] %}
 | 
			
		||||
DNS={{ dns_server }}
 | 
			
		||||
{% endfor %}
 | 
			
		||||
{% endif %}
 | 
			
		||||
{% if item.value['gateway'] is defined %}
 | 
			
		||||
Gateway={{ item.value['gateway'] }}
 | 
			
		||||
{% endif %}
 | 
			
		||||
{% if item.value['vlans'] is defined %}
 | 
			
		||||
{% for vlan_tag in item.value['vlans'] %}
 | 
			
		||||
VLAN={{ item.key }}.{{ vlan_tag }}
 | 
			
		||||
{% endfor %}
 | 
			
		||||
{% endif %}
 | 
			
		||||
 | 
			
		||||
# EOF
 | 
			
		||||
		Reference in New Issue
	
	Block a user