LINUX.ORG.RU
ФорумTalks

Почему почти весь линукс десктоп на Gtk?

 , , ,


2

2

В свете недавно проведенного опроса оказалось распределении десктопов по тулкитам где-то такое

  • Qt - 25.9%
  • Gtk+ - 62.7%

Почему Qt так сливает через столько лет? Ведь аргумент о лицензии уже давно устарел. Почему не переделали все на Qt и компании, такие как Canonical, Red Hat, Mozilla, Google, Sun/Oracle пишут свой софт на Gtk+?

Прошу прояснить ситуацию

★★★★★

Последнее исправление: vertexua (всего исправлений: 4)
Ответ на: комментарий от siphonops

А что, гтк приложения вот прямо в силу гткшности божественны и умеют самостоятельно, например, в gvfs из коробки, или это каждая DE за них беспокоится?

GateKeeper ★★
()

Новые проекты все таки чаще на Qt начинают. Видимо в конце концов статистика может и поменяться с ног на голову. Всякие Ubuntu TV же тоже на Qt + QML делаются.

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

А что, гтк приложения вот прямо в силу гткшности божественны и умеют самостоятельно, например, в gvfs из коробки, или это каждая DE за них беспокоится?

Где я упоминал о божественной гткшности? Есть пользовательские приложения на гтк, которые не прибиты гвоздями к гному и их значительно больше, чем приложений на qt не прибитых гвоздями к кде. P.S. И с каждым актом велосипедостроения в рамках нового ДЕ их становится еще больше. Собственно, об этом я и говорил.

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

убунтячьи депендсы

Из-за зависимостей дебиана и ему подобных я и перешел сначала на генту, а затем на source mage.

quantum-troll ★★★★★
()

Почему Qt так сливает через столько лет?

Потому что он кривой, тяжелый и тормозной. (...а у вас плазма убежала) А если быть конкретным, то GTK обычно работает на куда более слабых конфигах намного быстрее QT. Почему то почти везде в QT софте эти уродские закругления или еще какие то недоформы, которые ужасно выглядят (ну не дружат они с прямыми углами, что поделать). QT софт занимает куда больше пространства. Интерфейс QT хуже кастомизируется.

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

Почему то почти везде в QT софте эти уродские закругления или еще какие то недоформы, которые ужасно выглядят

Переключить стиль не судьба, да?

Интерфейс QT хуже кастомизируется.

Чем стили не угодили?

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

в qt такое врядли получится

Я уже писал выше, Qt API между 4 и 5 версиями сохранен. Выкинули пару устаревших классов, другие переместили в deprecated.

зачем в играх вообще qt?

Вы из тех людей, которые думают, что Qt исключительно для GUI?

вот, например

В случае с Google Chrome отказ от промежуточных библиотек оправдан и я его поддерживаю. Такой гигант как Google может себе это позволить, есть другие примеры?

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

Чем стили не угодили?

Не на одних стилях заканчивается кастомизация.

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

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

Под «прибитым гвоздями к кде» ты понимаешь только и исключительно Requires: kdelibs >= 4.0? Или все же «Без запущенных кед не заведется в принципе»?

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

Я навскидку даже одну не припомню, что говорит об отличном подходе разработчиков Qt по поддержке процесса портирования.

Емнип koctave и pdfedit.

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

Я уже писал выше, Qt API между 4 и 5 версиями сохранен. Выкинули пару устаревших классов, другие переместили в deprecated.

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

Вы из тех людей, которые думают, что Qt исключительно для GUI?

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

В случае с Google Chrome отказ от промежуточных библиотек оправдан и я его поддерживаю. Такой гигант как Google может себе это позволить, есть другие примеры?

nero, flash. личный пример - deadbeef. уверен, что есть и множество других, просто я не сильно искал.

вот еще вспомнилось - adobe acrobat reader.

waker ★★★★★
()
Последнее исправление: waker (всего исправлений: 2)
Ответ на: комментарий от HunOL

Емнип koctave и pdfedit.

я еще могу вспомнить twinkle, а еще была такая программа basket, которую всего полтора года как на qt4 перевести успели :) практически к выходу qt5.

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

Вообще смотря на связку Qt5 + QML + OpenGL я всерьёз думаю переписать GUI своей игры на QML. Сейчас там нагорожено костылей для анимации элементов управления, окон, прочего. С QML/JS теперь это делается элементарно и динамично, продолжая писать саму начинку на C++/Qt/OpenGL. При этом такой GUI будет отлично адаптироваться как для десктопов, так и для планшетов с телефонами.

Рекомендую интересующимся посмотреть примеры казуальных игр на QML, которые идут вместе с самой Qt, много для себя откроете.

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

личный пример - deadbeef

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

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

так и для планшетов с телефонами.

разве в appstore уже разрешили [L]GPL? на игровых консолях тоже вот не разрешили. насчет стима вот не уверен. вы под какие платформы игры делаете?

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

Для говядины есть/был Qt-плагин

который уже года два как умер

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

я принимаю в базовую поставку только те плагины, которые могут пройти контроль качества, и которые я смогу за вменяемый срок довести до ума, чтобы ими было возможно пользоваться без матюков. мне их потом поддерживать неизвестно сколько. фактически, принятие плагина в апстрим — это взятие не себя обязанностей по его развитию и поддержке. поэтому такое очень редко происходит. и дело совсем не в плюсах, и не в qt. в deadbeef полным полно C++ кода.

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

разве в appstore уже разрешили [L]GPL?

Помимо [L]GPL Qt распространяется и под коммерческой лицензией. Главная проблема сейчас — отсутствие технической возможности портировать игры на другие платформы. Разница в API огромна настолько, что в одни и те же задачи приходится велосипедить заново. Qt эти границы стирает.

вы под какие платформы игры делаете?

Только одну игру сейчас для себя, профессионально перепрофилировался из игро- в андроидодела. Linux/Windows/OSX/Android/iOS (может быть).

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

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

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

Знакомься, это amarok:

 amarok amarok-common amarok-utils docbook-xsl fonts-freefont-ttf kate-data
  katepart kde-runtime kde-runtime-data kdelibs-bin kdelibs5-data
  kdelibs5-plugins kdemultimedia-kio-plugins kdoctools libaio1 libattica0
  libclucene0ldbl libdbusmenu-qt2 libdlrestrictions1 libdvbpsi7 libebml3
  libiodbc2 libiso9660-8 libkatepartinterfaces4 libkcddb4 libkcmutils4
  libkde3support4 libkdeclarative5 libkdecore5 libkdesu5 libkdeui5
  libkdewebkit5 libkdnssd4 libkemoticons4 libkfile4 libkhtml5 libkidletime4
  libkio5 libkjsapi4 libkjsembed4 libkmediaplayer4 libknewstuff3-4
  libknotifyconfig4 libkntlm4 libkparts4 libkpty4 libkrosscore4
  libktexteditor4 liblastfm0 libloudmouth1-0 libmatroska5 libmusicbrainz3-6
  libnepomuk4 libnepomukquery4a libnepomukutils4 libntrack-qt4-1 libntrack0
  libphonon4 libplasma3 libpolkit-qt-1-1 libqca2 libqjson0 libqt4-declarative
  libqt4-opengl libqt4-svg libqt4-xmlpatterns libqtscript4-core
  libqtscript4-gui libqtscript4-network libqtscript4-sql libqtscript4-uitools
  libqtscript4-xml libqtwebkit4 libresid-builder0c2a libsidplay2 libsolid4
  libsoprano4 libssh-4 libstreamanalyzer0 libstreams0 libtag-extras1 libtar0
  libthreadweaver4 libupnp6 libva-x11-1 libvcdinfo0 libvirtodbc0 libvlc5
  libvlccore5 libx264-129 libxcb-composite0 libxcb-keysyms1 libxcb-randr0
  libxcb-xv0 libxml2-utils ntrack-module-libnl-0 odbcinst odbcinst1debian2
  oxygen-icon-theme phonon phonon-backend-vlc plasma-scriptengine-javascript
  shared-desktop-ontologies soprano-daemon virtuoso-minimal
  virtuoso-opensource-6.1-bin virtuoso-opensource-6.1-common vlc vlc-data
  vlc-nox vlc-plugin-notify vlc-plugin-pulse
А это digiKam
 digikam digikam-data docbook-xsl dolphin enblend enfuse fonts-freefont-ttf
  freeglut3 hugin hugin-data hugin-tools kate-data katepart kde-baseapps-bin
  kde-baseapps-data kde-runtime kde-runtime-data kdelibs-bin kdelibs5-data
  kdelibs5-plugins kdoctools kfind kipi-plugins kipi-plugins-common konqueror
  konqueror-nsplugins libattica0 libboost-filesystem1.49.0 libclucene0ldbl
  libdbusmenu-qt2 libdlrestrictions1 libdvbpsi7 libebml3 libgps20
  libimage-exiftool-perl libiodbc2 libiso9660-8 libkatepartinterfaces4
  libkcalcore4 libkcmutils4 libkdcraw-data libkdcraw20 libkde3support4
  libkdeclarative5 libkdecore5 libkdesu5 libkdeui5 libkdewebkit5 libkdnssd4
  libkemoticons4 libkexiv2-10 libkexiv2-data libkfile4 libkhtml5 libkidletime4
  libkio5 libkipi-data libkipi8 libkjsapi4 libkjsembed4 libkmediaplayer4
  libknewstuff3-4 libknotifyconfig4 libkntlm4 libkonq-common
  libkonq5-templates libkonq5abi1 libkonqsidebarplugin4a libkparts4 libkpty4
  libkrosscore4 libksane-data libksane0 libktexteditor4 libmarblewidget13
  libmatroska5 libnepomuk4 libnepomukquery4a libnepomukutils4 libntrack-qt4-1
  libntrack0 libopencv-calib3d2.3 libopencv-core2.3 libopencv-features2d2.3
  libopencv-flann2.3 libopencv-highgui2.3 libopencv-imgproc2.3
  libopencv-legacy2.3 libopencv-objdetect2.3 libopencv-video2.3 libpano13-2
  libpano13-bin libphonon4 libplasma3 libpolkit-qt-1-1 libqca2 libqjson0
  libqt4-declarative libqt4-opengl libqt4-svg libqt4-xmlpatterns
  libqtlocation1 libqtwebkit4 libresid-builder0c2a libruby1.9.1 libsidplay2
  libsolid4 libsoprano4 libssh-4 libstreamanalyzer0 libstreams0 libtar0
  libtbb2 libthreadweaver4 libupnp6 libva-x11-1 libvcdinfo0 libvirtodbc0
  libvlc5 libvlccore5 libx264-129 libxcb-composite0 libxcb-keysyms1
  libxcb-randr0 libxcb-xv0 libxml2-utils libyaml-0-2 libzthread-2.3-2
  marble-data marble-plugins mplayer mplayerthumbs ntrack-module-libnl-0
  odbcinst odbcinst1debian2 oxygen-icon-theme phonon phonon-backend-vlc
  plasma-scriptengine-javascript ruby ruby1.9.1 shared-desktop-ontologies
  soprano-daemon virtuoso-minimal virtuoso-opensource-6.1-bin
  virtuoso-opensource-6.1-common vlc vlc-data vlc-nox vlc-plugin-notify
  vlc-plugin-pulse
Я не гентушник и не слакварщик, поэтому не могу сказать что из перечисленного необязательно для работы приложений, но неужели это все «kdelibs»?
Наверняка кто-нибудь мне захочет сказать, что эти приложения - плохой пример. Но больше в кедах нет ничего выдающегося, на мой взгляд.

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

Разница в API огромна настолько, что в одни и те же задачи приходится велосипедить заново. Qt эти границы стирает.

а как же sdl? как по мне, с играми все намного проще, чем с обычным GUI-софтом. да и без sdl несложно. не настолько сложно, чтобы на qt перелазить.

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

а как же sdl?

Игры это не только графика и звук, думаю вы это понимаете как никто другой. Это ещё файловая система, многопоточность, работа с сетью и протоколами, алгоритмы управления игровой логикой, тот же GUI и анимация, скриптование, работа с ресурсами, локализация, юникод. Я вообще считаю игры одним из самых сложных видов ПО, в которых присутствует всё. Так или иначе, но начиная с нуля прийдётся искать множество инструментов, каждый из которых совместим с целевыми платформами, и клеить из них эдакого кадавра. Или же велосипедить самому, что тоже часто полезно. Стоит в какой-то момент наткнуться на, скажем, необходимость прочитать XML и нужно будет идти в интернет искать библиотеку с совместимой лицензией и присобачивать её к остальному добру, вводя слой совместимости.

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

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

Скажи честно, ты хотя бы одну сам перевёл?

hobbit ★★★★★
()

Наверное, уже где-то в комментах сказали, но qt - это C++, а gtk - что угодно, ибо очень просто генерировать биндинги. К тому же, долгое время qt был анальным зондом. Да и С++ далеко не все любят.

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

Скажи честно, ты хотя бы одну сам перевёл?

Конечно. Переводил несколько своих проектов с Qt3 на Qt4. Было множество изменений в контейнерах, переведённых на шаблоны и потокобезопастный CoW, новый Model/View, ресурсы дизайнера. Тогда катком прошлись практически по всему, неудивительно, что некоторые тяжёлые проекты зависли, что скорее свидетельствует о потере авторов к ним интереса.

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

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

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

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

Стоит в какой-то момент наткнуться на, скажем, необходимость прочитать XML и нужно будет идти в интернет искать библиотеку с совместимой лицензией и присобачивать её к остальному добру, вводя слой совместимости.

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

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

Переводил несколько своих проектов с Qt3 на Qt4.

Ну тогда ладно. Просто там действительно

Тогда катком прошлись практически по всему,

что не очень хорошо коррелирует с заявлениями об «отличном подходе разработчиков Qt по поддержке процесса портирования». Я вот их qt3to4 поковырял и понял, что переводить придётся руками. Хотя uic3, конечно, использовал.

Среди изменений попадались воистину нелепые, например, выбрасывание метода QString::find() в «унифицированный» indexOf()...

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

Я вот их qt3to4 поковырял и понял, что переводить придётся руками.

Аналогично, не доверяю программам, пытающимся редактировать твой исходный код. Что, кстати, Qt3 Designer и делал на мотив тогдашнего C++ Builder и MSVC6.

Среди изменений попадались воистину нелепые, например, выбрасывание метода QString::find() в «унифицированный» indexOf()...

Ломали API вцелом, почему бы и не поменять названия на более логичные. Вообще все эти find() успешно продолжали жить в Qt3Support. Psi только в 0.15 версии, кажется, избавился от тяжкого наследия Qt3Support с помощью патчей из Psi+. Это как живой пример поддержки устаревшего кода.

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

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

Смотря какое прикладное. GUI на си это за пределами добра и зла.

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

kernel ★★☆
()
Ответ на: комментарий от waker

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

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

Растровый движок Arthur показывает большую производительность на любой платформе и в итоге стал единственным в Qt5 (с опциональной альтернативой CoreGraphics на OSX). Те же опции рисования в QStyle передаются через указатели на объекты в стеке и позволяют генерировать вид элементов управления на любом контексте рисования без оверхеда. Все контейнеры и строки CoW с атомарными операциями копирования. Локализации хранятся в компилируемых бинарных блобах и подгружаются/выгружаются мгновенно. Все потенциальные тормоза в программах результат плохого подхода программирования с использованием блокирующих операций в интерфейсе, неоптимальных алгоритмах и прочих болезней склёпанной на колене архитектуры или отсутствии оной.

Хотя кому я это рассказываю...

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

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

А вот и он, синдром утёнка. Навыкам отслеживания ресурсов вас никто не учил, это пришло с практикой на C. А с практикой на php, JS, AS, C# это не приходит, вот и всё. В ObjectiveC по-разному, там анализатор найдёт проблем с памятью больше, чем опытный ревьювер.

Аргумент про софт тоже смешон - из этих 4 языков популярный прикладной софт пишут только на C# и под оффтоп. Вполне нормально всё получается, течёт меньше, чем у сишников. И на Objective C ресурсами управляются, опять же большинство приложений для iOS укладывается в рекомендуемые 3МБ памяти - а вот у сишников оно как-то не всегда получается.

Проблемы из-за утят начинаются, когда утята от C и утята от жабы встречаются вместе. Жабисты искренне считают, что однообразный swing на всех платформах - фича, а не фимоз разработчиков, не способных сделать look&feel для каждой платформы или хотя бы облегчить работу apple/canonical (которые swing патчили). Сишники искренне считают, что emacs/vim - вершина развития инструментов разработки, а причина проста - в C нет классов и от автодополнения после точки толку сишникам почти никакого, архитектура плоская (не ООП с подключением нового кода в из любого места), так что навигация и тоже не требуется. Вот только свои знания они экстраполируют на всё программирование и кукарякают в ветке /Development, предлагая новичкам с горящими лабами и кучей других интересов в жизни сначала полгода настраивать emacs, а потом уже писать на C.

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

У qt слабая совместимость

У нас в ВУЗе используется программа, написанная на Qt2, точнее на Delphi с биндингами к Qt2. Если у линуксоидов нет выделенного стабильного ABI с достаточно богатым API и поддержкой лет 10-20, это никак не проблема Qt.

В версии 5 переписывать ничего не надо. QtCreator уже давно собирается из одних и тех же исходников как с Qt4, так и с Qt5. Без условных директив.

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

Потому что он кривой, тяжелый и тормозной

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

Интерфейс QT хуже кастомизируется.

4.2, там сигналы на всё что можно и куча hints для рендеринга, не говоря уж о css, которые работают, в отличие от gtk3.

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

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

Недавно geekless сообщал, что GtkTreeWidget рисуется заново полностью при наведении мыши. У кого-то простейший OpenGL код эквалайзера тормозит, и конечно же (мы все верим в это!) из-за драйвера.

А в Qt прямо сейчас в гите разработчик от компании-владельца mips вносит ассемблерные оптимизации для mips в отдельной ветке. Про многопоточность уже сказали.

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

Да, опытный сишник опытен, как Вован, он давно знает где и как.

quiet_readonly ★★★★
()

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

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

но неужели это все «kdelibs»?

Совсем нет, более того, окончательно разбивает твой тезис о прибитости гвоздями к кедам. Эксперимент по установке амарока и запуску его под гномом сам провести сумеешь же?

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

Наверное, уже где-то в комментах сказали, но qt - это C++, а gtk - это pure C, но очень просто генерировать биндинги к обоим. И тысячи их. Вот только, долгое время qt был анальным зондом. Да и С++ далеко не все любят, но это предложение вообще не к месту здесь.

Вот так правильно.

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

Перевод с 4 на 5 обычно заключается в изменении инклудов. Всё.

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

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

QML же

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

Наверное, уже где-то в комментах сказали, но qt - это C++

Ну да, а как же биндинги к Ada, C#, D, Harbour, Java, Lisp, Lua, Pascal, Perl, PHP, Python, R, Ruby, Scheme?

Если кто ленится писать биндинги, то почему это проблема Qt, а не биндингописателей?

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

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

Каким образом это разбивает тезис?

Эксперимент по установке амарока и запуску его под гномом сам провести сумеешь же?

Я достаточно проводил таких экспериментов, когда у меня был гном и не было deadbeef'а. Сейчас мне не нужен amarok и digiKam не нужен.

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

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

Хорошие, годные вещества!

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

Каким образом это разбивает тезис?

Потому что, если ты будешь последовательным, то будешь говорить, что прибито к каждой перечисленной библиотеке (не к ДЕ, а библиотеке), далее дойдешь до

> ldd `which amarok`
        linux-vdso.so.1 (0x00007fff39bff000)
...
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007fbec9061000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fbec8e4a000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fbec8aa5000)
...
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fbec6ce8000)
...
        libz.so.1 => /lib64/libz.so.1 (0x00007fbec36be000)
        libbz2.so.1 => /usr/lib64/libbz2.so.1 (0x00007fbec34af000)
        liblzma.so.5 => /usr/lib64/liblzma.so.5 (0x00007fbec3289000)
        libfam.so.0 => /usr/lib64/libfam.so.0 (0x00007fbec3080000)
        libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fbec2d87000)
        libpng14.so.14 => /usr/lib64/libpng14.so.14 (0x00007fbec2b5e000)
        libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007fbec28d1000)
        libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0 (0x00007fbec2682000)
и так далее, а дойдя до последней, ты должен вообще, как тут любят говорить, «поделиться на ноль», потому что как так, кедыш зависит от гтк-гнома!

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

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

А вот и он, синдром утёнка.

где?

Навыкам отслеживания ресурсов вас никто не учил

вранье

Аргумент про софт тоже смешон

какой еще аргумент? я задал прямой вопрос!

зафрендил на всякий случай. товарищ, вы явный неадекват.

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