fwiw
I’m a linux guy. Retired software engineer. I don’t like database oriented systems like Darktable. I won’t go into why. I just don’t.
I keep a hand made file system hierarchy with descriptive names
Birds
–Costa Rica
----Jan_26_2019
------raw1
----------jpegs
------raw2
----------jpegs
etc
In any given directory I can make keywords to search on with a symlink or an empty file:
touch Birds/Costa-Rica/Jan_26_2019/Raw1/Toucan
…from a terminal window command line:
sudo updatedb
locate -i toucan
(there might be a half a dozen directories were i have toucan images. Now they’re easy to find)
The jpegs. If I make a jpeg from PIC_1234.NEF (nikon raw) I would call it something like:
PIC_1234_Bald-eagle.jpg That way I can always forever more match PIC_1234_Bald-eagle.jpg to the PIC_1234.NEF it was made from, usually but not always found one directory above the jpeg.
I have two 8 terabyte drives. One mirrors the other. OS on a flash drive.
Once a month or so I copy the backup directory to a usb drive. It takes all night so I do it
as I go to sleep. All three of those discs would be lost if the house burned down. I should fix that. But I likely won’t. I’m old retired and lazy now.
If my 8 terabyte drives fill up (62% full now) I will go to NAS system somehow. Building one from parts would be a fun project.
Finally (I promise) I taught a 3 hour photography class a few years ago, as part of a state-wide Audubon Festival. The number one problem the class reported was how to archive images. They came to learn about F-stops and image processing too. But they all seemed to be pulling their hair out trying to find lost images, or with trying to learn the menus of a complex commercial image archiving software system. KISS is the software designer’s best friend. Keep It Simple Stupid.