various updates, mainly hyprland

This commit is contained in:
2024-10-29 01:14:57 +01:00
parent 417c05c469
commit a0fb1d31f3
16 changed files with 597 additions and 55 deletions

View File

@ -224,4 +224,12 @@
"key": "ctrl+up", "key": "ctrl+up",
"command": "jupyter.gotoPrevCellInFile" "command": "jupyter.gotoPrevCellInFile"
}, },
{
"key": "ctrl+a a",
"command": "editor.action.selectAll"
},
{
"key": "ctrl+a",
"command": "-editor.action.selectAll"
},
] ]

View File

@ -104,4 +104,5 @@
"hexeditor.defaultEndianness": "little", "hexeditor.defaultEndianness": "little",
"hexeditor.inspectorType": "aside", "hexeditor.inspectorType": "aside",
"typst-lsp.exportPdf": "onType", "typst-lsp.exportPdf": "onType",
"python.createEnvironment.trigger": "off",
} }

View File

@ -1,51 +1,11 @@
live_config_reload = true
[bell]
animation = "EaseOutExpo"
color = "0xffffff"
duration = 0
[colors] [colors]
draw_bold_text_with_bright_colors = false draw_bold_text_with_bright_colors = false
[colors.bright]
black = "#505050"
blue = "#547C99"
cyan = "#7DD6CF"
green = "#7B9246"
magenta = "#9F4E85"
red = "#A53C23"
white = "#F5F5F5"
yellow = "#D3A04D"
[colors.cursor]
cursor = "0x4d4d4c"
text = "0xffffff"
[colors.normal]
black = "#151515"
blue = "#6C99BB"
cyan = "#7DD6CF"
green = "#7B9246"
magenta = "#9F4E85"
red = "#A53C23"
white = "#D0D0D0"
yellow = "#D3A04D"
[colors.primary]
background = "#222222"
foreground = "#D0D0D0"
[cursor.style] [cursor.style]
shape = "Beam" shape = "Beam"
blinking = "On" blinking = "On"
[debug]
log_level = "OFF"
persistent_logging = false
print_events = false
render_timer = false
[font] [font]
size = 16.0 size = 16.0
@ -69,6 +29,17 @@ style = "Regular"
x = 0 x = 0
y = 0 y = 0
[bell]
animation = "EaseOutExpo"
color = "0xffffff"
duration = 0
[debug]
log_level = "OFF"
persistent_logging = false
print_events = false
render_timer = false
[mouse] [mouse]
bindings = [ bindings = [
{ action = "PasteSelection", mouse = "Middle" }, { action = "PasteSelection", mouse = "Middle" },
@ -103,3 +74,8 @@ lines = 40
[window.padding] [window.padding]
x = 5 x = 5
y = 5 y = 5
[general]
live_config_reload = true
# Set the theme by changing the link 'themes/current.toml'
import = ["~/.config/alacritty/themes/current.toml"]

View File

@ -0,0 +1 @@
/home/paul/dotfiles/.config/alacritty/themes/dark/default.toml

View File

@ -0,0 +1,44 @@
# Alacritty's default color scheme pre-0.13 (based on tomorrow_night)
# https://github.com/alacritty/alacritty/blob/v0.12.3/alacritty/src/config/color.rs
[colors.primary]
foreground = "#c5c8c6"
background = "#1d1f21"
[colors.normal]
black = "#1d1f21"
red = "#cc6666"
green = "#b5bd68"
yellow = "#f0c674"
blue = "#81a2be"
magenta = "#b294bb"
cyan = "#8abeb7"
white = "#c5c8c6"
[colors.bright]
black = "#666666"
red = "#d54e53"
green = "#b9ca4a"
yellow = "#e7c547"
blue = "#7aa6da"
magenta = "#c397d8"
cyan = "#70c0b1"
white = "#eaeaea"
[colors.dim]
black = "#131415"
red = "#864343"
green = "#777c44"
yellow = "#9e824c"
blue = "#556a7d"
magenta = "#75617b"
cyan = "#5b7d78"
white = "#828482"
[colors.hints]
start = { foreground = "#1d1f21", background = "#e9ff5e" }
end = { foreground = "#e9ff5e", background = "#1d1f21" }
[colors.search]
matches = { foreground = "#000000", background = "#ffffff" }
focused_match = { foreground = "#ffffff", background = "#000000" }

View File

@ -0,0 +1 @@
alacritty-0-12.toml

View File

@ -0,0 +1,27 @@
[colors.bright]
black = "#505050"
blue = "#547C99"
cyan = "#7DD6CF"
green = "#7B9246"
magenta = "#9F4E85"
red = "#A53C23"
white = "#F5F5F5"
yellow = "#D3A04D"
[colors.cursor]
cursor = "0x4d4d4c"
text = "0xffffff"
[colors.normal]
black = "#151515"
blue = "#6C99BB"
cyan = "#7DD6CF"
green = "#7B9246"
magenta = "#9F4E85"
red = "#A53C23"
white = "#D0D0D0"
yellow = "#D3A04D"
[colors.primary]
background = "#222222"
foreground = "#D0D0D0"

View File

@ -0,0 +1 @@
google-light.toml

View File

@ -0,0 +1,27 @@
[colors.bright]
black = "#666666"
blue = "#0000ff"
cyan = "#00e5e5"
green = "#00d900"
magenta = "#e500e5"
red = "#e50000"
white = "#e5e5e5"
yellow = "#e5e500"
[colors.cursor]
cursor = "0x4d4d4c"
text = "0xffffff"
[colors.normal]
black = "#000000"
blue = "#0000b2"
cyan = "#00a6b2"
green = "#00a600"
magenta = "#b200b2"
red = "#990000"
white = "#bfbfbf"
yellow = "#999900"
[colors.primary]
background = "#f0f0f0"
foreground = "#000000"

276
.config/hypr/hyprland.conf Normal file
View File

@ -0,0 +1,276 @@
# This is an example Hyprland config file.
# Refer to the wiki for more information.
# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/
# Please note not all available settings / options are set here.
# For a full list, see the wiki
# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf
################
### MONITORS ###
################
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=DP-2,3440x1440@144,auto,auto
monitor=DP-3,1920x1080,-1080x0,1,transform,1
###################
### MY PROGRAMS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use
$terminal = alacritty
$fileManager = nautilus
$menu = wofi --show drun
$browser = firefox
#################
### AUTOSTART ###
#################
# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:
# exec-once = $terminal
# exec-once = nm-applet &
# exec-once = waybar & hyprpaper & firefox
exec-once = hyprpaper
exec-once = waybar
#############################
### ENVIRONMENT VARIABLES ###
#############################
# See https://wiki.hyprland.org/Configuring/Environment-variables/
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
env = LIBVA_DRIVER_NAME,nvidia
env = XDG_SESSION_TYPE,wayland
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
cursor {
no_hardware_cursors = true
}
#####################
### LOOK AND FEEL ###
#####################
# Refer to https://wiki.hyprland.org/Configuring/Variables/
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 5
gaps_out = 20
border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false
layout = dwindle
}
# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
rounding = 10
# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 1.0
drop_shadow = true
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
enabled = true
size = 3
passes = 1
vibrancy = 0.1696
}
}
# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
enabled = true
# 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
}
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
}
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
new_status = master
}
# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
}
#############
### INPUT ###
#############
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = de
kb_variant =
kb_model =
kb_options =
kb_rules =
follow_mouse = 1
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
touchpad {
natural_scroll = false
}
}
# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
workspace_swipe = false
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
name = epic-mouse-v1
sensitivity = -0.5
}
###################
### KEYBINDINGS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, T, exec, $terminal
bind = $mainMod, B, exec, $browser
bind = $mainMod, Return, exec, tofi-drun | xargs hyprctl dispatch exec --
bind = $mainMod, Q, killactive,
bind = $mainMod, M, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, V, togglefloating,
bind = $mainMod, R, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
# 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
# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Laptop multimedia keys for volume and LCD brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
# Requires playerctl
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
##############################
### WINDOWS AND WORKSPACES ###
##############################
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# Ignore maximize requests from apps. You'll probably like this.
windowrulev2 = suppressevent maximize, class:.*
# Fix some dragging issues with XWayland
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0

View File

@ -0,0 +1,2 @@
preload = /home/paul/downloads/gnome-background.webp
wallpaper = , /home/paul/downloads/gnome-background.webp

18
.config/tofi/config Normal file
View File

@ -0,0 +1,18 @@
prompt-text = "> "
text-color = #cdd6f4
prompt-color = #585b70
selection-color = #cba6f7
background-color = #181825aa
width = 100%
padding-left = 35%
padding-top = 30%
height = 100%
border-width = 0
outline-width = 0
result-spacing = 14
num-results = 8
font = Cantarell
font-variations = "wght 600"
font-size = 14

6
.config/waybar/.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,6 @@
{
"files.associations": {
"config" : "jsonc"
},
"editor.fontFamily": "'Fira Code', 'monospace', monospace"
}

83
.config/waybar/config Normal file
View File

@ -0,0 +1,83 @@
{
"layer": "top",
"modules-left": [
"custom/arch",
"hyprland/workspaces"
],
"modules-center": [
"clock",
"custom/spotify"
],
"modules-right": [
"cpu",
"memory",
"pulseaudio",
"bluetooth",
"network"
],
"custom/arch": {
"format": "  ",
"tooltip": false,
"on-click": "sh $HOME/.config/rofi/bin/powermenu"
},
"hyprland/workspaces": {
"format": "{icon}",
"tooltip": false,
"all-outputs": true,
"format-icons": {
"active": "",
"default": ""
}
},
"clock": {
"format": "<span color='#b4befe'> </span>{0:%H:%M:%S} <span color='#b4befe'>󰸗 </span>{0:%d.%m.%Y W%W}",
"interval": 1
},
"custom/spotify": {
"exec": "/usr/bin/python3 /home/paul/downloads/repos/Waybar/resources/custom_modules/mediaplayer.py --player spotify",
"format": "{} ",
"return-type": "json",
"on-click": "playerctl play-pause",
"on-scroll-up": "playerctl next",
"on-scroll-down": "playerctl previous"
},
"cpu": {
"format": "<span color='#b4befe'></span> {usage}%",
"interval": 5
},
"memory": {
"format": "<span color='#b4befe'></span> {percentage}% ({used}GiB)",
"interval": 5
},
"pulseaudio": {
"format": "<span color='#b4befe'>{icon}</span> {volume}%",
"format-muted": "",
"tooltip": false,
"format-icons": {
"headphone": "",
"default": [
"",
"",
"󰕾",
"󰕾",
"󰕾",
"",
"",
""
]
},
"scroll-step": 1,
},
"bluetooth": {
"format": "<span color='#b4befe'></span> {status}",
"format-disabled": "", // an empty format will hide the module
"format-connected": "<span color='#b4befe'></span> {num_connections}",
"tooltip-format": "{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias} {device_address}"
},
"network": {
"format": " {ifname}",
"format-ethernet": " {ipaddr}/{cidr}",
"tooltip": false,
}
}

71
.config/waybar/style.css Normal file
View File

@ -0,0 +1,71 @@
* {
border: none;
font-family: 'Fira Code', 'Symbols Nerd Font Mono';
font-size: 12px;
font-feature-settings: '"zero", "ss01", "ss02", "ss03", "ss04", "ss05", "cv31"';
min-height: 20px;
}
window#waybar {
background: transparent;
}
#custom-arch, #workspaces {
border-radius: 10px;
background-color: rgba(17, 17, 27, 0.6);
color: #b4befe;
margin-top: 5px;
margin-right: 5px;
padding-top: 1px;
padding-left: 10px;
padding-right: 10px;
}
#custom-arch {
font-size: 14px;
margin-left: 15px;
color: #b4befe;
}
#custom-spotify {
margin-left: 10px;
}
#workspaces button {
color: #b4befe;
}
#workspaces button:hover {
color: #000000
}
#clock, #custom-spotify, #cpu, #memory, #pulseaudio, #bluetooth, #network{
border-radius: 10px;
background-color: rgba(17, 17, 27, 0.6);
color: #cdd6f4;
margin-top: 3px;
padding-left: 10px;
padding-right: 10px;
margin-right: 15px;
}
#bluetooth, #cpu {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
padding-right: 5px;
margin-right: 0
}
#network, #memory {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
padding-left: 5px;
}
#network {
margin-right: 10px;
}
#clock {
margin-right: 0;
}

30
.zshrc
View File

@ -81,11 +81,20 @@ source $ZSH/oh-my-zsh.sh
# You may need to manually set your language environment # You may need to manually set your language environment
# export LANG=en_US.UTF-8 # export LANG=en_US.UTF-8
# Usually, vscode returns immediately after being run. This makes it not
# suitable for things like crontab or git, which wait until the editor has
# closed to continue. In such cases, we use the -w option to make it wait.
codewait="/usr/local/bin/code-wait.sh"
if [ ! -e $codewait ]; then
echo "Waiting version of vscode is missing."
fi
# Preferred editor for local and remote sessions # Preferred editor for local and remote sessions
if [[ -n $SSH_CONNECTION ]]; then if [[ -n $SSH_CONNECTION ]]; then
export EDITOR='nano' export EDITOR='nano'
else else
export EDITOR='code' export EDITOR=$codewait
export VISUAL=$codewait
fi fi
# Compilation flags # Compilation flags
@ -136,6 +145,7 @@ alias wol=wakeonlan
alias ge=gnome-extensions alias ge=gnome-extensions
alias open="xdg-open" alias open="xdg-open"
alias lg="lazygit" alias lg="lazygit"
alias wstmux="cd ~/code/wasteside && tmux new -A -s wasteside"
alias R="R --no-save" alias R="R --no-save"
@ -146,7 +156,7 @@ export PATH="/usr/local/opt/tcl-tk/bin:$PATH"
[ -f /opt/homebrew/etc/profile.d/autojump.sh ] && . /opt/homebrew/etc/profile.d/autojump.sh [ -f /opt/homebrew/etc/profile.d/autojump.sh ] && . /opt/homebrew/etc/profile.d/autojump.sh
# vscode shortcuts # vscode shortcuts
alias ws="cd ~/code/wasteside && code . && tmux new -A -s wasteside" alias ws="cd ~/code/wasteside/app && code . && tmux new -A -s wasteside"
# Fix ls colors for synology directories # Fix ls colors for synology directories
LS_COLORS+=':ow=01;33' LS_COLORS+=':ow=01;33'
@ -167,19 +177,9 @@ bms # run it, so it reloads on terminal open
# zoxide # zoxide
eval "$(zoxide init --cmd cd zsh)" eval "$(zoxide init --cmd cd zsh)"
# disable suspend while ssh is active
if [ "$SSH_CLIENT" ] &&
! pstree -ps $$ |
grep -q -- '-systemd-inhibit(' >/dev/null; then
echo "Inhibiting automatic standby"
exec /usr/bin/systemd-inhibit \
--what=idle --why='Interactive SSH Session' -- \
"$SHELL" "$@"
fi
# SDKMAN & Java # SDKMAN & Java
export SDKMAN_DIR="$HOME/.sdkman" export SDKMAN_DIR="$HOME/.sdkman"
[[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh" [[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh"
# Yarn
export PATH="$HOME/.yarn/bin:$PATH"