Releases: snowie2000/mactype
2025.6.9 IFEO Support
This version brings a new child process loader for both x32 and x64 arches.
It should be more stable and have better compatibility with 3rd-party apps.
From this version on, all IFEO verifier DLLs are fully compatible. All users using VxKex/VxKex Next for Win7 should upgrade. Thanks @YuZhouRen86 for reporting this issue.
More about this on #1086
2025.4.11 Variable font support
If you found some languages were missing, redownload this version, thank you!
Variable font support is here.
This release brings variable font support to all the GDI applications.
Fonts like Noto Sans
, Segeo UI Variable
and more in all the win32 programs should look like regular fonts.
Due to the limitation of the current FreeType, if a font was created with unconventional instance names, it may not be recognized correctly, and its style may not be rendered correctly. This is uncommon, though.
This release also comes with bug fixes and QOL improvements:
- fixed the bug where the
languages
folder doesn't get installed if the profile component wasn't selected, see #1072 - fixed the incorrect language file encoding #1070
- nice looking profiles created by @chawyehsu from https://github.com/chawyehsu/mactype-profile, thank you!
- profile for QD-OLED G9 is now built-in, thanks to @Pettor, discuss the profile #932
Version 2025.1.17
This is a maintenance version with important bug fixes. Everyone is encouraged to update.
Important bug fix:
- A serious DirectWrite bug was discovered in #1028 that can cause applications that use DirectWrite to not function properly or even crash.
What's new:
- Update freetype to ee1310ab5ca2897b760258b94f3d9230335cc2c0
- Per-app
ArmBreaker
is now implemented. More details are provided below. - Thanks to the donation from Joe Lowe (https://pismotec.com/), all MacType files including the installer are now digitally signed! This should make quite some antivirus software happy! Great thanks!
Per-app armbreaker:
Before version 2025.1.17, ArmBreaker
which is under the Experimental
section can only be effective when set globally.
I.e.
[experimental]
armbreaker=1 ; this will work properly
[experimental@chrome.exe]
armbreaker=1 ; this will not work at all
That's because this walkaround about chrome's integrity check needs its parent process to do the modification when the actual process is being created. However, previously, the parent process stored global config information only and had no idea what to do for a specific process.
Because disabling mitigation policies for processes is potentially risky and should be limited to strictly necessary processes only, enabling such a "feature" globally should not be a solution everlasting and now is the time.
From this version on, syntaxes like
[experimental@chrome.exe]
armbreaker=1
or
[experimental@browsers]
armbreaker=1
[general@chrome.exe]
alternative=browsers
[general@firefox.exe]
alternative=browsers
will work!
PS: Because of the way this walkaround works, after the profile is changed, only when the parent process gets restarted will it become effective.
E.g. adding chrome.exe
to the armbreaker exception without restarting explorer.exe
(or mactype service) may not work for newly launched chromes. You have to reapply mactype to it.
Version 2024.9.14
Minor bug fix version for manual loaders.
No need to upgrade if you use service mode or tray mode or even registry mode.
What's new:
- MacLoader(64).exe has been updated with no more easyhook dependencies. fixed #1018
- The way they work changed
- Now they utilizes detours'
DetourCreateProcessWithDllEx
to start up executables, which is stabler and more native. - Applications that doesn't allow loading unsigned images will simply fail to launch with the new loader.
- Lanuch application via association is not supported any more, which means you can't "start" a .zip file with the loader while previously, you can.
- Now they utilizes detours'
Version 2024.8.15
I know, I know it's not Aug 15 any more. Better late then never. Thank you for your patience!
Here's what's new in this version:
- Bump freetype version git:f92c96550ad763639158587974cf11067ace743d
- Bump easyhook version git:16f641c8e2197b01095f548c94dcbe696a816a05
- Mactype should now no longer cause application fail to start because of the annoying "access denied" error.
- Improve English translation, thanks to @sammilucia
- New profile ChicoThorn 2024.07.24 thanks to @ChicoThorn
- Easyhook is statically linked which means no more easyhk32/64.dll is needed, and less conflicts.
Version 2023.5.31, still preview
-
Fixed a crash that was caused by incorrect indices of ID2D1Device5 and ID2D1Device6 #938. Thanks to @lhecker
-
Implemented basic external control via messaging and CLI.
-
Included the latest @ChicoThorn profile. Thanks again.
-
Included two prototype profiles for QD-OLED panel provided by @bp2008 in #932 (comment)
v1.2022.801.0 preview
Fixed the broken x64 support of vistuner.
Vistuner is now HiDPI ready.
1.2022.729.0 test build
Fixed a serious bug where individual font settings are not applied in the previous test build. (#874)
Added support of x64 application for vistuner. It's broken
Make vistuner operations easier to understand.
1.2022.720.2 test build
This test build replaces the v1.2022.720.0 internal test build
DEPRECATED
DO NOT DOWNLOAD IF NOT ASKED!
This test build fixed the faulty harmony LCD rendering. Now it works as intended.
This new version should have a very close look to the classic Cleartype style one.
A new option has been added to support custom pixel layout:
[general] PixelLayout=a,b,c,d,e,f
where each letter represents an integer from -64 to 64, describing the coordinate of each sub-pixels.
More info can be found at https://freetype.org/freetype2/docs/reference/ft2-lcd_rendering.html
A detailed guide will be provided once it's released to the public.
MacType tray app also got a bug squash so it's more stable now.
v1.2022.720.0 internal test build
REPLACED BY 1.2022.720.2, DO NOT USE
The attachment has been removed.
This test version includes mactype files works in Harmony LCD rendering mode, which means we can now work with pentile LCD panels.
Mactray.exe has been vastly improved, so that:
- service mode now works properly
- application UIs can be automatically refreshed when mactype is engaged.
- wmi sink is now much more stable than before, mactype should be working flawlessly after reboot
A new real-time tuner has been added, which allows you to tune your profiles while reflects what it looks like in real applications
Child process hooking has been improved so that there will be fewer cases that applications listed in the unloaddll section still got loaded (and unload after) causing certain apps to crash.