←back to thread

79 points cindori | 1 comments | | HN request time: 0s | source

Hi HN, I'm Oskar, a solo indie Mac developer from Sweden. For those in the Mac community, you might know me from my other apps like Sensei and Trim Enabler.

For years, I've been frustrated by the lack of customisation of macOS. In particular the Lock Screen which supports animated wallpapers, but only ones provided by Apple. There's never been a way to add your own personal videos.

I decided to figure out how to solve this, and the result is Backdrop 2.0. Backdrop is my Live Wallpaper app for Mac, it can play video wallpapers on your desktop. And now it can play on your Lock Screen too.

The core technical challenge, as you can imagine, came from trying to do something that Apple otherwise does not allow. However, through extensive reverse engineering of the macOS wallpaper system, I figured out a way to provide Backdrop wallpapers to the system in a way that allows them to play on the lock screen, and even appear in a custom section in System Settings.

I'm here all day to answer any questions—especially about the reverse engineering process, the challenges of integrating with macOS, or the experience of being an indie Mac developer.

Would love to hear your thoughts and feedback.

Show context
doix ◴[] No.45250364[source]
What's reverse engineering like on a Mac? Have you ever written about it? I had a lot of experience reverse engineering things on windows (win32 + x86, before 64bit was a thing) using OllyDbg and patching binaries and/or (ab)using dlls. If I had to use windows again and wanted to customize something, I'd probably use windhawk nowadays [0].

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.

[0] https://windhawk.net/

replies(3): >>45250466 #>>45250765 #>>45251088 #
cindori ◴[] No.45251088[source]
I have not written about it yet. I use Hopper (https://www.hopperapp.com) to disassemble related binaries and frameworks. It's a great way to explore whats actually happening within macOS or Apple apps.

My current workflow is to run Hopper, export assembly files and then throw various agents (Gemini, Claude etc) at them to learn more or validate my theories. It's surprisingly effective! Maybe I'll write about it.

replies(1): >>45264924 #
1. mthoms ◴[] No.45264924[source]
Please do!