Как установить android tv на raspberry pi с lineageos

How to Solve Google Play Services issue on Raspberry Pie?

To get rid of this problem, download an application called device ID Download it and install it. Next, open the application. Here we get the “Google Services Framework” Code. Click on it and then click the copy button on this dialogue box. We need this ID later.

Ok, click on the play store’s error message from the notification panel.

It automatically redirects us into this window. In this window click on this link.

This link will redirect us to this device registration page. You need to sign in with your Google account. I have done it already so I don’t need to do that. Now paste the “Google Services Framework ID” by pressing the Ctrl+V on your keyboard and click on register.

After a minute or two, the process will be completed. To confirm this, scroll down a bit on this web page and you get a number like this.

Now restart the machine by holding the F5 key from your
keyboard.

When our machine is successfully booted up, we still get this notification from “google play services”. This issue can easily be fixable. Open the Playstore and click on sign in.

After a couple of minutes, we get this sign-in window. Now put your user id and password which you have used before on the device registration.

The error message has gone and also the Playstore is working fine. Let’s test it properly by downloading an application. I want to download a browser in my system because the integrated browser is a piece of junk.

Before downloading, complete the Android setup. So, from the notification section, I have clicked on this message.

It takes me to the setup window again. After completing the setup process which I think is not necessary to explain to you in detail because everyone has an android device, everything here is as same as that.

Музыка на Raspberry Pi

Раз уж мы решили использовать Raspberry Pi в качестве единого медиацентра, то логично установить на него аудиоплеер с удаленным управлением. На эту роль лучше всего подходит MPD (Music Player Daemon).

Мы запустим его на Raspberry Pi так, чтобы он постоянно висел в фоне и был готов играть музыку. А на ноутбук, домашний комп и смартфон установим MPD-клиент, с помощью которого и будем выбирать и запускать музыку.

Устанавливаем:

1 $sudo apt install mpd

Скопируем дефолтовый конфиг:

1
2

$mkdir.config/mpd

$cp/etc/mpd.conf.config/mpd/

Изменим несколько строк:

1
2
3
4
5
6
7
8

## Каталог с музыкой

music_directory/media/pi/Elements/download

## Каталог с плей-листами

playlist_directory/media/pi/Elements/playlists

## Пользователь, от имени которого будет работать демон

user»pi»

## Слушаем подключения на всех адресах

bind_to_address»0.0.0.0″

В данном примере я использовал
/media/pi/Elements/download в качестве каталога с музыкой. Это каталог
download на диске WD Elements, подключенном по USB. Если вы используете флешку или жесткий диск, он также будет подключен куда-то к
/media/pi, но, естественно, под другим именем.

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

1
2

$sudo systemctl stop mpd.socket

$sudo systemctl disable mpd.socket

Чтобы решить вторую, создадим каталог для пользовательских сервисов SystemD:

1 $mkdir-p.config/systemd/user/

В нем создаем файл
mpd.service следующего содержания:

1
2
3
4
5
6
7
8

Unit

Description=Music Player Daemon

Service

ExecStart=/usr/bin/mpd—no-daemon

Install

WantedBy=default.target

Сохраняем, активируем и запускаем:

1
2

$systemctl—user enable mpd.service

$systemctl—user start mpd.service

Теперь MPD будет автоматически запускаться от имени пользователя после загрузки.

Клиентов для MPD существует множество для самых разных платформ, включая Linux, Windows, macOS, Android и iOS. Лично я предпочитаю использовать консольный ncmpc на ноутбуке с Linux и MPD Control на Android.

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

Ncmpc: консольный клиент MPD

Загрузка образа системы Recalbox

Начнем с того, что нам необходимо будет скачать образ системы Recalbox с официального сайта https://www.recalbox.com/ нажав на зеленую кнопку Download Recalbox.

Нажимаем на кнопку Download Recalbox

Далее перед нами откроется страница, где первым делом скачиваем и устанавливаем утилиту под названием Etcher через нее будем производить установку образа. Теперь скачиваем образ самой системы Recalbox которая находится чуть ниже, выбираем образ под вашу модель малины. Поддерживаются от Raspberry Pi 1  до Raspberry Pi 3 B+, под Rasberry pi 4 пока почему-то нет образа, возможно в будущем появится и под нее.

Скачиваем Etcher и образ Recalbox

Аппаратная часть, программная платформа

Все знакомства проводил на виртуальных машинах или мобильном телефоне с Android на борту. Когда поиски были завершены и выбор пал на KODI, нужно было определиться с платформой. На этапе знакомства были испробованы и готовые сборки, с отчасти урезанной ОС, типа LibreELEC и на базе Windows 8/10. Из-за желания использования медиацентра, как полную замену всей «начинки» телевизора и использования его, лишь как экрана, от Windows пришлось отказаться. Нужна была работа 24/7/365 – включил телевизор – включился экран, а KODI уже готов к работе, он и не выключался. Из-за надежности, стабильности и небольших навыков в работе, остановился на Ubuntu с окружением рабочего стола KDE Plasma – Kubuntu 20.04 LTS.

К слову, вариант с одноплатным компьютером, например Raspberry Pi, не рассматривал. Учитывая ARM-платформу, не высокую производительность и SD-карту под хранилище, с моими задачами не справился бы.

Enjoy Your Media With Android TV for Raspberry Pi!

By now you should have a Raspberry Pi 3 or later pumping out videos and music using the LineageOS with an Android TV user interface. To all intents and purposes, you have a DIY Android TV box!

Admittedly, you may run into trouble with performance, so ensure your microSD card is up to scratch. Also, check you’re using an approved Raspberry Pi power supply. This will ensure the Pi gets the power it needs without risking undervoltage and microSD card corruption.

Like the feel of Android TV but aren’t getting the best results? Maybe buy an Android TV box instead.

The Best Android TV Box for All Budgets

Android TV boxes are a great way to add smart features and streaming to any television. Here are the best Android TV boxes.

Read Next

About The Author

Christian Cawley
(1553 Articles Published)

Deputy Editor for Security, Linux, DIY, Programming, and Tech Explained, and Really Useful Podcast producer, with extensive experience in desktop and software support.

A contributor to Linux Format magazine, Christian is a Raspberry Pi tinkerer, Lego lover and retro gaming fan.

More
From Christian Cawley

What is Kodi?

Kodi first launched as Xbox Media Player in 2002. At the time, it was a media player exclusively for the original Microsoft Xbox console. Later, in 2004, this homebrew application changed its name to Xbox Media Centre, also known as XBMC. Then, XBMC was ported to a smattering of devices including Android phones and tablets, iOS devices, Linux, macOS, and Windows PCs, smart TVs, and more. And with the launch of version 14 came yet another name change, one that’s stuck: Kodi. 

The free, open-source Kodi media center is cross-platform compatible. Written in C++, Kodi has been forked into projects such as Plex as well as MediaPortal. And because of its open-source nature, Kodi has been implemented in several different just-enough Kodi operating systems (OSes). Kodi can play media through several different methods. It’s capable of handling virtually any media file you throw at it, from videos and music files to photos. Moreover, Kodi touts robust media library features such as the ability to organize your movies, TV shows, and music with downloaded metadata such as box art. You can import local files from connected drives such as hard drives and flash drives, as well as via network shares.

Aside from local file playback, Kodi boasts tons of add-ons for streaming from third-party services. All add-ons hail from third-party sources ranging from sole developers to organizations. For instance, Plex features an official Plex for Kodi add-on that hails from the development team over at Plex. 

What is Kodi: A free, open-source, cross-platform media centre available for macOS/Windows/Linux/Android

Отопительная печь с беспроводным управлением

Сложность: 4/5.

Время: 5/5.

Умный дом — это не только погодные датчики и цветные лампы по комнатам. Как насчёт умного обогрева и реального огня? Один товарищ взял старую буржуйку, сделал недостающие детали и получил полностью автоматическую регулировку температуры с удалённым управлением через интернет.

Официальное предупреждение: это всё действительно работает, но требует инженерного образования и знания физики и термодинамики. Не нужно собирать такую систему и управлять открытым огнём из газового баллона, если вы первый  раз в жизни держите в руках газовый клапан низкого давления.

Подробнее о проекте: raspberrypi.org/blog/wifi-controlled-pottery-kiln/.

Шаг 4: Управление Android TV на Raspberry Pi

Когда все готово, вы, вероятно, захотите отключить мышь и клавиатуру в пользу чего-то более легкого. Для Raspberry Pi доступно несколько вариантов дистанционного управления, которые должны работать с Android TV.

Одним из вариантов является мини-беспроводная клавиатура / пульт дистанционного управления, представляющий собой комбинированное устройство с настраиваемой светодиодной подсветкой.

В качестве альтернативы вы можете предпочесть беспроводную мини-клавиатуру iPazzPort с сенсорной панелью. Это объединяет клавиатуру и сенсорную панель вместе с D-pad и медиа-контроллерами в одном устройстве.

Оба устройства являются беспроводными и поставляются со специальным ключом Wi-Fi, специально предназначенным для дистанционного управления.

Для чего устанавливают Android на Raspberry Pi?

Существует несколько причин, по которым некоторые могут захотеть инсталлировать на RPi «Зеленого робота». Следует привести основные из них:

  • привычный интерфейс;
  • доступ к Android TV;
  • воспроизведение игр, разработанных для Андроид;
  • использование приложений Android.

Если вы хотите использовать Андроид на Raspberry Pi 3 с указанными целями, то вначале ознакомьтесь с текстом ниже.

Почему на RPi3 не рекомендуется устанавливать Android?

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

Более важно то, что достаточно тяжелый GUI на «Малине» будет подтормаживать или вовсе вылетать. Это сведет его удобство на нет

Проблема с воспроизведением игр. У «Малины» сравнительно слабое железо – значительно менее мощное, чем на многих современных телефонах. Поэтому о том, чтобы играть в какие-то более или менее современные требовательные игры речи идти не может. Кроме того, при управлении с джойстика следует быть готовым к высокому инпут-лагу.

С приложениями можно работать, но следует готовиться к той же проблеме, что и с Android TV. Программы с высокой вероятностью станут вылетать.

В большинстве случаев использовать Android на Raspberry Pi 3 неудобно и некомфортно. Значительно проще работать с Raspbian. На нем можно без проблем смотреть фильмы и видео с YouTube, а также использовать различные сервисы через их веб-интерфейс.

Домашний кинотеатр на Raspberry +20

  • 01.03.20 08:59


kriukov

#490540

Хабрахабр


Tutorial

37300

Настройка Linux

Так случилось, что решил я упростить себе вопрос он-лайн просмотра фильмов, вариант стандартного смарт ТВ меня не устраивал, а постоянно торчащий кабель HDMI для подключения к ноутбуку раздражал. Решение моей проблемы я увидел в приобретении Raspberry Pi 4, который можно аккуратно спрятать за корпусом телевизора.
Заказал готовый набор на али и пока ждал почитывал как и что делать. Подходящих мне решений нашлось два:

  • Превратить малинку в мини-компьютер и смотреть потоковое видео с браузера, как я обычно делаю с ноутбуком
  • Установить плеер Kodi и использовать малину в качестве подобия ТВ-приставки.

Шаг первый: Выбор нужной версии одноплатного компьютера.

  • Сам Raspberry Pi 4:Процессор Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz
    Память 4GB LPDDR4-3200 SDRAM
    2.4 GHz and 5.0 GHz IEEE 802.11ac wireless, Bluetooth 5.0, BLE Gigabit Ethernet
    2 USB 3.0 ports; 2 USB 2.0 ports
    2 ? micro-HDMI (с поддержкой 4k 60fps)
    4-pole stereo audio and composite video
    H.265 (декодирование 4kp60), H264 (декодирование 1080p60, кодирование 1080p30)
    OpenGL ES 3.0
    Разъем USB-C для подключения к питанию (минимум 3A, 5V DC)
  • Чехол-радиатор с активным охлаждением в виде двух кулеров
  • Блок питания с напряжением выхода 5В и встроенной кнопкой отключения питани
  • SD карта на 64Гб, 10й класс с адаптером на USB
  • Кабель HDMI/microHDMI на 1,5м

Шаг второй: Установка операционной системы. Шаг третий: Настройка.

  1. Правой кнопкой жмем на Панели задач и выбираем «Добавить/убрать элементы панели».
  2. Откроется окно Настройки панели, жмем «Добавить».
  3. В открывшемся списке находим «Обработчик раскладки клавиатуры», выбираем и жмем «Добавить».
  4. Нас вернет к предыдущему меню, в котором теперь должен появиться пункт «Обработчик раскладки клавиатуры», выбираем и жмем «Параметры».
  5. Снимаем галочку «Сохранить системные настройки»
  6. В ставшем активном окне «Раскладки клавиатуры» жмем «Добавить» и выбираем необходимую раскладку.
  7. Чуть ниже будет написано «grp:shift_caps_toggle» – это сочетание горячих клавиш для смены раскладки. Можно сюда нажать и изменить это сочетание клавиш на привычно удобное, выбрав из предложенного списка.
  8. Ставим галочку «Не сбрасывать существующие настройки».
  9. Жмем крестик для закрытия окна Обработчика раскладки клавиатуры, т.к. кнопка «Закрыть» тут не работает и закрываем окно Настройки панели.
  • Заходим в Терминал и вводим:
  • Пуск/Параметры/Add / Remove Software в поиске вводим Onboard, в вывалившемся списке находим «Simple On-screen Keyboard» и ставим галочку напротив данного пункта, жмем «Apply».

Шаг четвертый: Устанавливаем плеер Kodi.

  • Запускаем терминал и вводим:
  • Откроется окно настроек конфигурации (Raspberry Pi Software Configuration Tool (raspi-config). В нем нужно включить несколько пунктов:7 Advanced options/А1 Expand filesystem — расширит использование файлового пространства на всю флеш-карту
    7 Advanced options/А3 Memory split ввести значение от 160 до 640 (по умолчанию 64) — это объем памяти в Мб, выделяемый для GPU, минимальных 160 должно хватить. Если возникнет черный экран или будут подтормаживания при воспроизведении видео, то надо выделить больше памяти под GPU.
    7 Advanced options/АА Pi 4 Video Output – разрешит использование 4k 60fps

Шаг пятый: Настройка автозапуска Kodi.

  • Попытаться настроить что-нибудь на рабочем столе, например сменить обои (Рабочий стол/ПКМ/Параметры рабочего стола/Picture). Тогда папка будет создана автоматически.
  • В Терминале вводим mkdir ~/.config/lxsession/LXDE-pi
  • Открываем Менеджер файлов, жмем Ctrl+H, чтобы показать скрытые файлы и папки далее заходим .config/lxsession/ и тут создаем папку LXDE-pi

Шаг шестой: Быстрые подсказки по настройке Kodi.

  • Установка из репозитория: Дополнения/Браузер дополнений/Установить из репозитория

Мои требования к медиацентру

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

Вот мой список:

  • Просмотр IPTV. Как бы для некоторых это не было странно в 2021 году, но телевизор в первую очередь должен быть телевизором. С хорошим набором каналов с EPG на борту и в хорошем качестве. Архив передач приветствуется, но не обязателен.

  • Торрент-видео. Обязательна интеграция с популярными русскоязычными трекерами, просмотр «на лету», скачивание во время просмотра.

  • Приятный интерфейс и юзабилити. Что бы все домочадцы без труда смогли самостоятельно посмотреть очередную серию «Маша и Медведь» или любимого сериала, а кто-то и новости по ТВ.

  • Встроенная библиотека. С возможностью загружать информацию о фильме/сериале из внешних источников.

  • Торрент-качалка. Обязательно внешнее управление.

  • Аппаратные требования. Платформа x86-64. Работа 24/7/365, бесшумность, управление аэромышью.

  • Требования к ПО. Полноценная ОС, желательно семейства GNU/Linux. Удаленный доступ. Внешнее управление, желательна поддержка android-устройств. Обновления.

Зачем использовать Raspberry Pi для изучения основ взлома

У Raspberry Pi уже появилось много фанов, а это означает, что новичок может получить большую поддержку со стороны сообщества. Помимо специалистов по безопасности и хакеров, использующих ее для запуска Kali Linux, многие разработчики используют Pi для научных и промышленных приложений. Первая Pi была сделана для того, чтобы познакомить школьников с программированием. Сегодняшняя Raspberry Pi в умелых руках с соответствующими аксессуарами способна делать совершенно удивительные вещи. При создании прототипов кибероружия Raspberry Pi является основой подтверждения концепции (proof-of-concept) атаки, начиная от захвата дронов и заканчивая созданием массовых помех Wi-Fi.

Небольшие размеры Pi и способность делать некоторые сложные вещи были не раз продемонстрированы на шоу типа Mr.Robot, где она использовалась для удаленного взлома системы климат-контроля датацентра

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

Изучение Raspberry Pi вовсе не означает, что вы привязаны к операционной системе Kali Linux. Такие проекты как BerryBoot позволяют вам создавать SD-карту со многими операционными системами для Pi, что дает вам возможность загружать любую ОС, с которой вы хотите работать. Это также означает, что вы можете сделать Pi как хакерской рабочей станцией, так и намеренно уязвимым сервером для отработки атак, просто перезагрузив систему и выбрав другой образ диска.

Raspberry Pi также управляется Raspbian, официальной ОС Raspberry Pi. Эта ОС на базе Debian также может быть использована для изучения базовых инструментов Linux и хакинга, хотя для этого потребуется потратить больше времени на ее настройку. Если вы вдруг застряли при изучении программно-определяемой радиосистемы (SDR) или NFC в Kali Linux на Pi, то бывает, что переход на Raspbian может заставить все оборудование работать как единое целое, когда все остальные попытки терпят крах.

Установка Kodi

Для установки Kodi на Ubuntu-server нужно выполнить несколько действий, а именно:

  • Добавить PPA репозитория Kodi на сервере launchpad.net;
  • Установить X-server;
  • Установить Kodi;
  • Создать новый Unit для Sysytemd, который будет запускать Kodi как standalone-демон при запуске ОС;
  • Создать новое правило для polkit, которое позволяет неавторизованному пользователю управлять перезагрузкой/выключением системы (это добавит соответсвующие кнопки в меню Kodi);

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

Чтобы воспользоваться данным скриптом и установить Kodi с его помощью, выполните следующее:

  1. Установите необходимый пакет:
sudo apt-get update
sudo apt install git -y
  1. Клонируйте скрипт автора с сайта GitHub на свой компьютер:
git clone https://github.com/abacao/Boot2Kodi.git
  1. Перейдите в папку со скриптом:
cd Boot2Kodi

ВНИМАНИЕ — ЭТО НЕ ОБЯЗАТЕЛЬНЫЙ ШАГ! Так как по умолчанию этот скрипт подключает т.н. «stable»-ветку репозитория Kodi, то в результате его выполнения на компьютер будет установлена текущая «стабильная» версия программы, а именно — 17.6 (учтите, что данная информация была актуальна на момент написания заметки, при выходе новых версий проигрывателя наверняка всё изменится, поэтому, уточните свежую раскладку по версиям на странице проекта на сервере launchpad.net или тут)

Если вы хотите установить именно текущую стабильную версию программы Kodi (17-ю), просто пропустите этот шаг и сразу переходите к 5-му пункту! Если же вы хотите установить Kodi версий 16.х (предыдущую) или 18.х («нестабильный» релиз-кандидат), то тогда вам нужно будет выполнить следующее:

Откройте файл скрипта в редакторе:

nano install.sh

Найдите в нем такую строку (где-то в начале файла):

add-apt-repository ppa:team-xbmc/ppa -y

И отредактируйте её. Если вы хотите установить Kodi версии 16.х, измените ее так, чтобы строка стала выглядеть следующим образом:

add-apt-repository ppa:team-xbmc/kodi-old -y

Если же вы хотите установить Kodi версии 18.х, то строку нужно привести к такому виду:

add-apt-repository ppa:team-xbmc/unstable -y

Сохраните изменения и выйдите из редактора.

  1. Запустите скрипт на выполнение:
sudo sh ./install.sh

По окончании работы скрипта программа Kodi будет установлена и запущена.

Lineage OS

  1. В это раз система будет грузиться дольше и после окончания процесса вновь запустится мастер предварительной настройки андроида, теперь можно спокойно выбрать русский язык и поставить все необходимые настройки.
  2. Если установка зависла на пункте «Проверка обновлений…», то просто нажмите кнопку назад внизу экрана, как на телефоне.
  3. Мастер попросит вас залогиниться в аккаунт Google, сделайте это если считайте нужным и хотите синхронизировать данные со всех своих гугловских приложений.
  4. Если вы отказались от установки Google Apps, то в системе отсутствует приложение Play Market и файлы приложений придется устанавливать с флешки, предварительно разрешив установку из неизвестных источников в андроиде. Еще APK-файлы можно скачать с сайта apkmirror.
  5. Для того, чтобы лаунчер был похож на Android TV, скачиваем с 4PDA или Play Market ATV Launcher и запускаем его

Установить Kodi на Smart TV? Почему нет?

Больше настроек

Имея выделенный мультимедийный блок, вы можете расширить свои параметры настройки шире, чем если бы вы использовали эти параметры только на телевизоре. Добавление внешнего хранилища, добавление дополнительных приложений помимо Kodi, использование мобильного телефона в качестве пульта дистанционного управления с такими приложениями, как Kore или Yatse. Если вы используете Smart TV с Kodi, у вас, вероятно, будет меньше оборудования, но ваши варианты использования этого оборудования также уменьшатся.

Портативность

Как правило, устройства медиаплеера небольшие. Это означает, что вы можете просто отключить их и носить с собой в рюкзаке или сумке. С устройством вы переносите свои настройки и приложения, и вам просто нужно найти подходящее устройство отображения (телевизор или монитор) с соответствующим подключением (обычно HDMI), чтобы наслаждаться вашим контентом. Это даже лучше, если вы выберете медиа-флешку Android в качестве медиаплеера.

3. Лучшее оборудование

Можно инвестировать в отдельный медиаплеер, который будет иметь лучшие аппаратные характеристики, чем ваше ТВ-устройство. Это сделает воспроизведение медиафайлов более быстрым и, в целом, обеспечит лучший опыт. Аппаратное обеспечение, встроенное в телевизоры, может быть ограниченным или не очень удобным, если вы устанавливаете Kodi непосредственно на программное обеспечение Smart TV. С другой стороны, аппаратное обеспечение может быть оптимизировано для воспроизведения видео с входных данных вместо обработки данных, что также может повлиять на производительность.

Устройства медиапроигрывателя могут вместить в себя портативный объем.

Модульность

Предположим, что после манипулирования программным обеспечением и установки приложений ваше любимое устройство работает со сбоями. Лучше иметь отдельное устройство для замены или ремонта, чем принуждать к замене или ремонту всего телевизора, если вы устанавливаете Kodi на Smart TV. Это также является веским аргументом в пользу того, что ваши фильмы хранения хранятся отдельно и хранятся на NAS или домашнем сервере, но это совсем другая тема.

Операционные системы

Большинство медиаплееров работают под управлением Android, Windows или другой крупной ОС для медиацентров. Большинство приличных телевизоров с ОС используют пропиетарные версии, для которых Kodi не разработан или недостаточно поддерживается. Поэтому желательно иметь устройство Android или Windows. На нем вы можете легко установить Kodi и другие приложения. Например, ОС TV лучше всего использовать для настройки изображения.

Android – это универсальный вариант ОС, позволяющий установить множество приложений в настройках.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Зов электронных книг
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: