Happy beginning-of-April Tuesday!
After last week's rain check, it's finally time to talk a bit more about Immich, the self-hosted photo management platform. This discussion will get a bit technical, but it's weaved into my personal situation, so I hope you'll bear with me.
But before I get into today's topic, let's first revisit the 2025 Consistency Challenge now that we're starting a new quarter.
Because of the desktop PC motherboard catastrophe that happened to me about 10 days ago and the backlog of tasks I had to catch up on as a result, I haven't really made any progress to speak of on my file archive organization project since the last time I checked in. That means my results from this quarter are as follows:
- Collected 4.6 million files from dozens of drives and other storage locations
- Deleted 830 thousand files during the collection and triage process
Despite not reaching my goal, the next steps are clear, so at least I'm not stuck. I've just been occupied with other critical tasks recently. To continue making progress, all I have to do is keep working on the next stage of "pre-organization," working through folders and sorting files into big categorical buckets that will make a more automated approach feasible. Given the (non-existent) progress I made on this project before starting the 2025 Consistency Challenge, I'd call this an overall win.
For quick reference, here again are the points to consider for a quarterly consistency goal:
- Choose one thing to work on for each quarter of the year (Jan-Mar, Apr-Jun, and so on).
- Pick a measurable goal to reach by the end of the quarter.
- Determine a measurable action that will move you toward that goal.
- Perform that action at least once per week, noting the progress you made.
- ๐๏ธ BONUS: Report your weekly progress to somebody else each week, or ask them to remind you. ๐จ๏ธ
Since we're heading into Q2, I have two obvious options: keep working on the same project, or else pick a different one. For those of you following along with your own challenges, it's a good time to consider how things have gone. Did you make progress? Did you, unlike me, actually reach your goal completely? Or would it help if you spent another few months chipping away at the same task?
For my part, I'm going to stay with the same project. I did well enough despite not reaching the goal, and I'm excited to continue that momentum. Switching gears now feels wrong, so I won't. My goal for Q2 is to finish what I started. The target is the same, but since I'm (re)starting from a new point in the project, I'll tweak the specifics a little to fit better.
So, for the second quarter of 2025, here is my "one thing" to work on, along with the measurable goal and weekly action:
- ๐ I want to clean and organize my old archives. My data is already centralized on a single triage hard drive.
- ๐ฏ By the end of this quarter, I will have a file count of less than half of what I started with (2.3 million instead of 4.6 million).
- ๐ Every week, I will work through at least 5 high-level folders from one drive and either move the data into a category folder or, if possible, delete it. Once all files are in category folders, I will run automatic de-duplication on as much as I can.
- ๐ I'll note in a simple table how many files I organized or eliminated each time I work on my task and report to all of you how it's going in this post.
There you have it. What are your goals for this quarter? Anything I can help you accomplish? Let me know!
Immich Overview
Last week, I mentioned that Immich was the new photo management tool I'd been exploring. At the same time, I referred to the Wife Acceptance Factor, a subjective rating of how likely your spouse (usually the female of the pair) is to be okay with something you're doing or hoping to integrate into your life--a photo management system, in this case.
Here's what Immich's author wrote in the Introduction page of the official documentation, a short narrative that describes Immich's inception:
"I am an Electrical Engineer by schooling, then turned into a Software Engineer by trade and the pure love of problem solving.
"We were lying in bed with our newborn, and my wife said, 'We are starting to accumulate a lot of photos and videos of our baby, and I don't want to pay for App-Which-Must-Not-Be-Named anymore. You always want to build something for me, so why don't you build me an app which can do that?'
"That was how the idea started to grow in my head. After that, I began to find existing solutions in the self-hosting space with similar backup functionality and the performance level of the App-Which-Must-Not-Be-Named. I found that the current solutions mainly focus on the gallery-type application. However, I want a simple-to-use backup tool with a native mobile app that can view photos and videos efficiently. So I set sail on this journey as a hungry engineer on the hunt."
This resonates with me on multiple levels. He sounds like someone I'd enjoy getting to know.
Unlike most of us, he had not only the knowledge but also the time and motivation to create this project. Better yet, it didn't come out in the narrowly focused, ugly, engineerish way that such projects so often do. No, he's created an exceptional piece of software with a beautiful interface, and it's free. You have to do some initial legwork to use it, but no more (and in some cases much less) than other systems require.
Immich isn't for everyone. It's ideally suited for someone with a technical background, a penchant for self-hosted solutions (or at least a general desire for privacy and control of your own data), and a whole lot of photos to manage. It's not something you can just download as a Mac or Windows app and install in a few clicks, but as server and hosting software goes, it's easy to work with.
(If you're curious about self-hosting but don't know where to start, feel free to ask; it's a broad topic, but there are tons of resources available.)
If you've ever used Google Photos, the screenshot above probably looks familiar. The user interface was intentionally designed to mimic much of Google Photos. It has built-in local facial recognition, album creation, GPS coordinate support for geographic photo mapping, sharing capability, native mobile apps for Android and iOS, and many other familiar features. Its editing capabilities are currently pretty limited, but the development roadmap suggests that will change before long.
The full project source is hosted on Github, with a detailed feature list included.
One interesting aspect of Immich is that it supports two distinct methods for handling collections of photos and videos. You can even use them simultaneously with different sets of files if you want to.
First is the default approach, where Immich is fully in charge of your media. Photo and video files are still stored in a normal filesystem where you can get at them, but you're not supposed to edit, delete, or modify them outside of Immich, or else the internal database will get confused. This mechanism allows a seamless (and optionally automated) upload/sync from your smartphone with the dedicated app, which is a great option for many people.
The other approach Immich allows is the use of what they call external libraries. This is a more hands-off option where Immich provides a nice interface for tagging, face recognition, sharing, mapping, and most of its other great features, but it leaves the actual image and video file management up to you. This includes the option to make any modifications you want without breaking anything inside of Immich. You bear a bit more responsibility for keeping your media library synchronized and backed up, but that's probably a minor challenge for someone comfortable enough to self-host a photo management app.
The Ideal Photo Workflow
========================
As I hinted over the last two weeks, my experiments with Immich got me thinking about the best possible solution for our family--especially for my wife, who was never as excited about Mylio as I was, though she's been a good sport about using it. Our situation will no doubt be different from yours, but many of you have likely run into similar challenges, whether or not you thought about it specifically.
Most photo organization tools provide the best overall experience if you go all-in and use them exclusively and to the fullest possible extent. When you start cobbling multiple tools or platforms together, you generally lose some ability to streamline things. This is also true when you have two people who intuitively manage photos differently from each other. If my wife and I both wanted to use iCloud Photos for everything (for example), Apple has made that ecosystem work extremely well for most people, including sharing access and control with your spouse.
...but I don't want to do that. (My wife is more ambivalent.) I want all of our photos to be more fully under our control, for security and privacy as well as immediate access and self-managed backups. Not everyone has the same priorities and preferences, which is fine; I'm just explaining my position.
However, my wife works best directly from her phone, while I work best from a (non-Mac) desktop or laptop PC. I prefer the photos I take on my phone to sync immediately to my computer, while she prefers syncing to occur--if at all--only after she's done with culling and editing from her phone. Or, at minimum, she wants the culling and editing to propagate automatically to any previously synced photos.
Our differing workflows wouldn't pose any kind of problem except that we also want to share access to our family photos. iCloud makes this sharing incredibly easy, but it muddies the waters for that immediate vs. delayed sync preference I mentioned above. If iCloud shares her photos with me, and my phone immediately syncs the photos across to my desktop and then automatically cleans up synced photos out of iCloud (because you never want multiple independent copies of something), suddenly we have a problem. Photos that my wife intended to keep on her phone disappear when iCloud propagates my post-sync deletion back to her copy of our shared library.
Oops. (And yes, this has happened multiple times.)
Mylio does a good job mitigating this issue with multiple users, but only if you go all-in and work 100% of the time inside Mylio and stay out of Apple's native Photos app. But you can't access and share Mylio's photos directly from the "share" target inside the Instagram or Facebook apps, for example, without first downloading them back onto your phone--at which point you have multiple copies (which will get re-synced as new photos back into Mylio if you aren't careful).
Ugh. So many ways for things to go subtly wrong!
What Do We Actually Want?
=========================
So, back to the "ideal photo workflow" I've been thinking about. Could Immich solve this? Do I need to ditch Mylio? Are either of them actually compatible with our goals? Answering these questions requires taking a step back to look at what those goal are. I've been thinking about this for a solid week now.
I started by considering the most important requirements:
- My wife must be able to work directly from her phone for all typical operations, including sharing directly from other apps
- We must have shared access to our family photos and videos (that we both almost always take with iPhones)
- Anything that affects the photo set on my wife's phone must only happen after she's aware of and okay with it
(Lest anyone wonder, these are not compromises. All three of these requirements make perfect sense to me, and I do not begrudge my wife's desire for this kind of workflow. I just haven't managed to pull it off yet.)
The next set of requirements have to do with data security and control:
- All pictures and videos should be regularly backed up outside of the iCloud world, specifically to our Synology NAS
- Synchronization and backups should be as automatic and transparent as possible without blocking a previous goal
- Syncing, whether manual or automatic, should pull in any changes or deletions from the phone's native Photos app
It's this first point about "regularly backed up outside of the iCloud world" that creates the biggest challenge. Every other point happens automatically if you stay in the warm, fuzzy, comfortable world that is the iCloud ecosystem.
How can I address that final requirement, the out-of-iCloud synchronization? Mylio and Immich both provide the ability to back up your photos from iCloud, but doesn't sync deletions. Deleting photos on your phone after syncing to Mylio or Immich will not remove them from Mylio or Immich--nor should it, as that would be a disaster for typical use cases.
But I have this unique situation where I need selective (but not universal) mirroring, including deletions, where iCloud storage is a temporary waypoint for me but a near-permanent storage platform for my wife, and where we share photos.
Does such a thing exist?
No, not with an off-the-shelf solution. We--especially I--have too many conflicting requirements.
HOWEVER...
Corner Case Solutions to the Rescue
===================================
There IS something that can get me almost all the way there! It's a command-line tool called "iCloud Photo Downloader" available for free on Github. This is getting deep into the technical weeds, so to speak, so I'm not going to detail how to set it up here. But in short, it provides a way to automate a one-way sync from iCloud to another location while also catching edits and deletions. It's like someone else had the same narrow problem I did and decided to create a tool to solve it...which is probably exactly what happened.
This last feature--catching edits and deletions in the sync process--is the holy grail for me. That means I can set up iCloud Photo Downloader to regularly pull in photos (and edits and deletions) from both of our phones and add them to an external library accessible in Immich. I can work in the app I like, and she can work in the app she likes, and we don't have to worry about duplicate copies or re-downloading images back to the phone or needing to sort the same image multiple times.
It's not quite as transparent and streamlined as an all-iCloud world, but as far as my wife is concerned, it should be just as good. For my part, I have to do a small amount of extra work to set up and maintain the synchronization, but that's all. Our photos will be stored on the Synology NAS and backed up regularly, and both of us can use iCloud for recent photos and Immich as a simple central repository for everything, including much older photos.
What about Mylio? Technically, I could use Mylio instead of Immich as a centralized management tool, and just ignore the syncing support. But it costs about $120/year now, and at that point most of its compelling features would be either redundant or disabled. Therefore, I may decide to move away from it. It does a lot of things incredibly well, but it's less valuable without 100% buy-in from all users, and even less so when it's an impediment to efficient photo organization and access, as is the case for my wife.
If I can get Immich, iCloud Photo Downloader, and my NAS working together as expected--and I'm 90% of the way there already--the few unique features of Mylio that we lose will probably be worth the simplicity that we gain in exchange.
And, of course, significantly improving the Wife Acceptance Factor here can only yield good results.
I still need to finish setting everything up to confirm that it works, so I'm not removing Mylio from the picture just yet. But I'll keep you all informed about my progress and whether I run into any unexpected issues.
Whew. That was...technical. If you followed the whole discussion so far, kudos! If you have similarly convoluted requirements, or even just vague goals, I'm happy to help bring some clarity both to what you want and how you might be able to achieve it. Just reply here or use the Tidy Bytes Contact form.
And don't forget: if you're following along, now's the time to pick a new quarterly goal for the 2025 Consistency Challenge.
Have a great week, and happy data-taming!