LINUX.ORG.RU

Лидер сообщества Ubuntu представил стек для унификации GUI приложений

 , , , ,


0

0

Джоно Бэкон (Jono Bacon), менеджер по взаимодействию с комьюнити компании Canonical, опубликовал в своем блоге заметку, в которой предложил по аналогии с web-стеком LAMP (Linux, Apache, MySQL, PHP), сформировать базовый набор для быстрой и удобной разработки GUI-приложений, который, по его мнению, может существенно ускорить темпы развития GUI-программ для Linux и привлечь новых разработчиков.

  • Язык программирования Python;
  • Графический тулкит GTK;
  • Десктоп окружение GNOME;
  • Мультимедиа фреймворк GStreamer;
  • Среда для быстрого проектирования элементов интерфейса Glade;
  • Библиотека для хранения данных DesktopCouch, представляет собой попытку интеграции возможностей хранилища CouchDB в десктоп-приложения (например, позволит организовать синхронизацию и репликацию данных между компьютерами).

Также рассказано о новом проекте Ground Control, представляющем собой интегрированный в файловый менеджер Ubuntu GUI интерфейс для упрощения процесса создания проектов, их сборки и синхронизации с Launchpad. Взято с opennet

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

★★★

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

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

>Возможно я извращенец, но сам я использую Qt + Haskell.

И тебе доступен _весь_ функционал Qt? Т.е. нет ничего от Qt, что можно использовать в с++, но нельзя в Haskell?

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

Вопрос. Делали лабу в универе. Всем известно о copy-on-write.

Загружаем 1,5 ГБ данных - норм, форкаемся на четыре процесса - out of memory. Но мы же ничего не писали? Алгоритм рассчитан на использование этих данных только для чтения. К примеру если я просто просуммировать эти числа хочу в 4 процессах, то почему есть проблема? Copy-on-write не работает в таком простом случае?

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

> Не троллинга ради, что было опробовано из линуксов?

Поскольку меня интересовали конкретно кеды 4, то - OpenSuse (полные руины) и Mandriva (мелкие затыки, но в целом хорошо).

А что, в арче при фракчуре всё так нехорошо стало?

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

>Всем известно о copy-on-write.

Всем, да не всё. Реально 4 процесса занимали полтора гб памяти, но формально - 6гб, а их у вас скорее всего в системе столько памяти не было даже со свопом, поэтому ядро и не дало запустить лишнее. Потому что ему не непонятно что делать, если ваша прога начнёт реально изменять память в каждом из экземпляров. malloc может вернуть 0 если память кончилась, а как объяснить программе, что память, которая уже выделена на самом деле не существует?

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

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

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

Вдогонку. У меня возникла мысль и я её проверил. На моей 64хбитной машине нижеприведённая программа успешно отработала.

int main()
{
	vector<char> v(1024*1024*1024,42);
	int ch;
	for (ch=0;ch<256;ch++)
	{
		int child = fork();
		if (child==0)
		{
			fprintf(stderr,"child #%d\n",ch);
			break;
		} else if (child==-1)
		{
			fprintf(stderr,"fork #%d failed\n",ch);
		}
	}
	sleep(60);
	fprintf(stderr,"child[%d]: v[%d]=%d\n",ch, ch*256, v[ch*256]);
}
Имелись незначительные тормоза в виде рваной прокрутки в браузере, но не более того.

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

> Отсюда и появляется куча неполноценных уродцев типа ... «клон gimp, но на qt», «клон f-spot, но на C++».

Первого не существует, второй со всей очевидностью уделает f-spot в обозримом будущем.

AP ★★★★★
()

А потом собраться всем вместе и вшить всё это дело в ядро.

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

> Copy-on-write не работает в таком простом случае?

А как вы представляете работу copy-on-write? Дай угадаю, волшебным образом создаётся новый процесс, никаких структур, описывающих его адресное пространство нет, и, следовательно, он ничего не занимает?

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

> Может, у вас просто проблемы с /dev/hands?
В таком случае у вас проблемы с /dev/brain, точнее полное их отсутствие вследствие отсутствия самого /dev/brain.

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

> эта штука будут прибита корабельными гвоздями

если решение будет удачным - оно и в винду придет в гости к дотнет

причём половина из них не собирается, а половина собравшихся просто не работает


тут есть над чем попахать - но оно того стоит

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

>Тем более Qt - там не только гуи, там есть классы для сети, для работы с графикой, опенгл, и много еще чего. Он универсальнее.

Есть glib, в котором и гио и куча блекджеков и шлюх.

GTK легковеснее и красивее.

Легковеснее - это да, но это не значит что он не тормознее, да и возможности никакие. Это как получается, гтк - гуи, еще что-то - другая либа, что-то еще - еще либа.

гтк+ и глиб - почти одно целое. Имейте это в виду.

подумайте, а вам так ли нравитися кодить на C++

Нравится, да и темболее, с Qt с++ совсем не ужасен.

Ужасен. Чесслово, горбатого могила исправит.

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

>> Среда для быстрого проектирования элементов интерфейса Glade;

libglade deprecated же. Они хотели сказать gtk.builder.

Депрекэйтед только libglade. глэйд - это среда для рисования гуя и она никуда не делась. А какая библиотека будет юзаться для отображения этого дела - дело десятое.

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

>>Да, а что ты видишь здесь не верным?

Ну да, юниксвей головного мозга.

Юнихвей это хорошо!

Если отзывчивость видно, то вам стоит подумать о смене своего селерона с 300мгц на что-то более отзывчивое.

Да хотябы поглядите на psi и на gajim. Это очевидно.

Гаджим лучше, это очевидно.

Легковеснее - это да, но это не значит что он не тормознее >/0

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

Быстрей. Особенно на слабой машине.

да и возможности никакие.

Чушь, враньё и провокация.

А какие, формочки рисовать, кнопочки и все? В Qt уже анимацию даже встроили. <- Хотя да, так как в вашем гтк этого нет, вы скажите что это не нужно.

Именно так и скажу. Или лучше не буду говорить. А спрошу: нафига нужно встраивать куда-то анимацию? Просто потому что это типа круто?

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

> В таком случае у вас проблемы с /dev/brain, точнее полное их отсутствие вследствие отсутствия самого /dev/brain.

КИСА ТЫ ЧТО АБИДЕЛАСЬ?

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

> Быстрей. Особенно на слабой машине.

Здесь заметим, что под виндой куте почему-то существенно бодрее гтк. Под линупсами такой заметной разницы нет.

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

> Krita?

http://www.linuxgraphics.ru/articles.php?article_id=54

«Насколько я помню, работа над Krita была возобновлена в 2002 году по причине того, что не было свободной программы для художников, верно?

Баудевейн: Да — вроде того. Я купил графический планшет, в комплекте с которым шла программа Procreate Painter — урезанная версия Corel Painter. Программа сама по себе была не такой уж и хорошей, но существовавшим свободным аналогам до нее было как пешком до Пекина. Меня эта тема настолько заинтересовала, что я прочитал несколько научных работ и диссертаций и понял, что подход Painter сам по себе был достаточно ограниченным. Равно как и подход Photoshop или GIMP. Поэтому я начал работать над собственным проектом, но вскоре понял, что было бы разумнее присоединиться к существующему.

В то время Krita как проект угасал — программа могла показывать многослойные изображения, но рисовать в ней было нереально. Тогдашний руководитель проекта, Патрик Джулиен (Patrick Julien), очень помог мне. Иногда я говорю, что именно он научил меня C++! И вот шаг за шагом я довел Krita до уровня, когда программой стало интересно пользоваться. Тогда к проекту начали присоединяться новые люди, одни — чтобы исправить мои ошибки, другие — потому что им чего-то в ней не хватало.

Сирил: У каждого из нас собственные мотивы работы над Krita. Если Баудевейн заинтересован в рисовании, то Каспер Бёман (Casper Boemann) присоединился к нам потому, что ему нужен был редактор, позволяющий обрабатывать изображения в режиме 16 разрядов на цветовой канал — для проекта симулятора полетов, над которым он тогда работал.»

Ну и в каком месте крита — клон гимпа на кьюте?

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

>Под линупсами

К логопеду, быдло!

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

> А куда? Писать на C для гнома - ужоснах!

На Val^W Mono %)

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

Эту историю я не устану повторять :) После бытности убунтоидом полгода, скачал Арч, почитал ихнюю Вики, решил снести свою 8.10 (стала тупить в геометрической прогрессии, хуже любой винды). Поставил, заапдейтил, настроил, 3 месяца радовался Пакману и стабильности, а потому сдуру и без бэкапа решил обновиться с -Syu, после вего произошел fail. ИЧСХ, после (о ужас) переустановки kernel26-2.6.31-5 стало вешать систему на ACPI init (так вроде), я покопался еще немного и забил. Потом поставил на десктоп Arch x64, там иксы раз в 4-5 минут рестартились без эрроров в логе, хотя, есть подозрение на GDM. После апдейта драйверов и иксов стало лучше, 3 дня работал отлично, но потом внезапно словил красивый вылет. После этого ненавижу Арч, сижу на Фейл7 и мечтаю о Слаке. Такие дела

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

> ненавижу Арч, сижу на Фейл7 и мечтаю о Слаке. Такие дела

Феерично.

tailgunner ★★★★★
()

Python + Qt; KDE; Tokyo Cabinet (не вижу резона всё в кучу).

вот только для Qt была бы обвязка попитоничнее...

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

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

>> Быстрей. Особенно на слабой машине.

Здесь заметим, что под виндой куте почему-то существенно бодрее гтк. Под линупсами такой заметной разницы нет.

Не знаю я под венду не пишу, тем более на куте. В последний раз писал морду к бд на pygtk. Там нужно было, чтоб оно под оффтопиком тоже работало.

Тестировал сначала на вайне, потом принесли ноут с вендой. Под вендой оно заметно подтормаживало.

Отсюда напрашивается предположение: может это порт gtk под вантуз тормозит, а не куте там быстрее?

Впрочем бенчмарков не делал и вообще мне на это пофиг.

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

>И да, вот все кто говорит «C++ + Qt» подумайте, а вам так ли нравитися кодить на C++? Вот представьте что у C++ синтаксис и фичи пайтона. Что, удобно, да? Если уж подставлять что-то с Qt, то D или тот-же пайтон.

Во первых сходи уже к логопеду, со своим пАйтоном.

Во вторых C++/Qt4 != C++ . Там куча всяких удобных няшек что и в питоне. А уж по быстродействию отгадай кто лидирует для гуя.

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