diff --git a/system_files/shared/usr/lib/tmpfiles.d/krita-flatpak.conf b/system_files/shared/usr/lib/tmpfiles.d/krita-flatpak.conf new file mode 100644 index 0000000..25f478b --- /dev/null +++ b/system_files/shared/usr/lib/tmpfiles.d/krita-flatpak.conf @@ -0,0 +1 @@ +L /var/lib/flatpak/overrides/org.kde.krita - - - - /usr/share/factory/var/lib/flatpak/overrides/org.kde.krita diff --git a/system_files/shared/usr/lib/tmpfiles.d/steam-flatpak.conf b/system_files/shared/usr/lib/tmpfiles.d/steam-flatpak.conf new file mode 100644 index 0000000..46d5090 --- /dev/null +++ b/system_files/shared/usr/lib/tmpfiles.d/steam-flatpak.conf @@ -0,0 +1 @@ +L /var/lib/flatpak/overrides/com.valvesoftware.Steam - - - - /usr/share/factory/var/lib/flatpak/overrides/com.valvesoftware.Steam diff --git a/system_files/shared/usr/share/factory/var/lib/flatpak/overrides/com.valvesoftware.Steam b/system_files/shared/usr/share/factory/var/lib/flatpak/overrides/com.valvesoftware.Steam new file mode 100644 index 0000000..a3cba0b --- /dev/null +++ b/system_files/shared/usr/share/factory/var/lib/flatpak/overrides/com.valvesoftware.Steam @@ -0,0 +1,7 @@ +# https://linux.kde.org/docs/cjkv-input/#fixing-compatibility-issues +# https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland#KDE_Plasma +# https://github.com/ublue-os/aurora/issues/3038 +[Environment] +GTK_IM_MODULE=xim +QT_IM_MODULE=xim +QT_IM_MODULES=wayland;fcitx;ibus diff --git a/system_files/shared/usr/share/factory/var/lib/flatpak/overrides/org.kde.krita b/system_files/shared/usr/share/factory/var/lib/flatpak/overrides/org.kde.krita new file mode 100644 index 0000000..a3cba0b --- /dev/null +++ b/system_files/shared/usr/share/factory/var/lib/flatpak/overrides/org.kde.krita @@ -0,0 +1,7 @@ +# https://linux.kde.org/docs/cjkv-input/#fixing-compatibility-issues +# https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland#KDE_Plasma +# https://github.com/ublue-os/aurora/issues/3038 +[Environment] +GTK_IM_MODULE=xim +QT_IM_MODULE=xim +QT_IM_MODULES=wayland;fcitx;ibus diff --git a/system_files/shared/usr/share/ublue-os/homebrew/system-flatpaks.Brewfile b/system_files/shared/usr/share/ublue-os/homebrew/system-flatpaks.Brewfile index 2a325be..aaa887f 100644 --- a/system_files/shared/usr/share/ublue-os/homebrew/system-flatpaks.Brewfile +++ b/system_files/shared/usr/share/ublue-os/homebrew/system-flatpaks.Brewfile @@ -5,6 +5,12 @@ flatpak "io.github.flattool.Warehouse" flatpak "io.github.kolunmi.Bazaar" flatpak "io.missioncenter.MissionCenter" flatpak "org.deskflow.deskflow" +flatpak "org.fcitx.Fcitx5" +flatpak "org.fcitx.Fcitx5.Addon.Chewing" +flatpak "org.fcitx.Fcitx5.Addon.ChineseAddons" +flatpak "org.fcitx.Fcitx5.Addon.Hangul" +flatpak "org.fcitx.Fcitx5.Addon.Mozc" +flatpak "org.fcitx.Fcitx5.Addon.Unikey" flatpak "org.fedoraproject.MediaWriter" flatpak "org.fkoehler.KTailctl" flatpak "org.gnome.DejaDup" diff --git a/system_files/shared/usr/share/ublue-os/user-setup.hooks.d/40-flatpak.sh b/system_files/shared/usr/share/ublue-os/user-setup.hooks.d/40-flatpak.sh old mode 100644 new mode 100755 index c067a32..dd15a73 --- a/system_files/shared/usr/share/ublue-os/user-setup.hooks.d/40-flatpak.sh +++ b/system_files/shared/usr/share/ublue-os/user-setup.hooks.d/40-flatpak.sh @@ -3,7 +3,56 @@ set -euo pipefail source /usr/lib/ublue/setup-services/libsetup.sh -version-script aurora-flatpak user 1 || exit 0 +version-script aurora-flatpak user 2 || exit 0 + +# https://github.com/ublue-os/aurora/issues/3038 +migrate_fcitx() { + LOCAL_UBLUE_DIR="${XDG_DATA_HOME:-${HOME}/.local/share}/ublue" + ID="org.fcitx.Fcitx5" + FCITX_CONFIG_DIR="${HOME}/.config/fcitx5" + FCITX_DATA_DIR="${HOME}/.local/share/fcitx5" + + FCITX_FLATPAK="${HOME}/.var/app/${ID}" + FCITX_DATA_DIR_FLATPAK="${FCITX_FLATPAK}/data" + FCITX_CONFIG_DIR_FLATPAK="${FCITX_FLATPAK}/config" + STAMP="aurora-fcitx-flatpak-migration" + + # this should only show it to the people who actually used fcitx + if [[ ! -f "${LOCAL_UBLUE_DIR}/${STAMP}" ]] && [[ -d "${FCITX_CONFIG_DIR}" ]]; then + + if [[ -d "${FCITX_CONFIG_DIR}" ]]; then + mkdir -p "${FCITX_CONFIG_DIR_FLATPAK}" + cp -r "${FCITX_CONFIG_DIR}" "${FCITX_CONFIG_DIR_FLATPAK}" + fi + + if [[ -d "${FCITX_DATA_DIR}" ]] && [[ -n "$(ls -A "${FCITX_DATA_DIR}" 2>/dev/null)" ]]; then + mkdir -p "${FCITX_DATA_DIR_FLATPAK}" + cp -r "${FCITX_DATA_DIR}" "${FCITX_DATA_DIR_FLATPAK}" + fi + + TITLE="Fcitx has been removed from the system" + MESSAGE="Please reinstall Fcitx from Bazaar so you can install all the necessary add-ons for your languages and make sure it is enabled in the Virtual Keyboard Settings." + + ACTION=$(notify-send \ + --app-name=Aurora \ + --icon=input-keyboard-virtual \ + --urgency=critical \ + "${TITLE}" \ + "${MESSAGE}" \ + --action="open=Install Fcitx" \ + --action="info=More Info/Help" + ) + + if [[ "$ACTION" = "open" ]]; then + xdg-open appstream://${ID} + elif [[ "$ACTION" = "info" ]]; then + xdg-open "https://github.com/ublue-os/aurora/issues/3038" + fi + touch "${LOCAL_UBLUE_DIR}/${STAMP}" + fi +} + +migrate_fcitx # More consistent Qt/GTK themes for Flatpaks flatpak override --user --filesystem=xdg-config/gtk-4.0:ro