LINUX.ORG.RU

Сообщения geekless

 

MIN_INT / -1

Форум — Talks

Поискал по форуму, кажется, эта тема еще не обсуждалась.

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

!Ъ:
http://avva.livejournal.com/2548306.html
http://users.livejournal.com/_winnie/375276.html

Ъ:

Прикольно - оказывается, инструкция idiv, деление со знаком, на x86 кидает исключение не только при делении на ноль, но и когда результат не помещается в регистр. А этого очень легко добиться, написав в C например INT_MIN / -1. Как мы помним, INT_MIN по модулю на единицу больше, чем INT_MAX; например, в 32-битных числах INT_MIN равно -2147483648, а INT_MAX равно 2147483647. Поэтому когда INT_MIN делят на -1, положительный результат не вмещается в 32 бита.

Само по себе это не катастрофа - ну кидает исключение, ну и подумаешь. Дело в том, однако, что про деление на ноль все знают и помнят, и проверяют перед попыткой делить. А против INT_MIN/-1 никто практически не защищается. Поэтому можно, например:

- крэшнуть компилятор (правда, игрушечный), PostgreSQL (не игрушечную) или антивирус;
- подвесить Windows 8;
- убить bash

 

geekless
()

Снова про файловые менеджеры

Форум — Talks

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

  • Двухпанельность. (Не как в наутилусе, а настоящая. С возможностью задействовать файлы и пути с обех панелей в операциях и в вызовах внешних команд.)
  • Способность заходить в архивы.
  • Режим таблицы, который действительно отображает информацию компактно, а не «для галочки». (Примеры хорошего режима таблицы: mc, gnome-commander. Примеры плохого: thunar и большинство других.)
  • Режим здоровых иконок с превьюшками картинок и видео.
  • Отсутствие лишнего мусора в интерфейсе. (Тот же gnome-commander, например, усиленно пытается передрать внешний вид Total Commander-а, вот только все эти панельки и тулбары у него занимают места раза в полтора больше, чем в оригинале, при том, что и выглядят хуже, и функций на них меньше. Такое - в топку.) А если мусор всё же есть - возможность его показ отключить.
  • Полностью конфигурируемые хоткеи.
  • Возможность добавлять в менюшки и вешать на хоткеи вызовы внешних команд.

Мне кажется, или ФМ с заданными характеристиками не существует?

geekless
()

wiki-подобная записная книжка

Форум — Desktop

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

  • Хранение структуры в виде простого дерева каталогов ФС и текстовых файлов, чтобы была возможность загнать всё в git и через него смотреть историю и синхонизировать копии между собой.
  • Простой язык разметки с поддержкой подзаголовков, курсива, полужирного начертания, гиперссылок, таблиц и фрагментов кода.

Zim не умеет таблицы (для меня это важно). wikidPad, кажется, тоже не умеет таблицы, да еще и тормозит. CherryTree хранит данные в sqlite/xml. (Да и таблицы там страшные.)
Какие еще бывают записные книжки, галактеко?

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

 ,

geekless
()

Полосы прокрутки в gtk2 и gtk3

Форум — Talks

Только теперь заметил, что в gtk3 изменили реакцию полос прокрутки на щелчки мыши. Было:

  • ЛКМ — страница вперед/назад
  • СКМ — точное позиционирование
  • ПКМ — нет действия

Стало:

  • ЛКМ — точное позиционирование
  • СКМ — нет действия
  • ПКМ — страница вперед/назад

Что вообще курят эти люди? Им совсем нечем заняться, кроме переставления местами трех констант туда-сюда?

 ,

geekless
()

Цветовая маркировка в колонке Size

Форум — General

Запишу тут, чтоб не забыть:

Интересная фича в htop разным цветом обозначать разные разряды размера (меньше тысячи, тысячи, миллионы) — http://s017.radikal.ru/i440/1211/38/f08a35499107.png

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

geekless
()

GTK facepalm

Форум — Talks

Добры молодцы из команды GTK навертали чертову уйму классов для отделения логики от интерфейса. Все эти GtkAction, GtkUiManager, GtkActivatable и прочие упоительные названия.

У GtkAction есть имя, иконка, тултип, состояния sensetive и visible. На их основе генерируется внешний вид и состояния менюшечек и тулбаров. Короче, всё как у взрослых.

Почти. Если не считать того досадного факта, что тултип абсолютно бесполезен, т.к. не используется при создании меню.

Ладно. Решаю по-быстрому накалякать пару костылей — у нас же ООП, реюз кода во все поля и всё такое прочее. Мы можем переопределять поведение объектов и разводить руками тучи.

GtkImageMenuItem реализует интерфейс GtkActivatable и через него получает апдейты состояния. Ок, унаследуем свой класс от GtkImageMenuItem и допишем нужный код по установке тултипа.

GtkAction рожает из себя менюшки на основе класса, указанного в одном из полей своего класса. Ок, унаследуем свой класс от GtkAction и переопределим поле, засунув туда собственный класс менюитема.

Всё красиво, всё поООПшному, архитектурные космонавты в восторге.

Стоп. Про что-то мы забыли. А кто создаёт GtkAction-ы? GtkAction-ы создаёт GtkActionGroup. Открываем код. Смотрим. Еще раз смотрим. Хлопаем глазами и не верим в то, что видим:

void
gtk_action_group_add_actions_full (GtkActionGroup       *action_group,
				   const GtkActionEntry *entries,
				   guint                 n_entries,
				   gpointer              user_data,
				   GDestroyNotify        destroy)
{

  /* Keep this in sync with the other 
   * gtk_action_group_add_..._actions_full() functions.
   */
  guint i;
  SharedData *shared_data;

  g_return_if_fail (GTK_IS_ACTION_GROUP (action_group));

  shared_data = g_slice_new0 (SharedData);
  shared_data->ref_count = 1;
  shared_data->data = user_data;
  shared_data->destroy = destroy;

  for (i = 0; i < n_entries; i++)
    {
      GtkAction *action;
      const gchar *label;
      const gchar *tooltip;

      if (!check_unique_action (action_group, entries[i].name))
        continue;

      label = gtk_action_group_translate_string (action_group, entries[i].label);
      tooltip = gtk_action_group_translate_string (action_group, entries[i].tooltip);

      action = gtk_action_new (entries[i].name,
			       label,
			       tooltip,
			       NULL);

Даааа, дааа, да! Развесистое дерево наследований. Абстрактные интерфейсы. Переменные класса. Фантастика на грани техники. Чертова уйма overengineered кода, который абсолютно бесполезен, потому что в итоге всё равно вся эта развесистая космическая архитектура запинается о вовремя подставленный gtk_action_new(), падает и разбивается к едреней фене. И хоронит под собой все ваши иллюзии, будто ООП волшебным образом превращает всех плохих программистов в хороших. Enjoy your code reuse.

А, да: баг репортить не буду. Если кому надо, репортите сами. Я ж обещал, что к разработке стека гномобиблиотек и пальцем не притронусь, даже на уровне отсылки багов. Лучше пойду придумаю обычный костыль с ручным назначением тултипов, без всей этой архитектурной космонавтики.

 ,

geekless
()

Bells and whistles

Галерея — Скриншоты

Давно я в галерею не постил, да.

На скриншоте lxpanelx: панель задач или док, называйте как хотите.

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

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

Фон панели задач прозрачный. Снизу какая-то обоина выглядывает; без понятия, какая — они у меня сами из сети качаются и рандомно выкладываются на рабочий стол.

Риторический вопрос: а эта ваша Unity так умеет?

 ,

geekless
()

Про редкие оконные менеджеры

Форум — Talks

Некоторые WM довольно известны, но почти/вообще не упоминаются на ЛОРе. Интересно, кто-нибудь ими пользуется?

Ладно Blackbox — загнулся в 2005-м, но вот например AfterStep вполне себе живой.

Или PekWM — «типа нескучный, молодежный WM». Кстати, с поддержкой вкладок.

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

 , , ,

geekless
()

Этот ваш geany

Форум — Talks

Пробую пользоваться geany 3-й день вместо православного medit.

В принципе, оба редактора стоят на одной ступеньке. Называть geany IDE я бы поостерегся — можно пару плагинов к medit дописать, и получится такая же «IDE». Нет, на самом деле это всё ж обычный редактор.

Вещи, которые не понравились:

  • Режим с тайлингом прикручен костылями и не работает как надо. Вся навигация (поиск, переход к тегу) работает только с главным под-окном. Это сводит на нет практически всю пользу от второго под-окна. Навигация по ctrl+click во втором под-окне вообще не работает.
  • У панели файлов нет в контекстном меню пунктов «Создать файл», «Создать каталог», а также копировать, вырезать, вставить и удалить.
  • У панели файлов кнопочка «Установить путь из документа» не ставит выделение на текущий файл.
  • Не нашел способа включить показ табов, но не включать показ пробелов.
  • В меню «сборка» количество пунктов фиксировано. Будь там возможность добавить сколько угодно своих пунктов, было бы совсем другое дело. А так это меню практически бесполезно.
  • Не сохраняет историю поисков между запусками.
  • #if 0 не помечается как комментарий.

Вещи, которые оказались бесполезны:

  • Панель с тегами. Огромный список имен бесполезен для навигации. Удивило отсутствие само собой напрашивающейся опции: инкрементального поиска и фильтрации по тегам. Вот это было бы реально полезно. Есть возможность повесить хоткей на команду «Перейти к списку тегов» и затем, когда эта панель в фокусе, вводить текст — но это обычный поиск по списку, это совсем не то.
  • Сворачивание блоков кода. Никогда не пользовался этой опцией, за исключением нескольких случаев работы с реально-очень-длинными-файлами-с-кучей-огромных-глобальных-определений, так что мне наличие этой фичи безразлично.
  • Поиск по файлам неюзабелен: всегда по дефолту предлагает искать от каталога текущего файла. А мне хотелось бы по дефолту искать от каталога всего проекта. Как это настроить, не нашел. В целом поиск оказался ничуть не удобнее поиска при помощи алиаса на grep в bash.
  • Меню сборки бесполезно, во-первых, из-за малого количества пунтов. Во-вторых, таки часто приходится даже в пределах одного проекта вводить всякие РАЗНЫЕ команды на сборку, запуск, отладку и т.п. Меню тут помочь никак не может, обычная консоль с историей bash-а намного удобнее.

Вещи, которые полезны, и которых нет в medit:

  • Переход к определению тега под курсором по хоткею ctrl+t или ctrl+click.
  • Возможность иметь разные профили настроек («проекты»).
  • Переход по щелчку из лога компилятора к строке с ошибкой в принципе удобен — но в свете бесполезности меню «сборка» не пригоден к практическому применению. Как совместить оба профита, пока не представляю.

В целом редактор как редактор. Что в нём его любители такого особенного нашли, я так и не понял. Из-за всего вышеперечисленного производит впечатление сырости и недоделанности. Если бы кто-то потратил месяца 3 исключительно на доводку подобных мелких, но раздражающих вещей, получилась бы гораздо более годная штука.

 ,

geekless
()

Правильная реализация рабочего стола

Форум — Talks

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

Когда-то давно, когда в морях и океанах еще резвились плезиозавры, а Торвальдс был простым финским студентом, инженерам Microsoft вдруг взбрело в голову задаться вопросом: вот есть у нас такие замечательные окна, а то, что под окнами, — что же это? Не придумав ничего лучшего, они засунули туда отображение содержимого первого попавшегося каталога и назвали это рабочим столом. Но поскольку стол не был для WM-а полноценным приложением и всегда был снизу, вскоре выяснилось невероятное: оказывается, этим столом немного неудобно пользоваться! Кто бы мог подумать. («Он же закрыт окнами! Как мы сразу-то не догадались!») После этого в качестве костыля на свет божий вылупилась кнопка «Свернуть все окна». Так всё это и ушло в релиз. Нормальные люди посмотрели на это торжество дизайна над здравым смыслом, да и забыли.

Спустя некоторое время плезиозавры вымерли, Торвальдс уехал обживать Олимп, а наши братья меньшие обрели разум и начали строить Gnome. Как и полагается меньшим, начали они с копирования того, что было у старших. Скопировали ярлычки, скопировали реестр, скопировали рабочий стол, сокопировали и ту самую кнопочку. Шли месяцы, годы, медленно вращалась Галактика, рождались и умирали дистрибутивы, на ЛОРе производился метан. В мире царила стабильность.

***

После более чем десяти лет титанической, почти непосильной работы мысли, сумрачные гении из Microsoft вдруг осознали невероятное: рабочий стол — он ведь тоже окно! Это замечательное открытие конечно не могло не найти практического применения, и вот в Семерке мы смогли наконец увидеть нормальный способ переключения на рабочий стол и обратно — через Alt-Tab. В мире что-то пошатнулось.

В стане строителей каменных статуй Гномов шок от увиденного был столь велик, что оправиться от него они так и не смогли. Обессиливая и изнемогая в попытках осмыслить произошедшее, наши меньшие братья выпилили сначала заветную кнопочку, потом выпилили панель, на которой она лежала, выпили следом рабочий стол, выпилили и запилили в другое место иконки, выпилили половину файлового менеджера, измазались в CSS и случайно еще раз переизобрели реестр. Но всё было тщетно, гармонии с миром и природой больше не было. На руинах своего полуразрушенного обиталища сходящие с ума гномеры выбили в отчаянии надпись GNOMEISHELL, подводя итог своим злоключениям, после чего окончательно провалились в амфетаминовую дыру. Буква I в надписи, кстати, была выбита не чётко, многие не могут её правильно прочитать и видят там дефис.

***

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

Для полного счастья само окно должно обладать следующим поведением: при получении фокуса выставлять себе стейт above и выплывать поверх всех окон, а при потере фокуса выставлять стейт below (или desktop) и уплывать вниз с глаз долой. Тут возможны три варианта, как это сделать:

  • Допатчить в openbox возможность динамически назначать окнам свойства в зависимости от значения других свойств и затем использовать фичу через его конфиг.
  • Использовать какой-нибудь наколеночный скрипт, который делает то же самое.
  • Запатчить фичу непосредственно в программу, окна которой мы будем юзать этим способом. (pcmanfm, spacefm, какие-нибудь тулзы для показа полноэкранных апплетов и т.п.)

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

Товарищи, скачущие с DE на DE, я вам хочу сказать: хватит жрать кактус. Изучите уже сишечку и займитесь каким-нибудь делом.

Пора уже осознать, что никто нам не поможет, кроме нас самих.

 

geekless
()

gtk за глобальное потепление!

Форум — Talks

Возьмём такой обычный файловый менеджер как spacefm. На самом деле, тред вовсе не про ФМ, а про ФГМ разработчиков тулкита, но надо ж на ком-то ставить опыты.

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

2.5-гигагерцового процессора не хватает чтобы мгновенно обновить картинку в окне и поставить курсор с одной панели на другую. Реально не хватает. Между нажатием мыши и перерисовкой окна проходит ощутимая задержка, примерно в 1/3..1/2 секунды. Разница отчетливо заметна, если попробовать просто потыкать мышкой в пункты одной и той же панели: в этом случае всё происходит действительно мгновенно.

Те же самые инновационные технологии можно наблюдать и в tuxcmd, например. И вообще где угодно, где используются стандартные компоненты ListView или TreeView. Не обязательно даже переключаться между двумя TreeView, сойдёт и переключение между TreeView и строкой адреса, например. Тормоза те же самые.

Теперь запустим этот же spacefm с gtkparasite, включим показ обновлений окна и таки да, убедимся, что творится полное говно: при потере или получении фокуса TreeView перерисовывается весь полностью. Вернее, в данном случае перерисовываются аккурат два TreeView.

Ночь. Улица. Фонарь. Аптека. Развернутый на весь экран файловый менеджер. Процессор, судодорожно перемалывающий десятки мегабайт битмапов, чтобы в конечном счёте пользователь увидел перемещение маленькой синенькой рамочки из одного угла в другой. Идиотизм.

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

Кстати, чтобы улучшить климат на планете, gtk еще и перерисовывает все виджеты при входе/выходе мыши в их границы. Даже если они ни в малейшей степени не нуждаются в перерисовке. То есть понятно: это всё ради возможности ставить темы оформления на тулкит, универсальный подход и все такое. Не понятно только, почему универсальный подход всегда получается через жопу.

А теперь о вещах, которые реализованы правильно:

andromeda — первый попавшийся под руку ФМ на Qt, чтоб проверить как аналог TreeView работает в Qt. Отлично работает, никаких лагов.

gnome-commander. Эти ребята реализовали собственный виджет для панелей, и поэтому тоже не участвуют по всемирном движении за повышение температуры атмосферы.

Ну и total commander в винде, разумеется. Но об этом нельзя говорить вслух, ведь все же знают, что распрекрасный линукс рулит, а винда и все приложени для неё — сосут.

 ,

geekless
()

Конфиги в /usr?!

Форум — Talks

В логе пакетного менеджера сейчас узрел это:

(37/63) обновление kdebase-workspace
предупреждение: /usr/share/config/kdm/kdmrc установлен как /usr/share/config/kdm/kdmrc.pacnew

WTF?

Ёрш их через полено, скажите мне, что это просто ошибка сборщика пакета, и на самом деле kde не хранит конфиги в /usr!

Или нет... оно их действительно там хранит? Разупорину всей команде kde, срочно. Эти люди под тяжелыми веществами!

 , ,

geekless
()

Три патча на wmctrl

Форум — Talks

Господа, я тут немного обработал напильником wmctrl. Пользуйтесь, кому надо: http://make-linux.blogspot.com/2012/11/wmctrl.html

Добавленные фичи:

  • undecorated для openbox;
  • сортировка списка окон по глубине;
  • сворачивание окон.

 ,

geekless
()

Подумалось тут

Форум — Talks

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

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

На современном десктопе, чтобы смонтировать несчастную флешку, пользователь тыкает в ФМ, который дергает тулкит, который стучится через dbus к udisk-у, который проверяет права доступа через policykit, которому о наличии прав сообщает systemd-logind, который является составной частью инфраструктуры PID 1.

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

P.S. И вот казалось бы, какая связь может быть между поддержкой ядром cgroups и возможностью смонтировать флешку? Но глядя на systemd, мы начинаем о чем-то постепенно догадываться...

geekless
()

mcedit и иксовый буфер обмена

Форум — General

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

Предлагаю в mcedit добавить возможность вызывать внешнюю команду каждый раз, когда пользователь изменяет выделение текста, и передавать ей в stdin содержимое выделеной области.

cast Slavaz

geekless
()

Частично скрыть dotfiles

Форум — General

Можно ли как-нибудь так настроить mc, чтобы в домашнем каталоге .*-файлы по умолчанию были скрыты, а во всех остальных каталогах — видимы? Иными словами, требуются per-directory settings.

 

geekless
()

shell globbing для фильтрации произвольных строк, а не только файловых путей

Форум — Development

Почему, черт побери, у grep нет режима фильтрации строк не регулярками, а обычными wildcard-ами, используемыми в shell? Мне вот крайне желательна такая фича. Мужики, есть какия-нибудь утилита для этого, или как обычно?

 , ,

geekless
()

Про qterminal и скорость работы эмуляторов терминала

Форум — Talks

Открыл для себя qterminal. Оказалось, крутая штука. Умеет табы и тайлинг терминалов. Все хоткеи могут быть настроены через гуй. Умеет прятаться-показываться по хоткею в стиле yakuake. Зависит только от qt.

Но на данный момент есть два недостатка:

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

Получается хорошая программа уровня konsole (и даже лучше — konsole не умеет тайлинг), но БЕЗ зависимости от кусков kde. Только немного сырая. Исправить два этих бага, и будет торт.

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

time seq -s, 1 1000000

Все терминалы были развернуты на полный экран, во всех терминалах шрифт стоял Terminus 9pt (за исключением Eterm и xterm). Результаты:

0m0.698s  Eterm
0m1.227s  st
0m4.545s  konsole
0m6.784s  qterminal
0m16.711s urxvt
0m19.319s xterm
0m20.774s lxterminal

lxterminal, как и все прочие терминалы на основе vte, предсказуемо просасывает. xterm — тоже всё очень предсказуемо. Удивила тормознутость urxvt, который всегда ранее славился скоростью работы. Я ожидал, что konsole окажется медленнее его.

st — это терминал проекта suckless. Когда я его в прошлый раз пробовал, это было тормозное говно. Сейчас скорость отличная, артефактов отрисовки нет.

Результаты Eterm я даже не знаю, как прокомментировать... Если это не какое-нибудь читерство, приводящее к каким-нибудь несовместимостям и редким багам, а честный результат, то я только одно могу сказать: ВОТ КАК НАДО СОФТ ОПТИМИЗИРОВАТЬ, ВСЕМ УЧИТЬСЯ!

konsole и qterminal претендуют на роль легковесных и незадротских терминалов с менюшечками и настройками через гуй — отлично. То, что надо.

 , ,

geekless
()

Внезапно, позитива тред

Форум — Talks

Потыкал палочкой в Razor-qt. В прошлый раз весь эспириенс от знакомства с ней укладывался во фразу «всё тупит и ничего не работает». В этот раз она не стала тупить и таки начала работать. Оказалось, довольно годная штука. Вернее, будет годной еще года через полтора-два разработки, а пока что — перспективно-годная.

В связи с этим, уже можно всерьёз думать о построении на основе qt-шных приложений легковесной и удобной среды, избавленной от следов перманентной упоротости разработчиков kde. («ПЛАЗМА НЕ ПАДАЕ...» — послышался хор голосов где-то вдалеке. За соседним холмом вдруг застучали бубны.)

В связи с этим имею спросить:

1.

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

Поскольку kwin лично для меня выступает полным синонимум слова ненужно, то единственным актуальным вариантом является openbox. Может быть, в дикой природе водятся более подходящие для использования в контексте qt WMы?

2.

Далее: ФМ, текстовый редактор и эмулятор терминала. Святая троица dolphin, kate и konsole конечно вполне хороша, но всё ж если ставить задачу выплюнуть kde по максимуму... какие-нибудь реальные альтернативы на qt для них существуют? Или же единственный способ получить нормальный ФМ на qt — это собрать долфин с отключением всех этих ненужных зависимостей-непомуков?

3. Кто-нибудь сейчас пользуется Razor-ом на постоянной основе? Как у него со стабильностью?

4. Кажется, там в команде разработчиков русскоязычные есть. Кто-нибудь из них на ЛОР присутствует?

И кстати, компилируется она довольно долго для такого небольшого проекта. Но это видимо неизбежные издержки использования крестов и qt.

 , ,

geekless
()

Мандатный контроль доступа + виртуализация ФС

Форум — General

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

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

 ,

geekless
()

RSS подписка на новые темы