summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Araps <dylan.araps@gmail.com>2017-07-31 15:10:19 +1000
committerDylan Araps <dylan.araps@gmail.com>2017-07-31 15:10:19 +1000
commit9f1d8bffe0237a8656edbc38cb6fda0a57b446cb (patch)
tree3e3ae58fafc2285a720feb9e49f98b80554a8c4b
parentb3596e65ddc37daccb28d6d133e8c1cdb1c476b3 (diff)
wallpaper: Add support for macOS
-rw-r--r--pywal/wallpaper.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/pywal/wallpaper.py b/pywal/wallpaper.py
index 1c6b485..fc7f5cd 100644
--- a/pywal/wallpaper.py
+++ b/pywal/wallpaper.py
@@ -3,7 +3,7 @@ import os
import shutil
import subprocess
-from .settings import CACHE_DIR
+from .settings import CACHE_DIR, OS
from . import util
@@ -81,6 +81,13 @@ def set_desktop_wallpaper(desktop, img):
set_wm_wallpaper(img)
+def set_mac_wallpaper(img):
+ """Set the wallpaper on macOS."""
+ subprocess.call(["osascript", "tell", "application", "\"Finder\"",
+ "set", "desktop", "picture", "to", "POSIX", "file",
+ f"\"{img}\""])
+
+
def change(img):
"""Set the wallpaper."""
if not os.path.isfile(img):
@@ -88,7 +95,10 @@ def change(img):
desktop = get_desktop_env()
- if desktop:
+ if OS == "Darwin":
+ set_mac_wallpaper(img)
+
+ elif desktop:
set_desktop_wallpaper(desktop, img)
else: