Automatically installing plug-ins from the directory

ATV_Loader is a plug-in that accesses this directory and installs/updates plug-ins online.
This is probably the easiest method of getting/updating plug-ins. So you need to install one plug-in manually only, namely ATV Loader, which will in turn allow you to install all the other plug-ins from a GUI.

Uninstalling Plug-ins

By SSH you can:

cd /System/Library/CoreServices/Finder.app/Contents/PlugIns

then
remove the PLUGIN.frappliance directory of the plug-in you want to remove
then just reboot

sudo reboot

Ideas for Plug-ins

(Please comment if you are working on one of these)

Without fully knowing what kind of capabilities are possible, here are some suggested plugins. Someone with some more development knowledge can perhaps update this section letting us know what capabilities we have here (can we run any objective-c code? Can we display anything, or are we limited to the list view?) Can we enable dashboard over the ATVs default finder app? that would take care of many of these small plugins.

FYI #1: When adding plug-in ideas please keep in mind that a plug-in (aka appliance) is for the most part it's own UNIQUE entity. What does that mean? In short once a specific .appliance has been selected/chosen from the AppleTV main menu, that process/program/plugin/appliance is in charge. In other-words only ONE SINGLE 'appliance' can be in operation at any one time. It is however QUITE possible for a appliance author to write an appliance that will in turn launch any number of other OS X (command line **AND/OR** GUI) applications.

FYI #2: Plugins requests that deal with things that 'pop stuff up' over the top of something that is already playing movie, music, photo slideshow, etc... A plug-in (appliance) can not modify or add functionality to an existing plug-in. For example an oft requested plug-in is a 'CALLER-ID' plug-in. This simply can NOT EXIST (not in the form of a plug-in anyway) - remember if someone did write a growl (or caller-id) plugin then once you 'enter it' it would also have to have the ability to play movies, music, photo slideshows etc because you couldn't use the Apple supplied ones (not without exiting out from the CALLER-ID plug-in first).

FYI #3: Doesn't the AppleTV have a screen saver that pops up over the top of ANY plug-in no matter what plug-in is running? Yes as a matter of fact it does BUT the screen-saver is NOT a appliance/plug-in its some other form of addon. It's not know (to this author) if the way screen-savers work would be a way to implement things like CALLER-ID type functionality.

Audio & Video Support: (local)

Music Visualizer - Can someone get R4 on here? I am tired of looking at nothing while music plays. Wouldn't be that hard if you can get the OS installed? Maybe front row will be re-released with visualizer.

(Running actual Dashboard widgets would bring a huge number of existing 'apps'. Dashboard Widgets run in a WebKit view, so this seems like it should be pretty achievable.)

A lot of the functionality above (and a huge amount more) could be delivered by enabling existing Dashboard widgets. With the addition of a 'Dashboard' menu item, the user could browse a list of installed widgets, clicking on one would show it centred on the screen.

Pressing << / >> could switch back and forth between installed widgets, rather than require the user to switch back to the Dashboard menu, every time.

This would add a huge amount of functionality, and provide a pretty slick UI in the process; 'most' Dashboard Widgets would look great on an LCD/Plasma around the size of the ATV menu graphics, on the same dark background (perhaps even with a reflection added, for final polish.)

FWIW I'd suggest that a Dashboard plugin would have tremendous pay-off, assuming there are not major complications.

Development

ApplianceTest

ericIII from the AwkwardTV crew has created a plug-in for the Apple TV that, like Sabertooth’s plugin, hooks into the main Apple TV GUI. However, this one plays videos, and sports a (for now, hardcoded) list of .AVI files that are not located in the Media Library.
ApplianceTest Source Code.