প্রকল্প সম্পর্কে

MacWatcher হলো macOS-এর জন্য একটি Hammerspoon Spoon যা সিস্টেম ইভেন্টের প্রতিক্রিয়ায় কমান্ড চালায়। এটি তাদের লক্ষ্য করে যারা ইতিমধ্যে Hammerspoon চালান এবং চান যে মেশিনের অবস্থা পরিবর্তন হলে shell স্ক্রিপ্ট বা বাইনারি স্বয়ংক্রিয়ভাবে চালু হোক। README-তে বর্ণিত সমর্থিত ট্রিগার: - sleep থেকে resume বা unlock (whenResume), কমান্ড চালানোর আগে ঐচ্ছিক delay সহ। - sleep-এ যাওয়া বা lock করা (whenSuspend), যা ইভেন্টের ঠিক আগে চালানো যেতে পারে। - WiFi নেটওয়ার্ক পরিবর্তন (onWifiChange); SSID কমান্ডের আর্গুমেন্ট হিসেবে যোগ করা হয়। - Light/dark appearance পরিবর্তন (onThemeChange), যার মধ্যে মেশিন sleep অবস্থায় থাকাকালীন পরিবর্তনও অন্তর্ভুক্ত; "light" বা "dark" মান আর্গুমেন্ট হিসেবে যোগ করা হয়। - একটি synchronous teardown hook (whenStop) যা stop() কল করা হলে চলে। কনফিগারেশন অপশনের মধ্যে রয়েছে cooldown period (hook executions-এর মধ্যে ন্যূনতম সেকেন্ড) এবং কমান্ড execution-এর জন্য task timeout। কমান্ডগুলো timeout সহ asynchronously execute করা হয়, এবং প্রতিটি hook একটি delay parameter গ্রহণ করে। README-তে covered installation path: release zip ডাউনলোড করে MacWatcher.spoon ফোল্ডার ~/.hammerspoon/Spoons/ এ রাখা, release zip URL থেকে SpoonInstall-এর মাধ্যমে ইনস্টল করা, অথবা development-এর জন্য সরাসরি repository কে Spoons directory-তে clone করা। ইনস্টলেশনের পরে, Hammerspoon reload করতে হবে। ব্যবহার Lua configuration-এর মাধ্যমে: hs.loadSpoon("MacWatcher") দিয়ে Spoon লোড করুন, ঐচ্ছিকভাবে cooldown এবং taskTimeout সেট করুন, উপরে দেখানো chained methods দিয়ে hooks register করুন, তারপর start() কল করুন। সম্পূর্ণ API reference GitHub Pages-এ প্রকাশিত। প্রকল্পটি MIT licensed।