Initial commit

This commit is contained in:
Alex 2024-02-18 12:36:03 +01:00
commit 9856993114
Signed by: l-x
GPG key ID: 0B7107C9393169F4
9 changed files with 281 additions and 0 deletions

7
.gitmodules vendored Normal file
View file

@ -0,0 +1,7 @@
[submodule "dotbot"]
path = dotbot
url = https://github.com/anishathalye/dotbot
ignore = dirty
[submodule "dotconf/oh-my-bash"]
path = dotconf/oh-my-bash
url = https://github.com/ohmybash/oh-my-bash.git

1
dotbot Submodule

@ -0,0 +1 @@
Subproject commit 3f9e409669172ad662e82fca791f0ad16dce5edd

11
dotconf/bash_profile Normal file
View file

@ -0,0 +1,11 @@
# .bash_profile -*- mode: sh -*-
# Load login settings and environment variables
if [[ -f ~/.profile ]]; then
source ~/.profile
fi
# Load interactive settings
if [[ -f ~/.bashrc ]]; then
source ~/.bashrc
fi

144
dotconf/bashrc Normal file
View file

@ -0,0 +1,144 @@
# Enable the subsequent settings only in interactive sessions
case $- in
*i*) ;;
*) return;;
esac
# Path to your oh-my-bash installation.
export OSH=~/.oh-my-bash
# Set name of the theme to load. Optionally, if you set this to "random"
# it'll load a random theme each time that oh-my-bash is loaded.
OSH_THEME="font"
# If you set OSH_THEME to "random", you can ignore themes you don't like.
# OMB_THEME_RANDOM_IGNORED=("powerbash10k" "wanelo")
# Uncomment the following line to use case-sensitive completion.
# OMB_CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion. Case
# sensitive completion must be off. _ and - will be interchangeable.
# OMB_HYPHEN_SENSITIVE="false"
# Uncomment the following line to disable bi-weekly auto-update checks.
# DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_OSH_DAYS=13
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you don't want the repository to be considered dirty
# if there are untracked files.
# SCM_GIT_DISABLE_UNTRACKED_DIRTY="true"
# Uncomment the following line if you want to completely ignore the presence
# of untracked files in the repository.
# SCM_GIT_IGNORE_UNTRACKED="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output. One of the following values can
# be used to specify the timestamp format.
# * 'mm/dd/yyyy' # mm/dd/yyyy + time
# * 'dd.mm.yyyy' # dd.mm.yyyy + time
# * 'yyyy-mm-dd' # yyyy-mm-dd + time
# * '[mm/dd/yyyy]' # [mm/dd/yyyy] + [time] with colors
# * '[dd.mm.yyyy]' # [dd.mm.yyyy] + [time] with colors
# * '[yyyy-mm-dd]' # [yyyy-mm-dd] + [time] with colors
# If not set, the default value is 'yyyy-mm-dd'.
# HIST_STAMPS='yyyy-mm-dd'
# Uncomment the following line if you do not want OMB to overwrite the existing
# aliases by the default OMB aliases defined in lib/*.sh
# OMB_DEFAULT_ALIASES="check"
# Would you like to use another custom folder than $OSH/custom?
# OSH_CUSTOM=/path/to/new-custom-folder
# To disable the uses of "sudo" by oh-my-bash, please set "false" to
# this variable. The default behavior for the empty value is "true".
OMB_USE_SUDO=true
# To enable/disable display of Python virtualenv and condaenv
# OMB_PROMPT_SHOW_PYTHON_VENV=true # enable
# OMB_PROMPT_SHOW_PYTHON_VENV=false # disable
# Which completions would you like to load? (completions can be found in ~/.oh-my-bash/completions/*)
# Custom completions may be added to ~/.oh-my-bash/custom/completions/
# Example format: completions=(ssh git bundler gem pip pip3)
# Add wisely, as too many completions slow down shell startup.
completions=(
git
composer
ssh
)
# Which aliases would you like to load? (aliases can be found in ~/.oh-my-bash/aliases/*)
# Custom aliases may be added to ~/.oh-my-bash/custom/aliases/
# Example format: aliases=(vagrant composer git-avh)
# Add wisely, as too many aliases slow down shell startup.
aliases=(
general
)
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-bash/plugins/*)
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(
git
bashmarks
)
# Which plugins would you like to conditionally load? (plugins can be found in ~/.oh-my-bash/plugins/*)
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
# Example format:
# if [ "$DISPLAY" ] || [ "$SSH" ]; then
# plugins+=(tmux-autoattach)
# fi
source "$OSH"/oh-my-bash.sh
# User configuration
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# ssh
# export SSH_KEY_PATH="~/.ssh/rsa_id"
# Set personal aliases, overriding those provided by oh-my-bash libs,
# plugins, and themes. Aliases can be placed here, though oh-my-bash
# users are encouraged to define aliases within the OSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias bashconfig="mate ~/.bashrc"
# alias ohmybash="mate ~/.oh-my-bash"

72
dotconf/gitconfig Normal file
View file

@ -0,0 +1,72 @@
[alias]
f = flow
ff = flow feature
fr = flow release
b = branch
co = checkout
cm = checkout master
cb = checkout -b
where = branch -r --contains
show = show --show-signature
ci = commit
ciam = "!f() { BRANCH=`git branch --list | grep -E '\\*' | cut -d ' ' -f2`; MSG=\"($BRANCH) $1\"; git ci -am"\"$MSG\""; }; f"
cow = "!f() { git checkout "WE-$1"; }; f"
cbw = "!f() { git cb "WE-$1"; }; f"
amend = commit -a --amend
d = diff
ds = diff --shortstat
ls = log --pretty=format:"%C(yellow)%h%Cgreen%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --no-merges
ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat --no-merges
unstage = reset HEAD --
cp = cherry-pick -s -x
s = status -sb
sl = stash list
sa = stash apply
sp = stash pop
ss = stash save
rba = rebase --abort
rbc = rebase --continue
unpushed = "log --branches --not --remotes --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
# clc = "!f() { git --no-pager ls -1; git --no-pager log --no-merges --pretty=format:'%h' -1 | xclip; }; f"
up = "!gitup"
ns = log staging..master --no-merges --oneline --color --pretty=format:"%C(yellow)%h%Cgreen%d\\ %Creset%s%Cblue\\ [%cn]" --decorate
nr = log deployment..staging --no-merges --oneline --color --pretty=format:"%C(yellow)%h%Cgreen%d\\ %Creset%s%Cblue\\ [%cn]" --decorate
purge-local-branches = "!f() { git cmp; git branch --merged | grep -vE 'master|staging|deployment|\\*' | xargs -n 1 git b -d; git co -;}; f"
appraise = !/bin/git-appraise
[user]
name = Alexander Wühr
signingKey = 0B7107C9393169F4
email = alex@pnyhf.eu
[push]
default = current
[core]
excludesfile = ~/.config/git/ignore
editor = vim
[commit]
gpgSign = true
[tag]
gpgSign = true
[init]
defaultBranch = main
[gpg "ssh"]
allowedSignersFile = /home/awuehr/.ssh/allowed_signers
[includeIf "gitdir:~/dev/scn/"]
path = ~/dev/scn/.gitconfig

18
dotconf/gitignore Normal file
View file

@ -0,0 +1,18 @@
dev/
.idea/
.keep
webgrind/
campaign-designer/
DefaultConfig.php
.env
.out
.mailmap
*.pid
*.code-workspace
.php-version
lsp/
.psalm.xml
GPUCache/
.todo
.yarn
.envrc

1
dotconf/oh-my-bash Submodule

@ -0,0 +1 @@
Subproject commit d55683133b6be49d1b649b3bc292285038a2e2eb

15
install Executable file
View file

@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -e
CONFIG="install.conf.yaml"
DOTBOT_DIR="dotbot"
DOTBOT_BIN="bin/dotbot"
BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "${BASEDIR}"
git -C "${DOTBOT_DIR}" submodule sync --quiet --recursive
git submodule update --init --recursive "${DOTBOT_DIR}"
"${BASEDIR}/${DOTBOT_DIR}/${DOTBOT_BIN}" -d "${BASEDIR}" -c "${CONFIG}" "${@}"

12
install.conf.yaml Normal file
View file

@ -0,0 +1,12 @@
- defaults:
link:
relink: true
- clean: ["~"]
- link:
~/:
prefix: '.'
path: dotconf/*
glob: true