Apple TV is nice and affordable device to access Netflix and Youtube from your television. It also nicely integrates with your Apple computers. But what if you don't have any Apple computers and you have some content on your Linux which you'd like to watch on your TV set using Apple TV?
As we all know Apple is not very famous of following industry standards, for example in this case they don't support DLNA specification which would allow streaming content across different device vendors.
I'm using Fedora Linux on my home computer, and it comes with DLNA compatible sharing built-in. To enable it go to Settings > Sharing > Media Sharing > Add a folder containing some media files.
As Apple TV doesn't have any DLNA compatible applications, and on the devices before 4th generation you can't even install any apps you'll need to work around the problem some way. On 4th gen Apple TV you can install VLC which will fix the problem.
For older Apple TV's you'll need to use your phone as a remote control and trick the Apple TV to start streaming. Magically it actually does support streaming this way... You can install AllConnect app for Android or IOS from http://allconnectapp.com/.
AllConnect is able to browse your shared DLNA library from your Linux computer, and it can use Apple TV as a target device. After you start a media streaming, your phone is not involved in the streaming in any way, it goes directly from your computer to your Apple TV.
Dear Apple, why to make things this complicated? Oh right, to promote iTunes Store. Standards? Who needs them...