diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7d1c196..efee5f1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,7 +42,6 @@ jobs: meson setup _build ninja -C _build install pacman --noconfirm -Rs mingw-w64-ucrt-x86_64-desktop-file-utils mingw-w64-ucrt-x86_64-meson git - find /ucrt64/share/locale/ -type f ! -name "*cartridges.mo" -delete - name: Test shell: msys2 {0} diff --git a/cartridges/cartridges.in b/cartridges/cartridges.in index 282a9fd..6c8f056 100755 --- a/cartridges/cartridges.in +++ b/cartridges/cartridges.in @@ -26,24 +26,14 @@ import signal import sys VERSION = "@VERSION@" -if os.name == "nt": - from ctypes import windll - - os.environ["LANGUAGE"] = locale.windows_locale[ - windll.kernel32.GetUserDefaultUILanguage() - ] - PKGDATADIR = os.path.join(os.path.dirname(__file__), "..", "share", "cartridges") - LOCALEDIR = os.path.join(os.path.dirname(__file__), "..", "share", "locale") -else: - PKGDATADIR = "@pkgdatadir@" - LOCALEDIR = "@localedir@" +PKGDATADIR = "@pkgdatadir@" +LOCALEDIR = "@localedir@" sys.path.insert(1, PKGDATADIR) signal.signal(signal.SIGINT, signal.SIG_DFL) -if os.name != "nt": - locale.bindtextdomain("cartridges", LOCALEDIR) - locale.textdomain("cartridges") +locale.bindtextdomain("cartridges", LOCALEDIR) +locale.textdomain("cartridges") gettext.install("cartridges", LOCALEDIR) diff --git a/meson.build b/meson.build index cf44fc7..b72d5fa 100644 --- a/meson.build +++ b/meson.build @@ -37,12 +37,14 @@ conf.set('libexecdir', libexecdir) subdir('data') subdir('cartridges') -subdir('po') if host_machine.system() == 'windows' subdir('windows') else subdir('search-provider') + # Translations are broken on Windows for multiple reasons + # gresources don't work and MSYS2 seems to have also broken the gettext package + subdir('po') endif gnome.post_install( diff --git a/windows/Cartridges.iss.in b/windows/Cartridges.iss.in index e3a98c6..d785c3a 100644 --- a/windows/Cartridges.iss.in +++ b/windows/Cartridges.iss.in @@ -40,15 +40,14 @@ Source: "D:\a\_temp\msys64\ucrt64\bin\*.dll"; DestDir: "{app}\bin"; Flags: recur Source: "D:\a\_temp\msys64\ucrt64\etc\ssl\*"; DestDir: "{app}\etc\ssl"; Flags: recursesubdirs ignoreversion -Source: "D:\a\_temp\msys64\ucrt64\lib\gdk-pixbuf-2.0\*"; DestDir: "{app}\lib\gdk-pixbuf-2.0"; Flags: recursesubdirs ignoreversion -Source: "D:\a\_temp\msys64\ucrt64\lib\girepository-1.0\*"; DestDir: "{app}\lib\girepository-1.0"; Flags: recursesubdirs ignoreversion +Source: "D:\a\_temp\msys64\ucrt64\lib\gdk-pixbuf-2.0\*"; DestDir: "{app}\lib\gdk-pixbuf-2.0"; Flags: recursesubdirs ignoreversion +Source: "D:\a\_temp\msys64\ucrt64\lib\girepository-1.0\*"; DestDir: "{app}\lib\girepository-1.0"; Flags: recursesubdirs ignoreversion Source: "D:\a\_temp\msys64\ucrt64\lib\python@PYTHON_VERSION@\*"; DestDir: "{app}\lib\python@PYTHON_VERSION@"; Excludes: "__pycache__"; Flags: recursesubdirs ignoreversion Source: "D:\a\_temp\msys64\ucrt64\share\cartridges\*"; DestDir: "{app}\share\cartridges"; Excludes: "__pycache__"; Flags: recursesubdirs ignoreversion Source: "D:\a\_temp\msys64\ucrt64\share\icons\*"; DestDir: "{app}\share\icons"; Excludes: "*.png,cursors\*"; Flags: recursesubdirs ignoreversion Source: "D:\a\_temp\msys64\ucrt64\share\glib-2.0\*"; DestDir: "{app}\share\glib-2.0"; Flags: recursesubdirs ignoreversion Source: "D:\a\_temp\msys64\ucrt64\share\gtk-4.0\*"; DestDir: "{app}\share\gtk-4.0"; Flags: recursesubdirs ignoreversion -Source: "D:\a\_temp\msys64\ucrt64\share\locale\*"; DestDir: "{app}\share\locale"; Flags: recursesubdirs ignoreversion Source: "..\..\windows\icon.ico"; DestDir: "{app}"; Flags: recursesubdirs ignoreversion