?

Log in

05/05/2016 Activision выкатили обновление которое по непонятной причине не попало в Российский Xbox Live несмотря на регулярный выход DLC по 800 рублей.
Покупать их не имеет смысла, как и брать сезонный пропуск за 2999 рублей т.к. без этого обновления мультиплеер в игре фактически не работает.

При попытке войти в соответствующее меню игра или вся консоль зависает. Если не зависает, то найти других игроков удается спустя 10 минут постоянных тыканий в поиск. Игра ищет только русских и поляков (видимо тех, кого обделили обновлением).

Служба поддержки Activision отказывается отвечать на любые вопросы на эту тему, всегда  один:
"Unfortunately because of Russian Federal Law No. 242-FZ we are unable to collect PII, as a result, we are unable to assist you any further."

Т.е. несмотря на то, что они с радостью ведут бизнес на территории РФ оказывать поддержку покупателям они не собираются, ссылаясь на нелепую причину - закон о защите персональных данных.

К счастью EA, Microsoft, Steam, Nintendo и прочие зарубежные компании себе такого не позволяют и с радостью помогают решить любые проблемы.

Для себя решил что BO3 - последняя игра от Activision в моей коллекции и надеюсь что Роспотребнадзор прикроет деятельность этой компании на территории РФ.

Tags:

OpenWRT + 7-Sky IPTV

 После того как Butovo.com стали Seven-Sky настройки немного изменились.

Для плейлиста с открытыми каналами теперь на роутере надо открывать:


config rule
        option src              wan
        option src_ip           172.16.172.0/24
        option proto            udp
        option target           ACCEPT
 
config rule
        option src              wan
        option src_ip           192.168.90.0/24
        option proto            udp
        option target           ACCEPT
 
config rule
        option src              wan
        option src_ip           82.199.96.213
        option proto            udp
        option target           ACCEPT
 
config rule
        option src              wan
        option src_ip           10.4.192.1
        option proto            igmp
        option target           ACCEPT
 

Проверено с http://xupnpd.org/ - работает

Tags:

Медиаплеер в Sony Playstation 4

Не прошло и двух лет как Сони разродились и выкатили медиаплеер для PS4.

Что он умеет:
- Браво, контейнер MKV наконец поддерживается плойкой (mp4, avi и m2ts тоже)
- DLNA
- Переменный fps и это очень важно
- Из алгоритмов сжатия оно точно понимает h.264 и AC3

Что не поддерживает:
- Не проверял, но походу проимели WMV и VC-1
- Сабов походу тоже нет
- NTFS как не работала так и не работает но работает exFAT, так что не страшно
- DTS тоже не понимает
- Нельзя переписать видос на внутренний диск консоли
- Не выбираются звуковые дорожки, не меняются пропорции экрана, не помнит где закончился просмотр - позорище!!!!!

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

Придется и дальше пользоваться старой плойкой.

upd: В некоторых MKV есть проблемы со скоростью воспроизведения и выпадением фрагментов звука, в m2ts нет перемотки. К счастью хоть Пауза работает.

Tags:

Выходные

Вечером в пятницу - Black ops 2 вдвоем с двоюродным братом на Wii U один на один (один на телеке, второй на Wii U Gamepad), потом немного BF Hardline и Call Of Duty AW по сетке на PS4.

Утром в субботу - на досках от Парка горького до Воробьевых гор (поливалки полили набережную и обломали катание), дальше на метро до Парка победы, там полтора часа катали с горок. Вечером на дачу, шашлык на улице, Red machine ipa, теннис, покидал гирьку 16кг, телескоп - Венера, Юпитер с двумя полосками и двумя спутниками, Сатурн с одним спутником.

Воскресенье - час с гирькой 16 кг (с земли рывком на грудь/жим над собой - каждой рукой по 50 раз, затем бицепс, широчайшие, трицепс, подтягивания к подбородку, приседания с гирей за спиной, покидал из руки в руку), забил все что можно, натер мозоли, дети покупались. С дачи к дяде короткой дорогой с полным отсутствием дорожного покрытия (пашня, булыжник, спуски, подъемы, ветки, пыль), там покатались на скутере 300 кубов - адов зверь, все в восторге. Покидали с дядькой друг другу гирьку 16 кг, думал так не бывает, пару раз поймал. Лопнули мозоли, надыбал разборную гирю 16-24-32....двинули домой тоже по "короткой" дороге - срезали по полю, съезд перерыли что б не ездили, пришлось штурмовать, хорошо есть рама, потом так же выезжать - все в восторге. От машины к дому - в левой руке три сумки, в правой 32-кг гиря для балласта - отличные выходные.
При дефолтной fb консоли штатный механизм смены консольных фонтов при старте не работает.

Самый простой способ - отключить fb консоль и при желании тупо сменить vga режим на тот, что нравится.
У меня среди опций для ядра в загрузчике прописано это:
'nomodeset vga=0x0369'

Первое запрещает fb (вырубая заодно зеркало на втором мониторе с другим разрешением), второе выставляет 1680x1050.

Соответственно в /etc/vconsole.conf прописано это:
KEYMAP=ru
FONT=UniCyr_8x14

И консоль прекрасно показывает русский в UTF8.
 

Tags:

После Фри решил попробовать экстравагантный Arch Linux.

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

Из недостатков хочу отметить две серьезные проблемы с которыми пришлось столкнуться и чего я не наблюдал вообще никогда и нигде (даже во FreeBSD и NetBSD):
- Бесконтрольное поведение подсветки экрана в моем ноуте от Сони с Nvidia при кажой перезагрузке иксов (то ярко, то ничего не видно)
- Мертвая зона мышки и дебильное ускорение указателя

Первое так и не поборол, максимум что можно сделать - через sys принудительно сменить яркость средствами ACPI. При чтении говорит, что на максимуме, а реально все не так. Стоит перезаписать значение и подсветка зажигается как надо.
Касается только иксов, пробовал разные драва видюхи - х.з, не помогает.

А вот вопрос с мертвой зоной решается радикално:
sudo pacman -R xf86-input-libinput libinput

https://bbs.archlinux.org/viewtopic.php?id=195147

И все, две недели мучений в прошлом.

Tags:

Сборка OpenWrt под FreeBSD

Из коробки не работает т.к. требует гнушные тулзы.

Вот рецепт:  caia.swin.edu.au/urp/diffuse/openwrt/buildunderfreebsd.html

Если коротко, то выписываем транка или бранча OpenWRT то, что нам надо. Внутри под рутом запускаем caia.swin.edu.au/urp/diffuse/openwrt/downloads/openwrt-installer-30jan13.sh

Затем под регулярным пользователем делаем PATH=./bin-gnu:$PATH; export PATH;

И gmake menuconfig; gmake

Вместо введения
 
Последние лет 10 на рабочем десктопе использую исключительно операционные системы семейства Linux.
Был RHL, Слака, Debian, Gentoo, пробовал SuSE, даже собирал свой дистрибутив с нуля из исходников, тягая исходники гнушного софта откуда только можно. В итоге пришел конечно же к Ubuntu - минимум головной боли, все из коробки, поставил и забыл.
Сидя на Ubuntu постепенно начал забывать корни, а за эти годы они ушли от корней настолько далеко, что руками уже и не принято ничего делать, монолитные ядра чужды идеологии современных дистрибутивов, все работает как-то само, а если не работает то не работает.
От дистрибутива к дистрибутиву постоянно меняется софт... то syslogd, то syslog-ng, то rsyslog. Unity, Gnome-shell — вроде работает, а вроде и нет. До последнего держался за Gnome Classic, но с этим все сложнее.
Последней каплей стало понимание того, что 64-х битную убунту походу никто и не тестит... банально может не работать драйвер видюхи или какая-нибудь галочка в настройках терминала. 32-х битная — все ОК.
 
И решился я на эксперимент по полной смене ориентации, точнее захотелось примкнуть к армии бздунов и лично убедиться есть ли жизнь на той стороне?
 
Для экспериментов взял FreeBSD 10.1 и NetBSD 6.1.5.
 
Начну с NetBSD... судя по истории развития BSD систем, она наиболее породистая (чего нельзя сказать о Linux который без корней и истории).
В NetBSD все стройно, красиво и минималистично. Рабочая система без иксов — 300 метров, с иксами 600, а с портами и исходниками ядра порядка 1.5 гигов.
Простой загрузчик, rc.local, ядро прям в корне и т. п. В ядре масса твиков под разные ноуты и древнюю экзотику, но конфигурить его новичку на порядок сложнее чем в той же фре.
Пакетный менеджер и pkgsrc не могут не порадовать. Но минимум софта (банально просто так не поставишь chromium и slim, не говоря о драйверах nvidia), проблемы с документацией и гемор с нарезкой дисков руками отбили всю охоту продолжать эксперименты. NetBSD безусловно достойна внимания, но она осталась на уровне FreeBSD 2001-го года.
 
Теперь FreeBSD... однозначно с 2001 года фря сильно прогрессировала, там тебе и модули ядра и драйвера для железа и безумное количество софта в портах.
Процесс установки хоть и не такой красивый как в убунте, зато минимум вопросов, очень быстро, а главное на выходе получаем те же 300-600 метров без портов и исходников.
Что радует во фре:
- Русскоязычная документация начиная с handbook (https://www.freebsd.org/doc/ru/books/handbook/), заканчивая man где описан каждый модуль ядра, как его вкомпилить в ядро и как настраивать (man 4) — это реально круто.
- Исходники ядра с базовой системой и менеджером пакетов это один тарбол из одного места от одних разработчиков. Этого достаточно что бы собрать работающую базу с ядром вместо использования  бинарных снепшотов (об этом ниже), все остальное можно получить извне так же из исходников, используя систему портов (тоже один тарбол с сайта).
- Наличие полноценного менеджера пакетов pkg который позволяет ставить бинарные сборки софта вообще не имея на машине портов. При чем порты и pkg можно миксовать, а pkg отлично справляется, например, с удалением пакетов собранных из портов как со своими собственными.
- Минималистичность конфигов — все буквально в нескольких файлах: /boot/loader.conf, /etc/rc.conf (сердце вообще всего), /etc/sysctl.conf и make.conf — не надо лазить по всей файловой системе, все в одном месте которое легко перенести на другую систему.
- Умный загрузчик который находит корень читая прямо /etc/fstab, а модули грузит прямо из файловой системы еще до загрузки ядра (пользователи Linux поймут от чего я так рад).
- Система отлично живет без модулей ядра, а ядро можно уменьшить до 6-ти метров без потери функциональности.
- От devfs никуда не уйти, но, например, procfs фре больше не нужен (все через sysctl), clang вместо gcc, запуск демонов через service, старый добрый syslogd и inetd.
- Все конфиги для человека и нигде не написано — генерится само, не трогать.
- Никто тебя не ограничивает в выборе путей и ничего не навязывает. Можно сделать просто - поставить gnome или KDE, а можно копнуть глубже и ничего за это не будет.
 
Продолжать можно долго, но фря это идеальный компромисс между функционалом Линуксов и Unix традициями с уникальной лаконичностью, ясностью и прозрачностью системы — понятно как все работает и откуда все берется, хэндбук в помощь и не нужны никакие форумы. Все включается одной строчкой в rc.conf, а сборка ядра это 3 минуты на старом Core 2 Duo. Фря идет своим путем не пытаясь угодить всем вокруг, занимаются развитием одни люди которые делают и ядро и окружение, от версии к версии не меняют все и везде, а нововведения строго дозированы — всего в меру и по необходимости.
Как следствие - не надо каждый день ловить обновление ядра, как это любят в Убунте (ее и это не спасает).
 
Из-за этого от фри складывается очень положительное впечатление — это действительно самодостаточная, полноценная операционная система с идеологией и корнями, а не гнушный зоопарк, подрывающий веру в Open source.
 
Теперь попытаюсь расписать как раскатать FreeBSD 10.1 с нуля  и без инсталлятора.
Это полезно знать что бы понимать как оно работает т. к. в итоге имеем массу рецептов на разные случаи жизни.
На изучение и эксперименты ушло порядка недели, до этого никакого опыта с BSD, только Linux.
 
Подготовка носителя
 
Основа любой ОС это носитель на котором она располагается и загрузчик который вдыхает жизнь в компьютер при каждом включении питания.
 
Соответственно сначала необходимо узнать как подготовить диск для новой системы и установить загрузчик.
Бздя использует свою систему разделов, отличную от Linux и Windows и разделов этих может быть много. Она умеет использовать диск в монопольном режиме, но тогда диск будет полностью испорчен для других систем т. к. там не будет ни одной BIOS партиции (которых 4 штуки). Поэтому обычно FreeBSD партиции помещают в одну специально созданную BIOS партицию с типом 165 aka 0xa5 (FreeBSD/NetBSD/386BSD). BIOS партиции в терминах FreeBSD — слайс (что б не было путаницы).
Это накладывает отпечаток и на принцип именования файлов устройств, например: /dev/ada0s1a - это физическое устройство ada0, слайс 1 (т. е. Первая BIOS партиция), раздел 'a' (т. е. первая FreeBSD партиция).
 
Инструментарий для работы с разделами в FreeBSD тоже свой. Например, fdisk, который работает с BIOS партициями совсем другой и не такой простой в освоении как в DOS и Linux. Он умеет бить диск и устанавливать стандартный MBR в нулевой сектор, который сможет загрузить не только FreeBSD, но и другие ОС.
Если захочется установить MBR родной для FreeBSD, то для этого есть команда boot0cfg, но это не лучшая идея.
Для работы с FreeBSD разделами (монопольно или внутри BIOS слайса) используется bsdlabel.
 
Теперь к практике...
 
Данный этап предполагает наличие работающей FreeBSD на машине. Если ее нет или нет желания возиться самому смело пропускаем этот этап и ставим систему инсталлятором из ISO образа с сайта freebsd.org.
 
Для примера я буду использовать memory disk но в реале вместо md0 будет, например, ada0.
 
Подготовка md0 на 4 гига (этот шаг только для демонстрации и не требуется):
dd if=/dev/zero of=disk.img bs=1M count=4000
mdconfig -f disk.img
 
После этого появится /dev/md0 который для системы является физическим диском, но реально находится в файле disk.img.
 
Создаем слайс для FreeBSD на весь диск (подробности в мануале: https://www.freebsd.org/doc/ru/books/handbook/boot-blocks.html):
fdisk -I md0
 
Записываем на диск стандартный MBR (для установки родного MBR, как я уже писал, можно использовать boot0cfg):
fdisk -B md0
 
Создаем на только что созданном первом и единственном слайсе дефолтную разметку FreeBSD:
bsdlabel -w md0s1
 
Устанавливаем в первый слайс загрузчик FreeBSD (т. к. слайс активный MBR с легкостью найдет его и передаст управление загрузчику FreeBSD):
bsdlabel -B md0s1
 
Теперь разбиваем слайс в интерактивном режиме на один или несколько разделов FreeBSD:
bsdlabel -e md0s1
 
Запустится текстовый редактор (скорее всего VI). Размер указывается в секторах по 512 байт,
соответственно прежде чем менять цифры желаемую длину делим на 512 и получаем количество секторов для bsdlabel.
Тип раздела для корня должен иметь тип 4.2BSD, для свопа: swap.
Вместо длины и/или смещения можно использовать '*' - значит на всю длину после последнего раздела (bsdlabel сам вычислит нужные значения).
 
Вот пример файла:
# /dev/md0s1:
8 partitions:
#          size     offset    fstype       [fsize bsize bps/cpg]
  a:    7177006         16    4.2BSD        0     0
  b:    *                         *      swap
  c:    8177022          0      unused        0     0     # "raw" part, don't edit
 
После сохранения и выхода из редактора bsdlabel сделает все что мы заказывали. Теперь форматируем и монтируем корень (вместо mkfs используется newfs):
newfs md0s1a
mount /dev/md0s1a /mnt/
 
Настало время раскатать базовую систему, ядро и порты с исходниками. Взять необходимое можно из дистрибутива на диске (ISO образа) или скачать с сайта.
 
Необходимые файлы (бинаные снепшоты) для 10.1 под amd64 находятся тут:
ftp.freebsd.org/pub/FreeBSD/snapshots/amd64/10.1-STABLE/
 
На диске с дистрибутивом искать тут:
/usr/freebsd-dist/
 
Так же можно скомпилировать всю базовую систему с ядром прямо из исходных текстов (src.txz).
Для справки делается это так - в /usr/src/ делаем:
make buildkernel
make buildworld
make installworld DESTDIR=/mnt/
make installkernel DESTDIR=/mnt/
 
Предположим что решили использовать дистрибутив, для этого монтируем диск в /mnt_dist/ и раскатываем базовую систему:
tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/base.txz
 
Распаковываем стандартное ядро в /boot/kernel либо копируем наше с модулями или без из существующей системы:
tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/kernel.txz
либо:
cp -r /boot/kernel/* /mnt/boot/kernel/
 
По желанию распаковываем исходники системы для сборки ядра:
tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/src.txz
 
Порты можно взять из дистрибутива:
tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/ports.txz
либо скачать актуальный снепшот с ftp.freebsd.org (например, http://ftp.freebsd.org/pub/FreeBSD/ports/ports/ports.tar.gz).
 
Перед chroot монтируем devfs в новую систему (procfs хоть и есть но больше не требуется):
mount -t devfs devfs /mnt/dev/
 
Теперь можно делать chroot в новую систему для начальной настройки:
chroot /mnt /bin/sh
 
Внутри ставим утилиты первой необходимости (нужна сеть, поэтому если есть прокси, то придется установить переменные окружения HTTP_PROXY и HTTPS_PROXY):
pkg install bash mc vim wget sudo (тут все по желанию).
 
Устанавливаем пароль суперпользователя и по желанию меняем шелл:
passwd root
chsh -s /usr/local/bin/bash root
 
Устанавливаем часовой пояс:
tzsetup
 
Создаем /etc/fstab для монтирования корня и подкачки следующего содержания:
/dev/md0s1a    /                    ufs     rw,noatime      1       1
/dev/md0s1b    none            swap    sw                 0       0
# это для Linux
#linproc            /compat/linux/proc linprocfs rw    0       0
#/dev/ada0s2  /u01               ext2fs  ro                    1       2
 
Создаем /etc/host.conf следующего содержания:
hosts
dns
 
На случай последующей сборки монолитного ядра можно сразу создать /etc/make.conf с дефолтными настройками:
KERNCONF=MYKERNEL
NO_MODULES=TRUE
 
Создаем /etc/rc.conf с:
hostname="mynewhost"            # имя хоста
keymap="ru.win"
ifconfig_em0="DHCP"                # настройка сетевого интерфейса, где em0 его имя (ищем подходящий командой ifconfig)
sshd_enable="YES"                   # включаем sshd
dumpdev="AUTO"
hald_enable="YES"                    # нужно для xorg
dbus_enable="YES"                   # нужно для xorg
#linux_enable="YES"                  # для совместимости с Linux
slim_enable="YES"                    # для запуска менеджера дисплея slim
#wlans_urtwn0="wlan0"            # пример для WiFi с USB донглом
#ifconfig_wlan0="WPA DHCP"      # пример для WiFi, потребуется создать 
                                                        # /etc/wpa_supplicant.conf командой wpa_passphrase
sendmail_enable="NO"             # отключаем sendmail
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
cron_enable="NO"                      # отключаем cron
 
Создаем /etc/resolv.conf с:
search mydomain.com              # имя нашего домена
nameserver 192.168.1.1           # адрес DNS сервера
 
В /etc/sysctl.conf добавляем:
kern.ipc.shm_allow_removed=1    # для chrome
#compat.linux.osrelease=2.6.18    # если будут проблемы с эмуляцией Linux
 
В /boot/loader.conf по желанию добавляем:
nvidia_load="YES"               # загрузка драйвера nvidia который установим позже
kern.vty=vt                              # переключаем консоль на VT драйвер с поддержкой UTF-8 и графики
                                                # (должна быть поддержка в ядре)
#ext2fs_load="YES"            # для Linux и если ядро не монолит
#linux_load="YES"              # для Linux и если ядро не монолит
 
В /root/.profile можно указать адрес прокси и локаль:
export HTTP_PROXY=http://login:password@192.168.1.1:8080
export HTTPS_PROXY=http://login:password@192.168.1.1:8080
export LANG=ru_RU.UTF-8
 
Добавляем не root пользователей командой:
adduser
 
По желанию меняем им шелл на bash:
chsh -s /usr/local/bin/bash ИМЯ_ПОЛЬЗОВАТЕЛЯ
 
Что бы работал su добавляем нашего не root пользователя в группу wheel (руками правим /etc/group или прям при добавлении приглашаем его в группу).
 
Если ставим sudo, то в /usr/local/etc/sudoers (лучше командой visudo) раскомментируем строку:
%wheel ALL=(ALL) ALL
 
В домашней директории пользователей в .profile тоже можно указать локаль и прокси (см. выше).
 
Если нужен tsocks ставим его из портов или через pkg, а в /usr/local/etc/tsocks.conf указываем адрес socks прокси:
server = 192.168.1.1
server_type = 5
server_port = 1080
 
Все, если я нигде не ошибся базовая система готова, делаем:
umount /mnt/dev
umount /mnt/
и можно попробовать перегрузиться, выбрав для загрузки наш новый диск.
 
При желании перед этим можно пересобрать ядро. Если кратко:
1) В /usr/src/sys/amd64/conf создаем копию GENERIC и называем ее MYKERNEL (имя платформы в пути не обязательно amd64).
2) Правим MYKERNEL как нам хочется: добавляем то, что упоминается в dmesg и kldstat и выключаем все что не надо, мое ядро в итоге 5.9 мегов.
3) Поднимаемся в /usr/src/ и делаем 'make buildkernel KERNCONF= MYKERNEL'
4) Если все ОК то делаем 'make installkernel' - в /boot/kernel новое ядро, в /boot/kernel.old старое.
 
Т.к. в /etc/make.conf мы указали дефолтное имя ядра, в make его указывать не обязательно, а модулей на выходе не будет за счет NO_MODULES.
 
Если все верно, то после логина под root мы попадаем в новую чистую систему и имеем консоль на русском языке, рабочую сеть и vim с mc.
 
Настраиваем иксы
 
Устанавливаем xorg, hal, dbus и slim, а из портов /usr/ports/x11-fonts/webfonts и для nvidia /usr/ports/x11/nvidia-driver.
При сборке драйверов nvidia отключаем совместимость с Linux.
 
В /etc/rc.conf мы уже включили  hald и dbus ранее, поэтому теперь только запускаем руками:
service hald start
service dbus start
 
Загружаем руками драйвер nvidia (после перезагрузки подцепится сам благодаря /boot/loader.conf):
kldload nvidia
 
Запускаем Xorg с ключом -configure и получаем в /root/xorg.conf.new дефолтный конфиг иксов.
Переносим его в /etc/X11/xorg.conf и правим.
 
В секции "Module" нужны 'Load "glx"' и 'Load "freetype"'.
 
В "Files" если нет добавляем FontPath для:
/usr/local/lib/X11/fonts/TTF/
/usr/local/lib/X11/fonts/Type1/
/usr/local/lib/X11/fonts/cyrillic/
/usr/local/lib/X11/fonts/dejavu/
/usr/local/lib/X11/fonts/LinLibertineG/
/usr/local/lib/X11/fonts/Liberation/
/usr/local/lib/X11/fonts/GentiumBasic/
/usr/local/lib/X11/fonts/Carlito/
/usr/local/lib/X11/fonts/Caladea/
/usr/local/lib/X11/fonts/bitstream-vera/
/usr/local/lib/X11/fonts/webfonts/
 
Для nvidia в "Device" прописываем:
Driver "nvidia"
Option "RenderAccel" "true"
Option "AllowGLXWithComposite" "true"
 
И не забываем добавить:
Section "Extensions"
  Option "Composite" "Enable"
  Option "RENDER" "Enable"
EndSection
 
Конфиг slim в /usr/local/etc/slim.conf
Можно поискать для него темы в Инете и положить распакованные директории с ними в:
/usr/local/share/slim/themes/
 
После этого в slim.conf в current_theme указываем имя темы. Больше ничего трогать не требуется.
 
Иксы готовы.
 
Переходим к оконному менеджеру и оформлению
 
Рассмотрим вариант с openbox, но не менее интересны awesome и evilwm.
 
Ставим (pkg install или /usr/ports/): openbox, openbox-themes, obconf, obmenu, xrandr, xbindkeys, feh, xcompmgr, trayer и alltray.
 
По желанию: pcmanfm, lxpanel, gnome-ssh-askpass2, rox, xscreensaver или xlockmore, gkrellm, transset, tint2 и conky.
 
Скорее всего понадобится: thunderbird, pidgin, chromium, putty и libreoffice с пакетом локализации ru-libreoffice и ru-hunspell, vlc, gqview, mupdf или xpdf.
 
В домашней директории не root пользователя создаем .xinitrc:
 
Там можно указать адрес прокси как в .profile и прописываем локаль:
export LANG=ru_RU.UTF-8
export LC_ALL=ru_RU.UTF-8
 
Если хотим что б пароль от ssh ключей спрашивался не в консоли:
export SSH_ASKPASS=/usr/local/bin/gnome-ssh-askpass2
 
Опять же для ssh лучше запустить это:
killall ssh-agent
eval `ssh-agent`
 
Если мониторов несколько, то можно указать кто где и установить основной (в примере основной DVI-I-1 и он слева):
xrandr --output DVI-I-1 --primary --left-of VGA-0
 
Выключаем бип в терминале если напрягает писк:
xset b 0
 
Раскладка клавиатуры и форма указателя мыши:
setxkbmap -layout "us,ru" -option "grp:ctrl_shift_toggle,grp_led:scroll"
xsetroot -cursor_name left_ptr
 
Устанавливаем фон рабочего стола:
feh --bg-center $HOME/Pictures/background.png
 
Либо стартуем pcmanfm для отображения иконок на столе, там же настраивается фон. К сожалению пропадает меню openbox по правой кнопке (для evilwm не страшно):
pcmanfm --desktop &
 
Если нужна панелька:
lxpanel &
 
Горячие клавиши из .xbindkeysrc:
xbindkeys &
 
Плавное затухание окошек и тени (теней у меня не появилось):
xcompmgr -cfCF -D 3 &
 
Лоток с уведомлениями в правом нижнем углу:
trayer --expand true --edge bottom --align right --widthtype request --transparent true --tint black --SetDockType true --alpha 256 &
 
Хранитель экрана если не хотим обычный xlock (xlock'а достаточно и он быстрее):
xscreensaver -no-splash &
 
Монитор при желании (для evilwm делаем позднее):
gkrellm &
 
Загрузка ssh ключей при старте:
ssh-add < /dev/null &
 
Важные приложения в трее:
alltray thunderbird &
pidgin &
 
И в финале:
exec openbox
либо:
exec awesome
 
Если evilwm то немного не так:
evilwm -snap 10 -bw 2 -fg red -app gkrellm/Gkrellm -dock -app Pidgin/Pidgin -dock -app Mail/Thunderbird -dock &
exec gkrellm (либо exec xterm)
 
В .Xdefaults делаем красивым xterm:
XTerm*foreground: green
XTerm*cursorColor: green
XTerm*background: black
XTerm*SaveLines: 1000
XTerm*faceName: xft:Terminus:pixelsize=20:antialias=true
XTerm*utf8: 1
 
В .xbindkeysrc вешаем горячие клавиши на блокировку экрана и запуск терминала:
"xlock"
  Control+Alt + Delete
 
"xlock"
  Control+Alt + l
 
"xterm"
  Control+Alt + Return
 
"putty"
  Control+Alt + p
 
 
Вместо xlock можно указать "xscreensaver-command -lock", но тогда в .xinitrc не забываем про xscreensaver.
 
Меню openbox меняем в .config/openbox/menu.xml (за основу можно взять дефолтное из /usr/local/etc/xdg/openbox/). Редактировать можно руками или командой obmenu.
 
Рестрат, логин и мы в иксах с красотой.
 
Последний штрих - в obconf можно выбрать оформление окон и поведение openbox.
У меня тема: spiffe.
 
Ну вот и все, дольше писал :)
 
Фрю моно взять тут:
https://www.freebsd.org/where.html
 
Мануал на русском тут:
https://www.freebsd.org/doc/ru/books/handbook/
 
Не забываем про man.

Хорошие ссылки по теме:
www.oldnix.org/openbox-tint-archlinux/
Ниже примеры моих конфигов.
 
Примеры конфигов

 /etc/X11/xorg.conf
===
 
Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        Screen      1  "Screen1" RightOf "Screen0"
#       Screen      2  "Screen2" RightOf "Screen1"
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
        Option          "AllowEmptyInput" "off"
EndSection
 
Section "Files"
        ModulePath   "/usr/local/lib/xorg/modules"
        FontPath     "/usr/local/lib/X11/fonts/misc/"
        FontPath     "/usr/local/lib/X11/fonts/TTF/"
        FontPath     "/usr/local/lib/X11/fonts/OTF/"
        FontPath     "/usr/local/lib/X11/fonts/Type1/"
        FontPath     "/usr/local/lib/X11/fonts/100dpi/"
        FontPath     "/usr/local/lib/X11/fonts/75dpi/"
        FontPath     "/usr/local/lib/X11/fonts/Droid/"
        FontPath     "/usr/local/lib/X11/fonts/cyrillic/"
        FontPath     "/usr/local/lib/X11/fonts/dejavu/"
        FontPath     "/usr/local/lib/X11/fonts/encodings/"
        FontPath     "/usr/local/lib/X11/fonts/util/"
        FontPath     "/usr/local/lib/X11/fonts/LinLibertineG/"
        FontPath     "/usr/local/lib/X11/fonts/Liberation/"
        FontPath     "/usr/local/lib/X11/fonts/GentiumBasic/"
        FontPath     "/usr/local/lib/X11/fonts/Carlito/"
        FontPath     "/usr/local/lib/X11/fonts/Caladea/"
        FontPath     "/usr/local/lib/X11/fonts/bitstream-vera/"
        FontPath     "/usr/local/lib/X11/fonts/webfonts/"
EndSection
 
Section "Module"
        Load  "glx"
        Load  "freetype"
EndSection
Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection
 
Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Protocol" "auto"
        Option      "Device" "/dev/sysmouse"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection
 
Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection
 
Section "Monitor"
        Identifier   "Monitor1"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection
 
Section "Monitor"
        Identifier   "Monitor2"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection
 
Section "Device"
        Identifier  "Card0"
        Driver      "nvidia"
        BusID       "PCI:1:0:0"
        Option      "RenderAccel" "true"
        Option      "AllowGLXWithComposite" "true"
EndSection
 
Section "Device"
        Identifier  "Card1"
        Driver      "nvidia"
        BusID       "PCI:1:0:0"
        Option      "RenderAccel" "true"
        Option      "AllowGLXWithComposite" "true"
EndSection
 
Section "Device"
        Identifier  "Card2"
        Driver      "vesa"
        BusID       "PCI:1:0:0"
EndSection
Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection
 
Section "Screen"
        Identifier "Screen1"
        Device     "Card1"
        Monitor    "Monitor1"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection
Section "Screen"
        Identifier "Screen2"
        Device     "Card2"
        Monitor    "Monitor2"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection
 
Section "Extensions"
        Option "Composite" "Enable"
        Option "RENDER" "Enable"
EndSection
 
$HOME/.xinitrc
===
#!/usr/local/bin/bash
 
#session=$1
session="openbox"
 
export HTTP_PROXY=http://192.168.1.1:8080
export HTTPS_PROXY=http://192.168.1.1:8080
 
export LANG=ru_RU.UTF-8
export LC_ALL=ru_RU.UTF-8
 
export SSH_ASKPASS=/usr/local/bin/gnome-ssh-askpass2
 
killall ssh-agent
 
eval `ssh-agent`
 
xrandr --output DVI-I-1 --primary --left-of VGA-0
 
xset b 0
 
setxkbmap -layout "us,ru" -option "grp:ctrl_shift_toggle,grp_led:scroll"
 
xsetroot -cursor_name left_ptr
 
feh --bg-center $HOME/Pictures/background.png
 
#pcmanfm --desktop &
 
xbindkeys &
 
xcompmgr -cfCF -D 3 &
 
trayer --expand true --edge bottom --align right --widthtype request --transparent true --tint black --SetDockType true --alpha 256 &
 
#xscreensaver -no-splash &
 
ssh-add < /dev/null &
 
if [ "$session" != "evilwm" ]
    then gkrellm &
fi
 
alltray thunderbird &
pidgin &
 
case "$session" in
 
    openbox)
        exec openbox
        ;;
 
    awesome)
        exec awesome
        ;;
 
    evilwm)
        evilwm -snap 10 -bw 2 -fg red -app gkrellm/Gkrellm -dock -app Pidgin/Pidgin -dock -app Mail/Thunderbird -dock &
        exec gkrellm
        ;;
 
    *)
        exec openbox
        ;;
esac
 
MYKERNEL
===
cpu             HAMMER
ident           MYKERNEL
options         SCHED_ULE               # ULE scheduler
options         PREEMPTION              # Enable kernel thread preemption
options         INET                    # InterNETworking
options         TCP_OFFLOAD             # TCP offload
options         FFS                     # Berkeley Fast Filesystem
options         SOFTUPDATES             # Enable FFS soft updates support
options         UFS_DIRHASH             # Improve performance on big directories
options         UFS_GJOURNAL            # Enable gjournal-based UFS journaling
options         MSDOSFS                 # MSDOS Filesystem
options         CD9660                  # ISO 9660 Filesystem
options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI
options         SYSVSHM                 # SYSV-style shared memory
options         SYSVMSG                 # SYSV-style message queues
options         SYSVSEM                 # SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options         PRINTF_BUFR_SIZE=128    # Prevent printf output being interspersed.
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         SMP                     # Symmetric MultiProcessor Kernel
device          cpufreq
device          acpi
options         ACPI_DMAR
device          pci
device          ahci                    # AHCI-compatible SATA controllers
device          scbus                   # SCSI bus (required for ATA/SCSI)
device          da                      # Direct Access (disks)
device          cd                      # CD
device          pass                    # Passthrough device (direct ATA/SCSI access)
device          vt
device          vt_vga
device          em                      # Intel PRO/1000 Gigabit Ethernet Family
device          re                      # RealTek 8139C+/8169/8169S/8110S
device          loop                    # Network loopback
device          random                  # Entropy device
device          ether                   # Ethernet support
device          md                      # Memory "disks"
device          bpf                     # Berkeley packet filter
device          uhci                    # UHCI PCI->USB interface
device          ehci                    # EHCI PCI->USB interface (USB 2.0)
device          usb                     # USB Bus (required)
device          uhid                    # USB generic HID support
device          ukbd                    # Keyboard
device          ums                     # Mouse
device          umass                   # Disks/Mass storage - Requires scbus and da
device          sound                   # Generic sound driver (required)
device          snd_hda                 # Intel High Definition Audio
 

25.02.2015, опять массовая эвакуация машин от дома 1 на Южнобутовской, причина очевидно как обычно - знак 3.29 который с 18 февраля 2015 решением Окружной комиссии ЮЗАО по безопасности дорожного движения должен перестать существовать.
Примерно в 15 часов увезли все машины от подъездов дома 1.





Очень нравится им наш дом т.к. теперь приезжают чуть ли не через день. Вот куда идут средства города - на борьбу с жильцами дома 1 на улице Южнобутовская. И хоть раз бы приехал инспектор ГИБДД... нет, Южное Бутово отдали для поборов МАДИ.

Ну судя по этому видео, даже инспектор МАДИ в ночное время тут не требуется. Т.к. человек на видео решил уклониться от ответа на просьбу представиться и никаких опознавательных знаков кроме надписи Московский Паркинг как у обычного эвакуаторщика у него нет, у меня сложилось впечатление что это и был обычный эвакуаторщик, который не имеет полномочий на арест автомобиля. Следовательно это угон который покрывают инспектора МАДИ, составляя и подписывая протоколы в теплом кабинете на Миклухо-Маклая 38 по фотком и со слов эвакуаторщиков. Свидетелей же нет (2 ночи в воскресенье, что по факту, что в протоколе), а значит можно делать все что хочется, главное что б не поймали.

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

Главное не отдавать машину т.к. в этом случае бегать по судам придется уже нам! На это и рассчитывают аферисты прикрываясь законом.
5т налом на стоянке выложит любой, только не оставлять дорогую собственность на ночь охране сомнительного происхождения. Ведь если что - все только через суд! Все для удобства кого угодно, но только не жильцов города.
3т штрафа по почте через Банк вообще "мелочь" после этого.

В общем цепанули машину которая приглянулась - Мазду 3 из серединки и погнали на спец. стоянку даже не выписав штрафы остальным. Штраф в казну, а 5000 рублей налом это 5000 налом.

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

На жалобу в МАДИ на самый первый случай ожидаемо ответили - правило парковки нарушено, уполномоченное лицо имеет право эвакуировать автомобиль, водитель должен это знать. Формально правы если бы не масса лицемерия и не вопросы по поводу личности уполномоченного лица на видео.
Печально что никто за ними не следит, а сами должностные лица МАДИ с радостью покрывают беспредел творимый их сотрудниками на дорогах ЮАО и ЮЗАО.

А вот письмо из префектуры ЮЗАО:





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

К счастью все равно далеко не всем. Это доказывает письмо из префектуры и законопроект в части обязательности информирования владельца о возможной принудительной эвакуации транспортного средства от ЛДПР:
ldpr.ru/events/yaroslav_nilov_evacuation_only_after_a_telephone_warning/

В любом случае эвакуация должна быть обоснованной т.к. обязательной эвакуации за нарушение правил стоянки и остановки не предусмотрено, и желательно что бы решение принимал инспектор ГИБДД, а не "наемник".