{ lib, config, pkgs, ... }: let cfg = config.marleyos.shell.wayland; in { options.marleyos.shell.wayland.enable = lib.mkEnableOption "wayland"; config = lib.mkIf (cfg.enable && pkgs.stdenv.isLinux) { # Fix the "tray.target not found" error. systemd.user.targets.tray = lib.mkIf (!config.xsession.enable) { Unit = { Description = "Home Manager System Tray"; Requires = ["graphical-session-pre.target"]; }; }; marleycfg.apps.clipboard = { package = pkgs.wl-clipboard; copy-command = lib.getExe' pkgs.wl-clipboard "wl-copy"; paste-command = lib.getExe' pkgs.wl-clipboard "wl-paste"; }; home.packages = [ config.marleycfg.apps.clipboard.package ]; }; }