{"library":"pyobjc-framework-servicemanagement","title":"PyObjC ServiceManagement Framework","description":"pyobjc-framework-servicemanagement provides Python wrappers for Apple's ServiceManagement framework on macOS. This framework offers a secure and object-oriented interface for interacting with `launchd`, primarily used for managing privileged helper tools. The library is actively maintained, with version 12.1 being the current release, and follows a regular release cadence with updates aligning to new macOS SDKs and Python versions.","language":"python","status":"active","last_verified":"Sat May 16","install":{"commands":["pip install pyobjc-framework-servicemanagement"],"cli":null},"imports":["import ServiceManagement"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import ServiceManagement\nimport objc\n\n# Example: Accessing a constant from the ServiceManagement framework\n# Note: Actual use of ServiceManagement APIs (e.g., SMJobSubmit, SMJobBless)\n# requires significant macOS-specific setup, including helper executables,\n# entitlements, and proper code signing. This snippet only demonstrates\n# basic framework import and constant access.\n\ntry:\n    # Attempt to access a known constant\n    right_name = ServiceManagement.kSMRightBlessPrivilegedHelper\n    print(f\"ServiceManagement constant kSMRightBlessPrivilegedHelper: {right_name}\")\n\n    # Check for a typical function to ensure framework is loaded\n    if hasattr(ServiceManagement, 'SMJobCopyDictionary'):\n        print(\"ServiceManagement framework appears to be loaded and has SMJobCopyDictionary.\")\n\nexcept objc.nosuchmodule_error:\n    print(\"ServiceManagement framework not found or not importable. This library is macOS-only.\")\nexcept Exception as e:\n    print(f\"An error occurred: {e}\")","lang":"python","description":"This quickstart demonstrates how to import the `ServiceManagement` framework and access a common constant. Full utilization of the `ServiceManagement` APIs requires extensive macOS-specific configurations, including setting up privileged helper tools, managing entitlements, and code signing, which are beyond a simple quickstart example.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-16","installed_version":null,"pypi_latest":"12.1","is_stale":null,"summary":{"python_range":"3.10–3.9","success_rate":0,"avg_install_s":null,"avg_import_s":null,"wheel_type":null},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.3,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.1,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":2.7,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pyobjc-framework-servicemanagement","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":4.1,"import_time_s":null,"mem_mb":null,"disk_size":null}]}}