Compare commits
267 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0206ce5773 | ||
|
|
04c718410b | ||
|
|
a3b7fa400c | ||
|
|
975098c9f4 | ||
|
|
ac9a0c9807 | ||
|
|
0add98bc03 | ||
|
|
23920aab0a | ||
|
|
14dd2a2511 | ||
|
|
f572060942 | ||
|
|
44a540fa6e | ||
|
|
a4bed9b909 | ||
|
|
d55092af33 | ||
|
|
0d52c2dd65 | ||
|
|
41f3f3499c | ||
|
|
ec15a6212e | ||
|
|
d093460c5b | ||
|
|
222958790f | ||
|
|
aef25d07fd | ||
|
|
e5cf8b26c4 | ||
|
|
6595bb0efc | ||
|
|
b97df66620 | ||
|
|
1fb43470a8 | ||
|
|
d292736b31 | ||
|
|
008caf935f | ||
|
|
7786fe7782 | ||
|
|
4eb550a7bf | ||
|
|
7e8435dbd8 | ||
|
|
464df8fc0f | ||
|
|
c14329ce16 | ||
|
|
0004ea4bdc | ||
|
|
984c2dae23 | ||
|
|
23b5dfbebc | ||
|
|
ef2944e066 | ||
|
|
aa916b7e3d | ||
|
|
e8114c9f94 | ||
|
|
f124e07cb6 | ||
|
|
3c3c4a6913 | ||
|
|
ae398eac24 | ||
|
|
46f8bd8cf4 | ||
|
|
93ba16b78d | ||
|
|
1653187813 | ||
|
|
42240dd6f6 | ||
|
|
f558e4ff10 | ||
|
|
d16efda58f | ||
|
|
acb07fa341 | ||
|
|
16106a9563 | ||
|
|
affaecf218 | ||
|
|
6f022d0eca | ||
|
|
c1a5fc5030 | ||
|
|
6e5450224c | ||
|
|
6360a10b21 | ||
|
|
08e8f65046 | ||
|
|
6d717b946b | ||
|
|
f2c9c8a6d5 | ||
|
|
f4193776d2 | ||
|
|
f984068975 | ||
|
|
5df0545186 | ||
|
|
bb41d9ca40 | ||
|
|
5cc4901b0c | ||
|
|
e83f946bb5 | ||
|
|
0fbc930b28 | ||
|
|
e4c9e79471 | ||
|
|
531285342b | ||
|
|
5bb5d11721 | ||
|
|
b7329cb951 | ||
|
|
b6f63359b1 | ||
|
|
c1fc5ecf1d | ||
|
|
0e26cd26dd | ||
|
|
1b58092306 | ||
|
|
c8516db4af | ||
|
|
825284d441 | ||
|
|
57218d352a | ||
|
|
d922632469 | ||
|
|
06680db137 | ||
|
|
d6f1c447b7 | ||
|
|
9032fd2076 | ||
|
|
054e8dc592 | ||
|
|
a25e266987 | ||
|
|
0d27f17050 | ||
|
|
0094e076c9 | ||
|
|
c0e0752f68 | ||
|
|
36ca9005a6 | ||
|
|
1f017b110d | ||
|
|
88d6522c4f | ||
|
|
01f2abb83b | ||
|
|
4c2ad9d68a | ||
|
|
c4a6446ff6 | ||
|
|
db9a6551ef | ||
|
|
aab42872eb | ||
|
|
77cb5a64d0 | ||
|
|
2a3ba95248 | ||
|
|
9f2263c829 | ||
|
|
589abf65f9 | ||
|
|
1d22bef8e0 | ||
|
|
dae73ffaee | ||
|
|
3397431e09 | ||
|
|
fe400dca55 | ||
|
|
59e0adb5cf | ||
|
|
5bfbee85ec | ||
|
|
b01c0b8a25 | ||
|
|
cfea22fb50 | ||
|
|
8d4b7eb0d9 | ||
|
|
93a2c3931b | ||
|
|
aa21417920 | ||
|
|
d72d7a14bc | ||
|
|
c07bdd4fa3 | ||
|
|
1e46b3cf00 | ||
|
|
63a19cbcf3 | ||
|
|
fe8156e7bd | ||
|
|
7595baf643 | ||
|
|
4abffe4145 | ||
|
|
b66ede1304 | ||
|
|
2815045c9a | ||
|
|
c5cfc8791f | ||
|
|
31f3b9e1b2 | ||
|
|
6265faa787 | ||
|
|
43fd674bba | ||
|
|
c9a092f3b6 | ||
|
|
d0d2fa9b28 | ||
|
|
2ae6ec5cd9 | ||
|
|
507a3d143d | ||
|
|
ea4161df5d | ||
|
|
4a069507d6 | ||
|
|
fa66e6adb3 | ||
|
|
1b582aed80 | ||
|
|
5308879695 | ||
|
|
5e94ccee67 | ||
|
|
93f0bf3894 | ||
|
|
4bf929729e | ||
|
|
ca135d69e4 | ||
|
|
23100d5f1a | ||
|
|
7f471527da | ||
|
|
1cdd637ff1 | ||
|
|
a841d57ab7 | ||
|
|
541068ddbb | ||
|
|
b0da8493c9 | ||
|
|
eaa293d0b2 | ||
|
|
d0ed7ae927 | ||
|
|
8604568209 | ||
|
|
9b56495c1a | ||
|
|
08c16948e3 | ||
|
|
54a13e2a16 | ||
|
|
77c450ec6f | ||
|
|
92b193e01c | ||
|
|
14dd2b885a | ||
|
|
aed8ceea7e | ||
|
|
dde95a31ef | ||
|
|
ba08ba58e4 | ||
|
|
3892c58dab | ||
|
|
d785e17ce6 | ||
|
|
4c5b51b11a | ||
|
|
06adb681f9 | ||
|
|
6d7d2b24b8 | ||
|
|
eb9467d495 | ||
|
|
f312ea0601 | ||
|
|
1eac6a3470 | ||
|
|
4edfe352e6 | ||
|
|
232c7630d8 | ||
|
|
45c700788d | ||
|
|
e0908b7484 | ||
|
|
ce3d639559 | ||
|
|
71417cfaee | ||
|
|
4ff5fbc264 | ||
|
|
55001d251e | ||
|
|
48e1b294f4 | ||
|
|
49441c9f12 | ||
|
|
dc5a1c0224 | ||
|
|
2fbdaa2e24 | ||
|
|
09e7658618 | ||
|
|
4e7e08a380 | ||
|
|
52c6808ea2 | ||
|
|
280623ffa1 | ||
|
|
28fd8bac2c | ||
|
|
7f38ef3f32 | ||
|
|
ce36d27f1c | ||
|
|
2ef404f6cd | ||
|
|
48f6a68454 | ||
|
|
7a2ae3600c | ||
|
|
ed23c33b5a | ||
|
|
392147f5c8 | ||
|
|
b7901a08bb | ||
|
|
1252a27212 | ||
|
|
3c9670c0af | ||
|
|
f6d949a345 | ||
|
|
f5bb626fa7 | ||
|
|
66230dfba2 | ||
|
|
0f91f2cf19 | ||
|
|
320ef09010 | ||
|
|
48cceb8af8 | ||
|
|
4507e2c462 | ||
|
|
58e37c9985 | ||
|
|
8f0e4a17b1 | ||
|
|
a2bbc2c5bd | ||
|
|
f0e2fc9cf3 | ||
|
|
a64babe620 | ||
|
|
ed396f7238 | ||
|
|
3c21b077ba | ||
|
|
7798e8360c | ||
|
|
076fe3ab81 | ||
|
|
e4fe39c7ea | ||
|
|
135bc6091d | ||
|
|
e7049c81eb | ||
|
|
af05aae09a | ||
|
|
1610d3a732 | ||
|
|
1106ae4dd6 | ||
|
|
e279eceabc | ||
|
|
9bc0942484 | ||
|
|
f5832bcc1b | ||
|
|
7328525e2a | ||
|
|
75a2388624 | ||
|
|
49470320d1 | ||
|
|
682584db88 | ||
|
|
a7d97cd084 | ||
|
|
5902b78f82 | ||
|
|
e05bd168e8 | ||
|
|
13ae175732 | ||
|
|
649f5c92be | ||
|
|
a2f4d14a04 | ||
|
|
e4088880a3 | ||
|
|
1b866b41ef | ||
|
|
f81c6d818d | ||
|
|
8f2a2bebf4 | ||
|
|
3c23a4f37d | ||
|
|
fd49ab9d7d | ||
|
|
957506bbde | ||
|
|
0c3b4acd89 | ||
|
|
516641f28a | ||
|
|
a5d663d9e9 | ||
|
|
e0ed8e6e31 | ||
|
|
f8dc6e43bd | ||
|
|
5e732bb226 | ||
|
|
830503352d | ||
|
|
8f6195b305 | ||
|
|
732e37bf00 | ||
|
|
fbbf61c102 | ||
|
|
6970d560e1 | ||
|
|
15f0855916 | ||
|
|
bf59c1a190 | ||
|
|
c751da48fd | ||
|
|
065a8377ad | ||
|
|
dd655573d5 | ||
|
|
3df9bf6f4a | ||
|
|
032302ce66 | ||
|
|
618e8bbe9e | ||
|
|
b2e48654ea | ||
|
|
6c4c1a99b0 | ||
|
|
9858798869 | ||
|
|
5fe5321293 | ||
|
|
c597dec786 | ||
|
|
bc469bfa08 | ||
|
|
87003571bd | ||
|
|
460bd73aed | ||
|
|
01dae7e4ca | ||
|
|
c552b9e351 | ||
|
|
d7052e7d1a | ||
|
|
5fd86150ef | ||
|
|
84bb969fe7 | ||
|
|
bab589f9fa | ||
|
|
8aca0c51e5 | ||
|
|
91392c3956 | ||
|
|
1632c12ac7 | ||
|
|
d143091f45 | ||
|
|
feeb529a02 | ||
|
|
96a6e65232 | ||
|
|
02d6e292e7 | ||
|
|
162367e593 | ||
|
|
39ae9dad6d |
53 changed files with 1748 additions and 10 deletions
6
.alacritty.toml
Normal file
6
.alacritty.toml
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
[window]
|
||||
decorations = "Transparent"
|
||||
|
||||
[font]
|
||||
normal = { family = "JetBrainsMono NF", style = "Regular" }
|
||||
size = 12
|
||||
14
.bashrc
Normal file
14
.bashrc
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#
|
||||
# ~/.bashrc
|
||||
#
|
||||
|
||||
eval "$(mise activate bash)"
|
||||
|
||||
# If not running interactively, don't do anything
|
||||
[[ $- != *i* ]] && return
|
||||
|
||||
alias ls='ls --color=auto'
|
||||
alias grep='grep --color=auto'
|
||||
PS1='[\u@\h \W]\$ '
|
||||
|
||||
export EDITOR=nvim
|
||||
13
.gitconfig
Normal file
13
.gitconfig
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
[credential "https://github.com"]
|
||||
helper =
|
||||
helper = !/usr/bin/gh auth git-credential
|
||||
[credential "https://gist.github.com"]
|
||||
helper =
|
||||
helper = !/usr/bin/gh auth git-credential
|
||||
[credential "https://git.palko.ca"]
|
||||
helper =
|
||||
[user]
|
||||
email = benjaminpalko@hotmail.com
|
||||
name = Benjamin Palko
|
||||
[credential]
|
||||
helper = store
|
||||
11
.gitignore
vendored
Normal file
11
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
|
||||
# Cava
|
||||
./cava/config
|
||||
cava/config
|
||||
|
||||
# Discocss
|
||||
./discocss
|
||||
discocss/
|
||||
!./discocss/custom.css
|
||||
!discocss/custom.css
|
||||
|
||||
6
.gitmodules
vendored
Normal file
6
.gitmodules
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
[submodule "nvim"]
|
||||
path = nvim
|
||||
url = https://git.palko.ca/baobeld/nvim.git
|
||||
[submodule "lux-shell"]
|
||||
path = quickshell
|
||||
url = https://git.palko.ca/baobeld/lux-shell.git
|
||||
19
.install/add-asdf-plugins.sh
Executable file
19
.install/add-asdf-plugins.sh
Executable file
|
|
@ -0,0 +1,19 @@
|
|||
asdfPlugins=(
|
||||
"nodejs"
|
||||
"bun"
|
||||
"python"
|
||||
"rust"
|
||||
"golang"
|
||||
)
|
||||
|
||||
_addPlugins() {
|
||||
for plugin; do
|
||||
asdf plugin add "${plugin}"
|
||||
done
|
||||
}
|
||||
|
||||
# Add asdf plugins
|
||||
_addPlugins "${asdfPlugins[@]}"
|
||||
|
||||
# Install plugins
|
||||
asdf install
|
||||
4
.install/docker-permissions.sh
Executable file
4
.install/docker-permissions.sh
Executable file
|
|
@ -0,0 +1,4 @@
|
|||
if [ ! "$(getent group docker)" ]; then
|
||||
sudo groupadd docker
|
||||
fi
|
||||
sudo usermod -aG docker "${USER}"
|
||||
76
.install/includes/library.sh
Normal file
76
.install/includes/library.sh
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
#!/bin/bash
|
||||
# _ _ _
|
||||
# | | (_) |__ _ __ __ _ _ __ _ _
|
||||
# | | | | '_ \| '__/ _` | '__| | | |
|
||||
# | |___| | |_) | | | (_| | | | |_| |
|
||||
# |_____|_|_.__/|_| \__,_|_| \__, |
|
||||
# |___/
|
||||
#
|
||||
# by Benjamin Palko [based on Stephan Raabe] (2023)
|
||||
# -----------------------------------------------------
|
||||
|
||||
# ------------------------------------------------------
|
||||
# Function: Is package installed
|
||||
# ------------------------------------------------------
|
||||
_isInstalledPacman() {
|
||||
package="$1"
|
||||
check="$(sudo pacman -Qs --color always "${package}" | grep "local" | grep "${package} ")"
|
||||
if [ -n "${check}" ]; then
|
||||
echo 0 #'0' means 'true' in Bash
|
||||
return #true
|
||||
fi
|
||||
echo 1 #'1' means 'false' in Bash
|
||||
return #false
|
||||
}
|
||||
|
||||
_isInstalledYay() {
|
||||
package="$1"
|
||||
check="$(yay -Qs --color always "${package}" | grep "local" | grep "\." | grep "${package} ")"
|
||||
if [ -n "${check}" ]; then
|
||||
echo 0 #'0' means 'true' in Bash
|
||||
return #true
|
||||
fi
|
||||
echo 1 #'1' means 'false' in Bash
|
||||
return #false
|
||||
}
|
||||
|
||||
# ------------------------------------------------------
|
||||
# Function Install all package if not installed
|
||||
# ------------------------------------------------------
|
||||
_installPackagesPacman() {
|
||||
toInstall=()
|
||||
for pkg; do
|
||||
if [[ $(_isInstalledPacman "${pkg}") == 0 ]]; then
|
||||
echo ":: ${pkg} is already installed."
|
||||
continue
|
||||
fi
|
||||
toInstall+=("${pkg}")
|
||||
done
|
||||
|
||||
if [[ "${toInstall[@]}" == "" ]]; then
|
||||
# echo "All pacman packages are already installed.";
|
||||
return
|
||||
fi
|
||||
|
||||
# printf "Package not installed:\n%s\n" "${toInstall[@]}";
|
||||
sudo pacman --noconfirm -S "${toInstall[@]}"
|
||||
}
|
||||
|
||||
_installPackagesYay() {
|
||||
toInstall=()
|
||||
for pkg; do
|
||||
if [[ $(_isInstalledYay "${pkg}") == 0 ]]; then
|
||||
echo ":: ${pkg} is already installed."
|
||||
continue
|
||||
fi
|
||||
toInstall+=("${pkg}")
|
||||
done
|
||||
|
||||
if [[ "${toInstall[@]}" == "" ]]; then
|
||||
# echo "All packages are already installed.";
|
||||
return
|
||||
fi
|
||||
|
||||
# printf "AUR packags not installed:\n%s\n" "${toInstall[@]}";
|
||||
yay --noconfirm -S "${toInstall[@]}"
|
||||
}
|
||||
3
.install/install-oh-my-zsh.sh
Executable file
3
.install/install-oh-my-zsh.sh
Executable file
|
|
@ -0,0 +1,3 @@
|
|||
if [ ! -d ~/.oh-my-zsh/ ]; then
|
||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended --keep-zshrc
|
||||
fi
|
||||
17
.install/install-yay.sh
Executable file
17
.install/install-yay.sh
Executable file
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/bash
|
||||
|
||||
if sudo pacman -Qs yay > /dev/null ; then
|
||||
echo ":: yay is already installed!"
|
||||
else
|
||||
echo ":: yay is not installed. Starting the installation!"
|
||||
_installPackagesPacman "base-devel"
|
||||
SCRIPT=$(realpath "$0")
|
||||
temp_path=$(dirname "$SCRIPT")
|
||||
echo $temp_path
|
||||
git clone https://aur.archlinux.org/yay-git.git ~/yay-git
|
||||
cd ~/yay-git
|
||||
makepkg -si
|
||||
cd $temp_path
|
||||
echo ":: yay has been installed successfully."
|
||||
fi
|
||||
|
||||
20
.install/packages/applications.sh
Normal file
20
.install/packages/applications.sh
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
packagesPacman=(
|
||||
"mplayer"
|
||||
"discord"
|
||||
"signal"
|
||||
"spotify-launcher"
|
||||
"obsidian"
|
||||
"krita"
|
||||
"inkscape"
|
||||
"gimp"
|
||||
"blender"
|
||||
"godot-mono"
|
||||
"thunderbird"
|
||||
"prismlauncher"
|
||||
)
|
||||
|
||||
packagesYay=(
|
||||
"zen-browser-bin"
|
||||
"aseprite"
|
||||
"davinci-resolve"
|
||||
)
|
||||
20
.install/packages/base.sh
Normal file
20
.install/packages/base.sh
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
packagesPacman=(
|
||||
"grep"
|
||||
"wget"
|
||||
"curl"
|
||||
"unzip"
|
||||
"xclip"
|
||||
"inotify-tools"
|
||||
"pipewire"
|
||||
"wireplumber"
|
||||
"pipewire-audio"
|
||||
"pipewire-alsa"
|
||||
"pipewire-pulse"
|
||||
"python-pywal",
|
||||
"noto-fonts",
|
||||
"noto-fonts-cjk",
|
||||
"noto-fonts-emoji"
|
||||
)
|
||||
|
||||
packagesYay=(
|
||||
)
|
||||
3
.install/packages/boot.sh
Normal file
3
.install/packages/boot.sh
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
packagesPacman=(
|
||||
"plymouth"
|
||||
)
|
||||
4
.install/packages/gnome.sh
Normal file
4
.install/packages/gnome.sh
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
packagesPacman=(
|
||||
"xdg-desktop-portal"
|
||||
"xdg-desktop-portal-gnome"
|
||||
)
|
||||
26
.install/packages/hyprland.sh
Normal file
26
.install/packages/hyprland.sh
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
packagesPacman=(
|
||||
"hyprland"
|
||||
"hypridle"
|
||||
"hyprlock"
|
||||
"polkit"
|
||||
"rofi-wayland"
|
||||
"swaync"
|
||||
"swww"
|
||||
"waybar"
|
||||
"bluez"
|
||||
"bluez-utils"
|
||||
"blueman"
|
||||
"xdg-desktop-portal-hyprland"
|
||||
"gtk3"
|
||||
"gtk4"
|
||||
"grim"
|
||||
"slurp"
|
||||
"swappy"
|
||||
"cliphist"
|
||||
"xorg-xrdb"
|
||||
)
|
||||
|
||||
packagesYay=(
|
||||
"nwg-look"
|
||||
"aylurs-gtk-shell"
|
||||
)
|
||||
31
.install/packages/shell.sh
Normal file
31
.install/packages/shell.sh
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
packagesPacman=(
|
||||
"kitty"
|
||||
"zsh"
|
||||
"zsh-autosuggestions"
|
||||
"zsh-syntax-highlighting"
|
||||
"git"
|
||||
"github-cli"
|
||||
"lazygit"
|
||||
"neofetch"
|
||||
"ripgrep"
|
||||
'fzf'
|
||||
"neovim"
|
||||
"ttf-jetbrains-mono-nerd"
|
||||
"mise"
|
||||
"btop"
|
||||
"cmatrix"
|
||||
"dotnet-runtime"
|
||||
"dotnet-sdk"
|
||||
"aspnet-runtime"
|
||||
"wine"
|
||||
"docker"
|
||||
"docker-compose"
|
||||
"meson"
|
||||
"glfw"
|
||||
"glad"
|
||||
)
|
||||
|
||||
packagesYay=(
|
||||
"lazydocker"
|
||||
"cava"
|
||||
)
|
||||
52
.install/symlink.sh
Executable file
52
.install/symlink.sh
Executable file
|
|
@ -0,0 +1,52 @@
|
|||
#!/bin/bash
|
||||
|
||||
# files
|
||||
files=(
|
||||
".bashrc"
|
||||
".gitconfig"
|
||||
".zshrc"
|
||||
)
|
||||
|
||||
_symlinkFiles() {
|
||||
for file; do
|
||||
if [ -h ~/${file} ]; then
|
||||
continue
|
||||
fi
|
||||
if [ -f ~/${file} ]; then
|
||||
rm ~/${file}
|
||||
fi
|
||||
ln -s ~/dotfiles/${file} ~/${file}
|
||||
done
|
||||
}
|
||||
|
||||
# directories
|
||||
directories=(
|
||||
"cava"
|
||||
"hypr"
|
||||
"kitty"
|
||||
"mise"
|
||||
"neofetch"
|
||||
"nvim"
|
||||
"quickshell"
|
||||
"rofi"
|
||||
"swappy"
|
||||
"swaync"
|
||||
"wal"
|
||||
"waybar"
|
||||
)
|
||||
|
||||
_symlinkDirs() {
|
||||
for dir; do
|
||||
if [ -h ~/.config/${dir} ]; then
|
||||
continue
|
||||
fi
|
||||
if [ -d ~/.config/${dir}/ ]; then
|
||||
echo "Deleting existing directory ${dir}"
|
||||
rm -rf ~/.config/${dir}/
|
||||
fi
|
||||
ln -s ~/dotfiles/${dir}/ ~/.config/
|
||||
done
|
||||
}
|
||||
|
||||
_symlinkFiles "${files[@]}"
|
||||
_symlinkDirs "${directories[@]}"
|
||||
11
.scripts/pywal-swww.sh
Executable file
11
.scripts/pywal-swww.sh
Executable file
|
|
@ -0,0 +1,11 @@
|
|||
# -n tells `wal` to skip setting the wallpaper.
|
||||
wal -i ~/Wallpapers/ -n
|
||||
|
||||
# Using feh to tile the wallpaper now.
|
||||
# We grab the wallpaper location from wal's cache so
|
||||
# that this works even when a directory is passed.
|
||||
swww img "$(< "${HOME}/.cache/wal/wal")" --transition-type wipe --transition-angle 45 --transition-fps 90
|
||||
|
||||
# Copy cava and update config
|
||||
cp ~/.cache/wal/cava-config ~/dotfiles/cava/config && pkill -USR2 cava
|
||||
|
||||
3
.scripts/pywal.sh
Executable file
3
.scripts/pywal.sh
Executable file
|
|
@ -0,0 +1,3 @@
|
|||
wal -i ~/Wallpapers/ -n
|
||||
gsettings set org.gnome.desktop.background picture-uri-dark "file://$(cat ~/.cache/wal/wal)"
|
||||
cp ~/.cache/wal/cava-config ~/dotfiles/cava/config && pkill -USR2 cava
|
||||
3
.scripts/set-shell.sh
Normal file
3
.scripts/set-shell.sh
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
chsh -s "$(which zsh)"
|
||||
129
.zshrc
Normal file
129
.zshrc
Normal file
|
|
@ -0,0 +1,129 @@
|
|||
# If you come from bash you might have to change your $PATH.
|
||||
# export PATH=$HOME/bin:/usr/local/bin:$PATH
|
||||
|
||||
# Path to your oh-my-zsh installation.
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||
ZSH_THEME="robbyrussell"
|
||||
|
||||
# Load pywal palette
|
||||
cat ~/.cache/wal/sequences
|
||||
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in $ZSH/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
# CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment one of the following lines to change the auto-update behavior
|
||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# zstyle ':omz:update' frequency 13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in $ZSH/plugins/
|
||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
plugins=(git gh bun npm yarn mise)
|
||||
|
||||
# User configuration
|
||||
|
||||
# export MANPATH="/usr/local/man:$MANPATH"
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
# You may need to manually set your language environment
|
||||
# export LANG=en_US.UTF-8
|
||||
|
||||
# Preferred editor for local and remote sessions
|
||||
# if [[ -n $SSH_CONNECTION ]]; then
|
||||
# export EDITOR='vim'
|
||||
# else
|
||||
# export EDITOR='mvim'
|
||||
# fi
|
||||
|
||||
# Compilation flags
|
||||
# export ARCHFLAGS="-arch x86_64"
|
||||
|
||||
# Set personal aliases, overriding those provided by oh-my-zsh libs,
|
||||
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
|
||||
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
|
||||
# For a full list of active aliases, run `alias`.
|
||||
#
|
||||
# Example aliases
|
||||
# alias zshconfig="mate ~/.zshrc"
|
||||
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||
alias dotfiles="~/dotfiles/"
|
||||
alias nv="nvim"
|
||||
alias pywal="~/dotfiles/.scripts/pywal.sh"
|
||||
|
||||
# Lines configured by zsh-newuser-install
|
||||
HISTFILE=~/.histfile
|
||||
HISTSIZE=50
|
||||
SAVEHIST=1000
|
||||
bindkey -v
|
||||
# End of lines configured by zsh-newuser-install
|
||||
# The following lines were added by compinstall
|
||||
zstyle :compinstall filename '$HOME/.zshrc'
|
||||
|
||||
autoload -Uz compinit
|
||||
compinit
|
||||
# End of lines added by compinstall
|
||||
|
||||
eval "$(mise activate zsh)"
|
||||
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
export EDITOR=nvim
|
||||
|
||||
neofetch --ascii ~/dotfiles/ascii.txt
|
||||
|
||||
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||
91
README.md
Normal file → Executable file
91
README.md
Normal file → Executable file
|
|
@ -1,14 +1,85 @@
|
|||
# Arch Linux Setup
|
||||
|
||||
This is a work in progress setup for my first Arch Linux install, I am finally planning to make the commitment away from Windows into the Linux world.
|
||||
This is a work in progress setup for my first Arch Linux install
|
||||
|
||||
### TODO
|
||||
## Arch install
|
||||
|
||||
- [ ] zsh Configuration
|
||||
- [ ] hyprland Configuration
|
||||
- waybar
|
||||
- hyprpaper
|
||||
- swaylock/hyprlock
|
||||
- swayidle/hypridle
|
||||
- keybindings
|
||||
-
|
||||
Start by creating a bootable USB from an Arch ISO, you can download from [here](https://archlinux.org/download/)
|
||||
|
||||
Boot into the USB...
|
||||
|
||||
Connect to wifi...
|
||||
|
||||
```
|
||||
iwctl
|
||||
```
|
||||
|
||||
Test connection with `ping google.ca`
|
||||
|
||||
Run the arch install command
|
||||
|
||||
```shell
|
||||
archinstall
|
||||
```
|
||||
|
||||
Running through the options...
|
||||
|
||||
- Disc config: Best-effort
|
||||
- Boot loader: Grub
|
||||
- User account: Create one and give super
|
||||
- Profile: Minimal
|
||||
- Audio: Pipewire
|
||||
- Additional packages: `git`
|
||||
- Network: Copy ISE network configuration
|
||||
|
||||
Install...
|
||||
|
||||
### Enable multilib
|
||||
|
||||
```conf
|
||||
/etc/pacman.conf
|
||||
--------------------
|
||||
[multilib]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
```
|
||||
|
||||
## Packages
|
||||
|
||||
This is a list of packages sorted by the package manager used to install them along with a small description of what they do as well as a link to their website/docs
|
||||
|
||||
### Pacman
|
||||
|
||||
- zsh - Shell
|
||||
- git - Version control
|
||||
- github-cli - Github CLI
|
||||
- lazygit - CLI git client
|
||||
- neofetch - System display
|
||||
- neovim - CLI based editor and IDE
|
||||
- ttf-jetbrains-mono-nerd - Nerd font pack
|
||||
- wget - retrive files over http(s)
|
||||
- curl - same as wget
|
||||
- xclip - Clipboard util
|
||||
- ripgrep - CLI grep tool (used for neovim text search across files)
|
||||
- btop - resource monitor
|
||||
- cmatrix - THE MATRIX
|
||||
- swappy - screenshot tool
|
||||
- spotify - Music App
|
||||
- discord - Messaging
|
||||
- obsidian - markdown and stuff
|
||||
|
||||
#### Hyprland
|
||||
|
||||
- swww - wallpaper animations
|
||||
- hypridle - hyprland idle daemon
|
||||
- hyprlock - hyprland lock screen
|
||||
- pywal - generates color palettes from wallpaper
|
||||
|
||||
### Yay
|
||||
|
||||
- cava - audio visualizer
|
||||
|
||||
### Brew
|
||||
|
||||
- zsh-completions - zsh plugin that adds CLI completions
|
||||
- zsh-autosuggestions - zsh that adds suggestions
|
||||
- asdf - runtime manager (nodejs, python, bun, etc...)
|
||||
|
|
|
|||
21
ascii.txt
Executable file
21
ascii.txt
Executable file
|
|
@ -0,0 +1,21 @@
|
|||
${c1}
|
||||
.,-:;//;:=,
|
||||
. :H@@@MM@M#H/.,+%;,
|
||||
,/X+ +M@@M@MM%=,-%HMMM@X/,
|
||||
-+@MM; $M@@MH+-,;XMMMM@MMMM@+-
|
||||
;@M@@M- XM@X;. -+XXXXXHHH@M@M#@/.
|
||||
,%MM@@MH ,@%= .---=-=:=,.
|
||||
=@#@@@MX., -%HX$$%%%:;
|
||||
=-./@M@M$ .;@MMMM@MM:
|
||||
X@/ -$MM/ . +MM@@@M$
|
||||
,@M@H: :@: . =X#@@@@-
|
||||
,@@@MMX, . /H- ;@M@M=
|
||||
.H@@@@M@+, %MM+..%#$.
|
||||
/MMMM@MMH/. XM@MH; =;
|
||||
/%+%$XHH@$= , .H@@@@MX,
|
||||
.=--------. -%H.,@@@@@MX,
|
||||
.%MM@@@HHHXX$$$%+- .:$MMX =M@@MM%.
|
||||
=XMMM@MM@MM#H;,-+HMM@M+ /MMMX=
|
||||
=%@M@M#@$-.=$@MM@@@M; %M%=
|
||||
,:+$+-,/H#MMMMMMM@= =,
|
||||
=++%%%%+/:-.
|
||||
79
cava/shaders/bar_spectrum.frag
Executable file
79
cava/shaders/bar_spectrum.frag
Executable file
|
|
@ -0,0 +1,79 @@
|
|||
#version 330
|
||||
|
||||
in vec2 fragCoord;
|
||||
out vec4 fragColor;
|
||||
|
||||
// bar values. defaults to left channels first (low to high), then right (high to low).
|
||||
uniform float bars[512];
|
||||
|
||||
uniform int bars_count; // number of bars (left + right) (configurable)
|
||||
uniform int bar_width; // bar width (configurable), not used here
|
||||
uniform int bar_spacing; // space bewteen bars (configurable)
|
||||
|
||||
uniform vec3 u_resolution; // window resolution
|
||||
|
||||
//colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
|
||||
uniform vec3 bg_color; // background color
|
||||
uniform vec3 fg_color; // foreground color
|
||||
|
||||
uniform int gradient_count;
|
||||
uniform vec3 gradient_colors[8]; // gradient colors
|
||||
|
||||
vec3 normalize_C(float y,vec3 col_1, vec3 col_2, float y_min, float y_max)
|
||||
{
|
||||
//create color based on fraction of this color and next color
|
||||
float yr = (y - y_min) / (y_max - y_min);
|
||||
return col_1 * (1.0 - yr) + col_2 * yr;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
// find which bar to use based on where we are on the x axis
|
||||
float x = u_resolution.x * fragCoord.x;
|
||||
int bar = int(bars_count * fragCoord.x);
|
||||
|
||||
//calculate a bar size
|
||||
float bar_size = u_resolution.x / bars_count;
|
||||
|
||||
//the y coordinate and bar values are the same
|
||||
float y = bars[bar];
|
||||
|
||||
// make sure there is a thin line at bottom
|
||||
if (y * u_resolution.y < 1.0)
|
||||
{
|
||||
y = 1.0 / u_resolution.y;
|
||||
}
|
||||
|
||||
//draw the bar up to current height
|
||||
if (y > fragCoord.y)
|
||||
{
|
||||
//make some space between bars basen on settings
|
||||
if (x > (bar + 1) * (bar_size) - bar_spacing)
|
||||
{
|
||||
fragColor = vec4(bg_color,1.0);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (gradient_count == 0)
|
||||
{
|
||||
fragColor = vec4(fg_color,1.0);
|
||||
}
|
||||
else
|
||||
{
|
||||
//find which color in the configured gradient we are at
|
||||
int color = int((gradient_count - 1) * fragCoord.y);
|
||||
|
||||
//find where on y this and next color is supposed to be
|
||||
float y_min = color / (gradient_count - 1.0);
|
||||
float y_max = (color + 1.0) / (gradient_count - 1.0);
|
||||
|
||||
//make color
|
||||
fragColor = vec4(normalize_C(fragCoord.y, gradient_colors[color], gradient_colors[color + 1], y_min, y_max), 1.0);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
fragColor = vec4(bg_color,1.0);
|
||||
}
|
||||
}
|
||||
34
cava/shaders/northern_lights.frag
Executable file
34
cava/shaders/northern_lights.frag
Executable file
|
|
@ -0,0 +1,34 @@
|
|||
#version 330
|
||||
|
||||
in vec2 fragCoord;
|
||||
out vec4 fragColor;
|
||||
|
||||
// bar values. defaults to left channels first (low to high), then right (high to low).
|
||||
uniform float bars[512];
|
||||
|
||||
uniform int bars_count; // number of bars (left + right) (configurable)
|
||||
|
||||
uniform vec3 u_resolution; // window resolution, not used here
|
||||
|
||||
//colors, configurable in cava config file
|
||||
uniform vec3 bg_color; // background color(r,g,b) (0.0 - 1.0), not used here
|
||||
uniform vec3 fg_color; // foreground color, not used here
|
||||
|
||||
void main()
|
||||
{
|
||||
// find which bar to use based on where we are on the x axis
|
||||
int bar = int(bars_count * fragCoord.x);
|
||||
|
||||
float bar_y = 1.0 - abs((fragCoord.y - 0.5)) * 2.0;
|
||||
float y = (bars[bar]) * bar_y;
|
||||
|
||||
float bar_x = (fragCoord.x - float(bar) / float(bars_count)) * bars_count;
|
||||
float bar_r = 1.0 - abs((bar_x - 0.5)) * 2;
|
||||
|
||||
bar_r = bar_r * bar_r * 2;
|
||||
|
||||
// set color
|
||||
fragColor.r = fg_color.x * y * bar_r;
|
||||
fragColor.g = fg_color.y * y * bar_r;
|
||||
fragColor.b = fg_color.z * y * bar_r;
|
||||
}
|
||||
14
cava/shaders/pass_through.vert
Executable file
14
cava/shaders/pass_through.vert
Executable file
|
|
@ -0,0 +1,14 @@
|
|||
#version 330
|
||||
|
||||
|
||||
// Input vertex data, different for all executions of this shader.
|
||||
layout(location = 0) in vec3 vertexPosition_modelspace;
|
||||
|
||||
// Output data ; will be interpolated for each fragment.
|
||||
out vec2 fragCoord;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_Position = vec4(vertexPosition_modelspace,1);
|
||||
fragCoord = (vertexPosition_modelspace.xy+vec2(1,1))/2.0;
|
||||
}
|
||||
35
hypr/hypridle.conf
Normal file
35
hypr/hypridle.conf
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend.
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 150 # 2.5min.
|
||||
on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor.
|
||||
on-resume = brightnessctl -r # monitor backlight restore.
|
||||
}
|
||||
|
||||
# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight.
|
||||
listener {
|
||||
timeout = 150 # 2.5min.
|
||||
on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight.
|
||||
on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 300 # 5min
|
||||
on-timeout = loginctl lock-session # lock screen when timeout has passed
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 330 # 5.5min
|
||||
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
|
||||
on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired.
|
||||
}
|
||||
|
||||
# listener {
|
||||
# timeout = 1800 # 30min
|
||||
# on-timeout = systemctl suspend # suspend pc
|
||||
# }
|
||||
|
||||
78
hypr/hyprland.conf
Normal file
78
hypr/hyprland.conf
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
|
||||
# Programs
|
||||
$terminal = alacritty
|
||||
$fileManager = nautilus
|
||||
$lockScreen = hyprlock
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
$mainMod = SUPER
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
# PC
|
||||
monitor=DP-1,2560x1440@144,auto,auto
|
||||
|
||||
# Laptop
|
||||
monitor=eDP-1,1920x1080@60,auto,1.20
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options =
|
||||
kb_rules =
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
touchpad {
|
||||
natural_scroll = no
|
||||
}
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
general {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 10
|
||||
gaps_out = 10
|
||||
border_size = 3
|
||||
|
||||
layout = dwindle
|
||||
|
||||
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
||||
allow_tearing = true
|
||||
}
|
||||
|
||||
dwindle {
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
}
|
||||
|
||||
master {
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
}
|
||||
|
||||
misc {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||
}
|
||||
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
|
||||
device {
|
||||
name = epic-mouse-v1
|
||||
sensitivity = -0.5
|
||||
}
|
||||
|
||||
$hypr = ~/.config/hypr/hyprland
|
||||
|
||||
source = $hypr/animations.conf
|
||||
source = $hypr/colours.conf
|
||||
source = $hypr/decorations.conf
|
||||
source = $hypr/env.conf
|
||||
source = $hypr/execs.conf
|
||||
source = $hypr/keybinds.conf
|
||||
source = $hypr/rules.conf
|
||||
14
hypr/hyprland/animations.conf
Normal file
14
hypr/hyprland/animations.conf
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
animations {
|
||||
enabled = yes
|
||||
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
7
hypr/hyprland/colours.conf
Normal file
7
hypr/hyprland/colours.conf
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# PyWal Colors
|
||||
source = ~/.cache/wal/colors-hyprland.conf
|
||||
|
||||
general {
|
||||
col.active_border = $color4 $color13 45deg
|
||||
col.inactive_border = $color0
|
||||
}
|
||||
19
hypr/hyprland/decorations.conf
Normal file
19
hypr/hyprland/decorations.conf
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
decoration {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
rounding = 6
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
size = 4
|
||||
passes = 1
|
||||
ignore_opacity = true
|
||||
}
|
||||
|
||||
shadow {
|
||||
enabled = true
|
||||
range = 4
|
||||
render_power = 3
|
||||
color = rgba(1a1a1aee)
|
||||
}
|
||||
}
|
||||
46
hypr/hyprland/env.conf
Normal file
46
hypr/hyprland/env.conf
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
# -----------------------------------------------------
|
||||
# Environment Variables
|
||||
# -----------------------------------------------------
|
||||
|
||||
# General
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = QT_QPA_PLATFORM,wayland
|
||||
|
||||
# Nvidia
|
||||
# https://wiki.hyprland.org/Nvidia/
|
||||
env = LIBVA_DRIVER_NAME,nvidia
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
env = NVD_BACKEND,direct
|
||||
|
||||
env = GBM_BACKEND,nvidia-drm
|
||||
env = __GL_VRR_ALLOWED,1
|
||||
|
||||
# Electron
|
||||
env = ELECTRON_OZONE_PLATFORM_HINT,auto
|
||||
|
||||
# Themes
|
||||
env = GTK_THEME,WhiteSur-Dark
|
||||
env = ICON_THEME,WhiteSur-Dark
|
||||
env = COLOR_SCHEME,prefer-dark
|
||||
|
||||
#Cursors
|
||||
cursor {
|
||||
no_hardware_cursors = true
|
||||
}
|
||||
# env = XCURSOR_THEME,Volantes Cursors
|
||||
# env = XCURSOR_SIZE,24
|
||||
env = HYPRCURSOR_THEME,Volantes Cursors
|
||||
env = HYPRCURSOR_SIZE,24
|
||||
exec-once = hyprctl setcursor $cursorTheme $cursorSize
|
||||
# exec-once = gsettings set org.gnome.desktop.interface cursor-theme '$cursorTheme'
|
||||
# exec-once = gsettings set org.gnome.desktop.interface cursor-size $cursorSize
|
||||
|
||||
# Fonts
|
||||
env = FONT_NAME,JetBrainsMono Nerd Font 24
|
||||
env = DOCUMENT_FONT_NAME,Cantarell 24
|
||||
env = MONOSPACE_FONT_NAME,JetBrainsMono Nerd Font 5
|
||||
env = FONT_ANTIALIASING,rgba
|
||||
env = FONT_HINTING,full
|
||||
|
||||
# uwsm/app2unit
|
||||
env = APP2UNIT_SLICES,'a=app-graphical.slice b=background-graphical.slice s=session-graphical.slice'
|
||||
22
hypr/hyprland/execs.conf
Normal file
22
hypr/hyprland/execs.conf
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
# Key ring
|
||||
exec-once = gnome-keyring-daemon --start --components=secrets
|
||||
|
||||
# Idle Daemon
|
||||
exec-once = hypridle
|
||||
# Lux-shell
|
||||
exec-once = quickshell
|
||||
# Emotes
|
||||
exec-once = emote
|
||||
# Wallpaper Daemon
|
||||
exec-once = swww-daemon
|
||||
|
||||
exec-once = [workspace 1 silent] thunderbird
|
||||
exec-once = [workspace 1 silent] proton-mail --password-store="gnome-libsecret"
|
||||
exec-once = [workspace 2 silent] discord --enable-features=UseOzonePlatform --ozone-platform=wayland
|
||||
exec-once = [workspace 2 silent] signal-desktop --password-store="gnome-libsecret"
|
||||
exec-once = [workspace 3 silent] zen-browser
|
||||
exec-once = [workspace 4 silent] alacritty
|
||||
exec-once = [workspace 5 silent] steam
|
||||
exec-once = [workspace special:terminal silent] alacritty
|
||||
exec-once = [workspace special:music silent] tidal-hifi --enable-features=UseOzonePlatform --ozone-platform=wayland
|
||||
|
||||
93
hypr/hyprland/keybinds.conf
Normal file
93
hypr/hyprland/keybinds.conf
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
|
||||
# Lux Keybinds
|
||||
bind = $mainMod, ESCAPE, global, lux:power-menu
|
||||
bind = $mainMod, R, global, lux:launcher
|
||||
bind = $mainMod, M, global, lux:pomodoro
|
||||
bind = $mainMod, W, global, lux:storybook
|
||||
bind = $mainMod, grave, global, lux:configuration
|
||||
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
|
||||
# Global
|
||||
bind = SUPER, F10, sendshortcut, CTRL, F10, class:^(com\.obsproject\.Studio)$
|
||||
|
||||
# Programs
|
||||
bind = $mainMod, T, exec, $terminal
|
||||
bind = $mainMod, X, killactive,
|
||||
bind = $mainMod, E, exec, $fileManager
|
||||
bind = $mainMod, F, togglefloating,
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod, V, togglesplit, # dwindle
|
||||
bind = $mainMod, L, exec, $lockScreen # hyprlock
|
||||
bind = $mainMod, period, exec, gnome-characters
|
||||
bind = $mainMod, B, exec, zen-browser
|
||||
bind = $mainMod CTRL, F, fullscreen
|
||||
bind = , PRINT, exec, grim -g "$(slurp)" - | swappy -f -
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
###############################################################################
|
||||
# Special workspaces
|
||||
###############################################################################
|
||||
# Scratchpad
|
||||
bind = CTRL SHIFT, S, togglespecialworkspace, magic
|
||||
bind = CTRL $mainMod, S, movetoworkspace, special:magic
|
||||
|
||||
# Terminal
|
||||
bind = CTRL SHIFT, T, togglespecialworkspace, terminal
|
||||
|
||||
# Music
|
||||
bind = CTRL SHIFT, M, togglespecialworkspace, music
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Switch workspaces
|
||||
bind = CTRL ALT, right, workspace, e+1
|
||||
bind = CTRL ALT, left, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
# Audio keybinds
|
||||
bind = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+
|
||||
bind = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%-
|
||||
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioStop, exec,
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
|
||||
# Gestures
|
||||
# https://wiki.hypr.land/Configuring/Gestures/
|
||||
gesture = 4, horizontal, workspace
|
||||
30
hypr/hyprland/rules.conf
Normal file
30
hypr/hyprland/rules.conf
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
windowrule = nomaxsize, class:.* # You'll probably like this.
|
||||
|
||||
# Apps
|
||||
windowrule = idleinhibit fullscreen, class:^(*)$
|
||||
windowrule = idleinhibit fullscreen, title:^(*)$
|
||||
windowrule = idleinhibit fullscreen, fullscreen:1
|
||||
windowrule = float, center, modal:1
|
||||
|
||||
# windowrule = workspace special:terminal, kitty
|
||||
windowrule = workspace special:music, initialClass:tidal-hifi
|
||||
|
||||
windowrule = workspace 1, class:thunderbird
|
||||
windowrule = workspace 2, class:(discord)
|
||||
windowrule = workspace 2,class:(signal)
|
||||
windowrule = opacity 0.999, class:signal
|
||||
windowrule = workspace 3, class:firefox
|
||||
windowrule = opacity 0.999, class:firefox
|
||||
windowrule = workspace 5,float,class:(steam)
|
||||
windowrule = workspace 5, class:^(steam_app_*)$
|
||||
|
||||
windowrule = float, class:org.gnome.Calculator
|
||||
|
||||
# Workspaces
|
||||
workspace = 1, persistent:true
|
||||
workspace = 2, persistent:true
|
||||
workspace = 3, persistent:true
|
||||
workspace = 4, persistent:true
|
||||
workspace = 5, persistent:true
|
||||
|
||||
141
hypr/hyprlock.conf
Normal file
141
hypr/hyprlock.conf
Normal file
|
|
@ -0,0 +1,141 @@
|
|||
source = $HOME/.config/hypr/mocha.conf
|
||||
|
||||
$primary = rgb(1fb854)
|
||||
$secondary = rgb(1eb88e)
|
||||
$accent = rgb(1fb8ab)
|
||||
$accentAlpha = f5e0dc
|
||||
$neutral = rgb(19362d)
|
||||
$base100 = rgb(1b1717)
|
||||
$base200 = rgb(161212)
|
||||
$base300 = rgb(110d0d)
|
||||
$basecontent = rgb(cac9c9)
|
||||
$basecontentAlpha = cac9c9
|
||||
|
||||
$info = rgb(00b5ff)
|
||||
$success = rgb(00a96e)
|
||||
$warning = rgb(ffbe00)
|
||||
$error = rgb(ff5861)
|
||||
|
||||
$text = $basecontent
|
||||
$textAlpha = $basecontentAlpha
|
||||
$font = JetBrainsMono Nerd Font
|
||||
|
||||
# GENERAL
|
||||
general {
|
||||
disable_loading_bar = false
|
||||
hide_cursor = true
|
||||
ignore_empty_input = true
|
||||
}
|
||||
|
||||
# BACKGROUND
|
||||
background {
|
||||
monitor =
|
||||
path = $HOME/.cache/hyprlock/wallpaper
|
||||
reload_cmd = "cp $(cat $HOME/.cache/wal/wal) $HOME/.cache/hyprlock/wallpaper"
|
||||
blur_passes = 1
|
||||
blur_size = 3
|
||||
# color = $base
|
||||
}
|
||||
|
||||
# LAYOUT
|
||||
label {
|
||||
monitor =
|
||||
shadow_passes = 1
|
||||
text = Layout: $LAYOUT
|
||||
color = $text
|
||||
font_size = 25
|
||||
font_family = $font
|
||||
position = 20, 20
|
||||
halign = left
|
||||
valign = bottom
|
||||
}
|
||||
|
||||
# TIME
|
||||
label {
|
||||
monitor =
|
||||
shadow_passes = 1
|
||||
text = cmd[update:1000] date +"%T"
|
||||
color = $text
|
||||
font_size = 90
|
||||
font_family = $font
|
||||
position = 0, -20
|
||||
halign = center
|
||||
valign = top
|
||||
}
|
||||
|
||||
# DATE
|
||||
label {
|
||||
monitor =
|
||||
shadow_passes = 1
|
||||
text = cmd[update:43200000] date +"%A, %d %B %Y"
|
||||
color = $text
|
||||
font_size = 25
|
||||
font_family = $font
|
||||
position = -10, -10
|
||||
halign = right
|
||||
valign = top
|
||||
}
|
||||
|
||||
# USER AVATAR
|
||||
image {
|
||||
monitor =
|
||||
path = $HOME/.face
|
||||
shadow_passes = 1
|
||||
size = 150
|
||||
border_color = $base100
|
||||
border_size = 2
|
||||
position = 0, 60
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
# GREETING
|
||||
label {
|
||||
monitor =
|
||||
shadow_passes = 1
|
||||
text = <span foreground="##$textAlpha">Welcome back <span foreground="##$accentAlpha">$USER</span></span>
|
||||
color = $text
|
||||
font_size = 30
|
||||
font_family = $font
|
||||
position = 0, 280
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
# INPUT FIELD
|
||||
input-field {
|
||||
monitor =
|
||||
size = 300, 60
|
||||
shadow_passes = 1
|
||||
rounding = 20
|
||||
outline_thickness = 0
|
||||
dots_size = 0.2
|
||||
dots_spacing = 0.2
|
||||
dots_center = true
|
||||
outer_color = $base100
|
||||
inner_color = $base100
|
||||
font_color = $text
|
||||
fade_on_empty = false
|
||||
placeholder_text = <span foreground="##$textAlpha"><i>Input password...</i></span>
|
||||
hide_input = false
|
||||
check_color = $info
|
||||
fail_color = $error
|
||||
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i>
|
||||
capslock_color = $warning
|
||||
position = 0, -90
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
# QUOTE
|
||||
label {
|
||||
monitor =
|
||||
shadow_passes = 1
|
||||
text = cmd[update:60000] echo "<i>$(fortune)</i>"
|
||||
color = $text
|
||||
font_size = 12
|
||||
font_family = $font
|
||||
position = 0, 200
|
||||
halign = center
|
||||
valign = bottom
|
||||
}
|
||||
46
install.sh
Executable file
46
install.sh
Executable file
|
|
@ -0,0 +1,46 @@
|
|||
#!/bin/bash
|
||||
source .install/includes/library.sh
|
||||
clear
|
||||
|
||||
cat <<"EOF"
|
||||
|
||||
_ _ __ _ _
|
||||
__| | ___ | |_ / _(_) | ___ ___
|
||||
/ _` |/ _ \| __| |_| | |/ _ \/ __|
|
||||
| (_| | (_) | |_| _| | | __/\__ \
|
||||
\__,_|\___/ \__|_| |_|_|\___||___/
|
||||
|
||||
|
||||
EOF
|
||||
echo -e "${NONE}"
|
||||
|
||||
if [ ! -d ~/Development/ ]; then
|
||||
mkdir ~/Development/
|
||||
fi
|
||||
|
||||
# Install package managers
|
||||
source .install/install-yay.sh
|
||||
|
||||
# Symantic links
|
||||
source .install/symlink.sh
|
||||
|
||||
# Install general packages
|
||||
source .install/packages/base.sh
|
||||
source .install/packages/shell.sh
|
||||
source .install/packages/applications.sh
|
||||
# source .install/packages/hyprland.sh
|
||||
|
||||
echo "Installing pacman packages..."
|
||||
_installPackagesPacman "${packagesPacman[@]}"
|
||||
|
||||
echo "Installing yay packages..."
|
||||
_installPackagesYay "${packagesYay[@]}"
|
||||
|
||||
# oh-my-zsh
|
||||
source .install/install-oh-my-zsh.sh
|
||||
|
||||
# Set Shell
|
||||
source .scripts/set-shell.sh
|
||||
|
||||
# Add asdf plugins
|
||||
source .install/add-asdf-plugins.sh
|
||||
30
lux/empty-theme.json
Normal file
30
lux/empty-theme.json
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
"palette": {
|
||||
"primary": "",
|
||||
"primarycontent": "",
|
||||
"secondary": "",
|
||||
"secondarycontent": "",
|
||||
"accent": "",
|
||||
"accentcontent": "",
|
||||
"neutral": "",
|
||||
"neutralcontent": "",
|
||||
"base100": "",
|
||||
"base200": "",
|
||||
"base300": "",
|
||||
"basecontent": "",
|
||||
"info": "",
|
||||
"infocontent": "",
|
||||
"success": "",
|
||||
"successcontent": "",
|
||||
"warning": "",
|
||||
"warningcontent": "",
|
||||
"error": "",
|
||||
"errorcontent": "",
|
||||
"radiusSelector": "",
|
||||
"radiusField": "",
|
||||
"radiusBox": "",
|
||||
"sizeSelector": "",
|
||||
"sizeField": "",
|
||||
"border": ""
|
||||
}
|
||||
}
|
||||
21
lux/shell.json
Normal file
21
lux/shell.json
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"powermenu": {
|
||||
"actions": [
|
||||
{
|
||||
"text": " Logout",
|
||||
"command": "hyprctl dispatch exit"
|
||||
},
|
||||
{
|
||||
"text": " Reboot",
|
||||
"command": "systemctl reboot"
|
||||
},
|
||||
{
|
||||
"text": " Shutdown",
|
||||
"command": "systemctl poweroff"
|
||||
}
|
||||
]
|
||||
},
|
||||
"wallpaper": {
|
||||
"directory": "~/Wallpapers/"
|
||||
}
|
||||
}
|
||||
28
lux/themes/dark.json
Normal file
28
lux/themes/dark.json
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
"primary": "#605dff",
|
||||
"primarycontent": "#edf1fe",
|
||||
"secondary": "#f43098",
|
||||
"secondarycontent": "#f9e4f0",
|
||||
"accent": "#00d3bb",
|
||||
"accentcontent": "#084d49",
|
||||
"neutral": "#09090b",
|
||||
"neutralcontent": "#e4e4e7",
|
||||
"base100": "#1d232a",
|
||||
"base200": "#191e24",
|
||||
"base300": "#15191e",
|
||||
"basecontent": "#ecf9ff",
|
||||
"info": "#00bafe",
|
||||
"infocontent": "#042e49",
|
||||
"success": "#00d390",
|
||||
"successcontent": "#004c39",
|
||||
"warning": "#fcb700",
|
||||
"warningcontent": "#793205",
|
||||
"error": "#ff627d",
|
||||
"errorcontent": "#4d0218",
|
||||
"radiusSelector": "8",
|
||||
"radiusField": "4",
|
||||
"radiusBox": "8",
|
||||
"sizeSelector": "3",
|
||||
"sizeField": "3",
|
||||
"border": "2"
|
||||
}
|
||||
22
lux/themes/forest.json
Normal file
22
lux/themes/forest.json
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"primary": "#1fb854",
|
||||
"primarycontent": "#000000",
|
||||
"secondary": "#1eb88e",
|
||||
"secondarycontent": "#000c07",
|
||||
"accent": "#1fb8ab",
|
||||
"accentcontent": "#010c0b",
|
||||
"neutral": "#19362d",
|
||||
"neutralcontent": "#cdd3d1",
|
||||
"base100": "#1b1717",
|
||||
"base200": "#161212",
|
||||
"base300": "#110d0d",
|
||||
"basecontent": "#cac9c9",
|
||||
"info": "#00b5ff",
|
||||
"infocontent": "#000000",
|
||||
"success": "#00a96e",
|
||||
"successcontent": "#000000",
|
||||
"warning": "#ffbe00",
|
||||
"warningcontent": "#000000",
|
||||
"error": "#ff5861",
|
||||
"errorcontent": "#000000"
|
||||
}
|
||||
22
lux/themes/light.json
Normal file
22
lux/themes/light.json
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"primary": "#422ad5",
|
||||
"primarycontent": "#e0e7ff",
|
||||
"secondary": "#f43098",
|
||||
"secondarycontent": "#f9e4f0",
|
||||
"accent": "#00d3bb",
|
||||
"accentcontent": "#084d49",
|
||||
"neutral": "#09090b",
|
||||
"neutralcontent": "#e4e4e7",
|
||||
"base100": "#ffffff",
|
||||
"base200": "#f8f8f8",
|
||||
"base300": "#eeeeee",
|
||||
"basecontent": "#18181b",
|
||||
"info": "#00bafe",
|
||||
"infocontent": "#042e49",
|
||||
"success": "#00d390",
|
||||
"successcontent": "#004c39",
|
||||
"warning": "#fcb700",
|
||||
"warningcontent": "#793205",
|
||||
"error": "#ff627d",
|
||||
"errorcontent": "#4d0218"
|
||||
}
|
||||
22
lux/themes/nord.json
Normal file
22
lux/themes/nord.json
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"primary": "#5e81ac",
|
||||
"primarycontent": "#03060b",
|
||||
"secondary": "#81a1c1",
|
||||
"secondarycontent": "#06090d",
|
||||
"accent": "#88c0d0",
|
||||
"accentcontent": "#070d10",
|
||||
"neutral": "#4c566a",
|
||||
"neutralcontent": "#d8dee9",
|
||||
"base100": "#eceff4",
|
||||
"base200": "#e5e9f0",
|
||||
"base300": "#d8dee9",
|
||||
"basecontent": "#2e3440",
|
||||
"info": "#b48ead",
|
||||
"infocontent": "#0c070b",
|
||||
"success": "#a3be8d",
|
||||
"successcontent": "#0a0d07",
|
||||
"warning": "#ebcb8b",
|
||||
"warningcontent": "#130f07",
|
||||
"error": "#bf616a",
|
||||
"errorcontent": "#0d0304"
|
||||
}
|
||||
7
mise/config.toml
Normal file
7
mise/config.toml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
[tools]
|
||||
go = "latest"
|
||||
node = "20"
|
||||
rust = "latest"
|
||||
bun = "latest"
|
||||
dotnet = "8"
|
||||
java = "latest"
|
||||
0
neofetch/config.conf
Executable file
0
neofetch/config.conf
Executable file
1
nvim
Submodule
1
nvim
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit cb60a3cd51f58ea6a8e0e2aa6cd576c846cd017c
|
||||
1
quickshell
Submodule
1
quickshell
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 618fc22e803418d922b303817c8af5d1988ecbb7
|
||||
11
swappy/config
Executable file
11
swappy/config
Executable file
|
|
@ -0,0 +1,11 @@
|
|||
[Default]
|
||||
save_dir=$HOME/Pictures/screenshots
|
||||
save_filename_format=screenshot-%Y%m%d-%H%M%S.png
|
||||
show_panel=false
|
||||
line_size=5
|
||||
text_size=20
|
||||
text_font=sans-serif
|
||||
paint_mode=brush
|
||||
early_exit=false
|
||||
fill_shape=false
|
||||
|
||||
280
wal/templates/cava-config
Executable file
280
wal/templates/cava-config
Executable file
|
|
@ -0,0 +1,280 @@
|
|||
## Configuration file for CAVA.
|
||||
# Remove the ; to change parameters.
|
||||
|
||||
|
||||
[general]
|
||||
|
||||
# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0
|
||||
; mode = normal
|
||||
|
||||
# Accepts only non-negative values.
|
||||
; framerate = 60
|
||||
|
||||
# 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off
|
||||
# new as of 0.6.0 autosens of low values (dynamic range)
|
||||
# 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0
|
||||
; autosens = 1
|
||||
; overshoot = 20
|
||||
|
||||
# Manual sensitivity in %. If autosens is enabled, this will only be the initial value.
|
||||
# 200 means double height. Accepts only non-negative values.
|
||||
; sensitivity = 100
|
||||
|
||||
# The number of bars (0-512). 0 sets it to auto (fill up console).
|
||||
# Bars' width and space between bars in number of characters.
|
||||
; bars = 0
|
||||
; bar_width = 2
|
||||
; bar_spacing = 1
|
||||
# bar_height is only used for output in "noritake" format
|
||||
; bar_height = 32
|
||||
|
||||
# For SDL width and space between bars is in pixels, defaults are:
|
||||
; bar_width = 20
|
||||
; bar_spacing = 5
|
||||
|
||||
# sdl_glsl have these default values, they are only used to calulate max number of bars.
|
||||
; bar_width = 1
|
||||
; bar_spacing = 0
|
||||
|
||||
|
||||
# Lower and higher cutoff frequencies for lowest and highest bars
|
||||
# the bandwidth of the visualizer.
|
||||
# Note: there is a minimum total bandwidth of 43Mhz x number of bars.
|
||||
# Cava will automatically increase the higher cutoff if a too low band is specified.
|
||||
; lower_cutoff_freq = 50
|
||||
; higher_cutoff_freq = 10000
|
||||
|
||||
|
||||
# Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and
|
||||
# only check for input once per second. Cava will wake up once input is detected. 0 = disable.
|
||||
; sleep_timer = 0
|
||||
|
||||
|
||||
[input]
|
||||
|
||||
# Audio capturing method. Possible methods are: 'fifo', 'portaudio', 'pipewire', 'alsa', 'pulse', 'sndio', 'oss', 'jack' or 'shmem'
|
||||
# Defaults to 'oss', 'pipewire', 'sndio', 'jack', 'pulse', 'alsa', 'portaudio' or 'fifo', in that order, dependent on what support cava was built with.
|
||||
# On Mac it defaults to 'portaudio' or 'fifo'
|
||||
# On windows this is automatic and no input settings are needed.
|
||||
#
|
||||
# All input methods uses the same config variable 'source'
|
||||
# to define where it should get the audio.
|
||||
#
|
||||
# For pulseaudio and pipewire 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink
|
||||
# (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them).
|
||||
#
|
||||
# For pipewire 'source' will be the object name or object.serial of the device to capture from.
|
||||
# Both input and output devices are supported.
|
||||
#
|
||||
# For alsa 'source' will be the capture device.
|
||||
# For fifo 'source' will be the path to fifo-file.
|
||||
# For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address
|
||||
#
|
||||
# For sndio 'source' will be a raw recording audio descriptor or a monitoring sub-device, e.g. 'rsnd/2' or 'snd/1'. Default: 'default'.
|
||||
# README.md contains further information on how to setup CAVA for sndio.
|
||||
#
|
||||
# For oss 'source' will be the path to a audio device, e.g. '/dev/dsp2'. Default: '/dev/dsp', i.e. the default audio device.
|
||||
# README.md contains further information on how to setup CAVA for OSS on FreeBSD.
|
||||
#
|
||||
# For jack 'source' will be the name of the JACK server to connect to, e.g. 'foobar'. Default: 'default'.
|
||||
# README.md contains further information on how to setup CAVA for JACK.
|
||||
#
|
||||
; method = pulse
|
||||
; source = auto
|
||||
|
||||
; method = pipewire
|
||||
; source = auto
|
||||
|
||||
; method = alsa
|
||||
; source = hw:Loopback,1
|
||||
|
||||
; method = fifo
|
||||
; source = /tmp/mpd.fifo
|
||||
|
||||
; method = shmem
|
||||
; source = /squeezelite-AA:BB:CC:DD:EE:FF
|
||||
|
||||
; method = portaudio
|
||||
; source = auto
|
||||
|
||||
; method = sndio
|
||||
; source = default
|
||||
|
||||
; method = oss
|
||||
; source = /dev/dsp
|
||||
|
||||
; method = jack
|
||||
; source = default
|
||||
|
||||
# The options 'sample_rate', 'sample_bits', 'channels' and 'autoconnect' can be configured for some input methods:
|
||||
# sample_rate: fifo, pipewire, sndio, oss
|
||||
# sample_bits: fifo, pipewire, sndio, oss
|
||||
# channels: sndio, oss, jack
|
||||
# autoconnect: jack
|
||||
# Other methods ignore these settings.
|
||||
#
|
||||
# For 'sndio' and 'oss' they are only preferred values, i.e. if the values are not supported
|
||||
# by the chosen audio device, the device will use other supported values instead.
|
||||
# Example: 48000, 32 and 2, but the device only supports 44100, 16 and 1, then it
|
||||
# will use 44100, 16 and 1.
|
||||
#
|
||||
; sample_rate = 44100
|
||||
; sample_bits = 16
|
||||
; channels = 2
|
||||
; autoconnect = 2
|
||||
|
||||
|
||||
[output]
|
||||
|
||||
# Output method. Can be 'ncurses', 'noncurses', 'raw', 'noritake', 'sdl'
|
||||
# or 'sdl_glsl'.
|
||||
# 'noncurses' (default) uses a buffer and cursor movements to only print
|
||||
# changes from frame to frame in the terminal. Uses less resources and is less
|
||||
# prone to tearing (vsync issues) than 'ncurses'.
|
||||
#
|
||||
# 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data
|
||||
# stream of the bar heights that can be used to send to other applications.
|
||||
# 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above.
|
||||
#
|
||||
# 'noritake' outputs a bitmap in the format expected by a Noritake VFD display
|
||||
# in graphic mode. It only support the 3000 series graphical VFDs for now.
|
||||
#
|
||||
# 'sdl' uses the Simple DirectMedia Layer to render in a graphical context.
|
||||
# 'sdl_glsl' uses SDL to create an OpenGL context. Write your own shaders or
|
||||
# use one of the predefined ones.
|
||||
; method = noncurses
|
||||
|
||||
# Orientation of the visualization. Can be 'bottom', 'top', 'left' or 'right'.
|
||||
# Default is 'bottom'. Other orientations are only supported on sdl and ncruses
|
||||
# output. Note: many fonts have weird glyphs for 'top' and 'right' characters,
|
||||
# which can make ncurses not look right.
|
||||
; orientation = bottom
|
||||
|
||||
# Visual channels. Can be 'stereo' or 'mono'.
|
||||
# 'stereo' mirrors both channels with low frequencies in center.
|
||||
# 'mono' outputs left to right lowest to highest frequencies.
|
||||
# 'mono_option' set mono to either take input from 'left', 'right' or 'average'.
|
||||
# set 'reverse' to 1 to display frequencies the other way around.
|
||||
; channels = stereo
|
||||
; mono_option = average
|
||||
; reverse = 0
|
||||
|
||||
# Raw output target. A fifo will be created if target does not exist.
|
||||
; raw_target = /dev/stdout
|
||||
|
||||
# Raw data format. Can be 'binary' or 'ascii'.
|
||||
; data_format = binary
|
||||
|
||||
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
|
||||
; bit_format = 16bit
|
||||
|
||||
# Ascii max value. In 'ascii' mode range will run from 0 to value specified here
|
||||
; ascii_max_range = 1000
|
||||
|
||||
# Ascii delimiters. In ascii format each bar and frame is separated by a delimiters.
|
||||
# Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)).
|
||||
; bar_delimiter = 59
|
||||
; frame_delimiter = 10
|
||||
|
||||
# sdl window size and position. -1,-1 is centered.
|
||||
; sdl_width = 1000
|
||||
; sdl_height = 500
|
||||
; sdl_x = -1
|
||||
; sdl_y= -1
|
||||
; sdl_full_screen = 0
|
||||
|
||||
# set label on bars on the x-axis. Can be 'frequency' or 'none'. Default: 'none'
|
||||
# 'frequency' displays the lower cut off frequency of the bar above.
|
||||
# Only supported on ncurses and noncurses output.
|
||||
; xaxis = none
|
||||
|
||||
# enable alacritty synchronized updates. 1 = on, 0 = off
|
||||
# removes flickering in alacritty terminal emulator.
|
||||
# defaults to off since the behaviour in other terminal emulators is unknown
|
||||
; alacritty_sync = 0
|
||||
|
||||
# Shaders for sdl_glsl, located in $HOME/.config/cava/shaders
|
||||
; vertex_shader = pass_through.vert
|
||||
; fragment_shader = bar_spectrum.frag
|
||||
|
||||
; for glsl output mode, keep rendering even if no audio
|
||||
; continuous_rendering = 0
|
||||
|
||||
# disable console blank (screen saver) in tty
|
||||
# (Not supported on FreeBSD)
|
||||
; disable_blanking = 0
|
||||
|
||||
[color]
|
||||
|
||||
# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow.
|
||||
# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires
|
||||
# a terminal that can change color definitions such as Gnome-terminal or rxvt.
|
||||
# default is to keep current terminal color
|
||||
; background = default
|
||||
; foreground = default
|
||||
|
||||
# SDL and sdl_glsl only support hex code colors, these are the default:
|
||||
; background = '#111111'
|
||||
; foreground = '#33ffff'
|
||||
|
||||
|
||||
# Gradient mode, only hex defined colors are supported,
|
||||
# background must also be defined in hex or remain commented out. 1 = on, 0 = off.
|
||||
# You can define as many as 8 different colors. They range from bottom to top of screen
|
||||
; gradient = 1
|
||||
; gradient_count = 8
|
||||
; gradient_color_1 = '#59cc33'
|
||||
; gradient_color_2 = '#80cc33'
|
||||
; gradient_color_3 = '#a6cc33'
|
||||
; gradient_color_4 = '#cccc33'
|
||||
; gradient_color_5 = '#cca633'
|
||||
; gradient_color_6 = '#cc8033'
|
||||
; gradient_color_7 = '#cc5933'
|
||||
; gradient_color_8 = '#cc3333'
|
||||
|
||||
gradient = 1
|
||||
gradient_count = 5
|
||||
gradient_color_1 = "{color1}"
|
||||
gradient_color_2 = "{color2}"
|
||||
gradient_color_3 = "{color3}"
|
||||
gradient_color_4 = "{color4}"
|
||||
gradient_color_5 = "{color5}"
|
||||
|
||||
|
||||
[smoothing]
|
||||
|
||||
# Percentage value for integral smoothing. Takes values from 0 - 100.
|
||||
# Higher values means smoother, but less precise. 0 to disable.
|
||||
# DEPRECATED as of 0.8.0, use noise_reduction instead
|
||||
; integral = 77
|
||||
|
||||
# Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable.
|
||||
; monstercat = 0
|
||||
; waves = 0
|
||||
|
||||
# Set gravity percentage for "drop off". Higher values means bars will drop faster.
|
||||
# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off".
|
||||
# DEPRECATED as of 0.8.0, use noise_reduction instead
|
||||
; gravity = 100
|
||||
|
||||
|
||||
# In bar height, bars that would have been lower that this will not be drawn.
|
||||
# DEPRECATED as of 0.8.0
|
||||
; ignore = 0
|
||||
|
||||
# Noise reduction, int 0 - 100. default 77
|
||||
# the raw visualization is very noisy, this factor adjusts the integral and gravity filters to keep the signal smooth
|
||||
# 100 will be very slow and smooth, 0 will be fast but noisy.
|
||||
; noise_reduction = 77
|
||||
|
||||
|
||||
[eq]
|
||||
|
||||
# This one is tricky. You can have as much keys as you want.
|
||||
# Remember to uncomment more than one key! More keys = more precision.
|
||||
# Look at readme.md on github for further explanations and examples.
|
||||
; 1 = 1 # bass
|
||||
; 2 = 1
|
||||
; 3 = 1 # midtone
|
||||
; 4 = 1
|
||||
; 5 = 1 # treble
|
||||
19
wal/templates/colors-hyprland.conf
Executable file
19
wal/templates/colors-hyprland.conf
Executable file
|
|
@ -0,0 +1,19 @@
|
|||
$background = rgb({background.strip})
|
||||
$foreground = rgb({foreground.strip})
|
||||
$color0 = rgb({color0.strip})
|
||||
$color1 = rgb({color1.strip})
|
||||
$color2 = rgb({color2.strip})
|
||||
$color3 = rgb({color3.strip})
|
||||
$color4 = rgb({color4.strip})
|
||||
$color5 = rgb({color5.strip})
|
||||
$color6 = rgb({color6.strip})
|
||||
$color7 = rgb({color7.strip})
|
||||
$color8 = rgb({color8.strip})
|
||||
$color9 = rgb({color9.strip})
|
||||
$color10 = rgb({color10.strip})
|
||||
$color11 = rgb({color11.strip})
|
||||
$color12 = rgb({color12.strip})
|
||||
$color13 = rgb({color13.strip})
|
||||
$color14 = rgb({color14.strip})
|
||||
$color15 = rgb({color15.strip})
|
||||
|
||||
22
wal/templates/colors-rofi-pywal.rasi
Executable file
22
wal/templates/colors-rofi-pywal.rasi
Executable file
|
|
@ -0,0 +1,22 @@
|
|||
* {{
|
||||
current-image: "{wallpaper}";
|
||||
background: {background};
|
||||
foreground: {foreground};
|
||||
color0: {color0};
|
||||
color1: {color1};
|
||||
color2: {color2};
|
||||
color3: {color3};
|
||||
color4: {color4};
|
||||
color5: {color5};
|
||||
color6: {color6};
|
||||
color7: {color7};
|
||||
color8: {color8};
|
||||
color9: {color9};
|
||||
color10: {color10};
|
||||
color11: {color11};
|
||||
color12: {color12};
|
||||
color13: {color13};
|
||||
color14: {color14};
|
||||
color15: {color15};
|
||||
}}
|
||||
|
||||
23
wal/templates/colors.lua
Executable file
23
wal/templates/colors.lua
Executable file
|
|
@ -0,0 +1,23 @@
|
|||
|
||||
local M = {{}}
|
||||
|
||||
M.background = "{background}"
|
||||
M.foreground = "{foreground}"
|
||||
M.color0 = "{color0}"
|
||||
M.color1 = "{color1}"
|
||||
M.color2 = "{color2}"
|
||||
M.color3 = "{color3}"
|
||||
M.color4 = "{color4}"
|
||||
M.color5 = "{color5}"
|
||||
M.color6 = "{color6}"
|
||||
M.color7 = "{color7}"
|
||||
M.color8 = "{color8}"
|
||||
M.color9 = "{color9}"
|
||||
M.color10 = "{color10}"
|
||||
M.color11 = "{color11}"
|
||||
M.color12 = "{color12}"
|
||||
M.color13 = "{color13}"
|
||||
M.color14 = "{color14}"
|
||||
M.color15 = "{color15}"
|
||||
|
||||
return M
|
||||
8
wal/templates/colors.rasi
Normal file
8
wal/templates/colors.rasi
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
* {{
|
||||
background: {background};
|
||||
background-alt: {background};
|
||||
foreground: {foreground};
|
||||
selected: {color1};
|
||||
active: {color2};
|
||||
urgent: {color3};
|
||||
}}
|
||||
Loading…
Add table
Reference in a new issue