LINUX.ORG.RU

Ситуация с Wayland: факты о X и Wayland.

 ,


29

7

Это вольный перевод статьи, намедни размещённой на phoronix. Оринальная статья — обзор недостатков, их исправлений и преимуществ между X и Wayland. Её написал Eric Griffith, при участии Daniel Stone, специально для ресурса phoronix. Работа собрана по кусочкам из презентаций Keith Packard, David Airlie, Kristian Høgsberg, из страниц про X11, X12, Wayland в вики и на freedesktop.org, из прямых интервью с разработчиками.

Оригинал выпущен под Creative Commons версия 3, с указанием авторства; перевод доступен на тех же условиях (с указанием на авторов оригинала, как мне кажется).

Недостатки X

Прежде всего автор думает, что преимущества Wayland лучше всего понятны через перспективу недостатков X11. Итак, начнём...

  1. Мы потратили последние десять лет на «исправление» X с помощью оборачивания его расширениями и плагинами. Однако, X имеет минимальную поддержку версионирования расширений.
    • Версионирование ведётся для одного клиента, а не для одного соединения с API расширения; если ваше приложение поддерживает одну версию расширения, а библиотеки — другую, вы не можете предсказать, какая версия расширения будет получена в итоге.
    • Мысленный эксперимент: Rekonq поддерживает Xinput 2.2, библиотеки KDE — Xinput 2.0, а плагин Flash — только базовый X11. Все они будут определять, какая версия подсистемы ввода поддерживается браузером Rekonq, и в результате будет отдана одна версия для работы со всем вводом... И это может быть не та версия, которая имеет всё необходимое.
    • Если вы счастливчик, вы получите минимальную поддерживаемую версию и приложение будет работать хорошо. Если вы не очень удачливый, вы получите максимальную версию и будете посылать бесполезные сообщения между клиентом и X.
  2. X имеет четыре подсистемы ввода: базовый протокол X11, Xinput 1.0, Xinput 2.0, Xinput 2.2. Xinput 1.0 канул в Лету, но оставшиеся три остаются взаимосвязанными. Daniel Stone описал это так: «Есть всего три человека, которые действительно понимают, как подсистемы ввода уживаются вместе... И я бы хотел не быть одним из них».
  3. Много лет назад у кого-то появилась идея «механизм, а не алгоритм». Фраза является отсылкой к тому, что X имеет свой уникальный API для рисования и собственную библиотеку вроде GTK+ или Qt. X определяет низкоуровневые понятия, такие как прямая линия, толстая прямая линия, дуга, окружность, неполноценные шрифты и другие элементы конструктора, бесполезные по отдельности. Примечание от Daniel: «Внешний вид толстых линий должен точно соответствовать спецификации, которая обязывает их выглядеть уродливо».
  4. X большой и тупой. Прежде чем мы (сообщество) начали выкидывать его компоненты и использовать обходные пути, X имел внутри почти полную ОС, включая свой сервер печати и свой бинарный транслятор для ELF, COFF и a.out.
  5. Композитинг и синхронизация окон. Разработчики научили X композитингу с помощью Composite Extension. Композитинг хорош для простых случаев, как то: рабочий стол, OpenGL. Но если вы захотите использовать hardware overlays (т.е видео), может случиться катастрофа. В том же браузере содержимое вкладки и окно flash-плагина обрабатываются отдельно и не синхронизируются, так что остаётся лишь скрестить пальцы в надежде. что разница во времени обработки не будет слишком большой. В результате при прокрутке страницы с играющим видео иногда возникают разрывы и артефакты.
  6. Шрифты. Разработчики пытались перенести шрифты под управление X-сервера с помощью расширения STSF, и предоставить клиентам достаточную информацию, чтобы те могли правильно определить расположение шрифтов на экране. Но количество информации, достаточной для выполнения данной задачи, превышало размер самих шрифтов. В итоге было решено предоставить клиентам полную свободу действий, избавившись от шрифтов на сервере.
  7. Протокол без состояний. Иными словами, X ничего не запоминает.
    • «Пожалуйста, создайте мне X.conf. Пожалуйста, используйте его для настройки.» Зачем?! Со временем это было исправлено: файл конфигурации используется для перезаписи параметров по умолчанию, а сами параметры по умолчанию подчищены и могут теперь определяться автоматически.
    • Многие имели проблемы с многомониторными конфигурациями в Linux, ну или хотя бы перенастраивали X после перезагрузки. Недостаток X в том, что он помнит эти конфигурации только после создания /etc/X11/xorg.conf.d/50-monitors.conf, который скорее всего придётся писать вручную.
    • Мы надеемся, что это было исправлено созданием libkscreen, обёртки над xrandr, которая наконец-то стала запоминать параметры мониторов, используя их уникальный EDID.
    • В течение длительного периода (а может быть и до сих пор) при подключении дополнительного монитора в Linux основной монитор имел композитинг, а дополнительный — нет. Это, возможно, исправлено в RandR1.4, но его автор не может найти убедительных доказательств.
  8. Бесполезная иерархия окон. В X каждое поле ввода и текстовая надпись имеют своё окно со своим родителем. Никто не знает, какую же функцию выполняет эта иерархия. Реальные библиотеки (т.е не основанные на компонентах протокола X11) уже давно выбросили весь этот мусор в окно.
  9. Отчасти придирка, отчасти разумное беспокойство... В X11 каждая из координат— 2-байтное число со знаком. То есть, на всех ваших дисплеях должно быть не более 32,768 пикселей. При 100dpi это даёт вам 8,3-метровый дисплей. Замечательно... Но вот факты для сравнения: Windows XP имеет 96 DPI, а мой телефон — 320+. Добавьте сюда растущие разрешения и несколько мониторов, и вы увидите, что проблема приближается очень даже быстро.
  10. Для X всё является окном, и разных типов окон с его точки зрения нет.
    • Скринсейвер — это окно, которое просит X расположить его поверх всех окон, сделать полноэкранным и отдать весь ввод.
    • Всплывающее окно просит X расположить его в заданной точке и отдать весь ввод.
    • Они конфликтуют: скринсейвер не будет активирован, пока показано всплывающее окно.
    • Наверняка ваши скринсейвер и скринлокер не прокинули хуки во все необходимые библиотеки, распознающие клавиши для управления медиа... Представьте, что вы слушали музыку, работая на ноутбуке, а затем закрыли крышку. Ноутбук уснул, скринсейвер стал активным окном. Как только вы откроете крышку, ноутбук проснётся и музыка загромыхает снова, так что снова закрыть крышку окажется проще, чем вбить проль, затем открыть плеер и поставить его на паузу либо выключить звук.
    • Разработчики пытались исправить проблему и сделали спецификацию нового расширения, которое в теории работало. Но когда его попытались реализовать, оказалось, что оно серьёзно ломает модель работы X-сервера. Так что проблема существовала 26 лет и продолжает существовать. Расслабьтесь и получайте удовольствие.
  11. «Но Eric, если X11 настолько плох, то почему бы не сделать X12 вместо нового протокола?». Ну, формально, это уже сделано. При сохранении его под знаменем X возникает практический недостаток: все, кто беспокоится о X, будут иметь право голоса в разработке следующей версии. С помощью названия «Wayland» этой проблемы можно избежать. Никого ничто не волнует. Это не связанный с X проект, разработчики могут творить с будущим дисплейным сервером всё, что душа пожелает, ну а те, кто беспокоится о X, могут пойти разрабатывать X12.

Лекарство от Wayland (пронумерованы попарно с недостатками X).

  1. Весь протокол версионирован. Каждый слушатель получает именно ту версию, которую он поддерживает, и ничего поверх этого. Никаких случайностей.
  2. Подсистема ввода в Wayland очень похожа на Xinput 2.2, за вычетом всего старья и отношения Master/Slave между источниками ввода. Слушатель получит одну виртуальную клавиатуру, одну виртуальную мышь и один невиртуальный сенсорный ввод. Кошмар под названием «мультитач» в конце концов упорядочен. Примечание от Daniel: как один из авторов мультитача в X, я считаю себя достаточно компетентным, чтобы назвать его кошмарным.
  3. У Wayland нет API для рисования, в обход которого можно было бы работать. Wayland ожидает заполнения клиентом буфера рисования, и его не волнует способ заполнения, если не считать контроля за попытками задеть чужие буфера.
  4. Wayland минималистичен, он не хранит внутри себя псевдо-ОС ради контроля вывода графики. Клиенты принимают на себя этот удар, что хорошо — им не придётся заботиться о сверхдолгом сопровождении обратной совместимости. Qt5 избавилось от модуля qt3support. X всё ещё сопровождает то, что было написано 26 лет назад. Примечание от Daniel: кроме того, вызовы к вейланду — не блокирующие, рисование всего рабочего стола не остановится из-за зависания или очень дорогой операции на стороне одного из клиентов: остановится только этот клиент.
  5. В вейланде — принудительный композитинг. Это не означает, что везде должны быть 3D-эффекты или изгибающиеся окна. Под композитингом мы подразумеваем отсутствие разрывов, необновлённых кусков и проблесков. Лозунг вейланда — «каждый кадр будет идеальным». Каждый пиксель прорисован как должно и расположен где должно, и появляется, когда клиент того потребует.
  6. Шрифты отданы клиентам.
  7. Многомониторные конфигурации и гибридная графика (Optimus) отданы клиентам, вейланду нужен только буфер с пикселями и информация о том, где его расположить.
  8. В вейланде есть два вида окон: окна верхнего уровня и подповерхности (в основном для проигрывания видео). Причём, в отличие от X, они синхронизируются. При прокрутке страницы с видео в браузере у вас не будет ни разрывов, ни артефактов.
  9. С точки зрения клиентов, вейланд не оперирует глобальными координатами, предпочитая систему отсчёта поверхности для рисования. Счётчик координат 31-битный, то есть каждая поверхность может иметь 2,147,483,648 пикселей как в ширину, так и в высоту.
  10. Для обеспечения дополнительной безопасности, ваш скринсейвер и скринлокер являются частью композитора. Кроме того, композитор распознает клавиши управления медиа, так что даже при заблокированном экране можно выключить звук.

Некоторые заблуждения в плане X и Wayland.

  1. «X — это юниксвейно». X обрабатывает печать, управление буферами для рисования, имел свой тулкит, обрабатывал шрифты, имел бинарный транслятор — и всё это помимо других задач.
  2. «В X есть сетевая прозрачность» — её нет. Базовый протокол X и DRI-1 имели сетевую прозрачность, но никто не использует ни то, ни другое. Shared-memory, DRI2 и DRI-3000 не имеют сетевой прозрачности и не работают по сети. В наше время X превратился в синхронный, плохо сделанный VNC. Если бы он был плохо сделанным асинхронным VNC, то может быть мы бы и заставили его работать. Но он не такой: XLib синхронная, а переход на XCB медленный, что делает передачу по сети настоящим кошмаром.
  3. «Разработчики Wayland наступают на те же грабли, что и X11, потому что не знают его» — неверно, потому что большинство разработчиков Wayland являются бывшими разработчиками X11.
  4. «Вейланд требует 3D.» — неверно, он требует только композитинга, так что есть даже бекенд на pixman для программной отрисовки.
  5. «Вейланд не умеет в удалённый доступ» — умеет, и должен справиться с этой задачей лучше чем X, отчасти из-за асинхронности протокола. Скорее всего Wayland станет высокопроизводительной версией VNC, и прототип уже есть. Причём мы ещё ни разу не давали идей по его улучшению, и скорее всего сможем сделать его лучше, если приложим усилия.
  6. «Вейланд нарушает обратную совместимость» — с тех пор как XWayland закончен и принят в основную ветку, у нас должна появиться почти совершенная обратная совместимость, потому что каждое приложение, использующее X, получает маленький X-сервер для дальнейшей работы с ним. Нам известно одно препятствие — трансформации окна, ведь приложение думает, что оно расположено в верхнем правом углу экрана, оттого, что клиентский X-сервер приведён к размерам клиентского окна.

Парочка характерных преимуществ Wayland

  1. «Каждый кадр будет идеальным». Каждый кадр будет представлен в правильном порядке (возможен сброс лишних кадров, но вы не получите кадр 199, затем 205, а затем 200 оттого, что сервер извлёк их в произвольном порядке. Каждый кадр имеет свой timestamp.)
  2. Минималистичный! Мы способствуем славному будущему Wayland путём уменьшения пространства для возможных ошибок.
  3. Бекенды, специфичные для оборудования. Думается, некоторые люди заметили появление бекенда Wayland, предназначенного для Rasberry Pi — он позволяет использовать все особенности этой платформы. Такой подход используется не везде, многие вещи не потребуют бекенда для конкретного оборудования, но неплохо бы иметь возможность сделать доработку, когда потребуется.

P.S. От переводчика: заметно, что в статье мало технических деталей или же ссылок, а лозунги я наоборот вырезал. К слову, о минималистичности: для вейланда уже есть композитор, способный отображать окна в 3d-пространстве на манер quake, но что-то я сомневаюсь в правильной обработке звука в таком 3d. Для игр есть OpenAL, который имеет 3d-координаты, соответствующие координатам OpenGL (синхронизация позиций источников звука и слушателя с позициями объектов и камеры производится программистом). Для вейланда нет ничего подобного OpenAL.

Если же кто-то имеет вопросы к авторам статьи — он может задать их на Phoronix.

>>> Подробности

Ответ на: комментарий от vova7890

с включенным vsync никогда не видел тиринга в Х.

это касается абсолютно всех претензий к X: по словам разработчиков вяленого X пользоваться просто невозможно, но в реальности X работает без нареканий на миллионах хостов уже не один десяток лет.

такая вот тяжёлая работа за интеловские денежки.

anonymous ()
Ответ на: комментарий от x0r

Напоминаю излишне оптимистичным пользователям: для ати и нвидиа отстутсвиют блобы.

NVIDIA вроде бы мешают какие-то проблемы с EGL, видимо опять из-за необходимости подменять месовские библиотеки на свои.

quiet_readonly ★★★★ ()

X имел внутри почти полную ОС, включая свой сервер печати и свой бинарный транслятор для ELF, COFF и a.out

Ну это вообще пушка. И ещё на системд наезжали

yu-boot ★★ ()
Ответ на: комментарий от anonymous

Да ладно, доля правды там есть, и проблем в Х подпёртые костылями тоже очень не мало. Но слишком уж долго они топчутся над этим вялендом.

vova7890 ★★★ ()
Ответ на: комментарий от x0r

Амд надеется на открытый драйвер, наверно, т.к. комментарий по этому поводу не было.

vova7890 ★★★ ()

Ох лооол)) Одной рукой они убивают «большой и тупой» X, другой фигачат «большой и тупой» systemd))

special-k ★★★ ()
Ответ на: комментарий от quiet_readonly

NVIDIA вроде бы мешают какие-то проблемы с EGL

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

vova7890 ★★★ ()
Ответ на: комментарий от Reset

В основе сетевой прозрачности иксов лежит совсем другая идея нежели в RDP, VNC и аналогах. И эта идея уже изжила себя и сейчас не работает.

и это как бы не «вина» иксов, что этим вещи сразу были сделаны наперекор изначальной идее.

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

А ничего, что RDP именно так и работает? :)

Смотрите, например, в реализацию клиента freerdp: https://github.com/FreeRDP/FreeRDP/tree/master/libfreerdp/gdi

Тут вам и pen и line и polyline с region и shape и прочими товарищами... )))

Magister2k7 ()
Ответ на: комментарий от namezys

тот, кто делает это лучше? Чип видоекарты, например

Не всегда перенос рисования на видеокарту лучше программного построения картинки на процессоре.

(Естественно, если дисплейный сервер заявляет поддержку OpenGL в окнах, то рисовать можно как угодно).

note173 ★★★★★ ()
Ответ на: комментарий от kravich

с systemd,

Теперь понятно почему Мир начали.

grim ★★★★ ()
Ответ на: комментарий от mos

7) если идеи иксов осовременить должна получиться просто конфэтка - открытая мощная система граф. терминалов, c потенциальной возможностью перегонять граф.

Более 20 лет «осовременивают», и? Как в идею иксов вписывается гибридная графика? С 3д и энергопотреблением?

приложения с одного сервера на другой (это вроде уже даже реализовано на иксах в рамках проекта http://winswitch.org/ и штуки под названием xpra), вполне нормально работающая и на локалхосте (если уж иксы работают)

Вполне нормально? Как из этой «вполне нормально работающей штуке» печатать на принтер, подключенный к локальной системе? Или сохранять данные в домашний каталог/поключаемый носитель? Прокидывать через «сетевую прозрачность» КУДА? На 127.0.0.1? Или как обычно, «мне не надо, значит никому не надо», «у меня нет таких задач», «эникеепроблемы»? Проблема иксов, носителей и принтеров гораздо глубже, чем кажется. Но в принципе работает, да, с кучей костылей и подпорок... Более 20 лет, да...

anonymous ()
Ответ на: комментарий от special-k

> Ох лооол)) Одной рукой они убивают «большой и тупой» X, другой фигачат «большой и тупой» systemd))

Поддерживаю. Ещё любители инноваций смешат тем, что в PulseAudio им нравится сетевая прозрачность, которой нет у ALSA, а в Wayland нравится отсутствие ненужной сетевой прозрачности, которая есть у X.org!

ZenitharChampion ★★★★★ ()
Ответ на: комментарий от anonymous

вдогонку про печать и носители, звук тоже, кстати, иногда нужен бывает, да ... Еще мульитач, сенсорные дисплеи, проброс видео с web-камеры, звука на удаленный сеанс... X-ы коряво работают со всем этим. Это не их задачи? А нафига тогда эта «прозрачность» вообще нужна как таковая?

Так что RDP на порядок изящнее «сетевой прозрачности» с > 20 летним стажем, увы.

anonymous ()
Ответ на: комментарий от ZenitharChampion

при этом модная и навороченная пульса хрипит, щёлкает и жрёт 40% процессорной мощности, про тиринг вяленого уже говорили выше. вот такие вот «инновации», прям по-путински.

anonymous ()
Ответ на: комментарий от ZenitharChampion

Да, не видел. Но официальных подтверждений не было, поэтому сложно о чем то судить.

vova7890 ★★★ ()
Ответ на: комментарий от anonymous

при этом модная и навороченная пульса хрипит, щёлкает и жрёт 40% процессорной мощности,

Программные звуковые эффекты используете на первопне 200Mhz? А надо? :-)

anonymous ()
Ответ на: комментарий от anonymous

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

vova7890 ★★★ ()

Блок от переводчика в утиль. В остальном нужно. И перевод, и Wayland.

anonymous ()
Ответ на: комментарий от anonymous

ээ «Вполне нормально? Как из этой «вполне нормально работающей штуке» печатать на принтер, подключенный к локальной системе? Или сохранять данные в домашний каталог/поключаемый носитель?» вот принтер lpd://mypc/LDPServer вот хомудир для рабочих данных sftpwork on workpc

anonymous ()
Ответ на: комментарий от anonymous

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

anonymous ()
Ответ на: комментарий от no-dashi

Наконец-то ты выложишь пароль :)

anonymous ()
Ответ на: комментарий от Deleted

Для удаленного доступа ничего лучше не придумали, чем ssh -Y

И что, прям данные можно сразу на флешку сбрасывать? Или распечатывать на стоящий рядом принтер?

anonymous ()
Ответ на: комментарий от lucentcode

все убогие GUI-приложения работают с Gtk и то, что умеет Qt - их разрабам не под силу

починил

Ford_Focus ★★★★★ ()
Ответ на: комментарий от ZenitharChampion

Багрепорт себе отправить? Лол.

anonymous ()

Читаешь и аж сердце радуется - так все хорошо расписано. Оно в генте даже собирается уже! Нет нет, не работает конечно же ( по крайней мере я запустить не смог), но уже собирается..

LightDiver ★★★★★ ()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от anonymous

вот принтер lpd://mypc/LDPServer вот хомудир для рабочих данных sftpwork on workpc

Итак, выходим в инет с нетбука через wi-fi роутер, динамический ip, к примеру, файрволл, все дела, подключаемся через ssh -X к удаленному хосту с предварительно запущенной ранее xpra сессией смотрим результат и хотим его распечатать (или сохранить) ... и тут понимаем, что пилят, надо было пробросить порты на роутере и разрешить доступ ... Настраиваем cups(нужен рут на удаленной машине), sshfs (рут не нужен, только пароль). Ни разу не геморройно, ага. Главное, сетевая прозрачность же :-)

anonymous ()

Всё новое, о чём они говорят в статье, не такое уж новое. Всё это было в compiz, выпущеном в 2006 году. Ничего по-настоящему революционного, подобного Mir, в этом протоколе нет.

Deleted ()
Ответ на: комментарий от anonymous

мультитач чего?

Экрана, тачпада, а что?

вот уж с чем с чем а с передачек клика или там движения пальца в окно приложения у X проблем нет. потому как все что есть на экране - окна.

А с передачей двух кликов двумя пальцами? Или трех тремя, с разворотом/смещением по двум плоскостям? Или не надо, как всегда?

anonymous ()
Ответ на: комментарий от Reset

ну выводок серверов предлагает запускать новое творение :) по одному на окно :)

psv1967 ★★★★★ ()
Ответ на: комментарий от anonymous

сохранение делается одной командой. написать или осилишь man scp?

anonymous ()
Ответ на: комментарий от anonymous

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

anonymous ()
Ответ на: комментарий от Ford_Focus

Хорошо. Назовите мне офисный пакет, браузер и IDE(или любимый текстовый редактор) которыми вы пользуетесь. Почему-то мне кажется, что ни одно из этих приложений не использует Qt:) Пока дело касается KDE - сравнивать его с Unity/Gnome многие горазды. Как только дело доходит до обычных приложений, так оказывается что все приличные браузеры Gtk-only, самый приличный растровый редактор - тоже... Список можно долго продолжать, суть от этого не меняется. Пользователи KDE обречены пользоваться программами на столь не любимом ими тулките. А вот пользователи Gnome почему-то редко держат в системе ПО, использующее Qt. Миллионы леммингов не могут ошибаться... Если приличное ПО пишут преимущественно под Gtk, на это должна быть серьёзная причина. Ведь писать приложения на плюсах и Qt легче, чем на C и Gtk.

lucentcode ★★★★★ ()

Поскорей бы все это Wayland vs. Mir закончилось. Пусть один победит. Ибо нехорошо все это разворачивается.

KennyMinigun ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

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

lucentcode ★★★★★ ()
Ответ на: комментарий от KennyMinigun

Пусть победит более функциональный дисплейный сервер. А то может победить далеко не лучшее решение. Вы же помните как форточки победили более развитые ОС(такие как полуось)... Нам такой победы не надо...

lucentcode ★★★★★ ()
Последнее исправление: lucentcode (всего исправлений: 1)

Много лет назад у кого-то появилась идея «механизм, а не алгоритм»

Механизм, а не политика. Политика к алгоритму не имеет никакого отношения, политика - это скорее настройка, конфигурация.

anonymous ()
Ответ на: комментарий от lucentcode

должна быть серьёзная причина

Есть какая-то нездоровая атмосфера вокруг кде, почему-то приложения делают не просто, а, именно, с куском кде, и, что-то у них, похоже, с руками. Но исключения есть, например qgis.

IDE

Кто-то скажет komodo, а это XUL.

special-k ★★★ ()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от anonymous

так и запишем, блогородный дон не умеет через ssh порты пробрасывать с локальной машины на удаленную, не умеет печатать в pdf и не умеет пользоваться scp/sftp.

Твоя идея «нельзя сделать в меню настроек» понятна, но она на самом деле решается намного проще, чем сменой протокола иксов.

mrdeath ★★★★★ ()
Ответ на: комментарий от anonymous

что является 'подключенным локально принтером' в этом случае?

Именно то, что написано. Какие слова не понятны?

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

Принтер подключен к компьютеру, компьютер находится внутри домашней локальной сети, сеть имеет выход в интернет через роутер с динамическим реальным ip, на роутере стоит файрволл. Как без использования консоли подключиться к другому компьютеру, находящемуся в рабочей сети, подключиться к сохраненной сессии на рабочем сервере(X11), воткнуть флешку в локальный комп, сохранить данные для себя и распечатать другие данные(не сохраняя на диск) для жены/детей/друга. Принтер может быть подключен по USB/Bluetooth/Wi-Fi. Повторяю, без консоли.

anonymous ()
Ответ на: комментарий от mrdeath

так и запишем, блогородный дон не умеет через ssh порты пробрасывать с локальной машины на удаленную, не умеет печатать в pdf и не умеет пользоваться scp/sftp.

Благородный дон умеет пробрасывать файлы/звук/потоки через разные прокси и туннели, благородного дона задолбало использовать консоль для столь простых операций. И зачем сохранять в pdf, копировать через scp, открывать и печатать (4 операции), если можно просто распечатать(1 операция).

anonymous ()
Ответ на: комментарий от anonymous

не умеет через ssh порты пробрасывать с локальной машины на удаленную

Не хочу вообще что-либо куда-либо пробрасывать для столь простых задач. Чем мне поможет сетевая прозрачность иксов для такой бытовой задачи?

anonymous ()
Ответ на: комментарий от no-dashi

Cетевую прозрачность - потеряли.

Стек tcp/ip никуда не делся.

Независимость от дисплейного сервера - не приобрели (сдох вялендокомпозитор - все его клиенты сдохли)

Архитектуру frontend/backend никто не отменял.

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

Какой кошмар, функции оси отсутствуют у графического сервера.

А месье случаем не любитель emacs?

anonymous ()
Ответ на: комментарий от quiet_readonly

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

Сначала сервер, потом протокол... Canonical такая Canonical.

anonymous ()
Ответ на: комментарий от I-Love-Microsoft

GL_QUADS тоже разбивается на два треугольника

OpenGL — библиотека для вывода трëхмерной графики. Из трëхмерных примитивов GPU умеют рисовать только треугольники. Так что... :-)

anonymous ()

«В X есть сетевая прозрачность» — её нет

Вот тебе и раз ...

Buy ★★★★★ ()
Ответ на: комментарий от lucentcode

mso\gdocs, opera, kate\phpstorm\qtcreator. да, qt из них используют только 2 из 6, но gtk - 0.

можно еще докинуть, что dolphin, krusader, kate, clementine, okular серьёзно оторвались от конкурентов. до кучи можно еще фотошоп набросить, но оффтоп.

Ford_Focus ★★★★★ ()
Ответ на: комментарий от special-k

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

гномо-приложения, btw, тоже гномо-реестр и много чего гномо-* тащат.

и это, qgis. давай угадаю - он ведь не входит в семейство kde, да?

Ford_Focus ★★★★★ ()

Задиристая статейка, это хорошо.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.