LINUX.ORG.RU

Обновление компонентов GNUstep

 


1

3

5го мая 2021 года разработчики объявили о выходе новых версий компонентов GNUstep - фреймворка, предназначенного для разработки кроссплатформенных и серверных приложений с использованием API, близкого к Apple Cocoa.


GNUstep — свободная реализация Cocoa (ранее OpenStep) — объектно-ориентированного API (Objective-C) для объектно-ориентированных операционных систем.

У GNUstep есть кросс-платформенная, объектно-ориентированная IDE. Как и Apple Cocoa, GNUstep также обеспечивает биндинги к Java, Ruby, Guile и другим реализациям Scheme. Для сохранения совместимости разработчики GNUStep отслеживают изменения Apple в Cocoa.

Wikipedia ©


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

Версии обновленных пакетов:

  • GNUstep Base 1.28.0 - общая библиотека, являющаяся аналогом Apple Foundation и включающая такие объекты, как классы для работы со строками, потоками, уведомлениями, событиями, сетью и т.д.
  • GNUstep GUI Library 0.29.0 - библиотека для разработки графического интерфейса пользователя. Включает в себя реализации кнопок, списков, полей ввода и прочих элементов графического интерфейса. Состоит из двух частей: фронтенда и бэкенда, где первый отвечает за обработку, а второй за отображение, специфическое доя каждой платформы
  • GNUstep GUI Backend 0.29.0 - набор бэкендов для GNUstep GUI Library, в котором реализована поддержка X11 и графики Windows. В ней реализована поддержка Wayland, а также улучшена поддержка менеджера окон WindowMaker и API Win64
  • GNUstep Gorm 1.2.28 - инструмент для моделирования интерфейса пользователя
  • GNUstep Makefile Package 2.9.0 - инструмент для создания сборочных файлов, позволяющий генерировать makefile без углубления в тонкости реализации для каждой конкретной платформы

>>> GitHub проекта (GPLv3)

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

★★★★★

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

На нём вообще есть какие-нибудь приложения? Способно ли оно запускать приложения, разработанные для macOS в том же Darwin, например?

puffy ()

Ого. Оно еще есть.

anonymous ()

Оно в теории вообще способно запускать приложения, собранные под MacOS (без учёта реализованных апи, сам факт), или для этого нужна дополнительная поддержка? То есть, оно именно маковский бинарь в принципе уже способна прочитать?

anonymous ()

Хорошая новость. Спасибо.

Odalist ★★★★★ ()

Ненужно х2. Во-первых, потому что Мак. Во-вторых, потому что ГНУ. В-третьих, потому что это вообще не может быть нужно в принципе.

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

нет, без исходников гнустеп тебе тут не поможет.

был проект аналогичный wine - darwine, но оно особо живым никогда не было.

last_man_standing ★★ ()

Почему оно не взлетело в своё время? Вполне неплохое окружение рабочего стола. Правда я никогда не писал на Objective-C, не знаю насколько удобно. Но macOS же на нём написали.

ls-h ★★★★ ()
Ответ на: комментарий от Shadow

Оу, так и wmaker на wayland втащат.

Скорее AfterStep. Авторы WindowMaker’а от вяленого не в восторге. Они даже от HiDPI не особо в восторге, чоужтам.

shimon ★★★★★ ()

Внезапно.

То что оно до сих пор работает я и не сомневался, но что оно до сих пор не забыто и даже немного развивается…

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

разрабу принимающему участие в более-менее знаменитых проектах сразу +1000 к его карме на работе. Так же как и линуксоид в чисто виндузятском админском окружении имеет неофициально повышенный статус. Вот и развивают…

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

я никогда не писал на Objective-C

IMHO удобнее c++. Но я только тыкал.

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

Авторы WindowMaker’а от вяленого не в восторге

Ну, представь, что тебе предлагают переписать свой тулкит на более низкий физический уровень. Ты что, будешь в восторге?
Теоретически, wmaker можно портировать на GNUStep с его собственного тулкита.

Shadow ★★★★★ ()

Проект GNU, а не собирается gcc и использует clang :)

Но в целом неплохой проект пусть развивается.

fsb4000 ★★★★★ ()

Менее всего интересны вещи, которые «свободная реализация ВСТАВИТЬ-ХРЕНЬ-ПО-ВКУСУ». Потому что 1) всегда будет запаздывать по фичам 2) не факт что вообще хоть как-то догонит оригинал 3) всякие патенты 4) зачем вообще тратить время на жлобов, которым западло открыть сорсы? (особенно что касается базовых либ)

Тупость сегодняшних коммерсов в том, что они думают, будто изобретение какой-то либы (GTk, Qt, Cocoa) делает их бизнес незыблемым. И сидя на своих платных лицензиях, медленно просирают рынок. Вот кому сейчас нужен этот «Си-с-объектами»? А Кокоа? Да в пень не упёрлись даже при всей вылизанности и идеальности. Сделай эпплорасты Кокоа открытым, глядишь - и на венде появилась бы своя экосистема, с ObjectiveC и контролами. А сейчас наблюдать жалкие всплески активности от GNUstep - только лишний раз умиляться подыхающему проекту.

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

Сделай эпплорасты Кокоа открытым, глядишь - и на венде появилась бы своя экосистема, с ObjectiveC и контролами. А сейчас наблюдать жалкие всплески активности от GNUstep - только лишний раз умиляться подыхающему проекту.

А Microsoft тоже хотела портировать Cocoa. Правда мобильный, а не десктопный. Но это было во времена Windows 10 Mobile, а со смертью этой операционки всё заглохло. Но патчи GNUstep’у перепали. Они даже в readme написали:

https://github.com/gnustep/libobjc2

Various parts of Windows support were contributed by the WinObjC team at Microsoft.

Но сейчас WinObjC мёртв :(

https://github.com/microsoft/WinObjC

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

Сделай эпплорасты Кокоа открытым, глядишь

А насколько оригинальный OPENSTEP был открытым? Только описание API?

ls-h ★★★★ ()
Ответ на: комментарий от Shadow

Ну, представь, что тебе предлагают переписать свой тулкит на более низкий физический уровень. Ты что, будешь в восторге?

Конечно, нет. Ну так то я. Я старенький уже. Зато смотришь себе на гитхаб, а там каждых полтора месяца рождается по новому тайловому композитору на wlroots. Оказывается, есть люди, истекающие энтузиазмом от вяленого, чорт знает, что у них в головах.

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

Так, как и ты. Полезай в биореактор. Шикльгрубер одобрит.

Odalist ★★★★★ ()

расширена поддержка различных платформ, одной из которых является Android.

На ведре он так же топорно выглядит?

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

че ты как не красноглазый-то =)

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

samy_volosaty ★★★★★ ()
Ответ на: комментарий от ls-h

Почему оно не взлетело в своё время?

Почему народ играл в Doom, а не в винрарнейший System Shock в 1994 году? Почему народ пользовался Windows и делал клоны его UI (KDE, GNOME), а не развивал GNUStep в середине 90-ых?

Вполне неплохое окружение рабочего стола.

В NeXTSTEP оно по сути было революционным и обогнавшим своё время. Но к началу нулевых интерес к подобным окружением начал угасать, потому что GNU должным образом не смог обеспечить его развитие, а идейный последователь NeXTSTEP в лице Mac OS X задавил альтернативы.

Правда я никогда не писал на Objective-C, не знаю насколько удобно.

Не слишком удобно особенно первое время, потом привыкаешь. Главная загвоздка в синтаксисе в том, что он своеобразный и видимо скопирован со Smalltalk’а. Вызов методов в классах не по привычной схеме через obj.method(arg), а по [obj methodWith: arg], при этом в API ещё и куча сишных функций болтается.

Но macOS же на нём написали.

Да, хотя Objective-C, несмотря что множество системных фреймворков именно на нём, теперь уже котируется как deprecated и к использованию прикладным программистам предлагается новый язык программирования Swift, который напоминает современные Rust или Kotlin.

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

Вот кому сейчас нужен этот «Си-с-объектами»? А Кокоа? Да в пень не упёрлись даже при всей вылизанности и идеальности.

Он нужен Apple. Cocoa API до сих пор является дефолтным API в macOS, к нему просто прокинули байдинги из Swift’а.

GNUStep не обеспечивает полной совместимости с этим API, потому и не нужен никому в современном мире кроме пары гиков.

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

А Microsoft тоже хотела портировать Cocoa. Правда мобильный, а не десктопный.

iTunes для Windows наверное какие-то портированные подсистемы Cocoa API использует и в Windows. Но он был разработан не Apple, а подрядчиком.

А древние Adobe Photoshop (типа CS2) под Windows вообще кажется реализовывали Carbon API поверх WinAPI для упрощения кодовой базы.

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