Skip to content

omeriadon/zestyWin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zestyWin for Apple Silicon

An Apple Silicon and Ammonia fork of w0lfschild/zestyWin. It gives native macOS windows a translucent HUD material while keeping the application's real content and controls in place.

zestyWin preview

What changed

  • Native arm64 and arm64e builds for Apple Silicon
  • Direct deployment to Ammonia's tweak directory
  • One NSVisualEffectView using NSVisualEffectMaterialHUDWindow behind each eligible document window
  • AppKit scroll-view, table, list, form, collection-view, and text-editor background clearing
  • SwiftUI hosting, List, Form, and dynamically loaded Settings-pane handling
  • Catalyst collection-background handling for Messages
  • Targeted support for Calendar, Reminders, Notes, System Settings, Activity Monitor, Apple Music, and other native Apple applications
  • Protection for application content, cards, artwork, WebKit documents, and extension-hosted views
  • Menu, menu-bar, status-item, popover, transient, and untitled utility windows are excluded before their first frame
  • Per-application preferences and an Ammonia process blacklist

Requirements

  • Apple Silicon Mac
  • macOS 11 or later
  • Ammonia installed and active
  • Xcode Command Line Tools

Intel builds and the original MacForge GUI are not maintained by this fork.

Build and install

make clean
make
make install

The build produces a universal Apple Silicon dylib containing arm64 and arm64e slices:

build/libzestywin.dylib

make install atomically installs the dylib and process blacklist to:

/var/ammonia/core/tweaks/libzestywin.dylib
/var/ammonia/core/tweaks/libzestywin.dylib.blacklist

Restart an application after installing so Ammonia can inject the new build. Already-running processes cannot unload an injected dylib.

Application preferences

Disable zestyWin for an application by bundle identifier:

defaults write org.w0lf.zestyWin com.example.Application -int 0

Enable it explicitly:

defaults write org.w0lf.zestyWin com.example.Application -int 1

Then restart the application.

Processes that must never load the dylib belong in zestyWin/libzestywin.dylib.blacklist. The default exclusions include Xcode, Loop, the Siri launcher, macOS menu-bar hosts, MacForge, Finder, Terminal, and selected non-native applications.

Compatibility model

zestyWin operates on native AppKit and SwiftUI view hierarchies. It removes known opaque background surfaces and places the HUD material beneath the original content view. It does not replace an application's content view.

WebKit documents are intentionally preserved. Applications built primarily with Electron, Chromium, or unrelated custom rendering engines are outside this fork's scope.

Some Apple applications use private view classes. Their targeted handling is isolated by bundle identifier so those rules cannot affect unrelated applications.

Safety boundaries

  • ExtensionKit and XPC view services never receive their own background-effect view.
  • Menu-level, status-bar, popover, transient, and untitled windows are rejected before modification.
  • Marked background layers remain clear when SwiftUI or AppKit attempts to restore them.
  • Cards, controls, images, message bubbles, calendar events, and other foreground content remain owned by the application.

Credits

Created by Wolfgang Baird. Apple Silicon, Ammonia, stability, and native-application compatibility work is maintained in this fork.

Releases

Packages

Contributors

Languages