Bigme KIVI KidsTV

Raspberry Pi в домашней экосистеме: Возможности и примеры (часть 2)

В предыдущей статье цикла мы с вами разбирались с установкой на Raspberry Pi одновременно нескольких полезных сервисов: AdGuard Home, Time Machine и Homebridge с шестью различными плагинами. Но в случае с «малинкой» есть куда расти, ведь загрузка RPi4 со всеми запущенными сервисами выглядит примерно так:

А раз уж запас прочности у устройства позволяет не только использовать его в качестве сервисной платформы, давайте развлекаться!

Итак, сегодня мы ко всему прочему, что уже работает на нашей Raspberry Pi, добавим несколько приятных дополнений, которые призваны разнообразить наш досуг. Но, прежде чем превращать «малинку» в файловый сервер, медиацентр и, возможно, игровую консоль, давайте позаботимся о том, чтобы её принарядить.

Недавно мне попался на глаза корпус Argon ONE Case for Raspberry Pi 4 Model B и я немедленно его приобрел. Плюсы корпуса:

  • он сам — один сплошной охлаждающий модуль
  • в нем все равно есть программируемый вентилятор, срабатывающий в зависимости от заданной температуры CPU
  • все порты Raspberry Pi магически выводятся на одну заднюю панель, а не торчат во все стороны
  • родной индикатор Raspberry Pi так же магически оказывается в центре передней панели
  • дизайн корпуса спокойно вписывается в любую обстановку, как это делает Apple TV, например

В общем, это полный восторг. А новая модель Argon ONE M.2 Case for Raspberry Pi 4 Model B заменяет встроенные порты micro-HDMI на полноформатные HDMI, добавляет слот для накопителя M.2 SSD и инфракрасный приемник. Исключительно рекомендую!

Но вернемся к нашим задачам и начнем превращать Raspberry Pi в развлекательный центр. Поехали!

ОГЛАВЛЕНИЕ

Установка Transmission на Raspberry Pi

Поскольку у меня подключен внешний диск на 3 TB (туда складываются резервные копии Time Machine, помните?), мысль о скачивании файлов возникла сама собой. Я давно уже не пользуюсь торрентами, так как у меня активны подписки Apple Music, Apple TV+, Apple Arcade и Netflix, но я на этой планете живу не один, а кое-какие идеи насчет игровой ретро-консоли подсказывают, что торрент-клиент не будет лишним.

С него и начнем.

Нужно также принять во внимание, что если бы я устанавливал Transmission одновременно со всеми предыдущими сервисами, то конечно же сделал бы на внешнем HDD два раздела — под файлохранилище и под Time Machine. Разбивать диск на разделы сейчас, когда на нем уже куча резервных копий, не хочется, поэтому я пойду по пути наименьшего сопротивления: просто создам папку для скачиваемых файлов в уже существующем разделе, прямо рядом с резервными образами macOS.

Важно! Поскольку мы будем завязываться на пользователя pi, который является дефолтным для доступа ко всей системе и к нашим уже установленным сервисам, то для безопасности будем (опционально) использовать ограничение доступа к панели управления Transmission по IP-адресу. Для этого присвойте статичный локальный IP своему компьютеру, с которого проделываете все настройки и манипуляции с файлами на RPi по сети. Если забыли, как это делается — см. в предыдущей статье.

Шаг 1. Заходим на RPi по SSH

Если забыли, как это делается, все та же предыдущая статья в помощь.

Шаг 2. Подтягиваем в RPi все последние обновления ПО

sudo apt update
sudo apt upgrade

Шаг 3. Устанавливаем собственно сервис Transmission…

sudo apt install transmission-daemon

Шаг 4. …и тут же его останавливаем

sudo systemctl stop transmission-daemon

Шаг 5. Создаем папку для скачивания файлов

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

Мы помним, что в предыдущей статье точкой монтирования у нас была /mnt/tm, так что и папку Downloads создадим здесь же.

sudo mkdir -p /mnt/tm/Downloads

Шаг 6. Делаем пользователя pi владельцем

sudo chown -R pi:pi /mnt/tm/Downloads

Шаг 7. Редактируем файл конфигурации

Открываем файл настроек settings.json в редакторе nano командой:

sudo nano /etc/transmission-daemon/settings.json

Содержимое открывшегося файла будет выглядеть примерно так:

# Transmission-daemon configuration file #
{
"alt-speed-down": 50,
"alt-speed-enabled": false,
"alt-speed-time-begin": 540,
"alt-speed-time-day": 127,
"alt-speed-time-enabled": false,
"alt-speed-time-end": 1020,
"alt-speed-up": 50,
"bind-address-ipv4": "0.0.0.0",
"bind-address-ipv6": "::",
"blocklist-enabled": false,
"blocklist-url": "http://www.example.com/blocklist",
"cache-size-mb": 4,
"dht-enabled": true,
"download-dir": "/var/lib/transmission-daemon/downloads",
"download-limit": 100,
"download-limit-enabled": 0,
"download-queue-enabled": true,
"download-queue-size": 5,
"encryption": 1,
"idle-seeding-limit": 30,
"idle-seeding-limit-enabled": false,
"incomplete-dir": "/var/lib/transmission-daemon/Downloads",
"incomplete-dir-enabled": false,
"lpd-enabled": false,
"max-peers-global": 200,
"message-level": 1,
"peer-congestion-algorithm": "",
"peer-id-ttl-hours": 6,
"peer-limit-global": 200,
"peer-limit-per-torrent": 50,
"peer-port": 51413,
"peer-port-random-high": 65535,
"peer-port-random-low": 49152,
"peer-port-random-on-start": false,
"peer-socket-tos": "default",
"pex-enabled": true,
"port-forwarding-enabled": false,
"preallocation": 1,
"prefetch-enabled": true,
"queue-stalled-enabled": true,
"queue-stalled-minutes": 30,
"ratio-limit": 2,
"ratio-limit-enabled": false,
"rename-partial-files": true,
"rpc-authentication-required": true,
"rpc-bind-address": "0.0.0.0",
"rpc-enabled": true,
"rpc-host-whitelist": "",
"rpc-host-whitelist-enabled": true,
"rpc-password": "{51672671e9402abc55992da3ee7809f2c0662d10uLpcJwyX",
"rpc-port": 9091,
"rpc-url": "/transmission/",
"rpc-username": "transmission",
"rpc-whitelist": "127.0.0.1,192.168.1.40",
"rpc-whitelist-enabled": true,
"scrape-paused-torrents-enabled": true,
"script-torrent-done-enabled": false,
"script-torrent-done-filename": "",
"seed-queue-enabled": false,
"seed-queue-size": 10,
"speed-limit-down": 100,
"speed-limit-down-enabled": false,
"speed-limit-up": 100,
"speed-limit-up-enabled": false,
"start-added-torrents": true,
"trash-original-torrent-files": false,
"umask": 18,
"upload-limit": 100,
"upload-limit-enabled": 0,
"upload-slots-per-torrent": 14,
"utp-enabled": true
}

Делаем содержимое следующих строк таким, ищем сверху вниз по порядку:

  • "download-dir": "/mnt/tm/Downloads", — указываем дефолтную папку для загрузок;
  • "rpc-password": "your RPi password here", — устанавливаем пароль от пользователя pi (мы его для входа по SSH используем, помните?);
  • "rpc-username": "pi", — указываем собственно пользователя pi;
  • "rpc-whitelist": "127.0.0.1,192.168.50.20", — белый список для доступа к панели управления, где вместо 192.168.50.20 указываем локальный IP-адрес устройства, с которого проводится настройка (см. пункт Важно! выше по тексту).

Если заморачиваться со входами по локальным IP не хочется (все же мы тут не Пентагон взламываем, а играемся), то "rpc-whitelist-enabled": "false", вместо предыдущей строки закрывают этот вопрос.

Сохраняем результат Ctrl+O, Enter, Ctrl+X.

Шаг 8. Меняем пользователя для Transmission Daemon

sudo nano /etc/init.d/transmission-daemon

В открывшемся окне редактора ищем строку USER=debian-transmissionи меняем её на USER=pi. Не забываем сохранить результат редактирования все теми же сочетаниями клавиш Ctrl+O, Enter, Ctrl+X.

Шаг 9. Повторяем шаг 8 для файла сервиса.

Вводим команду…

sudo nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service

…и в открывшемся файле тоже указываем user=pi

Сохраняем результат Ctrl+O, Enter, Ctrl+X.

Шаг 10. Перезагружаем все сервисы

Чтобы подхватились все внесенные нами изменения, вводим

sudo systemctl daemon-reload

Шаг 11. Делаем пользователя pi владельцем /etc/transmission-daemon

sudo chown -R pi:pi /etc/transmission-daemon

Шаг 12. Создаем директорию для доступа transmission-daemon к файлу config.json

sudo mkdir -p /home/pi/.config/transmission-daemon/
sudo ln -s /etc/transmission-daemon/settings.json /home/pi/.config/transmission-daemon/
sudo chown -R pi:pi /home/pi/.config/transmission-daemon/

Шаг 13. Запускаем сервис

sudo systemctl start transmission-daemon

Фух, готово! Мы справились!

Как пользоваться Transmission на Raspberry Pi

Всё в той же предыдущей статье мы раз и навсегда присваивали Raspberry Pi статичный IP в локальной сети. В моем случае это был 192.168.50.10, в вашем — любой другой в рамках настроек вашего роутера.

Для доступа к интерфейсу только что установленного Transmission мы будем использовать этот IP с портом 9091. В адресной строке браузера вводим http://<ip address of your server>:9091 где вместо <ip address of your server> все тот же IP из нашей предыдущей инструкции, в моем случае .

Пользователь: pi, пароль: ваш пароль, все как указывали в файле настроек. Если всё сделано правильно, картина будет такой:

Добавляем в список на скачивание сам торрент-файл:

И наблюдаем за процессом. Или не наблюдаем, Transmission справится и без нас.

Добавляем немного комфорта (опционально)

Если нам нужна возможность не только иметь доступ к скачанным файлам (то есть возможность увидеть их и скопировать к себе на компьютер), но и свободно добавлять, изменять или удалять файлы в папке Downloads по сети с компьютеров любого локального пользователя, нужно выполнить такие команды:

cd /mnt/tm
sudo chmod a=rwx -R Downloads

Где a — это «все», rwx — «могут читать, записывать и исполнять файлы», -R — «рекурсивно» (то есть на любую глубину вложения) в папке Downloads, расположенной по пути /mnt/tm. Полная свобода.

Теперь удалять и изменять скачанные файлы можно не только через веб-интерфейс самого Transmission, но и просто по сети, в Finder или любом другом файловом менеджере.

Читайте также:

Установка PLEX Media Server на Raspberry Pi

PLEX — это очень мощный каталогизатор и медиасервер, когда-то отпочковавшийся от проекта XBMC, но развившийся намного лучше, интереснее и в данный момент семимильными шагами движущийся в том же направлении, что и Netflix с Amazon Prime Video — то есть, в сторону международного стримингового сервиса. Сегодня в каталоге PLEX больше 130 телеканалов и 20000 классических фильмов от студий Warner Brothers, Crackle, Lionsgate, MGM и прочих.

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

Для начала необходимо зарегистрировать учетную запись на сайте plex.tv. Это позволит синхронизировать настройки сервера и клиентских приложений, организовывать передачу за пределы домашней сети, и так далее. Нужный и полезный шаг. После этого займемся установкой.

Серверную часть можно установить на вот такие программные и аппаратные платформы:

Наш выбор — Linux, но скачивать мы ничего не будем, а привычно отправимся в командную строку. Логинимся по SSH и, для начала, обновляем систему:

sudo apt update
sudo apt upgrade

И дальше собственно установка PLEX Media Server:

Шаг 1. Добавляем в менеджер пакетов Raspbian поддержку протокола https

sudo apt install apt-transport-https

Шаг 2. Скачиваем ключ репозитория Plex…

wget https://downloads.plex.tv/plex-keys/PlexSign.key

Шаг 3. …и добавляем его в систему

sudo apt-key add PlexSign.key

Шаг 4. Знакомим Raspbian с репозиторием PLEX

echo deb https://www.plex.tv/media-server-downloads/ public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list

Шаг 5. Обновляем данные (знакомая команда, не правда ли?)

sudo apt update

Шаг 6. Устанавливаем PLEX Media Server

sudo apt install plexmediaserver

Шаг 7. Заботимся о возможности обновления

Чтобы сделать обновление PLEX частью системных обновлений, нужно вбить всего две команды:

echo deb https://www.plex.tv/media-server-downloads/ public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list

и

curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -

Это всё. В дальнейшем привычные команды обновления системы будут заодно обновлять и сам PLEX.

sudo apt update
sudo apt upgrade

Готово! Можно приступать к первичной настройке.

Настройка PLEX Media Server

Помните пункт «Добавляем немного комфорта» выше по тексту? Вот тем крохотным шажком для одной Raspberry мы сэкономили кучу времени для всего человечества. Вместо того, чтобы одними консольными командами создавать папки для контента и другими консольными командами назначать им права доступа, мы просто зайдем по сети в папку Downloads и привычным способом создадим там папки Movies, Music, TV Shows и Other Videos.

Учитывая, что системный пользователь pi наделен правами владельца всего содержимого папки Downloads, у PLEX Media Server не будет никаких проблем с обработкой коллекции фильмов, музыки, сериалов и домашнего видео.

Для доступа в панель управления в бразуере переходим по ссылке http://<ip address of your server>:32400/web/index.html, что в моем случае, как мы все помним, означает , а в вашем — что-то своё.

Здесь нас встречает интерфейс с огромным количеством настроек, которое может испугать неподготовленного пользователя. Поэтому вкратце пройдемся по основным.

Для начала в верхнем правом углу найдем пиктограмму, отвечающую за учетную запись и залогинимся. С этого момента настройки сервера будут доступны как в локальной сети, так и через учетную запись прямо на сайте PLEX. Ну и сразу же переходим в настройки, нажав на пиктограмму с инструментами.

На что нужно обратить внимание:

  1. На вкладке Remote Access убедитесь, что ваш сервер виден снаружи вашей сети. Порт по умолчанию 32400, и если вы не видите надписи Fully accessible outside your network, его прийдется открыть в настройках роутера.
  2. На вкладке Library имеет смысл отметить автоматическое сканирование медиатеки при каждом изменении, чтобы обложки и метатеги от удаленных файлов не забивали интерфейс мертвыми ссылками.
  3. На вкладке Libraries укажите пути к папкам Movies, TV Shows, Music и Other Videos, которые мы создали чуть раньше на внешнем диске в папке Downloads. Здесь нужно внимательно выбирать тип библиотеки, чтобы встроенные средства сканирования обращались к правильным серверам при поиске обложек, кадров или трек-листов.

На этом, в общем-то, всё. Остальные настройки, вроде параметров транскодинга или включения DLNA-сервера — исключительно в вашем ведении, в зависимости от поставленных задач, клиентских устройств и так далее.

Могу заметить, что на дефолтных настройках моя Raspberry Pi 4 воспроизвела 4K HDR-10 BD-Remux размером 92 ГБ даже не поперхнувшись. В качестве клиента выступала Apple TV 4K с установленным приложением PLEX, подключенная по HDMI. Обложку, кадры, информацию о фильме и так далее PLEX Media Server добавил в полностью автоматическом режиме.

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

Ссылку на скачивание нужного вам приложения можно найти на странице Устройства и Приложения официального сайта сервиса.

Приятного просмотра!

К большому сожалению, сервис ретро-игр PLEX Arcade невозможно запустить, если серверная часть установлена на Raspberry Pi и вообще любой Linux-сервер. Поэтому сейчас мы будем превращать нашу «малинку» в ретро-консоль.

Выбор игровой платформы для Raspberry Pi

Для того, чтобы играть на Raspberry Pi в ретро-игры с самых разнообразных платформ, начиная с ZX Spectrum и заканчивая PlayStation One, разработано 4 продукта: RetroPie, Recalbox, Lakka и Batocera.

Все они чем-то похожи, но есть и довольно важные различия. Начнем с того, о чем упоминалось в самом начале первой статьи цикла: все производители ПО для Raspberry предпочитают выпускать его в виде образов операционной системы. То есть скачали образ, записали на карточку microSD, вставили в слот — и вот вам готовый к работе микрокомпьютер с единственной функцией.

Если так делать, количество Raspberry Pi в доме превысит любые разумные пределы. Именно поэтому в данных статьях рассматривается установка любого сервиса в качестве приложения, а не ОС. Так вот, если подходить к вопросу создания игровой консоли из Raspberry Pi, единственным выбором будет RetroPie. Только у этого продукта предусмотрена установка в качестве приложения для Raspbian, а не только в виде самостоятельной ОС.

Установка ретро-консоли внутрь Raspbian

Я протестировал эту возможность и должен сказать, что затраченные усилия не стоили того. Если игры для 8-битных приставок, вроде NES (известной в бывшем СССР под названием «Dendy») можно с натяжкой считать играбельными, то когда речь идет об эмуляции PlayStation, все становится совсем плохо.

Поэтому пришлось смириться и принять тот факт, что игровая эмуляция может быть качественной только в случае использования отдельной Respberry Pi в качестве игровой приставки.

Далее я столкнулся с вопросами хранения и запуска игр с внешних USB HDD, поддержки геймпадов различных производителей, простоты интерфейса и удобства настроек. RetroPie, Recalbox, и Batocera в качестве движка используют EmulationStation, тогда как Lakka стоит особняком и использует RetroArch с интерфейсом, максимально похожим на XMB в PlayStation 3.

Что касается возможности хранения и запуска игр с внешних носителей, то Batocera здесь несколько проигрывает: здесь хоть и предусмотрена такая возможность, но только с определенной структурой папок в корне внешнего диска, что не всегда комфортно.

Что касается поддерживаемых платформ, то здесь Lakka несколько уступает конкурентам, зато с лихвой восполняет это невероятной производительностью и удобством «из коробки». Геймпады от PlayStation 4 распознаются молниеносно, не требуя дополнительных действий и первичного подключения к Raspberry Pi кабелем.

В итоге, протестировав все 4 игровых продукта 5 раз (RetroPie по описанным выше причинам тестировался дважды), я остановил свой выбор на наиболее технологичном проекте — Lakka. Его мы сейчас и будем устанавливать.

Установка Lakka на Raspberry Pi

Шаг 1. Скачиваем приложение balenaEtcher

С его помощью мы отформатируем карточку microSD и запишем на нее образ Lakka OS. Приложение существует в вариантах для Windows, Linux или macOS и доступно по ссылке.

Шаг 2. Скачиваем образ Lakka с официального сайта

Важно! Владельцам Raspberry Pi 4 с 8 ГБ оперативной памяти нужно скачать так называемый nightly build — сборку, адаптированную под новые модели «малинки».

Для этого перейдите по ссылке, прокрутите страницу в самый низ и найдите каталог с самой свежей датой. Внутри каталога найдите подкаталог RPi4.arm, а в нем файл с расширением .img.gz. Это и есть образ, который мы запишем на карточку microSD.

Если у вас любая другая версия Raspberry Pi, выберите свою модель из списка на этой странице.

Шаг 3. Записываем образ Lakka на microSD

Запускаем balenaEtcher, выбираем образ Lakka, указываем путь к microSD и ждем окончания процесса. Сам процесс занимает около минуты, так что долго ждать не прийдется.

Шаг 4. Вставляем карточку в Raspberry Pi и запускаем систему

Учитывая, что мы с вами делаем игровую консоль, вполне понятно, что Raspberry Pi уже подключена к телевизору (или ресиверу, в зависимости от ваших предпочтений и комплекта оборудования). Также при первом запуске необходима подключенная по USB клавиатура. Мышь не потребуется, зато геймпад можно уже положить рядом с собой. HDMI-порт на Raspberry Pi используем тот, что расположен ближе к гнезду питания.

На этом всё. Lakka определит конфигурацию оборудования, перезапустит Raspberry Pi и встретит нас симпатичным интерфейсом в стиле PlayStation 3.

Настройка Lakka на Raspberry Pi

Для комфортной работы с Lakka нужно проделать пару нехитрых манипуляций, прежде чем раз и навсегда отключить клавиатуру.

  1. Перемещаясь по меню клавишами ←→↑↓, находим пункт Services и активируем SSH и Bluetooth. Свой выбор подтверждаем клавишей Enter, а для отмены используем Backspace.
  2. Если нет звука, то в меню Audio → Device нажимаем Enter и вводим такое значение:
    hdmi:CARD=vc4hdmi1,DEV=0

    А затем выбираем пункт Restart RetroArch.

  3. Подключаем геймпады. В случае с DualShock 4 достаточно ввести геймпад в режим сопряжения, зажав на нем кнопки «PS» и «Share» на несколько секунд, пока геймпад не начнет помаргивать белым светом, а на Raspberry Pi найти в списке доступных Bluetooth-устройств Wireless Controller и нажать Enter. Через несколько секунд геймпад просигналит об успешном подключении постоянным синим свечением. Второй геймпад будет светиться красным.
  4. В меню Input → Port 1 Controls выставляем такие значения:
    Device Type: RetroPad with Analog
    Analog to Digital Type: Left Analog
    И чуть ниже переназначаем все кнопки и стики геймпада по отдельности, чтобы избежать сложностей в дальнейшем.
    Клавиатуру можно отключать, больше она нам не понадобится.
  5. Подправляем часовой пояс. Для этого логинимся в Lakka по SSH (login/pass: root/root) и вводим команду:
    echo "TIMEZONE=Europe/Rome" > /storage/.cache/timezone

    Где вместо Europe/Rome подставляем любое нужное значение из списка часовых поясов с Википедии. Перезагрузка и вот уже на экране правильное время.

Добавляем игры на Raspberry Pi

В принципе, каких-то жестких требований к эмуляции игр Lakka не предъявляет, за исключением эмуляции PlayStation One. Для корректной работы вам понадобятся файлы BIOS от оригинальной приставки. Поскольку распространение этих файлов с точки зрения Sony является пиратством, вам прийдется нагуглить их самостоятельно. Подходят следующие файлы:

MD5SUM Name
8dd7d5296a650fac7319bce665a6a53c scph5500.bin
490f666e1afb15b7362b406ed1cea246 scph5501.bin (Can be renamed from scph7003.bin)
32736f17079d0b2b7024407c39bd3050 scph5502.bin

Их (любой или все вместе) нужно положить в папку /System на Raspberry Pi. Это можно сделать просто по сети, так как Lakka по умолчанию разрешает гостевой доступ по Samba.

Остается только просканировать папки с играми, которые в случае с Lakka могут располагаться где угодно — на microSD с системой или на внешнем USB-диске. Если есть сильное желание, то можно для складирования игр использовать любое облако с поддержкой WebDAV, подмонтировав его к файловой системе Lakka, но на мой взгляд это уже перебор. Впрочем, вам-то ведь никто не запрещает экспериментировать?

Запускаем игры на Raspberry Pi

Папку с играми сканируют через соответствующий пункт меню Lakka: ➕ → Scan Directory. Подключенный внешний диск со всей структурой папок будет виден под именем вроде sda1-ata-DISK_NAME_VENDOR-XYZ. Выбрав нужную папку, запускаем сканирование пунктом <Scan This Directory> и возвращаемся в основное меню.

Здесь нас уже будут ждать наши игры, рассортированные по платформам. При первом запуске игры Lakka попросит уточнить, какой именно движок использовать для её запуска. В случае с играми от PlayStation выбираем PCSX ReARMed.

Во время игры можно нажать на геймпаде универсальную кнопку PS, чтобы попасть в меню тонких настроек игры. Здесь в случае с эмуляцией NES можно настроить турбо-кнопки, а для эмуляции PlayStation включить удвоение пикселов, чтобы картинка выглядела более гладкой на современных телевизорах с высоким разрешением. Из этого же меню можно запустить запись видео и даже стриминг в YouTube или Twitch, если есть такое желание.

PSX Lakka original resolution
PSX Lakka double resolution

На этом, в общем-то, всё. Образы дисков для PlayStation создатели Lakka рекомендуют брать с сайта ReDump, но это не обязательное условие. Главное, чтобы образ диска с игрой был в формате BIN+CUE. Образы игр для NES, SNES и так далее — прекрасно работают даже из архивов, поэтому скачав, например, коллекцию «No-Intro» (чистые образы оригинальных игр) или «GoodNES» (коллекция с бета-версиями, переводами и прочим «мусором»), их можно не распаковывать из архивов, а загружать в папку с играми как есть.

Приятной игры!

Вместо заключения

На этом цикл статей об использовании Raspberry Pi в домашних условиях можно считать завершенным. Разумеется, перечисленными сервисами возможности Raspberry Pi не ограничиваются, но в домашних условиях этого уже достаточно, чтобы потраченные на «малинку» деньги окупились полученным комфортом и удовольствием. А приобрести Raspberry Pi для своих экспериментов можно по ссылке.

Читайте также:

Share
Yuri Stanislavsky

SwiftUI разработчик. Коллекционирую винил. Иногда журналист. Владелец Nota Record Store.

Leave a Reply

Your email address will not be published. Required fields are marked*