Apple TV 1st generation. Жизнь после двойной смерти

Пост для тех, у кого до сих пор в подвале валяется такая приставка и вы не знали что с ней можно сделать. Спойлер: бегает на Debian 11.

Первое поколение Apple TV
Первое поколение Apple TV

Привет VC! Перед чтением этого поста, настоятельно рекомендую сначала ознакомится с полноценной статьей, ибо всё ниже написанное относится к ней напрямую.

Задачи

В виду нЕдАвНиХ событий с уходом или «приостановкой деятельности» многих компаний, в том числе Microsoft, где у меня целых 5ТБ недавно купленного места в облаке частично забито семейным медиаархивом, я решил перестраховаться и поискать варианты того, как организовать дома сервер на линухе, который автоматически будет синхронизироваться с этим самым облаком.

Таким образом в случае очередных блокировок, я спокойно смогу просматривать локальные копии. Но будем надеяться, что с OneDrive этого не произойдет.

Также держу небольшую группу вк, где посты публикуются ботами, написанными на питоне. Основным сервером для них был мак, но ввиду постоянного тоскания его с собой, далеко не всегда было время их включать. Это тоже можно было бы спихнуть на сервер.

Почему Apple TV

Да, можно было бы взять самый обычный древний системник за 0 рублей и этим решить задачу. Но для меня критично занимаемое место и бесшумность. Raspberry Pi даже без навесов довольно дорогое решение. Люблю стильные железки, потому посмотрел в сторону эппла.

Так вот, в этой роли я планировал взять старый Mac Mini (2007-2009), но прошерстив вторичный рынок, осознал что цены также неадекватно высоки, вспомнил про видос от Computer Clan, где как раз практиковалась возможность накатить настоящую ОС на приставку Apple TV 1-го поколения, за счет чипсета на Intel. Такой финт ушами очень тяжелее сделать на 2-м и далее поколении.

Свою приставку нашел по цене в 3 раза меньшей, чем за самый старый Mac Mini, что навело на мысль о покупке и дальнейшей прошивке под свои нужды. Если что, в 2022-м ее родной софт бесполезен чуть меньше чем полностью.

Первая смерть от эппла.
Первая смерть от эппла.

Здесь в игру вступила та самая статья. Обрадовавшись, что ее можно прошить системой от OSMC, я не посмотрел, что поддержка этой приставки закончилась аж в 2017-м.

Вторая смерть от OSMC.
Вторая смерть от OSMC.

Дело в том, что за основу системы был взят Debian 8, релиз от 2015 года, что вынуждало в большинстве случаев ставить либо устаревшие пакеты, либо вообще качать исходники и компилировать самому. Например, так было с rclone — консольной утилитой, через которую можно подключить кучу облаков, в том числе OneDrive. Причем rclone был не самой свежей версии, и когда он перестал бы работать — неизвестно. Питон 3.9 ни в какую не хотел вставать с работающим ssl модулем, а без него скрипта не запустишь. И вот, после недельного курения всевозможных форумов, удалось сделать обдейт.

Обдейт

Предупреждение: после обновления перестанут работать иксы, ибо версии драйвера Nvidia не будут совпадать. Убедитесь что ssh настроен и адекватно работает и к нему можно подключится, ибо всё дальнейшее управление сервером будет через него.

Сначала отключаем сервис osmc и обновляемся. Во время обновления будет сообщение о проблеме с видеодрайвером, жмем ОК.

sudo systemctl disable mediacenter && sudo apt update && sudo apt upgrade && sudo apt-get dist-upgrade

Далее идём в «/etc/apt/sources. list», добавляем строки ниже и сохраняем

deb http://ftp.debian.org/debian stretch main contrib non-free deb http://security.debian.org/ stretch/updates main contrib non-free

И снова обновляем, это будет Debian 9

sudo apt update && sudo apt upgrade && sudo apt-get dist-upgrade

Опять открываем «/etc/apt/sources. list», добавляем строки ниже и сохраняем

deb http://httpredir.debian.org/debian buster main deb http://httpredir.debian.org/debian buster-updates main deb http://security.debian.org buster/updates main

Обновляемся. Во время обновления могут быть предупреждения, везде жмем ОК. Теперь на борту будет Debian 10.

sudo apt update && sudo apt upgrade && sudo apt-get dist-upgrade

И крайний раз добавляем в "/etc/apt/sources. list" эти строки

deb http://mirror.yandex.ru/debian bullseye main deb-src http://mirror.yandex.ru/debian bullseye main deb http://mirror.yandex.ru/debian bullseye-updates main deb-src http://mirror.yandex.ru/debian bullseye-updates main deb http://security.debian.org/ bullseye-security main deb-src http://security.debian.org/ bullseye-security main

Обновляемся в Debian 11. Здесь может начать выеживаться пакет atv-device-osmc и требовать одну из зависимостей. Это решается удалением упоминания этой зависимости в файле "/var/lib/dpkg/status".

Открываем его в текстовом редакторе и ищем строку «Package: atv-device-osmc», напротив нее ищем имя пакета который не дает обновится и убираем его название, сохраняемся. После этого еще раз пробуем обновится — все сработает.

sudo apt update && sudo apt upgrade && sudo apt-get dist-upgrade

Теперь чтобы убедится в том, что у нас стоит 11-й, установим lsb. (альтернативно, можно установить neofetch)

sudo apt install lsb

И проверим релиз. Теперь Вы можете юзать современный софт.

osmc@AppleTV:~$ lsb_release -d Description: Debian GNU/Linux 11 (bullseye) osmc@AppleTV:~$

30.02.2022. Обновился через sudo apt dist-upgrade до 11.3 — Начал временами отваливаться ssh, что с одной стороны как бэ ладно, учитывая что в остальном все работает как надо, но сам факт того что не могу получить когда хочу доступ очень раздражает. Буду сносить систему и устанавливать заново. ОБНОВЛЯТЬСЯ ДО 11.3 НЕ РЕКОМЕНДУЮ

Итоги

В моем случае rclone и скрипты для питона завелись моментально, я добавил их автозапуск в cron и теперь следующие пару лет можно не переживать об утере личной инфы. А Вы можете по факту ставить почти любой совместимый с debian софт и решать свои задачи)

P. S.

Я написал этот мини-туториал потому, что ни в каких источниках нет информации о совместимости AppleTV 1 с Debian 11. Надеюсь здесь все достаточно понятно.

По мере обновления системы буду обновлять и эту статью.

3535
19 комментариев

Какой кейс использования у вас, не совсем понял? rclone выступает у вас виде тени? В случае с хранилищем почему не Nextcloud (в нем так же можно аттачи облачных хранилищ делать)? И как вы решили вопрос с подключением за NAT

Я не придираюсь, просто из любопытства)

5

Понимаю) Я просто не вижу смысла брать дорогое оборудование для того, чтобы сервер сам скачивал видео/фотки с облака к себе. rclone я выбрал потому, что в случае необходимости могу таким же макаром подключить Google Drive/Яндекс Диск. К данной приставке подключен 1 HDD во внешнем кейсе, и теневое копирование я пока не настраивал. Думаю этим заняться когда возьму еще один HDD

Совсем забыл ответить про NAT. Здесь я тоже не заморачивался — при каждом ребуте устройству выдается локальный ip от 1-10, ибо дома устройств не много. При каждой ssh сессии щупаю адрес. Но после всех настроек необходимость лезть в консоль отпадает, и по факту можно туда годами не заходить

Комментарий недоступен

2

оооо, я очень хорошо представлю себе как это всё "работает" )) Уверяю вас, вы со своим набором костылей в виде смарт тв и роутером в качестве сервера и рядом не можете реализовать то, что можно сделать с помощью OSMC, это вот вы сделали шажок выше того самого форка, а то что описывает автор это еще один вверх, примерно так.

1

Как я писал, железо мне обошлось в мизерные копейки, так что ни о какой дороговизне речи не идет. Встроенный софт безбожно устарел, и его нереально использовать в тех задачах, которые я поставил, потому без прошивки это просто декоративная вещь) Кстати у меня тоже не было приставок, до этого момента

1