hyprwm / Hyprland

Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
https://hyprland.org
BSD 3-Clause "New" or "Revised" License
21.72k stars 900 forks source link

[Xwayland (Nix)]: Xwayland is not working in Flake but working in normal module #8169

Open niksingh710 opened 1 month ago

niksingh710 commented 1 month ago

Already reported ? *

Regression?

Yes

System Info and Version

System/Version info ```sh Hyprland, built from branch v0.44.1-b at commit 4520b30d498daca8079365bdb909a8dea38e8d55 (version: bump to 0.44.1). Date: 2024-10-09 Tag: v0.44.1, commits: 4520b30d498daca8079365bdb909a8dea38e8d55 built against aquamarine 0.4.1 flags: (if any) System Information: System name: Linux Node name: mach Release: 6.11.2-xanmod1 Version: #1-NixOS SMP PREEMPT_DYNAMIC Tue Jan 1 00:00:00 UTC 1980 GPU information: 00:02.0 VGA compatible controller [0300]: Intel Corporation CometLake-U GT2 [UHD Graphics] [8086:9b41] (rev 02) (prog-if 00 [VGA controller]) os-release: ANSI_COLOR="1;34" BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues" BUILD_ID="24.11.20241014.a3c0b3b" DOCUMENTATION_URL="https://nixos.org/learn.html" HOME_URL="https://nixos.org/" ID=nixos IMAGE_ID="" IMAGE_VERSION="" LOGO="nix-snowflake" NAME=NixOS PRETTY_NAME="NixOS 24.11 (Vicuna)" SUPPORT_URL="https://nixos.org/community.html" VERSION="24.11 (Vicuna)" VERSION_CODENAME=vicuna VERSION_ID="24.11" plugins: ======Config-Start====== Config File: /home/niksingh710/.config/hypr/hyprland.conf: Read Succeeded exec-once = /nix/store/ldpr2fzzk97pzml87z7lmvhqg7pp65lf-dbus-1.14.10/bin/dbus-update-activation-environment --systemd --all && systemctl --user stop hyprland-session.target && systemctl --user start hyprland-session.target $mod=SUPER $notify=notify-send -a 'Hyprland' $rofi=killall rofi || rofi $ssarea=hyprctl keyword animation "fadeOut,1,4,default"; $sscommand area $sspath; hyprctl keyword animation "fadeOut,1,4,default" $sscommand=grimblast -f --notify --cursor copysave $sspath=~/Pictures/Screenshots/"$(date +"ss-%d-%b-%C_%H-%M-%S")".png $submapreset=hyprctl dispatch submap reset $tpadcmd=hyprctl keywords device:elan-touchpad $tpadoff=$tpadcmd:enabled false $tpadon=$tpadcmd:enabled true; $tpadcmd:natural_scroll true animations { bezier=wind, 0.05, 0.9, 0.1, 1.05 bezier=winIn, 0.1, 1.1, 0.1, 1.1 bezier=winOut, 0.3, -0.3, 0, 1 bezier=linear, 1, 1, 1, 1 animation=windows, 1, 6, wind, slide animation=windowsIn, 1, 6, winIn, popin animation=windowsOut, 1, 5, winOut, slide animation=windowsMove, 1, 5, wind, slide animation=fade, 1, 10, default animation=workspaces, 1, 5, wind enabled=true } binds { allow_workspace_cycles=false focus_preferred_method=1 workspace_center_on=1 } debug { disable_logs=true } decoration { blur { ignore_opacity=true new_optimizations=true passes=3 popups=true size=7 xray=false } active_opacity=0.900000 col.shadow=rgba(131d2199) drop_shadow=true inactive_opacity=0.800000 rounding=10 shadow_ignore_window=true shadow_offset=2 6 shadow_range=10 shadow_render_power=1 shadow_scale=6 } dwindle { no_gaps_when_only=false preserve_split=true pseudotile=true use_active_for_splits=true } general { border_size=2 col.active_border=rgb(6a97af) col.inactive_border=0x00f5efe4 gaps_in=2 gaps_out=4 layout=dwindle resize_on_border=true } gestures { workspace_swipe=true workspace_swipe_forever=false } group { groupbar { col.active=0xfff5efe4 col.inactive=0x73f5efe4 gradients=false height=5 render_titles=false text_color=0xff6596b7 } col.border_active=rgb(6a97af) col.border_inactive=rgb(7ba4b9) col.border_locked_active=rgb(6996ac) } input { touchpad { clickfinger_behavior=true disable_while_typing=true natural_scroll=true } float_switch_override_focus=1 follow_mouse=1 kb_layout=us kb_options=ctrl:nocaps mouse_refocus=true repeat_delay=300 repeat_rate=50 sensitivity=0.600000 } misc { allow_session_lock_restore=false animate_manual_resizes=true animate_mouse_windowdragging=true background_color=rgb(131d21) disable_autoreload=true disable_hyprland_logo=true enable_swallow=true focus_on_activate=true key_press_enables_dpms=true layers_hog_keyboard_focus=true mouse_move_enables_dpms=true new_window_takes_over_fullscreen=true swallow_regex=foot|tmux|zellij vfr=true } bind=$modShift,d,exec,/nix/store/4vhk0hb1m6w7y2yla5ab7mn0n2i85im5-noti-cycle/bin/noti-cycle bind=CTRL,Print,exec,/nix/store/25fbp4dh34crpx0fwfmjalz36sdybl6q-recorder/bin/recorder bind=SUPERCTRL,Print,exec,/nix/store/25fbp4dh34crpx0fwfmjalz36sdybl6q-recorder/bin/recorder -s bind=SUPER,b,exec,killall -SIGUSR1 .waybar-wrapped bind=SUPERSHIFT,E,exec,/nix/store/r575ificw0yabsp5q9148dskw5cgsbrg-powermenu/bin/powermenu bind=$modSHIFT,V,exec,/nix/store/qhkqnjkmycs61d5wvn9d3iicqvmxqas3-cliphist-0.5.0/bin/cliphist wipe bind=$mod,V,exec,/nix/store/k77pfqm116ahi0m7bdsn0l2lmkx3wwzx-clipboard/bin/clipboard | /nix/store/pimx7arnbc7aj55zj2zgv26wkqahv27j-rofi-1.7.5+wayland3/bin/rofi -dmenu -i -p "clipboard" -display-columns 2 | cliphist decode | wl-copy; bind=$mod,period,exec,killall -q /nix/store/pimx7arnbc7aj55zj2zgv26wkqahv27j-rofi-1.7.5+wayland3/bin/rofi || /nix/store/zdc00sn0apqi72m941834n7jr9x6vsfj-rofimoji-6.5.0/bin/rofimoji --selector-args="-theme grid.rasi" --hidden-descriptions bind=$mod,slash,exec,killall rofi || rofi -show combi -modes combi -combi-modes "clients:/nix/store/7q0ykz5c74245i5hc930rixmh7qxinn7-goto-client/bin/goto-client,drun" -no-show-mode -combi-display-format "{text}" bind=$modSHIFT,slash,exec,/nix/store/3b4ijx0xf847ybnfjg74njp814d57mp5-get-client/bin/get-client bind=$mod,mouse_up,workspace,e+1 bind=$mod,mouse_down,workspace,e-1 bind=$mod,1,workspace,1 bind=$mod,2,workspace,2 bind=$mod,3,workspace,3 bind=$mod,4,workspace,4 bind=$mod,5,workspace,5 bind=$mod,6,workspace,6 bind=$mod,7,workspace,7 bind=$mod,8,workspace,8 bind=$mod,9,workspace,9 bind=$mod,0,workspace,10 bind=$modSHIFT,1,movetoworkspace,1 bind=$modSHIFT,2,movetoworkspace,2 bind=$modSHIFT,3,movetoworkspace,3 bind=$modSHIFT,4,movetoworkspace,4 bind=$modSHIFT,5,movetoworkspace,5 bind=$modSHIFT,6,movetoworkspace,6 bind=$modSHIFT,7,movetoworkspace,7 bind=$modSHIFT,8,movetoworkspace,8 bind=$modSHIFT,9,movetoworkspace,9 bind=$modSHIFT,0,movetoworkspace,10 bind=$mod,p,workspace,e-1 bind=$mod,n,workspace,e+1 bind=$modSHIFT,p,movetoworkspace,-1 bind=$modSHIFT,n,movetoworkspace,+1 bind=$mod,Return,exec,foot bind=$modSHIFT,RETURN,exec,foot sh -c "tmux new-session -A -s main" bind=$mod,q,killactive bind=$mod,s,togglesplit bind=,XF86TouchpadOn,exec,$tpadon && $notify "Touchpad: On" bind=,XF86TouchpadOff,exec,$tpadoff && $notify "Touchpad: Off" bind=$mod,h,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus l bind=$mod,l,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus r bind=$mod,k,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus u bind=$mod,j,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus d bind=,XF86PowerOff,exec,systemctl suspend bind=,XF86WebCam,exec,/nix/store/j9lp3ixgv936flx657fhlz9ba06gg8zm-camera-toggle bind=,XF86AudioMicMute,exec,/nix/store/j77hg2kxd5na26wark4l537a1zh6kdcx-pulseaudio-17.0/bin/pactl set-source-mute @DEFAULT_SOURCE@ toggle bind=,XF86AudioMute,exec,/nix/store/vpynmbpsgrhq912z008a9vc83kzawzhx-volume/bin/volume mute bind=$modSHIFT,equal,exec,/nix/store/q9qpyjzz51wa3p8k3c7k19745lg6lm5r-zoom bind=$modSHIFT,minus,exec,/nix/store/q9qpyjzz51wa3p8k3c7k19745lg6lm5r-zoom bind=$mod,f,togglefloating, bind=$mod,m,exec,/nix/store/6mv5ziws0364i5i9qqs1i9rgcrfwvq9m-fullscreen bind=$modSHIFT,f,pseudo, bind=$modSHIFT,x,exec,hyprctl kill bind=$modSHIFT,a,pin, bind=$modCTRLSHIFT,f,workspaceopt,allfloat bind=$modSHIFT,o,exec,hyprctl setprop active opaque toggle bind=$modSHIFT,c,centerwindow, bind=,Scroll_Lock,exec,loginctl lock-session bind=,F9,exec,loginctl lock-session bind=$mod,r,exec,hyprctl reload bind=SUPER,SPACE,exec,hyprctl dispatch focusmonitor +1 bind=SUPERSHIFT,SPACE,exec,hyprctl dispatch movewindow mon:+1 bind=SUPER,comma,exec,scratchpad -n "rough" bind=SUPERSHIFT,comma,exec,scratchpad -n "rough" -g bind=,Print,exec,$sscommand output $sspath bind=SUPERSHIFT,Print,exec,$ssarea bind=SUPER,Print,exec,$sscommand active $sspath bind=ALT,Print,exec,$sscommand screen $sspath bind=CTRL,grave,exec,/nix/store/dv6d0gkjsdxpv4pp2xhwpl5dx1vcczjf-quick-term/bin/quick-term binde=$mod,e,exec,/nix/store/bqmy3rs83cbmy31xrynp9ckk08fnmjrq-img-annotate binde=$modCTRL,h,resizeactive,-50 0 binde=$modCTRL,l,resizeactive,50 0 binde=$modCTRL,j,resizeactive,0 50 binde=$modCTRL,k,resizeactive,0 -50 binde=$modSHIFT,h,exec,/nix/store/9z1pnh9yhx5swjr47nx0amfwajm8y5f1-move l binde=$modSHIFT,l,exec,/nix/store/9z1pnh9yhx5swjr47nx0amfwajm8y5f1-move r binde=$modSHIFT,j,exec,/nix/store/9z1pnh9yhx5swjr47nx0amfwajm8y5f1-move d binde=$modSHIFT,k,exec,/nix/store/9z1pnh9yhx5swjr47nx0amfwajm8y5f1-move u binde=bind = SUPER, c, togglespecialworkspace, comms binde=bind = SUPERSHIFT, C, movetoworkspace, special:comms binde=,XF86AudioRaiseVolume,exec,/nix/store/vpynmbpsgrhq912z008a9vc83kzawzhx-volume/bin/volume up binde=,XF86AudioLowerVolume,exec,/nix/store/vpynmbpsgrhq912z008a9vc83kzawzhx-volume/bin/volume down binde=,XF86MonBrightnessUp,exec,/nix/store/y7f6yx1893yz5zj91wl9h2lia79qn7yh-brightness/bin/brightness up binde=,XF86MonBrightnessDown,exec,/nix/store/y7f6yx1893yz5zj91wl9h2lia79qn7yh-brightness/bin/brightness down binde=$mod,equal,exec,/nix/store/q9qpyjzz51wa3p8k3c7k19745lg6lm5r-zoom 0.1 binde=$mod,minus,exec,/nix/store/q9qpyjzz51wa3p8k3c7k19745lg6lm5r-zoom -0.1 bindl=, switch:off:Lid Switch, exec, hyprctl reload bindl=, switch:on:Lid Switch, exec,/nix/store/xrczsp1x7wcq0j6ycjrzhbb0ikjbjpf0-lid-down bindm=$mod,mouse:272,movewindow bindm=$mod,mouse:273,resizewindow 2 blurls=swaync-control-center blurls=swaync-notification-window blurls=firefox blurls=vesktop blurls=rofi blurls=waybar blurls=notifications blurls=gtk-layer-shell env=GTK_THEME,adw-gtk3 env=HYPRCURSOR_SIZE,24 env=HYPRCURSOR_THEME,volantes_cursors env=XDG_CURRENT_DESKTOP,Hyprland env=XDG_SESSION_TYPE,wayland env=XDG_SESSION_DESKTOP,Hyprland env=QT_AUTO_SCREEN_SCALE_FACTOR,1 env=QT_QPA_PLATFORM,wayland;xcb env=QT_WAYLAND_DISABLE_WINDOWDECORATION,1 env=QT_QPA_PLATFORMTHEME,qt6ct env=SDL_VIDEODRIVER,wayland env=_JAVA_AWT_WM_NONEREPARENTING,1 env=_JAVA_OPTIONS,-Dawt.useSystemAAFontSettings=on env=JAVA_FONTS,/usr/share/fonts/TTF env=CLUTTER_BACKEND,wayland env=GDK_BACKEND,wayland,x11 env=BROWSER,firefox env=MOZ_ENABLE_WAYLAND,1 env=ELECTRON_OZONE_PLATFORM_HINT,wayland env=SWWW_TRANSITION_STEP,60 env=SWWW_TRANSITION,simple exec=systemctl --user restart waybar exec=/nix/store/d8k1zmny9r25mgzlv49g674i63s02klm-killall-psmisc-23.7/bin/killall swww-daemon;sleep 1; /nix/store/032adcqrbk3p9sdz0rfhkkdr01jpbrla-swww-0.9.5/bin/swww-daemon exec=sleep 1 && /nix/store/032adcqrbk3p9sdz0rfhkkdr01jpbrla-swww-0.9.5/bin/swww img /nix/store/fms8wxhf0w7dqvwfisznsfwyl61l4q2n-wall.png exec-once=/nix/store/aldi0695qla3m0xzqyygwbkrrpnpwxh2-ipc/bin/ipc exec-once=truncate -s 0 ~/.local/share/applications/waydroid.*.desktop exec-once=[workspace special:comms silent] sleep 2s && telegram-desktop exec-once=[workspace special:comms silent] sleep 6s && fractal exec-once=[workspace special:comms silent] sleep 6s && vesktop exec-once=/nix/store/l4wacvxpg0lmvcg8f9j5nx423ran8a93-wl-clipboard-2.2.1/bin/wl-paste --type text --watch cliphist store exec-once=/nix/store/l4wacvxpg0lmvcg8f9j5nx423ran8a93-wl-clipboard-2.2.1/bin/wl-paste --type image --watch cliphist store exec-once=/nix/store/l4wacvxpg0lmvcg8f9j5nx423ran8a93-wl-clipboard-2.2.1/bin/wl-paste --type application/pdf --watch cliphist store layerrule=noanim, swww layerrule=ignorezero, waybar layerrule=ignorezero, notifications layerrule=blur, firefox layerrule=blur, vesktop layerrule=blurpopups, firefox layerrule=blurpopups, (.*) layerrule=blur, swaync-control-center layerrule=blur, swaync-notification-window layerrule=ignorezero, swaync-control-center layerrule=ignorezero, swaync-notification-window layerrule=blur, notifications monitor=eDP-1,preferred,1920x0,1 monitor=HDMI-A-2,preferred,0x0,1 windowrule=workspace 6,^(lutris) windowrule=workspace 6,^(Steam) windowrule=workspace 6,^(steam) windowrule=workspace 6,^(gamescope)$ windowrule=float,^(Choose Files)$ windowrule=float,^(steam)$ windowrule=float,^(Steam)$ windowrulev2=workspace special:comms, class:(Signal) windowrulev2=workspace special:comms, class:(vesktop) windowrulev2=workspace special:comms, class:(org.gnome.Fractal) windowrulev2=workspace special:comms, class:(telegram-desktop) windowrulev2=group set, class:(vesktop) windowrulev2=group set, class:(org.telegram.desktop) windowrulev2=group set, class:(org.gnome.Fractal) windowrulev2=group set, class:(geary) windowrulev2=noanim,class:^(rofi)$ windowrulev2=float,title:Choose* windowrulev2=float,title:(ripdrag) windowrulev2=pin,title:(ripdrag) windowrulev2=pin,class:(showmethekey-gtk) windowrulev2=float,class:(showmethekey-gtk) windowrulev2=noborder,class:(showmethekey-gtk) windowrulev2=noinitialfocus,class:(showmethekey-gtk) windowrulev2=noblur,class:(showmethekey-gtk) windowrulev2=noshadow,class:(showmethekey-gtk) windowrulev2=opacity 8,class:(showmethekey-gtk) windowrulev2=maxsize 310 95,class:(showmethekey-gtk) windowrulev2=float,class:^(Waydroid)$ windowrulev2=opaque, class:^(foot)$ windowrulev2=float, class:^(foot-quick)$ windowrulev2=size 100% 40%, class:^(foot-quick)$ windowrulev2=move 0% 60%, class:^(foot-quick)$ windowrulev2=dimaround, class:^(foot-quick)$ windowrulev2=noborder, class:^(foot-quick)$ windowrulev2=rounding 0, class:^(foot-quick)$ windowrulev2=noshadow, class:^(foot-quick)$ windowrulev2=noanim,class:^(foot-quick)$ windowrulev2=pin,class:^(foot-quick)$ windowrulev2=stayfocused,class:^(foot-quick)$ windowrulev2=idleinhibit fullscreen, class:^(firefox)$ windowrulev2=idleinhibit fullscreen, class:^(mpv)$ windowrulev2=idleinhibit none,class:^(YouTube Music)$ workspace=1,monitor:HDMI-A-2,default:true workspace=2,monitor:HDMI-A-2,default:true workspace=3,monitor:HDMI-A-2,default:true workspace=4,monitor:HDMI-A-2,default:true workspace=5,monitor:HDMI-A-2,default:true workspace=6,monitor:HDMI-A-2,default:true workspace=7,monitor:HDMI-A-2,default:true workspace=8,monitor:HDMI-A-2,default:true workspace=9,monitor:HDMI-A-2,default:true workspace=10,monitor:eDP-1,default:true workspace=special:comms,gapsin:15,gapsout:50 workspace=special:comms,gapsin:15,gapsout:50 workspace=special:comms,gapsin:15,gapsout:50 $submapreset = hyprctl dispatch submap reset bind = ALT,SPACE,submap,HLeader submap = HLeader # denotes HyprLeader # -- Rofi section in submap $rofi = killall rofi || /nix/store/vf9vkxcnmw6y1y2xza27rfjg2gfmvyqf-rofi-1.7.5/bin/rofi bind = ,n,exec,$submapreset;killall rofi || /nix/store/jkf8dzwjdxcig8qngr2x40pi5v2k9fni-networkmanager_dmenu-2.4.0/bin/networkmanager_dmenu # bind = SHIFT,n,exec,$submapreset;which swaync && swaync-client -t -sw bind = ,b,exec,$submapreset;killall rofi || /nix/store/05r9hnk8x03746mfwr9a7piqxgi3cx30-rofi-bluetooth-unstable-2023-02-03/bin/rofi-bluetooth -theme bluetooth.rasi -i bind = ,period,exec,$submapreset;killall -q rofi;/nix/store/zdc00sn0apqi72m941834n7jr9x6vsfj-rofimoji-6.5.0/bin/rofimoji -f kaomoji bind = SHIFT,a,exec,$submapreset;killall rofi || rofi -show drun -theme menu-full.rasi bind = ,a,exec,$submapreset;/nix/store/a1x7wdyxfh6lg7zv1hks4sfbh49w3xii-audio-channel/bin/audio-channel # bind = ,c,exec,$submapreset;$rofi -show calc -modi calc -no-show-match -no-sort bind = ,k,exec,$submapreset;/nix/store/5dr175rlmkqq20a1z0rvd53mzh4gs3mx-client-kill/bin/client-kill bind = ,escape,exec,hyprctl dispatch submap reset; killall rofi bind = ALT,SPACE,exec,hyprctl dispatch submap reset; killall rofi bind = SUPER,SPACE,exec,hyprctl dispatch submap reset; killall rofi bind = ,p,exec,$submapreset;/nix/store/hmpnd03cgpfyizy7b6zfwfxn944xrj5c-playerctl-2.4.1/bin/playerctl play-pause submap = reset bind = $modSHIFT,g,exec,/nix/store/mmkm7vkrgxii5w0zh53vvipsyfd4g5yy-toggle-group bind = ALT,h,changegroupactive,b bind = ALT,l,changegroupactive,f submap = Group bind = SHIFT,l,moveintogroup,r bind = SHIFT,h,moveintogroup,l bind = SHIFT,j,moveintogroup,d bind = SHIFT,k,moveintogroup,u # Movement of windows (focus, move, resize) bind = $mod,h,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus l bind = $mod,l,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus r bind = $mod,k,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus u bind = $mod,j,exec,/nix/store/sqa2knafhw7k9qr5gy175x5i7s83344s-focus d bind = ,e,exec,hyprctl --batch "dispatch submap reset; dispatch togglegroup";$notify 'Exited Group' bind = ,q,submap,reset bind = ,escape,submap,reset bind = $mod,SPACE,submap,reset submap = reset # Passes the keymaps to windows disables global keymaps{{{ bind = $mod,g,submap,Pass submap = Pass bind = ,,pass,^(.*)$ bind = ,escape,submap,reset bind = $mod,SPACE,submap,reset submap = reset ======Config-End======== ```

Description

flake.nix

flake.lock

inputs = {
    # Hyprland
    hyprland.url = "github:hyprwm/Hyprland";
    hyprland-plugins = {
      url = "github:hyprwm/hyprland-plugins";
      inputs.hyprland.follows = "hyprland";
    };
};

overlay.nix


nixpkgs.overlays = [
(next: prev: {
  wmhypr = inputs.hyprland.inputs.nixpkgs.legacyPackages.${prev.system};
})

];


> hyprland.nix
```nix
{
  programs.hyprland = {
    enable = true;
    package = pkgs.wmhypr.hyprland;
    portalPackage = pkgs.wmhypr.xdg-desktop-portal-hyprland;
  };
}

My config

Issue

If i am using the hyprland from the flake, every xwayland app is throwing error. (unable to connect: :0) but nix repl still reports that xwayland is enabled.

if i change my hyprland.nix to

{
  programs.hyprland = {
    enable = true;
  };
}

then xwayland apps are working.

for a quick test what i did is nix run nixpkgs#xorg.xclock

How to reproduce

use Hyprland Flake.

Crash reports, logs, images, videos

No response

niksingh710 commented 1 month ago

@fufexan

niksingh710 commented 1 month ago

okay so it is not beacause of flake exactly.

but this is caused by


  hardware.graphics = {
    package = pkgs.wmhypr.mesa.drivers;

    # if you also want 32-bit support (e.g for Steam)
    enable32Bit = mkForce true;
    package32 = pkgs.wmhypr.pkgsi686Linux.mesa.drivers;
  };