This commit is contained in:
@@ -12,34 +12,163 @@ import (
|
||||
)
|
||||
|
||||
var systemAllowed = map[string]bool{
|
||||
"finder": true,
|
||||
"terminal": true,
|
||||
"iterm": true,
|
||||
"iterm2": true,
|
||||
"bash": true,
|
||||
"zsh": true,
|
||||
"sh": true,
|
||||
"wails": true,
|
||||
"code": true,
|
||||
"cursor": true,
|
||||
"windsurf": true,
|
||||
"goland": true,
|
||||
"idea": true,
|
||||
"clion": true,
|
||||
"webstorm": true,
|
||||
"pycharm": true,
|
||||
"rider": true,
|
||||
"studio": true,
|
||||
"eclipse": true,
|
||||
"sublime_text": true,
|
||||
"git": true,
|
||||
"docker": true,
|
||||
"system events": true,
|
||||
"osascript": true,
|
||||
"client": true,
|
||||
"simple_care_v1.0": true,
|
||||
}
|
||||
// ── Core macOS Desktop Infrastructure ─────────────────────────────────────
|
||||
"finder": true, // macOS file manager / desktop
|
||||
"dock": true, // macOS Dock — kill = dock disappears
|
||||
"windowserver": true, // WindowServer — kill = instant logout
|
||||
"loginwindow": true, // Login/session manager — kill = logout
|
||||
"systemuiserver": true, // Menu bar icons (volume, wifi, battery, clock)
|
||||
"controlcenter": true, // macOS Control Center (Monterey+)
|
||||
"notificationcenter": true, // Notification Center
|
||||
"spotlight": true, // Spotlight search
|
||||
"launchpad": true,
|
||||
"mission control": true,
|
||||
"exposé": true,
|
||||
"universalaccessd": true,
|
||||
"accessibilityuiagent": true, // Accessibility helper
|
||||
|
||||
// ── Input Methods & Language (critical — kill = can't type) ───────────────
|
||||
"inputmethodkit": true,
|
||||
"ibus": true,
|
||||
"hiragana kakomi input": true,
|
||||
"kinput2": true,
|
||||
"squirrel": true, // Rime input method
|
||||
"scim": true,
|
||||
"kotoeri": true, // Japanese IME
|
||||
"pinyin - simplified": true, // macOS Chinese Pinyin
|
||||
"zhuyin - traditional": true,
|
||||
"vietnamese": true, // macOS built-in Vietnamese IME
|
||||
"abc": true, // macOS ABC keyboard input
|
||||
|
||||
// ── Security / Keychain / Authentication ──────────────────────────────────
|
||||
"securityagent": true, // macOS security agent — kill breaks sudo GUI, Keychain prompts
|
||||
"keychain": true, // Keychain access
|
||||
"keychainservicesagent": true,
|
||||
"trustd": true,
|
||||
"opendirectoryd": true,
|
||||
"authorizationhost": true, // Authorization host — UAC equivalent
|
||||
"securityd": true,
|
||||
"coreauthenticationd": true,
|
||||
"biometricd": true,
|
||||
"touchidd": true,
|
||||
|
||||
// ── Audio / Media ─────────────────────────────────────────────────────────
|
||||
"coreaudiod": true, // Core Audio daemon — kill = no sound
|
||||
"audioundockhelper": true,
|
||||
"audio midi setup": true,
|
||||
"noiseremoval": true,
|
||||
|
||||
// ── Networking / VPN ──────────────────────────────────────────────────────
|
||||
"networkd": true,
|
||||
"nesessionmanager": true, // Network Extension — kill drops VPN
|
||||
"scutil": true,
|
||||
"configd": true,
|
||||
"mDNSResponder": true, // Bonjour DNS
|
||||
|
||||
// ── Spotlight / File Indexing ──────────────────────────────────────────────
|
||||
"mds": true, // Spotlight metadata server
|
||||
"mds_stores": true,
|
||||
"mdworker": true, // prefix match covers mdworker_shared
|
||||
"mdworker_shared": true,
|
||||
|
||||
// ── iCloud / Apple Services ───────────────────────────────────────────────
|
||||
"bird": true, // iCloud Drive daemon
|
||||
"cloudd": true,
|
||||
"com.apple.icloud": true, // prefix
|
||||
"cloudphotod": true,
|
||||
"nsurlsessiond": true,
|
||||
|
||||
// ── System Preferences / Settings ─────────────────────────────────────────
|
||||
"system preferences": true, // macOS System Preferences (pre-Ventura)
|
||||
"system settings": true, // macOS System Settings (Ventura+)
|
||||
"software update": true,
|
||||
"app store": true,
|
||||
|
||||
// ── Screen / Display ──────────────────────────────────────────────────────
|
||||
"screensaver engine": true, // Screensaver
|
||||
"com.apple.screensaver": true,
|
||||
"colorsyncd": true,
|
||||
"colorsync utility": true,
|
||||
"nightshift": true,
|
||||
"display menu": true,
|
||||
|
||||
// ── Clipboard / Pasteboard ────────────────────────────────────────────────
|
||||
"pboard": true, // Pasteboard daemon — kill breaks copy/paste
|
||||
|
||||
// ── Printing ─────────────────────────────────────────────────────────────
|
||||
"printingproxy": true,
|
||||
"cupsd": true,
|
||||
|
||||
// ── Crash Reporting / Diagnostics ─────────────────────────────────────────
|
||||
"crashreporter": true,
|
||||
"diagnosticsd": true,
|
||||
"spindump": true,
|
||||
"reportmemoryexception": true,
|
||||
|
||||
// ── Webkit / App subprocesses ─────────────────────────────────────────────
|
||||
"webkit": true, // prefix
|
||||
"com.apple.webkit": true, // prefix
|
||||
"com.apple.webkit.networking": true,
|
||||
|
||||
// ── Remote support ────────────────────────────────────────────────────────
|
||||
"applescriptkit": true,
|
||||
"applescript runner": true,
|
||||
"rustdesk": true,
|
||||
"anydesk": true,
|
||||
"teamviewer": true,
|
||||
"screen sharing": true,
|
||||
"screensharingd": true, // macOS Screen Sharing
|
||||
|
||||
// ── Terminals ─────────────────────────────────────────────────────────────
|
||||
"terminal": true, // macOS Terminal
|
||||
"iterm": true,
|
||||
"iterm2": true,
|
||||
"wezterm": true,
|
||||
"kitty": true,
|
||||
"alacritty": true,
|
||||
"hyper": true,
|
||||
|
||||
// ── Shells ────────────────────────────────────────────────────────────────
|
||||
"bash": true,
|
||||
"zsh": true,
|
||||
"sh": true,
|
||||
"fish": true,
|
||||
|
||||
// ── AppleScript / Automation ──────────────────────────────────────────────
|
||||
"system events": true, // AppleScript System Events (used by our blocker itself)
|
||||
"osascript": true, // AppleScript runner (used by our getVisibleProcesses)
|
||||
|
||||
// ── Git & Credential Helpers ──────────────────────────────────────────────
|
||||
"git": true,
|
||||
"git-credential-manager": true,
|
||||
"git-credential-osxkeychain": true,
|
||||
"github desktop": true,
|
||||
"sourcetree": true,
|
||||
"fork": true,
|
||||
|
||||
// ── Docker ───────────────────────────────────────────────────────────────
|
||||
"docker": true,
|
||||
"docker desktop": true,
|
||||
"com.docker": true, // prefix
|
||||
|
||||
// ── Our app + IDE/dev tools ────────────────────────────────────────────────
|
||||
"client": true,
|
||||
"simple_care_v1.0": true,
|
||||
"simple_care": true,
|
||||
"wails": true,
|
||||
"code": true, // VSCode
|
||||
"cursor": true,
|
||||
"windsurf": true,
|
||||
"goland": true,
|
||||
"idea": true,
|
||||
"clion": true,
|
||||
"webstorm": true,
|
||||
"pycharm": true,
|
||||
"rider": true,
|
||||
"studio": true, // Android Studio
|
||||
"eclipse": true,
|
||||
"sublime text": true,
|
||||
}
|
||||
type ProcessInfo struct {
|
||||
Name string
|
||||
BundleID string
|
||||
|
||||
Reference in New Issue
Block a user