XBMC Community Forum
[RELEASE] CrystalHD Linux distributions for Apple TV with UI installer (Win, Linux) - Printable Version

+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Help and Support (/forumdisplay.php?fid=33)
+--- Forum: XBMC General Help and Support (/forumdisplay.php?fid=111)
+---- Forum: Linux and Live support (/forumdisplay.php?fid=52)
+---- Thread: [RELEASE] CrystalHD Linux distributions for Apple TV with UI installer (Win, Linux) (/showthread.php?tid=97949)



- AngryUndead - 2011-04-20 02:55

Code:
Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          39          19+  ee  EFI GPT
/dev/sda2              40       69671       34816   af  Unknown
/dev/sda3           69672     1118247      524288   82  Linux swap / Solaris
/dev/sda4   *     1118248     7550936     3216344+  83  Linux

atv@media1:~$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3              36G  2.2G   32G   7% /
varrun                122M   52K  122M   1% /var/run
varlock               122M     0  122M   0% /var/lock
udev                  122M   40K  122M   1% /dev
devshm                122M     0  122M   0% /dev/shm

Hey I'm confused about some things. Why is /dev/sda3 the root filesystem but marked as swap in the partition table? Just curious about what's going on there.

I've also got another question. Will the install script work on a smaller drive? I was thinking of replacing the stock drive with a CF drive (266x - 600x) because I keep all of my media on a 6TB NAS. I'm just trying to figure out what I'm going to have to do to make this work without losing my settings.

As soon as I get the advancedsettings bit worked out I'll switch to using a remote mysql metadata database.

Thanks.


- Sam.Nazarko - 2011-04-20 03:46

nchall Wrote:Sam,

Can this image be used for an Apple TV 1 that doesn't have a CrystalHD? Just as an easy way to install Linux?

Thanks.

Use atv-linux (see Google Code). It is the project I worked on, gives you a beautiful Ubuntu Minimal install of ~400MB and then you can install a desktop with sudo apt-get install ubuntu-desktop. This will give you a system without XBMC/CrystalHD

Philmatic Wrote:No, what he means is that some of us only have a USB drive installed on our ATVs, we don't have the internal HD installed at all (For whatever reason), so using your installer, we'd select "Pen Drive installation" then we'd have to modify our com.apple.boot.plist to drop down a letter to support that configuration.

Would it be possible to add a third option for the image builder that would allow for booting off of a USB drive where there is NO OTHER hard drive available (Basically it should look identical to your usual thumbdrive image, except the com.apple.boot.plist would point to the thumbdrive and not the internal drive).

Firstly. I read it wrong. But the answer is still the same. He needs to replace that plist and fstab file with the ones on the remote server as the only device is /dev/sda. No, it can't be implemented in the Windows installer because not many seem to want it and it would require me to write a driver for EXT3 and HFS+ (challenging c++), or prepare a separate image (more feasible) which would only confuse users more. This would have to be done because despite you saying that com.apple.boot.Plist would have to be replaced, and you are correct, I would also have to replace /etc/fstab, which either requires a new image or very sophisticated filesystem manipulation that is unachievable through open source tools. That said, I'd be glad to assist people in achieving their aTV setup.

calev Wrote:Thats what i did. You can install the desktop environment afterwords with one command. I then installed fluxbox since gnome runs a little slow.It makes it easier to copy movies and stuff over. It works really good. The only problem ive had is trying to get the wireless card to work with ndswrapper. I can see my networks and connect but no internet.

Use atv-linux, ndiswrapper works with wifi card on this version.

AngryUndead Wrote:
Code:
Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          39          19+  ee  EFI GPT
/dev/sda2              40       69671       34816   af  Unknown
/dev/sda3           69672     1118247      524288   82  Linux swap / Solaris
/dev/sda4   *     1118248     7550936     3216344+  83  Linux

atv@media1:~$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3              36G  2.2G   32G   7% /
varrun                122M   52K  122M   1% /var/run
varlock               122M     0  122M   0% /var/lock
udev                  122M   40K  122M   1% /dev
devshm                122M     0  122M   0% /dev/shm

Hey I'm confused about some things. Why is /dev/sda3 the root filesystem but marked as swap in the partition table? Just curious about what's going on there.

I've also got another question. Will the install script work on a smaller drive? I was thinking of replacing the stock drive with a CF drive (266x - 600x) because I keep all of my media on a 6TB NAS. I'm just trying to figure out what I'm going to have to do to make this work without losing my settings.

As soon as I get the advancedsettings bit worked out I'll switch to using a remote mysql metadata database.

Thanks.

Firstly, yes it will work on any size drive and give you drivesize - 1.5GB of space to use. You could edit script to make this -1s to give you 99% capacity instead, but the 1.5GB is reserve for system reasons. However, I know someone having tremendous difficulty configuring the system with a CF drive. He has tried several CF2IDE adapters and I have personally pursued the matter remotely via SSH, verifying his partition tables and their contents with md5 hashes, and yet he has had no success in booting unless kexecing from a remote OS or device, so I'd advise against it.

I don't know what output is giving you that information saying /dev/sda4 is ext3. But it is wrong. /dev/sda3 is ext3, the swap partition being the second partition. I presume you ran this on a Mac? The reason you are getting this error is because the first 40sectors of the disk (normally omitted), is being treated as an EFI GPT partition #1, which means all further partitions become incremented by one. It is irrelevant though. Because the Recovery partition is still the first 'real' partition, swap the second and ext3 Linux the third. Apple computers parse this differently, but trust me, Linux root file system is on /dev/sdX3 and swap is on sdx2. If this was wrong then fstab would be wrong and your system would not be functioning.


- AngryUndead - 2011-04-20 03:49

Sam.Nazarko Wrote:I don't know what output is giving you that information saying /dev/sda4 is ext3. But it is wrong. /dev/sda3 is ext3, the swap partition being the second partition. I presume you ran this on a Mac? The reason you are getting this error is because the first 40sectors of the disk (normally omitted), is being treated as an EFI GPT partition #1, which means all further partitions become incremented by one. It is irrelevant though. Because the Recovery partition is still the first 'real' partition, swap the second and ext3 Linux the third. Apple computers parse this differently, but trust me, Linux root file system is on /dev/sdX3 and swap is on sdx2. If this was wrong then fstab would be wrong and your system would not be functioning.

I just ran that on the atv itself, with putty.

"fdisk -lu" and "df -h". That's it.

Good point about the CF disk though. I'm not willing to fight with it. I just wish it was SATA so I could put a small SSD in there.


- Sam.Nazarko - 2011-04-20 04:27

fdisk does not provide reliable output for GPT. It even tells you that itself and says use gnu parted instead,


1080P over Component Video - unmesh - 2011-04-20 05:54

I've been running OSX on my ATV1 for a while.

I took the plunge today and began running XBMC Live from a USB stick because of its reputation of handling 1080P content, starting with an xorg.conf modified to run HD720P over Component. When everything was running fine, I re-edited xorg.conf to use HD1080P and only get a blank screen.

Does 1080P only run over HDMI?

Also, and this is a stupid Linux question, is there a faster way to test xorg.conf changes than a full reboot of the ATV?

Thanks.


- Sam.Nazarko - 2011-04-20 06:06

Good on taking the plunge. You won't regret it. Besides running it off a USB means you can go back any time. Component should allow 1080p just fine. To test xorg.conf changes, close XBMC with the exit option and then run "sudo xinit /usr/bin/xbmc --standalone" after making your xorg.conf changes.

Hope this helps


- unmesh - 2011-04-20 06:26

Sam.Nazarko Wrote:Good on taking the plunge. You won't regret it. Besides running it off a USB means you can go back any time. Component should allow 1080p just fine. To test xorg.conf changes, close XBMC with the exit option and then run "sudo xinit /usr/bin/xbmc --standalone" after making your xorg.conf changes.

Hope this helps

My LCD is a LG 47LG70 and displays 1080P material from my BluRay or Cable box fine.

I modified the ATV xorg.conf Screen section as follows:

Code:
Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    Option         "UseDisplayDevice" "TV"
    Option         "TVOutFormat" "COMPONENT"
    Option         "TVStandard" "HD1080p"
    Option         "TVOverScan" "0.99"
    DefaultDepth    24
    Option         "NoLogo" "True"
    SubSection     "Display"
        Modes      "1920x1080" "1280x720" "1024x768" "720x480" "800x600" "640x4$
        Depth       24
    EndSubSection
EndSection

TVStandard of HD720P works but HD1080P does not.

Is there a log I can look at to further debug the problem?

Thanks.


- unmesh - 2011-04-20 06:46

I found the log file and the system definitely looks unhappy with the settings:

The resolution of 800x600 is not supported by the TV, hence the blank screen. At HD720P, 1280x720 shows up as a validated mode, here it does not.

Code:
(II) Setting vga for screen 0.
(**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
(==) NVIDIA(0): RGB weight 888
(==) NVIDIA(0): Default visual is TrueColor
(==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
(**) NVIDIA(0): Option "NoLogo" "True"
(**) NVIDIA(0): Option "TVStandard" "HD1080p"
(**) NVIDIA(0): Option "TVOutFormat" "COMPONENT"
(**) NVIDIA(0): Option "TVOverScan" "0.99"
(**) NVIDIA(0): Option "RegistryDwords" "RMDisableRenderToSysmem=1"
(**) NVIDIA(0): Option "UseDisplayDevice" "TV"
(**) NVIDIA(0): Option "DynamicTwinView" "false"
(**) NVIDIA(0): Enabling RENDER acceleration
(**) NVIDIA(0): Forcing COMPONENT output
(**) NVIDIA(0): TV Standard string: "HD1080p"
(II) NVIDIA(0): NVIDIA GPU GeForce Go 7300 (G72) at PCI:1:0:0 (GPU-0)
(--) NVIDIA(0): Memory: 65536 kBytes
(--) NVIDIA(0): VideoBIOS: 05.72.22.68.00
(II) NVIDIA(0): Detected PCI Express Link width: 2X
(--) NVIDIA(0): Interlaced video modes are supported on this GPU
(--) NVIDIA(0): Connected display device(s) on GeForce Go 7300 at PCI:1:0:0:
(--) NVIDIA(0):     NVIDIA TV Encoder (TV-0)
(--) NVIDIA(0): NVIDIA TV Encoder (TV-0): 400.0 MHz maximum pixel clock
(--) NVIDIA(0): TV encoder: NVIDIA
(II) NVIDIA(0): Option "UseDisplayDevice" "TV" converted to "TV-0".
(II) NVIDIA(0): Assigned Display Device: TV-0
(WW) NVIDIA(0): No valid modes for "1920x1080"; removing.
(WW) NVIDIA(0): No valid modes for "1280x720"; removing.
(WW) NVIDIA(0): No valid modes for "1024x768"; removing.
(WW) NVIDIA(0): No valid modes for "720x480"; removing.
(WW) NVIDIA(0): No valid modes for "800x600"; removing.
(WW) NVIDIA(0): No valid modes for "640x480"; removing.
(WW) NVIDIA(0):
(WW) NVIDIA(0): Unable to validate any modes; falling back to the default mode
(WW) NVIDIA(0):     "nvidia-auto-select".
(WW) NVIDIA(0):
(II) NVIDIA(0): Validated modes:
(II) NVIDIA(0):     "nvidia-auto-select"
(II) NVIDIA(0): Virtual screen size determined to be 800 x 600



- unmesh - 2011-04-20 07:48

I've been playing with various xorg.conf settings and it looks from the log that HD1080i is supported by the driver but not HD1080p


- AngryUndead - 2011-04-20 17:58

Sam.Nazarko Wrote:fdisk does not provide reliable output for GPT. It even tells you that itself and says use gnu parted instead,

Thanks.