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 00000000..25f478bc --- /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 00000000..46d50900 --- /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 00000000..a3cba0bd --- /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 00000000..a3cba0bd --- /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/flatpak/preinstall.d/fcitx5.preinstall b/system_files/shared/usr/share/flatpak/preinstall.d/fcitx5.preinstall new file mode 100644 index 00000000..237a4787 --- /dev/null +++ b/system_files/shared/usr/share/flatpak/preinstall.d/fcitx5.preinstall @@ -0,0 +1,24 @@ +# part of https://github.com/ublue-os/aurora/issues/3038 +[Flatpak Preinstall org.fcitx.Fcitx5] +Branch=stable +IsRuntime=false + +[Flatpak Preinstall org.fcitx.Fcitx5.Addon.Chewing] +Branch=stable +IsRuntime=true + +[Flatpak Preinstall org.fcitx.Fcitx5.Addon.ChineseAddons] +Branch=stable +IsRuntime=true + +[Flatpak Preinstall org.fcitx.Fcitx5.Addon.Hangul] +Branch=stable +IsRuntime=true + +[Flatpak Preinstall org.fcitx.Fcitx5.Addon.Mozc] +Branch=stable +IsRuntime=true + +[Flatpak Preinstall org.fcitx.Fcitx5.Addon.Unikey] +Branch=stable +IsRuntime=true 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 2a325be6..aaa887fc 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 index d822f3ff..edb10676 100644 --- 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,33 @@ 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" + + # don't overwrite/do anything if user already has flatpak fcitx for whatever reason + if [[ ! -f "${LOCAL_UBLUE_DIR}/fcitx5-flatpak-migration" ]] && [[ -d "/var/lib/flatpak/app/${ID}" ]] && [[ ! -d "${FCITX_CONFIG_DIR_FLATPAK}" ]]; then + if [[ -d "${FCITX_CONFIG_DIR}" ]]; then + 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 + cp -r "${FCITX_DATA_DIR}" "${FCITX_DATA_DIR_FLATPAK}" + fi + touch "${LOCAL_UBLUE_DIR}/fcitx5-flatpak-migration" + fi +} + +migrate_fcitx # More consistent Qt/GTK themes for Flatpaks flatpak override --user --filesystem=xdg-config/gtk-4.0:ro