Compare commits
56 Commits
654a6f70a8
...
master
Author | SHA1 | Date | |
---|---|---|---|
569921c80e | |||
d83c845b85 | |||
889f06070a | |||
b1b399fe30 | |||
7f1d9640b6 | |||
8d2f51b64a | |||
617ba5815d | |||
0494a6fe60 | |||
323698cd12 | |||
1511a5c1a5 | |||
5aac22cb6d | |||
08585df3ac | |||
a715528931 | |||
ec10ac7281 | |||
1da8b7946f | |||
dd5f32a6eb | |||
0a67016b07 | |||
c584e93215 | |||
d765b9f902 | |||
39a0a5ea72 | |||
4308782feb | |||
f84faba675 | |||
2bca0d2231 | |||
69be245213 | |||
55f777e6bc | |||
f6ce763e40 | |||
2abe975470 | |||
6f35662f0c | |||
c2ae3d5fa0 | |||
20cc3d92d1 | |||
55fb2af9ba | |||
8cc0c54799 | |||
7dd46f40f8 | |||
c12253370e | |||
af573cf273 | |||
e6e9958ef4 | |||
101b00c4fd | |||
8b033f7fc1 | |||
d2dd51c6a2 | |||
f122ba659d | |||
232e877fd4 | |||
78f7d05ddf | |||
528675c5e3 | |||
732529102f | |||
43134e0546 | |||
ea15b7dc15 | |||
ab3820fe8c | |||
a1f57b67b8 | |||
414bb14b1b | |||
d28b21dcdf | |||
c0588adc42 | |||
5d634bf601 | |||
e4b7f912ef | |||
f47078a66a | |||
38f71bd854 | |||
7a1b90c470 |
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
config/.npmrc
|
41
.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
"cSpell.words": [
|
||||||
|
"autohint",
|
||||||
|
"autorandr",
|
||||||
|
"dunst",
|
||||||
|
"dunstrc",
|
||||||
|
"greenclip",
|
||||||
|
"gtkrc",
|
||||||
|
"hintstyle",
|
||||||
|
"inotify",
|
||||||
|
"keygen",
|
||||||
|
"makepkg",
|
||||||
|
"mimeapps",
|
||||||
|
"nanorc",
|
||||||
|
"networkmanager",
|
||||||
|
"noconfirm",
|
||||||
|
"pacman",
|
||||||
|
"picom",
|
||||||
|
"polkit",
|
||||||
|
"polybar",
|
||||||
|
"poshthemes",
|
||||||
|
"powerline",
|
||||||
|
"pyenv",
|
||||||
|
"rgba",
|
||||||
|
"rofi",
|
||||||
|
"seafile",
|
||||||
|
"terminalrc",
|
||||||
|
"thefuck",
|
||||||
|
"timedatectl",
|
||||||
|
"trizen",
|
||||||
|
"usermod",
|
||||||
|
"xbacklight",
|
||||||
|
"xfconf",
|
||||||
|
"Xresources",
|
||||||
|
"zokugun"
|
||||||
|
],
|
||||||
|
"sonarlint.connectedMode.project": {
|
||||||
|
"connectionId": "public-sonarcloud",
|
||||||
|
"projectKey": "Mastermindzh_dotfiles"
|
||||||
|
}
|
||||||
|
}
|
26
CHANGELOG.md
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
# Changelog
|
||||||
|
|
||||||
|
All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
|
and this project adheres to date versioning.
|
||||||
|
|
||||||
|
## [2024-12-12]
|
||||||
|
|
||||||
|
- Switched `notify-osd` for `dunst`
|
||||||
|
- Switched `pulseaudio` for `pipewire`
|
||||||
|
- **note** had to turn master volume on with `alsamixer` and use `sudo alsactl store` to keep the changes
|
||||||
|
- Included default Xresources file
|
||||||
|
- updated list with several new packages and removed some old ones
|
||||||
|
|
||||||
|
## [2022-08-03]
|
||||||
|
|
||||||
|
- Fixed i3lock re-using the last image
|
||||||
|
- Set up /etc/environment sharing
|
||||||
|
- Added in greenclip again
|
||||||
|
- added after install and syncLocalSettings.json
|
||||||
|
|
||||||
|
## [2022-07-26]
|
||||||
|
|
||||||
|
- Added `vers=2.1` to `mount.cifs` command in [mounts.sh](./bash/mounts.sh) to fix an [upstream bug](https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.18.y&id=ca83f50b43a099345e61950f74c4d9eb81c765fe)
|
||||||
|
- Added a `clean-all` command to clean trash of my hard drives
|
42
README.md
@@ -4,36 +4,43 @@ This repository holds my Linux config files.
|
|||||||
|
|
||||||
## Mandatory unixporn screenshots
|
## Mandatory unixporn screenshots
|
||||||
|
|
||||||
New version as of dec 2021:
|
New version as of January 2023:
|
||||||
|
|
||||||
[](https://raw.githubusercontent.com/Mastermindzh/dotfiles/master/media/dotfiles4.jpg)
|
[](media/2024-dracula.png)
|
||||||
|
|
||||||
|
[](media/2024-dracula-2.png)
|
||||||
|
|
||||||
Older versions:
|
Older versions:
|
||||||
|
|
||||||
- [dotfiles](media/dotfiles3.png)
|
- [dotfiles6](media/dotfiles6.png)
|
||||||
- [dotfiles](media/dotfiles.png)
|
- [dotfiles5-small](media/dotfiles-small-5.png)
|
||||||
|
- [dotfiles5](media/dotfiles5.png)
|
||||||
|
- [dotfiles4](https://raw.githubusercontent.com/Mastermindzh/dotfiles/master/media/dotfiles4.jpg)
|
||||||
|
- [dotfiles3](media/dotfiles3.png)
|
||||||
- [dotfiles2](media/dotfiles2.png)
|
- [dotfiles2](media/dotfiles2.png)
|
||||||
|
- [dotfiles](media/dotfiles.png)
|
||||||
|
|
||||||
## Tools
|
## Tools
|
||||||
|
|
||||||
| Purpose | Tool |
|
| Purpose | Tool |
|
||||||
| ---------------- | ---------------------------------------------------------------------- |
|
| ---------------- | ---------------------------------------------------------------------- |
|
||||||
| WM | i3 (i3-gaps) |
|
| WM | i3 (i3-gaps) |
|
||||||
|
| bar | polybar |
|
||||||
| App launcher | rofi |
|
| App launcher | rofi |
|
||||||
| Shell | Bash |
|
| Shell | Bash |
|
||||||
|
| Notifications | Dunst |
|
||||||
| Package managers | Pacman & Trizen |
|
| Package managers | Pacman & Trizen |
|
||||||
| OS | Arch Linux |
|
| OS | Arch Linux |
|
||||||
| Terminal | xfce4-terminal |
|
| Terminal | xfce4-terminal |
|
||||||
| Editor | nano |
|
| Editor | nano & mousepad |
|
||||||
| Code editor | vscode / jetbrains stuff |
|
| Code editor | vscode |
|
||||||
| Browser | Firefox |
|
| Browser | Firefox |
|
||||||
| File manager | If I have to use one ... Nautilus |
|
| File manager | Thunar |
|
||||||
| Music | Tidal through [Tidal-hifi](https://github.com/Mastermindzh/tidal-hifi) |
|
| Music | Tidal through [Tidal-hifi](https://github.com/Mastermindzh/tidal-hifi) |
|
||||||
| | |
|
|
||||||
|
|
||||||
## computer specifc setup
|
## computer specific setup
|
||||||
|
|
||||||
Nowadays I use a few different computers and I'd used to apply the base config and configure each pc on its own.
|
Nowadays I use a few different computers and I used to apply the base config and configure each pc on its own.
|
||||||
I've grown tired of this approach however so I added a "pc specific" setup in the installer.
|
I've grown tired of this approach however so I added a "pc specific" setup in the installer.
|
||||||
|
|
||||||
The pc specific setup bit will read the folder names in computers, offer you a choice, and execute the install.sh inside that folder.
|
The pc specific setup bit will read the folder names in computers, offer you a choice, and execute the install.sh inside that folder.
|
||||||
@@ -41,11 +48,18 @@ This allows me to get pc specific settings synced with git and applied easily.
|
|||||||
|
|
||||||
## Getting x info to use in i3
|
## Getting x info to use in i3
|
||||||
|
|
||||||
Some things are handled by window class/title or have custom resolutions set, the tools below help obtaining the info required:
|
Some things are handled by window class/title or have custom resolutions set, the tools below help obtain the info required:
|
||||||
|
|
||||||
- xprop -> displays static xwindow info including Window class
|
- `xprop` -> displays static `xwindow` info including Window class
|
||||||
- xwininfo -> displays xwindow info including current size/position
|
- `xwininfo` -> displays `xwindow` info including current size/position
|
||||||
|
|
||||||
## getting icons
|
## getting icons
|
||||||
|
|
||||||
Copy/paste icons from this url: [https://fontawesome.com/v5/cheatsheet](https://fontawesome.com/v5/cheatsheet)
|
Copy/paste icons from these URLs:
|
||||||
|
|
||||||
|
- [https://fontawesome.com/v5/cheatsheet](https://fontawesome.com/v5/cheatsheet)
|
||||||
|
- [https://fonts.google.com/noto/specimen/Noto+Color+Emoji/glyphs?noto.query=noto+color+emoji](https://fonts.google.com/noto/specimen/Noto+Color+Emoji/glyphs?noto.query=noto+color+emoji)
|
||||||
|
|
||||||
|
## after-install
|
||||||
|
|
||||||
|
After install read [./docs/afterinstall.md](./docs/afterinstall.md)
|
||||||
|
129
bash/.alias.sh
@@ -1,23 +1,6 @@
|
|||||||
# useful dockers
|
#!/bin/bash
|
||||||
alias phpserver='docker run --rm -p 2000:80 -v "$PWD":/var/www/html mastermindzh/php-xdebug'
|
# source program-specific aliases:
|
||||||
alias nodeserver='docker run --rm -p 3000:3000 -v "$PWD":/app mastermindzh/generic_node'
|
for f in ~/.aliases/*; do source "$f"; done
|
||||||
alias reactserver='docker run --rm -p 8080:8080 -v "$PWD":/app mastermindzh/generic_node'
|
|
||||||
alias mongoserver='docker run -d --rm -p 27017:27017 --name mongo-server -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=123 -v ~/.db/mongo:/data/db mongo'
|
|
||||||
alias sqlserver='docker run -d --rm --name sql-server -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Your_Password123" -p 1433:1433 -v ~/.db/mssql:/var/opt/mssql microsoft/mssql-server-linux'
|
|
||||||
|
|
||||||
# useful docker commands
|
|
||||||
alias stop-dockers='docker stop $(docker ps -aq)'
|
|
||||||
alias docker-clean-containers='docker container prune -f --filter "until=48h"'
|
|
||||||
alias docker-clean-images='docker image prune -a -f --filter "until=48h"'
|
|
||||||
alias docker-clean-volumes='docker volume prune -f --filter "label!=keep"'
|
|
||||||
alias docker-clean-networks='docker network prune -f --filter "until=24h"'
|
|
||||||
alias docker-clean-all='stop-dockers && docker-clean-containers && docker-clean-images && docker-clean-volumes && docker-clean-networks'
|
|
||||||
|
|
||||||
# Kubernetes commands
|
|
||||||
alias mkubectl='microk8s.kubectl'
|
|
||||||
alias kubestart='microk8s.start'
|
|
||||||
alias kubestop='microk8s.stop'
|
|
||||||
alias kubecontexts='kubectl config get-contexts'
|
|
||||||
|
|
||||||
#dotnet core
|
#dotnet core
|
||||||
alias efupdate="dotnet ef database update"
|
alias efupdate="dotnet ef database update"
|
||||||
@@ -33,10 +16,18 @@ alias undo-commit='git reset --soft HEAD^'
|
|||||||
|
|
||||||
## pacman and trizen
|
## pacman and trizen
|
||||||
alias aur='trizen --noconfirm'
|
alias aur='trizen --noconfirm'
|
||||||
alias update='trizen -Syu --noconfirm'
|
alias update='trizen --sudo_remove_timestamp=0 --sudo_autorepeat=1 --sudo_autorepeat_at_runtime=1 -Syu --noconfirm && update-av'
|
||||||
|
alias update-av='sudo freshclam || exit 0'
|
||||||
alias remove-orphans='sudo pacman -Rns $(pacman -Qtdq)'
|
alias remove-orphans='sudo pacman -Rns $(pacman -Qtdq)'
|
||||||
alias updatekeys='sudo pacman-key --refresh-key'
|
alias updatekeys='sudo pacman-key --refresh-key'
|
||||||
|
alias updatemirrors='sudo reflector --latest 20 --protocol http,https --sort rate --save /etc/pacman.d/mirrorlist'
|
||||||
alias clean-pacmancache='sudo paccache -rk 1 && sudo paccache -ruk0'
|
alias clean-pacmancache='sudo paccache -rk 1 && sudo paccache -ruk0'
|
||||||
|
alias clean-trizen-cache='sudo trizen -Scc'
|
||||||
|
alias clean-trash='sudo rm -rf ~/.local/share/Trash/*'
|
||||||
|
alias clean-journal='sudo journalctl --vacuum-time=2d'
|
||||||
|
alias clean-pacman-unused='sudo pacman -R $(pacman -Qtdq)'
|
||||||
|
|
||||||
|
alias clean-all='clean-pacman-unused && clean-pacmancache && clean-trizen-cache && docker-clean-all && clean-node_modules && clean-journal && clean-trash'
|
||||||
|
|
||||||
## systeminfo
|
## systeminfo
|
||||||
alias meminfo='free -mth'
|
alias meminfo='free -mth'
|
||||||
@@ -49,9 +40,8 @@ alias preferredapps='exo-preferred-applications'
|
|||||||
#show 5 most memory consuming apps
|
#show 5 most memory consuming apps
|
||||||
alias psmem='ps auxf | sort -nr -k 5 | head -n 5'
|
alias psmem='ps auxf | sort -nr -k 5 | head -n 5'
|
||||||
|
|
||||||
##utility
|
# utility
|
||||||
alias nmapscan='nmap -n -sP'
|
alias nmapscan='nmap -n -sP'
|
||||||
alias pia='nohup sh /opt/pia/run.sh &>/dev/null & disown'
|
|
||||||
alias wifimenu='nm-connection-editor'
|
alias wifimenu='nm-connection-editor'
|
||||||
alias findcrlf='find . -path node_modules -prune -o -not -type d -exec file "{}" ";" | grep -E "BOM|CRLF"'
|
alias findcrlf='find . -path node_modules -prune -o -not -type d -exec file "{}" ";" | grep -E "BOM|CRLF"'
|
||||||
alias fixcrlf='findcrlf > /tmp/crlftolf && cat /tmp/crlftolf | while read line; do CUTLINE=$(echo $line | cut -f1 -d":") && dos2unix $CUTLINE; done'
|
alias fixcrlf='findcrlf > /tmp/crlftolf && cat /tmp/crlftolf | while read line; do CUTLINE=$(echo $line | cut -f1 -d":") && dos2unix $CUTLINE; done'
|
||||||
@@ -59,18 +49,22 @@ alias enable-wifi='sudo ip link set wlp2s0 up'
|
|||||||
alias scan-wifi='sudo iw dev wlp2s0 scan'
|
alias scan-wifi='sudo iw dev wlp2s0 scan'
|
||||||
alias pretty-json='python -m json.tool'
|
alias pretty-json='python -m json.tool'
|
||||||
alias addpgpkey='gpg --recv-keys'
|
alias addpgpkey='gpg --recv-keys'
|
||||||
alias clean-trash='sudo rm -rf ~/.local/share/Trash/*'
|
|
||||||
alias clean-journal='sudo journalctl --vacuum-time=2d'
|
|
||||||
alias clean-all='clean-trash && clean-journal && clean-pacmancache && docker-clean-all && clean-node-modules'
|
|
||||||
alias dotnet-install='~/.dotnet-install.sh --install-dir /usr/share/dotnet/ -channel Current -version '
|
alias dotnet-install='~/.dotnet-install.sh --install-dir /usr/share/dotnet/ -channel Current -version '
|
||||||
alias mountshares='sudo bash ~/dotfiles/bash/mounts.sh'
|
alias mountshares='sudo bash ~/dotfiles/bash/mounts.sh'
|
||||||
alias echo-server='npx http-echo-server'
|
alias echo-server='npx http-echo-server'
|
||||||
alias mountcalibre='sudo mount.cifs //10.10.1.11/books /mnt/calibre -o nobrl,user=mastermindzh,noperm,rw'
|
alias mountcalibre='sudo mount.cifs //10.10.1.11/books /mnt/calibre -o nobrl,user=mastermindzh,noperm,rw'
|
||||||
alias xpid="xprop _NET_WM_PID | cut -d' ' -f3"
|
alias xpid="xprop _NET_WM_PID | cut -d' ' -f3"
|
||||||
alias clean-node-modules='find . -name "node_modules" -type d -print0 |xargs -0 rm -r --'
|
alias clean-obj-bin='sudo find . -name "bin" -o -name "obj" -exec rm -rf {} \;'
|
||||||
alias nomachine='/usr/NX/bin/nxplayer'
|
alias nomachine='/usr/NX/bin/nxplayer'
|
||||||
alias unlockuser='faillock --reset --user'
|
alias unlockuser='faillock --reset --user'
|
||||||
alias npm-list-links='npm ls -g --depth=0 --link=true'
|
alias npm-list-links='npm ls -g --depth=0 --link=true'
|
||||||
|
alias suspend='sudo bash ~/.config/i3/scripts/suspend.sh'
|
||||||
|
alias clean-all='sudo pacman -R $(pacman -Qtdq) && sudo paccache -rk 1 && sudo paccache -ruk0 && sudo journalctl --vacuum-time=2d && docker-clean-all && rm -rf ~/.local/share/Trash/'
|
||||||
|
alias delete-empty='find . -type d -empty -delete'
|
||||||
|
alias addwireguard='sudo nmcli connection import type wireguard file '
|
||||||
|
alias defaultfonts='for family in serif sans-serif monospace Arial Helvetica Verdana "Times New Roman" "Courier New"; do echo -e "\033[1m$family: \033[0m" && fc-match "$family" && echo ""; done'
|
||||||
|
alias syncthinggui="xdg-open http://localhost:8384/"
|
||||||
|
alias disableHistory="set +o history"
|
||||||
|
|
||||||
# might be useful in demos...
|
# might be useful in demos...
|
||||||
alias oopsie='fuck'
|
alias oopsie='fuck'
|
||||||
@@ -96,6 +90,10 @@ alias la='ls -al'
|
|||||||
# show external ip
|
# show external ip
|
||||||
alias cmyip='curl -s http://ipecho.net/plain; echo'
|
alias cmyip='curl -s http://ipecho.net/plain; echo'
|
||||||
|
|
||||||
|
# File merging
|
||||||
|
alias pngtopdf="convert *.png"
|
||||||
|
alias jpgtopdf="convert *.jpg"
|
||||||
|
|
||||||
## default command fixes :P
|
## default command fixes :P
|
||||||
alias mkdir='mkdir -p'
|
alias mkdir='mkdir -p'
|
||||||
alias wget='wget -c'
|
alias wget='wget -c'
|
||||||
@@ -109,6 +107,14 @@ alias handbrake='ghb'
|
|||||||
alias cal='cal -mw --color'
|
alias cal='cal -mw --color'
|
||||||
alias chrome='google-chrome-stable'
|
alias chrome='google-chrome-stable'
|
||||||
alias teams='teams-insiders --disable-seccomp-filter-sandbox'
|
alias teams='teams-insiders --disable-seccomp-filter-sandbox'
|
||||||
|
alias cat='bat'
|
||||||
|
alias grep='grep -i'
|
||||||
|
alias cura='cura -platformtheme gtk3'
|
||||||
|
|
||||||
|
## command overrides
|
||||||
|
df() {
|
||||||
|
duf
|
||||||
|
}
|
||||||
|
|
||||||
# grub
|
# grub
|
||||||
alias update-grub='grub-mkconfig -o /boot/grub/grub.cfg'
|
alias update-grub='grub-mkconfig -o /boot/grub/grub.cfg'
|
||||||
@@ -118,27 +124,27 @@ alias update-grub='grub-mkconfig -o /boot/grub/grub.cfg'
|
|||||||
# function to cd up a couple of times
|
# function to cd up a couple of times
|
||||||
# USAGE: up 3 (goes up 3 directories)
|
# USAGE: up 3 (goes up 3 directories)
|
||||||
up() {
|
up() {
|
||||||
DEEP=$1;
|
DEEP=$1
|
||||||
[ -z "${DEEP}" ] && { DEEP=1; };
|
[ -z "${DEEP}" ] && { DEEP=1; }
|
||||||
for i in $(seq 1 ${DEEP}); do
|
for i in $(seq 1 ${DEEP}); do
|
||||||
cd ../;
|
cd ../
|
||||||
done;
|
done
|
||||||
}
|
}
|
||||||
# function to extract ... well anything really
|
# function to extract ... well anything really
|
||||||
extract() {
|
extract() {
|
||||||
if [ -f $1 ] ; then
|
if [ -f "$1" ]; then
|
||||||
case $1 in
|
case "$1" in
|
||||||
*.tar.bz2) tar xvjf $1 ;;
|
*.tar.bz2) tar xvjf "$1" ;;
|
||||||
*.tar.gz) tar xvzf $1 ;;
|
*.tar.gz) tar xvzf "$1" ;;
|
||||||
*.bz2) bunzip2 $1 ;;
|
*.bz2) bunzip2 "$1" ;;
|
||||||
*.rar) unrar x $1 ;;
|
*.rar) unrar x "$1" ;;
|
||||||
*.gz) gunzip $1 ;;
|
*.gz) gunzip "$1" ;;
|
||||||
*.tar) tar xvf $1 ;;
|
*.tar) tar xvf "$1" ;;
|
||||||
*.tbz2) tar xvjf $1 ;;
|
*.tbz2) tar xvjf "$1" ;;
|
||||||
*.tgz) tar xvzf $1 ;;
|
*.tgz) tar xvzf "$1" ;;
|
||||||
*.zip) unzip $1 ;;
|
*.zip) unzip "$1" ;;
|
||||||
*.Z) uncompress $1 ;;
|
*.Z) uncompress "$1" ;;
|
||||||
*.7z) 7z x $1 ;;
|
*.7z) 7z x "$1" ;;
|
||||||
*) echo "don't know how to extract '$1'..." ;;
|
*) echo "don't know how to extract '$1'..." ;;
|
||||||
esac
|
esac
|
||||||
else
|
else
|
||||||
@@ -149,7 +155,7 @@ extract () {
|
|||||||
# function to return uptime in a human readable format
|
# function to return uptime in a human readable format
|
||||||
myuptime() {
|
myuptime() {
|
||||||
uptime | awk '{ print "Uptime:", $3, $4, $5 }' | sed 's/,//g'
|
uptime | awk '{ print "Uptime:", $3, $4, $5 }' | sed 's/,//g'
|
||||||
return;
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
# function to check whether a specific host is up
|
# function to check whether a specific host is up
|
||||||
@@ -157,9 +163,9 @@ isup(){
|
|||||||
if ! [ -z "$1" ]; then
|
if ! [ -z "$1" ]; then
|
||||||
ping -c 3 $1 >/dev/null 2>&1
|
ping -c 3 $1 >/dev/null 2>&1
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo "$1 seems to be offline";
|
echo "$1 seems to be offline"
|
||||||
else
|
else
|
||||||
echo "$1 seems to be online";
|
echo "$1 seems to be online"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -174,34 +180,27 @@ killport () {
|
|||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
echo "please specify a port to kill"
|
echo "please specify a port to kill"
|
||||||
else
|
else
|
||||||
fuser -k $1/tcp
|
fuser -k "$1/tcp"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# function to switch kubernetes namespace
|
# merges all pdfs in current directory into a new pdf
|
||||||
kubenamespaceswitch () {
|
mergepdf() {
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
echo "please specify a namespace to switch to"
|
echo "please provide an output name for your pdf file: mergepdf out.pdf"
|
||||||
else
|
else
|
||||||
kubectl config set-context --current --namespace=$1
|
pdfunite ./*.pdf "$1"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# function to switch kubernetes context
|
# sign a file using the signing key
|
||||||
kubecontextswitch () {
|
signfile() {
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
echo "please specify a context to switch to, the following contexts are available:"
|
echo "please provide a file to sign: signfile file-to-sign.pdf"
|
||||||
kubectl config get-contexts
|
|
||||||
else
|
else
|
||||||
kubectl config use-context "$1"
|
ssh-keygen -Y sign -f ~/.ssh/signing-key.pub -n file "$1"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# function to switch to a different azure kubernetes cluster
|
alias "set-timezone-romania"='timedatectl set-timezone Europe/Bucharest'
|
||||||
azkubeswitch () {
|
alias "set-timezone-netherlands"=' timedatectl set-timezone Europe/Amsterdam'
|
||||||
if [ -z "$2" ] ; then
|
|
||||||
echo "please execute with the following params: azkubeswitch {resourcegroupname} {clustername}"
|
|
||||||
else
|
|
||||||
az aks get-credentials --resource-group $1 --name $2
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
18
bash/.aliases/docker.sh
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# useful docker commands
|
||||||
|
alias stop-dockers='if [ $(docker ps -aq | wc -l) != 0 ]; then docker stop $(docker ps -aq); fi'
|
||||||
|
alias docker-clean-containers='docker container prune -f --filter "until=48h"'
|
||||||
|
alias docker-clean-images='docker image prune -a -f --filter "until=48h"'
|
||||||
|
alias docker-clean-volumes='docker volume prune -f --filter "label!=keep"'
|
||||||
|
alias docker-clean-networks='docker network prune -f --filter "until=24h"'
|
||||||
|
alias docker-clean-all='stop-dockers && docker-clean-containers && docker-clean-images && docker-clean-volumes && docker-clean-networks'
|
||||||
|
|
||||||
|
# useful dockers
|
||||||
|
alias phpserver='docker run --rm -p 2000:80 -v "$PWD":/var/www/html mastermindzh/php-xdebug'
|
||||||
|
alias nodeserver='docker run --rm -p 3000:3000 -v "$PWD":/app mastermindzh/generic_node'
|
||||||
|
alias reactserver='docker run --rm -p 8080:8080 -v "$PWD":/app mastermindzh/generic_node'
|
||||||
|
alias mongoserver='docker run -d --rm -p 27017:27017 --name mongo-server -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=123 -v ~/.db/mongo:/data/db mongo'
|
||||||
|
alias sqlserver='docker run --rm --name sql-server -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Your_Password123" -p 1433:1433 -v ~/.db/mssql:/var/opt/mssql mcr.microsoft.com/mssql/server'
|
||||||
|
alias mailcatcher='docker run -d -p 1080:1080 -p 1025:1025 --name mailcatcher schickling/mailcatcher'
|
||||||
|
alias openwebui='docker run --rm -d -p 3004:8080 -v ~/.ollama:/root/.ollama -v ~/.open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:ollama'
|
||||||
|
alias postgresdb='docker run --rm -d -v ~/.db/postgres:/var/lib/postgresql/data -e POSTGRES_PASSWORD=admin -e POSTGRES_USER=admin -e POSTGRES_DB=postgres --name="postgres" -p 5432:5432 postgres'
|
50
bash/.aliases/kubernetes.sh
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Kubernetes commands
|
||||||
|
alias mkubectl='microk8s.kubectl'
|
||||||
|
alias kubestart='microk8s.start'
|
||||||
|
alias kubestop='microk8s.stop'
|
||||||
|
alias kubecontexts='kubectl config get-contexts'
|
||||||
|
|
||||||
|
# function to switch kubernetes namespace
|
||||||
|
kubenamespaceswitch() {
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
echo "please specify a namespace to switch to"
|
||||||
|
else
|
||||||
|
kubectl config set-context --current --namespace="$1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# function to switch kubernetes context
|
||||||
|
kubecontextswitch() {
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
echo "please specify a context to switch to, the following contexts are available:"
|
||||||
|
kubectl config get-contexts
|
||||||
|
else
|
||||||
|
kubectl config use-context "$1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# function to switch to a different azure kubernetes cluster
|
||||||
|
azkubeswitch() {
|
||||||
|
if [ -z "$2" ]; then
|
||||||
|
echo "please execute with the following params: azkubeswitch {resourcegroupname} {clustername}"
|
||||||
|
else
|
||||||
|
az aks get-credentials --resource-group "$1" --name "$2"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# get old resources from kubernetes
|
||||||
|
kube-get-old() {
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
echo "please provide a resource type, examples:"
|
||||||
|
echo " kube-get-old pods"
|
||||||
|
echo " kube-get-old namespaces"
|
||||||
|
echo ""
|
||||||
|
echo "you can pass extra arguments as the second param, examples:"
|
||||||
|
echo " kube-get-old pods --all-namespaces"
|
||||||
|
echo ' kube-get-old namespaces "--all-namespaces --second"'
|
||||||
|
else
|
||||||
|
|
||||||
|
kubectl get "$1" ${2:+"$2"} -o go-template --template '{{range .items}}{{.metadata.name}} {{.metadata.creationTimestamp}}{{"\n"}}{{end}}' | awk -v twoWeeksAgo="date -d '-14 days'" -F':' '$2<twoWeeksAgo' | awk '{print $1}'
|
||||||
|
fi
|
||||||
|
}
|
4
bash/.aliases/node.sh
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
alias clean-node-modules='find . -not -path "*/.*" -name "node_modules" -type d -print0 | xargs -0 rm -rf'
|
||||||
|
alias organize-package-json='npx format-package -w && npx sort-package-json'
|
24
bash/.bashrc
@@ -1,10 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# if powerline-shell is available use it.
|
|
||||||
function _update_ps1() {
|
|
||||||
if hash powerline-rs 2>/dev/null; then
|
|
||||||
PS1="$(powerline-rs --shell bash $?)"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# sourceIfExists
|
# sourceIfExists
|
||||||
function sourceIfExists() {
|
function sourceIfExists() {
|
||||||
@@ -17,8 +11,12 @@ function sourceIfExists () {
|
|||||||
source ~/.alias
|
source ~/.alias
|
||||||
source ~/.custom
|
source ~/.custom
|
||||||
source ~/.variables
|
source ~/.variables
|
||||||
|
|
||||||
|
sourceIfExists ~/.env
|
||||||
|
sourceIfExists /usr/share/nvm/init-nvm.sh
|
||||||
sourceIfExists ~/lib/azure-cli/az.completion
|
sourceIfExists ~/lib/azure-cli/az.completion
|
||||||
eval "$(thefuck --alias)"
|
eval "$(thefuck --alias)"
|
||||||
|
eval "$(oh-my-posh init bash --config ~/.config/poshthemes/mastermindzh.yaml)"
|
||||||
|
|
||||||
# load keychain with private key
|
# load keychain with private key
|
||||||
if test -f "$HOME/.ssh/id_ed25519"; then
|
if test -f "$HOME/.ssh/id_ed25519"; then
|
||||||
@@ -30,20 +28,12 @@ fi
|
|||||||
|
|
||||||
eval "$(pyenv init -)"
|
eval "$(pyenv init -)"
|
||||||
|
|
||||||
export NVM_DIR="$HOME/.nvm"
|
|
||||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
|
||||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
|
||||||
|
|
||||||
if hash dotnet 2>/dev/null; then
|
if hash dotnet 2>/dev/null; then
|
||||||
export DOTNET_ROOT=/usr/share/dotnet
|
export DOTNET_ROOT=/usr/share/dotnet
|
||||||
export MSBuildSDKsPath=$DOTNET_ROOT/sdk/$(${DOTNET_ROOT}/dotnet --version)/Sdks
|
MSBuildSDKsPathVersion=$(${DOTNET_ROOT}/dotnet --version)
|
||||||
|
export MSBuildSDKsPath=$DOTNET_ROOT/sdk/$MSBuildSDKsPathVersion/Sdks
|
||||||
export PATH="${PATH}:${DOTNET_ROOT}:~/.dotnet/tools"
|
export PATH="${PATH}:${DOTNET_ROOT}:~/.dotnet/tools"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PS1='[\u@\h \W]\$ '
|
|
||||||
|
|
||||||
if [[ $TERM != linux && ! $PROMPT_COMMAND =~ _update_ps1 ]]; then
|
|
||||||
PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
|
|
||||||
fi
|
|
||||||
|
|
||||||
export PATH=$PATH:/home/mastermindzh/bin
|
export PATH=$PATH:/home/mastermindzh/bin
|
||||||
|
|
||||||
|
@@ -1,3 +1,16 @@
|
|||||||
{
|
{
|
||||||
"segments": ["virtual_env", "ssh", "cwd", "git", "hg", "jobs", "root"]
|
"segments": [
|
||||||
|
"virtual_env",
|
||||||
|
"ssh",
|
||||||
|
"cwd",
|
||||||
|
"git",
|
||||||
|
"jobs",
|
||||||
|
"root"
|
||||||
|
],
|
||||||
|
"cwd": {
|
||||||
|
"max_depth": 5
|
||||||
|
},
|
||||||
|
"vcs": {
|
||||||
|
"show_symbol": "true"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -9,7 +9,6 @@ fi
|
|||||||
# declare variables
|
# declare variables
|
||||||
MY_SERVER_LOCATION="//10.10.1.11"
|
MY_SERVER_LOCATION="//10.10.1.11"
|
||||||
MOUNT_PREFIX="/mnt"
|
MOUNT_PREFIX="/mnt"
|
||||||
USERNAME="mastermindzh"
|
|
||||||
|
|
||||||
# check whether array contains a key
|
# check whether array contains a key
|
||||||
containsElement() {
|
containsElement() {
|
||||||
@@ -71,6 +70,26 @@ declare -A MOUNTS9=(
|
|||||||
[share]="emulation"
|
[share]="emulation"
|
||||||
[mount]="emulation"
|
[mount]="emulation"
|
||||||
)
|
)
|
||||||
|
declare -A MOUNTS10=(
|
||||||
|
[server]="$MY_SERVER_LOCATION"
|
||||||
|
[share]="audiobooks"
|
||||||
|
[mount]="audiobooks"
|
||||||
|
)
|
||||||
|
declare -A MOUNTS11=(
|
||||||
|
[server]="$MY_SERVER_LOCATION"
|
||||||
|
[share]="games"
|
||||||
|
[mount]="games"
|
||||||
|
)
|
||||||
|
declare -A MOUNTS12=(
|
||||||
|
[server]="$MY_SERVER_LOCATION"
|
||||||
|
[share]="data"
|
||||||
|
[mount]="data"
|
||||||
|
)
|
||||||
|
declare -A MOUNTS13=(
|
||||||
|
[server]="$MY_SERVER_LOCATION"
|
||||||
|
[share]="vault"
|
||||||
|
[mount]="vault"
|
||||||
|
)
|
||||||
# declare array with "objects"
|
# declare array with "objects"
|
||||||
declare -n MOUNTS
|
declare -n MOUNTS
|
||||||
|
|
||||||
@@ -121,10 +140,10 @@ for MOUNTS in ${!MOUNTS@}; do
|
|||||||
SERVER_LOCATION="$MY_SERVER_LOCATION/${MOUNTS[share]}"
|
SERVER_LOCATION="$MY_SERVER_LOCATION/${MOUNTS[share]}"
|
||||||
MOUNT_LOCATION="$MOUNT_PREFIX/${MOUNTS[mount]}"
|
MOUNT_LOCATION="$MOUNT_PREFIX/${MOUNTS[mount]}"
|
||||||
|
|
||||||
mount.cifs "$SERVER_LOCATION" "$MOUNT_LOCATION" -o user=mastermindzh,noperm,rw
|
mount.cifs "$SERVER_LOCATION" "$MOUNT_LOCATION" -o user=mastermindzh,noperm,rw,vers=2.0
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
if [ $? -eq 0 ]; then
|
||||||
echo "Succesfully mounted $MOUNT_LOCATION"
|
echo "Successfully mounted $MOUNT_LOCATION"
|
||||||
else
|
else
|
||||||
echo "Failed mounting $SERVER_LOCATION on $MOUNT_LOCATION"
|
echo "Failed mounting $SERVER_LOCATION on $MOUNT_LOCATION"
|
||||||
fi
|
fi
|
||||||
|
51
bash/rofi/docker.sh
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
#!/usr/bin/bash
|
||||||
|
|
||||||
|
#Set default terminal emulator
|
||||||
|
TERMINAL_APP=xfce4-terminal
|
||||||
|
CUSTOM_SCRIPTS_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)/custom"
|
||||||
|
|
||||||
|
function execInTerminal {
|
||||||
|
$TERMINAL_APP -H -e "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
function getExtraActions {
|
||||||
|
local custom_scripts=""
|
||||||
|
if [ -d "$CUSTOM_SCRIPTS_DIR" ]; then
|
||||||
|
for file in "$CUSTOM_SCRIPTS_DIR"/*; do
|
||||||
|
custom_scripts="$custom_scripts\n$(basename "$file")"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
echo "$custom_scripts"
|
||||||
|
}
|
||||||
|
|
||||||
|
selected_container=$(docker ps --format "table {{.Names}}\t{{.Image}}\t{{.ID}}" | sed '1d' | rofi -p "🥡 Running containers " -dmenu)
|
||||||
|
container_options_attach="Attach"
|
||||||
|
container_options_stop="Stop"
|
||||||
|
container_options_logs="Logs"
|
||||||
|
container_options_restart="Restart"
|
||||||
|
|
||||||
|
if [[ ! -z $selected_container ]]; then
|
||||||
|
container_id=$(echo "$selected_container" | awk '{ print $3}')
|
||||||
|
container_name=$(echo "$selected_container" | awk '{ print $1}')
|
||||||
|
|
||||||
|
selected_action=$(echo -e "$container_options_attach\n$container_options_logs\n$container_options_restart\n$container_options_stop$(getExtraActions)" | rofi -dmenu -selected-row 0)
|
||||||
|
case $selected_action in
|
||||||
|
"$container_options_attach")
|
||||||
|
execInTerminal "docker exec -it ${container_id} /bin/sh"
|
||||||
|
;;
|
||||||
|
"$container_options_restart")
|
||||||
|
msg=$(docker restart "$container_id")
|
||||||
|
rofi -e "Message from the docker: $msg"
|
||||||
|
;;
|
||||||
|
"$container_options_logs")
|
||||||
|
execInTerminal "docker logs -f ${container_id}"
|
||||||
|
;;
|
||||||
|
"$container_options_stop")
|
||||||
|
msg=$(docker stop "$container_id")
|
||||||
|
rofi -e "Message from the docker: $msg"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
bash "$CUSTOM_SCRIPTS_DIR/$selected_action" "$container_name"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
8
computers/archfw/.Xresources
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
Xft.hinting: true
|
||||||
|
rofi.dpi: 160
|
||||||
|
dpi: 150
|
||||||
|
Xcursor.size: 50
|
||||||
|
Xft.hintstyle: hintslight
|
||||||
|
Xft.rgba: rgba
|
||||||
|
Xft.antialias: true
|
||||||
|
Xft.dpi: 160
|
5
computers/archfw/.bashrc
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
alias dock='bash ~/dotfiles/computers/archfw/displaySwitch.sh docked'
|
||||||
|
alias undock='bash ~/dotfiles/computers/archfw/displaySwitch.sh undocked'
|
||||||
|
alias displaySwitch='bash ~/dotfiles/computers/archfw/displaySwitch.sh'
|
||||||
|
alias deps='docker-compose -f /home/mastermindzh/code/tfx-workspace/docker-compose.yml up -d'
|
7
computers/archfw/.xsettingsd
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
Xft/Antialias 1
|
||||||
|
Xft/Hinting 1
|
||||||
|
Xft/HintStyle "hintfull"
|
||||||
|
Xft/lcdfilter "lcddefault"
|
||||||
|
Xft/RGBA "rgb"
|
||||||
|
|
||||||
|
Xft/DPI 110592
|
76
computers/archfw/displaySwitch.sh
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Define the layouts
|
||||||
|
layouts=("undocked" "docked")
|
||||||
|
|
||||||
|
# Define the settings for each layout
|
||||||
|
declare -A undocked_settings=(
|
||||||
|
["Xft.antialias"]="true"
|
||||||
|
["Xft.hinting"]="true"
|
||||||
|
["Xft.rgba"]="rgba"
|
||||||
|
["Xft.hintstyle"]="hintslight"
|
||||||
|
["Xcursor.size"]="50"
|
||||||
|
["Xft.dpi"]="160"
|
||||||
|
["rofi.dpi"]="160"
|
||||||
|
["dpi"]="150"
|
||||||
|
)
|
||||||
|
|
||||||
|
declare -A docked_settings=(
|
||||||
|
["Xft.antialias"]="true"
|
||||||
|
["Xft.hinting"]="true"
|
||||||
|
["Xft.rgba"]="rgba"
|
||||||
|
["Xft.hintstyle"]="hintslight"
|
||||||
|
["Xcursor.size"]="25"
|
||||||
|
["Xft.dpi"]="110"
|
||||||
|
["rofi.dpi"]="110"
|
||||||
|
["dpi"]="110"
|
||||||
|
)
|
||||||
|
|
||||||
|
function updateXSettings() {
|
||||||
|
local dpi=$1
|
||||||
|
local dpi_value=$((dpi * 1024))
|
||||||
|
sed -i -E "/Xft\/DPI/s/[0-9]+/$dpi_value/" ~/.xsettingsd
|
||||||
|
killall -HUP xsettingsd
|
||||||
|
}
|
||||||
|
|
||||||
|
function applyLayout() {
|
||||||
|
local layout=$1
|
||||||
|
case $layout in
|
||||||
|
"undocked")
|
||||||
|
xrandr --output eDP --primary --mode 2880x1920 --pos 0x0 --rotate normal --output DisplayPort-0 --off --output DisplayPort-1 --off --output DisplayPort-2 --off --output DisplayPort-3 --off --output DisplayPort-4 --off --output DisplayPort-5 --off --output DisplayPort-6 --off --output DisplayPort-7 --off
|
||||||
|
updateXResources undocked_settings
|
||||||
|
updateXSettings ${undocked_settings["dpi"]}
|
||||||
|
;;
|
||||||
|
"docked")
|
||||||
|
xrandr --output eDP --off --output DisplayPort-0 --off --output DisplayPort-1 --off --output DisplayPort-2 --off --output DisplayPort-3 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output DisplayPort-4 --off --output DisplayPort-5 --off --output DisplayPort-6 --off --output DisplayPort-7 --off
|
||||||
|
updateXResources docked_settings
|
||||||
|
updateXSettings ${docked_settings["dpi"]}
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Unknown layout: $layout"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateXResources() {
|
||||||
|
local -n settings=$1
|
||||||
|
true >~/.Xresources
|
||||||
|
for key in "${!settings[@]}"; do
|
||||||
|
echo "$key: ${settings[$key]}" >>~/.Xresources
|
||||||
|
done
|
||||||
|
xrdb -merge ~/.Xresources
|
||||||
|
}
|
||||||
|
|
||||||
|
layout=$1
|
||||||
|
if [ -z "$layout" ]; then
|
||||||
|
layout=$(zenity --list --title="Select Monitor Layout" --column="Layout" "${layouts[@]}")
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$layout" ]; then
|
||||||
|
applyLayout "$layout"
|
||||||
|
i3-msg restart
|
||||||
|
else
|
||||||
|
echo "No layout selected."
|
||||||
|
exit 1
|
||||||
|
fi
|
5
computers/archfw/install.sh
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
MY_PATH=$PWD/computers/archfw
|
||||||
|
|
||||||
|
# custom (laptop specific) bashrc thingies :)
|
||||||
|
ln -sf "$MY_PATH/.bashrc" ~/.custom
|
6
computers/dev-pc/.Xresources
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
Xft.dpi: 140
|
||||||
|
Xft.antialias: true
|
||||||
|
Xft.hinting: true
|
||||||
|
Xft.rgba: rgb
|
||||||
|
Xft.hintstyle: hintfull
|
||||||
|
Xft.autohint: 0
|
@@ -1,5 +1,6 @@
|
|||||||
#/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
MYPATH="$PWD/computers/dev-pc"
|
MYPATH="$PWD/computers/dev-pc"
|
||||||
|
|
||||||
ln -sf "$MYPATH/xprofile.sh" ~/.xprofile
|
ln -sf "$MYPATH/xprofile.sh" ~/.xprofile
|
||||||
|
ln -sf "$MYPATH/.Xresources" ~/.Xresources
|
||||||
|
@@ -1,2 +1,4 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
xrandr --output DVI-I-0 --off --output DVI-I-1 --off --output HDMI-0 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output DP-0 --off --output DP-1 --off --output DVI-D-0 --off
|
export GDK_DPI_SCALE=1
|
||||||
|
export ELM_SCALE=1
|
||||||
|
export QT_AUTO_SCREEN_SCALE_FACTOR=1
|
||||||
|
9
computers/hparch/.xprofile
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# startup stuffs
|
||||||
|
|
||||||
|
#/bin/bash
|
||||||
|
displays=($(xrandr | awk '/ connected /{print $1}'))
|
||||||
|
selected_display="${displays[0]}"
|
||||||
|
xrandr --output "$selected_display" --brightness 0.60
|
||||||
|
|
||||||
|
# power savings
|
3
computers/hparch/install.sh
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
MYPATH=$PWD/computers/hparch
|
||||||
|
ln -sf "$MYPATH/.xprofile" ~/.xprofile
|
@@ -1,4 +0,0 @@
|
|||||||
Xft.dpi: 108
|
|
||||||
Xft.antialias: 1
|
|
||||||
rofi.dpi: 150
|
|
||||||
Xcursor.size: 12
|
|
@@ -1,4 +0,0 @@
|
|||||||
Xft.dpi: 200
|
|
||||||
Xft.antialias: 1
|
|
||||||
rofi.dpi: 250
|
|
||||||
Xcursor.size: 18
|
|
@@ -1,10 +0,0 @@
|
|||||||
alias vm='su -c "export QT_AUTO_SCREEN_SCALE_FACTOR= QT_SCREEN_SCALE_FACTORS= QT_SCALE_FACTOR= QT_DEVICE_PIXEL_RATIO= && VBoxManage setextradata Windows10 GUI/HiDPI/UnscaledOutput 1 && sudo VBoxManage startvm Windows10" && exit'
|
|
||||||
alias dock='bash ~/.docked.sh && i3-msg restart'
|
|
||||||
alias undock='bash ~/.undocked.sh && i3-msg restart'
|
|
||||||
alias mountdata='sudo cryptsetup open --type luks /dev/nvme0n1p7 data && sudo mount -t ext4 /dev/mapper/data /home/mastermindzh/data'
|
|
||||||
alias unmountdata='sudo umount /home/mastermindzh/data && sudo cryptsetup close data && sudo sysctl --write vm.drop_caches=3'
|
|
||||||
|
|
||||||
# useful kubernetes (AZURE) commands
|
|
||||||
alias kubernetes-qa='azkubeswitch Inforit.Cloud InforitCluster'
|
|
||||||
alias kubernetes-prod='azkubeswitch Inforit.Cloud Production'
|
|
||||||
alias kubernetes-dev='azkubeswitch Inforit.Cloud Development'
|
|
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
xrandr --output eDP-1 --mode 2560x1440 --pos 0x0 --rotate normal --output DP-1-2 --off --output HDMI-2 --off --output HDMI-1 --off --output DP-1 --off --output DP-1-3 --off --output DP-2 --off --output DP-1-1 --primary --mode 2560x1440 --pos 2560x0 --rotate normal
|
|
||||||
xrdb -merge ~/.Xresources.docked
|
|
@@ -1 +0,0 @@
|
|||||||
QT_AUTO_SCREEN_SCALE_FACTOR=1
|
|
@@ -1,16 +0,0 @@
|
|||||||
#/bin/bash
|
|
||||||
|
|
||||||
MYPATH=$PWD/computers/work-xps
|
|
||||||
|
|
||||||
# set up hiDPI
|
|
||||||
sudo ln -sf "$MYPATH/environment" /etc/environment
|
|
||||||
|
|
||||||
# set up docking
|
|
||||||
ln -sf "$MYPATH/Xresources.docked" ~/.Xresources.docked
|
|
||||||
ln -sf "$MYPATH/Xresources.undocked" ~/.Xresources.undocked
|
|
||||||
ln -sf "$MYPATH/docked.sh" ~/.docked.sh
|
|
||||||
ln -sf "$MYPATH/undocked.sh" ~/.undocked.sh
|
|
||||||
ln -sf "$MYPATH/xprofile.sh" ~/.xprofile
|
|
||||||
|
|
||||||
# custom (laptop specific) bashrc thingies :)
|
|
||||||
ln -sf "$MYPATH/custom-bashrc.sh" ~/.custom
|
|
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
xrandr --output eDP-1 --primary --mode 3840x2160 --pos 0x0 --rotate normal --output DP-1-2 --off --output HDMI-2 --off --output HDMI-1 --off --output DP-1 --off --output DP-1-3 --off --output DP-2 --off --output DP-1-1 --off
|
|
||||||
xrdb -merge /home/mastermindzh/.Xresources.undocked
|
|
@@ -1,18 +0,0 @@
|
|||||||
if [ `xrandr | grep -c ' connected '` -eq 2 ]; then
|
|
||||||
source ~/.docked.sh
|
|
||||||
else
|
|
||||||
source ~/.undocked.sh
|
|
||||||
fi
|
|
||||||
|
|
||||||
# startup stuffs
|
|
||||||
displays=($(xrandr | awk '/ connected /{print $1}'))
|
|
||||||
selected_display="${displays[0]}"
|
|
||||||
|
|
||||||
xrandr --output "$selected_display" --brightness 0.75
|
|
||||||
|
|
||||||
# power savings
|
|
||||||
echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy';
|
|
||||||
echo 'min_power' > '/sys/class/scsi_host/host1/link_power_management_policy';
|
|
||||||
echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs';
|
|
||||||
echo 'auto' > '/sys/bus/usb/devices/1-9/power/control';
|
|
||||||
echo 'auto' > '/sys/bus/pci/devices/0000:01:00.0/power/control';
|
|
8
config/.Xresources
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
Xft.antialias: true
|
||||||
|
Xft.hinting: true
|
||||||
|
Xft.rgba: rgba
|
||||||
|
Xft.hintstyle: hintslight
|
||||||
|
Xcursor.size: 12
|
||||||
|
|
||||||
|
# hi-dpi
|
||||||
|
#Xft.dpi: 120
|
8
config/.bash_profile
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
#
|
||||||
|
# ~/.bash_profile
|
||||||
|
#
|
||||||
|
|
||||||
|
export GOBIN="/home/mastermindzh/.go"
|
||||||
|
export PATH="$PATH:$(go env GOBIN):$(go env GOPATH)/bin"
|
||||||
|
|
||||||
|
[[ -f ~/.bashrc ]] && . ~/.bashrc
|
@@ -1,6 +1,6 @@
|
|||||||
[user]
|
[user]
|
||||||
email = info@rickvanlieshout.com
|
email = info@rickvanlieshout.com
|
||||||
name = Mastermindzh
|
name = Rick van Lieshout
|
||||||
[alias]
|
[alias]
|
||||||
tree = log --graph --decorate --pretty=format:'%ar [%h] %an <%ae> - %s'
|
tree = log --graph --decorate --pretty=format:'%ar [%h] %an <%ae> - %s'
|
||||||
graph = log --graph --pretty=format:'%C(bold)%h%Creset%C(magenta)%d%Creset %s %C(yellow)<%an> %C(cyan)(%cr)%Creset' --abbrev-commit --date=relative
|
graph = log --graph --pretty=format:'%C(bold)%h%Creset%C(magenta)%d%Creset %s %C(yellow)<%an> %C(cyan)(%cr)%Creset' --abbrev-commit --date=relative
|
||||||
@@ -16,3 +16,8 @@
|
|||||||
rebase = false
|
rebase = false
|
||||||
[init]
|
[init]
|
||||||
defaultBranch = master
|
defaultBranch = master
|
||||||
|
[filter "lfs"]
|
||||||
|
required = true
|
||||||
|
clean = git-lfs clean -- %f
|
||||||
|
smudge = git-lfs smudge -- %f
|
||||||
|
process = git-lfs filter-process
|
||||||
|
@@ -1,3 +0,0 @@
|
|||||||
init.author.name=Rick van Lieshout
|
|
||||||
init.author.email=info@rickvanlieshout.com
|
|
||||||
init.author.url=http://rickvanlieshout.com
|
|
35
config/autorandr/postswitch
Executable file
@@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/bash -x
|
||||||
|
|
||||||
|
move_workspace() {
|
||||||
|
workspace="$1"
|
||||||
|
output="$2"
|
||||||
|
|
||||||
|
i3-msg "[workspace=\"$workspace\"]" move workspace to output "$output"
|
||||||
|
}
|
||||||
|
export -f move_workspace
|
||||||
|
|
||||||
|
# get primary
|
||||||
|
primary=$(xrandr | awk '/ primary / {print $1}')
|
||||||
|
|
||||||
|
declare -a movers=(
|
||||||
|
"1: "
|
||||||
|
"2: "
|
||||||
|
"3: "
|
||||||
|
"4: "
|
||||||
|
"5: "
|
||||||
|
"6: "
|
||||||
|
"7: "
|
||||||
|
"8: "
|
||||||
|
"9: "
|
||||||
|
"10: "
|
||||||
|
# "11: "
|
||||||
|
"12: "
|
||||||
|
"13: "
|
||||||
|
)
|
||||||
|
|
||||||
|
for workspace in "${movers[@]}"; do
|
||||||
|
move_workspace "$workspace" "$primary" &
|
||||||
|
done
|
||||||
|
|
||||||
|
# restart i3.
|
||||||
|
i3-msg restart
|
8
config/code/sync-settings.yml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# current machine's name, optional; it can be used to filter settings or in the commit message
|
||||||
|
hostname: ""
|
||||||
|
profile: main
|
||||||
|
# sync on remote git
|
||||||
|
repository:
|
||||||
|
type: git
|
||||||
|
url: git@github.com:Mastermindzh/code-settings.git
|
||||||
|
branch: master
|
35
config/code/syncLocalSettings.json
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"ignoreUploadFiles": [
|
||||||
|
"state.*",
|
||||||
|
"syncLocalSettings.json",
|
||||||
|
".DS_Store",
|
||||||
|
"sync.lock",
|
||||||
|
"projects.json",
|
||||||
|
"projects_cache_vscode.json",
|
||||||
|
"projects_cache_git.json",
|
||||||
|
"projects_cache_svn.json",
|
||||||
|
"gpm_projects.json",
|
||||||
|
"gpm-recentItems.json"
|
||||||
|
],
|
||||||
|
"ignoreUploadFolders": [
|
||||||
|
"workspaceStorage",
|
||||||
|
"History",
|
||||||
|
"globalStorage",
|
||||||
|
"GlobalStorage"
|
||||||
|
],
|
||||||
|
"ignoreExtensions": [],
|
||||||
|
"gistDescription": "Visual Studio Code Settings Sync Gist",
|
||||||
|
"downloadPublicGist": false,
|
||||||
|
"supportedFileExtensions": [
|
||||||
|
"json",
|
||||||
|
"code-snippets"
|
||||||
|
],
|
||||||
|
"openTokenLink": true,
|
||||||
|
"disableUpdateMessage": false,
|
||||||
|
"githubEnterpriseUrl": null,
|
||||||
|
"askGistDescription": false,
|
||||||
|
"customFiles": {},
|
||||||
|
"hostName": null,
|
||||||
|
"universalKeybindings": false,
|
||||||
|
"autoUploadDelay": 20
|
||||||
|
}
|
379
config/dunstrc
Normal file
@@ -0,0 +1,379 @@
|
|||||||
|
# See dunst(5) for all configuration options
|
||||||
|
|
||||||
|
[global]
|
||||||
|
### Display ###
|
||||||
|
|
||||||
|
# Which monitor should the notifications be displayed on.
|
||||||
|
monitor = 0
|
||||||
|
|
||||||
|
# Display notification on focused monitor. Possible modes are:
|
||||||
|
# mouse: follow mouse pointer
|
||||||
|
# keyboard: follow window with keyboard focus
|
||||||
|
# none: don't follow anything
|
||||||
|
#
|
||||||
|
# "keyboard" needs a window manager that exports the
|
||||||
|
# _NET_ACTIVE_WINDOW property.
|
||||||
|
# This should be the case for almost all modern window managers.
|
||||||
|
#
|
||||||
|
# If this option is set to mouse or keyboard, the monitor option
|
||||||
|
# will be ignored.
|
||||||
|
follow = keyboard
|
||||||
|
history = ctrl+shift+n
|
||||||
|
|
||||||
|
### Geometry ###
|
||||||
|
|
||||||
|
# dynamic (0, 300) or fixed 300
|
||||||
|
width = (0, 400)
|
||||||
|
height = (0, 300)
|
||||||
|
origin = top-right
|
||||||
|
offset = 10x50
|
||||||
|
scale = 0
|
||||||
|
|
||||||
|
# Maximum number of notification (0 means no limit)
|
||||||
|
notification_limit = 0
|
||||||
|
|
||||||
|
### Progress bar ###
|
||||||
|
|
||||||
|
progress_bar = true
|
||||||
|
|
||||||
|
# Set the progress bar height. This includes the frame, so make sure
|
||||||
|
# it's at least twice as big as the frame width.
|
||||||
|
progress_bar_height = 10
|
||||||
|
|
||||||
|
# Set the frame width of the progress bar
|
||||||
|
progress_bar_frame_width = 1
|
||||||
|
|
||||||
|
# Set the minimum width for the progress bar
|
||||||
|
progress_bar_min_width = 0
|
||||||
|
|
||||||
|
# Set the maximum width for the progress bar
|
||||||
|
progress_bar_max_width = 300
|
||||||
|
|
||||||
|
highlight = "#FF79C6"
|
||||||
|
|
||||||
|
|
||||||
|
# Show how many messages are currently hidden (because of
|
||||||
|
# notification_limit).
|
||||||
|
indicate_hidden = no
|
||||||
|
|
||||||
|
# The transparency of the window. Range: [0; 100].
|
||||||
|
# This option will only work if a compositing window manager is
|
||||||
|
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
|
||||||
|
transparency = 0
|
||||||
|
|
||||||
|
# Draw a line of "separator_height" pixel height between two
|
||||||
|
# notifications.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
separator_height = 1
|
||||||
|
|
||||||
|
# Padding between text and separator.
|
||||||
|
padding = 8
|
||||||
|
|
||||||
|
# Horizontal padding.
|
||||||
|
horizontal_padding = 10
|
||||||
|
|
||||||
|
# Padding between text and icon.
|
||||||
|
text_icon_padding = 0
|
||||||
|
|
||||||
|
# Defines width in pixels of frame around the notification window.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
frame_width = 1
|
||||||
|
|
||||||
|
# Defines color of the frame around the notification window.
|
||||||
|
frame_color = "#bd93f9"
|
||||||
|
|
||||||
|
# Define a color for the separator.
|
||||||
|
# possible values are:
|
||||||
|
# * auto: dunst tries to find a color fitting to the background;
|
||||||
|
# * foreground: use the same color as the foreground;
|
||||||
|
# * frame: use the same color as the frame;
|
||||||
|
# * anything else will be interpreted as a X color.
|
||||||
|
separator_color = frame
|
||||||
|
|
||||||
|
# Sort messages by urgency.
|
||||||
|
sort = yes
|
||||||
|
|
||||||
|
# Don't remove messages, if the user is idle (no mouse or keyboard input)
|
||||||
|
# for longer than idle_threshold seconds.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
# A client can set the 'transient' hint to bypass this. See the rules
|
||||||
|
# section for how to disable this if necessary
|
||||||
|
idle_threshold = 120
|
||||||
|
|
||||||
|
### Text ###
|
||||||
|
|
||||||
|
font = Ubuntu 11
|
||||||
|
|
||||||
|
# The spacing between lines. If the height is smaller than the
|
||||||
|
# font height, it will get raised to the font height.
|
||||||
|
line_height = 0
|
||||||
|
|
||||||
|
# Possible values are:
|
||||||
|
# full: Allow a small subset of html markup in notifications:
|
||||||
|
# <b>bold</b>
|
||||||
|
# <i>italic</i>
|
||||||
|
# <s>strikethrough</s>
|
||||||
|
# <u>underline</u>
|
||||||
|
#
|
||||||
|
# For a complete reference see
|
||||||
|
# <https://developer.gnome.org/pango/stable/pango-Markup.html>.
|
||||||
|
#
|
||||||
|
# strip: This setting is provided for compatibility with some broken
|
||||||
|
# clients that send markup even though it's not enabled on the
|
||||||
|
# server. Dunst will try to strip the markup but the parsing is
|
||||||
|
# simplistic so using this option outside of matching rules for
|
||||||
|
# specific applications *IS GREATLY DISCOURAGED*.
|
||||||
|
#
|
||||||
|
# no: Disable markup parsing, incoming notifications will be treated as
|
||||||
|
# plain text. Dunst will not advertise that it has the body-markup
|
||||||
|
# capability if this is set as a global setting.
|
||||||
|
#
|
||||||
|
# It's important to note that markup inside the format option will be parsed
|
||||||
|
# regardless of what this is set to.
|
||||||
|
markup = full
|
||||||
|
|
||||||
|
# The format of the message. Possible variables are:
|
||||||
|
# %a appname
|
||||||
|
# %s summary
|
||||||
|
# %b body
|
||||||
|
# %i iconname (including its path)
|
||||||
|
# %I iconname (without its path)
|
||||||
|
# %p progress value if set ([ 0%] to [100%]) or nothing
|
||||||
|
# %n progress value if set without any extra characters
|
||||||
|
# %% Literal %
|
||||||
|
# Markup is allowed
|
||||||
|
format = "%s %p\n%b"
|
||||||
|
|
||||||
|
# Alignment of message text.
|
||||||
|
# Possible values are "left", "center" and "right".
|
||||||
|
alignment = left
|
||||||
|
|
||||||
|
# Vertical alignment of message text and icon.
|
||||||
|
# Possible values are "top", "center" and "bottom".
|
||||||
|
vertical_alignment = center
|
||||||
|
|
||||||
|
# Show age of message if message is older than show_age_threshold
|
||||||
|
# seconds.
|
||||||
|
# Set to -1 to disable.
|
||||||
|
show_age_threshold = 60
|
||||||
|
|
||||||
|
# Specify where to make an ellipsis in long lines.
|
||||||
|
# Possible values are "start", "middle" and "end".
|
||||||
|
ellipsize = middle
|
||||||
|
|
||||||
|
# Ignore newlines '\n' in notifications.
|
||||||
|
ignore_newline = no
|
||||||
|
|
||||||
|
# Stack together notifications with the same content
|
||||||
|
stack_duplicates = no
|
||||||
|
|
||||||
|
# Hide the count of stacked notifications with the same content
|
||||||
|
hide_duplicate_count = false
|
||||||
|
|
||||||
|
# Display indicators for URLs (U) and actions (A).
|
||||||
|
show_indicators = no
|
||||||
|
|
||||||
|
### Icons ###
|
||||||
|
|
||||||
|
# Align icons left/right/off
|
||||||
|
icon_position = left
|
||||||
|
|
||||||
|
# Scale small icons up to this size, set to 0 to disable. Helpful
|
||||||
|
# for e.g. small files or high-dpi screens. In case of conflict,
|
||||||
|
# max_icon_size takes precedence over this.
|
||||||
|
min_icon_size = 0
|
||||||
|
|
||||||
|
# Scale larger icons down to this size, set to 0 to disable
|
||||||
|
max_icon_size = 64
|
||||||
|
|
||||||
|
# Paths to default icons.
|
||||||
|
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
|
||||||
|
|
||||||
|
### History ###
|
||||||
|
|
||||||
|
# Should a notification popped up from history be sticky or timeout
|
||||||
|
# as if it would normally do.
|
||||||
|
sticky_history = no
|
||||||
|
|
||||||
|
# Maximum amount of notifications kept in history
|
||||||
|
history_length = 5
|
||||||
|
|
||||||
|
### Misc/Advanced ###
|
||||||
|
|
||||||
|
# Browser for opening urls in context menu.
|
||||||
|
browser = /usr/bin/firefox -new-tab
|
||||||
|
|
||||||
|
# Always run rule-defined scripts, even if the notification is suppressed
|
||||||
|
always_run_script = true
|
||||||
|
|
||||||
|
# Define the title of the windows spawned by dunst
|
||||||
|
title = Dunst
|
||||||
|
|
||||||
|
# Define the class of the windows spawned by dunst
|
||||||
|
class = Dunst
|
||||||
|
|
||||||
|
# Define the corner radius of the notification window
|
||||||
|
# in pixel size. If the radius is 0, you have no rounded
|
||||||
|
# corners.
|
||||||
|
# The radius will be automatically lowered if it exceeds half of the
|
||||||
|
# notification height to avoid clipping text and/or icons.
|
||||||
|
corner_radius = 10
|
||||||
|
|
||||||
|
# Ignore the dbus closeNotification message.
|
||||||
|
# Useful to enforce the timeout set by dunst configuration. Without this
|
||||||
|
# parameter, an application may close the notification sent before the
|
||||||
|
# user defined timeout.
|
||||||
|
ignore_dbusclose = false
|
||||||
|
|
||||||
|
### Wayland ###
|
||||||
|
# These settings are Wayland-specific. They have no effect when using X11
|
||||||
|
|
||||||
|
# Uncomment this if you want to let notications appear under fullscreen
|
||||||
|
# applications (default: overlay)
|
||||||
|
# layer = top
|
||||||
|
|
||||||
|
# Set this to true to use X11 output on Wayland.
|
||||||
|
force_xwayland = false
|
||||||
|
|
||||||
|
### Legacy
|
||||||
|
|
||||||
|
# Use the Xinerama extension instead of RandR for multi-monitor support.
|
||||||
|
# This setting is provided for compatibility with older nVidia drivers that
|
||||||
|
# do not support RandR and using it on systems that support RandR is highly
|
||||||
|
# discouraged.
|
||||||
|
#
|
||||||
|
# By enabling this setting dunst will not be able to detect when a monitor
|
||||||
|
# is connected or disconnected which might break follow mode if the screen
|
||||||
|
# layout changes.
|
||||||
|
force_xinerama = false
|
||||||
|
|
||||||
|
### mouse
|
||||||
|
|
||||||
|
# Defines list of actions for each mouse event
|
||||||
|
# Possible values are:
|
||||||
|
# * none: Don't do anything.
|
||||||
|
# * do_action: Invoke the action determined by the action_name rule. If there is no
|
||||||
|
# such action, open the context menu.
|
||||||
|
# * open_url: If the notification has exactly one url, open it. If there are multiple
|
||||||
|
# ones, open the context menu.
|
||||||
|
# * close_current: Close current notification.
|
||||||
|
# * close_all: Close all notifications.
|
||||||
|
# * context: Open context menu for the notification.
|
||||||
|
# * context_all: Open context menu for all notifications.
|
||||||
|
# These values can be strung together for each mouse event, and
|
||||||
|
# will be executed in sequence.
|
||||||
|
mouse_left_click = close_current
|
||||||
|
mouse_middle_click = do_action, close_current
|
||||||
|
mouse_right_click = close_all
|
||||||
|
|
||||||
|
# Experimental features that may or may not work correctly. Do not expect them
|
||||||
|
# to have a consistent behaviour across releases.
|
||||||
|
[experimental]
|
||||||
|
# Calculate the dpi to use on a per-monitor basis.
|
||||||
|
# If this setting is enabled the Xft.dpi value will be ignored and instead
|
||||||
|
# dunst will attempt to calculate an appropriate dpi value for each monitor
|
||||||
|
# using the resolution and physical size. This might be useful in setups
|
||||||
|
# where there are multiple screens with very different dpi values.
|
||||||
|
per_monitor_dpi = false
|
||||||
|
|
||||||
|
|
||||||
|
[urgency_low]
|
||||||
|
# IMPORTANT: colors have to be defined in quotation marks.
|
||||||
|
# Otherwise the "#" and following would be interpreted as a comment.
|
||||||
|
background = "#282a36"
|
||||||
|
foreground = "#6272a4"
|
||||||
|
timeout = 3
|
||||||
|
# Icon for notifications with low urgency, uncomment to enable
|
||||||
|
#new_icon = /path/to/icon
|
||||||
|
|
||||||
|
[urgency_normal]
|
||||||
|
background = "#282a36"
|
||||||
|
foreground = "#bd93f9"
|
||||||
|
timeout = 5
|
||||||
|
# Icon for notifications with normal urgency, uncomment to enable
|
||||||
|
#new_icon = /path/to/icon
|
||||||
|
|
||||||
|
[urgency_critical]
|
||||||
|
background = "#ff5555"
|
||||||
|
foreground = "#f8f8f2"
|
||||||
|
frame_color = "#ff5555"
|
||||||
|
timeout = 20
|
||||||
|
# Icon for notifications with critical urgency, uncomment to enable
|
||||||
|
#new_icon = /path/to/icon
|
||||||
|
|
||||||
|
# Every section that isn't one of the above is interpreted as a rules to
|
||||||
|
# override settings for certain messages.
|
||||||
|
#
|
||||||
|
# Messages can be matched by
|
||||||
|
# appname (discouraged, see desktop_entry)
|
||||||
|
# body
|
||||||
|
# category
|
||||||
|
# desktop_entry
|
||||||
|
# icon
|
||||||
|
# match_transient
|
||||||
|
# msg_urgency
|
||||||
|
# stack_tag
|
||||||
|
# summary
|
||||||
|
#
|
||||||
|
# and you can override the
|
||||||
|
# background
|
||||||
|
# foreground
|
||||||
|
# format
|
||||||
|
# frame_color
|
||||||
|
# fullscreen
|
||||||
|
# new_icon
|
||||||
|
# set_stack_tag
|
||||||
|
# set_transient
|
||||||
|
# set_category
|
||||||
|
# timeout
|
||||||
|
# urgency
|
||||||
|
# skip_display
|
||||||
|
# history_ignore
|
||||||
|
# action_name
|
||||||
|
# word_wrap
|
||||||
|
# ellipsize
|
||||||
|
# alignment
|
||||||
|
#
|
||||||
|
# Shell-like globbing will get expanded.
|
||||||
|
#
|
||||||
|
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
|
||||||
|
# GLib based applications export their desktop-entry name. In comparison to the appname,
|
||||||
|
# the desktop-entry won't get localized.
|
||||||
|
#
|
||||||
|
# SCRIPTING
|
||||||
|
# You can specify a script that gets run when the rule matches by
|
||||||
|
# setting the "script" option.
|
||||||
|
# The script will be called as follows:
|
||||||
|
# script appname summary body icon urgency
|
||||||
|
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
|
||||||
|
#
|
||||||
|
# NOTE: It might be helpful to run dunst -print in a terminal in order
|
||||||
|
# to find fitting options for rules.
|
||||||
|
|
||||||
|
# Disable the transient hint so that idle_threshold cannot be bypassed from the
|
||||||
|
# client
|
||||||
|
#[transient_disable]
|
||||||
|
# match_transient = yes
|
||||||
|
# set_transient = no
|
||||||
|
#
|
||||||
|
# Make the handling of transient notifications more strict by making them not
|
||||||
|
# be placed in history.
|
||||||
|
#[transient_history_ignore]
|
||||||
|
# match_transient = yes
|
||||||
|
# history_ignore = yes
|
||||||
|
|
||||||
|
# fullscreen values
|
||||||
|
# show: show the notifications, regardless if there is a fullscreen window opened
|
||||||
|
# delay: displays the new notification, if there is no fullscreen window active
|
||||||
|
# If the notification is already drawn, it won't get undrawn.
|
||||||
|
# pushback: same as delay, but when switching into fullscreen, the notification will get
|
||||||
|
# withdrawn from screen again and will get delayed like a new notification
|
||||||
|
#[fullscreen_delay_everything]
|
||||||
|
# fullscreen = delay
|
||||||
|
#[fullscreen_show_critical]
|
||||||
|
# msg_urgency = critical
|
||||||
|
# fullscreen = show
|
||||||
|
|
||||||
|
#[espeak]
|
||||||
|
# summary = "*"
|
||||||
|
# script = dunst_espeak.sh
|
8
config/environment
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
#
|
||||||
|
# This file is parsed by pam_env module
|
||||||
|
#
|
||||||
|
# Syntax: simple "KEY=VAL" pairs on separate lines
|
||||||
|
#
|
||||||
|
XCURSOR_THEME="Adwaita"
|
||||||
|
EDITOR="nano"
|
||||||
|
#GTK_THEME=Adwaita-dark
|
10
config/greenclip.toml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
[greenclip]
|
||||||
|
blacklisted_applications = []
|
||||||
|
enable_image_support = true
|
||||||
|
history_file = "/home/mastermindzh/.cache/greenclip.history"
|
||||||
|
image_cache_directory = "/tmp/greenclip"
|
||||||
|
max_history_length = 50
|
||||||
|
max_selection_size_bytes = 0
|
||||||
|
static_history = []
|
||||||
|
trim_space_from_selection = true
|
||||||
|
use_primary_selection_as_input = false
|
@@ -1,16 +0,0 @@
|
|||||||
gtk-application-prefer-dark-theme=0
|
|
||||||
gtk-theme-name="Adwaita-dark"
|
|
||||||
gtk-icon-theme-name="Numix"
|
|
||||||
gtk-font-name="Cantarell 11"
|
|
||||||
gtk-cursor-theme-name="elementary"
|
|
||||||
gtk-cursor-theme-size=0
|
|
||||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
|
||||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
|
||||||
gtk-button-images=1
|
|
||||||
gtk-menu-images=1
|
|
||||||
gtk-enable-event-sounds=1
|
|
||||||
gtk-enable-input-feedback-sounds=1
|
|
||||||
gtk-xft-antialias=1
|
|
||||||
gtk-xft-hinting=1
|
|
||||||
gtk-xft-hintstyle="hintmedium"
|
|
||||||
gtk-xft-rgba="none"
|
|
19
config/gtk/settings.ini
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
[Settings]
|
||||||
|
gtk-application-prefer-dark-theme=1
|
||||||
|
gtk-theme-name=Adwaita-dark
|
||||||
|
; gtk-theme-name="Dracula"
|
||||||
|
gtk-font-name="Ubuntu 12"
|
||||||
|
gtk-cursor-theme-name="Dracula-cursors"
|
||||||
|
gtk-cursor-theme-size=12
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=1
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=1
|
||||||
|
gtk-menu-images=1
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle="hintfull"
|
||||||
|
gtk-xft-rgba="none"
|
||||||
|
gtk-decoration-layout=icon:close
|
||||||
|
gtk-enable-animations=true
|
1
config/lens/extensions.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
https://github.com/alebcay/openlens-node-pod-menu
|
@@ -20,14 +20,16 @@ application/x-extension-xht=firefox.desktop
|
|||||||
#--------------
|
#--------------
|
||||||
x-scheme-handler/postman=Postman.desktop
|
x-scheme-handler/postman=Postman.desktop
|
||||||
x-scheme-handler/ssh=ktelnetservice5.desktop
|
x-scheme-handler/ssh=ktelnetservice5.desktop
|
||||||
x-scheme-handler/msteams=teams-insiders.desktop
|
x-scheme-handler/msteams=teams.desktop
|
||||||
x-scheme-handler/discord-478576776990425110=discord-478576776990425110.desktop
|
x-scheme-handler/discord-478576776990425110=discord-478576776990425110.desktop
|
||||||
x-scheme-handler/mailspring=Mailspring.desktop
|
x-scheme-handler/mailspring=Mailspring.desktop
|
||||||
x-scheme-handler/etcher=balena-etcher-electron.desktop
|
x-scheme-handler/etcher=balena-etcher-electron.desktop
|
||||||
|
x-scheme-handler/tidal=tidal-hifi.desktop
|
||||||
|
|
||||||
# files
|
# files
|
||||||
#--------------
|
#--------------
|
||||||
inode/director=Nautilus.desktop
|
inode/director=thunar.desktop
|
||||||
|
x-scheme-handler/ftb=ftb-app.desktop
|
||||||
|
|
||||||
[Added Associations]
|
[Added Associations]
|
||||||
# browser-stuff
|
# browser-stuff
|
||||||
@@ -67,10 +69,9 @@ application/javascript=visual-studio-code-insiders.desktop;
|
|||||||
|
|
||||||
# other
|
# other
|
||||||
#--------------
|
#--------------
|
||||||
application/zip=org.gnome.Nautilus.desktop;xarchiver.desktop;
|
application/zip=thunar,org.gnome.Nautilus.desktop;xarchiver.desktop;
|
||||||
application/vnd.openxmlformats-officedocument.wordprocessingml.document=wps-office-wps.desktop;
|
application/vnd.openxmlformats-officedocument.wordprocessingml.document=wps-office-wps.desktop;
|
||||||
application/x-remmina=org.gnome.gedit.desktop;org.kde.krdc.desktop;remmina-file.desktop;org.remmina.Remmina.desktop;
|
application/x-remmina=org.gnome.gedit.desktop;org.kde.krdc.desktop;remmina-file.desktop;org.remmina.Remmina.desktop;
|
||||||
|
|
||||||
# newly added
|
# newly added
|
||||||
#--------------
|
#--------------
|
||||||
|
|
||||||
|
@@ -1,44 +1,40 @@
|
|||||||
include /usr/share/nano/objc.nanorc
|
include /usr/share/nano/asm.nanorc
|
||||||
|
include /usr/share/nano/autoconf.nanorc
|
||||||
|
include /usr/share/nano/awk.nanorc
|
||||||
|
include /usr/share/nano/changelog.nanorc
|
||||||
|
include /usr/share/nano/cmake.nanorc
|
||||||
|
include /usr/share/nano/c.nanorc
|
||||||
|
include /usr/share/nano/css.nanorc
|
||||||
|
include /usr/share/nano/default.nanorc
|
||||||
include /usr/share/nano/elisp.nanorc
|
include /usr/share/nano/elisp.nanorc
|
||||||
include /usr/share/nano/nanorc.nanorc
|
include /usr/share/nano/email.nanorc
|
||||||
include /usr/share/nano/mutt.nanorc
|
|
||||||
include /usr/share/nano/nftables.nanorc
|
|
||||||
include /usr/share/nano/html.nanorc
|
|
||||||
include /usr/share/nano/php.nanorc
|
|
||||||
include /usr/share/nano/tex.nanorc
|
|
||||||
include /usr/share/nano/java.nanorc
|
|
||||||
include /usr/share/nano/go.nanorc
|
include /usr/share/nano/go.nanorc
|
||||||
include /usr/share/nano/fortran.nanorc
|
include /usr/share/nano/groff.nanorc
|
||||||
|
include /usr/share/nano/guile.nanorc
|
||||||
|
include /usr/share/nano/html.nanorc
|
||||||
|
include /usr/share/nano/java.nanorc
|
||||||
|
include /usr/share/nano/javascript.nanorc
|
||||||
|
include /usr/share/nano/json.nanorc
|
||||||
|
include /usr/share/nano/lua.nanorc
|
||||||
|
include /usr/share/nano/makefile.nanorc
|
||||||
|
include /usr/share/nano/man.nanorc
|
||||||
|
include /usr/share/nano/markdown.nanorc
|
||||||
|
include /usr/share/nano/nanohelp.nanorc
|
||||||
|
include /usr/share/nano/nanorc.nanorc
|
||||||
|
include /usr/share/nano/nftables.nanorc
|
||||||
|
include /usr/share/nano/objc.nanorc
|
||||||
|
include /usr/share/nano/ocaml.nanorc
|
||||||
|
include /usr/share/nano/patch.nanorc
|
||||||
|
include /usr/share/nano/perl.nanorc
|
||||||
|
include /usr/share/nano/php.nanorc
|
||||||
|
include /usr/share/nano/po.nanorc
|
||||||
|
include /usr/share/nano/python.nanorc
|
||||||
|
include /usr/share/nano/ruby.nanorc
|
||||||
|
include /usr/share/nano/rust.nanorc
|
||||||
|
include /usr/share/nano/sh.nanorc
|
||||||
|
include /usr/share/nano/sql.nanorc
|
||||||
include /usr/share/nano/tcl.nanorc
|
include /usr/share/nano/tcl.nanorc
|
||||||
include /usr/share/nano/texinfo.nanorc
|
include /usr/share/nano/texinfo.nanorc
|
||||||
include /usr/share/nano/cmake.nanorc
|
include /usr/share/nano/tex.nanorc
|
||||||
include /usr/share/nano/man.nanorc
|
|
||||||
include /usr/share/nano/css.nanorc
|
|
||||||
include /usr/share/nano/javascript.nanorc
|
|
||||||
include /usr/share/nano/rust.nanorc
|
|
||||||
include /usr/share/nano/autoconf.nanorc
|
|
||||||
include /usr/share/nano/makefile.nanorc
|
|
||||||
include /usr/share/nano/mgp.nanorc
|
|
||||||
include /usr/share/nano/default.nanorc
|
|
||||||
include /usr/share/nano/changelog.nanorc
|
|
||||||
include /usr/share/nano/asm.nanorc
|
|
||||||
include /usr/share/nano/c.nanorc
|
|
||||||
include /usr/share/nano/lua.nanorc
|
|
||||||
include /usr/share/nano/xml.nanorc
|
include /usr/share/nano/xml.nanorc
|
||||||
include /usr/share/nano/groff.nanorc
|
include /usr/share/nano/yaml.nanorc
|
||||||
include /usr/share/nano/ruby.nanorc
|
|
||||||
include /usr/share/nano/po.nanorc
|
|
||||||
include /usr/share/nano/ocaml.nanorc
|
|
||||||
include /usr/share/nano/json.nanorc
|
|
||||||
include /usr/share/nano/patch.nanorc
|
|
||||||
include /usr/share/nano/sh.nanorc
|
|
||||||
include /usr/share/nano/pov.nanorc
|
|
||||||
include /usr/share/nano/python.nanorc
|
|
||||||
include /usr/share/nano/gentoo.nanorc
|
|
||||||
include /usr/share/nano/guile.nanorc
|
|
||||||
include /usr/share/nano/nanohelp.nanorc
|
|
||||||
include /usr/share/nano/perl.nanorc
|
|
||||||
include /usr/share/nano/spec.nanorc
|
|
||||||
include /usr/share/nano/postgresql.nanorc
|
|
||||||
include /usr/share/nano/debian.nanorc
|
|
||||||
include /usr/share/nano/awk.nanorc
|
|
||||||
|
6
config/networkmanager/09-timezone
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
case "$2" in
|
||||||
|
up)
|
||||||
|
timedatectl set-timezone "$(curl --fail https://ipapi.co/timezone)"
|
||||||
|
;;
|
||||||
|
esac
|
@@ -1,25 +0,0 @@
|
|||||||
|
|
||||||
slot-allocation = dynamic
|
|
||||||
bubble-expire-timeout = 5sec
|
|
||||||
bubble-vertical-gap = 25px
|
|
||||||
bubble-horizontal-gap = 9px
|
|
||||||
bubble-corner-radius = 45px
|
|
||||||
bubble-icon-size = 30px
|
|
||||||
bubble-gauge-size = 6px
|
|
||||||
bubble-width = 240px
|
|
||||||
bubble-background-color = 131313
|
|
||||||
bubble-background-opacity = 80%
|
|
||||||
text-margin-size = 10px
|
|
||||||
text-title-size = 100%
|
|
||||||
text-title-weight = bold
|
|
||||||
text-title-color = ffffff
|
|
||||||
text-title-opacity = 100%
|
|
||||||
text-body-size = 90%
|
|
||||||
text-body-weight = normal
|
|
||||||
text-body-color = eaeaea
|
|
||||||
text-body-opacity = 100%
|
|
||||||
text-shadow-opacity = 100%
|
|
||||||
location = 1
|
|
||||||
bubble-prevent-fade = 0
|
|
||||||
bubble-close-on-click = 1
|
|
||||||
bubble-as-desktop-bg = 0
|
|
@@ -82,9 +82,6 @@ Include = /etc/pacman.d/mirrorlist
|
|||||||
#[community-testing]
|
#[community-testing]
|
||||||
#Include = /etc/pacman.d/mirrorlist
|
#Include = /etc/pacman.d/mirrorlist
|
||||||
|
|
||||||
[community]
|
|
||||||
Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
# If you want to run 32 bit applications on your x86_64 system,
|
# If you want to run 32 bit applications on your x86_64 system,
|
||||||
# enable the multilib repositories as required here.
|
# enable the multilib repositories as required here.
|
||||||
|
|
||||||
|
@@ -3,4 +3,7 @@
|
|||||||
#################################
|
#################################
|
||||||
|
|
||||||
# Opacity of inactive windows. (0.1 - 1.0)
|
# Opacity of inactive windows. (0.1 - 1.0)
|
||||||
inactive-opacity = 1.0;
|
inactive-opacity = 1.0
|
||||||
|
vsync=true
|
||||||
|
backend="glx"
|
||||||
|
unredir-if-possible=true
|
||||||
|
38
config/polybar/bars.ini
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
[bar/main]
|
||||||
|
monitor = ${env:MONITOR:}
|
||||||
|
width = 100%
|
||||||
|
height = 18pt
|
||||||
|
radius = 0
|
||||||
|
padding-right = 0
|
||||||
|
padding-left = 0
|
||||||
|
module-margin = 1
|
||||||
|
separator = |
|
||||||
|
dpi = ${xrdb:Xft.dpi:-1}
|
||||||
|
|
||||||
|
; colors
|
||||||
|
background = ${colors.background}
|
||||||
|
foreground = ${colors.foreground}
|
||||||
|
border-color = #00000000
|
||||||
|
separator-foreground = ${colors.disabled}
|
||||||
|
|
||||||
|
; modules
|
||||||
|
modules-left = xworkspaces i3
|
||||||
|
modules-center = tidal
|
||||||
|
modules-right = output-audio weather temperature updates ping battery date
|
||||||
|
; modules-right = output-audio input-audio weather temperature updates ping battery date
|
||||||
|
|
||||||
|
; fonts (fc-list)
|
||||||
|
; offset = height - size / 2 (for vertical center, icons are weird and need to be even numbers)
|
||||||
|
font-0 = Ubuntu regular:style=regular:size=12;3
|
||||||
|
font-1 = FontAwesome:style=Regular;2
|
||||||
|
font-2 = Noto Color Emoji:style=Regular:scale=10;2
|
||||||
|
|
||||||
|
cursor-click = pointer
|
||||||
|
cursor-scroll = ns-resize
|
||||||
|
|
||||||
|
enable-ipc = true
|
||||||
|
tray-position = ${env:TRAY_POSITION:right}
|
||||||
|
|
||||||
|
wm-restack = i3
|
||||||
|
tray-reparent = true
|
||||||
|
; override-redirect = true
|
26
config/polybar/config.ini
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
;==========================================================
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
|
||||||
|
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
|
||||||
|
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
|
||||||
|
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
|
||||||
|
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
|
||||||
|
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/polybar/polybar
|
||||||
|
;
|
||||||
|
; The README contains a lot of information
|
||||||
|
;
|
||||||
|
;==========================================================
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
screenchange-reload = true
|
||||||
|
pseudo-transparency = true
|
||||||
|
|
||||||
|
; theme
|
||||||
|
include-file = ~/.config/polybar/modules.ini
|
||||||
|
include-file = ~/.config/polybar/themes/dracula.ini
|
||||||
|
include-file = ~/.config/polybar/bars.ini
|
25
config/polybar/launch.sh
Executable file
@@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
killall -q polybar
|
||||||
|
|
||||||
|
# Launch Polybar, using default config location ~/.config/polybar/config.ini
|
||||||
|
PRIMARY=$(xrandr --query | grep -i "connected primary" | cut -d" " -f1)
|
||||||
|
export MONITOR=$PRIMARY
|
||||||
|
polybar -r 2>&1 | tee -a /tmp/polybar.log &
|
||||||
|
|
||||||
|
# show-bar on all monitors
|
||||||
|
# idk whether I like this at the moment, I don't really use external displays unless they are the primary or they are duplicated
|
||||||
|
# if type "xrandr"; then
|
||||||
|
# PRIMARY=$(xrandr --query | grep -i "connected primary" | cut -d" " -f1)
|
||||||
|
# for m in $(xrandr --query | grep -i " connected" | cut -d" " -f1); do
|
||||||
|
# export TRAY_POSITION=none
|
||||||
|
# if [[ $m == "$PRIMARY" ]]; then
|
||||||
|
# TRAY_POSITION=right
|
||||||
|
# fi
|
||||||
|
# export MONITOR=$m
|
||||||
|
# polybar -r 2>&1 | tee -a /tmp/polybar.log &
|
||||||
|
# done
|
||||||
|
# else
|
||||||
|
# polybar -r 2>&1 | tee -a /tmp/polybar.log &
|
||||||
|
# fi
|
||||||
|
disown
|
||||||
|
echo "Polybar launched..."
|
189
config/polybar/modules.ini
Normal file
@@ -0,0 +1,189 @@
|
|||||||
|
[module/xworkspaces]
|
||||||
|
type = internal/xworkspaces
|
||||||
|
pin-workspaces = true
|
||||||
|
|
||||||
|
label-active = %name%
|
||||||
|
label-active-background = ${colors.background-alt}
|
||||||
|
; label-active-underline= ${colors.primary}
|
||||||
|
label-active-foreground= ${colors.accent}
|
||||||
|
label-active-padding = 1
|
||||||
|
|
||||||
|
label-occupied = %name%
|
||||||
|
label-occupied-padding = 1
|
||||||
|
|
||||||
|
label-urgent = %name%
|
||||||
|
label-urgent-background = ${colors.alert}
|
||||||
|
label-urgent-padding = 1
|
||||||
|
|
||||||
|
label-empty = %name%
|
||||||
|
label-empty-foreground = ${colors.disabled}
|
||||||
|
label-empty-padding = 1
|
||||||
|
|
||||||
|
|
||||||
|
[module/output-audio]
|
||||||
|
type = internal/pulseaudio
|
||||||
|
|
||||||
|
format-volume-prefix = "🔊 "
|
||||||
|
; format-volume-prefix = " "
|
||||||
|
format-volume-prefix-foreground = ${colors.primary}
|
||||||
|
format-volume = <label-volume>
|
||||||
|
|
||||||
|
label-volume = %percentage%%
|
||||||
|
|
||||||
|
|
||||||
|
; label-muted = 🔇 muted
|
||||||
|
label-muted = 🙉 muted
|
||||||
|
label-muted-foreground = ${colors.disabled}
|
||||||
|
|
||||||
|
[module/memory]
|
||||||
|
type = internal/memory
|
||||||
|
interval = 2
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.primary}
|
||||||
|
label = %percentage_used:2%%
|
||||||
|
|
||||||
|
[module/cpu]
|
||||||
|
type = internal/cpu
|
||||||
|
interval = 2
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.primary}
|
||||||
|
label = %percentage:2%%
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 1
|
||||||
|
|
||||||
|
date = %Y-%m-%d %H:%M:%S
|
||||||
|
|
||||||
|
format-prefix = "📅 "
|
||||||
|
; format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.primary}
|
||||||
|
label =%date%
|
||||||
|
|
||||||
|
[module/temperature]
|
||||||
|
type = internal/temperature
|
||||||
|
|
||||||
|
; Full path of temperature sysfs path
|
||||||
|
; Use `sensors` to find preferred temperature source, then run
|
||||||
|
; $ for i in /sys/class/hwmon/hwmon*/temp*_input; do echo "$(<$(dirname $i)/name): $(cat ${i%_*}_label 2>/dev/null || echo $(basename ${i%_*})) $(readlink -f $i)"; done
|
||||||
|
; to find path to desired file
|
||||||
|
; Default reverts to thermal zone setting
|
||||||
|
; hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input
|
||||||
|
|
||||||
|
|
||||||
|
base-temperature = 40
|
||||||
|
warn-temperature = 80
|
||||||
|
|
||||||
|
# format-prefix = " "
|
||||||
|
# format-warn-prefix = " "
|
||||||
|
format-prefix = "🌡️"
|
||||||
|
format-warn-prefix = "🌡️"
|
||||||
|
format-prefix-foreground = ${colors.accent}
|
||||||
|
|
||||||
|
label = %temperature-c%
|
||||||
|
format-warn = <label>
|
||||||
|
|
||||||
|
format-warn-foreground = ${colors.alert}
|
||||||
|
|
||||||
|
|
||||||
|
[module/battery]
|
||||||
|
type = internal/battery
|
||||||
|
full-at = 98
|
||||||
|
battery = BAT1
|
||||||
|
time-format = %H:%M
|
||||||
|
|
||||||
|
format-charging = <animation-charging> <label-charging>
|
||||||
|
label-charging = %percentage%% (%time%)
|
||||||
|
|
||||||
|
format-discharging = <ramp-capacity> <label-discharging>
|
||||||
|
label-discharging = %percentage%% (%time%)
|
||||||
|
|
||||||
|
format-full = <label-full>
|
||||||
|
format-full-prefix = "⚡ "
|
||||||
|
; format-full-prefix = " "
|
||||||
|
format-full-prefix-foreground = #666
|
||||||
|
|
||||||
|
ramp-capacity-0 = ""
|
||||||
|
ramp-capacity-1 = ""
|
||||||
|
ramp-capacity-2 = ""
|
||||||
|
ramp-capacity-3 = ""
|
||||||
|
ramp-capacity-4 = ""
|
||||||
|
ramp-capacity-foreground = ${colors.accent}
|
||||||
|
|
||||||
|
animation-charging-0 = ""
|
||||||
|
animation-charging-1 = ""
|
||||||
|
animation-charging-2 = ""
|
||||||
|
animation-charging-3 = ""
|
||||||
|
animation-charging-4 = ""
|
||||||
|
animation-charging-foreground = ${colors.yellow}
|
||||||
|
animation-charging-framerate = 750
|
||||||
|
|
||||||
|
|
||||||
|
[module/xwindow]
|
||||||
|
type = internal/xwindow
|
||||||
|
format = <label>
|
||||||
|
label-maxlen = 75
|
||||||
|
|
||||||
|
[module/updates]
|
||||||
|
type = custom/script
|
||||||
|
interval = 300
|
||||||
|
exec = "checkupdates 2>/dev/null | wc -l"
|
||||||
|
|
||||||
|
format = "<label>"
|
||||||
|
format-prefix = "📥 "
|
||||||
|
; format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.accent}
|
||||||
|
label = %output%
|
||||||
|
|
||||||
|
[module/ping]
|
||||||
|
type = custom/script
|
||||||
|
interval = 60
|
||||||
|
exec = "ping -c 3 8.8.8.8 2>/dev/null | tail -1 | awk '{print $4}' | cut -d '/' -f 2 | cut -f1 -d'.'"
|
||||||
|
|
||||||
|
format = "<label>"
|
||||||
|
format-prefix = "📡 "
|
||||||
|
; format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.accent}
|
||||||
|
label = %output%
|
||||||
|
click-left = firefox https://speedtest.net
|
||||||
|
|
||||||
|
[module/weather]
|
||||||
|
type = custom/script
|
||||||
|
interval = 900
|
||||||
|
exec = "curl -s wttr.in/oss?format=1 | grep -v 'Unknown location' || echo ''"
|
||||||
|
|
||||||
|
format = "<label>"
|
||||||
|
format-prefix-foreground = ${colors.accent}
|
||||||
|
label = %output%
|
||||||
|
click-left = xfce4-terminal -H -e "curl wttr.in/oss"
|
||||||
|
|
||||||
|
|
||||||
|
[module/i3]
|
||||||
|
type = internal/i3
|
||||||
|
index-sort = true
|
||||||
|
format = <label-mode>
|
||||||
|
label-mode = %mode%
|
||||||
|
format-foreground = ${colors.alert}
|
||||||
|
|
||||||
|
[module/tidal]
|
||||||
|
type=custom/script
|
||||||
|
interval = 1
|
||||||
|
; format-prefix="🎵 "
|
||||||
|
format-prefix=" "
|
||||||
|
format-prefix-foreground = ${colors.tidal}
|
||||||
|
format-foreground = ${colors.tidal}
|
||||||
|
format = "<label>"
|
||||||
|
label = %output:0:45:...%
|
||||||
|
exec = "~/.config/i3/scripts/tidal-cli.sh info"
|
||||||
|
click-left = "~/.config/i3/scripts/tidal-cli.sh playpause"
|
||||||
|
scroll-up = "~/.config/i3/scripts/tidal-cli.sh next"
|
||||||
|
scrolldown = "~/.config/i3/scripts/tidal-cli.sh previous"
|
||||||
|
click-right = "~/.config/i3/scripts/tidal-cli.sh getLink | xclip -selection clipboard"
|
||||||
|
|
||||||
|
[module/input-audio]
|
||||||
|
type = custom/script
|
||||||
|
exec = ~/.config/polybar/scripts/pulse-microphone.sh
|
||||||
|
tail = true
|
||||||
|
click-left = ~/.config/polybar/scripts/pulse-microphone.sh --toggle &
|
||||||
|
scroll-up = ~/.config/polybar/scripts/pulse-microphone.sh --increase &
|
||||||
|
scroll-down = ~/.config/polybar/scripts/pulse-microphone.sh --decrease &
|
59
config/polybar/scripts/pulse-microphone.sh
Executable file
@@ -0,0 +1,59 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
status() {
|
||||||
|
MUTED=$(pacmd list-sources | awk '/\*/,EOF {print}' | awk '/muted/ {print $2; exit}')
|
||||||
|
|
||||||
|
if [ "$MUTED" = "yes" ]; then
|
||||||
|
echo "🙊 muted"
|
||||||
|
else
|
||||||
|
OUTPUT=$(pacmd list-sources | grep "\* index:" -A 7 | grep volume | awk -F/ '{print $2}' | awk -F, '{ print $1 }' | tr -d ' ')
|
||||||
|
echo "🎙️ $OUTPUT"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
listen() {
|
||||||
|
status
|
||||||
|
|
||||||
|
LANG=EN
|
||||||
|
pactl subscribe | while read -r event; do
|
||||||
|
if echo "$event" | grep -q "source" || echo "$event" | grep -q "server"; then
|
||||||
|
status
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
toggle() {
|
||||||
|
MUTED=$(pacmd list-sources | awk '/\*/,EOF {print}' | awk '/muted/ {print $2; exit}')
|
||||||
|
DEFAULT_SOURCE=$(pacmd list-sources | awk '/\*/,EOF {print $3; exit}')
|
||||||
|
|
||||||
|
if [ "$MUTED" = "yes" ]; then
|
||||||
|
pactl set-source-mute "$DEFAULT_SOURCE" 0
|
||||||
|
else
|
||||||
|
pactl set-source-mute "$DEFAULT_SOURCE" 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
increase() {
|
||||||
|
DEFAULT_SOURCE=$(pacmd list-sources | awk '/\*/,EOF {print $3; exit}')
|
||||||
|
pactl set-source-volume "$DEFAULT_SOURCE" +5%
|
||||||
|
}
|
||||||
|
|
||||||
|
decrease() {
|
||||||
|
DEFAULT_SOURCE=$(pacmd list-sources | awk '/\*/,EOF {print $3; exit}')
|
||||||
|
pactl set-source-volume "$DEFAULT_SOURCE" -5%
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
--toggle)
|
||||||
|
toggle
|
||||||
|
;;
|
||||||
|
--increase)
|
||||||
|
increase
|
||||||
|
;;
|
||||||
|
--decrease)
|
||||||
|
decrease
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
listen
|
||||||
|
;;
|
||||||
|
esac
|
11
config/polybar/themes/dark.ini
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
[colors]
|
||||||
|
background = #1e1e1e
|
||||||
|
background-alt = #252526
|
||||||
|
foreground = #848484
|
||||||
|
primary = #f6f6f7
|
||||||
|
secondary = #f6f6f7
|
||||||
|
alert = #ef5350
|
||||||
|
disabled = #707880
|
||||||
|
accent = #fff
|
||||||
|
yellow = #ebc034
|
||||||
|
tidal = #00ffff
|
11
config/polybar/themes/dracula.ini
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
[colors]
|
||||||
|
background = #282a36
|
||||||
|
background-alt = #BD93F9
|
||||||
|
foreground = #f8f8f2
|
||||||
|
primary = #bd93f9
|
||||||
|
secondary = #ffb86c
|
||||||
|
alert = #ff5555
|
||||||
|
disabled = #6272a4
|
||||||
|
accent = #fff
|
||||||
|
tidal = #50FA7B
|
||||||
|
yellow = #F1FA8C
|
49
config/poshthemes/mastermindzh.yaml
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json
|
||||||
|
|
||||||
|
blocks:
|
||||||
|
- type: rprompt
|
||||||
|
overflow: hidden
|
||||||
|
segments:
|
||||||
|
- properties:
|
||||||
|
cache_duration: none
|
||||||
|
threshold: 1
|
||||||
|
template: "{{ .FormattedMs }}"
|
||||||
|
foreground: yellow
|
||||||
|
background: transparent
|
||||||
|
type: executiontime
|
||||||
|
style: plain
|
||||||
|
- type: prompt
|
||||||
|
alignment: left
|
||||||
|
segments:
|
||||||
|
- properties:
|
||||||
|
cache_duration: none
|
||||||
|
home_icon: "\uf015 "
|
||||||
|
style: agnoster_short
|
||||||
|
template: "{{ .Path }} "
|
||||||
|
foreground: "#77E4F7"
|
||||||
|
type: path
|
||||||
|
- properties:
|
||||||
|
cache_duration: none
|
||||||
|
fetch_status: true
|
||||||
|
template: "<#ffffff>on</> {{ .HEAD }}{{ if or (.Working.Changed) (.Staging.Changed) }} \uf044 {{end}} "
|
||||||
|
foreground: "#C678DD"
|
||||||
|
type: git
|
||||||
|
style: plain
|
||||||
|
- properties:
|
||||||
|
cache_duration: none
|
||||||
|
fetch_version: true
|
||||||
|
template: " \uf3d3 {{ if .PackageManagerIcon }}{{ .PackageManagerIcon }} {{ end }} {{ .Full }} "
|
||||||
|
foreground: "#98C379"
|
||||||
|
type: node
|
||||||
|
style: plain
|
||||||
|
newline: true
|
||||||
|
- type: prompt
|
||||||
|
alignment: left
|
||||||
|
segments:
|
||||||
|
- properties:
|
||||||
|
cache_duration: none
|
||||||
|
template: "➜ "
|
||||||
|
foreground: "#63F08C"
|
||||||
|
type: text
|
||||||
|
style: plain
|
||||||
|
version: 3
|
61
config/poshthemes/mastermindzh.yaml.bak
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
version: 2
|
||||||
|
blocks:
|
||||||
|
# prompt on the right
|
||||||
|
- type: rprompt
|
||||||
|
overflow: hidden
|
||||||
|
segments:
|
||||||
|
- background: transparent
|
||||||
|
foreground: yellow
|
||||||
|
style: plain
|
||||||
|
template: "{{ .FormattedMs }}"
|
||||||
|
type: executiontime
|
||||||
|
properties:
|
||||||
|
threshold: 1
|
||||||
|
|
||||||
|
# prompt segment
|
||||||
|
- type: prompt
|
||||||
|
alignment: left
|
||||||
|
newline: true
|
||||||
|
segments:
|
||||||
|
- foreground: "#77E4F7"
|
||||||
|
template: "{{ .Path }} "
|
||||||
|
type: path
|
||||||
|
properties:
|
||||||
|
home_icon: " "
|
||||||
|
style: agnoster_short
|
||||||
|
|
||||||
|
# git segment
|
||||||
|
- type: git
|
||||||
|
foreground: "#C678DD"
|
||||||
|
properties:
|
||||||
|
fetch_status: true
|
||||||
|
style: plain
|
||||||
|
# template:
|
||||||
|
# "<#ffffff>on</> {{ .HEAD }}{{ if .Working.Changed }} {{ .Working.String }}{{ end }}{{ if and (.Working.Changed)
|
||||||
|
# (.Staging.Changed) }} |{{ end }}{{ if .Staging.Changed }} {{ .Staging.String
|
||||||
|
# }}{{ end }}"
|
||||||
|
template: "<#ffffff>on</> {{ .HEAD }}{{ if or (.Working.Changed) (.Staging.Changed) }} {{end}} "
|
||||||
|
|
||||||
|
# current language info
|
||||||
|
- type: node
|
||||||
|
foreground: "#98C379"
|
||||||
|
properties:
|
||||||
|
fetch_version: true
|
||||||
|
style: plain
|
||||||
|
template: " {{ if .PackageManagerIcon }}{{ .PackageManagerIcon }} {{ end }} {{ .Full }} "
|
||||||
|
|
||||||
|
- alignment: left
|
||||||
|
segments:
|
||||||
|
- foreground: "#63F08C"
|
||||||
|
style: plain
|
||||||
|
template: "➜ "
|
||||||
|
type: text
|
||||||
|
type: prompt
|
||||||
|
# bash won't play along :)
|
||||||
|
# transient_prompt:
|
||||||
|
# background: transparent
|
||||||
|
# foreground_templates:
|
||||||
|
# - "{{if gt .Code 0}}red{{end}}"
|
||||||
|
# - "{{if eq .Code 0}}magenta{{end}}"
|
||||||
|
# template: "❯ "
|
||||||
|
|
28
config/rofi/config.rasi
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
configuration {
|
||||||
|
modi: "window,run,ssh,combi,emoji,calc,drun";
|
||||||
|
font: "Ubuntu mono 16";
|
||||||
|
terminal: "xfce4-terminal";
|
||||||
|
ssh-client: "ssh";
|
||||||
|
ssh-command: "{terminal} -e "{ssh-client} {host}"";
|
||||||
|
|
||||||
|
show-icons: true;
|
||||||
|
display-drun: " ";
|
||||||
|
display-run: " ";
|
||||||
|
display-ssh: " ";
|
||||||
|
display-clipboard: " ";
|
||||||
|
display-emoji: " ";
|
||||||
|
display-calc: " ";
|
||||||
|
display-filebrowser: " ";
|
||||||
|
display-window: " ";
|
||||||
|
drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";
|
||||||
|
window-format: "{w} · {c} · {t}";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*---- import color theme here ----*/
|
||||||
|
/*@import "~/.config/rofi/themes/dark.rasi"*/
|
||||||
|
@import "~/.config/rofi/themes/dracula.rasi"
|
||||||
|
|
||||||
|
/*---- import theme here ----*/
|
||||||
|
@import "~/.config/rofi/themes/base.rasi"
|
||||||
|
|
@@ -1,162 +0,0 @@
|
|||||||
/*
|
|
||||||
old color theme
|
|
||||||
----------------
|
|
||||||
State: 'bg', 'fg', 'bgalt', 'hlbg', 'hlfg'
|
|
||||||
----------------------------------------------------------------
|
|
||||||
color-normal: "#1e1e1e, #848484, #1e1e1e, #333333, #f6f6f7";
|
|
||||||
color-urgent: "#333333, #ef5350, #0000ff, #333333, #f6f6f7";
|
|
||||||
color-active: "#333333, #ef5350, #0000ff, #333333, #f6f6f7";
|
|
||||||
color-window: "#1e1e1e, #333333, #333333";
|
|
||||||
*/
|
|
||||||
|
|
||||||
* {
|
|
||||||
/* my vars */
|
|
||||||
background: #1e1e1e;
|
|
||||||
background-color: @background;
|
|
||||||
foreground: #848484;
|
|
||||||
foreground-normal: @foreground;
|
|
||||||
urgent: #333333;
|
|
||||||
active-fg: #ef5350;
|
|
||||||
|
|
||||||
/* background */
|
|
||||||
normal-background: @background;
|
|
||||||
alternate-urgent-background: @background;
|
|
||||||
lightbg: @background;
|
|
||||||
alternate-active-background: @background;
|
|
||||||
alternate-normal-background: @background;
|
|
||||||
selected-normal-background: rgba ( 57, 66, 73, 100 % );
|
|
||||||
|
|
||||||
/* foreground */
|
|
||||||
normal-foreground: @foreground-normal;
|
|
||||||
alternate-normal-foreground: @foreground;
|
|
||||||
selected-normal-foreground: rgba ( 255, 255, 255, 100 % );
|
|
||||||
selected-urgent-foreground: @urgent;
|
|
||||||
active-foreground: @active-fg;
|
|
||||||
urgent-foreground: @red;
|
|
||||||
alternate-urgent-foreground: @urgent-foreground;
|
|
||||||
alternate-active-foreground: @active-foreground;
|
|
||||||
|
|
||||||
|
|
||||||
/* borders */
|
|
||||||
bordercolor: @background;
|
|
||||||
border-color: @background;
|
|
||||||
|
|
||||||
selected-active-foreground: rgba ( 128, 203, 196, 100 % );
|
|
||||||
|
|
||||||
lightfg: rgba ( 88, 104, 117, 100 % );
|
|
||||||
spacing: 2;
|
|
||||||
separatorcolor: rgba ( 30, 37, 41, 100 % );
|
|
||||||
urgent-background: rgba ( 39, 50, 56, 100 % );
|
|
||||||
selected-urgent-background: rgba ( 57, 66, 73, 100 % );
|
|
||||||
active-background: rgba ( 39, 50, 56, 100 % );
|
|
||||||
selected-active-background: rgba ( 57, 66, 73, 100 % );
|
|
||||||
}
|
|
||||||
window {
|
|
||||||
background-color: @background;
|
|
||||||
border: 1;
|
|
||||||
padding: 5;
|
|
||||||
}
|
|
||||||
mainbox {
|
|
||||||
border: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
message {
|
|
||||||
border: 1px dash 0px 0px ;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
padding: 1px ;
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
text-color: @foreground;
|
|
||||||
}
|
|
||||||
listview {
|
|
||||||
fixed-height: 0;
|
|
||||||
border: 2px dash 0px 0px ;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
spacing: 2px ;
|
|
||||||
scrollbar: true;
|
|
||||||
padding: 2px 0px 0px ;
|
|
||||||
}
|
|
||||||
element {
|
|
||||||
border: 0;
|
|
||||||
padding: 1px ;
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
element.normal.normal {
|
|
||||||
background-color: @normal-background;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
element.normal.urgent {
|
|
||||||
background-color: @urgent-background;
|
|
||||||
text-color: @urgent-foreground;
|
|
||||||
}
|
|
||||||
element.normal.active {
|
|
||||||
background-color: @active-background;
|
|
||||||
text-color: @active-foreground;
|
|
||||||
}
|
|
||||||
element.selected.normal {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
element.selected.urgent {
|
|
||||||
background-color: @selected-urgent-background;
|
|
||||||
text-color: @selected-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.selected.active {
|
|
||||||
background-color: @selected-active-background;
|
|
||||||
text-color: @selected-active-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.normal {
|
|
||||||
background-color: @alternate-normal-background;
|
|
||||||
text-color: @alternate-normal-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.urgent {
|
|
||||||
background-color: @alternate-urgent-background;
|
|
||||||
text-color: @alternate-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.active {
|
|
||||||
background-color: @alternate-active-background;
|
|
||||||
text-color: @alternate-active-foreground;
|
|
||||||
}
|
|
||||||
scrollbar {
|
|
||||||
width: 4px ;
|
|
||||||
border: 0;
|
|
||||||
handle-width: 8px ;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
mode-switcher {
|
|
||||||
border: 2px dash 0px 0px ;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
}
|
|
||||||
button.selected {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
padding: 1px ;
|
|
||||||
}
|
|
||||||
case-indicator {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
entry {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
prompt {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
|
|
||||||
}
|
|
||||||
textbox-prompt-colon {
|
|
||||||
expand: false;
|
|
||||||
str: ":";
|
|
||||||
margin: 0px 0.3em 0em 0em ;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
@@ -1,14 +0,0 @@
|
|||||||
configuration {
|
|
||||||
modi: "window,run,ssh,combi";
|
|
||||||
font: "monospace 10";
|
|
||||||
terminal: "xfce4-terminal";
|
|
||||||
ssh-client: "ssh";
|
|
||||||
ssh-command: "{terminal} -e "{ssh-client} {host}"";
|
|
||||||
|
|
||||||
/* ! State: 'bg', 'fg', 'bgalt', 'hlbg', 'hlfg'
|
|
||||||
lines: 10;
|
|
||||||
line-padding: 5;
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
@theme "~/.config/rofi/mytheme.rasi"
|
|
216
config/rofi/themes/base.rasi
Normal file
@@ -0,0 +1,216 @@
|
|||||||
|
|
||||||
|
/*----Main Window */
|
||||||
|
window {
|
||||||
|
/* properties for window widget */
|
||||||
|
transparency: "real";
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
fullscreen: false;
|
||||||
|
width: 800px;
|
||||||
|
x-offset: 0px;
|
||||||
|
y-offset: 0px;
|
||||||
|
/* properties for all widgets */
|
||||||
|
enabled: true;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: @background-colour;
|
||||||
|
}
|
||||||
|
/*----- Main Box -----*/
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 30px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px 0px 0px 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
children: [ "inputbar", "listview" ];
|
||||||
|
}
|
||||||
|
/*----- Inputbar -----*/
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px 0px 10px 10px;
|
||||||
|
border: 0px;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @background-colour;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
children: [ "prompt", "entry" ];
|
||||||
|
}
|
||||||
|
prompt {
|
||||||
|
enabled: true;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
textbox-prompt-colon {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
str: "::";
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
entry {
|
||||||
|
enabled: true;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: text;
|
||||||
|
placeholder: "";
|
||||||
|
placeholder-color: inherit;
|
||||||
|
}
|
||||||
|
/*----- Listview -----*/
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
columns: 1;
|
||||||
|
lines: 12;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
spacing: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
cursor: "default";
|
||||||
|
}
|
||||||
|
scrollbar {
|
||||||
|
handle-width: 5px ;
|
||||||
|
handle-color: @handle-colour;
|
||||||
|
border-radius: 0px;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
}
|
||||||
|
/*----- Elements -----*/
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 5px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
element normal.normal {
|
||||||
|
background-color: var(normal-background);
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
element normal.urgent {
|
||||||
|
background-color: var(urgent-background);
|
||||||
|
text-color: var(urgent-foreground);
|
||||||
|
}
|
||||||
|
element normal.active {
|
||||||
|
background-color: var(active-background);
|
||||||
|
text-color: var(active-foreground);
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
background-color: var(alternate-background);
|
||||||
|
text-color: var(foreground-colour);
|
||||||
|
}
|
||||||
|
element selected.urgent {
|
||||||
|
background-color: var(selected-urgent-background);
|
||||||
|
text-color: var(selected-urgent-foreground);
|
||||||
|
}
|
||||||
|
element selected.active {
|
||||||
|
background-color: var(selected-active-background);
|
||||||
|
text-color: var(selected-active-foreground);
|
||||||
|
}
|
||||||
|
element alternate.normal {
|
||||||
|
background-color: var(alternate-normal-background);
|
||||||
|
text-color: var(alternate-normal-foreground);
|
||||||
|
}
|
||||||
|
element alternate.urgent {
|
||||||
|
background-color: var(alternate-urgent-background);
|
||||||
|
text-color: var(alternate-urgent-foreground);
|
||||||
|
}
|
||||||
|
element alternate.active {
|
||||||
|
background-color: var(alternate-active-background);
|
||||||
|
text-color: var(alternate-active-foreground);
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
size: 3ch;
|
||||||
|
cursor: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: inherit;
|
||||||
|
cursor: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
}
|
||||||
|
/*----- Mode Switcher -----*/
|
||||||
|
mode-switcher{
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
|
button {
|
||||||
|
padding: 10px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
button selected {
|
||||||
|
background-color: var(selected-normal-background);
|
||||||
|
text-color: var(selected-normal-foreground);
|
||||||
|
}
|
||||||
|
/*----- Message -----*/
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px 0px 0px 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
padding: 10px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
highlight: none;
|
||||||
|
placeholder-color: @foreground-colour;
|
||||||
|
blink: true;
|
||||||
|
markup: true;
|
||||||
|
}
|
||||||
|
error-message {
|
||||||
|
padding: 10px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @background-colour;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
|
|
25
config/rofi/themes/dark.rasi
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
* {
|
||||||
|
border-colour: #61AFEFFF;
|
||||||
|
handle-colour: #61AFEFFF;
|
||||||
|
background-colour: #1e1e1e;
|
||||||
|
foreground-colour: #FFFFFFFF;
|
||||||
|
alternate-background: #282B31FF;
|
||||||
|
normal-background: #1e1e1e;
|
||||||
|
normal-foreground: #FFFFFFFF;
|
||||||
|
urgent-background: #E06C75FF;
|
||||||
|
urgent-foreground: #1e1e1e;
|
||||||
|
active-background: #98C379FF;
|
||||||
|
active-foreground: #1e1e1e;
|
||||||
|
selected-normal-background: #61AFEFFF;
|
||||||
|
selected-normal-foreground: #1e1e1e;
|
||||||
|
selected-urgent-background: #98C379FF;
|
||||||
|
selected-urgent-foreground: #1e1e1e;
|
||||||
|
selected-active-background: #E06C75FF;
|
||||||
|
selected-active-foreground: #1e1e1e;
|
||||||
|
alternate-normal-background: #1e1e1e;
|
||||||
|
alternate-normal-foreground: #FFFFFFFF;
|
||||||
|
alternate-urgent-background: #E06C75FF;
|
||||||
|
alternate-urgent-foreground: #1e1e1e;
|
||||||
|
alternate-active-background: #98C379FF;
|
||||||
|
alternate-active-foreground: #1e1e1e;
|
||||||
|
}
|
25
config/rofi/themes/dracula.rasi
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
* {
|
||||||
|
border-colour: #bd93f9;
|
||||||
|
handle-colour: #bd93f9;
|
||||||
|
background-colour: #282a36;
|
||||||
|
foreground-colour: #ffffffff;
|
||||||
|
alternate-background: #6272a4;
|
||||||
|
normal-background: #282a36;
|
||||||
|
normal-foreground: #ffffffff;
|
||||||
|
urgent-background: #ff5555;
|
||||||
|
urgent-foreground: #282a36;
|
||||||
|
active-background: #50FA7B;
|
||||||
|
active-foreground: #282a36;
|
||||||
|
selected-normal-background: #bd93f9;
|
||||||
|
selected-normal-foreground: #282a36;
|
||||||
|
selected-urgent-background: #98c379ff;
|
||||||
|
selected-urgent-foreground: #282a36;
|
||||||
|
selected-active-background: #ff5555;
|
||||||
|
selected-active-foreground: #282a36;
|
||||||
|
alternate-normal-background: #282a36;
|
||||||
|
alternate-normal-foreground: #ffffffff;
|
||||||
|
alternate-urgent-background: #ff5555;
|
||||||
|
alternate-urgent-foreground: #282a36;
|
||||||
|
alternate-active-background: #98c379ff;
|
||||||
|
alternate-active-foreground: #282a36;
|
||||||
|
}
|
@@ -1,35 +0,0 @@
|
|||||||
[Configuration]
|
|
||||||
BackgroundMode=TERMINAL_BACKGROUND_TRANSPARENT
|
|
||||||
BackgroundDarkness=0.750000
|
|
||||||
MiscAlwaysShowTabs=FALSE
|
|
||||||
MiscBell=FALSE
|
|
||||||
MiscBellUrgent=FALSE
|
|
||||||
MiscBordersDefault=FALSE
|
|
||||||
MiscCursorBlinks=FALSE
|
|
||||||
MiscCursorShape=TERMINAL_CURSOR_SHAPE_BLOCK
|
|
||||||
MiscDefaultGeometry=132x43
|
|
||||||
MiscInheritGeometry=FALSE
|
|
||||||
MiscMenubarDefault=FALSE
|
|
||||||
MiscMouseAutohide=FALSE
|
|
||||||
MiscMouseWheelZoom=TRUE
|
|
||||||
MiscToolbarDefault=FALSE
|
|
||||||
MiscConfirmClose=FALSE
|
|
||||||
MiscCycleTabs=TRUE
|
|
||||||
MiscTabCloseButtons=TRUE
|
|
||||||
MiscTabCloseMiddleClick=TRUE
|
|
||||||
MiscTabPosition=GTK_POS_TOP
|
|
||||||
MiscHighlightUrls=TRUE
|
|
||||||
MiscMiddleClickOpensUri=FALSE
|
|
||||||
MiscCopyOnSelect=FALSE
|
|
||||||
MiscDefaultWorkingDir=
|
|
||||||
MiscRewrapOnResize=TRUE
|
|
||||||
MiscUseShiftArrowsToScroll=FALSE
|
|
||||||
MiscSlimTabs=TRUE
|
|
||||||
MiscNewTabAdjacent=FALSE
|
|
||||||
ScrollingUnlimited=TRUE
|
|
||||||
ScrollingBar=TERMINAL_SCROLLBAR_NONE
|
|
||||||
MiscShowRelaunchDialog=TRUE
|
|
||||||
ColorCursor=#c5c5c8c8c6c6
|
|
||||||
ColorForeground=#c5c5c8c8c6c6
|
|
||||||
ColorPalette=#28282a2a2e2e;#a5a542424242;#8c8c94944040;#dede93935f5f;#5f5f81819d9d;#858567678f8f;#5e5e8d8d8787;#707078788080;#37373b3b4141;#cccc66666666;#b5b5bdbd6868;#f0f0c6c67474;#8181a2a2bebe;#b2b29494bbbb;#8a8abebeb7b7;#c5c5c8c8c6c6
|
|
||||||
|
|
1
config/terminal/xfce4-term/terminalrc
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
/home/mastermindzh/dotfiles/config/terminalrc
|
37
config/terminalrc
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
[Configuration]
|
||||||
|
MiscAlwaysShowTabs=FALSE
|
||||||
|
MiscBell=FALSE
|
||||||
|
MiscBellUrgent=FALSE
|
||||||
|
MiscBordersDefault=FALSE
|
||||||
|
MiscCursorBlinks=FALSE
|
||||||
|
MiscCursorShape=TERMINAL_CURSOR_SHAPE_BLOCK
|
||||||
|
MiscDefaultGeometry=80x24
|
||||||
|
MiscInheritGeometry=FALSE
|
||||||
|
MiscMenubarDefault=FALSE
|
||||||
|
MiscMouseAutohide=FALSE
|
||||||
|
MiscMouseWheelZoom=TRUE
|
||||||
|
MiscToolbarDefault=FALSE
|
||||||
|
MiscConfirmClose=FALSE
|
||||||
|
MiscCycleTabs=TRUE
|
||||||
|
MiscTabCloseButtons=TRUE
|
||||||
|
MiscTabCloseMiddleClick=TRUE
|
||||||
|
MiscTabPosition=GTK_POS_TOP
|
||||||
|
MiscHighlightUrls=TRUE
|
||||||
|
MiscMiddleClickOpensUri=FALSE
|
||||||
|
MiscCopyOnSelect=FALSE
|
||||||
|
MiscShowRelaunchDialog=FALSE
|
||||||
|
MiscRewrapOnResize=TRUE
|
||||||
|
MiscUseShiftArrowsToScroll=FALSE
|
||||||
|
MiscSlimTabs=FALSE
|
||||||
|
MiscNewTabAdjacent=FALSE
|
||||||
|
MiscSearchDialogOpacity=100
|
||||||
|
MiscShowUnsafePasteDialog=FALSE
|
||||||
|
MiscRightClickAction=TERMINAL_RIGHT_CLICK_ACTION_CONTEXT_MENU
|
||||||
|
OverlayScrolling=TRUE
|
||||||
|
ScrollingUnlimited=TRUE
|
||||||
|
BackgroundDarkness=0.750000
|
||||||
|
ScrollingBar=TERMINAL_SCROLLBAR_NONE
|
||||||
|
ColorBackground=#1e1e1e1e1e1e
|
||||||
|
TitleInitial=
|
||||||
|
FontName=Ubuntu Mono 13
|
||||||
|
|
32
config/xfce4/thunar.xml
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<?xml version="1.1" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<channel name="thunar" version="1.0">
|
||||||
|
<property name="last-view" type="string" value="ThunarIconView"/>
|
||||||
|
<property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_100_PERCENT"/>
|
||||||
|
<property name="last-window-width" type="int" value="1415"/>
|
||||||
|
<property name="last-window-height" type="int" value="1846"/>
|
||||||
|
<property name="last-window-maximized" type="bool" value="true"/>
|
||||||
|
<property name="last-separator-position" type="int" value="439"/>
|
||||||
|
<property name="misc-single-click" type="bool" value="false"/>
|
||||||
|
<property name="misc-thumbnail-mode" type="string" value="THUNAR_THUMBNAIL_MODE_ALWAYS"/>
|
||||||
|
<property name="misc-thumbnail-draw-frames" type="bool" value="false"/>
|
||||||
|
<property name="misc-file-size-binary" type="bool" value="false"/>
|
||||||
|
<property name="misc-text-beside-icons" type="bool" value="false"/>
|
||||||
|
<property name="misc-change-window-icon" type="bool" value="true"/>
|
||||||
|
<property name="shortcuts-icon-emblems" type="bool" value="true"/>
|
||||||
|
<property name="tree-icon-emblems" type="bool" value="true"/>
|
||||||
|
<property name="misc-show-delete-action" type="bool" value="true"/>
|
||||||
|
<property name="last-show-hidden" type="bool" value="false"/>
|
||||||
|
<property name="misc-parallel-copy-mode" type="string" value="THUNAR_PARALLEL_COPY_MODE_ALWAYS"/>
|
||||||
|
<property name="last-splitview-separator-position" type="int" value="589"/>
|
||||||
|
<property name="last-side-pane" type="string" value="THUNAR_SIDEPANE_TYPE_TREE"/>
|
||||||
|
<property name="last-location-bar" type="string" value="ThunarLocationButtons"/>
|
||||||
|
<property name="last-details-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_38_PERCENT"/>
|
||||||
|
<property name="last-details-view-column-widths" type="string" value="50,50,177,50,50,50,50,50,634,50,50,104,50,173"/>
|
||||||
|
<property name="last-sort-column" type="string" value="THUNAR_COLUMN_TYPE"/>
|
||||||
|
<property name="last-sort-order" type="string" value="GTK_SORT_ASCENDING"/>
|
||||||
|
<property name="misc-directory-specific-settings" type="bool" value="true"/>
|
||||||
|
<property name="last-renamer-dialog-width" type="int" value="942"/>
|
||||||
|
<property name="last-renamer-dialog-height" type="int" value="520"/>
|
||||||
|
<property name="last-renamer-dialog-maximized" type="bool" value="false"/>
|
||||||
|
</channel>
|
8
config/xfce4/xfce4-power-manager.xml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.1" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<channel name="xfce4-power-manager" version="1.0">
|
||||||
|
<property name="xfce4-power-manager" type="empty">
|
||||||
|
<property name="brightness-switch" type="int" value="0"/>
|
||||||
|
<property name="brightness-switch-restore-on-exit" type="int" value="-1"/>
|
||||||
|
</property>
|
||||||
|
</channel>
|
8
config/xfce4/xfce4-settings-manager.xml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<channel name="xfce4-settings-manager" version="1.0">
|
||||||
|
<property name="last" type="empty">
|
||||||
|
<property name="window-width" type="int" value="640"/>
|
||||||
|
<property name="window-height" type="int" value="500"/>
|
||||||
|
</property>
|
||||||
|
</channel>
|
54
config/xfce4/xfce4-terminal.xml
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
<?xml version="1.1" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<channel name="xfce4-terminal" version="1.0">
|
||||||
|
<property name="background-darkness" type="double" value="0.90000000000000002"/>
|
||||||
|
<property name="color-background" type="string" value="#ffffff"/>
|
||||||
|
<property name="font-name" type="string" value="Ubuntu Mono 14"/>
|
||||||
|
<property name="misc-always-show-tabs" type="bool" value="false"/>
|
||||||
|
<property name="misc-bell" type="bool" value="false"/>
|
||||||
|
<property name="misc-bell-urgent" type="bool" value="false"/>
|
||||||
|
<property name="misc-borders-default" type="bool" value="false"/>
|
||||||
|
<property name="misc-cursor-blinks" type="bool" value="false"/>
|
||||||
|
<property name="misc-cursor-shape" type="string" value="TERMINAL_CURSOR_SHAPE_BLOCK"/>
|
||||||
|
<property name="misc-default-geometry" type="string" value="80x24"/>
|
||||||
|
<property name="misc-inherit-geometry" type="bool" value="false"/>
|
||||||
|
<property name="misc-menubar-default" type="bool" value="false"/>
|
||||||
|
<property name="misc-mouse-autohide" type="bool" value="false"/>
|
||||||
|
<property name="misc-mouse-wheel-zoom" type="bool" value="true"/>
|
||||||
|
<property name="misc-toolbar-default" type="bool" value="false"/>
|
||||||
|
<property name="misc-confirm-close" type="bool" value="false"/>
|
||||||
|
<property name="misc-cycle-tabs" type="bool" value="true"/>
|
||||||
|
<property name="misc-tab-close-buttons" type="bool" value="true"/>
|
||||||
|
<property name="misc-tab-close-middle-click" type="bool" value="true"/>
|
||||||
|
<property name="misc-tab-position" type="string" value="GTK_POS_TOP"/>
|
||||||
|
<property name="misc-highlight-urls" type="bool" value="true"/>
|
||||||
|
<property name="misc-middle-click-opens-uri" type="bool" value="false"/>
|
||||||
|
<property name="misc-copy-on-select" type="bool" value="false"/>
|
||||||
|
<property name="misc-show-relaunch-dialog" type="bool" value="false"/>
|
||||||
|
<property name="misc-rewrap-on-resize" type="bool" value="true"/>
|
||||||
|
<property name="misc-slim-tabs" type="bool" value="false"/>
|
||||||
|
<property name="misc-new-tab-adjacent" type="bool" value="false"/>
|
||||||
|
<property name="misc-search-dialog-opacity" type="uint" value="100"/>
|
||||||
|
<property name="misc-show-unsafe-paste-dialog" type="bool" value="false"/>
|
||||||
|
<property name="misc-right-click-action" type="string" value="TERMINAL_RIGHT_CLICK_ACTION_CONTEXT_MENU"/>
|
||||||
|
<property name="scrolling-bar" type="string" value="TERMINAL_SCROLLBAR_NONE"/>
|
||||||
|
<property name="overlay-scrolling" type="bool" value="true"/>
|
||||||
|
<property name="scrolling-unlimited" type="bool" value="true"/>
|
||||||
|
<property name="title-initial" type="string" value=""/>
|
||||||
|
<property name="background-mode" type="string" value="TERMINAL_BACKGROUND_TRANSPARENT"/>
|
||||||
|
<property name="color-use-theme" type="bool" value="true"/>
|
||||||
|
<property name="font-use-system" type="bool" value="false"/>
|
||||||
|
<property name="color-background-vary" type="bool" value="false"/>
|
||||||
|
<property name="color-foreground" type="string" value="#000000"/>
|
||||||
|
<property name="color-cursor-foreground" type="string" value=""/>
|
||||||
|
<property name="color-cursor" type="string" value=""/>
|
||||||
|
<property name="color-cursor-use-default" type="bool" value="true"/>
|
||||||
|
<property name="color-selection" type="string" value=""/>
|
||||||
|
<property name="color-selection-background" type="string" value=""/>
|
||||||
|
<property name="color-selection-use-default" type="bool" value="true"/>
|
||||||
|
<property name="color-bold" type="string" value=""/>
|
||||||
|
<property name="color-bold-use-default" type="bool" value="true"/>
|
||||||
|
<property name="color-palette" type="string" value="#000000;#cd0000;#00cd00;#cdcd00;#0000cd;#cd00cd;#00cdcd;#e5e5e5;#7f7f7f;#ff0000;#00ff00;#ffff00;#5c5cff;#ff00ff;#00ffff;#ffffff"/>
|
||||||
|
<property name="color-bold-is-bright" type="bool" value="true"/>
|
||||||
|
<property name="tab-activity-color" type="string" value="#aa0000"/>
|
||||||
|
</channel>
|
44
config/xfce4/xsettings.xml
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<channel name="xsettings" version="1.0">
|
||||||
|
<property name="Net" type="empty">
|
||||||
|
<property name="ThemeName" type="string" value="Adwaita-dark"/>
|
||||||
|
<property name="IconThemeName" type="empty"/>
|
||||||
|
<property name="DoubleClickTime" type="empty"/>
|
||||||
|
<property name="DoubleClickDistance" type="empty"/>
|
||||||
|
<property name="DndDragThreshold" type="empty"/>
|
||||||
|
<property name="CursorBlink" type="empty"/>
|
||||||
|
<property name="CursorBlinkTime" type="empty"/>
|
||||||
|
<property name="SoundThemeName" type="empty"/>
|
||||||
|
<property name="EnableEventSounds" type="empty"/>
|
||||||
|
<property name="EnableInputFeedbackSounds" type="empty"/>
|
||||||
|
</property>
|
||||||
|
<property name="Xft" type="empty">
|
||||||
|
<property name="DPI" type="empty"/>
|
||||||
|
<property name="Antialias" type="empty"/>
|
||||||
|
<property name="Hinting" type="empty"/>
|
||||||
|
<property name="HintStyle" type="empty"/>
|
||||||
|
<property name="RGBA" type="empty"/>
|
||||||
|
</property>
|
||||||
|
<property name="Gtk" type="empty">
|
||||||
|
<property name="CanChangeAccels" type="empty"/>
|
||||||
|
<property name="ColorPalette" type="empty"/>
|
||||||
|
<property name="FontName" type="string" value="Ubuntu 10"/>
|
||||||
|
<property name="MonospaceFontName" type="string" value="Ubuntu Mono 10"/>
|
||||||
|
<property name="IconSizes" type="empty"/>
|
||||||
|
<property name="KeyThemeName" type="empty"/>
|
||||||
|
<property name="ToolbarStyle" type="empty"/>
|
||||||
|
<property name="ToolbarIconSize" type="empty"/>
|
||||||
|
<property name="MenuImages" type="empty"/>
|
||||||
|
<property name="ButtonImages" type="empty"/>
|
||||||
|
<property name="MenuBarAccel" type="empty"/>
|
||||||
|
<property name="CursorThemeName" type="empty"/>
|
||||||
|
<property name="CursorThemeSize" type="empty"/>
|
||||||
|
<property name="DecorationLayout" type="empty"/>
|
||||||
|
<property name="DialogsUseHeader" type="empty"/>
|
||||||
|
<property name="TitlebarMiddleClick" type="empty"/>
|
||||||
|
</property>
|
||||||
|
<property name="Gdk" type="empty">
|
||||||
|
<property name="WindowScalingFactor" type="empty"/>
|
||||||
|
</property>
|
||||||
|
</channel>
|
40
dependencies/aur.txt
vendored
@@ -1,21 +1,39 @@
|
|||||||
visual-studio-code-bin
|
visual-studio-code-bin
|
||||||
i3blocks-contrib
|
i3blocks-contrib
|
||||||
enpass-bin
|
|
||||||
insync
|
insync
|
||||||
ttf-font-awesome-4
|
|
||||||
awesome-terminal-fonts-git
|
awesome-terminal-fonts-git
|
||||||
otf-droid-sans-mono-powerline-git
|
|
||||||
downgrade
|
downgrade
|
||||||
powerline-rs
|
oh-my-posh
|
||||||
dive
|
dive
|
||||||
xorg-xev
|
gnome-text-editor
|
||||||
|
chili-sddm-theme
|
||||||
|
awf-gtk4
|
||||||
|
seafile
|
||||||
networkmanager-l2tp
|
networkmanager-l2tp
|
||||||
snapd
|
xorg-xev
|
||||||
azure-cli
|
nvm
|
||||||
notify-osd-customizable
|
hadolint-bin
|
||||||
notifyconf
|
|
||||||
dotnet-host-bin
|
dotnet-host-bin
|
||||||
sysmontask
|
|
||||||
keychain
|
keychain
|
||||||
nomachine
|
nomachine
|
||||||
chili-sddm-theme
|
otf-droid-sans-mono-powerline-git
|
||||||
|
sysmontask
|
||||||
|
rofi-greenclip
|
||||||
|
|
||||||
|
# audio
|
||||||
|
pipewire-pulse
|
||||||
|
pipewire-alsa
|
||||||
|
pipewire-jack
|
||||||
|
tidal-hifi
|
||||||
|
|
||||||
|
# theme
|
||||||
|
dracula-gtk-theme-full
|
||||||
|
dracula-cursors-git
|
||||||
|
dracula-icons-theme
|
||||||
|
dracula-xresources-git
|
||||||
|
|
||||||
|
# slow stuff
|
||||||
|
azure-cli
|
||||||
|
seafile-client
|
||||||
|
199
dependencies/pacman.txt
vendored
@@ -1,52 +1,65 @@
|
|||||||
|
#
|
||||||
|
# Core system
|
||||||
|
#
|
||||||
base-devel
|
base-devel
|
||||||
|
git
|
||||||
|
wget
|
||||||
|
libconfig
|
||||||
|
wmctrl
|
||||||
|
acpi
|
||||||
|
ntp
|
||||||
|
openssh
|
||||||
|
gvfs-smb
|
||||||
|
sddm
|
||||||
|
polkit-gnome
|
||||||
|
gnome-keyring
|
||||||
|
libgnome-keyring
|
||||||
|
python-keyring
|
||||||
|
libsecret
|
||||||
|
seahorse
|
||||||
|
reflector
|
||||||
|
gtk-engines
|
||||||
|
kubectl
|
||||||
|
less
|
||||||
|
smartmontools
|
||||||
|
ethtool
|
||||||
|
|
||||||
|
#
|
||||||
|
# i3wm
|
||||||
|
#
|
||||||
|
i3-gaps
|
||||||
|
i3lock
|
||||||
|
xorg-xrandr
|
||||||
|
|
||||||
|
#
|
||||||
|
# Xorg stuff
|
||||||
|
#
|
||||||
xorg-server
|
xorg-server
|
||||||
xorg-xinit
|
xorg-xinit
|
||||||
mesa
|
mesa
|
||||||
i3-gaps
|
|
||||||
rsync
|
|
||||||
i3lock
|
|
||||||
feh
|
|
||||||
scrot
|
|
||||||
arandr
|
|
||||||
xfce4-terminal
|
|
||||||
ttf-font-awesome
|
|
||||||
sushi
|
|
||||||
libconfig
|
|
||||||
compton
|
|
||||||
lxappearance
|
|
||||||
arc-gtk-theme
|
|
||||||
rofi
|
|
||||||
i3blocks
|
|
||||||
wmctrl
|
|
||||||
zenity
|
zenity
|
||||||
xorg-xrandr
|
xsettingsd
|
||||||
networkmanager
|
|
||||||
eog
|
#
|
||||||
python
|
# Programming
|
||||||
python-pip
|
#
|
||||||
neofetch
|
|
||||||
git
|
|
||||||
scrot
|
|
||||||
acpi
|
|
||||||
imagemagick
|
|
||||||
docker
|
|
||||||
docker-compose
|
|
||||||
htop
|
|
||||||
powertop
|
|
||||||
network-manager-applet
|
|
||||||
pavucontrol
|
|
||||||
alsa-utils
|
|
||||||
ntp
|
|
||||||
xclip
|
|
||||||
openssh
|
|
||||||
nodejs
|
nodejs
|
||||||
npm
|
npm
|
||||||
|
python
|
||||||
|
python-pip
|
||||||
|
pyenv
|
||||||
|
dotnet-host
|
||||||
|
dotnet-runtime
|
||||||
|
dotnet-sdk
|
||||||
|
aspnet-runtime
|
||||||
|
|
||||||
|
#
|
||||||
|
# Codecs
|
||||||
|
#
|
||||||
a52dec
|
a52dec
|
||||||
faac
|
faac
|
||||||
faad2
|
faad2
|
||||||
flac
|
flac
|
||||||
jasper
|
|
||||||
lame
|
|
||||||
libdca
|
libdca
|
||||||
libdv
|
libdv
|
||||||
libmad
|
libmad
|
||||||
@@ -55,38 +68,88 @@ libtheora
|
|||||||
libvorbis
|
libvorbis
|
||||||
libxv
|
libxv
|
||||||
wavpack
|
wavpack
|
||||||
|
jasper
|
||||||
|
lame
|
||||||
x264
|
x264
|
||||||
xvidcore
|
xvidcore
|
||||||
gvfs-smb
|
|
||||||
gnome-screenshot
|
#
|
||||||
|
# Applications
|
||||||
|
#
|
||||||
|
alsa-utils
|
||||||
|
arandr
|
||||||
|
autorandr
|
||||||
bash-completion
|
bash-completion
|
||||||
flameshot
|
bat
|
||||||
otf-font-awesome
|
bitwarden
|
||||||
openvpn
|
|
||||||
networkmanager-openvpn
|
|
||||||
w3m
|
|
||||||
system-config-printer
|
|
||||||
nautilus
|
|
||||||
nautilus-share
|
|
||||||
wget
|
|
||||||
pyenv
|
|
||||||
jq
|
|
||||||
firefox
|
|
||||||
dotnet-host
|
|
||||||
dotnet-runtime
|
|
||||||
dotnet-sdk
|
|
||||||
aspnet-runtime
|
|
||||||
clamav
|
|
||||||
clamtk
|
|
||||||
keychain
|
|
||||||
thefuck
|
|
||||||
peek
|
|
||||||
blueman
|
|
||||||
pulseaudio-bluetooth
|
|
||||||
bluez
|
bluez
|
||||||
bluez-libs
|
bluez-libs
|
||||||
sddm
|
bluez-utils
|
||||||
polkit-gnome
|
clamav
|
||||||
gnome-keyring
|
clamtk
|
||||||
libsecret
|
ctop
|
||||||
seahorse
|
cups
|
||||||
|
docker
|
||||||
|
docker-compose
|
||||||
|
duf
|
||||||
|
engrampa
|
||||||
|
loupe
|
||||||
|
feh
|
||||||
|
firefox
|
||||||
|
flameshot
|
||||||
|
gtk-engine-murrine
|
||||||
|
gnome-themes-standard
|
||||||
|
gnome-themes-extra
|
||||||
|
htop
|
||||||
|
i3blocks
|
||||||
|
imagemagick
|
||||||
|
jq
|
||||||
|
keychain
|
||||||
|
lxappearance
|
||||||
|
mpv
|
||||||
|
neofetch
|
||||||
|
network-manager-applet
|
||||||
|
networkmanager
|
||||||
|
networkmanager-l2tp
|
||||||
|
obsidian
|
||||||
|
papirus-icon-theme
|
||||||
|
pavucontrol
|
||||||
|
peek
|
||||||
|
picom
|
||||||
|
polybar
|
||||||
|
poppler
|
||||||
|
powertop
|
||||||
|
rofi
|
||||||
|
rofi-emoji
|
||||||
|
rofi-calc
|
||||||
|
xdotool
|
||||||
|
rsync
|
||||||
|
scrot
|
||||||
|
scrot
|
||||||
|
strongswan
|
||||||
|
system-config-printer
|
||||||
|
system-config-printer
|
||||||
|
thefuck
|
||||||
|
thunar
|
||||||
|
thunar-archive-plugin
|
||||||
|
dunst
|
||||||
|
yq
|
||||||
|
ufw
|
||||||
|
gufw
|
||||||
|
w3m
|
||||||
|
blueberry
|
||||||
|
xclip
|
||||||
|
xfce4-terminal
|
||||||
|
xorg-xkill
|
||||||
|
pass
|
||||||
|
evince
|
||||||
|
tlp
|
||||||
|
libreoffice
|
||||||
|
|
||||||
|
# fonts
|
||||||
|
fontconfig
|
||||||
|
noto-fonts-emoji
|
||||||
|
otf-font-awesome
|
||||||
|
ttf-font-awesome
|
||||||
|
ttf-ubuntu-font-family
|
||||||
|
fzf
|
||||||
|
5
dependencies/pip.txt
vendored
@@ -1,5 +0,0 @@
|
|||||||
msrestazure
|
|
||||||
azure.common
|
|
||||||
azure.mgmt
|
|
||||||
azure.mgmt.containerservice
|
|
||||||
azure.graphrbac
|
|
13
docs/afterinstall.md
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# after install
|
||||||
|
|
||||||
|
<!-- toc -->
|
||||||
|
|
||||||
|
- [after install](#after-install)
|
||||||
|
- [Set up vscode settings sync](#set-up-vscode-settings-sync)
|
||||||
|
|
||||||
|
<!-- tocstop -->
|
||||||
|
|
||||||
|
## Set up vscode settings sync
|
||||||
|
|
||||||
|
Simply install [zokugun's setting sync](https://github.com/zokugun/vscode-sync-settings).
|
||||||
|
The config file [config/code/sync-settings.yml](./../config/code/sync-settings.yml) will already point to the correct repo
|
142
i3/config
@@ -13,30 +13,19 @@ floating_modifier $mod
|
|||||||
# Constants #
|
# Constants #
|
||||||
############################################
|
############################################
|
||||||
|
|
||||||
set $urgentTextBackgroundColour #a6a6a6
|
set $workspace1 "1: "
|
||||||
set $primaryBackgroundColour #1e1e1e
|
|
||||||
set $secondaryBackgroundColour #252526
|
|
||||||
set $tertiaryBackgroundColour #333333
|
|
||||||
|
|
||||||
set $textColour #848484
|
|
||||||
set $focusedTextColour #f6f6f7
|
|
||||||
|
|
||||||
set $statusLineColour #d1d4e0
|
|
||||||
set $urgentTextColour #ef5350
|
|
||||||
set $indicatorColour #fcc09e
|
|
||||||
|
|
||||||
set $workspace1 "1: "
|
|
||||||
set $workspace2 "2: "
|
set $workspace2 "2: "
|
||||||
set $workspace3 "3: "
|
set $workspace3 "3: "
|
||||||
set $workspace4 "4: "
|
set $workspace4 "4: "
|
||||||
set $workspace5 "5: "
|
set $workspace5 "5: "
|
||||||
set $workspace6 "6: "
|
set $workspace6 "6: "
|
||||||
set $workspace7 "7: "
|
set $workspace7 "7: "
|
||||||
set $workspace8 "8: "
|
set $workspace8 "8: "
|
||||||
set $workspace9 "9: "
|
set $workspace9 "9: "
|
||||||
set $workspace10 "10: "
|
set $workspace10 "10: "
|
||||||
set $workspace11 " VM/Remote"
|
set $workspace11 "11: "
|
||||||
set $workspace12 " Enpass"
|
set $workspace12 "12: "
|
||||||
|
set $workspace13 "13: "
|
||||||
|
|
||||||
# scripts
|
# scripts
|
||||||
set $tidal ~/.config/i3/scripts/tidal-cli.sh
|
set $tidal ~/.config/i3/scripts/tidal-cli.sh
|
||||||
@@ -60,6 +49,10 @@ bindsym $mod+Shift+Down move down
|
|||||||
bindsym $mod+Shift+Up move up
|
bindsym $mod+Shift+Up move up
|
||||||
bindsym $mod+Shift+Right move right
|
bindsym $mod+Shift+Right move right
|
||||||
|
|
||||||
|
# move focused workspace
|
||||||
|
bindsym $mod+Ctrl+Right move workspace to output right
|
||||||
|
bindsym $mod+Ctrl+Left move workspace to output left
|
||||||
|
|
||||||
# split in horizontal orientation
|
# split in horizontal orientation
|
||||||
bindsym $mod+h split h
|
bindsym $mod+h split h
|
||||||
|
|
||||||
@@ -87,9 +80,21 @@ bindsym $mod+Shift+c reload
|
|||||||
bindsym $mod+Shift+r restart
|
bindsym $mod+Shift+r restart
|
||||||
|
|
||||||
# exit i3 (logs you out of your X session)
|
# exit i3 (logs you out of your X session)
|
||||||
bindsym $mod+Shift+Escape exec "i3-nagbar -t warning -m 'Do you really want to exit i3?' -b 'Yes, exit i3' 'i3-msg exit'"
|
set $mode_power "Exit (L)ogout, (R)eboot, (S)hutdown"
|
||||||
bindsym $mod+Shift+Delete exec "i3-nagbar -t alert -m 'Do you really want to shut down?' -b 'Yes, Shutdown' 'shutdown -h now'"
|
|
||||||
bindsym $mod+Shift+BackSpace exec "i3-nagbar -t error -m 'Do you really want to reboot?' -b 'Yes, Reboot' 'reboot'"
|
mode $mode_power {
|
||||||
|
bindsym $mod+r exec systemctl reboot
|
||||||
|
bindsym $mod+l exit
|
||||||
|
bindsym $mod+s exec systemctl poweroff
|
||||||
|
|
||||||
|
# back to normal: Enter or Escape
|
||||||
|
bindsym Return mode "default"
|
||||||
|
bindsym Escape mode "default"
|
||||||
|
}
|
||||||
|
|
||||||
|
bindsym $mod+Shift+Delete mode $mode_power
|
||||||
|
bindsym $mod+Shift+Escape mode $mode_power
|
||||||
|
bindsym $mod+Shift+Backspace mode $mode_power
|
||||||
|
|
||||||
# focus on the parent window
|
# focus on the parent window
|
||||||
bindsym $mod+shift+alt+p focus parent
|
bindsym $mod+shift+alt+p focus parent
|
||||||
@@ -110,26 +115,35 @@ mode "resize" {
|
|||||||
bindsym $mod+r mode "resize"
|
bindsym $mod+r mode "resize"
|
||||||
|
|
||||||
# Lock the computer
|
# Lock the computer
|
||||||
bindsym $mod+l exec /bin/bash ~/.config/i3/scripts/i3lock.sh
|
bindsym $mod+l exec /bin/bash ~/.config/i3/scripts/lock.sh
|
||||||
|
|
||||||
# Suspend the computer
|
# Suspend the computer
|
||||||
bindsym $mod+shift+l exec /bin/bash ~/.config/i3/scripts/suspend.sh
|
bindsym $mod+shift+l exec /bin/bash ~/.config/i3/scripts/suspend.sh
|
||||||
|
|
||||||
|
# Workspace info popup
|
||||||
|
bindsym $mod+shift+Tab exec /bin/bash ~/dotfiles/i3/scripts/visibleWorkspaces.sh
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
# Application Keys #
|
# Application Keys #
|
||||||
############################################
|
############################################
|
||||||
bindsym $mod+Return exec xfce4-terminal # terminal
|
bindsym $mod+Return exec xfce4-terminal # terminal
|
||||||
bindsym $mod+e exec nautilus # File manager
|
bindsym $mod+shift+Return exec xfce4-terminal --drop-down # terminal
|
||||||
|
bindsym $mod+e exec thunar # File manager
|
||||||
bindsym Print exec flameshot screen -d 0 -p ~/Pictures/Screenshots # Fullscreen screenshot
|
bindsym Print exec flameshot screen -d 0 -p ~/Pictures/Screenshots # Fullscreen screenshot
|
||||||
bindsym $mod+Print exec flameshot gui # Show screenshot window
|
bindsym $mod+Print exec --no-startup-id sh -c 'QT_QPA_PLATFORM=xcb QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_ENABLE_HIGHDPI_SCALING=0 QT_SCALE_FACTOR=1 flameshot gui' # Show screenshot window
|
||||||
bindsym $mod+shift+b exec /bin/bash ~/.config/i3/scripts/brightness.sh
|
bindsym $mod+shift+Print exec flameshot launcher # Show settings window (delay) then show screenshot window
|
||||||
bindsym control+shift+Escape exec sysmontask
|
bindsym $mod+shift+b exec /bin/bash ~/.config/i3/scripts/brightness.sh # set brightness
|
||||||
|
bindsym control+shift+Escape exec sysmontask # system monitor
|
||||||
|
bindsym $mod+BackSpace exec autorandr --change undocked # reset to laptop view
|
||||||
|
|
||||||
# Rofi
|
# Rofi
|
||||||
bindsym $mod+d exec "rofi -show run"
|
bindsym $mod+d exec "rofi -show drun"
|
||||||
bindsym $mod+Tab exec "rofi -show"
|
bindsym $mod+Tab exec "rofi -show window"
|
||||||
bindsym $mod+s exec "rofi -show ssh"
|
bindsym $mod+s exec "rofi -show ssh"
|
||||||
|
bindsym $mod+c exec "rofi -show calc"
|
||||||
bindsym $mod+n exec $vpnmanager
|
bindsym $mod+n exec $vpnmanager
|
||||||
|
bindsym $mod+colon exec "rofi -show emoji"
|
||||||
|
bindsym $mod+shift+v exec "rofi -modi 'clipboard:greenclip print' -show clipboard -run-command '{cmd}'"
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
# Media keys #
|
# Media keys #
|
||||||
@@ -168,6 +182,7 @@ bindsym $mod+9 workspace $workspace9
|
|||||||
bindsym $mod+0 workspace $workspace10
|
bindsym $mod+0 workspace $workspace10
|
||||||
bindsym $mod+w workspace $workspace11
|
bindsym $mod+w workspace $workspace11
|
||||||
bindsym $mod+p workspace $workspace12
|
bindsym $mod+p workspace $workspace12
|
||||||
|
bindsym $mod+g workspace $workspace13
|
||||||
|
|
||||||
# move focused container to workspace
|
# move focused container to workspace
|
||||||
bindsym $mod+Shift+1 move container to workspace $workspace1
|
bindsym $mod+Shift+1 move container to workspace $workspace1
|
||||||
@@ -182,41 +197,29 @@ bindsym $mod+Shift+9 move container to workspace $workspace9
|
|||||||
bindsym $mod+Shift+0 move container to workspace $workspace10
|
bindsym $mod+Shift+0 move container to workspace $workspace10
|
||||||
bindsym $mod+Shift+w move container to workspace $workspace11
|
bindsym $mod+Shift+w move container to workspace $workspace11
|
||||||
bindsym $mod+Shift+p move container to workspace $workspace12
|
bindsym $mod+Shift+p move container to workspace $workspace12
|
||||||
|
bindsym $mod+Shift+g move container to workspace $workspace13
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
# Appearance settings #
|
# Appearance settings #
|
||||||
############################################
|
############################################
|
||||||
# Set the default font
|
# Set the default font
|
||||||
font pango:Liberation sans 13
|
font pango:Ubuntu regular 12
|
||||||
|
#new_window 1pixel
|
||||||
# Bar decoration
|
|
||||||
bar {
|
|
||||||
status_command i3blocks -c ~/.config/i3/i3blocks.conf
|
|
||||||
position top
|
|
||||||
strip_workspace_numbers no
|
|
||||||
tray_output primary
|
|
||||||
colors {
|
|
||||||
separator $textColour
|
|
||||||
background $primaryBackgroundColour
|
|
||||||
statusline $statusLineColour
|
|
||||||
# border background text
|
|
||||||
focused_workspace $primaryBackgroundColour $primaryBackgroundColour $focusedTextColour
|
|
||||||
active_workspace $primaryBackgroundColour $secondaryBackgroundColour $textColour
|
|
||||||
inactive_workspace $primaryBackgroundColour $primaryBackgroundColour $textColour
|
|
||||||
urgent_workspace $primaryBackgroundColour $primaryBackgroundColour $urgentTextColour
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
new_window 1pixel
|
|
||||||
hide_edge_borders both
|
hide_edge_borders both
|
||||||
|
|
||||||
# Window Colours
|
# Window Colours
|
||||||
# border background text indicator
|
# class border bground text indicator child_border
|
||||||
client.focused $primaryBackgroundColour $primaryBackgroundColour $focusedTextColour $indicatorColour
|
# dark
|
||||||
client.focused_inactive $secondaryBackgroundColour $secondaryBackgroundColour $textColour $indicatorColour
|
# client.focused #1e1e1e #1e1e1e #f6f6f7 #fcc09e
|
||||||
client.unfocused $secondaryBackgroundColour $secondaryBackgroundColour $textColour $indicatorColour
|
# client.focused_inactive #252526 #252526 #848484 #fcc09e
|
||||||
client.urgent $secondaryBackgroundColour $urgentTextBackgroundColour $urgentTextColour $indicatorColour
|
# client.unfocused #252526 #252526 #848484 #fcc09e
|
||||||
|
# client.urgent #252526 #a6a6a6 #ef5350 #fcc09e
|
||||||
|
# dracula
|
||||||
|
client.focused #BD93F9 #BD93F9 #F8F8F2 #BD93F9 #BD93F9
|
||||||
|
client.focused_inactive #44475A #44475A #F8F8F2 #44475A #44475A
|
||||||
|
client.unfocused #282A36 #282A36 #BFBFBF #282A36 #282A36
|
||||||
|
client.urgent #44475A #FF5555 #F8F8F2 #FF5555 #FF5555
|
||||||
|
client.placeholder #282A36 #282A36 #F8F8F2 #282A36 #282A36
|
||||||
|
|
||||||
# Floating windows
|
# Floating windows
|
||||||
for_window [class="Pavucontrol"] floating enable
|
for_window [class="Pavucontrol"] floating enable
|
||||||
@@ -226,17 +229,20 @@ for_window [class="Eog"] floating enable
|
|||||||
for_window [title="Tidal-hifi - settings"] floating enable
|
for_window [title="Tidal-hifi - settings"] floating enable
|
||||||
for_window [class="Sysmontask"] floating enable
|
for_window [class="Sysmontask"] floating enable
|
||||||
for_window [class="Sysmontask"] resize set 930 665
|
for_window [class="Sysmontask"] resize set 930 665
|
||||||
|
for_window [instance="Godot_Engine"] floating enable
|
||||||
|
for_window [class="Alert"] floating enable
|
||||||
|
for_window [class="org.gnome.FileRoller"] floating enable
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
# Workspace specific tools #
|
# Workspace specific tools #
|
||||||
# Use xprop to determine class #
|
# Use xprop to determine class #
|
||||||
############################################
|
############################################
|
||||||
assign [class="Enpass-Desktop"] $workspace12
|
assign [class="Bitwarden"] $workspace12 # moves all windows... including the browser popup
|
||||||
assign [class="VirtualBox Machine"] $workspace11
|
assign [class="VirtualBox Machine"] $workspace11
|
||||||
|
|
||||||
# database stuff
|
|
||||||
assign [class="MongoDB Compass"] $workspace8
|
assign [class="MongoDB Compass"] $workspace8
|
||||||
assign [class="robo3t"] $workspace8
|
assign [class="robo3t"] $workspace8
|
||||||
|
assign [class="Brave-browser"] $workspace9
|
||||||
|
assign [class="obsidian"] $workspace7
|
||||||
assign [class="Mysql-workbench-bin"] $workspace8
|
assign [class="Mysql-workbench-bin"] $workspace8
|
||||||
assign [class="azuredatastudio"] $workspace8
|
assign [class="azuredatastudio"] $workspace8
|
||||||
assign [class="beekeeper"] $workspace8
|
assign [class="beekeeper"] $workspace8
|
||||||
@@ -245,7 +251,7 @@ assign [class="beekeeper"] $workspace8
|
|||||||
# i3-gaps #
|
# i3-gaps #
|
||||||
############################################
|
############################################
|
||||||
# Disable window titlebars entirely
|
# Disable window titlebars entirely
|
||||||
for_window [class="^.*"] border pixel 2
|
for_window [class="^.*"] border pixel 0
|
||||||
|
|
||||||
# Set inner/outer gaps
|
# Set inner/outer gaps
|
||||||
gaps inner 10
|
gaps inner 10
|
||||||
@@ -262,13 +268,13 @@ smart_borders on
|
|||||||
# Smart gaps (gaps used if only more than one container on the workspace)
|
# Smart gaps (gaps used if only more than one container on the workspace)
|
||||||
smart_gaps on
|
smart_gaps on
|
||||||
|
|
||||||
# Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps.
|
# Press $mod+Shift+end to enter the gap mode. Choose o or i for modifying outer/inner gaps.
|
||||||
# Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace).
|
# Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace).
|
||||||
# If you also press Shift with these keys, the change will be global for all workspaces.
|
# If you also press Shift with these keys, the change will be global for all workspaces.
|
||||||
set $mode_gaps Gaps: (o) outer, (i) inner
|
set $mode_gaps Gaps: (o) outer, (i) inner
|
||||||
set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
|
set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
|
||||||
set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
|
set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
|
||||||
bindsym $mod+Shift+g mode "$mode_gaps"
|
bindsym $mod+Shift+End mode "$mode_gaps"
|
||||||
|
|
||||||
mode "$mode_gaps" {
|
mode "$mode_gaps" {
|
||||||
bindsym o mode "$mode_gaps_outer"
|
bindsym o mode "$mode_gaps_outer"
|
||||||
@@ -305,10 +311,18 @@ mode "$mode_gaps_outer" {
|
|||||||
############################################
|
############################################
|
||||||
# Autorun #
|
# Autorun #
|
||||||
############################################
|
############################################
|
||||||
|
# exec_always --no-startup-id picom -b
|
||||||
|
exec_always feh --bg-fill $(find ~/Pictures/wallpapers/ -type f -name "*" | shuf -n 1)
|
||||||
|
exec_always --no-startup-id ~/.config/polybar/launch.sh
|
||||||
|
exec --no-startup-id systemctl --user start xsettingsd
|
||||||
exec --no-startup-id i3-msg 'workspace $workspace2; exec xfce4-terminal' && i3-msg 'workspace $workspace1'
|
exec --no-startup-id i3-msg 'workspace $workspace2; exec xfce4-terminal' && i3-msg 'workspace $workspace1'
|
||||||
exec --no-startup-id i3-msg 'workspace $workspace12; exec enpass'
|
exec --no-startup-id i3-msg 'workspace $workspace12; exec bitwarden-desktop'
|
||||||
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||||
exec --no-startup-id nm-applet
|
exec --no-startup-id nm-applet
|
||||||
exec_always feh --bg-scale $(find ~/Pictures/wallpapers/ -type f -name "*" | shuf -n 1)
|
exec --no-startup-id greenclip daemon
|
||||||
|
exec --no-startup-id obsidian
|
||||||
exec /usr/bin/compton
|
exec /usr/bin/compton
|
||||||
exec /bin/bash ~/.config/i3/scripts/startup.sh
|
exec /bin/bash ~/.config/i3/scripts/startup.sh
|
||||||
|
|
||||||
|
# don't blank the screen please :)
|
||||||
|
exec --no-startup-id xset s off && xset -dpms && xset s noblank
|
||||||
|
@@ -51,42 +51,12 @@ label=
|
|||||||
interval=1
|
interval=1
|
||||||
color=#999999
|
color=#999999
|
||||||
|
|
||||||
# CPU usage
|
|
||||||
#
|
|
||||||
# The script may be called with -w and -c switches to specify thresholds,
|
|
||||||
# see the script for details.
|
|
||||||
[cpu_usage]
|
|
||||||
label=
|
|
||||||
interval=1
|
|
||||||
#min_width=CPU:100.00%
|
|
||||||
separator=true
|
|
||||||
|
|
||||||
[load_average]
|
[load_average]
|
||||||
label=
|
label=
|
||||||
interval=10
|
interval=10
|
||||||
separator=true
|
separator=true
|
||||||
color=#999999
|
color=#999999
|
||||||
|
|
||||||
# Memory usage
|
|
||||||
#
|
|
||||||
# The type defaults to "mem" if the instance is not specified.
|
|
||||||
[memory]
|
|
||||||
label=
|
|
||||||
separator=true
|
|
||||||
interval=30
|
|
||||||
color=#999999
|
|
||||||
|
|
||||||
# Disk usage
|
|
||||||
# The directory defaults to $HOME if the instance is not specified.
|
|
||||||
# The script may be called with a optional argument to set the alert
|
|
||||||
# (defaults to 10 for 10%).
|
|
||||||
[disk]
|
|
||||||
label=
|
|
||||||
instance=/
|
|
||||||
interval=5
|
|
||||||
separator=true
|
|
||||||
color=#999999
|
|
||||||
|
|
||||||
# Updates
|
# Updates
|
||||||
[updates]
|
[updates]
|
||||||
label=
|
label=
|
||||||
@@ -114,20 +84,6 @@ interval=60
|
|||||||
separator=true
|
separator=true
|
||||||
color=#999999
|
color=#999999
|
||||||
|
|
||||||
# Volume indicator
|
|
||||||
#
|
|
||||||
# The first parameter sets the step (and units to display)
|
|
||||||
# The second parameter overrides the mixer selection
|
|
||||||
# See the script for details.
|
|
||||||
[volume]
|
|
||||||
label=
|
|
||||||
instance=Master
|
|
||||||
interval=1
|
|
||||||
command=/usr/lib/i3blocks/volume/volume 5 pulse
|
|
||||||
signal=10
|
|
||||||
separator=true
|
|
||||||
color=#999999
|
|
||||||
|
|
||||||
# Battery indicator
|
# Battery indicator
|
||||||
# The battery instance defaults to 0.
|
# The battery instance defaults to 0.
|
||||||
[battery2]
|
[battery2]
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
intelTemp=$(sensors | # execute sensors
|
intelTemp=$(
|
||||||
|
sensors | # execute sensors
|
||||||
grep -w "Core 0:" | # grep for the first core
|
grep -w "Core 0:" | # grep for the first core
|
||||||
sed 's/([^)]*)//g' | # filter
|
sed 's/([^)]*)//g' | # filter
|
||||||
tr -s " " | # remove whitespace
|
tr -s " " | # remove whitespace
|
||||||
@@ -8,13 +9,11 @@ sed -e 's/Core 0\(.*\):/\1/' | # get value between Core 0 and :
|
|||||||
cut -c 3- | rev | cut -c 7- | rev #remove clutter
|
cut -c 3- | rev | cut -c 7- | rev #remove clutter
|
||||||
)
|
)
|
||||||
|
|
||||||
amdTemp=$(sensors | grep -w "Tdie:" | sed 's/([^)]*)//g' | tr -s " " | cut -c 8- | rev | cut -c 6- | rev)
|
amdTemp=$(sensors | grep -iw "tctl:" | sed 's/([^)]*)//g' | tr -s " " | cut -c 8- | rev | cut -c 2- | rev)
|
||||||
|
|
||||||
# echo out the result
|
# echo out the result
|
||||||
if [ -z "$intelTemp" ]
|
if [ -z "$intelTemp" ]; then
|
||||||
then
|
|
||||||
echo $amdTemp
|
echo $amdTemp
|
||||||
else
|
else
|
||||||
echo $intelTemp°C
|
echo $intelTemp°C
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@@ -1,18 +1,16 @@
|
|||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
|
|
||||||
displays=($(xrandr | awk '/ connected /{print $1}'))
|
mapfile -t displays < <(xrandr | awk '/ connected /{print $1}')
|
||||||
|
|
||||||
if (( ${#displays[@]} > 1 ))
|
if ((${#displays[@]} > 1)); then
|
||||||
then
|
|
||||||
selected_display="$(zenity --list --title 'Select Display' --radiolist --column '' --column 'Display' $(xrandr | awk '/ connected /{print NR,$1}'))"
|
selected_display="$(zenity --list --title 'Select Display' --radiolist --column '' --column 'Display' $(xrandr | awk '/ connected /{print NR,$1}'))"
|
||||||
else
|
else
|
||||||
selected_display="${displays[0]}"
|
selected_display="${displays[0]}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
current_brightness=($(xrandr --current --verbose | grep -m1 Brightness | awk '{print $2}' | sed 's/0.//' | sed 's/.0/00/' ))
|
current_brightness=$(xbacklight -display "$selected_display" -get)
|
||||||
|
|
||||||
zenity --scale --title "Set brightness of $selected_display" --value=$current_brightness --print-partial |
|
zenity --scale --title "Set brightness of $selected_display" --value=$current_brightness --print-partial |
|
||||||
while read brightness
|
while read brightness; do
|
||||||
do
|
xbacklight -display "$selected_display" -set "$brightness"
|
||||||
xrandr --output "$selected_display" --brightness $(awk '{print $1/100}' <<<"$brightness"})
|
|
||||||
done
|
done
|
@@ -4,7 +4,7 @@ icon="$HOME/.config/i3/icons/lock.png"
|
|||||||
tmpbg='/tmp/screen.png'
|
tmpbg='/tmp/screen.png'
|
||||||
|
|
||||||
# detect whether tidal is running
|
# detect whether tidal is running
|
||||||
isPlaying=$(~/.config/i3/scripts/tidal-cli.sh status);
|
isPlaying=$(~/.config/i3/scripts/tidal-cli.sh status)
|
||||||
|
|
||||||
scrot "$tmpbg"
|
scrot "$tmpbg"
|
||||||
convert "$tmpbg" -scale 10% -scale 1000% "$tmpbg"
|
convert "$tmpbg" -scale 10% -scale 1000% "$tmpbg"
|
||||||
@@ -16,14 +16,14 @@ convert "$tmpbg" "$icon" -gravity center -composite -matte "$tmpbg"
|
|||||||
# check whether the lockscreen is being activated because of a suspend
|
# check whether the lockscreen is being activated because of a suspend
|
||||||
if [[ $* == *--suspend ]]; then
|
if [[ $* == *--suspend ]]; then
|
||||||
# if it is, simply lock without no-fork
|
# if it is, simply lock without no-fork
|
||||||
i3lock -f -i "$tmpbg";
|
i3lock -f -i "$tmpbg"
|
||||||
else
|
else
|
||||||
# if it isn't suspended, enable no-fork
|
# if it isn't suspended, enable no-fork
|
||||||
i3lock -n -f -i "$tmpbg";
|
i3lock -n -f -i "$tmpbg"
|
||||||
|
|
||||||
# if tidal was playing before we locked, resume.
|
# if tidal was playing before we locked, resume.
|
||||||
if [ $isPlaying == "playing" ]; then
|
if [ "$isPlaying" == "playing" ]; then
|
||||||
~/.config/i3/scripts/tidal-cli.sh play
|
~/.config/i3/scripts/tidal-cli.sh play
|
||||||
fi;
|
fi
|
||||||
|
rm -rf $tmpbg
|
||||||
fi
|
fi
|
@@ -4,12 +4,10 @@
|
|||||||
insync start
|
insync start
|
||||||
|
|
||||||
# Wait for the programs to start then remove attention (e.g red blinking)
|
# Wait for the programs to start then remove attention (e.g red blinking)
|
||||||
sleep 1
|
# sleep 1
|
||||||
wmctrl -r "Enpass" -b remove,demands_attention
|
# wmctrl -r "Enpass" -b remove,demands_attention
|
||||||
|
|
||||||
|
|
||||||
# Start gkraken if the command exists
|
# Start gkraken if the command exists
|
||||||
if command -v gkraken &> /dev/null
|
if command -v gkraken &>/dev/null; then
|
||||||
then
|
|
||||||
gkraken --hide-window &
|
gkraken --hide-window &
|
||||||
fi
|
fi
|
||||||
|
@@ -1,9 +1,9 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# check if locked
|
# check if locked
|
||||||
if !(pgrep -x "i3lock" > /dev/null)
|
if ! pgrep -x "i3lock" >/dev/null; then
|
||||||
then
|
echo "not locked, locking"
|
||||||
bash ~/.config/i3/scripts/i3lock.sh --suspend
|
bash ~/.config/i3/scripts/lock.sh --suspend
|
||||||
fi
|
fi
|
||||||
|
|
||||||
systemctl suspend
|
systemctl suspend
|
@@ -29,7 +29,7 @@ case $1 in
|
|||||||
"info")
|
"info")
|
||||||
JSON=$(httpGet current)
|
JSON=$(httpGet current)
|
||||||
TITLE=$(echo "$JSON" | jq -r '.title')
|
TITLE=$(echo "$JSON" | jq -r '.title')
|
||||||
ARTISTS=$(echo "$JSON" | jq -r '.artist')
|
ARTISTS=$(echo "$JSON" | jq -r '.artists')
|
||||||
INFO=$(echo "$TITLE - $ARTISTS")
|
INFO=$(echo "$TITLE - $ARTISTS")
|
||||||
if [ ${#INFO} -le 3 ]; then
|
if [ ${#INFO} -le 3 ]; then
|
||||||
echo "No music info available"
|
echo "No music info available"
|
||||||
@@ -37,6 +37,12 @@ case $1 in
|
|||||||
echo "$INFO"
|
echo "$INFO"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"getLink")
|
||||||
|
JSON=$(httpGet current)
|
||||||
|
URL=$(echo "$JSON" | jq -r '.url')
|
||||||
|
echo "$URL"
|
||||||
|
;;
|
||||||
"status")
|
"status")
|
||||||
if httpGet current | grep "paused" >/dev/null; then
|
if httpGet current | grep "paused" >/dev/null; then
|
||||||
echo "paused"
|
echo "paused"
|
||||||
|
15
i3/scripts/visibleWorkspaces.sh
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Get workspace information from i3
|
||||||
|
workspaces_json=$(i3-msg -t get_workspaces)
|
||||||
|
|
||||||
|
# Extract active workspaces for each output
|
||||||
|
notification_text=$(echo "$workspaces_json" | jq -r '.[] | select(.focused == true or .visible == true) | "\(.name) on \(.output | gsub("DisplayPort"; "DP"))"' | sort)
|
||||||
|
|
||||||
|
# Show notification with better styling
|
||||||
|
notify-send -u critical \
|
||||||
|
-i workspace \
|
||||||
|
-a "i3-workspace-info" \
|
||||||
|
-t 10000 \
|
||||||
|
-e \
|
||||||
|
"Visible workspaces:" "$notification_text"
|
121
install.sh
@@ -1,5 +1,12 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# =======================================
|
||||||
|
# Script setup
|
||||||
|
# =======================================
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -o pipefail
|
||||||
|
|
||||||
# =======================================
|
# =======================================
|
||||||
# Helper functions
|
# Helper functions
|
||||||
# =======================================
|
# =======================================
|
||||||
@@ -45,7 +52,7 @@ function linkDir {
|
|||||||
|
|
||||||
# replace line endings with a space (for use in package managers)
|
# replace line endings with a space (for use in package managers)
|
||||||
function fileToList {
|
function fileToList {
|
||||||
echo $(cat "$1" | sed ':a;N;$!ba;s/\n/ /g')
|
echo $(cat "$1" | sed '/^\s*#\([^!]\|$\)/d' | tr +'\n' ' ' | tr -s ' ')
|
||||||
}
|
}
|
||||||
|
|
||||||
# create and copy files to directory
|
# create and copy files to directory
|
||||||
@@ -62,41 +69,73 @@ function copyToDir {
|
|||||||
function install_fonts {
|
function install_fonts {
|
||||||
mkdir -p ~/.fonts
|
mkdir -p ~/.fonts
|
||||||
mkdir -p ~/.local/share/fonts
|
mkdir -p ~/.local/share/fonts
|
||||||
|
sudo mkdir -p /usr/local/share/fonts
|
||||||
cp -rf ./fonts/* ~/.fonts
|
cp -rf ./fonts/* ~/.fonts
|
||||||
cp -rf ./fonts/* ~/.local/share/fonts
|
cp -rf ./fonts/* ~/.local/share/fonts
|
||||||
|
sudo cp -rf ./fonts/* /usr/local/share/fonts
|
||||||
}
|
}
|
||||||
|
|
||||||
# install trizen, a aur helper
|
# install trizen, an aur helper
|
||||||
function install_trizen {
|
function install_trizen {
|
||||||
git clone https://aur.archlinux.org/trizen.git
|
mkdir /tmp/trizen-install
|
||||||
pushd trizen || return
|
git clone https://aur.archlinux.org/trizen.git /tmp/trizen-install
|
||||||
|
pushd /tmp/trizen-install || return
|
||||||
makepkg -si
|
makepkg -si
|
||||||
popd || return
|
popd || return
|
||||||
sudo rm -dRf trizen/
|
sudo rm -dRf /tmp/trizen-install
|
||||||
|
}
|
||||||
|
# Sets up time and date related stuff
|
||||||
|
function setDateTimeConfig {
|
||||||
|
systemctl enable ntpd
|
||||||
|
timedatectl set-ntp true
|
||||||
|
sudo ln -sf "$PWD"/config/networkmanager/09-timezone /etc/NetworkManager/dispatcher.d/09-timezone
|
||||||
|
}
|
||||||
|
|
||||||
|
function install_gtk {
|
||||||
|
mkdir -p "$HOME/.config/gtk-3.0"
|
||||||
|
mkdir -p "$HOME/.config/gtk-4.0"
|
||||||
|
ln -sf "$PWD"/config/gtk/settings.ini ~/.gtkrc-2.0.mine
|
||||||
|
ln -sf "$PWD"/config/gtk/settings.ini ~/.config/gtk-3.0/settings.ini
|
||||||
|
ln -sf "$PWD"/config/gtk/settings.ini ~/.config/gtk-4.0/settings.ini
|
||||||
|
|
||||||
|
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
|
||||||
|
gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark'
|
||||||
|
}
|
||||||
|
|
||||||
|
function install_docker {
|
||||||
|
sudo systemctl enable docker
|
||||||
|
sudo usermod -aG docker "$USER"
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# install other configs
|
# install other configs
|
||||||
function install_config {
|
function install_config {
|
||||||
|
|
||||||
|
install_gtk
|
||||||
|
|
||||||
# link directories
|
# link directories
|
||||||
linkDir "$PWD"/wallpapers/images ~/Pictures/wallpapers
|
linkDir "$PWD"/wallpapers/images ~/Pictures/wallpapers
|
||||||
linkDir "$PWD"/i3 ~/.config/i3
|
linkDir "$PWD"/i3 ~/.config/i3
|
||||||
linkDir "$PWD"/config/notify-osd/notify-osd ~/.notify-osd
|
|
||||||
linkDir "$PWD"/config/terminal/xfce4-term ~/.config/xfce4/terminal
|
linkDir "$PWD"/config/terminal/xfce4-term ~/.config/xfce4/terminal
|
||||||
linkDir "$PWD"/config/gtk-3.0/settings.ini ~/.config/gtk-3.0/.config
|
linkDir "$PWD"/config/polybar ~/.config/polybar
|
||||||
|
linkDir "$PWD"/config/poshthemes ~/.config/poshthemes
|
||||||
|
linkDir "$PWD"/config/xfce4 ~/.config/xfce4/xfconf/xfce-perchannel-xml
|
||||||
|
linkDir "$PWD"/config/rofi ~/.config/rofi
|
||||||
|
|
||||||
# link user files
|
# link user files
|
||||||
|
ln -sf "$PWD"/bash/.aliases ~/
|
||||||
ln -sf "$PWD"/bash/.bashrc ~/.bashrc
|
ln -sf "$PWD"/bash/.bashrc ~/.bashrc
|
||||||
ln -sf "$PWD"/bash/.dotnet-install.sh ~/.dotnet-install.sh
|
ln -sf "$PWD"/bash/.dotnet-install.sh ~/.dotnet-install.sh
|
||||||
ln -sf "$PWD"/bash/.alias.sh ~/.alias
|
ln -sf "$PWD"/bash/.alias.sh ~/.alias
|
||||||
ln -sf "$PWD"/config/nano/.nanorc ~/.nanorc
|
ln -sf "$PWD"/config/nano/.nanorc ~/.nanorc
|
||||||
|
ln -sf "$PWD"/config/.Xresources ~/.Xresources
|
||||||
ln -sf "$PWD"/bash/.powerline-shell.json ~/.powerline-shell.json
|
ln -sf "$PWD"/bash/.powerline-shell.json ~/.powerline-shell.json
|
||||||
ln -sf "$PWD"/config/gtk-3.0/settings.ini ~/.gtkrc-2.0.mine
|
mkdir -p ~/.config/dunst
|
||||||
ln -sf "$PWD"/config/mimeapps.list ~/.config/mimeapps.list
|
ln -sf "$PWD"/config/dunstrc ~/.config/dunst/dunstrc
|
||||||
|
|
||||||
mkdir -p ~/.config/rofi
|
ln -sf "$PWD"/config/mimeapps.list ~/.config/mimeapps.list
|
||||||
ln -sf "$PWD"/config/rofi/rofi.rasi ~/.config/rofi/config.rasi
|
ln -sf "$PWD"/config/greenclip.toml ~/.config/greenclip.toml
|
||||||
ln -sf "$PWD"/config/rofi/mytheme.rasi ~/.config/rofi/mytheme.rasi
|
ln -sf "$PWD"/config/terminalrc ~/.config/xfce4/terminal/terminalrc
|
||||||
|
|
||||||
ln -sf "$PWD"/config/.gitconfig ~/.gitconfig
|
ln -sf "$PWD"/config/.gitconfig ~/.gitconfig
|
||||||
ln -sf "$PWD"/config/.npmrc ~/.npmrc
|
ln -sf "$PWD"/config/.npmrc ~/.npmrc
|
||||||
@@ -105,19 +144,35 @@ function install_config {
|
|||||||
ln -sf "$PWD"/config/pulse/daemon.conf ~/.pulse/daemon.conf
|
ln -sf "$PWD"/config/pulse/daemon.conf ~/.pulse/daemon.conf
|
||||||
ln -sf "$PWD"/config/picom.conf ~/.config/picom.conf
|
ln -sf "$PWD"/config/picom.conf ~/.config/picom.conf
|
||||||
|
|
||||||
|
# link autorandr files
|
||||||
|
mkdir -p "$HOME/.config/autorandr"
|
||||||
|
ln -sf "$PWD"/config/autorandr/postswitch ~/.config/autorandr/postswitch
|
||||||
|
|
||||||
# link system files / directories
|
# link system files / directories
|
||||||
sudo ln -sf "$PWD"/config/package-managers/pacman.conf /etc/pacman.conf
|
sudo ln -sf "$PWD"/config/package-managers/pacman.conf /etc/pacman.conf
|
||||||
sudo ln -sf "$PWD"/config/package-managers/makepkg.conf /etc/makepkg.conf
|
sudo ln -sf "$PWD"/config/package-managers/makepkg.conf /etc/makepkg.conf
|
||||||
sudo ln -sf "$PWD"/config/ntp.conf /etc/ntp.conf
|
sudo ln -sf "$PWD"/config/ntp.conf /etc/ntp.conf
|
||||||
sudo ln -sf "$PWD"/bash/Completion/ /etc/bash_completion.d
|
sudo ln -sf "$PWD"/bash/Completion/ /etc/bash_completion.d
|
||||||
|
sudo ln -sf "$PWD"/config/environment /etc/environment
|
||||||
|
sudo ln -sf "$PWD"/config/.bash_profile ~/.bash_profile
|
||||||
|
|
||||||
# create empty .custom alias file
|
# create empty .custom alias file
|
||||||
echo "" >~/.custom
|
echo "" >~/.custom
|
||||||
echo "" >~/.variables
|
echo "" >~/.variables
|
||||||
|
|
||||||
|
# files to be copied once
|
||||||
|
mkdir -p "$HOME/.config/Code/User"
|
||||||
|
cp "$PWD"/config/code/syncLocalSettings.json ~/.config/Code/User/
|
||||||
|
|
||||||
|
mkdir -p ~/.config/Code/User/globalStorage/zokugun.sync-settings
|
||||||
|
ln -sf "$PWD"/config/code/sync-settings.yml ~/.config/Code/User/globalStorage/zokugun.sync-settings/settings.yml
|
||||||
|
|
||||||
# system fixes
|
# system fixes
|
||||||
echo fs.inotify.max_user_watches=524288 | sudo tee /etc/sysctl.d/40-max-user-watches.conf && sudo sysctl --system
|
echo fs.inotify.max_user_watches=524288 | sudo tee /etc/sysctl.d/40-max-user-watches.conf && sudo sysctl --system
|
||||||
mkdir -p ~/Pictures/Screenshots
|
mkdir -p ~/Pictures/Screenshots
|
||||||
|
|
||||||
|
setDateTimeConfig
|
||||||
|
setup_groups mastermindzh
|
||||||
}
|
}
|
||||||
|
|
||||||
# Installs the dependencies on Arch Linux
|
# Installs the dependencies on Arch Linux
|
||||||
@@ -125,13 +180,34 @@ function install_dependencies {
|
|||||||
fileToList dependencies/pacman.txt | xargs sudo pacman --noconfirm -S
|
fileToList dependencies/pacman.txt | xargs sudo pacman --noconfirm -S
|
||||||
|
|
||||||
install_trizen
|
install_trizen
|
||||||
fileToList dependencies/aur.txt | xargs trizen --force -S --noconfirm
|
set +e
|
||||||
|
fileToList dependencies/aur.txt | xargs trizen -S --noconfirm
|
||||||
fileToList dependencies/pip.txt | xargs sudo pip install
|
set -e
|
||||||
|
|
||||||
fileToList dependencies/npm.txt | xargs sudo npm install -g
|
fileToList dependencies/npm.txt | xargs sudo npm install -g
|
||||||
|
|
||||||
|
# enable services
|
||||||
|
sudo systemctl enable tlp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# set up a new ssh key
|
||||||
|
function create_ssh_key {
|
||||||
|
ssh-keygen -t ed25519 -C "info@rickvanlieshout.com"
|
||||||
|
eval "$(ssh-agent -s)"
|
||||||
|
}
|
||||||
|
|
||||||
|
# set up pass
|
||||||
|
function setup_pass {
|
||||||
|
pass init info@rickvanlieshout.com
|
||||||
|
}
|
||||||
|
|
||||||
|
# set up groups for specific user
|
||||||
|
function setup_groups {
|
||||||
|
local user=${1:-mastermindzh}
|
||||||
|
sudo usermod -a -G video "$user"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# =======================================
|
# =======================================
|
||||||
# User output functions
|
# User output functions
|
||||||
# =======================================
|
# =======================================
|
||||||
@@ -190,6 +266,11 @@ ask "Do you want to continue installing my config and rice?" Y &&
|
|||||||
install_dependencies
|
install_dependencies
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Ask for SSH generation
|
||||||
|
if ask "Do you want to generate a new SSH key?" Y; then
|
||||||
|
create_ssh_key
|
||||||
|
fi
|
||||||
|
|
||||||
# Ask for config installation
|
# Ask for config installation
|
||||||
if ask "Do you want to install the config files?" Y; then
|
if ask "Do you want to install the config files?" Y; then
|
||||||
install_config
|
install_config
|
||||||
@@ -200,6 +281,16 @@ if ask "Do you want to install the fonts?" Y; then
|
|||||||
install_fonts
|
install_fonts
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Autostart docker and add user
|
||||||
|
if ask "Do you want to set up docker for this user?" Y; then
|
||||||
|
install_docker
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Autostart docker and add user
|
||||||
|
if ask "Do you want to set up a password manager for your keychain?" Y; then
|
||||||
|
setup_pass
|
||||||
|
fi
|
||||||
|
|
||||||
# ask to enable the display manager
|
# ask to enable the display manager
|
||||||
if ask "Do you want to enable sddm?" Y; then
|
if ask "Do you want to enable sddm?" Y; then
|
||||||
sudo systemctl set-default graphical.target
|
sudo systemctl set-default graphical.target
|
||||||
|
BIN
media/2024-dracula-2.png
Normal file
After Width: | Height: | Size: 440 KiB |
BIN
media/2024-dracula.png
Normal file
After Width: | Height: | Size: 1.1 MiB |
BIN
media/dotfiles-small-5.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
media/dotfiles5.png
Normal file
After Width: | Height: | Size: 156 KiB |
BIN
media/dotfiles6.png
Normal file
After Width: | Height: | Size: 2.5 MiB |
@@ -1,24 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"images": ["blue-butterflies.jpg"],
|
|
||||||
"by": "https://pixabay.com/users/stergo-4163614/"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"images": [
|
|
||||||
"forest.jpg",
|
|
||||||
"lake-thunder.jpg",
|
|
||||||
"dark-hedges.jpg",
|
|
||||||
"thunderstorm-sea.jpg",
|
|
||||||
"sunset-dawn.jpg"
|
|
||||||
],
|
|
||||||
"by": "https://pixabay.com/users/jplenio-7645255/"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"images": ["starman.jpg", "friends.jpg"],
|
|
||||||
"by": "https://pixabay.com/users/free-photos-242387/"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"images": ["ping-cherryblossom.jpg", "winter-tree.jpg"],
|
|
||||||
"by": "https://pixabay.com/users/hans-2/"
|
|
||||||
}
|
|
||||||
]
|
|
BIN
wallpapers/images/anatomy.jpeg
Normal file
After Width: | Height: | Size: 1.6 MiB |
BIN
wallpapers/images/big-cat.jpeg
Normal file
After Width: | Height: | Size: 571 KiB |
BIN
wallpapers/images/breaking-orbit.jpeg
Normal file
After Width: | Height: | Size: 447 KiB |
Before Width: | Height: | Size: 678 KiB |
Before Width: | Height: | Size: 252 KiB |
BIN
wallpapers/images/dbz.jpeg
Normal file
After Width: | Height: | Size: 544 KiB |
BIN
wallpapers/images/dolphin.jpeg
Normal file
After Width: | Height: | Size: 4.0 MiB |
BIN
wallpapers/images/dont-be-asshole.jpeg
Normal file
After Width: | Height: | Size: 176 KiB |