{ config, lib, pkgs, ... }: {
  config = lib.mkMerge [
    (lib.mkIf (config.syscfg.make.gui) {
      xdg.portal = {
        enable = true;
        # wlr.enable = true;
        extraPortals = with pkgs; [
          xdg-desktop-portal-hyprland
          xdg-desktop-portal-gtk
        ];
        config.common.default = [ "hyprland" "gtk" ];
      };

      environment.sessionVariables = rec {
        GBM_BACKEND = "amd-drm";
        __GL_GSYNC_ALLOWED = "0";
        __GL_VRR_ALLOWED = "1";
        __GLX_VENDOR_LIBRARY_NAME = "amd";
        WLR_DRM_NO_ATOMIC = "1";
        _JAVA_AWT_WM_NONREPARENTING = "1";
        QT_QPA_PLATFORM = "wayland";
        QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
        # GDK_BACKEND = "wayland";
        WLR_NO_HARDWARE_CURSORS = "1";
        MOZ_ENABLE_WAYLAND = "1";
        # WLR_BACKEND = "vulkan";
        # WLR_RENDERER = "vulkan";
        XCURSOR_SIZE = "24";
        NIXOS_OZONE_WL = "1";
      };
    })
    ({

      environment.sessionVariables = rec {
        PATH = [ "$HOME/.local/bin/:$PATH" ];
        XDG_CACHE_HOME = "$HOME/.cache";
        XDG_CONFIG_HOME = "$HOME/.config";
        XDG_DATA_HOME = "$HOME/.local/share";
        XDG_STATE_HOME = "$HOME/.local/state";
        XDG_BIN_HOME = "$HOME/.local/bin";
        XDG_DESKTOP_DIR = "$HOME/desktop";
        XDG_DOCUMENTS_DIR = "$HOME/files";
        XDG_DOWNLOAD_DIR = "$HOME/download";
        XDG_MUSIC_DIR = "$HOME/media/music";
        XDG_PICTURES_DIR = "$HOME/media/photo";
        XDG_PUBLICSHARE_DIR = "$HOME/pub";
        XDG_TEMPLATES_DIR = "$HOME/media/templates";
        XDG_VIDEOS_DIR = "$HOME/media/video";
      };

      environment.etc."xdg/user-dirs.defaults".text = ''
        XDG_CACHE_HOME="$HOME/.cache"
        XDG_CONFIG_HOME="$HOME/.config"
        XDG_DATA_HOME="$HOME/.local/share"
        XDG_STATE_HOME="$HOME/.local/state"
        XDG_BIN_HOME="$HOME/.local/bin"
        XDG_DESKTOP_DIR="$HOME/desktop"
        XDG_DOCUMENTS_DIR="$HOME/files"
        XDG_DOWNLOAD_DIR="$HOME/download"
        XDG_MUSIC_DIR="$HOME/media/music"
        XDG_PICTURES_DIR="$HOME/media/photo"
        XDG_PUBLICSHARE_DIR="$HOME/pub"
        XDG_TEMPLATES_DIR="$HOME/media/templates"
        XDG_VIDEOS_DIR="$HOME/media/video"
      '';
    })
  ];
}
