Apple TV Binaries
There are missing some important binaries on Apple TV, if you want to work on the commandline using SSH. I have compiled some binaries from source on an Intel Mac, which work on Apple TV.
- 1 Download precompiled binaries
- 2 Compile your own binaries
- 3 Install Binaries on Apple TV
Download precompiled binaries
Note: There are no manpages installed on Apple TV, but you can find them online, e.g. from Apple: http://developer.apple.com/DOCUMENTATION/Darwin/Reference/ManPages/index.html
Compile your own binaries
If you don't trust other people or you need different binaries, you can also compile binaries by yourself. If you have an Intel Mac this is quite simple - as long it's not very complex software which needs libraries...
An example how I created the gzip and gunzip binaries:
To compile binaries, you must have the Apple IDE xcode installed: http://developer.apple.com/tools/download/
Download the Source
Go to http://www.gzip.org/#sources and download the latest version of the gzip source code (e.g. gzip-1.2.4.tar.gz).
Extract the Files from Archive
How this works depends on the file type. In case it's .tar.gz:
tar -xzf gzip-1.2.4.tar.gz
Now you have to run the configure script. Since you don't want to install the created files on your Mac, i'd recommend using the --prefix switch, to install the files somewhere else:
cd gzip-1.2.4 ./configure --prefix=$HOME/apple_tv_files
Now start compiling:
Now install the binaries to the directory specified by --prefix:
After that, the binary should be in $HOME/apple_tv_files/bin. In this case, you will wind gzip as well as gunzip.
Test if it works
E.g. try to display the --help output:
If it works, copy the file to your Apple TV and try if it works there too. If you have more complex applications which need some libraries, this will not work that easy, but for the simple tools mentioned above it worked fine.
Note: For zip and unzip this worked a little bit different:
unzip zip232.zip cd zip232\ Folder make -f unix/Makefile generic ./zip --help #that's the created file
Install Binaries on Apple TV
The easiest way is probably simply copying the binaries to /usr/bin or /sbin on Apple TV. But if you want to have your binaries seperated from binaries shipped with Apple TV, you can do it this way:
Create bin Directory in $HOME
Create a bin directory in a hidden directory (.atv) in $HOME:
mkdir -p /Users/frontrow/.atv/bin
Add Directory to $PATH
If the binaries should be executed without using the complete path, you have to add your directory to $PATH.
echo "export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/Users/frontrow/.atv/bin" >> /Users/frontrow/.bash_profile
Note: To make this work you have to log in again.
Copy files to your bin directory
To copy the gzip file from a Mac/PC
scp gzip frontrow@[IP-Address]:/Users/frontrow/.atc/bin
After that you can use gzip from the commandline on Apple TV.
PS: if you wonder about the sf.net page, I'll write something about that in the forum soon.