LINUX.ORG.RU

Начата работа над целями KDE Frameworks 6

 


0

0

Сообщество KDE понемногу начинает намечать цели для будущей 6 ветки своих продуктов. Так, с 22 по 24 ноября в берлинском офисе Mercedes-Benz Innovation Lab пройдёт спринт, посвящённый KDE Frameworks 6.

Работа над новой веткой библиотек KDE будет посвящена модернизации и чистке API, в частности будет выполнено:

  • разделение абстракций и реализаций библиотек;
  • абстрагирование от платформоспецифичных механизмов вроде QtWidget и DBus;
  • очистка от устаревших технологий типа до-юникодных эмодзи;
  • приведение расположений классов к более логичному виду;
  • удаление интерфейсного кода там, где он не нужен;
  • очистка от дублирования реализаций — переход к Qt-компонентам везде, где это возможно;
  • вынесение привязок к QML в соответствующие библиотеки.

Обсуждение планов продолжается, любой желающий может высказать своё предложение на соответствующей странице Фабрикатора

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

★★

Проверено: cetjs2 ()

Ответ на: Re: Коллега, Вы отстали от жизни... от anonymous

Re: Коллега, Вы отстали от жизни...

Вас в Гугле забанили? Мне надо расписать что такое SCRUM, что такое BRQ/SRS и как это связано со sprint?

лень весь этот скам самому гуглить

типа лгбт-ужин чтоле?

Каждый меряет в силу своей испорченности, но на Вашем месте я бы так не палился. =)))

они сами спалились Гномеры на Akademy
всё по-взрослому: печеньки, чай, кофе, вазелин…

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

Зато эмодзи сразу запилили! Вот они, приоритеты.

Да. Правильно.

Вот тыкаю палкой и то, и то.

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

А вот пользовательские экспиеренс превыше всего ☝️

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

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

И каким образом это гарантирует отсутствие подобных уязвимостей? Затрудняет эксплуатацию – да. А гарантировать оно что-то может не больше чем ты.

Аппаратно в процессорах: mips, ppc, … и/или программно ядром ОС Linux+PAX, OpenBSD, … гарантируется невозможность эксплуатации уязвимости переполнения буфера даже если она в программе реально существует.

Чтобы проверить свою ОС используйте paxtest. Эта прога также даст ответ на вопрос будет ли работать KDE с QML и JIT на вашем проце и ОС.

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

Пруфы этому шизоидному бреду можно увидеть?

Тебе уже все показали на пальцах и популярно расказали. Протри глазки и прочти посты выше.

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

Ну как-то так.

apt install –no-install-recommends digikam

The following NEW packages will be installed: acl akonadi-contacts-data digikam digikam-data digikam-private-libs dirmngr gdal-data gnupg gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm kio kipi-plugins kipi-plugins-common libaec0 libarmadillo9 libarpack2 libassuan0 libastro1 libatomic1 libavdevice58 libavfilter7 libavresample4 libbrotli1 libbs2b0 libcdio-cdda2 libcdio-paranoia2 libcdio18 libcharls2 libdap25 libdapclient6v5 libdapserver7v5 libdbusmenu-qt5-2 libdmtx0b libepsilon1 libfam0 libfftw3-double3 libflite1 libfreexl1 libfyba0 libgd3 libgdal20 libgdcm2.8 libgeos-3.7.1 libgeos-c1v5 libgeotiff2 libgif7 libgpgme11 libgpgmepp6 libgphoto2-6 libgphoto2-port12 libhdf4-0-alt libhdf5-103 libhyphen0 libiec61883-0 libieee1284-3 libjack-jackd2-0 libkf5akonadi-data libkf5akonadicontact5 libkf5akonadicore5abi2 libkf5akonadiprivate5abi2 libkf5akonadiwidgets5abi1 libkf5archive5 libkf5attica5 libkf5auth-data libkf5auth5 libkf5calendarcore5abi2 libkf5codecs-data libkf5codecs5 libkf5completion-data libkf5completion5 libkf5config-data libkf5configcore5 libkf5configgui5 libkf5configwidgets-data libkf5configwidgets5 libkf5contacteditor5 libkf5contacts-data libkf5contacts5 libkf5coreaddons-data libkf5coreaddons5 libkf5crash5 libkf5dbusaddons-data libkf5dbusaddons5 libkf5doctools5 libkf5filemetadata-data libkf5filemetadata3 libkf5globalaccel-bin libkf5globalaccel-data libkf5globalaccel5 libkf5globalaccelprivate5 libkf5guiaddons5 libkf5i18n-data libkf5i18n5 libkf5iconthemes-data libkf5iconthemes5 libkf5itemmodels5 libkf5itemviews-data libkf5itemviews5 libkf5jobwidgets-data libkf5jobwidgets5 libkf5kiocore5 libkf5kiontlm5 libkf5kiowidgets5 libkf5kipi-data libkf5kipi32.0.0 libkf5mediawiki5 libkf5mime-data libkf5mime5abi1 libkf5notifications-data libkf5notifications5 libkf5notifyconfig-data libkf5notifyconfig5 libkf5prison5 libkf5sane-data libkf5sane5 libkf5service-bin libkf5service-data libkf5service5 libkf5solid5 libkf5solid5-data libkf5sonnet5-data libkf5sonnetcore5 libkf5sonnetui5 libkf5textwidgets-data libkf5textwidgets5 libkf5threadweaver5 libkf5wallet-bin libkf5wallet-data libkf5wallet5 libkf5widgetsaddons-data libkf5widgetsaddons5 libkf5xmlgui-data libkf5xmlgui5 libkmlbase1 libkmlconvenience1 libkmldom1 libkmlengine1 libkmlregionator1 libkmlxsd1 libksba8 libkwalletbackend5-5 liblensfun-data-v1 liblensfun1 liblilv-0-0 liblqr-1-0 libltdl7 libmarblewidget-qt5-28 libmariadb3 libminizip1 libnetcdf13 libnorm1 libnpth0 libodbc1 libogdi3.2 libopenal-data libopenal1 libopencv-core3.2 libopencv-highgui3.2 libopencv-imgcodecs3.2 libopencv-imgproc3.2 libopencv-ml3.2 libopencv-objdetect3.2 libopencv-videoio3.2 libpgm-5.2-0 libphonon4qt5-4 libpolkit-agent-1-0 libpolkit-gobject-1-0 libpolkit-qt5-1-1 libpq5 libproj13 libpulse-mainloop-glib0 libqhull7 libqrencode4 libqt5concurrent5 libqt5opengl5 libqt5positioning5 libqt5printsupport5 libqt5qml5 libqt5quick5 libqt5script5 libqt5sensors5 libqt5sql5 libqt5sql5-mysql libqt5sql5-sqlite libqt5texttospeech5 libqt5webchannel5 libqt5webkit5 libqt5xmlpatterns5 libqtav1 libqtavwidgets1 librubberband2 libsane libsane-common libsdl2-2.0-0 libserd-0-0 libsnmp-base libsnmp30 libsocket++1 libsord-0-0 libspatialite7 libsratom-0-0 libsuperlu5 libsz2 libtbb2 liburiparser1 libvidstab1.1 libwoff1 libxerces-c3.2 libxslt1.1 libzmq5 marble-data marble-qt-data mariadb-common mysql-common odbcinst odbcinst1debian2 opencv-data phonon4qt5 phonon4qt5-backend-vlc pinentry-curses proj-data

0 upgraded, 227 newly installed, 0 to remove and 0 not upgraded. Need to get 225 MB of archives. After this operation, 571 MB of additional disk space will be used. Do you want to continue? [Y/n] n

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

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

Ну и для прототипирования использовать QtQuick и особенно язык QML очень круто. Удобнее, чем PyQt на мой взгляд. Создавать GUI с помощью декларативных конструкций очень быстро. Когда-то все считали, что ООП отлично накладывается на интерфейсы: аля объект «кнопка», «текстовое поле» и их методы. А сегодня Apple и Google делают кучу экспериментов с декларативным подходом и выпускают JetPack, SwiftUI и подобные вещи, которые по сути являются тупо калькой с невзлетевшего на тех же смартфонах и планшетах QtQuick.

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

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

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

Да. В том-то всё и дело.

Я кстати заметил, что его идеализируют фанатики, которые с ним дело не имели.

Это так кажется что с ним можно «херак-херак и в продакшн». И все вопросы решены, типа «ахаха, мы можем калькулятор на qml запилить». Но, как только начинаются действительно сложные вопросы, возникают и более сложные проблемы. Например, микс из C++ и QML. Сделать Q_INVOKABLE, не налажать с методами, членами и т.д. и т.п. В результате всё это начинает напоминать забавный квест. Сравнивая с альтернативами волей-неволей задаёшься вопросом а нахрена оно вот так и при чём тут вообще С++.

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

Скопипасть сюда вывод команды paxtest blackhat на своей системе

Поверь, что у меня все закрыто кроме одного пункта. В системе эта защита сделана программно при сборке компилятором с ssp. Тест проверяет аппаратную защиту, собирая без ssp. Аппаратная защита есть, например, в архитектуре mips.

Если данный тест собрать с опцией –fstack-protector-all то в выводе paxtest blackhat ниодной уязвимости не будет.

Если речь с оскорблений перешла на техническую конкретику, то добавим вывод hardening-check /usr/bin/konsole или любой другой программы с KDE. Здесь уже важно кто и как собирал, но все же опять вопрос о корректности кода в KDE — нигде нет фортификационной защиты функций. Я долго мучился со сборкой KDE 5 без QML и JIT, собралось без всех свистелок и перделок. Но включить Fortify Source functions так и не смог! За помощь буду благодарен.

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

Да, в openSUSE было получше попилено, вроде. Но там много другого тупняка и мало софта, поэтому ушел на Debian. А тут вот софт шинкуют, да вот почему все это потом не делают опциональным :(

apt install –no-install-recommends kate

The following NEW packages will be installed: dirmngr gnupg gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm kate kate5-data kio kpackagetool5 ktexteditor-data ktexteditor-katepart kwayland-data libassuan0 libdbusmenu-qt5-2 libeditorconfig0 libfam0 libgit2-27 libgpgme11 libgpgmepp6 libhttp-parser2.8 libjs-underscore libkf5activities5 libkf5archive5 libkf5attica5 libkf5auth-data libkf5auth5 libkf5bookmarks-data libkf5bookmarks5 libkf5calendarevents5 libkf5codecs-data libkf5codecs5 libkf5completion-data libkf5completion5 libkf5config-data libkf5configcore5 libkf5configgui5 libkf5configwidgets-data libkf5configwidgets5 libkf5coreaddons-data libkf5coreaddons5 libkf5crash5 libkf5dbusaddons-data libkf5dbusaddons5 libkf5declarative-data libkf5declarative5 libkf5doctools5 libkf5globalaccel-bin libkf5globalaccel-data libkf5globalaccel5 libkf5globalaccelprivate5 libkf5guiaddons5 libkf5i18n-data libkf5i18n5 libkf5iconthemes-data libkf5iconthemes5 libkf5itemmodels5 libkf5itemviews-data libkf5itemviews5 libkf5jobwidgets-data libkf5jobwidgets5 libkf5kiocore5 libkf5kiofilewidgets5 libkf5kiontlm5 libkf5kiowidgets5 libkf5newstuff-data libkf5newstuff5 libkf5newstuffcore5 libkf5notifications-data libkf5notifications5 libkf5package-data libkf5package5 libkf5parts-data libkf5parts5 libkf5plasma5 libkf5plasmaquick5 libkf5quickaddons5 libkf5service-bin libkf5service-data libkf5service5 libkf5solid5 libkf5solid5-data libkf5sonnet5-data libkf5sonnetcore5 libkf5sonnetui5 libkf5syntaxhighlighting-data libkf5syntaxhighlighting5 libkf5texteditor-bin libkf5texteditor5 libkf5textwidgets-data libkf5textwidgets5 libkf5threadweaver5 libkf5wallet-bin libkf5wallet-data libkf5wallet5 libkf5waylandclient5 libkf5widgetsaddons-data libkf5widgetsaddons5 libkf5xmlgui-data libkf5xmlgui5 libksba8 libkwalletbackend5-5 libmbedcrypto3 libmbedtls12 libmbedx509-0 libnpth0 libphonon4qt5-4 libpolkit-agent-1-0 libpolkit-gobject-1-0 libpolkit-qt5-1-1 libpulse-mainloop-glib0 libqt5printsupport5 libqt5qml5 libqt5quick5 libqt5quickcontrols2-5 libqt5quicktemplates2-5 libqt5script5 libqt5sql5 libqt5texttospeech5 libxcb-composite0 libxcb-damage0 libxslt1.1 phonon4qt5 phonon4qt5-backend-vlc pinentry-curses plasma-framework qml-module-org-kde-kconfig qml-module-org-kde-kquickcontrols qml-module-org-kde-kquickcontrolsaddons qml-module-qtgraphicaleffects qml-module-qtqml-models2 qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-dialogs qml-module-qtquick-layouts qml-module-qtquick-privatewidgets qml-module-qtquick-templates2 qml-module-qtquick-window2 qml-module-qtquick2

0 upgraded, 143 newly installed, 0 to remove and 0 not upgraded. Need to get 43.0 MB of archives. After this operation, 174 MB of additional disk space will be used.

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

Так-то да. Но я писал о том изначально, что это в дистрах ленятся, а то, что дали возможность пилить кде-софт на куски - хорошо, кмк. В openSUSE база KDE сильно меньше, чем хочет затащить дебиан. Там даже не надо фонон ставить обязательно. А тут мне пытаются присунуть сразу цельный кусок всего и вся.

Поэтому сижу на JWM и по-возможности использую Qt софт (не KDEшный)

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

Когда всё делают опциональным, то потом собрать нормально работающую прогу будет сложно и не удобно. Посмотри на сколько модулей разбили geany. Та нунафик…

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

Смотри. Вот, например, Okular. Расскажи пожалуйста, зачем Okular’у, скажем, kwallet и btrfs. Так, в форме ликбеза, отсталое быдло не понимает, зачем просмотрщику документов файловая система и менеджер паролей.

https://imgur.com/a/saxNirx

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

Посмотри на сколько модулей разбили geany

Посмотрел. Возрадовался. Я его использую как-раз. И очень рад, что могу поставить скелет, а уже намазать поверху реально используемое.

Я за такой подход как-раз.

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

Ну как, в принципе и гномовским софтом можно пользоваться отдельно от гнома, но интеграция страдает. В кде когда-то всё было взаимосвязано, красиво и кролики по небу летали, но пришли гномеры и давай требовать, мол, вашим софтом пользоваться невозможно. Кдешники повелись и распилили всё. теперь у гномеров всё интегрировано и отдельно бесполезно, а кдешный софт никто так и не стал использовать. Убрали конкурентов :)

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

а кдешный софт никто так и не стал использовать

Если бы kate ставил без вон всего, что я выше привел, а только какие-то базовые части, реально влияющие на работу - я бы много чего из KDE использовал. Реально удобный софт в большинстве случаев.

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

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

Не сочтите за оффтоп, но...

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

Вот для этого для всего, я предпочитаю embedded wizard. https://www.embedded-wizard.de/ Там немцы напалможгущие такое запилили, что я как сишник возликовал до такой степени, что им аж денег заплатил. Не жаль.

Видос того, что они делаю в итоге https://www.youtube.com/watch?v=a1U5W8K1GMM Правда, и ещё нагуглить можно таких же забавных видосиков. Но этот видос, я подчеркну, это некий девайс на базе stm32f7. Поддержка платформ куда как шире и на их сайте перечислена.

Эта их студия генерит по рисунку интерфейса стандартные для ANSI-C *.c и *.h, которые элементарнейше вставляются в свой код (хоть bare metal, хоть нет). Операционные системы, если нужено, то тоже поддерживаются все актуальные типа Linux embedded и до маргинальщины типа windows embedded ce. Bare metal тоже работает, проверял лично.

Единственное что огорчает – необходимость держать винды какие-нибудь в виртуалочке. Их среда и тот «компилятор», который они используют (chora, по-моему), живут только в оффтопе, но с этим я смирюсь, пожалуй, результат того стоит.

Так что, qt тут не особо нужен, если честно.

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

Андроид девелоперс дот ком. Там никогда не было «фактические ELF-файлы» в АПК всю жизнь байт-код, кроме нативных либ. Только в ведре 5 и 6 для байт-кода была aot компиляция, а до и после jit

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

Поставь на голую систему атом. и удивись, сколько он притянет. И пайчары и всё-всё-всё. И никто не воет. А эти пакеты не будут использоваться никем кроме установленной проги. Есть разница? Есть такая мода (давняя обида гномеров, что у кдешников всё лучше), кдешное всё обсирать. Но с реальностью это не связано. Не исключено, что подпитывается эта ненависть искусственно.

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

модульность не нужна. Когда челу нужен атом, он полтора гига харда отдаёт и не думает на что, ему нужен атом. А какой бы модульной ни была Катя - все будут вопить о ненужности всех этих пакетов, что с ней приходят. Весила бы сама Катя столько и небыла бы написана на кде - ели бы молча и причмокивали, ай какая вкусная Катя.

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

Если бы kate использовал реально все то, что тянется по зависимостям - да, никто бы и не ныл. Но ведь там одно тянет другое и поехало. И если разобраться, кмк, то много вещей явно опционального характера.

Вот взять phonon4qt5 phonon4qt5-backend-vlc. Ну допустим свистеть и пердеть в колонки kate сможет, ок. Но является ли это жесткой зависимостью текстового редактора?

P.S в сусе же фонон не ставится как обязательное нинужно.

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

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

Собственно говоря, да.

Есть ещё TouchGFX и прочие.

Ну вот потому QtQuick и довольно слабо взлетел.

Embedded это по большей части сишечка, потому что для C++ И Qt нужна всё таки, более мощная инфраструктура и тут bare metal не побалуешься особо.

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

Там никогда не было «фактические ELF-файлы» в АПК всю жизнь байт-код, кроме нативных либ. Только в ведре 5 и 6 для байт-кода была aot компиляция, а до и после jit

Эм: https://en.wikipedia.org/wiki/Android_Runtime

To maintain backward compatibility, ART uses the same input bytecode as Dalvik, supplied through standard .dex files as part of APK files, while the .odex files are replaced with Executable and Linkable Format (ELF) executables.

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

Не окажется ли весь этот труд напрасным? КДЕшники будут тратить время и дробить на модули, а в дистрах потом один хрен все возьмут и смотают синей изолентой (которая, как известно «на века»)

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

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

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

Никак нет. Хотя бы потому, что KDE Apps неплохо распространяются в AppImage и уже пришли в Microsoft Store. Если эти самодостаточные пакеты уменьшатся в размерах - будет хорошо.

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

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

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

модульность не нужна. Когда челу нужен атом, он полтора гига харда отдаёт и не думает на что, ему нужен атом

Нужна. Когда человеку не жалко полтора гига на наколеночный электрон, то либо ему наплевать на себя, либо на систему, либо все вместе. В свое время эти полтора гига были решающим моментом, благодаря которому я выбрал VS Code. Я не был готов отдавать гигабайт под текстовый редактор, причем далеко не лучший текстовый редактор.

Те же принципы применяются и к KDE. Я не верю, что просмотрщику документов (далеко не всех документов, Okular не такой уж и комбайн) нужен KWallet. Я не верю, что ему нужны уведомления, файловая система и upower. Это – бред.

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

Вот именно. А зачем мне kio без собственно KDE? Мне нужен Okular, сам по себе, без лишнего. Ну и наконец, исходная претензия заключалась в том, что я голословен, и KDE-шные пакеты не тянут по 200мб зависимостей. Как видно по скрину – очень даже тянут.

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

KDE Apps неплохо распространяются в AppImage

Тут у них хромает, по-моему. На сайте Kate можно скачать appimage версии 16.08.0. В bleeding edge Debian Stable уже 18.08.0

Однако их appimage весит всего 54 МБ. А в дебиане устанавливая в систему без KDE софта - 181 и 174 (с и без рекомендованных зависимостей соответственно). Значит может же работать без всего этого хлама, который «якобы нужен».

PS: и может работать и работает. Скачал и запустил.

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