Блог:Точка Росы

Материал из Rosalab Wiki
Перейти к: навигация, поиск
Rosa-point-logo2.png

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

Если вы умеете пользоваться агрегаторами RSS/Atom, подписывайтесь!. По любым вопросам можно писать сюда.

Весь контент данного блога распространяется на условиях Creative Commons Attribution-ShareAlike 3.0 License (CC-BY-SA)

WBEM — открываем возможности локализации

Wbem-l10n.png

Многим известно, а остальные догадываются, что браузеры умеют передавать веб-серверу список предпочитаемых пользователем языков. Реализуется это с помощью специального http-заголовка Accept-Language. Например, его значением может быть:

ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3

Получив эту строку, веб-сервер понимает, что пользователь хочет получить информацию прежде всего на русском языке, причем на его разновидности, принятой в России. Если это невозможно — просто на русском, в крайнем случае на английском (американском), и на худой конец — любом английском.

В случае наличия подходящего контента веб-сервер сможет удовлетворить пользователя, условно говоря, на 100%, 80%, 50% и 30% соответственно.

Но этот механизм работает не только в вебе для обычных смертных. В стандартизированном наборе технологий для управления предприятием через веб, WBEM (Web-based Enterprise Management), предусмотрена подобная возможность получать с управляемых устройств информацию на языке, предпочитаемом администратором.

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

В Linux есть несколько (как всегда) вариантов внедрения WBEM. Один из них — использовать

  • на стороне управляемого компьютера проверенный временем CIM-сервер Pegasus, разработанный командой The Open Group;
  • а на стороне управляющего — молодую, но многообещающую библиотеку для Python'а lmiwbem, разработанную в Red Hat.

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

Наше решение — добавить в объект WBEMConnection соответствующее свойство requestAcceptLanguages.

Предложение было принято разработчиками, и в версии lmiwbem, следующей за версией 0.3.1, становится возможным следующее [1]:

import lmiwbem
conn = lmiwbem.WBEMConnection()
# Get Accept languages
 
print conn.request_accept_languages
# Set Accept languages
 
conn.request_accept_languages = [("ru", 1.0), ("en", 0.5)]
 

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

ROSA не обидится на ваши измены — запоминаем выбор последней загруженной системы


Времена Единственной Операционной Системы давно миновали, и сейчас вполне нормально не бессмысленно ждать Единственную и Идеальную[1], а завести себе их несколько — насколько позволяют время и силы. Для работы одну, для развлечений — другую, для высоких исследований — третью…

Как ты мог мне изменить с ней.png

И ROSA не обидится на ваше непостоянство, наоборот, будет мирно сожительствовать, и поддерживать ваш выбор.

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

Это удобно, гуманно и т.п., ибо пользователем ожидается, что после перезагрузки (операции странной, вынужденной, ненужной пользователю), он окажется там, где был, а не в какой-то другой непонятной системе — многие домашние пользователи вовсе боятся загрузочного выбора, ожидая появления «настоящей системы». И даже опытному пользователю неприятно ждать при перезагрузке, чтобы выбрать то, что нужно, а нужно, с большой степенью вероятности, именно то, что было до этого. Впрочем, опытный пользователь, если и недоволен, уберет эту эвристику за пару секунд. Ведь речь идет всего-лишь о добавлении пары строчек в /etc/default/grub

GRUB_SAVEDEFAULT=true
GRUB_DEFAULT="saved"

Так что если у вас даже не РОСА, а что-то другое, загружаемое GRUB2-ом, то вы можете настроить все это вручную. Не забудьте кстати вызвать sudo update-grub2, после правки /etc/default/grub.

А в новой ROSA Fresh R4, которая вот-вот выйдет, все это будет по умолчанию.

Надеюсь, эта новость вас…

Ввела в экстаз ^_^12
17%
Порадовала :)53
76%
Оставила равнодушным -_-5
7%
Огорчила :(0
0%
Так что не бойтесь поставить Росу в дополнении к вашим системам — места много не займет, не будет мешать вам ходить к вашим старым подругам… вы даже можете ее не любить — она все равно будет ждать и надежно работать для вас.
  1. Операционную систему, конечно же

«НТЦ ИТ РОСА» на «Инфобереге 2014» — итоги участия

Руководство «НТЦ ИТ РОСА» посетило Алушту в рамках участия в XIII всероссийской конференции «Информационная безопасность. Региональные аспекты. ИнфоБЕРЕГ-2014».

Наибольший интерес участников конференции вызвала тема импортозамещения, а одним из самых популярных стал доклад президента и генерального конструктора «НТЦ ИТ РОСА» Владимира Рубанова «От открытого кода — к отечественным сертифицированным системам».

Заменить импортное ПО на написанное «с нуля» российскими программистами во всех сегментах — утопия. Однако есть возможность быстрого рывка к технологической независимости за счет использования открытых свободных технологий, на развитие которых у нас есть все технические возможности и юридические права даже при угрозе самых жестких санкций. Однако само по себе открытое ПО бесполезно без создания локальной инфраструктуры его разработки и наращивания локальной компетенции специалистов. Компания «РОСА» занимается задачей построения такой независимой инфраструктуры и экспертизы с момента основания. Результаты вылились в линейку российских операционных систем, которые могут поддерживаться и развиваться даже в условиях международной изоляции. В докладе мы поделились этим опытом и предложили коллегам масштабировать данную модель для обеспечения технологической независимости в других сегментах — рассказывает Владимир Рубанов, президент и генеральный конструктор «НТЦ ИТ РОСА».

→ продолжить чтение…

PDF-браузинг у нас в GNOME ОК

Вебтехнологии захватывают все, даже продукты превращаются в сервисы, а программы в странички в веб-браузере, что же говорить про обычное чтение — в эти же страницы упали газеты/журналы/книги, и если раньше чтение ассоциировалось с настольной лампой и теплым клетчатым пледом, неторопливым шелестом бумаги с последовательным чтением увесистого томика под беззвучное шевеление губами, то сейчас — с зомбированным взглядом в светящийся жидкокристаллический экран с шевелением уже не губами, а пальцами. Чтобы прыгать этим самым веб-браузером по ссылкам, и возвращаться обратно, позволяя пытливому разуму обходить бесконечное Дерево Знаний, то забуриваясь в глубину, то ускоряясь вниз, то выныривая вверх. Впрочем, граммарнаци отпинали бы сейчас меня не только за двойной призыв «веб-браузера» в предложении, но и за само слово, — ведь это же тавтология, это на гнилом западе webbrowser, а у нас просто «браузер», другого нет, и не будет…

На самом деле есть — есть еще и PDF-браузер. PDF до сих пор еще остается непревзойденным форматом, когда нужен читать хорошо сверстанный текст с изображениями, где формулы не выпрыгивают из строчек, изображения мягко обтекаются колонками текста с грамотно расставлеными переносами. Да, обычный худлит все равно в чем читать, но вот хорошо сверстанные учебники, с формулами и иллюстрациями, гиперссылками на определения и теоремы… — для этого нужен настоящий PDF-браузер — не просто читалка с прокруткой, и навигацией по страницам, но именно настоящий гипертекстовый подход — «перейти по ссылке, вернуться обратно», и чувствуя себя Тезеем с страховочной нитью, можно смело погружаться в лабиринты ссылок в гипертекстовых книгах.

В качестве примера подобной электронной книги, с формулами и гипертекстом, я, чисто для иллюстрации, нескромно порекомендую свой учебник.

И с этим в Linux-мире вроде все отлично — под KDE живет Okular, под GNOME — Evince, знакомый обычным пользователям скромно по должности «Просмотрщик документов» и с этим все хорошо.

А, на самом деле нет. В GNOME нехорошо.

Evince with broken navigation.png

В Evince задумана функциональность «Back», есть кнопка для этого на аскетическом интерфейсе, есть стандартный хоткей «ALT+←», но… оно не работает, тупо бросая на предыдущую страницу. Ужас, кошмар, нить Тезея порвалась, Ариадна его не дождется… придется ставить Okular.


Good news, everyone!

Мы починили это! Ну, на самом деле, даже не пришлось писать патч, мы нашли малоизвестный патч в соответствующем баге, и у нас в GNOME теперь все хорошо! Через пару-тройку лет, с вероятностью 50%, возможно этот патч попадет во все дистрибутивы…, так что если кто читает это и строит какой-нибудь GNOME-дистрибутив — рекомендуем сделать это прямо сейчас, это один из таких мерзких кирпичиков, из-за которых многие считают, что на «планете GNOME» жизнь невозможна.


Надеюсь, эта новость вас…

Ввела в экстаз ^_^4
25%
Порадовала :)9
56%
Оставила равнодушным -_-2
13%
Огорчила :(1
6%

Наши инструменты в дистрибутиве Debian


В компании «НТЦ ИТ РОСА» разрабатывается множество инструментов для автоматизации тестирования различных компонентов ОС. Большинство из них мы делаем достаточно универсальными и публикуем их под свободной лицензией GPL для того, чтобы поделиться наработками с Linux-сообществом. Согласно отзывам, за время нашего существования эти инструменты нашли свое место среди повседневных средств разработки у нескольких сотен разработчиков системных библиотек по всему миру, а также у мейнтейнеров десятков дистрибутивов Linux.

На этот раз наши инструменты пришли и в Debian-сообщество. На конференции DebConf14 был доклад (см. видео доклада ACC for abi breaks), посвященный опыту использования наших инструментов для разработки дистрибутива Debian. В докладе были освещены такие инструменты, как ABICC, Upstream Tracker, ABI Dumper, API Sanity Checker и др. На основе инструмента ABICC разработчиками Debian был создан адаптированный к Deb-пакетам инструмент dh-acc.

Это уже не первый раз когда наши наработки упоминают на конференциях. Например, в 2013 году ведущий разработчик Qt Thiago Macieira рассказал на конференции LinuxCon о поддержке бинарной совместимости библиотек со ссылкой на инструмент ABICC в качестве основного средства тестирования (см. видео доклада Binary compatibility for library developers).

Автоматическое обновление метаданных в urpmi


Мэйнтейнеры, имеющие дело с разработческими версиями Росы, часто сталкиваются с ситуацией, когда urpmi не может обновить тот или иной пакет по той причине, что в репозиториях уже собрана более новая версия пакета, а той, что указана в метаданных, имеющихся у urpmi, уже не существует. В таких ситуациях приходится сначала запускать urpmi.update и снова пробовать установить нужный пакет. Конечно, можно просто всегда запускать urpmi --auto-update, но работа этой команды может затянуться, а обновить конкретный пакет, как водится, нужно срочно.

Хорошая новость — теперь (в ветке rosa2014.1, которая превратится в ROSA Desktop Fresh R4) urpmi сам в состоянии обновить метаданные и перезапуститься в случае, если что-то пошло не так с закачкой файлов и есть подозрение, что обновление метаданных поможет решить эту проблему. Такое поведение является теперь поведением по умолчанию; отключить его можно с помощью опции «--no-restart». Кроме того, можно заставить urpmi обновлять метаданные не сразу при обнаружении проблемы, а после некоторого таймаута — соответствующее время ожидания можно задать с помощью опции «--download-timeout». Последняя особенно актуальна для ABF, где сборки пакетов иногда завершаются неудачно из-за того, что старая версия какого-то пакета из репозиториев уже удалилась, а метаданные для новой еще не сгенерировались. Когда ABF переедет на новый urpmi, таких проблем должно стать меньше.

Новая возможность urpmi актуальна прежде всего для разработчиков. Большинство обычных пользователей с подобными проблемами сталкиваются редко — во всяком случае, если они не отключали себе автоматические уведомления о доступных обновления, так как для таких уведомлений urpmi.update выполняется автоматически на регулярной основе, а обновления пакетов для уже выпущенных систем происходят реже, чем для разработческих версий. Впрочем, пользователи тоже бывают разные, и кто-то наверняка заметит, что количество ручных действий при установке пакетов теперь несколько сократилось.

Откапываем забытый Tray — панель уведомлений снова видна в режиме обзора

Slowpoke News.png

Итак, сегодня у нас новый жанр — Slowpoke news! Расскажем о доработке, которую сделали еще в прошлом году, но никак не доходили руки ее описать, обосновав, почему это правильно.

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

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

Но. Для всех остальных 99.99…99% пользователей это слишком. Стало понятно, что надо дать возможность быстро переключатся между самыми активными приложениями — для этих приложений были рождены концепции панелей, или как в GNOME SHELL, переключения по миниатюрам окон в режиме обзора, плюс последовательное переключение по Alt-Tab. А кучу фоновых процессов-приложений надо куда-то деть, чтобы они могли не сильно отсвечивая, показывать свой статус, и пытаться привлечь внимание, если стало совсем невтерпежь. Это и разные мессенджеры, чатилки, почтооповещалки, звонилки-говорилки, музыкальные плееры, обновлялки софта, мониторинги питания и здоровья оборудования, и т.п. Для них потребовалось уметь представить себя компактной инфографической иконкой, отражающей состояние и необходимость реакции, и для них появился отдельный концепт — «tray», системный трей, он же «область уведомлений», он же «область статусов», … как только его не называли, иногда даже груба калькируя с английского, как «лоток» и «поддон».

Icons in Windows tray.png

И в этом «поддоне» продолжалась борьба приложений за внимание пользователя и жизненное пространство — продвинутый пользователь в Windows, где огромное количество фоновых приложений с tray-интерфейсом[1] забивали его подзавязку, и приходилось разруливать, кто допущен в видимую область всегда, кому разрешается помахать флажком уведомлений при необходимости, а кого надо вообще спрятать от греха подальше. Ну и добраться до конкретного трей-приложения, когда их несколько десятков, все они нарисованы микроиконками 16×16, и надо либо тупо смотреть на этот пазл, напоминающий старые пиксельные головоломки, либо подводить к каждому курсор, надеясь, что всплывающая подсказка поможет вспомнить, «кто все эти люди?».

В сети можно найти много совсем страшных картинок, но для примера я приложил tray со своего Windows-десктопа — видно, что совсем, совсем непросто рыться в этой куче.


При проектировании интерфейса GNOME SHELL, был сделан очередной подход решить эту проблему. Там введено, условно говоря, два трея — верхний и нижний.

Верхний
растет с правого верхнего угла в верхней, классической GNOME-панели, там основные иконки статуса оборудования — зарядка-звук-клавиатурная раскладка и туда пускают некоторые другие приложения по специальному списку избранных. Можно редактировать этот список, можно ставить специальные расширения, чтобы пустить еще кого-то, например, мы по умолчанию в нашем GNOME устанавливаем Skype Integration, и при запущенном скайпе там всегда будет видно, есть ли там что читать, или нет. Собственно, для нелинукс-пользователей все это похоже на MacOS с menulet-ами, и да, Apple тоже бореться с их засильем, запрещая все лишнее, а народ пишет дополнения («Menu Extra Enabler», и т.п.), чтобы туда что-то засунуть.
Нижний
Он же «message bar», но наверно привычней для русского уха называть его «нижним треем». Там сидят все фоновые приложения. Им дали большие иконки 48×48[2], в них легко попасть и мышью, и пальцем на тачскрине. Единственное ограничение — их не видно, нижний трей скрыт от глаз пользователя.
Gnome-trays.png

Это все реализация GNOME-подхода, что пользователь — это не оператор АЭС, который должен следить и переключатся между сотней датчиков и приложений, а должен быть сфокусирован на своей основной задаче, и все лишнее не должно его отвлекать.

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

Благородная цель, неплохая идея, дело за малым — чтобы можно было легко и интуитивно в этот поддон заглянуть.

И вот тут, не слава богу.

В нижний трей можно заглянуть:

  • «По-смартфонному» — оттянув пальцами по экрану нижний край вверх. Да, понятно тач-пользователям, но увы, большинство даже лептопов без тачскрина, и даже если он есть, а работа идет по десктопному, с клавиатурой-тачпадом-мышью, перенос пальцев на экран — тяжелейшая операция, т.е. для десктопа это не вариант.
  • «Пробить мышью дно» — надо доехать курсором до дна нижнего края экрана, и <начать рыть, продолжить ломится дальше — т.е. продолжить гладить тачпад, либо скоблить мышью по столу — просто доехать до конца и подождать — обычно не срабатывает. Возможно тут еще и глюки механизма, но даже, если бы он работал идеально — это не ОК, ибо догадаться о том, что с некоторой задержкой нижний край как-то реагирует — это дико нетривиально для обычного пользователя. Конечно, если пользователь уже столкнулся с Windows 8 он в цирке не смеется он уже привык исследовать края экрана, но все-таки это не гуд. Особенно не гуд этот метод, для продвинутых пользователей, активных операторов, печатающих и не желающих, чтобы мышь и фокус внимания и ввода куда-то переключался.
  • Для таких пользователей, нужен хоткей, позволяющий на секунду заглянуть в поддон, не сбивая положение курсора, и рук на клавиатуре. И да, такой хоткей есть. «WIN-M». Неизвестный (для продвинутого Windows-пользователя это минимизация окна), неочевидный («Win-M?, Mmmm? WAT?»), и неудобный (одной рукой вслепую не нажать).

При том, что есть такая кнопка, которая известна всем пользователям, без которой в GNOME Shell вообще ничего не сделать, про которую твердят обучающие ролики при установке системы… Это WIN! Кнопка «WIN», про которую мы уже писали в Blog:Точка Росы/Хоткеи для Windows-свитчеров. Смело переходите на GNOME!, и Blog:Точка Росы/Кнопка WIN ваш лучший друг! Учим горячие клавиши в GNOME.

Именно она создана для того, чтобы вырвать пользователя из фокуса на текущем приложении и перевести в режим «Обзора», обзора всего, и именно в этом режиме изначально показывался нижний трей, он же message bar, что было совершенно логично. Но в районе 3.4 гнома они это выпилили (больше минимализма для бога минимализма!), и залили «подвал бетоном» — нижним треем стало абсолютно неудобно пользоваться.


Good news, everyone!

Мы починили это и вернули нижний трей в режим обзора.

Gnome-tray-in-view-mode.png


И теперь, постфактум, спросим — а не зря ли?

Надеюсь, эта новость вас…

Ввела в экстаз ^_^29
45%
Порадовала :)26
40%
Оставила равнодушным -_-8
12%
Огорчила :(2
3%



Update
Похоже, все-таки это мы сделали зря — хотя голосование в среднем одобрительное, мы получали негативные отзывы об этой доработке (см. например [1]), а так как отключаемой (через расширения) эту функциональность реализовать нам пока не удалось, мы решили начиная с GNOME 3.12 отключить эту доработку. К тому же неутомимые гномеры вовсе решили в свежих версиях гнома отказаться от нижнего трея.
  1. Одни только кучи независимых обновлялок для разных приложений чего-то только стоят, или какие-нибудь твикеры-улучшатели десктопного поведения, драйвера устройств ввода и графических карт… чего там только нет, весь сонм виндовс-утилит, драйверов и прочих софтин лез в tray…
  2. Разумеется, если их и там будут сотни, они начнут скейлится и сжиматься, но изначально им выдан здоровый кусок нижнего края экрана целиком, плюс под Linux не нужны автообновлялки к каждому приложению, в общем, хороший шанс уложится без утрамбовки.
  3. Официальная новость по итогам IT Campus 2014

    Подведены итоги масштабного мероприятия для ИТ-специалистов, прошедшего 25-27 июля 2014 года в Калужской области.

    ITCampus – это новое мероприятие для «айтишников» разной специализации: разработчиков программного обеспечения, web-разработчиков, системных администраторов, «гуру» информационной безопасности и даже digital-маркетологов. Целью был сбор представителей ИТ-отрасли, объединенных девизом: «Информационные технологии должны быть доступны всем».

    В 2014 году IT Campus посетили более 1500 участников из десятков городов России и некоторых стран СНГ и Балтии, в их числе — и представители компании «РОСА». Основное внимание организаторы уделили конференционному блоку, который проводился в три параллельных потока на протяжении двух дней. Спикеры сделали более 40 докладов, провели несколько мастер-классов и панельных дискуссий. В числе вызвавших наибольший интерес аудитории выступлений можно отметить: «Взломать за 60 секунд» Андрея Масаловича из компании «Инфорус», «Жизнь после Сноудена» Виталия Федорова из «Лаборатории Касперского», «Что такое PostgreSQL?» Олега Бартунова (ведущий разработчик PostgreSQL), «IT-стартапы в сфере B2B» Рустема Хайретдинова (акционер InfoWatch и владелец Appercut), доклад Cтаса Фомина («РОСА») и множество других выступлений.

    Директор по технологиям компании «РОСА» Стас Фомин выступил ведущим секции по Open Source (свободному ПО, СПО), где в интерактивном взаимодействии с участниками были развенчаны мифы, связанные с этой моделью, обсуждены тренды в мире СПО. Стас рассказал о проблемах, с которыми часто сталкиваются производители продуктов на основе открытого кода и системные администраторы таких систем, а также уделил внимание проблемам безопасности СПО и особенностям для коммерческих проектов.

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

    По завершении докладов и мастер-классов «жители» IT Campus могли принять участие в развлекательной программе, включающей спортивные соревнования, катание на сигвеях и квадроциклах, профессиональные конкурсы CTF и турнир по Quake 3. Кроме того, можно было посетить ярмарку ИТ-вакансий, концертную программу, посмотреть на гигантский костер и праздничный салют.

    IT Campus прошел в живописном месте на берегу Оки. Проживание участников было организовано в палаточном городке. При этом гостями была отмечена хорошо подготовленная инфраструктура: наличие парковки для автотранспорта, санитарных зон, душевых, электричества и Интернета. Помощь в работе лагеря оказывали охрана, медики, представители УВД и МЧС, а также волонтеры.

    Партнерами IT Campus 2014 стали «Лаборатория Касперского», Microsoft, EMC, HP, Veeam, Acronis, Develonica, Luxoft, "РОСА" и другие. Помощь в организации конференционного блока оказала «Академия Информационных Систем».

    Фотоотчет IT Campus доступен по ссылкам: День первый; День второй.

    Впечатления Стаса Фомина об участии в мероприятии Вы также могли прочитать в «Точке РОСЫ»

    Закладки в Nautilus — теперь их делать удобней

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

    Да, ранее пользователи были обязаны знать что-то о структурах файловой системы — DOS/Windows пользователи учились различать буквы системных и подключаемых дисков (эти магические «A:»-«C:»-«D:»…), Linux/Mac пользователи учили правоверному подходу с единым корнем «/», а продвинутые юзабилисты[1] утвержали, что концепция файла с полным путем, странными ограничениями на названия файлов («8+3», «ascii») переусложнена и совершенно избыточна для нормального пользователя.

    И кстати, при реализации современных контентных вебсистем (вики-сайты, гуглдоксы и т.п.), как правило рассчитанных на самых простых пользователей, изначально пытались избавится от иерархической модели, через плоские структуры

    • «имя файла-документа=название документа»,
    • дополнительная неиерархическая классификация через «теги/метки/категории».

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

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

    Все это отражает короткий файловый анекдот-однострочник: /home/stas/Хрень по работе/Гемор/Тупые клиенты/Неплательщики/о--евшие/Уважаемый Сергей Анатольевич.odt

    Да, остается только проблема, когда «наведение порядка и структурирование файловой помойки» вступает в конфликт с «чтобы было под рукой в двух кликах», что обычно приводит к россыпи файлов на рабочем столе или домашней директории.

    Эту и другие проблемы, решает такая очевидная интерфейсная метафора, как закладки, которую поддерживают все продвинутые файловые менеджеры. Все, обычному пользователю становится совершенно пофиг на то, какими слешами разделаются пути в файловых системах, единый ли у файловой системы корень, или надо париться про названия дисков, в Windows-е, Mac-е, KDE или GNOME — он всегда знает, что есть закладки на домашнюю папку, на самые простые личные категории («Загрузки», «Изображения», «Музыка»…) там все разложено, так как надо, а к наиболее часто используемым в данный момент папкам — будь то развлекательное видео на FTP-хранилище, или та самая «Хрень по работе» у него сделаны закладки, и эти папки доступны по одному клику в левой панели файлового навигатора.

    Добавление закладки в Nautilus по умолчанию.png

    И в идеале, эти закладки должны очень легко и удобно добавляться и убираться — увидел интересующие папки, выделил и добавил через контекстное меню, просто и очевидно.

    Но. В GNOME SHELL, а точнее в Nautilus это не так.

    Чтобы добавить закладку, надо либо быть продвинутым пользователем, и зайдя внутрь нужной папки вызвать клавиатурное заклинание «CTRL-D», либо, опять-таки, зайти внутрь папки, сильно пробежаться мышью сначала в правый верхний угол к незаметному значку настроек, и уже там найти опцию добавления в закладки.

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


    Good news, everyone!

    Теперь, а точнее уже несколько месяцев как, в нашем GNOME, можно добавить закладки по контекстному меню. Именно закладки, можно выделить несколько папок и добавить их в закладки за раз.

    Добавление закладок в Nautilus по контекстному меню.png

    Также, через контекстное меню, можно и удалить папки из закладок, если они уже там.

    На самом деле, там у нас хитро, есть защита от случайного действия («выделил 100500 папок и случайно загнал из в закладки» — одновременно добавляются не больше 8), но для обычных действий с разумным числом объектов (правило «5±2»), все просто замечательно!


    Надеюсь, эта новость вас…

    Ввела в экстаз ^_^11
    33%
    Порадовала :)11
    33%
    Оставила равнодушным -_-9
    27%
    Огорчила :(2
    6%
    1. См. например, работы Джефа Раскина.

    ITCampus-2014

    В прошедшие выходные наши были на ITCampus-2014, гибриде традиционного слета сисадминов под Калугой и конференции под открытым небом. Два в одном — образовательные тренинги и развлечения, серьезные лекции и пьяные разговоры, компьютерные технологии и «солнце воздух и вода — ваши лучшие друзья».

    IT-пикники — явно перспективный конференционный тренд, «Educaiment=Education+Entertainment», едешь на отдых с семьей (опционально) и друзьями, оформляешь как командировку на конференцию (да, там ставили штампы на командировочные удостоверения) и сам выбираешь баланс между докладами/тренингами и конкурсами мокрых футболок.

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

    It-campus-fired-car.jpg

    К сожалению, именно по пожарной части случился факап — не повезло одному «глазастому мерседесу» — внезапно загорелся, скорее всего, от травы (катализатор или выхлопная труба…), и несмотря на то, что пожарная машина была в сотне метров, пока доехали, пока размотали рукова, пока выяснили, что нет воды… Увы. Хорошо хоть без взрывов и жертв. Зато это прекрасно объясняет, зачем организаторы жестко загоняли почти все машины на специально выделенное для парковки место.

    Была и куча развлечений — каталово на сегвеях и квадрациклах, игровой шатер с настольными и компьютерными играми, XBoxы, теннисный стол и аэрохоккей, концерты групп разной степени бодрости и известности, дискотеки, бесплатные энергетические напитки с сомнительными ингридиентами, хоровод вокруг костра и мощный салют — в общем, даже если вдруг доклады утомили, вполне можно было развлечься или развлечь семью. Для атмосферы посмотрите фотографии+[1]+[2] или одноминутный видеоролик.


    Я же, Стас Фомин, поехал порассказывать-поговорить про Open Source примерно со следующей программой:

    • «Open source для тех, кто в танке». Вводим словарик, изгоняем ментальные вирусы (FOSS ≠ FreeSoft ≠ OSS, открытость ≠ бесплатность, OpenSource ≠ OpenCore, и т.п.).
    • «Тренды в мире OSS». Ушла ли романтика? Коммунизм, капитализм или just for lulz? Идейные партизаны или наемники корпораций? Каннибализм — ест ли open source-рынок нишевых проектов и едят ли его стартапы-сервисы-freeapps из storов? Дикий мир OSS и островки цивилизации. Статистика, цифры, графики.
    • «Проблемы производителей OS» — в чем PROFIT? Как монетизироваться? Продаем людей, машинное время или воздух? Оптимальные процессы — «Собор или базар»? Есть ли смысл?
    • «Проблемы разработчиков OSS» — дедовщина в сообществах, синдромы NIH, «сад расходящихся тропок форков», архитектура OSS — эволюция или инженерия? В чем фан, в чем профит, есть ли смысл.
    • «Потребители OS» — Кто все эти люди? В чем PROFIT? Как мерятся длиной Total Cost Ownership? OSS и качество — «Красавица или чудовище»? OSS и безопасность — «Недремлющие тысячи глаз или у семи нянек дитя без глазу»? OSS для коммерческих проектов? Снимает ли OSS софтозависимость, или тут просто «тоньше игла и дешевле первые дозы»? OSS для сисадминов…
    • «OSS для юриста-любителя» — зоопарк OSS-лицензий, легальный статус в РФ, что выбрать для своего OSS, как не подхватить вирус от чужого OSS.

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

    И стартовав в 10 утра, был уверен, что моему выступлению в 17 ничего не угрожает (если бы в дороге сломалась машина, был запасной план — бросить и поехать на такси). Поехал по заранее распечатанным картам проложенного яндексом маршрута. Да, проспал самое утро, Москва-пробки-ад и все такое, но все было ОК, пока в середине пути я не решил, что ехать по распечаткам как-то олдскульно и не труѣ, и не решил позвать гугл-навигатор[1]. Который, найдя единственную деревню Воронино в Калужской области погнал меня туда, а я выключился и доверился компьютерному разуму. Километров через 150 я забеспокоился — ибо яндекс-путь должен был быть 200 км, а я уже проехал почти 300 и конца этому было не видно… Я даже названивал организаторам с просьбой проверить, точно ли нет других «д.Воронино» в Калужской области, и меня заверили, что она единственная и туда они приехали именно гугл-навигатору. Большой карты у меня не было… проблем хватало и так — сдох прикуриватель, и жизнь в смартфоне я поддерживал, разряжая взятую с собой кучу ноутбуков… В результате, я обнаружил себя за полтора часа до начала выступления в деревне Воронино, которая находилась от правильной деревни в паре часов езды. Дальше я сделал умное — вспомнил, где на трассе был нормальный 3G, доехал туда, поставил Яндекс.Навигатор и погнал изо всех сил — у меня старая короткая Нива, уверяю, что это было экстремально. Телефон разряжался и перегружался, показывая мне, что я либо успею в упор, либо опоздаю на полчаса[2] Я менял «заряжающие ноутбуки» и гнал, слепо доверяя яндексу. Яндекс тоже дал прикурить — в конце пути он навел меня на изрытую грунтовую дорогу (все опрошенные в лагере, наткнувшись на нее, свернули обратно, я гнал по ней, не снижая скорости) — в результате отвалилось несколько хомутов, движок сосал пыль вне фильтра, и вроде теперь куда-то уходит охлаждающая жидкость… Гнал, потом бежал от парковки, забыв выключить фары (да, разрядил аккумулятор).

    Но успел, в упор. И несмотря на вечер, фигово видный в прозрачном шатре проектор, три с лишним часа мы с народом поговорили. Хотя я считал, что вроде все темы вроде как достойны Капитана, все-таки выяснилось, что для многих почти все было в новинку… Были и нетрезвые критично настроенные участники, и мне пришлось отвечать не только за «опенсорс», но и за госорганы и прочую политику… в общем, было весело, wish you were here[3].

    Если кто ждал каких-нибудь слайдов, не ждите — многочасовой разговор по многокилобайтному майндмапу все равно не передается. Так что могу предложить только некий impression, а так как в соцсетях читают только написанное на картинках, оно будет таким:

    ITCampus-2014-stas-fomin-oss-keywords.png

    На самом деле, не все удалось обсудить — там у меня была большая тема с юридическими тонкостями зоопарка open source-лицензий, но уже смеркалось, и народ хотел ужинать и смотреть на горящий мерс… Так что про эти темы, может быть, еще как-нибудь поговорим на другом мероприятии.

    В любом случае, я свой долг выполнил, тут вроде хвалили.

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

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

    В обычной жизни мне так хочется всех их удавлить… но когда выступает красивая девушка[4], моей решимости на это не хватило, только мягко указал на неэтичность и неэкологичность всего этого.


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

    • Для нормального доклада с визуальной частью надо решить проблему с засветкой в прозрачных шатрах: черные или зеркальные навесы над экранами и т.п., либо от проекторов перейти к плазмам, либо вообще без проекторов.
    • Микрофоны-динамики-усилители были, но нужны микрофоны с прищепками или гарнитурой — руки докладчикам часто нужны.
    • Я пообщался с основной ЦА — матерыми региональными сисадминами,
      • от вендоров они бы хотели не маркетинговых обзоров, а реальных мастер-классов, в духе «конкретно решаем такую-то проблему, по шагам».
      • они готовы смотреть такие доклады в записи (вдруг придется разрываться между треками?) — и как раз такие мастерклассы можно записать и смонтировать дешево — скринкаст+звук с микрофона.
      • а еще они просили у вендоров больше конкретной халявы — не тупой сувенирки, а реальных лицензий на продукты на год и т.п.
    • Многие участники слета вполне опытны и могут неплохо рассказать редкую тему — тут надо было на сделать секцию open space, где заявить, а потом рассказать свою тему мог бы любой участник. Это было бы реальное вовлечение.
    • Интересно, как бы такой educaiment можно было бы провести зимой… В свое время мы провели такой слет-конференцию-разв…отдых в зимнем Египте (цены были копеечные). Может как-нибудь повторить?

    В любом случае, если вы там были (и даже не были) и у вас есть идеи по конференционной части на будущее → свяжитесь с организатором, ну, или жалуйтесь в группах VK и FB.



    Но не мой доклад заслужил призы от организаторов. А наш доблестный админ, Сергей Соколов, который получил приз зрительских симпатий на конкурсе мокрых футболок. Да, это звучит немного странно «—Это же был конкурс для детей?! —Да, и Гомер их всех сделал»©, но факт.

    Сергей Соколов выигрывал приз зрительских симпаний на конкурсе мокрых маек.jpg


    Завидую. Вот это, видимо, и есть настоящий опенсорс, который всегда нужен людям.
    1. Телефон я недавно сменил, со очень старого б/у на просто старый б/у, Galaxy S2, если что, и Яндекс.Навигатор еще не поставил
    2. Что напомнило мне «Обе эти кривые - полета и лунной поверхности - почти сходились. Пересекаются ли они? Нет. Но его дуга была почти касательной. Не известно, проскользнет он над самой поверхностью Луны или врежется в нее. Траектометр работал с точностью до семи-восьми километров, и Пиркс не мог знать, проходит ли кривая в трех километрах над скалами или под ними.»©
    3. А ведь мы всех туда приглашали
    4. Наверно, это был хитрый план организаторов — разбавить мужское общество сисадминов женским общество SMMщиков…

    По ту сторону пресс-релиза: поддержка ИБП Powercom в ОС «РОСА»


    UPS Sample Photo from Wikipedia.jpg

    Недавно на сайте компании была опубликована новость про поддержку источников бесперебойного питания POWERCOM в ROSA Fresh и ROSA X1. В связи с подобными ситуациями я почти постоянно встречаю такое мнение на различных ИТ-ресурсах, мол, что тут сложного — взять да собрать тот же NUT (или какой-то другой пакет в зависимости от ситуации)? Но не всё так просто, как кажется со стороны. На примере добавления поддержки ИБП конкретного вендора расскажу, что на самом деле кроется за сухими строками официального пресс-релиза.

    Собственно, помимо сборки nut (который был у нас изрядно устаревшим на тот момент), была проведена работа по приведению спеков и конфигурационных файлов nut в порядок согласно реалиям и политикам дистрибутива. К таким вещам можно отнести новые unit-файлы для systemd, зачистку самого spec-файла от всевозможных рудиментов и хаков, доработку и написание post и preinstall скриптов и т.п.

    Как я уже упоминал, недостаточно просто собрать пакет. Одно из требований заказчика — работа ИБП без проведения каких-либо сложных манипуляций. Связано с тем, что в ОС «РОСА» будут работать вчерашние пользователи Windows, которые, к вящему неудовольствию некоторых особо продвинутых товарищей, не умеют работать с консольными приложениями, а словосочетание «эмулятор терминала» их повергает в священный трепет. К тому же работать программа должна на самых разных конфигурациях оборудования. Посему любимый номер посетителей линукс-форумов «сделаем за пять минут на скриптах» тут не пройдёт. Для решения проблемы в офис были доставлены ИБП POWERCOM и написано много новых правил udev, позволяющих запускать нужные модули и приложения, требуемые для корректной работы ИБП, сразу после втыкания кабеля USB в разъём. Для начала неплохо, но этого мало.

    В процессе тестирования от будущих эксплуатантов была получена жалоба на то, что несмотря на заметное упрощение работы, всё равно много действий приходится выполнять вручную. И как вы уже догадались, пользователям приходится залезать в консоль ради дополнительных действий. В процессе обсуждения данной проблемы было предложено измененить конфигурацию по умолчанию, чтобы иметь возможность подключить к компьютеру подавляющее большинство ИБП, включая оборудование POWERCOM, не выполняя ровным счётом никаких действий. Что и было сделано. Ни дать-ни взять — Plug’n'Play, каким видит его Microsoft :) Для мониторинга показаний оборудования было собрано на выбор несколько приложений, имеющих графический интерфейс, из которых больше всего понравился KNutClient для среды KDE. Впоследствии у этого приложения исправили несколько небольших ошибок и переделали локализацию, бывшую на тот момент в крайне плачевном состоянии.

    На этом этапе история не закончилась. Через некоторое время от тестеров POWERCOM пришла ещё одна жалоба, что ИБП нельзя настроить по своему вкусу. Например, использовать не прошитые в ПЗУ оборудования настройки уровня разряда батарей, а задать свои. И да, пользователям для перенастройки оборудования всё ещё требуется доступ к консоли. Так что для настройки параметров ИБП необходимо было иметь программу с графическим интерфейсом, дабы пользователь не сломал чего в процессе редактирования. В очередной раз были внесены изменения в основной конфигурационный файл, позволяющие переназначать настройки, зашитые в ПЗУ ИБП. Для минимизации действий, производимых с использованием консоли, была найдена программа knutsetting. Впрочем, поначалу толку от неё не было. Knutsetting находилась в абсолютно неработоспособном состоянии, вываливала совершенно невразумительные ошибки в процессе использования и создавала проблемы самим пользователям. Начиная от нерабочей аутентификации приложения в среде KDE, заканчивая порчей конфигурационных файлов. Причём порча файлов всплыла совершенно случайно в процессе обработки совершенно другой жалобы и возникала только в определённой конфигурации демона nut. Как бы то ни было, причины ошибок были найдены и устранены, добавлена отсутствующая русская локализация, и только после этого программа была добавлена в репозиторий.

    Итог всей проведённой работы: система получила штатное средство управления и настройки источников бесперебойного питания, доступное не только ИТ-специалистам, но и обычным пользователям.

    Надеюсь, эта новость вас…

    Ввела в экстаз ^_^48
    25%
    Порадовала :)127
    66%
    Оставила равнодушным -_-13
    7%
    Огорчила :(5
    3%

    Курсы "РОСЫ" - на сайте PC Magazine RE

    Online Learning Banner.png

    Опубликована trial-версия курсов Сертифицированного администратора ОС РОСА «КОБАЛЬТ»

    На сайте популярного журнала PC Magazine/RE опубликованы несколько ознакомительных уроков и базовый тест, помогающий получить представление о платном курсе «Сертифицированный администратор ОС РОСА «КОБАЛЬТ».

    Сдав контрольный тест курса, вы можете принять участие в розыгрыше USB-флэш, 32 Гбайт, USB 3.0 (2 шт. в течение каждого месяца). Успешная сдача подтверждается также сертификатом (в электронном виде, PDF).

    Содержание курса:

    … Подробнее, см на странице курса.

    Надеюсь, эта новость вас…

    Ввела в экстаз ^_^1
    8%
    Порадовала :)9
    75%
    Оставила равнодушным -_-0
    0%
    Огорчила :(2
    17%

    Spec-gen - генерируем spec-файлы для программ на GNU Autotools и CMake

    Code-generation-banner.jpg

    В РОСЕ, как и во многих других дистрибутивах, много внимания уделяется автоматизации различных задач и снижению «входного порога» для потенциальных мэйнтейнеров. Одним из первых вопросов, который встает перед человеком, желающим собрать некоторое приложение в репозитории РОСЫ — это как подготовить spec-файл для сборки RPM-пакета. Во многих случаях это можно сделать автоматически (по крайней мере, в первом приближении) — например, автоматические генераторы spec-файлов доступны для модулей Python, Perl, Ruby и так далее.

    Однако модули — модулями, а многие приложения в Linux по-прежнему разрабатываются на компилируемых языках типа C/C++ и собираются с помощью GNU Autotools, CMake и аналогичных инструментов. До сих пор для таких приложений мы ограничивались шаблонами spec-файлов и политиками сборки. Для опытного мэйнтейнера этого достаточно, но у новичков нередко возникают трудности именно с первым шагом, так что мы решили еще больше упростить процесс и подготовили утилиту spec-gen, генерирующую заготовку spec-файла на основе анализа архива с исходным кодом.

    Использовать утилиту очень просто — достаточно установить в РОСЕ пакет spec-gen и запустить команду spec-gen.py, передав ей в качестве аргумента имя архива с исходным кодом:

    $ spec-gen.py my_tarball-1.0.tar.gz
    

    С помощью опций -g, -s, -l и -u вы можете указать группу, короткое описание, лицензию и URL создаваемого пакета. Можно эти опции и не задавать, а заполнить соответсвующие поля в сгенерированном spec-файле. Имя и версию пакета утилита пытается угадать по имени архива, исходя из предположения, что большинство архивов называются «<имя_программы>-<версия>». Утилита подерживает все распространенные форматы архивов; впрочем, если вам попался неподдерживаемый архив — напишите нам, мы добавим код для его обработки.

    В процессе работы утилита первым делом просмотрит содержимое архива на предмет наличия там файлов configure.in, configure.ac, CMakeLists.txt, *.cmake и setup.py. Если обнаружится последний, то spec-gen, не мудрствуя лукаво, запустит python setup.py bdist_rpm5 и выдаст вам spec-файл, сгенерированный этой командой. В случае же наличия файлов CMake или GNU Autotools, spec-gen произведет их анализ и попробует определить, какие пакеты необходимо установить для сборки приложения — иными словами, попробует сформировать перечень сборочных хависимостей (BuildRequires) для нового пакета.

    Запускать spec-gen.py рекомендуется в той системе, под которую вы хотите создать пакет, поскольку информацию о доступных пакетах, предоставляющих ту или иную зависимость, утилита берет из репозиториев системы с помощью urpmq.

    На выходе получится заготовка spec-файла с заполненным заголовком, перечнем BuildRequires, секциями %prep, %build и %install. Перечень файлов в секции %files необходимо будет доработать самостоятельно, равно как и произвести разбиение на подпакеты при необходимости. Безусловно, стопроцентной точности сгенерированного списка BuildRequires гарантировать нельзя — могут проявиться и неявные зависимости, не указанные в скриптах сборки, либо spec-gen может сделать неправильный выбор среди имеющихся альтернатив. Тем не менее, в большинстве случаев утилита отрабатывает корректно и создает spec-файл, с помощью которого уже можно начинать собирать пакет, и с немалой вероятностью вам останется только посмотреть на список файлов, созданных в ходе сборки пакета, и подправить секцию %files.

    Возможно, в будущем мы продвинемся еще дальше, и сразу будем запускать сборку пакета с помощью полученного spec-файла, автоматически определять перечень файлов пакета и так далее. Простора для творчества здесь хватает. А пока что — устанавливайте, пробуйте и вносите свои идеи, предложения, а главное — патчи. Исходный код утилиты доступен здесь — https://abf.io/soft/spec-gen-dev.

    В заключение отметим, что основа для утилиты spec-gen была разработана студентом НИУ ВШЭ Андреем Соловьевым в рамках производственной практики в РОСЕ.

    Надеюсь, эта новость вас…

    Ввела в экстаз ^_^40
    75%
    Порадовала :)7
    13%
    Оставила равнодушным -_-2
    4%
    Огорчила :(4
    8%

    Компания "РОСА" участвует в слете ИТ-специалистов IT CAMPUS


    25-27 июля 2014 года ИТ-специалисты страны соберутся на самом масштабном профессиональном мероприятии лета для полного погружения в информационные технологии и отдыха в кругу единомышленников

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

    На мероприятии с докладом выступит президент и генеральный конструктор компании "РОСА" Владимир Рубанов. Тема выступления — "От "дикого" СПО - до сертифицированных систем промышленного качества". "Феномен свободного программного обеспечения (СПО) известен давно. Начинался он как инициатива энтузиастов, однако за последнее десятилетие произошел кардинальный скачок в использовании СПО-решений в реальном бизнесе. Большая часть Интернет, включая такие известные сервисы как Google, Facebook и Twitter, работают на СПО; дошло и до того, что крупнейшие фондовые биржи и банки доверяют огромные деньги Linux-серверам. Однако многие по-прежнему считают, что СПО — это продукт творчества "свободных художников", на который нельзя полагаться. Истина же где-то рядом, и одно СПО другому СПО, действительно, рознь. В докладе обсудим, как можно совмещать свободное творчество и бизнес, открытость и надежность, а также — как во всем этом процессе правильно поучаствовать", — рассказывает Владимир Рубанов.

    IT CAMPUS проводится на природе (центр отдыха и туризма «Высокие берега», Калужская область) и включает как насыщенный конференционный блок, который пройдет в три параллельных потока, так и тематическую развлекательную программу. Цель конференции — избегая рекламы, дать исключительно полезную практическую информацию о новейших тенденциях в сфере информационных технологий. Конференционная часть состоит из докладов, дискуссий и мастер-классов. Спикеры — представители крупных ИТ-компаний — затронут темы управления проектами, разработки ПО, веб- и мобильных приложений; обсудят тенденции в сфере облачных технологий и виртуализации; коснутся вопросов управления ИТ-ресурсами и бизнес-процессами предприятий; уделят внимание информационной безопасности.

    Параллельно с конференционной частью, участников мероприятия будут ждать соревнования по информационной безопасности – Capture the flag, турнир по легендарной игре Quake, ярмарка вакансий от ведущих IT-компаний и еще много всего интересного. Организатором IT CAMPUS является ГК Softline, партнерами стали Microsoft, «Лаборатория Касперского», VMWare, HP, EMC, Veeam, Netwrix, Академия Информационных Систем.

    IT CAMPUS заявляет: ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ ДОЛЖНЫ БЫТЬ ДОСТУПНЫ ВСЕМ!

    Стоимость участия в этом грандиозном мероприятии составит всего 200 рублей.

    С подробной программой мероприятия и условиями участия можно ознакомиться на сайте www.itcampus.ru.

    Загрузка и установка РОСЫ со своего же HDD

    Устанавливать РОСУ можно множеством различных способов — в частности, c ISO-образа, расположенного на вашем жестком диске. Однако описанный в нашей вики способ подразумевает также наличие на вашей машине полноценно работающей ОС, в которой надо произвести некоторые подготовительные действия перед установкой. Однако может случиться, что такой системы на машине нет, равно как нет возможности загрузиться с внешнего устройства. Именно в такой ситуации оказался недавно наш коллега Сергей Соколов, и ниже мы приводим его рассказ о том, как он из этой ситуации выпутался.

    Памятник Мюнгхаузену, вытаскивающему самого себя из болота.jpg

    Угораздило меня установить разработческую версию Fresh R4 себе на рабочий ноут. Прихожу утречком пораньше на работу, ставлю кучу обновлений и перезагружаюсь. А в этот момент в репозиториях, оказывается, как раз шел процесс обновления systemd и еще кучи всего системного. Короче, система не загружается, а вываливается в консоль dracut.

    Так и эдак потыкался, никак система не поднимается. В общем, нужно переустанавливать. Флешки нет, CD/DVD привода нет, в офисе тоже никого нет, чтобы записать установочную флешку. Ну или представьте ситуацию, что система умерла где-нибудь в отпуске, а ноут вот прямо сейчас очень нужен.

    Решил я малость поэкспериментировать с загрузкой с ISO-образа, расположенного на моем SSD/HDD носителе, да еще и на том самом, на который будет устанавливаться система.

    # fdisk -l /dev/sda
    
    Disk /dev/sda: 480.1 GB, 480103981056 bytes, 937703088 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000
    
    Устр-во Загр     Начало       Конец       Блоки   Id  Система
    /dev/sda1            2048    33556479    16777216   82  Linux своп / Solaris
    /dev/sda2        33556480    96471039    31457280   83  Linux
    /dev/sda3        96471040   937703087   420616024    5  Расширенный
    /dev/sda5        96473088   937703087   420615000   83  Linux
    

    В общем-то, тут

    • /dev/sda1 — своп раздел который у меня когда-то был, но сейчас просто отключен,
    • /dev/sda2 — мой рут,
    • /dev/sda5/home

    От системы у меня в наличии только initrd и вываливается dracut

    Вот его-то оказалось вполне достаточно:

    mkdir /mnt
    mount /dev/sda2 /mnt
    mount -o bind /dev /mnt/dev
    mount -o bind /dev/pts /mnt/dev/pts
    mount -o bind /proc /mnt/proc
    mount -o bind /sys /mnt/sys
    mount /dev/sda5 /mnt/home
    chroot /mnt
    dd if=/home/path/to/ROSA.FRESH.KDE.R3.x86_64.iso of=/dev/sda1 bs=8M
    touch /boot/resque.iso
    vi /boot/grub2/grub.cfg
    

    В конфигурационном файле grub находим строку содержащую rescue.iso и приводим эту часть файла к следующему виду:

    ### BEGIN /etc/grub.d/43_resque ###
    if [ -f  /boot/resque.iso -o -f /boot/sgb.iso ]; then
    submenu 'Repair tools' {
    if [ -f  /boot/resque.iso ]; then
    menuentry "Boot rescue CD" {
    linux (hd0,1)/isolinux/vmlinuz0 boot=live iso_filename=/dev/sda1 root=live:/dev/sda1 rootfstype=auto ro rd.live.image rhgb splash=silent logo.nologo rd.luks=0 rd.md=0 rd.dm=0
    initrd (hd0,1)/isolinux/initrd0.img
    }
    fi
    

    Синкаем файловую систему командой sync и перезагружаемся. Теперь у нас есть recovery раздел, с которого без проблем устанавливается система. Главное здесь — не запускать форматирование раздела sda1 при установке системы.


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

    • В инсталляторе предложить пользователю сохранить на /boot (если он создан) или /root- разделе собственно сам ISOшник, в виде файла installer.iso, с которого проходит инсталляция.
      • Да, в /boot его положить лучше, ибо тогда можно будет переинсталлировать и полностью убитые /root-разделы, но это отдельный UX-вопрос, как предложить это проще, не перегружая и так непростой инсталлятор. Пока можно просто предложить такую опцию, интерфейсно аналогично как в конце инсталляции предлагается выбрать swap-файл, если swap-раздела не найдено — т.е. еще один вопрос в конце инсталляции.
    • В GRUB-меню, в раздел Troubleshooting добавить и пункт «Переинсталляция», которный собственно и даст возможность переинсталлировать базовую систему (для начала без специальных типа сохранения /etc/passwd, и прочего) — т.е. опция скорее для не очень простых пользователей, хотя, если это ноутбук, который использует один человек, то, т.к. переформатирования /home не будет, то средней вменяемости пользователь уже сможет себе восстановить систему практически без приседаний.

    Вопрос, интересно ли это нашим пользователям, иметь возможность держать полтора гига на винте, под возможность быстрой базовой переинсталляции?

    Идея «Troubleshooting-восстановление через переинсталляцию»:

    Отличная37
    90%
    Хорошая0
    0%
    Плохая (поясню почему)4
    10%

    Linux — теперь все отлично и с играми

    Продолжим тему развлечений на «ROSA». О видео мы уже поговорили, обсудим ситуацию с играми.

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

    Xkcd mac pc.png

    Т.е. игры под Linux конечно были. Но, в основном, это open-source проекты энтузиастов, и среди тысяч пакетов с играми преобладали игры с несложной графикой: «казуальные» игрушки-головоломки, разные шахматы и карты, простые «аркадные» стрелялки-бродилки — и некоторым достаточно и этого, я повидал многих, кому на компьютере достаточно пасьянса и Lines.

    Впрочем, теперь новый уровень «казуальщины» — это броузерные игры на Flash и HTML5 — и теперь можно растить веселую ферму и рубиться в сетевые стратегии с друзьями, вовсе не задумываясь, какая система установлена, и что вообще нужно что-то инсталлировать. И с этим все ОК, ибо слава Мозилле и работающему Flashу, тут все одинаково[1].

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

    • «Казуальщина» не дотягивает по уровню (графика, геймплей) до самых известных и популярных игр, скажем так, игр класса AAA, блокбастеров и бестселлеров, игр требующих 146% возможностей процессора и видеокарты.
      • Нет, конечно под Linux есть нестыдные open-source игры, вполне почти «профессионального» уровня, например, 0 A.D., Battle For Wesnoth, Xonotic, AstroMenace, Speed Dreams, но их не так много, покрыты не все жанры, плюс соображения следующего пункта…
    • И, наверное, самое важное — тут срабатывает импринтинг, ко многим популярным играм настолько привыкаешь, что расставание, или замена на аналоги, увы, не катит.
      • Не говоря о играх, в которых с друзьями рубишься по сети, или просто обсуждаешь прохождение — и тут аргументы «да XXX нет, но есть похожий YYY» — не катит. Так FreeCIV не заменит пятую цивилизацию, а любая трехмерная стрелялка не заменит CS.

    Поэтому игроману приходилось для таких игр

    • либо держать отдельный раздел с DOS/Windows — это более-менее ОК для игр-«стрелялок» требующих 100% CPU и твоего внимания, это вполне разумно («делу время, потехе час»), то в разные пошаговые стратегии можно играть параллельно с офисной работой, и тут нужна нативность для мгновенного переключениям между приложениями.
    • либо использовать разнообразные эмуляторы, типа PlayOnLinux или даже DOSBox, для совсем древних игр. В большинстве случаев, это, кстати, работает, например, у меня, к моему удивлению, работала даже пятая цивилизация, с настройками графики чуть хуже, чем под DirectX. Но все-таки это как-то не комильфо — и не так эффективно, и возможны странные баги.

    Прогресс тут резко пошел за последнюю пару лет, и связан он со Steam — теперь наверно, самой известной инфраструктурой игровой дистрибьюции от компании Valve. Эта компания известна

    • и в мире разработчиков, удивительным внутренним процессом, напоминающим то ли раздолбайство, то ли советское НИИ[2].
    • и в мире игроманов, за кучу эпичных бестселлеров, из которых серии Half-Life и Counter Strike знакомы всем, даже далеким от игр.

    Но самое известное и важное направление — это построение Steam, собственной игровой инфраструктуры с нуля, от непосредственно железа и приставок SteamBox со Linux-based SteamOS, чтобы не зависить ни от каких вендоров (операционных систем или консолей). И именно эта движуха и заинтересовала Linux-ом игроделов. Да, это не первая система цифровой дистрибьюции с Linux-играми, есть ведь и Desura, но первая, набравшая критическую массу и захватывающая всю вертикаль, от железа до пользователя.

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

    • Есть факты, что Linux-пользователи Steam оказались даже платежеспособней, чем Windows-стимеры (покупают больше игр, больше платят при распродажах «заплати сколько хочешь»), т.е. потенциально это выгодная аудитория, а не сборище халявщиков. Кстати, интересно посмотреть Steam-статистику → [1], [2].
    • Есть мнение, что для игроделов всегда выгоднее разработка под консоли, игровые приставки с фиксированными характеристиками — меньше проблем с зоопарком железа, больше профита, ибо консоли — для истинных геймеров, там больше играют, и тратят деньги на закупку игр или транжирят внутри игры. И чтобы попасть на эту новую консоль, уже сейчас надо разворачиваться и учиться делать Linux-совместимые игры.

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

    Смотрите сами, в TOP10 уже 8 Linux-совместимых (да и если смотреть топ игр дальше — чуть похуже, но все равно, Linux-совместимости все больше и больше).

    Ежедневный максимум Всего игроков Игра
    570,308 784,569 Dota 2
    71,549 149,145 Counter-Strike: Global Offensive
    50,451 85,718 Team Fortress 2
    27,909 65,717 Football Manager 2014
    22,349 58,471 Sid Meier's Civilization V
    20,498 46,407 Garry's Mod
    18,623 31,806 Counter-Strike


    Лично для меня «переломным моментом» стало портирование в мае «Civilization V» (кстати, тут можно публично пообщаться на эту тему с ее разработчиками). А исторические стратегии от Paradox уже давно Linux-совместимы — Crusader King II портировали еще год назад, а Europe Universalis IV уже вышла Linux-рожденной.

    Лично я как-то больше любитель неспешных стратегий, вот например, «мой стим»:

    Steam-клиент в ROSA GNOME (v01).png

    Да, проблемы с портированием еще есть — некоторые компании стремятся выпустить линукс-версию «как-нибудь побыстрее, хоть тушкой, хоть чучелом» — и некоторые Linux-порты теряют в качестве: либо это перенос путем встраивания Wine-эмулятора, либо разработку линукс-версии аутсорсят, либо почему-то нет локализации…

    Все это огорчает, но тренд очевиден — нет уже никакой эмиграции, и «игровая граница» между Linux и Windows почти стерта — самое важное уже работает под Linux, остальные Steam Windows-игры можно запустить из под PlayOnLinux, и кстати, Steam предлагает еще один вариант Linux-Windows гетерогенности — «стриминг».

    Можно продолжать держать Windows-десктоп для игр, а играть в них лежа на диване даже с слабеньким Linux-ноутбуком, при этом десктоп пыхтит и рендерит игровые картинки, а Linux-ноутбук удаленно управляет этой игрой, не напрягаясь и не перегреваясь. Это конечно, не очень подходит к стрелялкам, но ко всему остальному — совершенно замечательно.

    У нас Steam беспроблемно устанавливается и работает, в этом уже нет нашей заслуги — если раньше, еще год назад (скажем, для тех, кто в теме, во времена «steamhack-а»), нам приходилось делать какие-то хаки и патчи — подкладывать отстутствующие файлы шрифтов и делать симлинки на библиотеки и т.п. (ведь бета Steam-клиент был «захардкожен» под Ubuntu), то сейчас — это такой же steam, как и у всех.

    Кстати, мы думаем, а не стоит ли Steam включить в образ? С одной стороны, вроде идея хорошая, с другой:

    • все равно потребуется интернет для инсталляции игр, а тогда можно поставить Steam из репозиториев.
    • надо будет договариваться с Valve, обсуждать юридические тонкости — а это непросто. Ибо известно, что почти нереально дождаться от Valve ответов на свои запросы.
    • кому-то может не понравится наличие «проприетарщины»…

    Но спросим:

    Идея включить Steam-клиент в инсталляционный образ дистрибутив ROSA Fresh…

    Отличная200
    80%
    Хорошая23
    9%
    Плохая (поясню почему)27
    11%


    А работоспособность же игр, определяется именно здоровьем графической системы в дистрибутиве. Чтобы все было гладко с X-ами, MESA-библиотеками, и драйверами видеокарточек, чтобы были наложены все важные патчи в непротиворечивой комбинации, и все это было проверено.

    Куча ноутбуков для тестирования графики и Steam-игр.jpg

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

    Тестовый стенд для тестирования графики.jpg

    При тестировании мы используем и широко известные Phoronix-тесты, так и ручное «проигрывание» Steam-коллекций сотрудников[3].

    Тестовый стенд с Phoronix-тестами.jpg

    Про процесс тестирования, впрочем, надо писать отдельную статью, а пока лишь отметим, что в целом, если технические требования игры удовлетворены, то скорее всего, все будет хорошо, и главная нетривиальность — не забыть поставить правильный видеодрайвер. Скорее всего, наиболее эффективным будет проприетарный драйвер видеокарточки, и для его инсталляции достаточно лишь запустить нашу утилиту XFdrake, которая сама все скачает и настроит[4].

    Мы кстати, размышляем, надо ли как-то напоминать или предлагать запускать XFdrake при первом подключении к сети? Именно в этот момент можно проверить, есть ли проприетарные драйвера AMD/Nvidia для видеокарты, и предложить их использовать.

    Идея запускать XFdrake после инсталляции/при первом подключении к сети, если есть проприетарные драйвера для найденной видеокарты…

    Отличная130
    86%
    Хорошая10
    7%
    Плохая (поясню почему)12
    8%

    Так что еще раз отметим

    • все что может играть под Linux — популярные open-source игры, все Linux-игры из Steam,

    эмуляторы DOSBox и PlayOnLinux — все работает,

    • графическую подсистему тестируем, нужные патчи проносим,
    • есть XFdrake — утилита, которая автоматически поставит проприетарные драйвера для видеокарт.

    И теперь, искренне, а не на правах рекламы, мы можем направить вас в Steam за Linux-играми, в котором до 30 июня идет традиционная летняя распродажа! А многие теперь получают удовольствие именно от покупки («раньше мы играли в игры, за которые не платили, теперь платим за игры, в которые не играем»), делая запас на будущее, для игр с детьми и т.п.



    Unity of Command. Скриншот карты.png

    Ну и в конце, для дочитавших — бонус. Краткий обзор Unity of Command — не очень популярной, но увлекательной пошаговой стратегии основных сражений Великой Отечественной Войны.

    Игра подробно описана в Википедии, но если кратко — это совершенно нетребовательные к ресурсам «историческо-военные шахматы» на реальных картах ВОВ. Игра сейчас ужасно кажется актуальной — и из-за недавней даты 22-июня, и из-за часто мелькающих сейчас в новостях топонимов «Славянск», «Изюм», «Донбасс» вместе с словосочетаниями «танковая атака», «окружение» и т.п.

    Я играл вместе с сыном-младшешкольником[5], совершенно наглядным образом объясняя-показывая

    • и важность снабжения (без него любое сопротивление стихает максимум через неделю), на которую не общают внимания во многих стратегиях.
    • тактические приемы танковых прорывов, окружений, блицкригов.
    • почему кавалерия вполне рулила в ВОВ, несмотря на танки.
    • важность мостов, перекрестков и железных дорог,
    • стойкость солдат разных армий («почему под Сталинградом надо прорываться через румынские дивизии»)
    • необходимость жертвовать войсками, чтобы выиграть позицию или время…
    • географию СССР.

    Как это выглядит — проще всего увидеть на короткой записи моей версии прохождения операции «Уран» с сталинградским контрнаступлением и окружением армии Паулюса:

    Если не боитесь спойлеров, или вы начали играть, что-то не получается и хотелось бы подсказки, вот «блестящие победы»[6] в моем исполнении, записанные штатными средствами ROSA Fresh GNOME, см.

    А также «Don Offensives», «Race for Rostov», «Orel-Bryansk», «Little Saturn».

    Сейчас распродажа, и все это удовольствие со всеми дополнениями можно за 150р.


    И наконец, перепись тех, кто дочитал до конца…

    Надеюсь, эта статья вас…

    Ввела в экстаз ^_^19
    11%
    Порадовала :)149
    84%
    Оставила равнодушным -_-8
    4%
    Огорчила :(2
    1%
    1. За очень-очень-очень редкими исключениями
    2. См. например, [3]; впрочем, лично я ориентируюсь на рассказы моего товарища, поработавшего с ними
    3. Так что если вдруг кто-то увидит у нас играющих в рабочее время — вы все неправильно поняли, мы тестируем.
    4. По юридическим соображениям, мы не можем включать проприетарные видеодрайвера в дистрибутив, поэтому наш мастер настройки XFdrake, выкачивает их с сайтов после установки системы. Ну и отдельный вопрос — это хитрости запуска видеокарт серии Optimus, про которых нужно тоже писать отдельную статью
    5. Дети — отличное оправдание играм во взрослом возрасте, их нужно завести хотя бы для этого.
    6. Все цели взяты вовремя.

    ABF - кэшированный chroot и улучшенные тесты

    С момента выпуска последней русскоязычной заметки про новости ABF в «Точке РОСЫ» прошло уже три месяца. Эти три месяца разработка ABF шла полным ходом (а заодно мы показали ABF на LinuxTag), и пришла пора подитожить достижения за квартал.

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

    ABF rerun tests rus.png

    Непосредственно перед реализацией перезапуска тестов, мы поработали над улучшением этих самых тестов. Теперь помимо проверки возможности установки собранных пакетов в целевую систему, ABF проверяет — нет ли в репозиториях системы пакетов с таким же именем, версией и релизом. Такая проверка позволяет отловить ситуации, когда вы пересобрали пакет, но забыли поднять релиз. Иногда такие проверки неактуальны — что ж, вы всегда можете их отключить, сняв галочку «Использовать дополнительные тесты» при создании сборки.

    ABF extra tests lrus.png

    Помимо тестов, мы поработали и над упрощением процесса сборки, реализовав давно обсуждавшиеся кэшированные chroot-окружения. Теперь при создании сборки вы можете выбрать — создавать ли chroot с нуля или использовать кэш. Кэш немного быстрее, однако есть шанс, что он уже разошелся с базовым репозиторием, и ваша сборка будет невоспроизводимой. Хотя кэш и обновляется ежедневно, такие ситуации все-таки возможно, и мы настоятельно рекомендуем не использовать кэш при сборке пакета, который будет опубликован в официальные репозитории. Более актуальное применение кэшированного chroot-окружения — это ситуация, когда необходимо обновить ключевые пакеты системы (которые, собственно, и входят в кэшированный chroot), сломав при этом на время их зависимости. С помощью кэшированного chroot и контейнеров эта задача решается достаточно легко и быстро, как показало недавнее обновление Perl и всех зависящих от него компонентов (включая urpmi и perl-URPM) в разрабатываемой ветке РОСЫ.

    Наконец, мы позаботились об администраторах платформ, которые отвечают за наполнение и целостность дистрибутивов. Маленькое улучшение для них — теперь есть возможность фильтровать пакеты по группе при их добавлении в репозиторий, так что можно не путаться среди кучи проектов с одинаковым названием. Улучшение посерьезнее — возможность ограничить публикацию в репозиторий пакетов и разрешить публиковать только те пакеты, которые собраны из определенных веток Git-репозитория. Например, пакеты для ROSA Desktop Fresh у нас традиционно собирались из ветки rosa2012.1 (а для новой версии Desktop Fresh — из rosa2014.1). Теперь эта традиция зафиксирована на уровне ABF, и собрав пакет из другой ветки, вы обнаружите, что опубликовать его не можете. Такое вот небольшое ужесточение дисциплины, которое на самом деле очень сильно облегчает поддержку дистрибутива.

    Точка Росы №9


    Точка РОСЫ №9.png

    Прошла зима, настало лето, спасибо па, пришло время для очередного дайджеста «Точки РОСЫ», ведь с момента предыдущего прошло уже больше полгода.

    Возможно надо чаще выпускать дайджест, но с другой стороны, те, кто активно интересуется нашей работой могут подписаться на непрерывный поток новостей по RSS/Atom, или в социальных сетях VK и FB, ну а остальным…, мы бы не хотели излишне надоедать.

    Впрочем, не упустим случая спросить:

    С какой частотой выпускать «Точку РОСЫ»?

    Еженедельно33
    23%
    Ежемесячно97
    67%
    Ежеквартально10
    7%
    Ежегодно3
    2%
    Все равно1
    1%


    Как обычно, это будет и вебжурнал в формате «подборка статей с обложкой», так и так и в олдскульном PDF-файле c сотней страниц. В любом случае — «многобукф», их будет почти двести тысяч, плюс почти сотня иллюстраций.

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


    Итак, в девятом выпуске «Точки РОСЫ»:

    Фичи и багфиксы
    наши наработки и доработки, все для юзабилити и надежности.

    Эффективная работа с клавиатурой:

    мышами и тачпадами…


    Нестыдно поставить РОСу, девушкам, детям и прочим родственникам. Все сделано понятней и привычней, и удобно для «домашнего использования»,


    Advanced users, которым нужны все возможности быстрого и надежного Desktop Environment, надеемся, оценят наши доработки рабочих столов:

    … и надежное ядро и систему обновлений:

    Ну, а части новых фич не досталось отдельных статей, так, пара слов в описании релиза * ROSA Desktop Fresh R3 «KDE».


    Для мейнтейнеров
    — новые возможности ABF и полезные утилиты:

    Конференции

    Ну и для всех более-менее связанных с IT, будут интересны наши обзоры и видеозаписи IT-конференций:

    Кстати, в нашей медиатеке уже шесть сотен докладов. Заходите, смотрите, комментируйте.

    И еще раз напоминаем, что есть и любовно сколоченный PDF со всеми этими статьями.


    Ну, а теперь, в послесловии, как раз хотелось бы поговорить насчет того, нужен ли этот PDF, а если нужен, то какой? Год назад, в Blog:Точка Росы/Точка_Росы_№7 мы уже поднимали этот вопрос, и тогда большинство высказалось за полезность PDF. Но сейчас, попробуем поставить этот вопрос еще раз. Если бы наш контент был простой, чисто текстовый — не было бы никаких проблем засунуть его во все возможные форматы, даже в fb2 и epub, но мы включаем и видеоматериалы (и хотели бы делать это больше, включая обучающе-иллюстрирующие ролики), и интерактивные голосования, на результаты которых мы внимательно смотрим, комментарии, и прочий фидбек…, не говоря уже о куче ссылок, которые полезно просматривать при чтении материала, но невозможно, если PDF распечатан на бумаге, или читается в ситуации отсутствия доступа в интернет.

    Т.е. теряется многое, а изготовить его, чтобы он был добротный — с нормальной версткой, работающими внешними и внутренними ссылками — это муторный труд по верстке («эй, ты, ободранный — ты идешь с ристалища? Да, верстальщик я… ©»), стоивший немало нервов и времени на, скажем так, тестирование LibreOffice. И непонятно, оно того стоит?

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


    PDF-версия для «Точки РОСЫ» — вы будете читать?

    Да70
    90%
    Нет8
    10%


    Если вы читаете PDF «Точки РОСЫ», как и зачем вы это делаете?

    Люблю читать с бумаги, распечатываю и читаю.5
    7%
    Читаю с планшета/ноутбука/смартфона в ситуации без интернета31
    43%
    Читаю с планшета/ноутбука/смартфона в ситуации с интернетом29
    40%
    Читаю с черно-белого ебука2
    3%
    Цимес PDF в чем-то другом (ждем вашего пояснения в комментарии).2
    3%
    Ничего из перечисленного2
    3%

    Удобный формат верстки/ориентация страниц «Точки РОСы»?

    «Портрет»40
    91%
    «Альбом»4
    9%

    Шрифт для основного текста — с засечками (serif) или без (sans-serif)?

    Serif (обычно ОК, для бумаги или ебуков высокого разрешения)1
    3%
    Sans-serif (обычно ОК для всего остального).30
    97%


    Если не рассматривать вариант распечатки на бумаги или листающих ебуков, то можно рассмотреть модель публикации в MHTML — тот же HTML со всеми стилями и картинками единым файлом, без необходимости верстать с разбиением на страницы. Смотреть можно во всех браузерах (иногда доставив какое-нибудь расширение).

    MHTML-публикация «Точки РОСы» заменила бы вам PDF-версию?

    Да8
    18%
    Нет37
    82%

    Ну, пока хватит опросов, а если вы дочитали до сюда (wow!), то возможно вам будет интересно читать наши заметки самыми свежими, до дайджеста — тогда, еще раз напомним, как можно на наши новости подписаться:

    • RSS/Atom,
    • или в социальных сетях

    LinuxTag 2014, или в Берлин на 9 мая

    9 мая 2014 года мне довелось встретить не совсем обычно, но символично — почти в центре Берлина, в получасе ходьбы от Рейхстага. А если точнее — в здании Station Berlin, где с 8 по 10 мая проходила очередная конференция/выставка LinuxTag.

    LinuxTag — where .com meets .org

    Как и на FOSDEM, здесь мы с коллегами из OpenMandriva демонстрировали их дистрибутив и рассказывали, как для его сборки используется наша ABF. В частности, Саша Хрюкин делал доклад про сборку ARM-версии Openmandriva на ABF.

    LinuxTag позиционируется организаторами как одно из крупнейших мероприятий в Европе и мире, посвященных свободному ПО. Впрочем, LinuxTag существенно отличается от FOSDEM — если последний является полностью бесплатным для посетителей, то билет на LinuxTag обойдется в немалую сумму — от 50 до 150 евро. Правда, можно бесплатно посещать доклады после 18:00 — но многие интересные доклады проходят раньше, да и большинство стендов после 18:00 уже не работают. Главное же различие заключается в позиционировании мероприятий и целевых аудиториях. Если на FOSDEM одни разработчики рассказывают другим о своих достижениях и наработках, то слоган LinuxTag — «Where .com meets .org» — однозначно говорит, что цель конференции — свести вместе представителей бизнеса и сообщества.

    Набор спонсоров у LinuxTag солидный, что не мешает брать от 50 до 150 евро за билет

    В общем, Linuxtag скорее похож на наш ROSS. Правда, по масштабам и насыщенности LinuxTag от ROSS отличается примерно так же, как FOSDEM от Конференции разработчиков свободных программ — то есть на пару порядков. При этом несмотря на статус международной конференции, LinuxTag все еще остается во многом ориентирован на немецкую аудиторию — около половины докладов в этом году были на немецком языке, а многие стенды были посвящены внедрению открытых решений в немецких компаниях и учреждениях. Так что разница в масштабах ROSS и LinuxTag вполне отражает различия в использовании СПО в двух странах.

    Нацеленности LinuxTag на бизнес нашла отражение и в темах докладов — технических презентаций было гораздо меньше, чем на FOSDEM, зато было больше рассказов о решениях и проектах по развертыванию всевозможных инфраструктур на предприятиях и о внедрении тех или иных технологий в реальные бизнесс-процессы. Например, как перейти на LibreOffice или как мониторить состояние машин с помощью Icinga — форка Nagios, чья история наглядно демонстрирует специфику разработки открытых проектов (несколько длинное и туманное, но интересное изложение истории можно найти здесь).

    В первый день шарики были только у OpenMandriva, а на второй день идею подхватили многие стенды и даже сами организаторы

    Из технических тем, как ни странно, наиболее активно затрагивались низкоуровневые вещи — ядро, драйвера и прочие основополагающие системные компоненты. Чего-то принципиально нового услышать не удалось, но немало людей пришли посмотреть на ведущих разработчиков Linux — в частности, на Грега Кроа-Хартмана (Greg Kroah-Hartman), рассказывавшего о разработке непосредственно ядра, или Ленарта Поттеринга (Lennart Poettering) и Кея Сиверса (Kay Sievers), подготовивших презентацию про kdbus — реализацию механизмов D-Bus на уровне ядра. Интересен был и доклад про Coreboot — свободную реализацию стандарта UEFI, используемую в Chromebook, наглядно демонстрирующую, что реализация UEFI совсем не подразумевает привязку к конкретному вендору.

    Естественно, не остались без внимания модные нынче облачные технологии (в частности, целая секция была посвящена OpenStack) и вообще Web-разработка. Из последней области интересным был рассказ про WebODF — Javascript-библиотеку для работы с документами ODF, — а также доклад про WebRTC. Точнее, в последнем докладе рассказывалось в основном про JitsiMeet — открытое решение для проведения видеоконференций. Тема видеоконференций в Linux (а точнее, свободных инструментов для их организации) очень актуальна, и сообщество постепенно развивает свои аналоги сервисам Google или Skype. Кстати, непосредственно Jitsi есть в репозиториях РОСЫ, так что можете его попробовать. Программа написана на Java и интерфейс красотой не блещет, но с функциональной точки зрения приложение вполне рабочее.

    В этом году LinuxTag был совмещен с конференцией Android-разработчиков Droidcon, поэтому часть докладов была посвящена разработке мобильных приложений, а в холлах конференции можно было ознакомиться с новейшими предложениями в этой сфере от BlackBerry, Sony и Intel.

    Возможно, было еще что-то очень интересное, что я пропустил — поскольку многие презентации были на немецком, в котором я не силен. Желающие могут изучить подробную программу выступлений; там же можно найти аудио- и видеозаписи выступлений.

    LXQT в OpenMandriva уже работает и использует тему РОСЫ

    Интересно, что несмотря на нацеленность на бизнес, на LinuxTag не было представлено вендоров коммерческих дистрибутивов (прежде всего, Red Hat и Novell). Вместо этого, были стенды их коммьюнити-версий — Fedora и OpenSUSE, которые соседствовали со стендами Debian, ReactOS, и OpenMandriva. Было несколько докладов от представителей RedHat, но их охват был существенно уже, чем на FOSDEM. В частности, ничего не говорилось про Katello или Foreman, хотя, казалось бы, эти темы вполне подходят для LinuxTag. Впрочем, был доклад от Inovex про развертывание OpenNebula с помощью Foreman, демонстрирующий готовность Foreman для использования в реальных проектах.

    К тому же были представлены другие интересные проекты схожей направленности — например, Univention, предлагающий собственный аналог Active Directory. По словам представителей компании, их решение полноценно интегрируется с AD и поддерживает не просто аутентификацию пользователей, но и групповые политики и прочие вкусности. Представители проекта Fully Automatic Installation (FAI) рассказывали об инструментарии для автоматической установки Linux на множество машин, а разработчики YADT («an Augmented Deployment Tool»; впрочем, явно напрашивается расшифровка «Yet Another Deployment Tool») демонстрировали, как управлять этим множеством машин (с упором на то, как корректно перезапускать множество зависимых сервисов при обновлении). Эти проекты, возможно, не так раскручены, как творения RedHat, но определенно заслуживают внимания.

    Опять же в противовес FOSDEM, посетителей на стендах было не очень много. Приятно, что сайт OpenMandriva явно не уступал по популярности остальным — впрочем, не только из-за технических характеристик дистрибутива, но и из-за шариков, приводивших посетителей к нашим столикам. Однако и некоторые технические моменты вызывали живой интерес пользователей — так, NicCo демонстрировал свои навыки настройки VMware в РОСЕ и OpenMandriva, запуская одновременно разные вариации Mac OS X, Windows и Linux, да еще так, что в каждой из гостевых ОС можно было вполне спокойно смотреть видео с YouTube (естественно, со звуком). Если кому-то захочется это повторить, то процесс настройки описан в нашем форуме.

    К началу LinuxTag был приурочен выпуск OpenMandriva Lx 2014.0, незадолго до которой вышел ROSA Desktop Fresh R3, так что посетители могли взять образы со свежими версиями наших дистрибутивов. Одной из основных нашей целей было привлечение не просто пользователей, но разработчиков. Насколько это удалось — время покажет, но интерес со стороны сообщества определенно есть.

    Наконец, было бы странно оказаться в Берлине на 9 мая и не посетить ряд примечательных мест — в первую очередь, мемориал советским воинам рядом с Рейхстагом. И еще раз убедиться, что состязаться в качестве ПО, а тем более — разрабатывать это ПО в составе большой международной команды, все-таки гораздо приятнее и безопаснее, чем в совершенствовании средств собственного уничтожения.

    Мемориал советским воинам в Берлине

    Rosabootstrap - создаем chroot-окружение РОСЫ внутри любой системы

    Не секрет, что многие разработчики РОСЫ стараются сделать что-то полезное для дистрибутива каждый раз, когда у них появляется свободная минутка. Впрочем, даже если у вас не минутка, а целых полчаса, но при этом нет под рукой установленной РОСЫ, то существенную часть свободного времени придется потратить на скачивание iso-образа и установку системы хотя бы в виртуальную машину. Конечно, не все активности требуют установленной системы — можно поотвечать на вопросы в форуме или пособирать пакеты на ABF, но именно разработку все-таки гораздо проще вести внутри реальной ОС.

    Хорошая новость — теперь у нас есть инструмент, который позволит быстро развернуть chroot-окружение с РОСОЙ внутри любой системы, где можно делать этот самый chroot. Для работы инструментария достаточно иметь Shell и Python (даже наличие rpm не является обязательным!). Инструмент называется Rosabootstrap и заполучить его можно на ABF — https://abf.rosalinux.ru/soft/rosabootstrap.

    Если у вас установлен git, вы можете склонировать проект:

    $ git clone https://abf.io/soft/rosabootstrap.git
    $ cd rosabootstrap
    

    а если не хочется клонировать, можно просто скачать и распаковать архив с актуальными скриптами:

    $ wget https://abf.io/soft/rosabootstrap/archive/rosabootstrap-master.tar.gz
    $ tar xzvf rosabootstrap-master.tar.gz
    $ cd rosabootstrap-master
    

    И запустить скрипт rosabootstrap с необходимыми параметрами (полный список которых вы можете узнать, запустив этот скрипт с опцией «-h»):

    $ sudo ./rosabootstrap -d -a x86_64 -v 2012.1 -c 2012.1 -m http://mirror.yandex.ru/rosa/rosa2012.1/repository/x86_64/main/release
    

    Вот и все — после завершения работы скрипта с приведенными выше параметрами, у вас должна появиться директория 2012.1, в которую и необходимо сделать chroot::

    $ sudo chroot 2012.1