The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Пользовательское окружение COSMIC будет использовать Iced вместо GTK

04.10.2022 08:53

Майкл Мёрфи (Michael Aaron Murphy), лидер разработчиков дистрибутива Pop!_OS и участник разработки операционной системы Redox, рассказал о работе над новой редакцией пользовательского окружения COSMIC. COSMIC трансформируется в самодостаточный проект, не использующий GNOME Shell и развиваемый на языке Rust. Окружение планируется использовать в дистрибутиве Pop!_OS, предустанавливаемом на ноутбуки и ПК компании System76.

Отмечается, что после долгих обсуждений и экспериментов разработчики приняли решение использовать для построения интерфейса библиотеку Iced вместо GTK. По мнению инженеров из System76 библиотека Iced, активно развиваемая в последнее время, уже достигла уровня, достаточного для использования в качестве основы для пользовательского окружения. В ходе экспериментов подготовлены различные апплеты COSMIC, написанные одновременно на GTK и Iced для сравнения технологий. Эксперименты показали, что по сравнению с GTK библиотека Iced предоставляет более гибкий, выразительный и понятный API, естественно сочетается с кодом на языке Rust и предлагает архитектуру, привычную для разработчиков, знакомых с языком декларативного построения интерфейсов Elm.

Библиотека Iced полностью написана на языке Rust, использует безопасные типы, модульную архитектуру и модель реактивного программирования. Предоставляется несколько движков отрисовки, поддерживающих Vulkan, Metal, DX12, OpenGL 2.1+ и OpenGL ES 2.0+, а также оконная оболочка и движок для интеграции с Web. Приложения на базе Iced могут быть собраны для Windows, macOS, Linux и запуска в web-браузере. Разработчикам предлагается готовый набор виджетов, возможность создавать асинхронные обработчики и использовать адаптивную компоновку элементов интерфейса в зависимости от размера окна и экрана. Код распространяется под лицензией MIT.

  1. Главная ссылка к новости (https://www.reddit.com/r/pop_o...)
  2. OpenNews: Выпуск дистрибутива Pop!_OS 22.04, развивающего рабочий стол COSMIC
  3. OpenNews: Компания HP анонсировала ноутбук, поставляемый с Linux-дистрибутивом Pop!_OS
  4. OpenNews: Компания System76 работает над созданием нового пользовательского окружения
  5. OpenNews: В дистрибутиве Pop!_OS 21.04 предложен новый рабочий стол COSMIC
  6. OpenNews: Компания System76 объявила о разработке пользовательского окружения COSMIC
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/57866-cosmic
Ключевые слова: cosmic, gtk, rust, iced
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (73) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, leibniz (??), 09:13, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ну хоть не кути и на том спасибо
     
  • 1.3, Аноним (3), 09:17, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –15 +/
    все лучше чем node.js, но хуже чем qt
     
     
  • 2.46, Аноним (46), 12:52, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    ты перерос ноду, но недорос до с++?
     
     
  • 3.69, Px (?), 18:04, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, надо заметить: Qt — такое себе C++... В смысле, номинально плюсы, но на практике, почти «Си с классами»
     
     
  • 4.89, Аноним (89), 04:40, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А почему ? Похоже на слассическую яву, чего-то не хватает ? (зыж си с классами это когда у тебя нет стрингов, векторов и прочего непотребства)
     
     
  • 5.95, Аноним (95), 07:57, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Называете вектора непотребством? Ну это такое... Вектора очень часто используются.
     
     
  • 6.107, Аноним (107), 15:51, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    В Си ? Очень интересноый у вас Си :D
     
  • 3.76, илья (??), 19:21, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Wpf ?
     

  • 1.7, Stanislavvv (?), 09:21, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Если оно только под rust - не взлетит.
    Тот же gtk я могу использовать в perl, python и ruby, как минимум.
    Я не против раста в целом, но я против ТОЛЬКО раста как единственного языка написания пользовательских приложений.
     
     
  • 2.11, eganru (?), 09:31, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    По моему опыту Iced - не готовое для обычного человека.
    Необходимость писать resolver="2" в workspace, без которого сборка гуевины падает при попытке собрать всё на свете. Зачем это надо? Один-единственный сигнал, в который всё на свете пихается.. Как сложностью-то этого управлять?

    Но если хотят - барабан на шею. Можно через год посмотреть могут ли, или посмотреть на мертвых людей(умерших от цифрового истощения от барабана).

    Кто-нибудь вообще COSMIC здесь использует? Интересно бы знать

     
     
  • 3.15, Жироватт (ok), 09:39, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –8 +/
    Лучше спроси, кто использует тут Поп!_ов_ОС.
     
  • 3.21, derghast (ok), 10:12, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >COSMIC здесь использует

    Ну я тыкал в попос, но просто интереса ради, нормально как по мне. Но, если что, то в своём текущем виде cosmic - чуть поправленный гном. Версию cosmic на расте они ещё не выкатили и, судя по всему, выпустят ещё не скоро.

     
  • 3.24, Аноним (24), 10:43, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    If your project is using a Rust edition older than 2021, then you will need to set resolver = "2" in the [package] section as well.
     
     
  • 4.52, eganru (?), 13:37, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    [i]If your project is using a Rust edition older than 2021, then you will need to set resolver = "2" in the [package] section as well.
    [/i] - Ты сам-то клоун пользовался? Использует 2021 и нужно ставить в любом случае.

    Я расскажу как это происходит: cтавишь в зависимости iced, он его тянет с crates.io и ты сходу получаешь ошибки сборки для платформ, которых у тебя в принципе быть не может. Нормальный человек(__не апологет__) после этого по идее выбирает что-то другое.

     
     
  • 5.58, Растишка (?), 14:45, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Столько агра вместо того, чтобы ман почитать.

    > edition = "2021" implies resolver = "2" in Cargo.toml

    https://doc.rust-lang.org/edition-guide/rust-2021/default-cargo-resolver.html

     
     
  • 6.64, eganru (?), 15:33, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Это НЕ работает.
    https://githubhelp.com/rust-lang/cargo/issues/9956
    Я у себя проверил.

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

     
     
  • 7.70, Растишка (?), 18:32, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Там же написано: Cargo currently doesn't allow setting a global edition for a virtual workspace. Вместо этого надо в каждом крейте указать edition. Или вам больше хочется поговорить, чем проблему решить?
     
     
  • 8.83, egan (?), 23:10, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Хватит нести чушь Все написано и этого не достаточно В мане вранье Надо писат... текст свёрнут, показать
     
  • 6.65, eganru (?), 15:38, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вы, к слову, iced использовали? Палочкой тыкали хотя бы?
    Или Вы диванный эксперт?

    И этого дерьма в rust с очень хорошим запасом, кстати.

     
  • 3.81, ммнюмнюмус (?), 23:02, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    В libwebsockets (на С) что-то подобнное с callbacks - одна функция, которой тип события передаётся в виде параметра. Ничё - переваривается.
     
     
  • 4.90, Аноним (-), 04:48, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    до чего же она перегруженная эта ваша libwebsocket,прям комбайн
     
  • 4.97, eganru (?), 08:26, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я говорю исключительно про свой опыт работы с iced(я палочной потыкал в для ознакомления):
    Что конкретно мне не понравилось.

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

    В целом подход с 1 callback на все мне не нравится.

     
  • 2.66, Аноним (66), 15:45, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >Тот же gtk я могу использовать в perl, python и ruby, как минимум.

    А нахрена? Из этих трёх, я десктопный софт только на пистоне и видел. Пердл просто сдох, жруби не вылезает за пределы рельсов.

     
     
  • 3.82, ммнюмнюмус (?), 23:06, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ну про руби я бы не сказал. А что значит десктопный? По мне ГУИ в принципе и есть десктоп. Perl для казуалки, конечно, не лучший выбор - его сила в текстодробилке, а в остальном - пишут, питон лучше.
     
  • 3.100, Michael Shigorin (ok), 12:27, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я видел на всех трёх.

    В том и разница подходов -- "а нахрена, оно всё сдохло" или "нате, берите".

     

  • 1.9, derghast (ok), 09:24, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    На форониксе уже успели посраться на этот мусорный тулкит.

    https://github.com/iced-rs/iced/issues/33
    https://github.com/iced-rs/iced/issues/552
    https://github.com/iced-rs/iced/issues/979

    Откровенно сырой тулкит, хз как попосовцы собираются а нём целую DE строить.

     
     
  • 2.10, prokoudine (ok), 09:28, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    «Мы сделаем крутую оболочку на тулките, который непригоден для половины населения планеты» — это офигенно.
     
     
  • 3.17, Советский инженер (?), 09:45, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Может они пригодность определяют не для населения планеты, а для своих клиентов?
     
     
  • 4.36, prokoudine (ok), 11:55, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Может они пригодность определяют не для населения планеты, а для своих клиентов?

    Эта теория была бы хороша, если бы их клиентами были белые американцы, живущие в США и общающиеся только с другими белыми американцами.

     
  • 3.18, Жироватт (ok), 09:47, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не понимаешь, какой серьёзный бывает минус к INT и к CHAR, когда на персонажа с перками "ХрустиковыйПюрер", "ИзобредательОС" и с рангом "Тимлид" в гильдии действуют пассивные дебаффы "This Not Invented Here", "Ein Volk, ein Reich, ein Rust" и "Мы пойдем своим путём".

    Попкорну? Это будет долго и весело. Ни Штепсель с Тарапунькой, ни Белый с Рыжим тут даже рядом не стояли.

     
  • 2.35, Аноним (35), 11:34, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У этого айсед сайт без скриптов не работает.
     
     
  • 3.73, Аноним (73), 19:03, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Как и 95% остального интернета. Кого ты этим удивить хотел?
     
     
  • 4.101, Michael Shigorin (ok), 12:28, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Надо же, и даже мем про 95% сумел применить против себя же.
     
  • 3.94, Аноним (95), 07:54, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Как будто, это что-то из ряда вон.
     
  • 2.79, Анно Домини (?), 21:50, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    и ЭТО они пилили три года?
     

  • 1.12, ryoken (ok), 09:35, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >>Приложения на базе Iced могут быть собраны для Windows, macOS, Linux и запуска в web-браузере.

    Что характерно - *BSD ни одного сорта не названо :).

     
     
  • 2.44, Аноним (46), 12:49, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –3 +/
    И миникса ни одного нет... и DOS чет тоже не поддерживают... безобразие...
     
     
  • 3.56, Аноним (-), 14:39, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > И миникса ни одного нет... и DOS чет тоже не поддерживают... безобразие...

    Правда, на BSD оно вполне себе собирается и работает, в отличие от. Впрочем, ожидать от современных пингвиняток каких либо знаний за "горизонтом" их любимого дистра ... ну, такое.
    У них же праздник - сразу две ОС (любимая и основная) поддерживаются, да еще и в ядро завезли.


     
  • 3.84, ммнюмнюмус (?), 23:13, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это же тренеровочное ядро, срочно переписать на rust, сделать RustOS.
     
     
  • 4.110, Кира (ok), 20:20, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Redox же. =)
     

  • 1.13, Жироватт (ok), 09:36, 04/10/2022 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +1 +/
     
  • 1.20, th3m3 (ok), 10:11, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Отличная новость. Хейтерам - не нравится Rust, сидите в других DE.
     
     
  • 2.39, Аноним (39), 12:38, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Правильнее:

    > Хейтерам - не нравится все кроме Rust, сидите в iced DE

     

  • 1.23, Аноним (24), 10:16, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Вам какая разница на чём они делают? Лишь бы работало и потребляло меньше ресурсов.
     
     
  • 2.40, Аноним (46), 12:44, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –4 +/
    А меньше ресурсов это требование из-за нежелания просто платить (менталитет экономить на спичках)?
     
     
  • 3.71, Аноним (24), 18:59, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да, после вас хоть потоп.
     
     
  • 4.75, Аноним (73), 19:11, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –3 +/
    А после вас - платы с криво перепаянными кондюками. И 100500 комментов о том, как 20-летнего железа "нафсиохватает", а софт жирный.
     

  • 1.27, Аноним (27), 11:01, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >Elm

    Помню, почтовик такой был, эх.

     
  • 1.30, warlock66613 (ok), 11:07, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Архитектура Iced выглядит довольно вменяемо, хотя есть вопросы насчёт того сколько это будет жрать памяти.
     
     
  • 2.32, Аноним (32), 11:08, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    128 гигабайт оперы хватит на всех.
     
     
  • 3.33, ryoken (ok), 11:18, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > 128 гигабайт оперы хватит на всех.

    Чушь. Если с tmpfs - может не хватить. Сборка того же Хромиума жрёт по 2Гб на поток. (В 96 пока что влезает, но у меня потоков 24).

     
  • 2.91, Аноним (-), 05:10, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Для начала поинтересуйтесь сколько терабайт диска надо чтоб собрать такую радость.
    Для справки - легенькая программка/окошко на айсиде - 8GB папочка билд.. ну я то уже в себя прихожу понемногу удаляю это все барахло
     
     
  • 3.105, warlock66613 (ok), 15:15, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Для начала поинтересуйтесь сколько терабайт диска надо чтоб собрать такую радость.
    > Для справки - легенькая программка/окошко на айсиде - 8GB папочка билд...

    Какая разница сколько? Сколько требуется, столько и надо. Это объективно обоснованная необходимость.

     

  • 1.38, Аноним (38), 12:37, 04/10/2022 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –6 +/
     

     ....ответы скрыты (5)

  • 1.45, Аноним (46), 12:50, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Сишный биндинг где? Как под это писать приложения на нормальных языках?
     
     
  • 2.62, Аноним (24), 14:56, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    лол какой биндинг в си?
     
  • 2.68, Аноним (-), 16:25, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –7 +/
    Никак. Пожалуйста. Свалите со своим C в свой бумерский gtk, и пишите под него.
     
     
  • 3.92, Аноним (-), 05:12, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот она какая совместимость оказывается.
     
     
  • 4.96, Аноним (96), 08:24, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Совместимость с чем? С бумерами? Почитай комменты на опеннет, почитай Столярова. Бумеры доживают последние годы до пенсии, совместимость с ними не нужна. Торвальдс вон чётко понимает это, и запиливает в linux раст, чтобы привлечь зумеров в разработку ядра, чтобы когда бумеры начнут вываливаться на пенсию, было бы кому продолжать разработку.
     
     
  • 5.108, Аноним (-), 15:56, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну так может вы свалите со своим растом ? Приперлись еще и права качают.
     
  • 4.102, Michael Shigorin (ok), 12:34, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    "Как вызвать истерику за полкомментария" (ц)
     
     
  • 5.103, Аноним (-), 13:10, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Да всем плевать на твои бумерские истерики.
     

  • 1.72, n00by (ok), 19:03, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Vulkan, Metal, DX12, OpenGL 2.1+ и OpenGL ES 2.0+ - это круто,
    но как найти, работает оно в Linux через Xlib/XCB и/или Wayland?
     
     
  • 2.77, Трушный (?), 20:51, 04/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Iced работает и с wayland,  и с X11, и даже  с вебом по-моему выбери нужную ветку на гите и все.
     
     
  • 3.106, n00by (ok), 15:44, 05/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Не нашёл такого в ветках.

    master default
    0.1
    0.2
    0.3
    0.4

    В тегах есть, но это не то.

     

  • 1.80, Golangdev (?), 22:47, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Очередной форк.
    Лучше б гном пилили вместе с красной шляпой.
     
  • 1.85, ммнюмнюмус (?), 23:18, 04/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Typesafe reactive programming model

    Думаю, там турбо-Фан!

     
  • 1.111, Аноним (111), 13:26, 16/05/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >и участник разработки операционной системы Redox

    Ясно, понятно.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру