Select your language

"Настоящий программист не использует интегрированную среду разработки, ведь ему вполне достаточно [вставьте сюда название любого текстового редактора] с некоторыми плагинами." Все мы когда-то слышали подобное утверждение. Хотя и сложно не согласиться с ним, следует признать, что интегрированная среда разработки все же может оказаться полезной в ряде случаев. Во-первых, ее проще настроить и использовать сразу же после установки. Кроме того, в ней проще начинать разработку проекта с нуля. Поэтому в данной статье я постараюсь привести список наиболее удобных интегрированных сред разработки с поддержкой языков программирования C/C++ для Linux. Почему я акцентирую внимание именно на языках C/C++? Скорее всего, потому, что C является моим любимым языком программирования, кроме того, нужно с чего-то начинать. Вам также следует учесть тот факт, что существует большое количество подходов к разработке кода на языке C, поэтому с целью сокращения списка в него были включены лишь "реальные интегрированные среды разработки", а не текстовые редакторы, такие, как GEdit или Vim с плагинами. Данные текстовые редакторы не являются плохой альтернативой интегрированных сред разработки по каким-либо причинам, тем не менее, в случае их рассмотрения список оказался бы слишком длинным.

1. Code::Blocks

Code::Blocks

Начнем с моего любимого программного продукта, а именно, Code::Blocks - простой и быстрой интегрированной среды разработки с поддержкой языков программирования C/C++. Как и в любой достойной интегрированной среде разработки, в ней реализованы подсветка синтаксиса, вкладки, механизмы автодополнения кода и управления проектами, а также интегрирован отладчик. Ее главным преимуществом является простая система плагинов, которая позволяет добавить поддержку таких незаменимых инструментов, как Valgrind и CppCheck, а также реализовать такие менее нужные функции, как мини-игра Тетрис. Мне же она нравится из-за главным образом из-за своего набора очевидных и удобных горячих клавиш, а также большого количества параметров конфигурации, которые могут пригодиться в тех или иных ситуациях.

2. Eclipse

Eclipse

Я помню о том, что собирался описывать лишь "реальные интегрированные среды разработки", а не текстовые редакторы с плагинами, при этом Eclipse как раз является "реальной интегрированной средой разработки". Но для программирования на языке C в Eclipse все же нужно установить небольшой плагин. Таким образом, я не противоречу сам себе. Кроме того, было бы невозможно создать список интегрированных сред разработки без упоминания такого монстра, как Eclipse. Нравится вам это или нет, Eclipse остается отличным инструментом для разработки программных продуктов на языке Java. А благодаря проекту CDT, данная интегрированная среда разработки может с успехом использоваться и для разработки программных продуктов на языках C/C++. Вы сможете пользоваться всеми возможностями Eclipse, включая такие традиционные возможности, как автодополнение кода, визуализация структуры кода, генерация кода и мощный рефакторинг. На мой взгляд, единственным недостатком данной интегрированной среды разработки по сравнению с Code::Blocks является тяжеловесность. Она является крайне тяжеловесной, поэтому для ее полной загрузки требуется некоторое время. Но если ваша машина может достаточно быстро работать с ней или же вы являетесь фанатом Eclipse, эта интегрированная среда разработки будет отличным выбором.

3. Geany

Geany

Geany является более гибкой, но менее функциональной противоположностью Eclipse. При этом отсутствующие функции (например, отладчик) с лихвой компенсируются небольшими полезными инструментами: полем для добавления заметок, механизмом создания проектов из шаблонов, полем визуализации структуры кода, настраиваемыми горячими клавишами, а также инструментом для управления плагинами. Все-таки, Geany скорее можно назвать мощным текстовым редактором, а не интегрированной средой разработки. Однако, я включил ее в данный список из-за легковесности и отлично спроектированного интерфейса.

4. MonoDevelop

MonoDevelop

Еще одним монстром является MonoDevelop - интегрированная среда разработки с уникальными пользовательскими качествами, обусловленными ее внешним видом и интерфейсом. Лично мне нравятся ее встроенные инструменты для управления проектами и работы с системой контроля версий. Ее система плагинов также впечатляет. Но, по какой-то причине, все ее параметры конфигурации, а также поддержка множества языков программирования смущают меня. Данная интегрированная среда разработки остается отличным инструментом, который я использовал много раз в прошлом, но все же не может претендовать на первое место в том случае, если речь идет о работе с "простым" языком программирования C.

5. Anjuta

Anjuta

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

6. Komodo Edit

Komodo Edit

Я не очень хорошо знаком с интегрированной средой разработки Komodo Edit, но после работы с ней в течение нескольких дней, у меня остались лишь положительные впечатления. Во-первых, ее интерфейс навигации на основе вкладок является достаточно практичным в любых ситуациях. Удобная область визуализации структуры кода очень напоминает аналогичную область интегрированной среды разработки Sublime Text. Более того, система макросов и инструмент сравнения файлов делают интегрированную среду разработки Komodo Edit очень практичной. А библиотека плагинов делает ее практически идеальной. Я использовал слово "практически", так как используемые в ней горячие клавиши показались мне не такими удобными, как в других интегрированных средах разработки. Кроме того, я хотел бы увидеть более специализированные инструменты для работы с кодом C/C++, но этот недостаток свойственен практически всем популярным интегрированным средам разработки. В любом случае, это очень удобный программный продукт.

7. NetBeans

NetBeans

Как и в случае Eclipse, достаточно сложно игнорировать данный монструозный программный продукт. Благодаря наличию вкладок для навигации по файлам проекта, области визуализации структуры кода, механизма отслеживания истории изменений и множества дополнительных полезных инструментов, NetBeans может считаться самой функциональной интегрированной средой разработки из существующих. Но это достоинство может расцениваться и как ее недостаток, причем значительный. Несмотря на наличие множества полезных функций, я предпочитаю использовать программное обеспечение, поддерживающее плагины, так как сомневаюсь, что кому-либо может потребоваться поддержка систем контроля версий Git и Mercurial при разработке одного и того же проекта. Можете считать меня сумасшедшим. Но если вам хватит терпения для того, чтобы разобраться со всеми ее параметрами, вы, скорее всего, разберетесь с любой из интегрированных сред разработки для любой из платформ.

8. KDevelop

KDevelop

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

9. CodeLite

CodeLite

Наконец, последняя в списке, но не по значению интегрированная среда разработки CodeLite наглядно демонстрирует то, что вы можете использовать традиционную формулу и получить не ее основе что-либо самобытное. Ее интерфейс напомнил мне интерфейс интегрированных сред разработки Code::Blocks и Anjuta, при этом я был просто поражен ее богатой библиотекой плагинов. Если вам понадобится найти различия в файлах, добавить в файл исходного кода информацию об авторском праве, определить аббревиатуру или разместить свою работу в репозитории Git, для вас найдется подходящий плагин. Если говорить о мелочах, следует отметить, что в данной интегрированной среде разработки отсутствуют некоторые, по моему мнению, полезные горячие клавиши для навигации по коду, при этом я не могу найти каких-либо дополнительных недоработок.

Я надеюсь, что благодаря данному списку вы узнаете о новых интегрированных средах разработки с поддержкой вашего любимого языка программирования. Хотя Code::Blocks и остается моей любимой интегрированной средой разработки, даже при работе с ней иногда возникают значительные трудности. Также следует отметить, что мы рассмотрели далеко не все инструменты, облегчающие процесс разработки программных компонентов на языках C/C++ в Linux. Вы можете сообщить о своем любимом инструменте в разделе комментариев. Если же вы хотите, чтобы я описал интегрированные среды разработки с поддержкой других языков программирования в следующих статьях, вы также можете написать об этом в разделе комментариев.

По-умолчанию Обзор GNOME (Shell) отображает приложения двумя вариантами: «все», где все приложения перечислены в алфавитном порядке, и «часто используемые», где приложения отсортированы по частоте использования.

GNOME Shell поддерживает группировку приложений в папки, и есть две предопределённые папки, "Utilities" и "Sundry". Возможно, кто-то не знает, как создать собственные приложения папок. Давайте рассмотрим два способа достижения этого.

Создаем и редактируем папки приложений GNOME Shell с помощью GNOME AppFolders Manager

gnome appsfolder manager

GNOME AppFolders Manager – это инструмент для создания и редактирования папок приложений в GNOME Shell.

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

Когда вы добавите желаемые приложения в папку, кликните кнопку сохранения. На этом всё! Вот одна из папок приложений GNOME, которую я создал с помощью утилиты GNOME AppFolders Manager:

gnome appsfolder manager appfolder

Чтобы установить GNOME AppFolders Manager в Ubuntu GNOME 16.04, 15.10 или 15.04 (приложение требует версии GNOME 3.12+, в то время как Ubuntu 14.04 использует GNOME 3.10), вы можете использовать основной PPA-репозиторий WebUpd8. Чтобы добавить его в вашу систему и установить приложение, используйте следующие команды:

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install gnome-appfolders-manager

Пользователи Arch Linux могут установить GNOME AppFolders Manager через AUR.

Для других дистрибутивов Linux смотрите страницу установки приложения.

Добавляем приложения в папки, используя GNOME Software

Учтите, что у меня инструкции ниже не заработали в Ubuntu 16.04 с GNOME 3.18 и GNOME Software 3.20 (ошибок не отображалось, но папка просто не создавалась). Это также не работало в Fedora 24 с GNOME 3.20, но работало в Fedora 22 с GNOME 3.16.

Также стоит отметить, что GNOME Software не доступен в официальных репозиториях для версий Ubuntu старше, чем 16.04. Поэтому для версий Ubuntu (и GNOME), где эта возможность не поддерживается, используйте приложение GNOME AppFolders Manager.

Если вы используете GNOME Software, вы можете легко добавить приложения в папки и создавать новые папки. Чтобы сделать это, запустите GNOME Software, переключитесь на вкладку установленных приложений и кликните кнопку выбора (вверху справа).

appfolders gnome software

Затем выберите приложения, которые вы хотите добавить в папку, и кликните соответствующую кнопку:

appfolders gnome software

И, наконец, просто выберите папку, в которую вы хотите добавить приложения, или кликните +, чтобы создать новую папку, и нажмите Добавить:

appfolders gnome software

Точно также вы можете также удалять или перемещать приложения между папками.

Вот результат:

appfolders gnome software

Организация Linux Foundation объявила о выпуске дистрибутива AGL UCB 2.0 (Automotive Grade Linux Unified Code Base), в рамках которого развивается универсальная платформа для использования в различных автомобильных подсистемах, от панелей приборов до автомобильных информационно-развлекательных систем. В разработке проекта участвуют такие компании, как Toyota, Ford, Nissan, Honda, Jaguar Land Rover, Mazda, Mitsubishi и Subaru.

Read More

В сеть утекла информация о новом смартфоне под управлением Ubuntu от компании Meizu, который получил кодовое имя Midori. Смартфон Meizu MX6 Ubuntu Edition предлагает выдающиеся аппаратные характеристики.

Read More

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

Read More

Проект ONLYOFFICE, в рамках которого развивается работающий в облаке набор офисных приложений, поддерживающий организацию совместной работы, опубликовал новую версию серверного решения - ONLYOFFICE Document Editors 4.0. Исходные тексты серверной и клиентской частей проекта распространяются под лицензией AGPLv3. В системе имеется поддержка популярных форматов докуменов, презентаций и электронных таблиц: DOC, DOCX, ODT, XLS, XLSX, PPT, PPTX, RTF, TXT, PDF, HTML, EPUB, XPS, DjVu , ODS, CSV, ODP;

Read More

Сделать это несложно, просмотрите короткую инструкцию и попробуйте сделать то же самое

Компания Canonical, отвечающая за разработку Ubuntu и корпорация Microsoft в начале этого года объявили о включении bash и основного инструментария Ubuntu в Windows 10. Знакомство с новыми возможностями Windows 10 с элементами Ubuntu можно было начать еще в апреле, начиная с обновления 14316. В этом обновлении к Windows 10 добавили WSL-прослойку, которая транслирует системные вызовы Linux в системные вызовы Windows. В результате в среде Windows стало возможным развернуть полноценный инструментарий Ubuntu Linux без эмуляции и виртуализации. Окончательная интеграция будет выполнена с выходом Anniversary Update в августе.

В апреле этого года специалисты научились запускать и десктопные приложения Ubuntu с графическим интерфейсом в среде Windows 10. Пользователь Reddit с ником w2qw нашел способ установить VIM и Firefox. Сейчас пользователь Github с ником Guerra24 смог запустить в среде Windows оболочку рабочего стола Ubunu Unity.

Для успешного запуска требуется выполнить несколько шагов. Дело в том, что X-серверы вроде vcxsrv или Xming в среде Windows 10 работают без особых проблем. Но большинству приложений для работы необходим сервис dbus, который по умолчанию не работает. Из-за этого десктопные приложения вроде Firefox или virt-manager, запущенные в подсистеме Linux, «падают» уже при запуске или через короткое время после запуска. Напрямую не работает и Unity — оболочке тоже требуется dbus.

Юзеру ShaRose с Reddit удалось «завести» dbus. Изначально ему (или ей) захотелось попробовать установить virt-manager, чтобы получить возможность администрировать qemu-сервера в среде Windows без необходимости работы с виртуальной машины. И сервер dbus, который требуется для работы virt-manager, удалось «завести».

Для установки нужна «чистая» Windows 10 с интегрированным инструментарием Ubuntu. Если все это уже имеется, необходимо выполнить всего три шага:

1. Устанавливаем X-сервер. И vcxsrv, и Xming работают нормально.

2. Добавляем DISPLAY=:0.0 к bashrc: Это можно сделать следующим образом:

echo «export DISPLAY=:0.0» >> ~/.bashrc

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

3. Теперь чиним dbus. Проблема с dbus в том, что для работы здесь требуются unix-сокеты, которые bash для Windows пока не поддерживает. Поэтому все, что нужно — «объяснить» dbus, как работать с tcp.

Сделать этого довольно просто. В /etc/dbus-1/session.conf заменяем unix:tmpdir=/tmp строкой tcp:host=localhost,port=0. Вот и все.

Для этого выполняем такую команду:

sudo sed -i 's/.*/tcp:host=localhost,port=0/' /etc/dbus-1/session.conf

Firefox и virt-manager работают отлично. Chrome, к сожалению нет. Но самое главное — теперь можно приступить к установке Unity в WSL.

Сразу Unity работать не будет, необходимо установить ccsm (CompizConfig Settings Manager), а затем запустить VcXsrv, используя XLaunch (сейчас это единственный X сервер, работающий с Unity). После запуска в появившемся окне заменяем номер дисплея на 0. Все остальные установки оставляем по умолчанию.

Теперь запускаем ccsm, где активируем плагин Unity. При выводе меню пользователь увидит несколько опций, нужно выбрать Copy to Texture plugin. После этого в нижней части настроек Window Management активируем все плагины кроме одного — Grid. Этот плагин должен быть неактивен.

Теперь выходим из ccsm, а в bash запускаем compiz. Будут показаны несколько сообщений об ошибках, но Unity должна загрузиться нормально.


Это еще Windows или уже Ubuntu?

В этой среде можно будет запускать только программы, иконки которых есть на панели. Запустить командную строку в Unity нельзя, поэтому снова открываем bash в Windows, повторяем операцию с дисплеем и запускаем gnome-terminal. Теперь появляется иконка командной строки, и ее можно использовать.



Кроме Unity можно запустить и xfce4. В этом случае требуется выполнить только первый этап по «ремонту» dbus, второй этап относится только к Unity, здесь он не нужен. После того, как в среде Windows начинает нормально работать dbus, можно запустить xfce4, хотя работает оболочка не слишком стабильно.

Пользователи экспериментальной прослойки WSL ("Windows Subsystem for Linux"), намеченной для включения в основной состав Windows 10 в августовском обновлении, обнаружили, что её возможности значительно шире заявленных функций. Напомним, что прослойка WSL обеспечивает трансляцию системных вызовов Linux в системные вызовы Windows и позиционируется как средства для запуска консольных приложений Linux в Windows. Энтузиасты выяснили, что возможностей WSL уже вполне достаточно для запуска графических приложений, оконных менеджеров и целых рабочих столов.

Read More

Фонд Свободного ПО объявил о присвоении сертификата "Respect Your Freedom" 3D-принтеру LulzBot TAZ 6. Сертификат подтверждает соответствие устройства требованиям обеспечения приватности и свободы пользователей и даёт право использовать специальный логотип в связанных с продуктом материалах, подчёркивающий предоставление пользователю полного контроля над устройством.

Read More

imageВ этой статье я покажу вам на своём опыте, что GNU/Linux и графические оболочки для него уже дозрели до уровня планшетов и вовсе не нужно бояться покупать трансформер\планшет только из-за того, что вы приверженный линуксоид. Здесь описывается сравнение и выбор оптимальной среды рабочего стола (далее DE) для планшета или трансформера, её установка и доработка для сенсорного управления.

Небольшая предыстория

Являясь обладателем небольшого (по современным меркам) телефона, 7" планшета и ноутбука, пришла мысль о замене устройств. После некоторого раздумия пришёл к выводам:

  • хочется большой (5.5-6") телефон, чтобы можно было удобно смотреть фильмы и серфить в интернете;
  • тогда в маленьком планшете нет смысла, т. к. телефон его полностью заменит, и при этом будет помещаться в карман;
  • для 10" планшета уже нужна сумка, так почему бы тогда не взять что-нибудь побольше?
  • хотелось бы соединить большой планшет и ноутбук в одно устройство.

Вывод был один: трансформер – идеальный вариант.

Далее предстоял выбор трансформера: хотелось бы не просто планшет с подключаемой по Bluetooth клавиатурой, а полноценный мощный ноутбук с отсоединяемым экраном и дополнительными портами в док-станции. Мой долгий выбор пал на одну из моделей HP. О нём я рассказывать не буду, т. к. статья не про это (да и вообще получится реклама). Скажу лишь, что мне очень понравилась концепция модульности: у вас в руках мощный и лёгкий (900г) планшет, который при подключении в док-станцию приобретает настоящую клавиатуру, дополнительный жёсткий диск и становится ноутбуком, который может проработать 12 часов от 2х батарей. Паралельно со мной моей девушке понадобился ноутбук по учёбе, она хотела маленький и лёгкий, с flip форм-фактором (петли могут поворачиваться на 360°, откидывая клавиатуру за крышку и превращая ноутбук в планшет). Её выбор остановился на модели производства Dell.

Итак, у меня оказались на руках 2 устройства одного назначения, но абсолютно разного исполнения. На HP изначально была Windows 8, на Dell — 8.1. Обе системы были удалены после проверки работоспособности в магазине.

Выбор дистрибутива и DE

Всё должно быть предназначено для управления тачем, интерфейс должен быть единым и для ноутбука, и для планшета — такие концепции я поставил перед собой. Начитавшись в интернете про поддержку тачскрина разными DE, решил поставить Ubuntu из-за жестов. Жесты оказались действительно удобными, скролл пальцем есть, также для тача очень удобна широкая панель Unity (удобно листать и открывать приложения). На этом удобства закончились. Мелкие кнопки закрытия и сворачивания окна (развернуть можно жестом), невозможность пролистывания главного меню, неудобное скрытие панели (в портретной ориентации она занимает много места, а раскрыть её можно только жестом четыремя пальцами). Это меня не устраивало, к тому же я недолюбливаю Ubuntu. Поскольку Ubuntu c Unity я отбросил, а остальные известные DE с хоть какой-то поддержкой жестов можно поставить почти любой дистрибутив, был выбран ArchLinux из-за прошлого опыта (он стоит на всех моих устройствах).

Были установлены KDE4, XFCE и Gnome 3.

Тачскрин работал во всех DE из коробки, т. к. им управляет X-сервер (драйвер xf86-input-evdev устанавливается вместе с Xorg как зависимость в ArchLinux)

KDE:
плюсы:

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

минусы:

  • нет никакой поддержки тача, скролл пальцем не работает, хорошо хоть приложения перетаскиваются пальцем, пользоваться невозможно

XFCE:
плюсы:

  • минималистичность, для небольших мощностей планшетов – только полезно

минусы:

  • прокрутка пальцем не работает;
  • отсутствие жестов.

Впрочем, XFCE ругать не за что, так как разработчики позиционируют её как в первую очередь как легковесная система для нетбуков, с чем XFCE справляется отлично.

Gnome 3:
плюсы:

  • хоть какая-то экранная клавиатура, которая вылезает только при касании поля ввода (если кликнуть туда мышью клавиатура не раскроется);
  • мультитач-жесты, хоть и не такие удобные, как в Unity;
  • принцип управление окнами и панели как будто для планшетов и создавались;
  • меню приложений в виде крупных иконок, которые можно листать пальцем;
  • удобный менеджер сеансов (gdm) с поддержкой тача;
  • хорошая расширяемость плагинами;
  • все стандартные приложения поддерживают мультитач (например, масштабирование сведением двух пальцев в просмотре изображений).

Минусы:

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

Итак, возьмём за основу Archlinux с Gnome 3 и доработаем его.

Установка

Установку описывать не буду, всё есть по ссылке. Если хотите ускорить установку, сделайте так:

pacstrap /mnt grep sed filesystem shadow pacman screen nano mkinitcpio # ставим основню систему и всё нужное
genfstab -pU /mnt >> /mnt/etc/fstab # генерируем fstab
arch-chroot /mnt # переключаемся на нашу новую систему
screen -dm pacman -S —noconfirm base # запускаем установку остальной системы в фоне. Сюда можете добавить пакеты, которые вам нужны в новой системе

Далее делаете всё, что указано в статье на Wiki после пункта «Change root into the new system».

После основной настройки системы установим Gnome 3:

pacman -Sy gnome
systemctl enable gdm
systemctl start gdm

Настройка

Начнём, собственно, адаптацию под планшет:

  1. Включим правый клик по долгому нажатию (с мышью тоже будет работать):
    gsettings set org.gnome.desktop.a11y.mouse secondary-click-enabled "true"
    gsettings set org.gnome.desktop.a11y.mouse secondary-click-time "0.6"
    Вместо 0.6 можете подставить комфортное для вас время, после которого будет сделан клик правой мышью. Минус в том, что палец нужно держать идеально ровно все эти 0.6 секунд, поэтому этот фокус получается только с 2-3 раза. Нужна альтернатива.
  2. У большинства планшетов есть кнопка Windows (как правило под экраном). Было бы логично при нажатии на неё открывать «обзор», но он и так удобно открывается жестами, поэтому мы повесим на эту кнопку правый клик:
    Устанавливаем xdotool и xbindkeys:
    pacman -S xdotool xbindkeys
    Чтобы узнать, как определяется у вас подэкранная кнопка, выполните:
    touch ~/.xbindkeysrc
    xbindkeys -k
    Запишем конфигурацию xbindkeys и добавим его в автозагрузку (вместо Super_r подставьте свой идентификатор кнопки, полученный из предыдущей команды):
    echo "\"env DISPLAY=:0 xdotool click 3\" Super_R" > ~/.xbindkeysrc
    echo "[Desktop Entry]
    Name=Xbindkeys
    Exec=xbindkeys
    Type=Application
    Terminal=false" > /etc/xdg/autostart/xbindkeys.desktop
  3. Сделаем ползунки яркости и громкости пошире. Для этого скачаем патч и применим его:
    curl http://pastebin.com/raw.php?i=F2WJiEUC > /tmp/theme.patch
    patch /usr/share/gnome-shell/theme/gnome-shell.css < /tmp/theme.patch
    Получится примерно так:

    image
  4. Если вы уведёте планшет в сон, после пробуждения вы заметите, что тач то собственно не работает. Gnome зачем-то отключает его как устройство ввода в X-сервере. Простое «xinput enable «ELAN Touchscreen»» исправит ситуацию после сна. Давайте сделаем демон systemd, который будет выполнять эту команду сразу после сна:
    echo "[Unit]
    Description=Fix touchscreen after resume
    After=suspend.target
    [Service]
    Type=simple
    ExecStart=env DISPLAY=:0 xinput enable 'ELAN Touchscreen'
    [Install]
    WantedBy=suspend.target" > /usr/lib/systemd/system/touchscreen-fix.service
    systemctl enable touchscreen-fix
  5. Автоповорот… Не думал, что всё будет так легко. Драйвер для акселеометра на обоих ноутбуках не потребовался, lsusb опознавал его как «0483:91d1 STMicroelectronics». Был быстро написан скрипт на python для автоповотора. Нужно поставить python2 и прописать скрипт в автозагрузку:
    pacman -S python2 xorg-xrandr
    curl http://pastebin.com/raw.php?i=nnecb7iA > /usr/bin/autorotate
    chmod +x /usr/bin/autorotate
    echo "[Desktop Entry]
    Name=Autorotate
    Exec=python2 /usr/bin/autorotate
    Type=Application
    Terminal=false" > /etc/xdg/autostart/autorotate.desktop
  6. Отключим автопоказ стандартной экранной клавиатуры:
    sed -i 's/^Exec/#Exec/g' /usr/share/dbus-1/services/org.gnome.Caribou.Daemon.service /usr/share/dbus-1/services/org.gnome.Caribou.Antler.service
  7. Установим и настроим Onboard (отличная экранная клавиатура для планшета):
    pacman -S onboard
    gsettings set org.onboard.auto-show enabled "true" # автопоказ клавиатуры при касании в поле ввода
    gsettings set org.onboard.keyboard touch-feedback-enabled "true" # увеличение кнопок при нажатии
    gsettings set org.onboard.window docking-enabled "true" # прикрепить клавиатуру к низу экрана
    gsettings set org.onboard.window enable-inactive-transparency "true" # увеличение прозрачности при простое
    gsettings set org.onboard.window force-to-top "true" # всегда на переднем плане
    gsettings set org.onboard.window inactive-transparency "60.0" # прозрачность при простое
    gsettings set org.onboard.window transparency "20.0" # общая прозрачность
    gsettings set org.onboard.window transparent-background "true" # прозрачный фон
    gsettings set org.onboard.window window-decoration "false" # отключить заголовок окна (где кнопки закрыть, свернуть, etc.)
    gsettings set org.onboard layout "/usr/share/onboard/layouts/Compact.onboard" # раскладка
    gsettings set org.onboard show-status-icon "true" # показывать иконку панели уведомлений
    gsettings set org.onboard start-minimized "true" # запускать скрытой
    echo "[Desktop Entry]
    Name=Onboard-autostart
    Exec=onboard
    Type=Application
    Terminal=false" > /etc/xdg/autostart/onboard.desktop
    Теперь клавиатура будет появляться после клика в месте ввода. Это работает даже с мышью и тачпадом, поэтому если подразумевается такое использование планшета, выполните:
    gsettings set org.onboard.auto-show enabled "false"
    Чтобы вручную открыть клавиатуру, достаточно свайпнуть вверх с нижнего края экрана и нажать на иконку Onboard.
  8. При использовании без клавиатуры меню выбора ОС в Grub можно скрыть. Для этого поставим пакет из AUR:
    curl -O https://aur.archlinux.org/packages/gr/grub-holdshift/grub-holdshift.tar.gz
    tar -xf grub-holdshift.tar.gz
    cd grub-holdshift
    makepkg -si
    grub-mkconfig -o /boot/grub/grub.cfg
  9. Если в вашем планшете SSD, советую также прочитать эту статью
  10. Ещё большую функциональность жестов (например, разворачивание окна на весь экран свайпом тремя пальцами вверх, сворачивание свайпом вниз) сможет дать touchegg. Однако стандартных мультитач-жестов в Gnome достаточно.

Теперь система готова для использования только тачскрином. Всё удобно, а главное, отлично адаптировано под формат планшета, при этом во время работы в режиме планшет+док-станция, отличий от обычного Gnome 3 вы почти не заметите.

Вывод

Если вы приверженный линуксоид, и вы не покупаете планшет\трансформер только из-за того, что придётся отказаться от Linux — ничего подобного. Работать гораздо удобнее чем в Windows из-за, хотя бы, поддержки жестов в Gnome 3.

После обновления 3.16 в Gnome изменили дизайн трея, теперь это не панель, выдвигающаяся снизу экрана
image (как же это было удобно на тачскрине), а маленькая панелька снизу слева, которая содержит только иконки image. Кстати, ей ещё и невозможно пользоваться на планшете (баг я зарепортил уже давно).

В итоге пользоваться клавиатурой стало трудно, иногда даже включал «плавающий значок при свёрнутом Onboard» в настройках. Это решается расширением, которое позволяет открыть клавиатуру свайпом вверх с нижнего края экрана.
Также пункт 6 утратил актуальность, теперь это также решается расширением. Если вы таки предпочитаете стоковую клавиатуру и вам не нравится, что она накладывается сверху на окна, можете воспользоваться этим.
Также можно немного облегчить жизнь в портретном режиме (при 1366x768 туда не влазит большинство заголовков окон), поставив это и вот это.