Music, Photos, Videos: Import from folder

The current approach is that, if you don’t use the default directories in the home folder, more or less tracker controls which files will show up in applications like Music, Photos and Videos. But honestly, this makes it very difficult for users to use other directories.

I use a separate drive for all my files, so in order to make them show up, I had to edit the hidden user-dirs.dirs file, tell tracker in the system settings to index those folders and then do a reboot.

I do understand that this approach makes using the applications very easy for people who use the default directories. But there are other downsides to this too:

  • If you change the default user directories, Photos will show every picture in all the folders that you tell tracker to index. I have many image files in my documents folder that are mainly icons. These will show up in Photos, but they aren’t meant for viewing.

  • You can’t really use external drives if you don’t have them plugged in all the time, because you have to set them up as your home folder.

So all in all, I think the ‘Import from folder’ approach that for example Shotwell uses is better, although it adds an additional step until you can view the photos. But maybe a GUI option to change the directory applications like Photos look at for content would be the best of both worlds.

Different topic: Shotwell and Photos have a pretty similar purpose. Photos feels a bit more integrated in Gnome than Shotwell, mainly because of the header bar, but is lacking a bit of functionality compared to Shotwell. So the question is, do we really need two different applications for the same thing if we don’t have that many developers already and both applications are missing some features (for example excluding screenshots)? If Shotwell would get an UI update with a header bar instead of the menu bar and a reduction of space between the individual photos, it would basically look like Photos, but have more functionality.
Also, the thumbnail generation in Shotwell is way faster than in Photos. If I import my picture folder in Shotwell, I’m done in a few seconds. Photos takes minutes, uses way more memory and feels quite sluggish.
I actually think it’s a problem with the gdk-pixbuf-thumbnailer as mentioned here, because applications like Nautilus and Videos are affected by this as well.

I look forward to hearing your thoughts on this matter.

2 Likes

Thanks for the comments! I’m not a maintainer of the core applications, nor someone with much input on their design, but I do work on Tracker so i can give a few pointers. I also store music and photos in an external drive, so i’m interested in a better experience :slight_smile:

If you change the default user directories, Photos will show every picture in all the folders that you tell tracker to index. I have many image files in my documents folder that are mainly icons. These will show up in Photos, but they aren’t meant for viewing.

That might be a bug or a configuration problem. Photos limits its queries to files inside the XDG Pictures, Downloads and Desktop directories, the relevant code is here.

So all in all, I think the ‘Import from folder’ approach that for example Shotwell uses is better, although it adds an additional step until you can view the photos. But maybe a GUI option to change the directory applications like Photos look at for content would be the best of both worlds.

My understanding is that this copies photos from one location to another, but is that necessary?

If you could tell Music and Photos ‘look for the content in this folder’ in addition to ~/Music and ~/Photos, would that be enough?

2 Likes

Developers work on whatever code they like, and distributors distribute whatever applications they want. Help improving the tool you prefer, help making easy to contribute to it, and maybe at the end it will be so much more used and maintained than the other that it will feel like the “official application” for doing picture management; for now, there are two applications like that, both available and under a free licensing, and let’s be happy with that, because it’s better than none. :smiley:

1 Like

Okay, so first of all thank you both very much for the feedback! It’s much appreciated!

@ sthursfield :

It actually was a configuration problem. I’ve played around with the tracker settings a bit and I remember telling tracker specifically in the ‘Other’ tab to index the changed XDG locations. I did this because for some reason, if I didn’t, Photos wouldn’t show pictures of sub directories of the new location. But that caused a whole lot of other problems, like pictures showing up out of locations that shouldn’t, or I even managed to make Photos show pictures twice.

Well, it turns out that actually Shotwell has a broader understanding of the term ‘Import’ than Photos :smiley:
In Shotwell, when you click on ‘Import from folder’, a dialog shows up where you can choose to either copy the files to your chosen library folder, or just point Shotwell to the files that you want it to show.
The latter is what I’d like Photos to be able to do. So yes, if one could tell apps like Photos to additionally look in another folder (plus the sub folders) for its content, that would be absolutely great and sufficient in my opinion!

@ arnaudb
I absolutely agree with the premise of your post! Thanks for clarifying that in the end, it’s the developers who choose what to work on. I guess I looked at the whole thing a bit too much from the point of view of Gnome being one brand, if one can say it like that. And economically two similar projects do not make a whole lot of sense, but yes, I do really appreciate Gnome because of the freedom it gives you and I wouldn’t like to take away the freedom to choose what to work on from anyone.
We’ll see how it’ll play out in the future. If we’d be able to make Photos and the other mentioned apps a bit more usable, that’s all I’m asking and hoping for :smiley:
I’ll see what I can do to help, but my understanding of C and all the Gnome libraries is lets say ‘basic’. I’m working on a few personal projects currently (Vala/GTK), but hopefully I’ll learn more along the way so I can contribute more in the future.

if one could tell apps like Photos to additionally look in another folder (plus the sub folders) for its content, that would be absolutely great and sufficient in my opinion!

OK! I’m interested in this too, and have been thinking about how Tracker can make it possible. In the 3.0 release we are aiming to improve the on-demand indexing API – which makes it possible for Music and Photos to say to Tracker ‘look in this folder for content as long as this app is running’ – hopefully that will enable the necessary changes in the core apps.

That’s great news! Since it would be a temporary thing, meaning only as long as the app is running, it might be necessary to distinguish two different use cases:

  1. The use of a pluggable external drive

  2. A second internal drive situation

I think both cases are pretty common actually.

So for use case one your proposed solution would be ideal I think.

For use case two, since I don’t know how much time tracker and the core apps would need to index and show the content of a larger media library, it might be preferable to make it easier, I’m thinking of a GUI solution here, to change the XDG directories and make all the necessary changes for the media content to show up.
That would require editing the user-dirs.dirs config file, telling tracker to index the directories and a session restart, which itself requires a reboot as long as Gnome Shell doesn’t support a session restart on Wayland.

I thought of making this functionality available via right-click on the XDG user folders in Nautilus, maybe launching a small utility application sort of like Gnome Image Writer, which is a part of Gnome Disk Utility.

Without having looked deeper into it, it doesn’t sound overly complicated to me. Maybe I could see if I’m able to put this together if this sounds good.

It should be possible to configure a ‘second internal drive’ setup so that things work out of the box, without needing any post-setup configuration. One option is to have the entire /home on the 2nd disk. Or, if the 2nd disk only contains music, one could mount the music partition at the default $XDG_MUSIC_DIR location.

We already have graphical configuration for GNOME’s search services in gnome-control-center (documented slightly at https://help.gnome.org/users/gnome-help/unstable/files-search.html.en).This lets you add additional folders to be indexed. It’s a problem that right now, if you add an extra folder of music, that folder won’t show up in GNOME Music because Music only looks inside ~/Music. Is there a way we could improve this existing control surface? I imagine that’s better design-wise than adding something separate.

I agree that adding something separate isn’t the best solution, especially since I think most users would first look in Music or Photos itself for how to add another folder.

Yes, there certainly are a few possibilities to do that, I think though that’s for a bit more advanced users.
If we think of the typical user as someone who buys a PC that comes with Linux preinstalled and that happens to have a second internal drive for storage, and he wants to store files there and access them, most likely he won’t immediately want to change the setup or the XDG directories. But maybe your proposed solution that I thought would be best suited for the external drive situation is already good enough, meaning fast enough, and we don’t need another option, because too many options can be confusing too.

I think this functionality would greatly increase the usability of the core apps, so I’m very excited to see if this idea gets picked up.