4 Commits

Author SHA1 Message Date
85fd7d91a9 Add KDE settings. 2025-11-23 07:45:04 -05:00
bbb5b2a7b8 Fix vscode failure to resolve shell. 2024-06-29 11:03:05 -04:00
8fd7494aac Add init script. 2024-06-29 11:00:31 -04:00
ed276824a2 Add stowrc and ignore files. 2024-06-29 10:59:56 -04:00
19 changed files with 432 additions and 616 deletions

View File

@@ -1,36 +1,34 @@
# Source ble.sh if installed.
if [ -f ~/.local/share/blesh/ble.sh ]; then
source -- ~/.local/share/blesh/ble.sh
fi
# Source rust things if they exist
if [ -f ~/.cargo/env ]; then
. ~/.cargo/env
fi
# For Rust stuff, uncomment this line
#. "$HOME/.cargo/env"
alias ,git='git config --global user.name "Shaun Reed" && git config --global user.email "shaunrd0@gmail.com"'
# Some aliases don't make sense in the docker image, like shortcuts to fix plasmashell.
if [ -f /.dockerenv ]; then
export DOT_PACKAGES='git stow vim tmux ranger clang wget curl golang-go'
export DOT_PACKAGES='git stow vim tmux ranger clang wget curl'
alias ,update='apt update -y && apt upgrade -y && apt upgrade --fix-broken --fix-missing --auto-remove'
alias ,init='apt update -y && apt install -y $DOT_PACKAGES'
alias ,init='apt update -y && apt install $DOT_PACKAGES -y'
alias ,swap='swapoff -a && swapon -a'
else
export DOT_PACKAGES='git stow vim vim-gtk3 xsel xclip tmux ranger clang yakuake wget curl golang-go gawk'
export DOT_PACKAGES='git stow vim xsel xclip tmux ranger clang yakuake wget curl'
alias ,update='sudo apt update -y && sudo apt upgrade -y && sudo apt upgrade --fix-broken --fix-missing --auto-remove'
alias ,init='sudo apt update -y && sudo apt install -y $DOT_PACKAGES'
alias ,init='sudo apt update -y && sudo apt install $DOT_PACKAGES'
# Clear kscreen cached settings
alias ,kscreen='rm -rf ~/.local/share/kscreen/*'
# Restart plasmashell
alias ,plasmashell='plasmashell --replace &> /dev/null &'
alias ,plasmashell='sudo pkill plasmashell && plasmashell --replace &> /dev/null &'
alias ,swap='sudo swapoff -a && sudo swapon -a'
alias ,vbox="ps aux www |grep 'VBoxClient --draganddrop' | awk '{print $2}' | xargs kill"
alias ,assistant="nohup $HOME/Qt/6.9.0/gcc_64/bin/assistant > /dev/null 2>&1 &"
fi
# Alias / export customizations
# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
@@ -107,12 +105,3 @@ if ! [ command -v conda &>/dev/null ] && [ -e ~/Code/Clones/mambaforge/bin/conda
source ~/.bashrc
fi
# For shared systems where history is not desired.
# ln -sf /dev/null ~/.bash_history
# HISTFILE=/dev/null
# Avoid duplicates in bash history.
HISTCONTROL=ignoredups:erasedups
# When the shell exits, append to the history file instead of overwriting it.
shopt -s histappend

54
.blerc
View File

@@ -1,54 +0,0 @@
# Insert date-time string within a bash prompt using `\dt<SP>`
function blerc/define-sabbrev-dt {
ble-sabbrev -m '\dt'='ble/util/assign COMPREPLY "date +%F_%H-%M-%S"'
}
blehook/eval-after-load complete blerc/define-sabbrev-dt
# Insert the time within a bash prompt using `\time<SP>`
function blerc/define-sabbrev-time {
ble-sabbrev -m '\time'='ble/util/assign COMPREPLY "date +%H-%M-%S"'
}
blehook/eval-after-load complete blerc/define-sabbrev-time
# Insert the date within a bash prompt using `\date<SP>`
# https://github.com/akinomyoga/ble.sh/wiki/Recipes#r1-insert-date-through-sabbrev-date
function blerc/define-sabbrev-date {
ble-sabbrev -m '\date'='ble/util/assign COMPREPLY "date +%F"'
}
blehook/eval-after-load complete blerc/define-sabbrev-date
# Interactive git branch selection with `\branch<SP>`
# https://github.com/akinomyoga/ble.sh/wiki/Recipes#r2-insert-git-branch-name-from-menu-through-sabbrev-branch
function blerc/define-sabbrev-branch {
function blerc/sabbrev-git-branch {
ble/util/assign-array COMPREPLY "git branch | sed 's/^\*\{0,1\}[[:blank:]]*//'" 2>/dev/null
}
ble-sabbrev -m '\branch'=blerc/sabbrev-git-branch
}
blehook/eval-after-load complete blerc/define-sabbrev-branch
# Interactive git commit selection with `\commit<SP>`
# https://github.com/akinomyoga/ble.sh/wiki/Recipes#r3-insert-git-commit-id-from-menu-through-sabbrev-commit
function blerc/define-sabbrev-commit {
ble/color/defface blerc_git_commit_id fg=63
ble/complete/action#inherit-from blerc_git_commit_id word
function ble/complete/action:blerc_git_commit_id/init-menu-item {
local ret
ble/color/face2g blerc_git_commit_id; g=$ret
}
function blerc/sabbrev-git-commit {
bleopt sabbrev_menu_style=desc-raw
bleopt sabbrev_menu_opts=enter_menu
local format=$'%h \e[1;32m(%ar)\e[m %s - \e[4m%an\e[m\e[1;33m%d\e[m'
local arr; ble/util/assign-array arr 'git log --pretty=format:"$format"' &>/dev/null
local line hash subject
for line in "${arr[@]}"; do
builtin read hash subject <<< "$line"
ble/complete/cand/yield blerc_git_commit_id "$hash" "$subject"
done
}
ble-sabbrev -m '\commit'='blerc/sabbrev-git-commit'
}
blehook/eval-after-load complete blerc/define-sabbrev-commit

View File

@@ -5,8 +5,29 @@ wheel:Vertical;NoModifier=org.kde.switchdesktop
[ActionPlugins][1]
RightButton;NoModifier=org.kde.contextmenu
[Containments][1][Configuration]
PreloadWeight=42
[Containments][1]
ItemGeometries-0x0=
ItemGeometries-1920x1200=
ItemGeometriesHorizontal=
activityId=95158010-62dc-40b2-b3c1-55cd03985ba0
formfactor=0
immutability=1
lastScreen=0
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][1][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][1][General]
ToolBoxButtonState=topcenter
ToolBoxButtonX=444
[Containments][1][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][2]
activityId=
@@ -17,36 +38,29 @@ location=4
plugin=org.kde.panel
wallpaperplugin=org.kde.image
[Containments][2][Applets][20]
immutability=1
plugin=org.kde.plasma.digitalclock
[Containments][2][Applets][20][Configuration]
PreloadWeight=77
PreloadWeight=70
popupHeight=450
popupWidth=396
[Containments][2][Applets][21]
immutability=1
plugin=org.kde.plasma.minimizeall
[Containments][2][Applets][21][Configuration]
PreloadWeight=42
[Containments][2][Applets][25]
[Containments][2][Applets][26]
immutability=1
plugin=org.kde.plasma.activitypager
[Containments][2][Applets][25][Configuration]
PreloadWeight=18
[Containments][2][Applets][25][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][2][Applets][25][Configuration][General]
showWindowIcons=true
plugin=org.kde.plasma.systemmonitor
[Containments][2][Applets][26][Configuration]
PreloadWeight=42
CurrentPreset=org.kde.plasma.systemmonitor
PreloadWeight=55
[Containments][2][Applets][26][Configuration][SensorColors]
network/all/download=61,174,233
network/all/upload=233,120,61
[Containments][2][Applets][26][Configuration][Appearance]
chartFace=org.kde.ksysguard.piechart
[Containments][2][Applets][27]
immutability=1
@@ -54,23 +68,14 @@ plugin=org.kde.plasma.systemmonitor
[Containments][2][Applets][27][Configuration]
CurrentPreset=org.kde.plasma.systemmonitor
PreloadWeight=46
PreloadWeight=60
[Containments][2][Applets][27][Configuration][Appearance]
chartFace=org.kde.ksysguard.piechart
title=CPU
[Containments][2][Applets][27][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][2][Applets][27][Configuration][SensorColors]
cpu/all/usage=61,233,79
[Containments][2][Applets][27][Configuration][Sensors]
highPrioritySensorIds=["cpu/all/usage"]
lowPrioritySensorIds=["cpu/all/system","cpu/all/user","cpu/all/wait","cpu/loadaverages/loadaverage1","cpu/loadaverages/loadaverage15","cpu/loadaverages/loadaverage5"]
totalSensors=["cpu/all/usage"]
DialogHeight=540
DialogWidth=720
[Containments][2][Applets][28]
immutability=1
@@ -78,64 +83,46 @@ plugin=org.kde.plasma.systemmonitor
[Containments][2][Applets][28][Configuration]
CurrentPreset=org.kde.plasma.systemmonitor
PreloadWeight=26
[Containments][2][Applets][28][Configuration][Appearance]
chartFace=org.kde.ksysguard.piechart
title=SWAP
[Containments][2][Applets][28][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][2][Applets][28][Configuration][SensorColors]
memory/swap/freePercent=0,0,0
memory/swap/usedPercent=170,0,0
[Containments][2][Applets][28][Configuration][Sensors]
highPrioritySensorIds=["memory/swap/usedPercent"]
lowPrioritySensorIds=["memory/swap/freePercent"]
totalSensors=["memory/swap/usedPercent","memory/swap/freePercent"]
DialogHeight=540
DialogWidth=720
[Containments][2][Applets][29]
immutability=1
plugin=org.kde.plasma.systemmonitor
plugin=org.kde.plasma.systemmonitor.net
[Containments][2][Applets][29][Configuration]
CurrentPreset=org.kde.plasma.systemmonitor
PreloadWeight=31
PreloadWeight=55
[Containments][2][Applets][29][Configuration][Appearance]
chartFace=org.kde.ksysguard.piechart
title=RAM
[Containments][2][Applets][29][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
chartFace=org.kde.ksysguard.linechart
title=Network speed
[Containments][2][Applets][29][Configuration][SensorColors]
memory/physical/freePercent=0,0,0
memory/physical/usedPercent=170,0,0
network/all/download=61,174,233
network/all/upload=233,120,61
[Containments][2][Applets][29][Configuration][Sensors]
highPrioritySensorIds=["memory/physical/usedPercent"]
lowPrioritySensorIds=["memory/physical/freePercent"]
totalSensors=["memory/physical/usedPercent","memory/physical/freePercent"]
highPrioritySensorIds=["network/all/download","network/all/upload"]
[Containments][2][Applets][3]
immutability=1
plugin=org.kde.plasma.kickoff
[Containments][2][Applets][3][Configuration]
PreloadWeight=92
popupHeight=556
popupWidth=701
PreloadWeight=100
popupHeight=514
popupWidth=651
[Containments][2][Applets][3][Configuration][Configuration/General]
showAppsByName=true
[Containments][2][Applets][3][Configuration][General]
favorites=preferred://browser,org.kde.discover.desktop,org.kde.kontact.desktop,org.kde.kate.desktop,libreoffice-startcenter.desktop,org.kde.dolphin.desktop,org.kde.plasma-systemmonitor.desktop,systemsettings.desktop,org.kde.konsole.desktop
favoritesPortedToKAstats=true
[Containments][2][Applets][3][Configuration][Shortcuts]
@@ -146,179 +133,67 @@ global=Alt+F1
[Containments][2][Applets][30]
immutability=1
plugin=org.kde.plasma.systemmonitor
plugin=org.kde.plasma.systemmonitor.diskactivity
[Containments][2][Applets][30][Configuration]
CurrentPreset=org.kde.plasma.systemmonitor
PreloadWeight=46
PreloadWeight=65
[Containments][2][Applets][30][Configuration][Appearance]
chartFace=org.kde.ksysguard.linechart
title=Network speed
title=Hard Disk Activity
[Containments][2][Applets][30][Configuration][SensorColors]
network/all/download=61,174,233
network/all/upload=233,120,61
disk/all/read=233,120,61
disk/all/write=61,174,233
[Containments][2][Applets][30][Configuration][Sensors]
highPrioritySensorIds=["network/all/download","network/all/upload"]
highPrioritySensorIds=["disk/all/write","disk/all/read"]
[Containments][2][Applets][31][Configuration]
PreloadWeight=26
[Containments][2][Applets][36]
[Containments][2][Applets][31]
immutability=1
plugin=org.kde.plasma.eventcalendar
plugin=org.kde.plasma.activitypager
[Containments][2][Applets][36][Configuration]
PreloadWeight=100
[Containments][2][Applets][36][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][2][Applets][36][Configuration][General]
v71Migration=true
v72Migration=true
[Containments][2][Applets][36][Configuration][Google Calendar]
calendarList=W10=
tasklistList=W10=
[Containments][2][Applets][36][Configuration][Weather]
openWeatherMapCityId=5149222
weatherUnits=imperial
[Containments][2][Applets][39]
[Containments][2][Applets][4]
immutability=1
plugin=org.kde.weatherWidget-2
plugin=org.kde.plasma.pager
[Containments][2][Applets][39][Configuration]
PreloadWeight=100
[Containments][2][Applets][39][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][2][Applets][39][Configuration][General]
firstRun=false
places=[{"providerId":"owm","placeIdentifier":"5149222","placeAlias":"Canton, OH","timezoneID":0}]
[Containments][2][Applets][39][Configuration][Units]
pressureType=inHg
temperatureType=fahrenheit
windSpeedType=mph
[Containments][2][Applets][4][Configuration]
PreloadWeight=42
[Containments][2][Applets][4][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][2][Applets][5]
immutability=1
plugin=org.kde.plasma.icontasks
[Containments][2][Applets][5][Configuration]
PreloadWeight=42
[Containments][2][Applets][5][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][2][Applets][5][Configuration][General]
launchers=preferred://filemanager
sortingStrategy=4
launchers=preferred://filemanager,preferred://browser
[Containments][2][Applets][6]
immutability=1
plugin=org.kde.plasma.marginsseparator
[Containments][2][Applets][6][Configuration]
PreloadWeight=42
[Containments][2][Applets][61]
immutability=1
plugin=org.kde.plasma.digitalclock
[Containments][2][Applets][61][Configuration]
PreloadWeight=100
popupHeight=500
popupWidth=900
[Containments][2][Applets][61][Configuration][Appearance]
selectedTimeZones=America/Los_Angeles,Local,UTC+00:00,Europe/Paris,Europe/Madrid,Europe/Athens
showDate=false
showWeekNumbers=true
[Containments][2][Applets][61][Configuration][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][2][Applets][7]
immutability=1
plugin=org.kde.plasma.systemtray
[Containments][2][Applets][7][Configuration]
PreloadWeight=92
PreloadWeight=100
SystrayContainmentId=8
[Containments][2][ConfigDialog]
DialogHeight=91
DialogHeight=84
DialogWidth=1920
[Containments][2][Configuration]
PreloadWeight=42
[Containments][2][General]
AppletOrder=3;29;28;27;30;5;25;61;6;7;21
AppletOrder=3;28;27;26;30;29;4;5;31;6;7;20;21
[Containments][22][Configuration]
PreloadWeight=42
[Containments][27][Configuration]
PreloadWeight=42
[Containments][28][Configuration]
PreloadWeight=42
[Containments][29][Configuration]
PreloadWeight=42
[Containments][30][Configuration]
PreloadWeight=42
[Containments][32][Configuration]
PreloadWeight=34
[Containments][33][Configuration]
PreloadWeight=34
[Containments][34][Configuration]
PreloadWeight=42
[Containments][35][Configuration]
PreloadWeight=42
[Containments][36][Configuration]
PreloadWeight=42
[Containments][37][Configuration]
PreloadWeight=42
[Containments][38][Configuration]
PreloadWeight=42
[Containments][39][Configuration]
PreloadWeight=42
[Containments][40][Configuration]
PreloadWeight=42
[Containments][42][Configuration]
PreloadWeight=42
[Containments][71]
ItemGeometries-3840x2160=
[Containments][32]
ItemGeometries-0x0=
ItemGeometries-1920x1200=
ItemGeometries-2560x1440=
ItemGeometriesHorizontal=
activityId=335a53bf-d117-46d8-a166-621281cf7411
activityId=eb5f0056-fe90-4fd7-8893-37376d03ff4e
formfactor=0
immutability=1
lastScreen=0
@@ -326,8 +201,36 @@ location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][72]
activityId=335a53bf-d117-46d8-a166-621281cf7411
[Containments][32][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][32][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][33]
ItemGeometries-0x0=
ItemGeometries-1920x1200=
ItemGeometriesHorizontal=
activityId=409821e5-6710-413d-9be0-f233960e4426
formfactor=0
immutability=1
lastScreen=0
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][33][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][33][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][34]
activityId=95158010-62dc-40b2-b3c1-55cd03985ba0
formfactor=0
immutability=1
lastScreen=1
@@ -335,6 +238,117 @@ location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][34][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][34][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][35]
activityId=95158010-62dc-40b2-b3c1-55cd03985ba0
formfactor=0
immutability=1
lastScreen=2
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][35][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][35][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][36]
activityId=95158010-62dc-40b2-b3c1-55cd03985ba0
formfactor=0
immutability=1
lastScreen=3
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][37]
activityId=eb5f0056-fe90-4fd7-8893-37376d03ff4e
formfactor=0
immutability=1
lastScreen=2
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][37][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][37][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][38]
activityId=eb5f0056-fe90-4fd7-8893-37376d03ff4e
formfactor=0
immutability=1
lastScreen=1
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][38][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][38][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][39]
activityId=409821e5-6710-413d-9be0-f233960e4426
formfactor=0
immutability=1
lastScreen=2
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][39][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][39][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][40]
activityId=409821e5-6710-413d-9be0-f233960e4426
formfactor=0
immutability=1
lastScreen=1
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][40][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][40][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/Cone_Nebula.jpg
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
[Containments][42]
activityId=eb5f0056-fe90-4fd7-8893-37376d03ff4e
formfactor=0
immutability=1
lastScreen=3
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image
[Containments][8]
activityId=
formfactor=2
@@ -342,145 +356,110 @@ immutability=1
lastScreen=0
location=4
plugin=org.kde.plasma.private.systemtray
popupHeight=480
popupWidth=480
popupHeight=432
popupWidth=432
wallpaperplugin=org.kde.image
[Containments][8][Applets][10]
immutability=1
plugin=org.kde.kdeconnect
[Containments][8][Applets][10][Configuration]
PreloadWeight=42
[Containments][8][Applets][11]
immutability=1
plugin=org.kde.plasma.clipboard
[Containments][8][Applets][11][Configuration]
PreloadWeight=92
[Containments][8][Applets][12]
immutability=1
plugin=org.kde.plasma.volume
[Containments][8][Applets][12][Configuration]
PreloadWeight=42
[Containments][8][Applets][11][Configuration]
PreloadWeight=85
[Containments][8][Applets][12][Configuration][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][8][Applets][12][Configuration][General]
[Containments][8][Applets][11][Configuration][General]
currentTab=streams
migrated=true
[Containments][8][Applets][12]
immutability=1
plugin=org.kde.plasma.clipboard
[Containments][8][Applets][12][Configuration]
PreloadWeight=100
[Containments][8][Applets][13]
immutability=1
plugin=org.kde.plasma.keyboardindicator
[Containments][8][Applets][13][Configuration]
PreloadWeight=42
[Containments][8][Applets][14]
immutability=1
plugin=org.kde.plasma.devicenotifier
[Containments][8][Applets][14][Configuration]
PreloadWeight=42
[Containments][8][Applets][15]
immutability=1
plugin=org.kde.plasma.nightcolorcontrol
[Containments][8][Applets][15][Configuration]
PreloadWeight=87
[Containments][8][Applets][16]
immutability=1
plugin=org.kde.plasma.manage-inputmethod
[Containments][8][Applets][16][Configuration]
PreloadWeight=42
[Containments][8][Applets][17]
immutability=1
plugin=org.kde.plasma.vault
[Containments][8][Applets][17][Configuration]
PreloadWeight=42
[Containments][8][Applets][18]
immutability=1
plugin=org.kde.plasma.keyboardlayout
[Containments][8][Applets][18][Configuration]
PreloadWeight=52
[Containments][8][Applets][19]
[Containments][8][Applets][14]
immutability=1
plugin=org.kde.plasma.printmanager
[Containments][8][Applets][19][Configuration]
PreloadWeight=92
[Containments][8][Applets][22]
immutability=1
plugin=org.kde.plasma.battery
[Containments][8][Applets][22][Configuration]
PreloadWeight=42
[Containments][8][Applets][22][Shortcuts]
global=
[Containments][8][Applets][23]
immutability=1
plugin=org.kde.plasma.networkmanagement
[Containments][8][Applets][23][Configuration]
PreloadWeight=47
[Containments][8][Applets][24]
immutability=1
plugin=org.kde.plasma.bluetooth
[Containments][8][Applets][24][Configuration]
PreloadWeight=18
[Containments][8][Applets][25][Configuration]
PreloadWeight=54
[Containments][8][Applets][35]
immutability=1
plugin=org.kde.plasma.mediacontroller
[Containments][8][Applets][35][Configuration]
PreloadWeight=0
[Containments][8][Applets][65]
immutability=1
plugin=org.kde.kscreen
[Containments][8][Applets][9]
[Containments][8][Applets][15]
immutability=1
plugin=org.kde.plasma.notifications
[Containments][8][Applets][9][Configuration]
PreloadWeight=42
[Containments][8][Applets][15][Configuration]
PreloadWeight=100
[Containments][8][Applets][16]
immutability=1
plugin=org.kde.plasma.vault
[Containments][8][Applets][17]
immutability=1
plugin=org.kde.kscreen
[Containments][8][Applets][18]
immutability=1
plugin=org.kde.plasma.manage-inputmethod
[Containments][8][Applets][19]
immutability=1
plugin=org.kde.plasma.devicenotifier
[Containments][8][Applets][19][Configuration]
PreloadWeight=95
[Containments][8][Applets][22]
immutability=1
plugin=org.kde.plasma.nightcolorcontrol
[Containments][8][Applets][23]
immutability=1
plugin=org.kde.plasma.battery
[Containments][8][Applets][23][Configuration]
PreloadWeight=60
[Containments][8][Applets][24]
immutability=1
plugin=org.kde.plasma.networkmanagement
[Containments][8][Applets][24][Configuration]
PreloadWeight=57
[Containments][8][Applets][25]
immutability=1
plugin=org.kde.plasma.bluetooth
[Containments][8][Applets][25][Configuration]
PreloadWeight=52
[Containments][8][Applets][41]
immutability=1
plugin=org.kde.plasma.mediacontroller
[Containments][8][Applets][41][Configuration]
PreloadWeight=0
[Containments][8][Applets][9]
immutability=1
plugin=org.kde.plasma.keyboardindicator
[Containments][8][ConfigDialog]
DialogHeight=600
DialogWidth=800
[Containments][8][Configuration]
PreloadWeight=42
DialogHeight=540
DialogWidth=720
[Containments][8][General]
extraItems=org.kde.plasma.battery,org.kde.plasma.notifications,org.kde.plasma.clipboard,org.kde.plasma.mediacontroller,org.kde.kupapplet,org.kde.plasma.volume,org.kde.plasma.keyboardindicator,org.kde.plasma.devicenotifier,org.kde.plasma.bluetooth,org.kde.plasma.networkmanagement,org.kde.plasma.nightcolorcontrol,org.kde.plasma.manage-inputmethod,org.kde.plasma.vault,org.kde.plasma.keyboardlayout,org.kde.plasma.printmanager,org.kde.kscreen,org.kde.kdeconnect
knownItems=org.kde.plasma.battery,org.kde.plasma.notifications,org.kde.plasma.clipboard,org.kde.plasma.mediacontroller,org.kde.kupapplet,org.kde.plasma.volume,org.kde.plasma.keyboardindicator,org.kde.plasma.devicenotifier,org.kde.plasma.bluetooth,org.kde.plasma.networkmanagement,org.kde.plasma.nightcolorcontrol,org.kde.plasma.manage-inputmethod,org.kde.plasma.vault,org.kde.plasma.keyboardlayout,org.kde.plasma.printmanager,org.kde.kscreen,org.kde.kdeconnect
shownItems=org.kde.plasma.battery
extraItems=org.kde.plasma.mediacontroller,org.kde.plasma.keyboardindicator,org.kde.kupapplet,org.kde.kdeconnect,org.kde.plasma.volume,org.kde.plasma.clipboard,org.kde.plasma.keyboardlayout,org.kde.plasma.printmanager,org.kde.plasma.battery,org.kde.plasma.notifications,org.kde.plasma.bluetooth,org.kde.plasma.vault,org.kde.kscreen,org.kde.plasma.nightcolorcontrol,org.kde.plasma.manage-inputmethod,org.kde.plasma.networkmanagement,org.kde.plasma.devicenotifier
knownItems=org.kde.plasma.mediacontroller,org.kde.plasma.keyboardindicator,org.kde.kupapplet,org.kde.kdeconnect,org.kde.plasma.volume,org.kde.plasma.clipboard,org.kde.plasma.keyboardlayout,org.kde.plasma.printmanager,org.kde.plasma.battery,org.kde.plasma.notifications,org.kde.plasma.bluetooth,org.kde.plasma.vault,org.kde.kscreen,org.kde.plasma.nightcolorcontrol,org.kde.plasma.manage-inputmethod,org.kde.plasma.networkmanagement,org.kde.plasma.devicenotifier
[ScreenMapping]
itemsOnDisabledScreens=
screenMapping=desktop:/goals.md,0,335a53bf-d117-46d8-a166-621281cf7411,desktop:/kilroy.md,0,335a53bf-d117-46d8-a166-621281cf7411
screenMapping=

View File

@@ -1,54 +0,0 @@
[Global Shortcuts]
toggle-window-state=Meta+`
[Shortcuts]
close-active-terminal=Ctrl+Shift+R
close-session=none
decrease-window-height=Alt+Shift+Up
decrease-window-width=Alt+Shift+Left
edit-profile=none
file_quit=Ctrl+Shift+Q
grow-terminal-bottom=Ctrl+Alt+Down
grow-terminal-left=Ctrl+Alt+Left
grow-terminal-right=Ctrl+Alt+Right
grow-terminal-top=Ctrl+Alt+Up
help_about_app=none
help_about_kde=none
help_report_bug=none
help_whats_this=Shift+F1
increase-window-height=Alt+Shift+Down
increase-window-width=Alt+Shift+Right
keep-open=none
manage-profiles=none
move-session-left=Ctrl+Shift+Left
move-session-right=Ctrl+Shift+Right
new-session=Ctrl+Shift+T
new-session-quad=none
new-session-two-horizontal=none
new-session-two-vertical=none
next-session=Shift+Right
next-terminal=Ctrl+Tab; Shift+Tab
options_configure=Ctrl+Shift+,
options_configure_keybinding=none
options_configure_notifications=none
previous-session=Shift+Left
previous-terminal=Ctrl+Shift+Tab
rename-session=none
split-left-right=Ctrl+(
split-top-bottom=Ctrl+)
switch-to-session-1=none
switch-to-session-12=none
switch-to-session-2=none
switch-to-session-3=none
switch-to-session-4=none
switch-to-session-5=none
switch-to-session-6=none
switch-to-session-7=none
switch-to-session-8=none
switch-to-session-9=none
toggle-session-keyboard-input=none
toggle-session-monitor-activity=Ctrl+Shift+A
toggle-session-monitor-silence=Ctrl+Shift+I
toggle-session-prevent-closing=none
toggle-window-state=none
view-full-screen=Ctrl+Shift+F11

View File

@@ -1,52 +0,0 @@
[Animation]
AutoOpen=false
Frames=17
PollInterval=500
UseVMAssist=true
[Appearance]
BackgroundColor=#000000
BackgroundColorOpacity=0.4
Blur=false
KeyboardInputBlockIndicatorColor=#FF0000
KeyboardInputBlockIndicatorDuration=250
Skin=default
SkinInstallWithKns=false
TerminalHighlightDuration=250
Translucency=false
[Behavior]
FocusFollowMouse=false
OpenAfterStart=false
RememberFullscreen=false
[Desktop Entry]
DefaultProfile=
[Dialogs]
ConfirmQuit=true
FirstRun=false
[Favorite Profiles]
Favorites=
[KFileDialog Settings]
detailViewIconSize=0
[PrintOptions]
PrinterFriendly=true
ScaleOutput=true
[Window]
DynamicTabTitles=false
Height=60
KeepAbove=true
KeepOpen=true
KeepOpenAfterLastSessionCloses=false
Position=50
Screen=0
ShowOnAllDesktops=true
ShowSystrayIcon=true
ShowTabBar=true
ShowTitleBar=true
ToggleToFocus=false

2
.gitignore vendored
View File

@@ -1,5 +1,4 @@
.bash_secrets
.vim/.netrwhist
.idea/
.config/Code/Backups/*
.config/Code/*Cache*/*
@@ -13,7 +12,6 @@
.config/Code/rapid_render.json
.config/Code/Network*
**/.config/.brightness
.local/share/fonts/.uuid
# Byte-compiled / optimized / DLL files
*__pycache__/

View File

@@ -1,2 +0,0 @@
"\e[A": history-search-backward
"\e[B": history-search-forward

View File

@@ -1,7 +1,10 @@
.git
.gitmodules
.gitignore
README.md
setup.sh
Dockerfile
VimScreenshot.png
\.gitignore
\.gitmodules
init\.sh
.*\.png
\.git
README.*
\.gitmux\.conf\.docker
\.stow-local-ignore

1
.stowrc Normal file
View File

@@ -0,0 +1 @@
--target=~

View File

@@ -1,26 +1,44 @@
###############################################################################
## Author: Shaun Reed | Contact: shaunrd0@gmail.com | URL: www.shaunreed.com ##
## ##
## A custom tmux multiplexer config / layout created for KDE ##
## A custom tmux multiplexer config / layout created for Manjaro i3 ##
##+ Inspired by vim-powerline: https://github.com/Lokaltog/powerline ##
## ##
## This config was tested with SauceCodePro Nerd Font Mono, Regular ##
## See: dot/.local/share/fonts/ ##
## https://github.com/ryanoasis/nerd-fonts ##
## This config created and tested with Powerline Consolas ##
##+ https://github.com/Lokaltog/powerline-fonts ##
##+ Some symbols may require Font Awesome 5 Free Solid ##
## ##
###############################################################################
# .tmux.conf
#
# If symbols or powerline layout fail to appear...
# + Check your terminal emulator font settings include these fonts
# + Check that required fonts are installed
#+ Check your terminal emulator font settings include these fonts
#+ Check that required fonts are installed
#
# Note: The use of 256colours in this file allows for portable color definitions between platforms and applications
# + Changing to a different color interpretation may result in some apps displaying colors differently than others
# + Vim plugin 'Colorizer' does not reflect the actual 256colour values
# + See https://jonasjacek.github.io/colors/ for a full list of 256colours
#+ Changing to a different color interpretation may result in some apps displaying colors differently than others
#+ Vim plugin 'Colorizer' does not reflect the actual 256colour values
#+ See https://jonasjacek.github.io/colors/ for a full list of 256colours
# Settings for terminal text selection / copy options
# + Source: https://www.seanh.cc/2020/12/27/copy-and-paste-in-tmux/
# + Depends: https://github.com/tmux-plugins/tmux-yank#linux
set -g mouse on
# These bindings are for X Windows only. If you're using a different
# window system you have to replace the `xsel` commands with something
# else. See https://github.com/tmux/tmux/wiki/Clipboard#available-tools
bind -T copy-mode DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
bind -T copy-mode-vi DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
bind -n DoubleClick1Pane select-pane \; copy-mode -M \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
bind -T copy-mode TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
bind -T copy-mode-vi TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
bind -n TripleClick1Pane select-pane \; copy-mode -M \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
bind -n MouseDown2Pane run "tmux set-buffer -b primary_selection \"$(xsel -o)\"; tmux paste-buffer -b primary_selection; tmux delete-buffer -b primary_selection"
#set -g @plugin 'tmux-plugins/tpm'
#set -g @plugin 'tmux-plugins/tmux-yank'
#set -g @yank_action 'copy-pipe-no-clear'
#bind -T copy-mode C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
#bind -T copy-mode-vi C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
set-option -s set-clipboard external
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection clipboard -i"
@@ -54,10 +72,10 @@ set -g status-style fg=colour240,bg=colour233
set -g status-left-style bg=colour233,fg=colour243
set -g status-left-length 40
# Note: SauceCodePro font requires alternate of bold on right side
# Note: Powerline font requires alternate of bold on right side
# + Corrects gap on right of character that reveals BG color
# Note: No bold required, no BG reveal produced by symbol gaps on left side
# + Font: SauceCodePro (NERD patch, Regular)
# + Font: Sauce Code Pro (NERD patch)
# Right side of status bar
set -g status-right-style bg=colour233,fg=colour243
@@ -70,6 +88,11 @@ set -g window-status-current-format "#($HOME/go/bin/gitmux -cfg $HOME/.gitmux.co
#set -g window-status-current-format "#[fg=colour255,bg=colour233]#[fg=colour100,nobold] #(whoami)@#H #[fg=colour255,bg=colour233,nobold]"
run-shell "bash ~/.tmux/tmux-conf.sh"
# Check if we are running xorg
#set -g status-left "#[fg=colour233,bg=colour100,bold] #S #[fg=colour100,bg=colour240,nobold]#[fg=colour233,bg=colour240] #(whoami) #[fg=colour240,bg=colour235]#[fg=colour240,bg=colour235] #(hostname) #[fg=colour235,bg=colour233]#[fg=colour240,bg=colour233]"
#set -g status-right "#[fg=colour235,bg=colour233,bold]#[fg=colour240,bg=colour235,nobold] %H:%M:%S #[fg=colour240,bg=colour235,bold]#[fg=colour233,bg=colour240,nobold] %d-%b-%y #[fg=colour100,bg=colour240,bold]#[fg=colour233,bg=colour100,bold] #(cd #{pane_current_path}; basename `git rev-parse --show-toplevel`) "
# Current window status
set -g window-status-current-style bg=colour233,fg=colour100
# Window with activity status

View File

@@ -8,9 +8,16 @@ set -g mouse on
# These bindings are for X Windows only. If you're using a different
# window system you have to replace the `xsel` commands with something
# else. See https://github.com/tmux/tmux/wiki/Clipboard#available-tools
bind -T copy-mode DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
bind -T copy-mode-vi DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
bind -n DoubleClick1Pane select-pane \; copy-mode -M \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
bind -T copy-mode TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
bind -T copy-mode-vi TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
bind -n TripleClick1Pane select-pane \; copy-mode -M \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
bind -n MouseDown2Pane run "tmux set-buffer -b primary_selection \"$(xsel -o)\"; tmux paste-buffer -b primary_selection; tmux delete-buffer -b primary_selection"
# List of plugins and their settings
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'nhdaly/tmux-better-mouse-mode'
set -g @scroll-speed-num-lines-per-scroll 2
set -g @plugin 'tmux-plugins/tpm'

5
.vim/.netrwhist Normal file
View File

@@ -0,0 +1,5 @@
let g:netrw_dirhistmax =10
let g:netrw_dirhistcnt =3
let g:netrw_dirhist_3='/home/kapper/.ssh'
let g:netrw_dirhist_2='/home/kapper'
let g:netrw_dirhist_1='/home/kapper/dot/vim/.vim/bundle/vim-airline-themes'

View File

@@ -1,4 +0,0 @@
# Ignore everything in this directory
*
# Don't ignore this file
!.gitignore

View File

@@ -1,4 +0,0 @@
# Ignore everything in this directory
*
# Don't ignore this file
!.gitignore

79
.vimrc
View File

@@ -1,12 +1,7 @@
" Single-quote is a comment written to be read
" Double-quotes are commented out code and can be removed or added
"
" General Vim Settings
" Fix plugin compatibility issues
set nocp
let is_docker = filereadable(expand('/.dockerenv'))
let has_sauce = filereadable(expand('~/.local/share/fonts/sauce-code-pro.otf'))
let is_xorg = exists("$DISPLAY")
@@ -18,14 +13,9 @@ let is_xorg = exists("$DISPLAY")
" Keep the bottom / top of the page n lines from the cursor
set scrolloff=5
" set paths for swap, backup, and undo files
" :help directory
set directory=~/.vim/swap//,~/tmp/,/var/tmp/,/tmp/,.
" :help backupdir
set backupdir=~/.vim/backup//,~/tmp/,/var/tmp/,/tmp/,.
" Persistant undo
" :help undo-persistence
set undodir=~/.vim/undodir//,~/tmp/,/var/tmp/,/tmp/,.
set undodir=~/.vim/undodir
set undofile
" Combine vim clipboard with global clipboard buffer
@@ -36,7 +26,29 @@ set clipboard+=unnamedplus
" Allows true colors in vim (> 8 bit colors)
" :help termguicolors
""set termguicolors
"set termguicolors
" Custom formatting based on filetype
" :help autocmd
"" autocmd FileType yaml set tabstop=2 shiftwidth=2
" Highlight characters past column N in source files based on file type
autocmd FileType cpp,c match ErrorMsg '\%>80v.\+'
autocmd FileType cs match ErrorMsg '\%>120v.\+'
" Define function in vim to remove whitespace
fun! TrimWhitespace()
let l:save = winsaveview()
keeppatterns %s/\s\+$//e
call winrestview(l:save)
endfun
"Call this on every attempt to save a file of types defined below..
autocmd BufWritePre *.cpp,*.h,*.c,*.php,*.cs,*.yml,*.txt,*.md :call TrimWhitespace()
""autocmd BufWritePre *.cpp,*.h,*.c,*.php :%s/\s\+$//ge
" Set terminal title when opening file
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
"" set title
" Set tabwidth=2, adjust Vim shiftwidth to the same
set tabstop=2 shiftwidth=2
@@ -52,15 +64,23 @@ set mouse=a
set number
" Use Powerline symbols
""let g:airline_powerline_fonts = 1
" Enable Syntax Highlighting in Vim
syntax on
" Use Sourcerer color scheme by Xero
colorscheme sourcerer
" Fix plugin compatibility issues
set nocp
" Allow backspace to remove all types of characters
set backspace=indent,eol,start
"
" Set terminal title when opening file
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
"" set title
" Custom Vim Keybindings
" nnoremap <C-e> <C-w> " Modify and remove leading quotation
@@ -75,34 +95,6 @@ nnoremap <C-e> <C-w>
"nnoremap <C-b> :!cmake -S . -B ./build/ && cmake --build ./build
"nnoremap <C-d> :!./build/scrap
" Define function in vim to remove whitespace
fun! TrimWhitespace()
let l:save = winsaveview()
keeppatterns %s/\s\+$//e
" Restore window view to retain cursor position
call winrestview(l:save)
endfun
" :help autocmd
augroup DotAutoCmd
autocmd!
" Set custom options based on filetype
autocmd FileType yaml set tabstop=2 shiftwidth=2
" Highlight characters past column N in source files based on file type
autocmd FileType cpp,c,cc,rust match ErrorMsg '\%>80v.\+'
autocmd FileType cs match ErrorMsg '\%>120v.\+'
"Call this on every attempt to save a file of types defined below..
autocmd BufWritePre * call TrimWhitespace()
" Set terminal title when opening file
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
"" set title
augroup END
"
" Vim Plugin Settings
" set rtp+=/path/to/rtp/that/included/pathogen/vim " if needed
@@ -141,7 +133,7 @@ nmap <silent> <C-j> <Plug>(ale_next_wrap)
"let g:colorizer_colornames = 0 " Don't color literal names, like red, green, etc
let g:colorizer_auto_color = 0
""let g:colorizer_skip_comments = 1
let g:colorizer_auto_filetype ='css,html,qml'
""let g:colorizer_auto_filetype ='css,html,vim'
nnoremap <C-c> :ColorToggle<CR>
" Symbols important to vim / terminal layouts
@@ -186,7 +178,7 @@ elseif is_xorg
let g:airline_symbols.notexists = 'Ɇ'
let g:airline_symbols.whitespace = 'Ξ'
else
" no symbols
" unicode symbols
let g:airline_left_sep = ''
let g:airline_left_sep = ''
let g:airline_right_sep = ''
@@ -209,7 +201,6 @@ else
let g:airline_symbols.whitespace = ''
endif
"
" Clang completeion settings
" If this is set, clang_complete will not be loaded at all

View File

@@ -3,8 +3,8 @@ FROM ubuntu:latest
COPY . /dot
ENV TERM=xterm-256color
# Install additional packages we need
RUN bash -c '. /dot/.bash_aliases && apt update -y && apt install -y $DOT_PACKAGES fontconfig'
RUN apt upgrade -y
RUN apt update -y && apt upgrade -y
RUN apt install -y git stow vim tmux ranger clang wget curl golang-go
RUN go install github.com/arl/gitmux@latest
# Update submodules for plugins
RUN cd /dot && git submodule update --init && cp .gitmux.conf.docker .gitmux.conf

View File

@@ -1,23 +1,39 @@
## Dotfiles
Dotfiles configurations for headless Kubuntu linux environments. Be sure to clone recursively if you want to grab updated plugins / submodules included. For example, using Pathogen with Vim to manage plugins requires that the plugin to be installed are cloned to the `~/.vim/bundle/` directory. Cloning recursively allows git to clone these same nested repositories/submodules within this directory so Pathogen can handle running the Vim plugins.
Dotfiles configurations for headless Ubuntu 22.04 linux environments. Be sure to clone recursively if you want to grab updated plugins / submodules included. For example, using Pathogen with Vim to manage plugins requires that the plugin to be installed are cloned to the `~/.vim/bundle/` directory. Cloning recursively allows git to clone these same nested repositories/submodules within this directory so Pathogen can handle running the Vim plugins.
Once installed, editing source code in vim supports features displayed in the screenshot below
![Vim screenshot](VimScreenshot.png)
### Install
### Install Dotfiles
If you don't install `vim-gtk3`, vim will not have access to your system clipboard, and your copy and paste buffers will not stay in sync.
Installation instructions -
Easiest installation is to clone repository into home directory -
```bash
git clone --recursive https://github.com/shaunrd0/dot
cd dot/
./setup.sh
mv ~/.bashrc ~/.bashrc.backup
stow . -t ~
sudo apt install git stow vim xsel xclip tmux ranger clang yakuake wget curl
git clone --recursive https://github.com/shaunrd0/dot ~/dot
cd ~/dot/
stow --adopt .
```
If you'd rather clone elsewhere -
```bash
git clone --recursive https://github.com/shaunrd0/dot /path/to/dot
cd /path/to/dot/
stow --adopt -t ~ .
```
**Warning:** `--adopt` is used to link conflicting files, but doing so could result in the loss of some configs within your local copy of the repository and on your local system.
After running `stow --adopt .`, be sure to check `git status` is clean.
If a file has been modified, discard the local changes to be up-to-date with `origin/master` and it will be restored on your system as well, since the files are now linked. **Your conflicting local system configurations will be lost** unless you back them up manually.
We could run the following commands to restore changed files
```bash
git checkout -- .vimrc
# Or, to step through each change interactively using git..
git checkout -p
# Or restore the current directory
git restore .
```
If you forget to clone recursively

7
init.sh Normal file
View File

@@ -0,0 +1,7 @@
#!/usr/bin/env bash
git submodule update --recursive --init
sudo apt install git stow vim xsel xclip tmux ranger clang yakuake wget curl golang-go
go install github.com/arl/gitmux@latest
source ~/.bashrc
stow . -t ~

View File

@@ -1,33 +0,0 @@
#!/usr/bin/env bash
set -Eeuo pipefail
# $1: Error message
# $2: Error code
function fatal() {
local msg=${1:-"Unspecified error"}
echo "[Error:$LINENO] Could not install dotfiles: $msg"
exit ${2:-1}
}
trap 'fatal "Trapped an unknown error" $?' ERR
if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
fatal "Run setup.sh from the root directory of the dotfiles repository." 2
fi
git submodule update --init --recursive
# Use alias for installing packages so we don't maintain several dependency lists.
if ! [[ -f .bash_aliases ]]; then
fatal "Failed to locate .bash_aliases in path: $(pwd)" 3
fi
. .bash_aliases
if [[ -z ${DOT_PACKAGES:-} ]]; then
fatal "DOT_PACKAGES variable not found after sourcing $(pwd)/.bash_aliases" 4
fi
sudo apt update -y && sudo apt install -y $DOT_PACKAGES
go install github.com/arl/gitmux@latest
# Install bash line editor for auto completion.
git clone --recursive --depth 1 --shallow-submodules https://github.com/akinomyoga/ble.sh.git
make -C ble.sh install PREFIX=$(pwd)/.local
rm -rf ble.sh