All you have to do is have a video you want to use, download one of apple's through settings, go to the location of the downloaded background (I don't remember where that is right now but a quick google search would take care of this), rename your file to the name of apple's file and then replace it.
Mac will act as if this video is the right video and use it without complaints. Until apple starts doing any checksum checks on these files I doubt this method will break anytime soon.
This has been working flawlessly for me for a while now.
This may take some finagling to make sure that your video file is not so large that your Mac can't handle it and that you are using the right format. But it is not hard to do.
On Linux, I can just compile software myself if I need to make changes. But usually most software is configurable enough that I don't need too.
On OSX, I feel like I'm helpless. I've found very little people writing about their experiences, the tools they use, their workflows, the reverse engineered data structures etc. Can you share how you approached this?
The fact that title bars on OSX aren't a fixed size drives me crazy every single day. I looked into it briefly and realized somehow everything I know about other platforms is basically useless.
I think the main question most would ask is what affordances can you give or details you can share to prove that this will continue working in future versions of the os since the foundations seem brittle.
I use Wallpaper Engine on windows for one purpose mostly to avoid burn in since my monitors are always on but I've grown to like it over the years and would like to try something on mac but would hate to purchase software that stops working or future update comes with a readme of how to "re-enable" it.
Next, can you please reverse engineer spaces (multiple desktops) so we can rename them? Desktop 1, Desktop 2 etc is not very useful.
Separately, if there is something like this already from a reputable MacOS appstore ecosystem i'd appreciate knowing about it from anyone.
1. Does Backdrop plan to support 5K/6K wallpapers? Those resolutions are pretty standard for Mac workstations.
2. Is functionality similar to TopNotch supported where the notch is hidden? If this was supported I'd likely buy a lifetime license today.
I'm a big fan of TrimEnabler since my Hackintosh days. Sensei looks great but since I already have iStat and thought buying another status menu app would be redundant. But I admire the way it looks.
Does the fact that Backdrop reverse engineers the lockscreen mean that it will never come to the App Store?
And where can you pull
The bad thing about an walled garden OS is you can't change your wallpaper without breaking the rules.
I've been trying to make a library/cli to set the wallpaper/screensaver to use in the next version of Aerial (https://github.com/AerialScreensaver/PaperSaver) on individual screens and been toying around a lot with that whole WallpaperAgent subsystem (and obviously everything Aerial like the manifests, etc, before that), so I may have some insights/questions if you have time ?
From what I've seen there are multiple parts to the way that macOS subsystem works :
- Apple fetches the manifest (json file) with their own videos in (only) 240FPS
- It gets ingested in '/Library/Application Support/com.apple.idleassetsd/Aerial.sqlite' for some reason
- Apple pulls the videos in '/Library/Application Support/com.apple.idleassetsd/Customer/4KSDR240FPS' but renames them through a UUID (despite them having individual keys in the JSON)
Adding videos and sections in System Settings, you can do by manipulating that sqlite and killing WallpaperAgent (or maybe something else) before doing it, but as far as I remember (I only toyed with that part last year during Sequoia beta, so probably misremembering), macOS will periodically pull the manifest again and (fairly often) erase all your changes.
As far as I know, what you select then gets saved per screen/space in `~/Library/Application\ Support/com.apple.wallpaper/Store/Index.plist` (with a lovely Base-64 coding thrown in for fun).
The last part to this is a SystemWallpaperURL key stored in `~/Library/Preferences/com.apple.wallpaper.plist` which I believe (not 100% sure), contains the "special" video that gets played on a cold boot login (as far as I know it's a separate state from the "classic" Lock Screen).
So if I may :
- Do your videos show up on a cold boot too (that separate state I mentionned?) or just the "classic" Lock Screen? My rough guess is the cold boot lock screen can only display videos that are on the System Volume that's mounted before the user volume, so that one is probably fully out of reach.
- How hard did you have to workaround working with restricted paths ? Apple (for some good reasons) restricts hard access to files in user folders, and at that point the only safe place I can reasonably find (outside of containers, but that's a whole other story with screensavers) is `/Users/Shared`. Are you using that folder too?
- Are you messing with the sqlite db, or are you injecting via a reversed engineered api?
- Did you try editing `~/Library/Application\ Support/com.apple.wallpaper/Store/Index.plist` to set your video wallpapers or are you just relying on them being integrated in System Settings?
Since Sequoia, right now Apple broke the way we could set a screensaver via terminal. I got that part working (setting per screen/space) in PaperSaver, but the wallpaper part (basically just switching to another user selected image, not even a video, but this has to be done per space for which we don't have a public api for), I can't seem to get quite right yet, so any insight you have on that would be welcome. Take care and again awesome effort on your launch, this is a non trivial system with so many pitfalls, it takes a bunch of dedication to make it work with so many subtle problems in every corner.