feat: hyprland fix error on new version & change wallpaper to video wallpaper

This commit is contained in:
grassblock 2025-01-17 13:54:22 +08:00
parent 2976fbab63
commit fadb073153
5 changed files with 140 additions and 16 deletions

View file

@ -0,0 +1,46 @@
# This file was imported from envvars config in .config .
# Don't edit this file! This file would be override by import-env script.
#QT_STYLE_OVERRIDE=kvantum
env=MOZ_ENABLE_WAYLAND,1
env=QT_QPA_PLATFORM,wayland;xcb
env=XCURSOR_THEME,Bibata-Modern-Ice
#XCURSOR_SIZE=24
env=SDL_VIDEODRIVER,wayland
env=GDK_BACKEND,wayland,x11,*
env=XDG_DATA_HOME,$HOME/.local/share
env=XDG_CONFIG_HOME,$HOME/.config
env=XDG_STATE_HOME,$HOME/.local/state
env=XDG_CACHE_HOME,$HOME/.cache
# cleaning up home for applications
# adb
$XDG_DATA_HOME=/home/grassblock/.local/share
env=ANDROID_USER_HOME,$XDG_DATA_HOME/android
# bash
${XDG_STATE_HOME}=/home/grassblock/.local/state
env=HISTFILE,${XDG_STATE_HOME}/bash/history
# cargo
env=CARGO_HOME,$XDG_DATA_HOME/cargo
# novideo
$XDG_CACHE_HOME=/home/grassblock/.cache
env=CUDA_CACHE_PATH,$XDG_CACHE_HOME/nv
# gradle
env=GRADLE_USER_HOME,$XDG_DATA_HOME/gradle
# gtk-2.0
$XDG_CONFIG_HOME=/home/grassblock/.config
env=GTK2_RC_FILES,$XDG_CONFIG_HOME/gtk-2.0/gtkrc
# java
${XDG_CONFIG_HOME}=/home/grassblock/.config
env=_JAVA_OPTIONS,-Djava.util.prefs.userRoot=${XDG_CONFIG_HOME}/java -Djavafx.cachedir=${XDG_CACHE_HOME}/openjfx
# npm
env=NPM_CONFIG_USERCONFIG,$XDG_CONFIG_HOME/npm/npmrc
# platformio
env=PLATFORMIO_CORE_DIR,$XDG_DATA_HOME/platformio
# python (before v3.13.0,still beta)
env=PYTHONSTARTUP,$XDG_CONFIG_HOME/python/pythonrc
# teamspeak
env=TS3_CONFIG_DIR,$XDG_CONFIG_HOME/ts3client
# wakatime
env=WAKATIME_HOME,$XDG_CONFIG_HOME/wakatime
# wine
env=WINEPREFIX,$XDG_DATA_HOME/wine

View file

@ -18,22 +18,22 @@ monitor=,preferred,auto,auto
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Execute your favorite apps at launch
# Execute apps & services at launch
#exec-once = sleep 1 & dbus-update-activation-environment --systemd --all # now uses uwsm instead
exec-once = waybar & hypridle & hyprpaper
exec-once = wlsunset -l 39.2 -L 118.6
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec-once = mako
exec-once = fcitx5 -d --replace
exec-once = XDG_MENU_PREFIX, plasma- #this fix dolphin open with
exec-once = wl-paste --watch cliphist store #Stores only text data
exec-once = wl-paste --type image --watch cliphist store
exec-once = udiskie --appindicator --no-automount # show appindicator but don't mount devices
exec-once = dbus-update-activation-environment --systemd --all
exec-once = echo 'Xft.dpi:144' | xrdb -merge
exec-once = echo 'Xft.dpi:144' | xrdb -merge # fix xwayland scaling
exec-once = /home/grassblock/.config/hypr/scripts/video-wallpaper
# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf
source = ~/.config/hypr/conf/env.conf # This imports the environment varibles
# Set programs that you use
$terminal = kitty
@ -45,15 +45,16 @@ env = HYPRCURSOR_THEME,Bibata-Modern-Ice
env = HYPRCURSOR_SIZE,24
env = XCURSOR_SIZE,24
env = XCURSOR_THEME,Bibata-Modern-Ice
env = QT_QPA_PLATFORMTHEME,qt6ct # change to qt6ct if you have that
env = QT_QPA_PLATFORMTHEME,qt6ct # change to qt5ct if you only have that
#env = QT_STYLE_OVERRIDE,kvantum #ignore for kde applications crashing
#env = GTK_THEME,Nordic-bluish-dark #ignore for libadwaita applications
env = ICON_THEME,Papirus-Dark
#env = ICON_THEME,Papirus-Dark
#env = QT_SCALE_FACTOR_ROUNDING_POLICY,Passthrough
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = LANG,zh_CN.UTF-8
env = LANG,en_GB.UTF-8
env = XDG_SESSION_DESKTOP,Hyprland
env = XDG_MENU_PREFIX,arch-
#env = XDG_MENU_PREFIX, plasma-
env = XDG_MENU_PREFIX,arch- #this fix dolphin open with
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
@ -98,10 +99,14 @@ decoration {
passes = 1
}
drop_shadow = yes
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
#dim_inactive = true
shadow {
enabled = true
range = 4
render_power = 3
color =rgba(1a1a1aee)
}
}
animations {
@ -153,7 +158,7 @@ misc {
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
#windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
windowrule = pseudo,fcitx
# waylyrics windowrule for desktop lyrics
windowrulev2 = float,class:(io.github.waylyrics.Waylyrics)
@ -170,14 +175,21 @@ windowrulev2 = noborder,class:(Waydroid)
windowrulev2 = noshadow,class:(Waydroid)
windowrulev2 = nomaxsize,class:(Waydroid)
# shimeji
windowrule = float, com-group_finity-mascot-Main
windowrule = noblur, com-group_finity-mascot-Main
windowrule = nofocus, com-group_finity-mascot-Main
windowrule = noshadow, com-group_finity-mascot-Main
windowrule = noborder, com-group_finity-mascot-Main
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Q, exec, $terminal
bind = $mainMod, K, exec, $terminal
bind = $mainMod, C, killactive,
bind = $mainMod, M, exit,
bind = ALT, F4, killactive,
#bind = $mainMod, M, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, F, togglefloating,
bind = $mainMod, R, exec, $menu

View file

@ -0,0 +1,53 @@
#!/bin/bash
# Output file
output_file="$HOME/.config/hypr/conf/env.conf"
# Well-known environment variables to skip
skip_vars="HOME"
# Define the output file
output_file="$HOME/.config/hypr/conf/env.conf"
# Write Info into file
echo -e "# This file was imported from envvars config in .config .\n# Don't edit this file! This file would be override by import-env script.\n" > "$output_file"
# Temporary associative array to store referenced variables
declare -A var_references
# Process each .conf file in the directory
for conf_file in ~/.config/environment.d/*.conf; do
while IFS= read -r line || [ -n "$line" ]; do
# Preserve comments
if [[ $line =~ ^#.* ]]; then
echo "$line" >> "$output_file"
continue
fi
# Handle variable definitions, skipping lines without '='
if [[ $line =~ ^([A-Za-z_][A-Za-z0-9_]*)=(.*)$ ]]; then
key="${BASH_REMATCH[1]}"
value="${BASH_REMATCH[2]}"
# Check if the value references another variable
if [[ $value =~ \$(\{?[A-Za-z_][A-Za-z0-9_]*\}?) ]]; then
var_name="${BASH_REMATCH[1]}"
var_name="${var_name//\{\}/}"
# If the referenced variable is not in the skip list, add to references
if ! [[ $skip_vars =~ $var_name ]]; then
if [[ -z ${var_references[$var_name]} ]]; then
var_ref_value=$(eval echo \$$var_name)
echo "\$$var_name=$var_ref_value" >> "$output_file"
var_references[$var_name]=$var_ref_value
fi
fi
fi
# Write the environment variable in the desired format
echo "env=${key},${value}" >> "$output_file"
fi
done < "$conf_file"
done
echo "Merged environment variables written to $output_file"

View file

@ -0,0 +1,11 @@
#!/bin/bash
# Define the output file
output_file="$HOME/.config/hypr/conf/env.conf"
# Write Info into file
echo -e "# This file was imported from envvars config in .config .\n# Don't edit this file! This file would be override by import-env script.\n" > "$output_file"
# Use sed to process all .conf files in the directory
sed '/^#/! s/^\([^=]\+\)=\(.*\)$/env=\1,\2/' ~/.config/environment.d/*.conf >> "$output_file"

View file

@ -0,0 +1,2 @@
#!/usr/bin/env bash
mpvpaper -p -o "no-audio loop keepaspect=yes load-scripts=no vo=libmpv" eDP-1 ~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/workshop/content/431960/2936220664/rooftop.mp4