From 21ed4cfc2ff43849e5ffdd8d34622de4d48444d8 Mon Sep 17 00:00:00 2001
From: odrling <florianbadie@odrling.xyz>
Date: Sat, 21 Nov 2020 22:45:05 +0100
Subject: [PATCH] generate installer

---
 .github/workflows/msys.yml                    |  25 +++-
 packages/win_installer/aegisub3.iss           |  33 +++--
 .../win_installer/fragment_automation.iss     |  70 +++++------
 packages/win_installer/fragment_codecs.iss    |   8 +-
 packages/win_installer/fragment_fonts.iss     |  10 +-
 .../win_installer/fragment_mainprogram.iss    | 113 +++++++++++++++++-
 packages/win_installer/fragment_setupbase.iss |   6 +-
 packages/win_installer/fragment_strings.iss   |  10 +-
 src/meson.build                               |   7 ++
 src/res/res.rc                                |   2 +-
 10 files changed, 206 insertions(+), 78 deletions(-)

diff --git a/.github/workflows/msys.yml b/.github/workflows/msys.yml
index 126a8ee4f..87f08a089 100644
--- a/.github/workflows/msys.yml
+++ b/.github/workflows/msys.yml
@@ -40,9 +40,28 @@ jobs:
 
       - name: Create installer
         run: |
-          tree
-          curl -o "aegisub-codecs.zip" https://mugen.karaokes.moe/downloads/aegisub-codecs.zip
+          DESTDIR=$PWD/builddir/installdir meson install --no-rebuild -C builddir
           cd packages/win_installer
-          curl -o "innosetup.zip" https://hikari.butaishoujo.moe/b/52a01bb4/innosetup.zip
+          curl -o "innosetup.zip" https://hikari.butaishoujo.moe/b/acc8d97c/innosetup.zip
           unzip innosetup.zip
+          curl -o "aegisub-codecs.zip" https://mugen.karaokes.moe/downloads/aegisub-codecs.zip
+          unzip aegisub-codecs.zip
+          mkdir Amaranth
+          cd Amaranth
+          curl -o "Amaranth.zip" https://hikari.butaishoujo.moe/b/a416196e/Amaranth.zip
+          unzip Amaranth.zip
+          cd ..
+          ln -s ../../builddir/installdir/a/_temp/msys/msys64/mingw64 install
+          ldd install/bin/aegisub
+          mkdir libs
+          for l in $(ldd install/bin/aegisub | grep -o '=>.*' | cut -d' '  -f2); do
+              echo $l
+              cp $l libs/
+          done
+          tree
           innosetup/ISCC.exe aegisub3.iss
+
+      - uses: actions/upload-artifact@v2
+        with:
+          name: Aegisub-Japan7-x64.exe
+          path: packages\win_installer\output\Aegisub-Japan7-x64.exe
diff --git a/packages/win_installer/aegisub3.iss b/packages/win_installer/aegisub3.iss
index 9b5f27b83..dfc58826d 100644
--- a/packages/win_installer/aegisub3.iss
+++ b/packages/win_installer/aegisub3.iss
@@ -32,7 +32,7 @@
 ; Contact: mailto:nielsm@indvikleren.dk
 ;
 
-#define ARCH 64
+#define ARCH
 
 #include "fragment_setupbase.iss"
 #include "fragment_strings.iss"
@@ -45,14 +45,15 @@ ArchitecturesInstallIn64BitMode=x64
 ArchitecturesAllowed=x64
 
 #include "fragment_mainprogram.iss"
+; #include "fragment_codecs.iss"
 #include "fragment_associations.iss"
-#include "fragment_codecs.iss"
 #include "fragment_automation.iss"
-#include "fragment_translations.iss"
+; #include "fragment_translations.iss"
 #include "fragment_spelling.iss"
 #include "fragment_fonts.iss"
 #ifdef DEPCTRL
 #include "fragment_runtimes.iss"
+#endif
 
 [Code]
 #include "fragment_shell_code.iss"
@@ -76,20 +77,18 @@ begin
   CurStepChangedMigration(CurStep);
 
   if CurStep = ssPostInstall then
-    begin
-      if IsTaskSelected('checkforupdates') then
-        Updates := 'true';
-      else
-        Updates := 'false';
-      endif;
+  begin
+    if IsTaskSelected('checkforupdates') then
+      Updates := 'true'
+    else
+      Updates := 'false';
 
-      SaveStringToFile(
-        ExpandConstant('{app}\installer_config.json'),
-        FmtMessage('{"App": {"Auto": {"Check For Updates": %1}, "First Start": false, "Language": "%2"}}', [
-          Updates,
-          ExpandConstant('{language}')]),
-        False);
-    end;
-  endif;
+    SaveStringToFile(
+      ExpandConstant('{app}\installer_config.json'),
+      FmtMessage('{"App": {"Auto": {"Check For Updates": %1}, "First Start": false, "Language": "%2"}}', [
+        Updates,
+        ExpandConstant('{language}')]),
+      False);
+  end;
 end;
 
diff --git a/packages/win_installer/fragment_automation.iss b/packages/win_installer/fragment_automation.iss
index c8097972f..7d4cf844c 100644
--- a/packages/win_installer/fragment_automation.iss
+++ b/packages/win_installer/fragment_automation.iss
@@ -35,45 +35,45 @@
 ; This file declares all installables related to Aegisub Automation
 
 [Files]
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\select-overlaps.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\duetto-meika.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\karaoke-adjust-1sec.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\karaoke-split.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\ua.BlurAndGlow.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\ua.ChangeCase.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\ua.Colorize.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\ua.Cycles.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\ua.FadeWorks.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\ua.HYDRA.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\ua.ScriptCleanup.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
-DestDir: {app}\automation\autoload; Source: ..\..\automation\autoload\unkf.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\select-overlaps.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\cleantags-autoload.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\duetto-meika.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\karaoke-adjust-1sec.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\karaoke-split.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\kara-templater.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\ua.BlurAndGlow.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\ua.ChangeCase.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\ua.Colorize.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\ua.Cycles.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\ua.FadeWorks.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\ua.HYDRA.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\ua.ScriptCleanup.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
+DestDir: {app}\automation\autoload; Source: install\share\aegisub\automation\autoload\unkf.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\bundled
 
 
-DestDir: {app}\automation\demos; Source: ..\..\automation\demos\future-windy-blur.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos
-DestDir: {app}\automation\demos; Source: ..\..\automation\demos\raytracer.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos
+DestDir: {app}\automation\demos; Source: install\share\aegisub\automation\demos\future-windy-blur.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos
+DestDir: {app}\automation\demos; Source: install\share\aegisub\automation\demos\raytracer.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: macros\demos
 
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\argcheck.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\ffi.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\lfs.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\re.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\unicode.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include\aegisub; Source: ..\..\automation\include\aegisub\util.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: install\share\aegisub\automation\include\aegisub\argcheck.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: install\share\aegisub\automation\include\aegisub\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: install\share\aegisub\automation\include\aegisub\ffi.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: install\share\aegisub\automation\include\aegisub\lfs.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: install\share\aegisub\automation\include\aegisub\re.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: install\share\aegisub\automation\include\aegisub\unicode.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include\aegisub; Source: install\share\aegisub\automation\include\aegisub\util.moon; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
 
-DestDir: {app}\automation\include; Source: ..\..\automation\include\cleantags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\karaskel.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\karaskel-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\lfs.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\moonscript.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\re.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\unicode.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\utils.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
-DestDir: {app}\automation\include; Source: ..\..\automation\include\utils-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\cleantags.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\clipboard.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\karaskel.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\karaskel-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\lfs.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\moonscript.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\re.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\unicode.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\utils.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
+DestDir: {app}\automation\include; Source: install\share\aegisub\automation\include\utils-auto4.lua; Flags: ignoreversion overwritereadonly uninsremovereadonly; Attribs: readonly; Components: main
 
 ; DepCtrl
 #ifdef DEPCTRL
diff --git a/packages/win_installer/fragment_codecs.iss b/packages/win_installer/fragment_codecs.iss
index 02c838726..3bc78693c 100644
--- a/packages/win_installer/fragment_codecs.iss
+++ b/packages/win_installer/fragment_codecs.iss
@@ -34,8 +34,8 @@
 
 [Files]
 ; Avisynth
-DestDir: {app}; Source: ..\..\bin\devil.dll; Flags: ignoreversion; Components: main
-DestDir: {app}; Source: ..\..\bin\avisynth.dll; Flags: ignoreversion; Components: main
-DestDir: {app}; Source: ..\..\bin\DirectShowSource.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: bin\devil.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: bin\avisynth.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: bin\DirectShowSource.dll; Flags: ignoreversion; Components: main
 ; VSFilter
-DestDir: {app}\csri; Source: ..\..\bin\csri\xy-vsfilter-aegisub64.dll; Flags: ignoreversion; Components: main
+DestDir: {app}\csri; Source: bin\csri\xy-vsfilter-aegisub64.dll; Flags: ignoreversion; Components: main
diff --git a/packages/win_installer/fragment_fonts.iss b/packages/win_installer/fragment_fonts.iss
index 5f80d9082..1380e9ebb 100644
--- a/packages/win_installer/fragment_fonts.iss
+++ b/packages/win_installer/fragment_fonts.iss
@@ -1,7 +1,7 @@
 
 [Files]
-DestDir: {app}\FontsLicenses; DestName: Amaranth-OFL.txt; Source: ..\..\vendor\japan7-fonts\Amaranth\OFL.txt; Flags: ignoreversion; Components: fonts
-DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: ..\..\vendor\japan7-fonts\Amaranth\Amaranth-Regular.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
-DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: ..\..\vendor\japan7-fonts\Amaranth\Amaranth-Bold.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
-DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: ..\..\vendor\japan7-fonts\Amaranth\Amaranth-Italic.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
-DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: ..\..\vendor\japan7-fonts\Amaranth\Amaranth-BoldItalic.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
+DestDir: {app}\FontsLicenses; DestName: Amaranth-OFL.txt; Source: Amaranth\OFL.txt; Flags: ignoreversion; Components: fonts
+DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: Amaranth\Amaranth-Regular.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
+DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: Amaranth\Amaranth-Bold.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
+DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: Amaranth\Amaranth-Italic.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
+DestDir: "{fonts}"; FontInstall: "Amaranth"; Source: Amaranth\Amaranth-BoldItalic.ttf; Flags: onlyifdoesntexist uninsneveruninstall; Components: fonts
diff --git a/packages/win_installer/fragment_mainprogram.iss b/packages/win_installer/fragment_mainprogram.iss
index 135f2b2c6..5cd1c0fd9 100644
--- a/packages/win_installer/fragment_mainprogram.iss
+++ b/packages/win_installer/fragment_mainprogram.iss
@@ -54,10 +54,117 @@ Name: "checkforupdates"; Description: "{cm:CheckForUpdates}"; GroupDescription:
 
 [Files]
 ; main
-DestDir: {app}; Source: ..\..\bin\aegisub{#ARCH}.exe; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: install\bin\aegisub{#ARCH}.exe; Flags: ignoreversion; Components: main
 DestDir: {app}; Source: license.txt; Flags: ignoreversion; Components: main
-DestDir: {app}; Source: ..\..\bin\libcrypto-1_1-x64.dll; Flags: ignoreversion; Components: main
-DestDir: {app}; Source: ..\..\bin\libssl-1_1-x64.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libwinpthread-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libwinpthread-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libgcc_s_seh-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libstdc++-6.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libass-9.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libffms2-4.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libfftw3-3.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libiconv-2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libicuin67.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libicuuc67.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopenal-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxbase30u_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxbase30u_xml_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_adv_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_core_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_gl_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_stc_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\zlib1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libwinpthread-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libgcc_s_seh-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libstdc++-6.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libass-9.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libffms2-4.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libfftw3-3.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libiconv-2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libicuin67.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libicuuc67.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxbase30u_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopenal-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxbase30u_xml_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_adv_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_core_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_gl_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_stc_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\zlib1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libfontconfig-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libfreetype-6.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libfribidi-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libharfbuzz-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\avcodec-58.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\avformat-58.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\avutil-56.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\swresample-3.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\swscale-5.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_stc_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libexpat-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libjpeg-8.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libpng16-16.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libtiff-5.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopenjp2-7.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libbrotlidec.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libintl-8.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libbz2-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libgraphite2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libglib-2.0-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libaom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libcelt0-2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libdav1d.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmp3lame-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\liblzma-5.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmfx-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmp3lame-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopencore-amrnb-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopencore-amrwb-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmp3lame-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopus-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libspeex-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libtheoradec-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libtheoraenc-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libvorbis-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libvorbisenc-2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libvpx-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libwavpack-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libwebp-7.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libwebpmux-3.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libx264-159.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_stc_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopenjp2-7.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libbluray-2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libgnutls-30.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmodplug-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\librtmp-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libsrt.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libxml2-2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libvulkan-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libzstd.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libbrotlicommon.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmp3lame-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmp3lame-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libgmp-10.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libhogweed-6.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libidn2-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libnettle-8.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libp11-kit-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libtasn1-6.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_stc_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmp3lame-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\wxmsw30u_stc_gcc_custom.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libicudt67.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libmp3lame-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libopenjp2-7.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libx265.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\xvidcore.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libpcre-1.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libogg-0.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libunistring-2.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libffi-7.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libgsm.dll; Flags: ignoreversion; Components: main
+DestDir: {app}; Source: libs\libcrypto-1_1-x64.dll; Flags: ignoreversion; Components: main
 
 [Icons]
 Name: {commonprograms}\Aegisub; Filename: {app}\aegisub{#ARCH}.exe; WorkingDir: {app}; IconIndex: 0; Tasks: startmenuicon; Comment: Create and edit subtitle files
diff --git a/packages/win_installer/fragment_setupbase.iss b/packages/win_installer/fragment_setupbase.iss
index 808aafe21..29d9aa137 100644
--- a/packages/win_installer/fragment_setupbase.iss
+++ b/packages/win_installer/fragment_setupbase.iss
@@ -51,7 +51,7 @@ AllowNoIcons=true
 OutputDir=output
 Compression=lzma/ultra64
 SolidCompression=true
-MinVersion=0,5.0
+MinVersion=0,6.0
 ShowLanguageDialog=yes
 LanguageDetectionMethod=none
 DisableProgramGroupPage=yes
@@ -74,11 +74,9 @@ Name: "ca"; MessagesFile: "compiler:Languages\Catalan.isl"
 Name: "cz"; MessagesFile: "compiler:Languages\Czech.isl"
 Name: "da"; MessagesFile: "compiler:Languages\Danish.isl"
 Name: "de"; MessagesFile: "compiler:Languages\German.isl"
-Name: "el"; MessagesFile: "compiler:Languages\Greek.isl"
 Name: "es"; MessagesFile: "compiler:Languages\Spanish.isl"
 Name: "fi"; MessagesFile: "compiler:Languages\Finnish.isl"
 Name: "fr_FR"; MessagesFile: "compiler:Languages\French.isl"
-Name: "hu"; MessagesFile: "compiler:Languages\Hungarian.isl"
 Name: "it"; MessagesFile: "compiler:Languages\Italian.isl"
 Name: "ja"; MessagesFile: "compiler:Languages\Japanese.isl"
 Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl"
@@ -86,8 +84,6 @@ Name: "pl"; MessagesFile: "compiler:Languages\Polish.isl"
 Name: "pt_BR"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl"
 Name: "pt_PT"; MessagesFile: "compiler:Languages\Portuguese.isl"
 Name: "ru"; MessagesFile: "compiler:Languages\Russian.isl"
-Name: "sr_RS"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
-Name: "sr_RS_latin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
 Name: "uk_UA"; MessagesFile: "compiler:Languages\Ukrainian.isl"
 
 [Files]
diff --git a/packages/win_installer/fragment_strings.iss b/packages/win_installer/fragment_strings.iss
index 2806a1124..4c22e0388 100644
--- a/packages/win_installer/fragment_strings.iss
+++ b/packages/win_installer/fragment_strings.iss
@@ -1,24 +1,24 @@
 [CustomMessages]
 InstallRuntime=Installing runtime libraries...
-el.InstallRuntime=Εγκατάσταση βιβλιοθηκών...
+;el.InstallRuntime=Εγκατάσταση βιβλιοθηκών...
 pt_PT.InstallRuntime=A instalar livrarias de runtime...
 uk_UA.InstallRuntime=Встановлюю бібліотеки реального часу...
 StartMenuIcon=Create a start menu icon
-el.StartMenuIcon=Δημιουργία εικονιδίου στο μενού έναρξης
+;el.StartMenuIcon=Δημιουργία εικονιδίου στο μενού έναρξης
 pt_PT.StartMenuIcon=Criar ícone no menu iniciar
 uk_UA.StartMenuIcon=Створити піктограму в меню Запустити
 CheckForUpdates=Automatically check for new versions of Aegisub
-el.CheckForUpdates=Αυτόματος έλεγχος για καινούριες εκδόσεις του Aegisub
+;el.CheckForUpdates=Αυτόματος έλεγχος για καινούριες εκδόσεις του Aegisub
 pt_PT.CheckForUpdates=Verifica automaticamente a existência de novas versões do Aegisub
 uk_UA.CheckForUpdates=Автоматично перевіряти Aegisub на нові версії
 UpdatesGroup=Update Checker:
-el.UpdatesGroup=Έλεγχος Ενημερώσεων:
+;el.UpdatesGroup=Έλεγχος Ενημερώσεων:
 pt_PT.UpdatesGroup=Verificar Actualizações:
 uk_UA.UpdatesGroup=Модуль Перевірки на Оновлення:
 
 ; Replacement for License page, no need to bother the user with legal mumbo-jumbo
 [Messages]
 WelcomeLabel2=This will install Aegisub {#BUILD_GIT_VERSION_STRING} on your computer.%n%nAegisub is covered by the GNU General Public License version 2. This means you may use the application for any purpose without charge, but that no warranties of any kind are given either.%n%nSee the Aegisub website for information on obtaining the source code.
-el.WelcomeLabel2=Αυτό θα εγκαταστήσει το Aegisub {#BUILD_GIT_VERSION_STRING} στον υπολογιστή σας.%n%nΤο Aegisub καλύπτεται από τον άδεια GNU General Public License version 2. Αυτό σημαίνει ότι μπορείτε να χρησιμοποιήσετε την εφαρμογή για κάθε σκοπό χωρίς χρέωση, αλλά δεν υπάρχουν εγγυήσεις καμίας φύσης.%n%nΔείτε την ιστοσελίδα του Aegisub για πληροφορίες σχετικά με την απόκτηση του πηγαίου κώδικα.
+;el.WelcomeLabel2=Αυτό θα εγκαταστήσει το Aegisub {#BUILD_GIT_VERSION_STRING} στον υπολογιστή σας.%n%nΤο Aegisub καλύπτεται από τον άδεια GNU General Public License version 2. Αυτό σημαίνει ότι μπορείτε να χρησιμοποιήσετε την εφαρμογή για κάθε σκοπό χωρίς χρέωση, αλλά δεν υπάρχουν εγγυήσεις καμίας φύσης.%n%nΔείτε την ιστοσελίδα του Aegisub για πληροφορίες σχετικά με την απόκτηση του πηγαίου κώδικα.
 pt_PT.WelcomeLabel2=Irá ser instalado no seu computador a versão {#BUILD_GIT_VERSION_STRING} do Aegisub.%n%nO Aegisub está protegido sob a Licença Pública Geral GNU (GPL version 2). O que significa que poderá fazer uso da aplicação para qualquer propósito, sem que seja cobrado, mas não serão dadas quaisquer tipos de garantias.%n%nVeja a página do Aegisub para mais informações sobre como obter o código-fonte.
 uk_UA.WelcomeLabel2=Зараз буде встанвлено Aegisub {#BUILD_GIT_VERSION_STRING} на ваш комп'ютер.%n%nAegisub захищено універсальною громадською ліцензією GNU, версія 2. Це означає, що ви можете використосувати цю програму для будь яких цілей безкоштовно, але, в будь-якому випадку, ми не даємо жодних гарантій.%n%nДивіться сайт Aegisub для інформації щодо отримання вихідного коду.
diff --git a/src/meson.build b/src/meson.build
index 07ab8a329..02ac3b3e8 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -212,6 +212,13 @@ foreach opt: opt_src
 endforeach
 
 if host_machine.system() == 'windows'
+    # avisynth
+    # aegisub_src += [
+    #     'audio_provider_avs.cpp',
+    #     'video_provider_avs.cpp',
+    # ]
+
+    # resources
     res_inc = include_directories(
         'bitmaps/windows',
     )
diff --git a/src/res/res.rc b/src/res/res.rc
index 5b26f4ee5..a21b2f574 100644
--- a/src/res/res.rc
+++ b/src/res/res.rc
@@ -21,7 +21,7 @@ eyedropper_cursor CURSOR "../bitmaps/windows/eyedropper.cur"
 
 // We supply the manifest ourselves
 #define wxUSE_NO_MANIFEST 1
-#include <wx/msw/wx.rc>
+#include "wx/msw/wx.rc"
 
 #include "git_version.h"
 #include <Winver.h>
-- 
GitLab