{ config, pkgs, lib, dots, ... }: { options.custom.gui = with lib; { sioyek = { enable = mkEnableOption "Enable sioyek"; }; }; config = lib.mkIf config.custom.gui.sioyek.enable ( lib.mkMerge [ { home.packages = with pkgs; [ sioyek ]; } # Linux uses ~/.config/sioyek (lib.mkIf pkgs.stdenv.isLinux { xdg.configFile."sioyek".source = config.lib.file.mkOutOfStoreSymlink "${dots}/config/sioyek"; }) # macOS uses ~/Library/Application Support/sioyek (lib.mkIf pkgs.stdenv.isDarwin { home.file."Library/Application Support/sioyek".source = config.lib.file.mkOutOfStoreSymlink "${dots}/config/sioyek"; }) ] ); }