Установил в прошлом году на свой Nexus 7 2012 (это первая версия) официальное обновление до 5 андроида от Google и страшно разочаровался. Хоть и расписывались преимущества шустрого и быстрого нового ART  в Lollipop против  Dalvik в KitKat,  меньшего потребления процессорных ресурсов и памяти программами, но в итоге из этого достаточно ранее динамичного устройства получился страшный тормоз (это при том что на нем установлено от силы пяток программ, и в фоне работают лишь пару мессенджеров). Дальнейшие обновления до версии 5.1.1 наивно ожидаемых улучшений так и не принесли. В итоге далее собран опыт отката на стоковый образ 4.4, естественно все действия производятся под Ubuntu, в моем случае 15.04.

Естественно, это описание подойдет не только для даунгрейда этой версии Nexus, но и для обновления, а в общем и установки  официальной прошивки семейства Nexus.

читать дальше

Установка SDK не обязательна, нужные утилиты adb и fastboot можно установить отдельно от него, из ppa, при этом будет скачено всего лишь 115 kБ архивов :
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install android-tools-adb android-tools-fastboot

Нужный образ для планшета берем на сайте Google Developers, в моем случае «nakasi» for Nexus 7 (Wi-Fi) 4.4.4 (KTU84P) . Разархивируем его и откроем терминал в получившейся директории.

Для соединения с планшетом необходимо включить возможность отладки по USB. Для этого в меню настроек нужно открыть подменю «О планшете», затем на строке «Номер сборки» тапнуть 7 раз, после чего всплывет окно с предупреждением, что вы включите возможности разработчика и он вам надо?  Соглашаемся.
Теперь в меню настроек появится новое подменю: «{} Для разработчиков», где и можно будет включить отладку по USB.
Если сейчас в терминале дать команду проверки подключенных устройств, то увидим:
adb devices
List of devices attached
015d4a82255bfa04 offline
в это время на планшете отобразится запрос на разрешение добавления цифрового отпечатка, ставим галочку «принимать всегда с этого компьютера» после чего при повторном запросе уже получаем:
adb devices
List of devices attached
015d4a82255bfa04 device
Всё, теперь можно переключаться в режим загрузки:

adb reboot bootloader
На экране перезагрузившегося планшета должен появиться препарированный зеленый робот.
запускаем установку:
./flash-all.sh
Далее пойдет такой диалог:
waiting for device

(bootloader) Bootloader is already unlocked
OKAY [ 0.020s] finished. total time: 0.020s
erasing ‘boot’…
OKAY [ 0.033s] finished. total time: 0.033s
******** Did you mean to fastboot format this partition?
erasing ‘cache’…
OKAY [ 0.155s]

не требующий вашего вмешательства, так-что ждем окончания прошивки, на что уходит:
rebooting…
finished. total time: 162.677s
Собственно и все.
Теперь после перезагрузки и входа в аккаунт устройство сразу же скачает новое обновление до 5.0.2 и предложит установить его, и это от которого только что избавились!

В области уведомлений длинным тапом на злополучном обновлении попадаем во всплывающее меню ‘О приложении’ , кликаем на нем и попадаем в его меню (Google Services Framework), далее пара простых шагов:
— снимаем метку с ‘Показывать уведомления’
— жмем кнопку ‘Удалить данные’ .
And now you can see Your System is up to date in System updates, the notification about update OS gone.

Вот теперь все.

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

Правится это в скрипте загрузки Grub:

sudo nano /etc/grub.d/00_header

найти строки с текстом настройки времени ожидания запуска и установить необходимое время запуска:

make_timeout ()
{
cat << EOF
if [ «\${recordfail}» = 1 ] ; then
# это оригинал: set timeout=${GRUB_RECORDFAIL_TIMEOUT:-30}
set timeout=20
else

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

Здесь правится

sudo nano /etc/default/rcS

# automatically repair filesystems with inconsistencies during boot
FSCKFIX=yes

Правим

nano .kodi/userdata/RssFeeds.xml

<?xml version=»1.0″ encoding=»UTF-8″ standalone=»yes»?>

<rssfeeds>

<!— RSS feeds. To have multiple feeds, just add a feed to the set. You can also have multiple sets.     !—>

<!— To use different sets in your skin, each must be called from skin with a unique id.                 !—>

<set id=»1″>

<feed updateinterval=»120″>http://today.kz/feed/</feed>

<feed updateinterval=»120″>http://news.yandex.ru/index.rss</feed>

<feed udateinterval=»120″>http://news.yandex.ru/movies.rss</feed>

<feed updateinterval=»120″>http://news.yandex.ru/Kazakhstan/index.rss</feed>

</set>

</rssfeeds>

Настройка пульта ComPro K300 для работы с медиасервером  Kodi.

k300

читать дальше

Для начала правим карту команд

sudo nano /usr/share/xbmc/system/Lircmap.xml

добавляем наш пульт:

<remote device=»ComPro_VideoMate-K300″>

<play>Play</play>

<pause>Pause</pause>

<stop>Stop</stop>

<forward>Fwdwind</forward>

<reverse>Rewind</reverse>

<left>ArrowLeft</left>

<right>ArrowRight</right>

<up>ArrowUp</up>

<down>ArrowDown</down>

<select>OK</select>

<pageplus>ChannelUp</pageplus>

<pageminus>ChannelDown</pageminus>

<back>BackExit</back>

<menu>Menu</menu>

<title>Guide</title>

<info>More</info>

<skipplus>SkipBack</skipplus>

<skipminus>SkipFwd</skipminus>

<display>RecordTV</display>

<start>DVDMenu</start>

<record>Record</record>

<volumeplus>VolumeUp</volumeplus>

<volumeminus>VolumeDown</volumeminus>

<mute>Mute</mute>

<power>Power</power>

<myvideo>Video</myvideo>

<mymusic>Music</mymusic>

<mypictures>Picture</mypictures>

<mytv>LiveTv</mytv>

<one>1</one>

<two>2</two>

<three>3</three>

<four>4</four>

<five>5</five>

<six>6</six>

<seven>7</seven>

<eight>8</eight>

<nine>9</nine>

<zero>0</zero>

<star>Star</star>

<hash>Hash</hash>

<clear>Clean</clear>

<enter>Enter</enter>

<red>Red</red>

<green>Green</green>

<yellow>Yellow</yellow>

<blue>Blue</blue>

<teletext>Text</teletext>

</remote>

Конфигурация для пульта в lirc

sudo mkdir /usr/share/lirc/remotes/compro/

sudo nano /usr/share/lirc/remotes/compro/lircd.conf.compro

# Please make this file available to others

# by sending it to <lirc@bartelmus.de>

#

# this config file was automatically generated

# using lirc-0.8.6(default) on Fri Mar 26 18:53:08 2010

#

# contributed by : Michael Reimer Christensen

#

# brand: ComPro Technology Inc.

# model no. of remote control: VideoMate-K300

# devices being controlled by this remote:

#

#

# Mythbuntu 9.10 Kernel 2.6.31-14-generic

#

# dmesg:

#       lirc_mceusb: Windows Media Center Edition USB IR Transceiver driver for LIRC 1.90

#       lirc_mceusb: Daniel Melander <lirc@rajidae.se>, Martin Blatter <martin_a_blatter@yahoo.com>, Dan Conti <dconti@acm.wwu.edu>

#       lirc_mceusb[5]: COMPRO VideoMate IR20

#

# lsusb:

#       Bus 006 Device 005: ID 185b:3020 Compro

#

begin remote

name  ComPro_VideoMate-K300

bits           13

flags RC6|CONST_LENGTH

eps            30

aeps          100

header       2746   836

one           490   397

zero          490   397

pre_data_bits   24

pre_data       0x1BFF83

gap          106125

min_repeat      1

toggle_bit_mask 0x8000

rc6_mask    0x100000000

begin codes

Power                    0x1BF3

ArrowUp                  0x1BE1

ArrowDown                0x1BE0

ArrowRight               0x1BDE

ArrowLeft                0x1BDF

OK                       0x1BDD

BackExit                 0x1BDC

Menu                     0x1BF2

More                     0x1BF0

SkipBack                 0x1BE4

Record                   0x1BE8

Stop                     0x1BE6

SkipFwd                  0x1BE5

Rewind                   0x1BEA

Play                     0x1B91

Fwdwind                  0x1BEB

VolumeUp                 0x1BEF

VolumeDown               0x1BEE

Mute                     0x1BF1

ChannelUp                0x1BED

ChannelDown              0x1BEC

Video                    0x1BB5

Radio                    0x1BAF

Music                    0x1BB8

Picture                  0x1BB6

RecordTV                 0x1BB7

Guide                    0x1BD9

LiveTv                   0x1BDA

DVDMenu                  0x1BDB

1                        0x1BFE

2                        0x1BFD

3                        0x1BFC

4                        0x1BFB

5                        0x1BFA

6                        0x1BF9

7                        0x1BF8

8                        0x1BF7

9                        0x1BF6

Star                     0x1BE2

0                        0x1BFF

Hash                     0x1BE3

Clean                    0x1BF5

Enter                    0x1BF4

Red                      0x1BA4

Green                    0x1BA3

Yellow                   0x1BA2

Blue                     0x1BA1

Text                     0x1BA5

end codes

end remote

Подключаем конфигурацию:

sudo nano /etc/lirc/lircd.conf

include «/usr/share/lirc/remotes/compro/lircd.conf.compro»

перезагрузка lirc

sudo service lirc restart

если вылазит ошибка :

unable to load LIRC kernel modules. Verify your * selected kernel modules in /etc/lirc/hardware.conf

то правим

sudo nano /etc/lirc/hardware.conf

коментируем #REMOTE=»Windows Media Center Remotes (new version Philips et al.)»

коментируем #REMOTE_MODULES=»lirc_dev lirc_mceusb2″

создаем            REMOTE_MODULES=»lirc_dev»

REMOTE_DRIVER=»»

REMOTE_DEVICE=»/dev/lirc0″

коментируем #REMOTE_LIRCD_CONF=»mceusb/lircd.conf.mceusb»

REMOTE_LIRCD_ARGS=»»

рестарт lirc

Запуск демона от пользователя, в примере он указан как tv  :

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

заменить

setuid tv   пользователь

setgid tv   группа

права на чтение файла конфигурации по умолчанию пользователю недоступны:

копируем в домашний каталог

sudo cp -R /etc/transmission-daemon/ .config/

меняем пользователя на нашего

sudo chown -R tv:tv  ~/.config/transmission-daemon/

указываем где читать файл конфигурации:

sudo nano /etc/default/transmission-daemon

меняем

# CONFIG_DIR=»/var/lib/transmission-daemon/info»

CONFIG_DIR=»/home/tv/.config/transmission-daemon/»

чтобы файлы были доступны для редактирования остальным пользователям, изменим маску в settings.json

из "umask": 18  на  "umask": 2 

если забыли перед изменением конфигурации остановить демон, то можно без потери изменений применить их «на лету»:

sudo reload transmission-daemon

В версии Ubuntu 16.04 и выше для запуска сервисов используется systemd, в связи с чем настройки запуска пользователя и указания по конфигурации из старого конфига не работают.
Надо добавить путь к конфигу в скрипте запуска:
sudo nano /lib/systemd/system/transmission-daemon.service
ExecStart=/usr/bin/transmission-daemon -f -g /home/tv/.config/transmission-daemon —log-error

там-же указываем пользователя от которого стартуем:
[Service] User=tv

перечитываем изменения
systemctl daemon-reload
и затем рестартуем демон.

 

 

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

В итоге попробовал его первого конкурента , бывший  проект AjaXplorer, теперь он Pydio. Установка более заморочена, но в итоге получаем гораздо более функциональный файловый менеджер (и не только) и без проблем с кириллицей, так что выбор на нем.

читать дальше

Что понадобится для установки:

  1. sudo apt-get install apache2 php5 php5-sqlite php5-gd php5-mcrypt
  2. включить mcrypt sudo php5enmod mcrypt если его игнорировать при первом запуске, то все окончится ошибкой установки.

Установка из репозитория:

добавляем в список источников

sudo nano /etc/apt/sources.list

в конец списка следующий текст:

##Pydio repository
deb http://dl.ajaxplorer.info/repos/apt stable main
deb-src http://dl.ajaxplorer.info/repos/apt stable main
Сохраняем Ctrl+o и выходим Ctrl+x 
Импортируем  ключ Gpg 
wget  http://dl.ajaxplorer.info/repos/charles@ajaxplorer.info.gpg.key
sudo apt-key add charles@ajaxplorer.info.gpg.key
Обновляем список программ:
sudo apt-get udate
Непосредственно установка:
sudo apt-get install pydio 
 Копируем кнофигурационный файл Pydio для apache:
sudo cp /usr/share/doc/pydio/apache2.sample.conf /etc/apache2/sites-enabled/pydio.conf
 Перезапуск apache:
sudo service apache2 restart 

 Судя по конфигурационному файлу рабочим каталогом явлется <Directory "/usr/share/pydio">
с ним потом и будем работать, а пока что смотрим что получилось

http://localhost/pydio
При первом запуске появляется такая автодиагностика, первые
три пункта как на скриншоте в нашем случае на работу не повлияют,
тем более что третий при дальнейшей настройке исправится.
Выбираем  настройки админа, русский язык, и настраиваем
использование sqlite.

Внизу есть кнопка "Проверить соединение" должно появиться
уведомление на зеленом фоне, что удачно.
Если нижняя кнопка "Install Pydio now" неактивна, то возможно
ввели слабый пароль, либо неверно подтверждение пароля.
Далее предлагается скопировать настройки для
sudo nano /usr/share/pydio/.htaccess
но там разница с оригинальным в отсутствии в строке
RewriteBase /pydio, да и вообще практика показала
что ничего не надо делать,просто перегружаем страницу
и должна появиться страница приветствия.
 Для возможности загрузки больших файлов от администратора
заходим в настройки и в конфигурации ядра правим максимальный
размер загрузки на 4G, после чего

правим PHP:
sudo nano /etc/php5/apache2/php.ini
закомментируем
;output_buffering = 4096
и работаем с большими файлами
memory_limit = 1500M
post_max_size = 3G
upload_max_filesize = 4G
Лечим проблему с языком, не хочет изначально работать с русскими названиями (читает,
но не присваивает и не преименовывает на русский)
 правим:
 sudo nano /usr/share/pydio/conf/bootstrap_conf.php
раскоментировать и поправить
define("AJXP_LOCALE", "ru_RU.UTF-8");
 
Plex изначально был предназначен для удобной организации домашней медиатеки и раздачи потокового видео посредством DLNA на совместимые устройства: смартфоны, телевизоры,  сетевые медиаплееры.

plex_alldevice

Затем стал обрастать современной цифровой инфраструтурой, и теперь превращается в жирный комбайн с облачным сервисом и элементами социальной сети. При наличии хорошего интернет канала и платной подписки с его помощью можно делиться с друзьями и знакомыми своим медиа контентом, осуществлять подписки на различные развлекательные каналы.
Некоторые производители, такие как Sony, LG, Samsung участвуют в развитии этого проекта и включают поддержку этого сервера на своих телевизорах.
читать дальше
Собственно установка очень проста, достаточно скачать нужный установочный пакет с официального сайта.
Из терминала для 64 битной убунту:
plexmediaserver зависит от avahi-utils, поэтому прежде установим этот пакет
sudo apt-get install avahi-utils
скачиваем актуальную версию сервера :
wget -O plex.deb «https://plex.tv/downloads/latest/1?channel=16&build=linux-ubuntu-x86_64&distro=ubuntu»

устанавливаем:
sudo dpkg -i plex.deb

plex1 Идем на домашнюю страницу , либо через меню: Все приложения -прочее- Plex Media Manager,
либо просто открыв ссылку в браузере http://localhost:32400/manage , что собственно одно и тоже.
В первую очередь нам предложат зарегистрироваться на их ресурсе.
В старой версии регистрация была необязательной и для локальной сети в этом не было необходимости, теперь же без этого не войти. Когда вы зарегистрируетесь на Plex,  то с помощью этой учетной записи сможете попасть и на форум поддержки.

 

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

plex2 plex3 plex4

 

 

 

 

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

plex5

Чтобы медиатека обновлялась автоматически, зайдем в настройки и укажем автоматически обновлять библиотеку при обнаружении новых файлов.plex6
Для фильмов не будем торопиться с созданием ресурса, потому что по умолчанию для парсинга информации о фильмовом медиаконтенте используется The movie Database,  не поддерживающий русский язык ресурс (сериалы получают данные с IMDB, где есть информация на русском языке, и потому с ними нет проблем,  «работает из коробки»), а для фильмов мы скорее всего не получим никакой информации если названия будут в транслитеризации либо на кирилице, а если же названия в оригинале, то и информация будет естественно на английском языке.
Но есть хорошие люди, которые написали агент Plex для Кинопоиск для парсинга информации с русскоязычного ресурса www.kinopoisk.ru/.
Вот этого агента теперь и будем устанавливать:
Плагин Кинопоиск выложен на SourceForge, описание и обсуждение на русском форуме Plex .
Вышеуказанный плагин давно не поддерживается, и самое плохое, что при его использовании сайт кинопоиска при распарсивании нескольких запросов посылает нас в длительный бан, но есть оказывается еще великолепная актуальная разработка https://forums.plex.tv/discussion/146992/kinopoisk-plagin-obsuzhdenie/p1

 

Установка:
забираем версию  1.1.6
wget https://us.v-cdn.net/6025034/uploads/editor/gy/rn2zm7hycrc2.zip  --output-document=Kinopoisk-1.1.6.zip
 распаковываем:   unzip Kinopoisk-1.1.6.zip
 переносим в нужный каталог с плагинами:
sudo mv Kinopoisk.bundle /var/lib/plexmediaserver/Library/Application\ Support/Plex\ Media\ Server/Plug-ins/
меняем пользователя и группу для каталога плагина на «plex» sudo chown -R plex:plex /var/lib/plexmediaserver/Library/Application\ Support/Plex\ Media\ Server/Plug-ins/Kinopoisk.bundle

 

Новый виток жадности от Кинопоиск, теперь инфу о фильмах надо у них покупать… Пока не работает.

 

перезагружаем сервис:
sudo service plexmediaserver restart
теперь в настройках — сервер — агенты должен появиться наш плагин Кинопоиска:
Идем на главную, добавляем раздел Фильмы
указываем папку с фильмами, и , вот оно, нажимаем дополнительно и выбираем агент KinoPoiskRu

plex7

жмем «Добавить библиотеку», ждем пока скачается информация, и:

plex8

 

информация с описанием, артистами, рейтингом и т.п.
plex9

Плагин Канала Youtube

скачиваем:
wget https://github.com/kolsys/YouTubeTV.bundle/archive/v4.7.zip
распаковываем:
unzip v4.7.zip
переименовываем:
mv YouTubeTV.bundle-4.7 YouTubeTV.bundle
переносим в нужный каталог с плагинами:
sudo mv YouTubeTV.bundle /var/lib/plexmediaserver/Library/Application\ Support/Plex\ Media\ Server/Plug-ins/
меняем пользователя и группу для каталога плагина на «plex»:
sudo chown -R plex:plex /var/lib/plexmediaserver/Library/Application\ Support/Plex\ Media\ Server/Plug-ins/YouTubeTV.bundle
перезагружаем сервис:
sudo service plexmediaserver restart