Adding photos to iPhone programmatically without iTunes I'd like to know how to add photos to an iOS device without iTunes nor any "iPhone explorer" programs.

I have the image files, and I have the iPhone "mounted" on a Linux machine, which means I have access to some directories like DCIM and PhotoData.

Now, how do I actually put the pictures in ? I tried dropping them in DCIM but of course it doesn't work and despite the files being there they don't show up in the camera roll. Is there any particular thing to do after copying the files, or a particular file name syntax to follow?
Apple expects you to use iCloud Photo Library. With that service you can login to the iCloud website on the Linux machine, click on Photos and then click on the "Upload" link to select images to upload. Your phone doesn't have to be connected to the Linux machine, just to the Internet via WiFi, and it will sync the new photos. I've done this myself and it does seem to work (not from a Linux machine, but with the Chrome browser).

The alternative would be to buy the camera connection kit or lightning to sd card adaptor and setup an sd card exactly the way it would look if it came from a camera, copying the images from the Linux machine. Note, I  haven't tried this but it should work as long as the directories on the sd card match how they would be constructed if they were created by a camera.