{ config, pkgs, lib, colors, ...}:
with lib;
let
  cfg = config.dadada.home.sway;
in {
  options.dadada.home.sway = {
    enable = mkEnableOption "Enable Sway config";
  };
  config = mkIf cfg.enable {
    home.packages = with pkgs; [
      qt5.qtwayland
      swayidle
      xwayland
      mako
      kanshi
      i3blocks
      termite
      bemenu
      xss-lock
    ] ++ (with unstable; [
      swaylock
    ]);

    wayland.windowManager.sway =  {
      enable = true;
      config = null;
      extraConfig = (builtins.readFile ./config);
      extraSessionCommands = ''
        export SDL_VIDEODRIVER=wayland
      # needs qt5.qtwayland in systemPackages
        export QT_QPA_PLATFORM=wayland
        export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
      # Fix for some Java AWT applications (e.g. Android Studio),
      # use this if they aren't displayed properly:
        export _JAVA_AWT_WM_NONREPARENTING=1
      '';
    };
  };
}