Add start-qtile wrapper and env variables

This commit is contained in:
Aleksey Samoilov 2023-11-26 12:16:39 +04:00
parent ebb076d8f3
commit e6bb564d78
5 changed files with 88 additions and 11 deletions

View file

@ -0,0 +1,17 @@
# Force Wayland for Mozilla Firefox
MOZ_ENABLE_WAYLAND=1
MOZ_DBUS_REMOTE=1
# Force Wayland for Qt apps
QT_QPA_PLATFORM="wayland;xcb"
QT_QPA_PLATFORMTHEME=qt5ct
# Set default cursor size
XCURSOR_SIZE=24
# Force Wayland for EFL (Enlightenment) apps
ECORE_EVAS_ENGINE="wayland-egl"
ELM_ACCEL="gl"
# Java XWayland blank screens fix
_JAVA_AWT_WM_NONREPARENTING=1

View file

@ -1,14 +1,18 @@
#!/usr/bin/env bash #!/usr/bin/env bash
export XDG_CURRENT_DESKTOP=wlroots
export XDG_SESSION_DESKTOP="${XDG_SESSION_DESKTOP:-wlroots}"
export XDG_SESSION_TYPE=wayland
VARIABLES="DESKTOP_SESSION XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE"
VARIABLES="${VARIABLES} DISPLAY WAYLAND_DISPLAY"
if hash dbus-update-activation-environment 2>/dev/null; then
# shellcheck disable=SC2086
dbus-update-activation-environment --systemd ${VARIABLES:- --all}
fi
# PolicyKit Agent # PolicyKit Agent
/usr/bin/mate-polkit /usr/bin/mate-polkit
# nwg-drawer as a daemon
pkill nwg-drawer
/usr/bin/nwg-drawer -r &
# PCmanFM-Qt as a daemon
/usr/bin/pcmanfm-qt -d
# Wallpaper script (you can change wallpaper with Azote) # Wallpaper script (you can change wallpaper with Azote)
exec ~/.azotebg exec ~/.azotebg

View file

@ -341,10 +341,10 @@ auto_minimize = True
# When using the Wayland backend, this can be used to configure input devices. # When using the Wayland backend, this can be used to configure input devices.
wl_input_rules = None wl_input_rules = None
#@hook.subscribe.startup_once @hook.subscribe.startup_once
#def start_once(): def start_once():
# home = os.path.expanduser('~') home = os.path.expanduser('~')
# subprocess.call([home + '/.config/qtile/autostart.sh']) subprocess.call([home + '/.config/qtile/autostart.sh'])
# XXX: Gasp! We're lying here. In fact, nobody really uses or cares about this # XXX: Gasp! We're lying here. In fact, nobody really uses or cares about this

50
usr/bin/start-qtile-wayland Executable file
View file

@ -0,0 +1,50 @@
#!/usr/bin/env sh
## General exports
export XDG_CURRENT_DESKTOP=wlroots
export XDG_SESSION_DESKTOP=wlroots
export XDG_SESSION_TYPE=wayland
# Check if system is running in virtual machine
case "$(systemd-detect-virt)" in
qemu)
export WLR_RENDERER=pixman
export WLR_NO_HARDWARE_CURSORS=1
;;
kvm)
export WLR_NO_HARDWARE_CURSORS=1
;;
oracle)
export WLR_NO_HARDWARE_CURSORS=1
;;
esac
# Apply Nvidia-specific variables
if [ -d /sys/module/nvidia ]; then
export WLR_NO_HARDWARE_CURSORS=1
export GBM_BACKEND=nvidia-drm
export __GLX_VENDOR_LIBRARY_NAME=nvidia
export LIBVA_DRIVER_NAME=nvidia
fi
## Load system environment customizations
if [ -d /etc/environment.d ]; then
set -o allexport
for f in /etc/environment.d/*.conf; do
# shellcheck source=/dev/null
. "$f"
done
set +o allexport
fi
## Load user environment customizations
if [ -d "${XDG_CONFIG_HOME:-$HOME/.config}/environment.d" ]; then
set -o allexport
for i in "${XDG_CONFIG_HOME:-$HOME/.config}/environment.d"/*.conf; do
# shellcheck source=/dev/null
. "$i"
done
set +o allexport
fi
exec systemd-cat -- /usr/bin/qtile start -b wayland $@

View file

@ -0,0 +1,6 @@
[preferred]
# Use xdg-desktop-portal-gtk for every portal interface...
default=gtk
# ... except for the ScreenCast and Screenshot
org.freedesktop.impl.portal.ScreenCast=wlr
org.freedesktop.impl.portal.Screenshot=wlr