Skip to main content

LaunchAgents + python

Project description

Installation

$ [sudo] pip install mac-agents

Classes

class __doc__
mac_agents.Agent launchd.plist generator. Capital letter attrs/props as launchd.plist keys

Functions

function __doc__
mac_agents.jobs() return a list of launchctl Job objects (pid, status, label)
mac_agents.read(path) return a dictionary with plist file data
mac_agents.update(path, **kwargs) update plist file data
mac_agents.write(path, data) write data dictionary to a plist file

Executable modules

usage __doc__
python -m mac_agents.create path ... generate launchd.plist from python file(s)
python -m mac_agents.tag [path] set Finder tags. red - status, orange - stderr, gray - unloaded

Examples

~/Library/LaunchAgents/file.py

import mac_agents

class Agent(mac_agents.Agent):
    StartInterval = 5  # capital letter

    def run(self):
        pass

if __name__ == "__main__":
    Agent().run()
$ find ~/Library/LaunchAgents -name "*.py" | xargs python -m mac_agents.create "$@"
$ find ~/Library/LaunchAgents -name "*.plist" | xargs launchctl load # or launchctl unload
$ launchctl list | grep .py$ | awk '{print $3}' | xargs -I '{}' launchctl remove {}
$ find ~/Library/LaunchAgents -name "*.py.plist" -exec rm {} +

Links

python-readme-generator

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mac-agents-2019.4.13.tar.gz (4.8 kB view details)

Uploaded Source

File details

Details for the file mac-agents-2019.4.13.tar.gz.

File metadata

  • Download URL: mac-agents-2019.4.13.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.9.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2

File hashes

Hashes for mac-agents-2019.4.13.tar.gz
Algorithm Hash digest
SHA256 ccbc8163ed314478d4032f4518ac2c4d71e92ff6d24520789503fa83d41b1dff
MD5 d982d1c0e443ac68efda6784877a7a19
BLAKE2b-256 fd10005b9eaa123c8491d1dc27f59cef615f287c43cfc6610db23c4221e69eb7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page