Closed benji2512 closed 2 weeks ago
looks like you're using nvidia. Make sure the first defined gpu in the env is the integrated one. Reverse-feeding from Nvidia is impossible due to nvidia's hardware limitations.
yes, currently that is the way it is setup.
card1
is intel integrated graphics
card0
is Nvidia
lspci | grep -E 'VGA|3D'
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
01:00.0 VGA compatible controller: NVIDIA Corporation GA107GLM [RTX A1000 Laptop GPU] (rev a1)
eza -l /dev/dri/by-path/
lrwxrwxrwx@ - root 8 Aug 13:38 pci-0000:00:02.0-card -> ../card1
lrwxrwxrwx@ - root 8 Aug 13:38 pci-0000:00:02.0-render -> ../renderD128
lrwxrwxrwx@ - root 8 Aug 13:38 pci-0000:01:00.0-card -> ../card0
lrwxrwxrwx@ - root 8 Aug 13:38 pci-0000:01:00.0-render -> ../renderD129
can you post a trace log? HYPRLAND_TRACE=1 AQ_TRACE=1 Hyprland
, and before you launch, make sure debug:disable_logs
is disabled (aka logs enabled, by default disable_logs is true). Then attach the log file. See https://wiki.hyprland.org/Crashes-and-Bugs/#getting-the-log for where the log is
Attached is the log as requested.
External screen is plugged in, verbose logs is enableddebug:disable_logs = false
, and ran HYPRLAND_TRACE=1 AQ_TRACE=1 Hyprland
in terminal
hyprland.log
you launched hyprland on a wayland session. Launch it from a tty.
which ports are the ones that are problematic?
HDMI(HDMI-A-2) and USB-C(DP-5/6) USB-C connectivity is absolutely fine other than the video output.
HDMI-A-2, DP-5 and DP-6 are all not connected to anything according to the log
Both HDMI-A-2 and DP-6 were 100% connected at the time of that log
does it stay lit black but enabled or does it show a "no signal" screen?
Also, can you try latest hyprland git?
It recognises input, stays active for 3 seconds and goes to sleep. Never a no signal screen. I can try to use hyprland git, unsure of how for Fedora but I'll look at your docs
So I pulled latest master, built with meson and ninja(CMake fails),
meson setup build -Dbuildtype=debug
ninja -C build
copied Hyprland, hyprctl, hyprpm binaries to /usr/bin/ and rebooted.
Still the same behaviour unfortunately.
can you downgrade to 0.41.2 (where it worked) and get a trace log with HYPRLAND_TRACE=1 HYPRLAND_LOG_WLR=1 Hyprland
?
Curious if this is the same https://github.com/hyprwm/aquamarine/issues/40
there are a bunch of issues about black monitors but I don't know how to group them
Yes I know, I wish I could help you better
I tried with HYPRLAND_EGL_NO_MODIFIERS
this doesn't solve the issue.
PS: love the comments
// FIXME: make sure the buffer actually follows the available scanout dmabuf formats
// and comes from the appropriate device. This may implode on multi-gpu!!
FWIW, after some (seemingly irrelevant?) updates earlier today, this issue is partially remediated on my dual-GPU system. If the external monitor is present at Hyprland's launch time, it works as expected — but upon being hotplugged, the "black screen" state appears.
The only possibly-related update I can see is mesa (1:24.1.5-2 -> 1:24.1.6-1), in case that helps anyone else. (Edit: this is on Arch)
please try the above mr
Eventually managed to get 0.41.2 built
here is the logfile as requested with HYPRLAND_TRACE=1 HYPRLAND_LOG_WLR=1 Hyprland
from a tty
hyprland.log
Added comments in MR
After building aquamarine 3.3 and building latest hyprland-git, external monitors work as expected. Will test out for next couple of days and close issue if everything works :+1:
Haven't had any issues since above message. Closing this as fixed
Regression?
No
System Info and Version
System/Version info
```sh Hyprland, built from branch at commit 9a09eac79b85c846e3a865a9078a3f8ff65a9259 (props: bump version to 0.42.0). Date: Wed Aug 7 19:17:10 2024 Tag: v0.42.0, commits: 5069 flags: (if any) System Information: System name: Linux Node name: li-1f50f5cc-28e7-11b2-a85c-85dfe8a45f14.ibm.com Release: 6.9.12-200.fc40.x86_64 Version: #1 SMP PREEMPT_DYNAMIC Sat Jul 27 15:56:15 UTC 2024 GPU information: 00:02.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-P Integrated Graphics Controller [8086:4626] (rev 0c) (prog-if 00 [VGA controller]) 01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA107GLM [RTX A1000 Laptop GPU] [10de:25b9] (rev a1) (prog-if 00 [VGA controller]) NVRM version: NVIDIA UNIX x86_64 Kernel Module 555.58.02 Tue Jun 25 01:39:15 UTC 2024 os-release: NAME="Fedora Linux" VERSION="40 (Workstation Edition)" ID=fedora VERSION_ID=40 VERSION_CODENAME="" PLATFORM_ID="platform:f40" PRETTY_NAME="Fedora Linux 40 (Workstation Edition)" ANSI_COLOR="0;38;2;60;110;180" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:40" DEFAULT_HOSTNAME="fedora" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f40/system-administrators-guide/" SUPPORT_URL="https://ask.fedoraproject.org/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=40 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=40 SUPPORT_END=2025-05-13 VARIANT="Workstation Edition" VARIANT_ID=workstation plugins: ======Config-Start====== Config File: /home/benclarke/.config/hypr/hyprland.conf: Read Succeeded # Sourcing external config files # Default Configs $configs = $HOME/.config/hypr/configs source=$configs/Settings.conf source=$configs/Keybinds.conf # User Configs $UserConfigs = $HOME/.config/hypr/UserConfigs source= $UserConfigs/Startup_Apps.conf source= $UserConfigs/ENVariables.conf source= $UserConfigs/Monitors.conf source= $UserConfigs/Laptops.conf source= $UserConfigs/LaptopDisplay.conf source= $UserConfigs/WindowRules.conf source= $UserConfigs/UserKeybinds.conf source= $UserConfigs/UserSettings.conf source= $UserConfigs/WorkspaceRules.conf exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP Config File: /home/benclarke/.config/hypr/configs/Settings.conf: Read Succeeded # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # # Default Settings. avoid changing this file as during update, this will be replaced # refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables # Initial boot script enable to apply initial wallpapers, theming, new settings etc. exec-once = $HOME/.config/hypr/initial-boot.sh Config File: /home/benclarke/.config/hypr/configs/Keybinds.conf: Read Succeeded # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # # Default Keybinds # visit https://wiki.hyprland.org/Configuring/Binds/ for more info $mainMod = SUPER # Default $scriptsDir = $HOME/.config/hypr/scripts $configs = $HOME/.config/hypr/configs # User $UserConfigs = $HOME/.config/hypr/UserConfigs $UserScripts = $HOME/.config/hypr/UserScripts bind = CTRL ALT, Delete, exec, hyprctl dispatch exit 0 bind = $mainMod, Q, killactive, bind = $mainMod, F, fullscreen bind = $mainMod SHIFT, Q, closewindow, bind = $mainMod SHIFT, F, togglefloating, bind = $mainMod ALT, F, exec, hyprctl dispatch workspaceopt allfloat bind = CTRL ALT, L, exec, $scriptsDir/LockScreen.sh bind = CTRL ALT, P, exec, $scriptsDir/Wlogout.sh # FEATURES / EXTRAS bind = $mainMod, H, exec, $scriptsDir/KeyHints.sh # Small help file bind = $mainMod ALT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, swaync, rofi bind = $mainMod ALT, E, exec, $scriptsDir/RofiEmoji.sh # emoji bind = $mainMod, S, exec, $scriptsDir/RofiSearch.sh # Google search from Rofi bind = $mainMod SHIFT, B, exec, $scriptsDir/ChangeBlur.sh # Toggle blur settings bind = $mainMod SHIFT, G, exec, $scriptsDir/GameMode.sh # animations ON/OFF bind = $mainMod ALT, L, exec, $scriptsDir/ChangeLayout.sh # Toggle Master or Dwindle Layout bind = $mainMod ALT, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager bind = $mainMod SHIFT, N, exec, swaync-client -t -sw # swayNC panel bind = SHIFT, ALT_L, exec, $scriptsDir/SwitchKeyboardLayout.sh # Switch Keyboard Layout bind = $mainMod, A, exec, ags -t 'overview' # FEATURES / EXTRAS (UserScripts) bind = $mainMod, E, exec, $UserScripts/QuickEdit.sh # Quick Edit Hyprland Settings bind = $mainMod SHIFT, M, exec, $UserScripts/RofiBeats.sh # online music bind = $mainMod, W, exec, $UserScripts/WallpaperSelect.sh # Select wallpaper to apply bind = CTRL ALT, W, exec, $UserScripts/WallpaperRandom.sh # Random wallpapers # Waybar / Bar related bind = $mainMod, B, exec, killall -SIGUSR1 waybar # Toggle hide/show waybar bind = $mainMod CTRL, B, exec, $scriptsDir/WaybarStyles.sh # Waybar Styles Menu bind = $mainMod ALT, B, exec, $scriptsDir/WaybarLayout.sh # Waybar Layout Menu # Master Layout bind = $mainMod CTRL, D, layoutmsg, removemaster bind = $mainMod, I, layoutmsg, addmaster bind = $mainMod, J, layoutmsg, cyclenext bind = $mainMod, K, layoutmsg, cycleprev bind = $mainMod, M, exec, hyprctl dispatch splitratio 0.3 bind = $mainMod, P, pseudo, # dwindle bind = $mainMod CTRL, Return, layoutmsg, swapwithmaster # group bind = $mainMod, G, togglegroup bind = ALT, tab, changegroupactive #change focus to another window # Special Keys / Hot Keys bind = , xf86audioraisevolume, exec, $scriptsDir/Volume.sh --inc #volume up bind = , xf86audiolowervolume, exec, $scriptsDir/Volume.sh --dec #volume down bind = , xf86AudioMicMute, exec, $scriptsDir/Volume.sh --toggle-mic #mute mic bind = , xf86audiomute, exec, $scriptsDir/Volume.sh --toggle bind = , xf86Sleep, exec, systemctl suspend # sleep button bind = , xf86Rfkill, exec, $scriptsDir/AirplaneMode.sh #Airplane mode # media controls using keyboards bind = , xf86AudioPlayPause, exec, $scriptsDir/MediaCtrl.sh --pause bind = , xf86AudioPause, exec, $scriptsDir/MediaCtrl.sh --pause bind = , xf86AudioPlay, exec, $scriptsDir/MediaCtrl.sh --pause bind = , xf86AudioNext, exec, $scriptsDir/MediaCtrl.sh --nxt bind = , xf86AudioPrev, exec, $scriptsDir/MediaCtrl.sh --prv bind = , xf86audiostop, exec, $scriptsDir/MediaCtrl.sh --stop # Screenshot keybindings NOTE: You may need to press Fn key as well bind = $mainMod, Print, exec, $scriptsDir/ScreenShot.sh --now bind = $mainMod SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --area bind = $mainMod CTRL, Print, exec, $scriptsDir/ScreenShot.sh --in5 #screenshot in 5 secs bind = $mainMod ALT, Print, exec, $scriptsDir/ScreenShot.sh --in10 #screenshot in 10 secs bind = ALT, Print, exec, $scriptsDir/ScreenShot.sh --active #screenshot in 10 secs # screenshot with swappy (another screenshot tool) bind = $mainMod SHIFT, S, exec, $scriptsDir/ScreenShot.sh --swappy # Resize windows binde = $mainMod SHIFT, left, resizeactive,-50 0 binde = $mainMod SHIFT, right, resizeactive,50 0 binde = $mainMod SHIFT, up, resizeactive,0 -50 binde = $mainMod SHIFT, down, resizeactive,0 50 # Move windows bind = $mainMod CTRL, left, movewindow, l bind = $mainMod CTRL, right, movewindow, r bind = $mainMod CTRL, up, movewindow, u bind = $mainMod CTRL, down, movewindow, d # 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 # Workspaces related bind = $mainMod, tab, workspace, m+1 bind = $mainMod SHIFT, tab, workspace, m-1 # Special workspace bind = $mainMod SHIFT, U, movetoworkspace, special bind = $mainMod, U, togglespecialworkspace, # The following mappings use the key codes to better support various keyboard layouts # 1 is code:10, 2 is code 11, etc # Switch workspaces with mainMod + [0-9] bind = $mainMod, code:10, workspace, 1 bind = $mainMod, code:11, workspace, 2 bind = $mainMod, code:12, workspace, 3 bind = $mainMod, code:13, workspace, 4 bind = $mainMod, code:14, workspace, 5 bind = $mainMod, code:15, workspace, 6 bind = $mainMod, code:16, workspace, 7 bind = $mainMod, code:17, workspace, 8 bind = $mainMod, code:18, workspace, 9 bind = $mainMod, code:19, workspace, 10 # Move active window and follow to workspace mainMod + SHIFT [0-9] bind = $mainMod SHIFT, code:10, movetoworkspace, 1 bind = $mainMod SHIFT, code:11, movetoworkspace, 2 bind = $mainMod SHIFT, code:12, movetoworkspace, 3 bind = $mainMod SHIFT, code:13, movetoworkspace, 4 bind = $mainMod SHIFT, code:14, movetoworkspace, 5 bind = $mainMod SHIFT, code:15, movetoworkspace, 6 bind = $mainMod SHIFT, code:16, movetoworkspace, 7 bind = $mainMod SHIFT, code:17, movetoworkspace, 8 bind = $mainMod SHIFT, code:18, movetoworkspace, 9 bind = $mainMod SHIFT, code:19, movetoworkspace, 10 bind = $mainMod SHIFT, bracketleft, movetoworkspace, -1 # brackets [ or ] bind = $mainMod SHIFT, bracketright, movetoworkspace, +1 # Move active window to a workspace silently mainMod + CTRL [0-9] bind = $mainMod CTRL, code:10, movetoworkspacesilent, 1 bind = $mainMod CTRL, code:11, movetoworkspacesilent, 2 bind = $mainMod CTRL, code:12, movetoworkspacesilent, 3 bind = $mainMod CTRL, code:13, movetoworkspacesilent, 4 bind = $mainMod CTRL, code:14, movetoworkspacesilent, 5 bind = $mainMod CTRL, code:15, movetoworkspacesilent, 6 bind = $mainMod CTRL, code:16, movetoworkspacesilent, 7 bind = $mainMod CTRL, code:17, movetoworkspacesilent, 8 bind = $mainMod CTRL, code:18, movetoworkspacesilent, 9 bind = $mainMod CTRL, code:19, movetoworkspacesilent, 10 bind = $mainMod CTRL, bracketleft, movetoworkspacesilent, -1 # brackets [ or ] bind = $mainMod CTRL, bracketright, movetoworkspacesilent, +1 # Scroll through existing workspaces with mainMod + scroll bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1 bind = $mainMod, period, workspace, e+1 bind = $mainMod, comma, workspace, e-1 # Move/resize windows with mainMod + LMB/RMB and dragging bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow Config File: /home/benclarke/.config/hypr/UserConfigs/Startup_Apps.conf: Read Succeeded # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # #Commands & Apps to be executed at launch $scriptsDir = $HOME/.config/hypr/scripts $UserScripts = $HOME/.config/hypr/UserScripts $wallDIR=$HOME/Pictures/wallpapers $lock = $scriptsDir/LockScreen.sh $SwwwRandom = $UserScripts/WallpaperAutoChange.sh # wallpaper stuff / More wallpaper options below exec-once = swww query || swww-daemon --format xrgb exec-once = $SwwwRandom $wallDIR # random wallpaper switcher every 30 minutes # Startup exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # Polkit (Polkit Gnome / KDE) exec-once = $scriptsDir/Polkit.sh # starup apps exec-once = waybar & exec-once = nm-applet --indicator & exec-once = swaync & # Added startup apps for default work exec-once = firefox & exec-once = warp-terminal & exec-once = flatpak run com.slack.Slack & #exec-once = blueman-applet & #exec-once = rog-control-center & #clipboard manager exec-once = wl-paste --type text --watch cliphist store exec-once = wl-paste --type image --watch cliphist store # Rainbow borders exec-once = $UserScripts/RainbowBorders.sh & # Starting hypridle to start hyprlock exec-once = hypridle & # Start pyprland daemon exec-once = pypr & # Here are list of features available but disabled by default # exec-once = swww query || swww-daemon --format xrgb && swww img $HOME/Pictures/wallpapers/mecha-nostalgia.png # persistent wallpaper #gnome polkit for nixos #exec-once = $scriptsDir/Polkit-NixOS.sh # xdg-desktop-portal-hyprland (should be auto starting. However, you can force to start) #exec-once = $scriptsDir/PortalHyprland.sh Config File: /home/benclarke/.config/hypr/UserConfigs/ENVariables.conf: Read Succeeded # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # #environment-variables env = CLUTTER_BACKEND,wayland env = GDK_BACKEND,wayland,x11 env = QT_AUTO_SCREEN_SCALE_FACTOR,1 env = QT_QPA_PLATFORM,wayland;xcb env = QT_QPA_PLATFORMTHEME,qt5ct env = QT_QPA_PLATFORMTHEME,qt6ct env = QT_SCALE_FACTOR,1 env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_DESKTOP,Hyprland env = XDG_SESSION_TYPE,wayland # vulkan #env = WLR_RENDERER,vulkan # firefox env = MOZ_ENABLE_WAYLAND,1 # NVIDIA # This is from Hyprland Wiki. As a start, WLR_NO_HARDWARE_CURSORS 1 will be activated if nvidia gpu detected env = WLR_NO_HARDWARE_CURSORS,1 env = LIBVA_DRIVER_NAME,nvidia env = __GLX_VENDOR_LIBRARY_NAME,nvidia env = GBM_BACKEND,nvidia-drm env = __NV_PRIME_RENDER_OFFLOAD,1 env = __VK_LAYER_NV_optimus,NVIDIA_only #env = WLR_DRM_NO_ATOMIC,1 env = NVD_BACKEND,direct # FOR VM and POSSIBLY NVIDIA env = WLR_RENDERER_ALLOW_SOFTWARE,1 # nvidia firefox (for hardware acceleration on FF)? # check this post https://github.com/elFarto/nvidia-vaapi-driver#configuration env = MOZ_DISABLE_RDD_SANDBOX,1 env = NVD_BACKEND,direct env = EGL_PLATFORM,wayland env = AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0 env = AQ_MGPU_NO_EXPLICIT,1 Config File: /home/benclarke/.config/hypr/UserConfigs/Monitors.conf: Read Succeeded # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # # Monitor Configuration # See Hyprland wiki for more details # https://wiki.hyprland.org/Configuring/Monitors/ # Configure your Display resolution, offset, scale and Monitors here, use `hyprctl monitors` to get the info. # Monitors #monitor=,preferred,auto,1.6 # NOTE: for laptop, kindly check notes in Laptops.conf regarding display # Created this inorder for the monitor display to not wake up if not intended. # See here: https://github.com/hyprwm/Hyprland/issues/4090 monitor = eDP-1,3840x2400,0x0,1.6,bitdepth,10 #monitor = DP-5,1920x1080,auto-left,1,transform,3,bitdepth,10 monitor = DP-6,1920x1080,auto-left,1,transform,3,bitdepth,10 monitor = HDMI-A-2,1920x1080,0x-1080,1,bitdepth,10 # QEMU-KVM or any virtual box #monitor = Virtual-1, 1920x1080@60,auto,1 # Hi Refresh Rate #monitor=,highrr,auto,1 # High Resolution #monitor=,highres,auto,1 # to disable a monitor #monitor=name,disable # Mirror #monitor=DP-3,1920x1080@60,0x0,1,mirror,DP-2 #monitor=,preferred,auto,1,mirror,eDP-1 # Example : #monitor=eDP-1,2560x1440@165,0x0,1 #workspace=HDMI-A-1,1 #monitor=HDMI-A-1,2560x1440@144,0x0,1,mirror,eDP-1 #workspace=HDMI-A-2,2 #monitor=eDP-1,transform,0 #monitor=eDP-1,addreserved,10,10,10,49 #workspace=eDP-1,1 Config File: /home/benclarke/.config/hypr/UserConfigs/Laptops.conf: Read Succeeded # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # # See https://wiki.hyprland.org/Configuring/Keywords/ for more variable settings # These configs are mostly for laptops. This is addemdum to Keybinds.conf $mainMod = SUPER $scriptsDir = $HOME/.config/hypr/scripts $UserConfigs = $HOME/.config/hypr/UserConfigs bind = , xf86KbdBrightnessDown, exec, $scriptsDir/BrightnessKbd.sh --dec #Keyboard brightness Down bind = , xf86KbdBrightnessUp, exec, $scriptsDir/BrightnessKbd.sh --inc #Keyboard brightness up bind = , xf86Launch1, exec, rog-control-center # ASUS Armory crate button bind = , xf86Launch3, exec, asusctl led-mode -n #FN+F4 Switch keyboard RGB profile bind = , xf86Launch4, exec, asusctl profile -n #FN+F5 change of fan profiles (Quite, Balance, Performance) bind = , xf86MonBrightnessDown, exec, $scriptsDir/Brightness.sh --dec bind = , xf86MonBrightnessUp, exec, $scriptsDir/Brightness.sh --inc bind = , xf86TouchpadToggle, exec, $scriptsDir/TouchPad.sh #disable touchpad # Screenshot keybindings for Asus G15 (no PrinSrc button) bind = $mainMod, F6, exec, $scriptsDir/ScreenShot.sh --now # Fullscreen bind = $mainMod SHIFT, F6, exec, $scriptsDir/ScreenShot.sh --area bind = $mainMod CTRL, F6, exec, $scriptsDir/ScreenShot.sh --in5 # Screenshot in 5 secs bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # Screenshot in 10 secs bind = ALT, F6, exec, $scriptsDir/ScreenShot.sh --active # Screenshot active window # Below are useful when you are connecting your laptop in external display # Suggest you edit below for your laptop display # From WIKI This is to disable laptop monitor when lid is closed. # consult https://wiki.hyprland.org/hyprland-wiki/pages/Configuring/Binds/#switches bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, preferred, auto, 1" bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable" # WARNING! Using this method has some caveats!! USE THIS PART WITH SOME CAUTION! # CONS of doing this, is that you need to set up your wallpaper (SUPER W) and choose wallpaper. # CAVEATS! Sometimes the Main Laptop Monitor DOES NOT have display that it needs to re-connect your external monitor # One work around is to ensure that before shutting down laptop, MAKE SURE your laptop lid is OPEN!! # Make sure to comment (put # on the both the bindl = , switch ......) above # NOTE: Display for laptop are being generated into LaptopDisplay.conf # This part is to be use if you do not want your main laptop monitor to wake up during say wallpaper change etc #bindl = , switch:off:Lid Switch,exec,echo "monitor = eDP-1, preferred, auto, 1" > $UserConfigs/LaptopDisplay.conf #bindl = , switch:on:Lid Switch,exec,echo "monitor = eDP-1, disable" > $UserConfigs/LaptopDisplay.conf # for laptop-lid action (to erase the last entry) #exec-once = echo "eDP-1, preferred, auto, 1" > $HOME/.config/hypr/UserConfigs/LaptopDisplay.conf # Config File: /home/benclarke/.config/hypr/UserConfigs/LaptopDisplay.conf: Read Succeeded # NOTE, THIS FILE IS BEING USED by disabling Laptop display monitor behaviour when closing lid. # See notes on Laptops.conf #monitor = eDP-1, preferred, auto, 1 Config File: /home/benclarke/.config/hypr/UserConfigs/WindowRules.conf: Read Succeeded # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more windowrule = float, org.kde.polkit-kde-authentication-agent-1 windowrule = float, nm-connection-editor|blueman-manager windowrule = float, pavucontrol windowrule = float, nwg-look|qt5ct|mpv windowrule = float, onedriver|onedriver-launcher windowrule = float, eog windowrule = float, zoom windowrule = float, rofi windowrule = float, gnome-system-monitor windowrule = float, yad windowrule = float, ^(wihotspot-gui)$ # wifi hotspot windowrule = float, ^(evince)$ # document viewer windowrule = float, ^(file-roller)$ # archive manager #windowrule = noblur,gamescope #windowrule = fullscreen,gamescope #windowrule = workspace 6 silent,^(gamescope)$ windowrule = center,^(pavucontrol) # windowrule v2 # Workspace 1 = Internet + Slack #windowrulev2 = workspace 1, class:^([Tt]hunderbird)$ windowrulev2 = workspace 2, class:^([Ff]irefox)$ windowrulev2 = workspace 2, class:^(org.mozilla.firefox)$ windowrulev2 = workspace 2, class:^([Ff]irefox-esr)$ #windowrulev2 = workspace 1, class:^(Microsoft-edge-beta)$ windowrulev2 = workspace 2, class:^(Brave-browser)$ windowrulev2 = workspace 2, class:^(Brave-browser-dev)$ windowrulev2 = workspace 2, class:^([Gg]oogle-[Cc]hrome)$ windowrulev2 = workspace 2, class:^([Gg]oogle-[Cc]hrome-beta)$ windowrulev2 = workspace 2, class:^([Gg]oogle-[Cc]hrome-dev)$ windowrulev2 = workspace 2, class:^([Gg]oogle-[Cc]hrome-unstable)$ windowrulev2 = workspace 2, class:^(chrome-.+-Default)$ # Chrome PWAs windowrulev2 = workspace 2, class:^([Mm]icrosoft-edge-stable)$ windowrulev2 = workspace 2, class:^(evolution.bin)$ windowrulev2 = workspace 2, class:^(ZAP)$ # Workspace 2 = Coding windowrulev2 = workspace 1, class:^(codium-url-handler)$ windowrulev2 = workspace 1, class:^(VSCodium)$ windowrulev2 = workspace 1, class:^(codium-url-handler)$ windowrulev2 = workspace 1, class:^(kitty)$ windowrulev2 = workspace 1, class:^([Ww]arp)$ # Workspace 3 = Slack + AOB windowrulev2 = workspace 3, class:^([Ss]lack)$ windowrulev2 = workspace 3, class:^([Tt]hunar)$ windowrulev2 = workspace 5 silent, class:^(lutris)$ windowrulev2 = workspace 6, class:^(virt-manager)$ windowrulev2 = workspace 7 silent, class:^(discord)$ # windowrule v2 - float windowrulev2 = float, class:([Tt]hunar), title:(File Operation Progress) windowrulev2 = float, class:([Tt]hunar), title:(Confirm to replace files) windowrulev2 = float, class:(xdg-desktop-portal-gtk) windowrulev2 = float, class:(org.gnome.Calculator), title:(Calculator) #opacity (transparent) #enable as desired windowrulev2 = opacity 0.9 0.6, class:^([Rr]ofi)$ windowrulev2 = opacity 0.9 0.7, class:^(Brave-browser)$ windowrulev2 = opacity 0.9 0.7, class:^(Brave-browser-dev)$ windowrulev2 = opacity 0.9 0.7, class:^([Ff]irefox)$ windowrulev2 = opacity 0.9 0.7, class:^(org.mozilla.firefox)$ windowrulev2 = opacity 0.9 0.7, class:^([Ff]irefox-esr)$ windowrulev2 = opacity 0.9 0.7, class:^([Mm]icrosoft-edge-stable)$ windowrulev2 = opacity 0.9 0.7, class:^([Mm]icrosoft-edge-beta)$ windowrulev2 = opacity 0.9 0.7, class:^([Mm]icrosoft-edge-dev)$ windowrulev2 = opacity 0.9 0.7, class:^(google-chrome)$ windowrulev2 = opacity 0.9 0.7, class:^(google-chrome-beta)$ windowrulev2 = opacity 0.9 0.7, class:^(google-chrome-dev)$ windowrulev2 = opacity 0.9 0.7, class:^(google-chrome-unstable)$ windowrulev2 = opacity 0.94 0.76, class:^(chrome-.+-Default)$ # Chrome PWAs windowrulev2 = opacity 0.9 0.8, class:^([Tt]hunar)$ windowrulev2 = opacity 0.8 0.6, class:^(pcmanfm-qt)$ windowrulev2 = opacity 0.9 0.7, class:^(gedit)$ windowrulev2 = opacity 0.9 0.8, class:^(deluge)$ windowrulev2 = opacity 0.9 0.8, class:^(Alacritty)$ windowrulev2 = opacity 0.9 0.8, class:^(kitty)$ windowrulev2 = opacity 0.9 0.7, class:^(mousepad)$ windowrulev2 = opacity 0.9 0.7, class:^(codium-url-handler)$ windowrulev2 = opacity 0.9 0.7, class:^(VSCodium)$ windowrulev2 = opacity 0.9 0.7, class:^(yad)$ windowrulev2 = opacity 0.9 0.7, class:^(com.obsproject.Studio)$ windowrulev2 = opacity 0.9 0.7, class:^([Aa]udacious)$ windowrulev2 = opacity 0.9 0.8, class:^(org.gnome.Nautilus)$ windowrulev2 = opacity 0.9 0.8, class:^(code-url-handler)$ windowrulev2 = opacity 0.9 0.8, class:^(VSCode)$ windowrulev2 = opacity 0.9 0.8, class:^(jetbrains-studio)$ # Android Studio windowrulev2 = opacity 0.94 0.86, class:^(discord)$ windowrulev2 = opacity 0.9 0.8, class:^(org.telegram.desktop)$ windowrulev2 = opacity 0.94 0.86, class:^(gnome-disks)$ windowrulev2 = opacity 0.9 0.8, class:^(org.gnome.baobab)$ windowrulev2 = opacity 0.9 0.8, class:^(seahorse)$ # gnome-keyring gui #layerrule = unset,class:^([Rr]ofi)$ #layerrule = blur,class:^([Rr]ofi)$ #layerrule = ignorezero,Description
After version upgrade to .42 external monitors did not display anything but system still recognised as connected, even cursor would go to (disappear) to where monitor is placed in config but nothing is displayed. Something to note: When using
env = AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0
in my env variables and swapping what is first, I can use the external display(HDMI via Nvidia) but not the internal display(intel driver) Didi try some debug steps in this discord thread https://discord.com/channels/961691461554950145/1271081188295180319 including adding thisenv = AQ_MGPU_NO_EXPLICIT,1
to no affect.How to reproduce
Make sure the device has intel/nvidia dual gpu and have HDMI plugged in.
env = AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0
to the environment variables(Edit variable to what ever the second gpu card number is)Crash reports, logs, images, videos
hyprlandCrashReport17548.txt hyprlandHDMILog.txt