The OpenNET Project / Index page

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

Проект Bottles будет переписан на языке Rust с использованием libcosmic

28.12.2024 18:29

Разработчики программы Bottles, предлагающей интерфейс для упрощения установки, настройки и запуска Windows-приложений в Linux, опубликовали информацию о развитии инициативы Bottles Next, нацеленной на полную переработку архитектуры и кодовой базы проекта. Отмечается, что имеющееся монолитное приложение на Python с интерфейсом на GTK не позволяет реализовать многие идеи, такие как поддержка macOS, ограничивает возможности и приводит к возникновению проблем, не решаемых без кардинального изменения архитектуры.

Новая архитектура подразумевает разделение приложения на три отдельных компонента: клиент с реализацией графического интерфейса, сервер с логикой запуска приложений и управления префиксами Wine и агент, работающий под управлением Wine и взаимодействующий с API Windows. Изначально планировалось использовать в реализации клиента web-технологии (Electron и VueJS), а сервер написать на языке Go, но созданные прототипы и неприятие сообществом идеи перехода на движок Electron, побудили разработчиков отказаться от данной задумки.

В итоге решено использовать для разработки клиента и сервера язык Rust, а графический интерфейс построить на базе фреймворка libcosmic. Libcosmic используется в среде рабочего стола COSMIC и представляет собой надстройку над библиотекой iced, предоставляющей функции для создания графических приложений и апплетов. Для разработки применяется модель реактивного программирования и архитектура, привычная для разработчиков, знакомых с языком декларативного построения интерфейсов Elm. Для отрисовки могут применяться движки на базе Vulkan, Metal, DX12, OpenGL 2.1+ и OpenGL ES 2.0+.

Отмечается, разработчикам было бы более комфортно использовать язык Go, но от него пришлось отказаться из-за отсутствия качественных тулкитов для разработки интерфейсов пользователя. Помимо нового упрощённого интерфейса планируется в качестве опции оставить привычный классический вариант интерфейса. Код агента будет написан на C# и .NET, что объясняется необходимостью запуска сервиса WineBridg в Windows-окружении, сформированном Wine. Контейнер для тестирования начального прототипа Bottles Next, написанного на Rust, планируют опубликовать через несколько недель. В настоящее время доступна лишь простейшая демо-версия.



  1. Главная ссылка к новости (https://www.reddit.com/r/linux...)
  2. OpenNews: Выпуск Bottles 2022.1.28, пакета для организации запуска Windows-приложений в Linux
  3. OpenNews: Пользовательское окружение COSMIC развивает новую панель, написанную на Rust
  4. OpenNews: Четвёртый альфа-выпуск среды рабочего стола COSMIC
  5. OpenNews: Выпуск дистрибутива CachyOS 241221, включающего ядро с дополнительными оптимизациями
  6. OpenNews: Дистрибутив Serpent OS перешёл на стадию альфа-тестирвания
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62478-bottles
Ключевые слова: bottles, rust, cosmic
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (50) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.5, Аноним (5), 18:46, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Ну наконец-то! Еще один проект переписывают на Rust! Интересно, сколько раз они перепишут его с нуля, прежде чем поймут, что проблема была не в Python????
     
     
  • 2.9, Аноним (9), 19:09, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > прежде чем поймут, что проблема была не в Python

    это иксперды опеннета вроде тебя читать, а главное, понимать и думать не умеют - проблема не в python, а в gtk

     
     
  • 3.17, Аноним (-), 19:29, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • –7 +/
    Проблема в GTK, говоришь? А ничего, что Bottles Next на libcosmic, который, внезапно, тоже тулкит для GUI? Или это другое, понимать надо? Не поделишься своим глубочайшим анализом, почему переход с GTK на что-то другое — это не решение проблемы, а её усугубление?
     
     
  • 4.24, Апро (?), 20:05, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >  Не поделишься своим глубочайшим анализом, почему переход с GTK

    Ну единственная из "многих" идей/проблем, это:
    > GTK не позволяет реализовать многие идеи, такие как поддержка macOS

    но gtk+ поддерживает macos:

    https://www.gtk.org/docs/installations/macos

     
     
  • 5.40, Аноним (-), 21:14, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    "Единственная", говоришь? А ничего, что в той же новости прямым текстом написано про "проблемы, не решаемые без кардинального изменения архитектуры"? Или это тоже GTK виноват? А может, проблема всё-таки комплексная, и macOS — это лишь один из примеров, а не единственная причина? Не?


     
  • 5.48, Витюшка (?), 22:38, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Прежде чем делать такие утверждения нужно попробовать пописать хоть пару строчек на GTK. Ничего он там не поддерживает от слова "совсем".
     
  • 4.43, Аноним (43), 21:20, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ясно же, что проблему кроссплатформенности решили бы C++ и Qt.
     
  • 2.10, Аноним (-), 19:14, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Если у вас есть проблема, и вы собираетесь решить ее с помощью Python - теперь у вас две проблемы.
     
  • 2.54, YetAnotherOnanym (ok), 23:47, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В Python не может не быть проблемы.
     

  • 1.7, Аноним (7), 19:04, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    На зло растохейтерам Rust шагает по планете. Трепещите, скоро Rust будет классикой программирования, и не знать его будет стыдно!
     
     
  • 2.19, xsignal (ok), 19:30, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Классикой не становятся, классикой рождаются, как C.
     
     
  • 3.34, Аноним (-), 21:05, 28/12/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.38, xsignal (ok), 21:09, 28/12/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.22, Аноним (22), 19:46, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    wrapper на расте для запуска огромного Си-монстра - ну такое себе достижение
     
  • 2.37, Аноним (37), 21:09, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Шагает в пропасть. Расту там и место.
     
  • 2.39, Аноним (39), 21:09, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    От раста там только гуй. Под капотом будет солянка из Go и C#.
     
     
  • 3.56, 12yoexpert (ok), 01:17, 29/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    как будто кто-то наблевал в проект
     
  • 2.44, Аноним (43), 21:22, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Классикой п..больства он точно станет. Или уже стал.
     
  • 2.58, Вы забыли заполнить поле Name (?), 03:09, 29/12/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Rust шагает по планете

    В порваных шароварах?

     

  • 1.12, Аноним (12), 19:26, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Перечисленные причины по которым они хотят его переписать выглядят как какая-то фигня
     
     
  • 2.51, Аноним (51), 23:34, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Но раст же лучше?
     
     
  • 3.53, Аноним (-), 23:37, 28/12/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.64, нах. (?), 06:32, 29/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    мля, да чо вам все не так-то?
    Это же ж прекрасная ниша для раста!

    Ненужную фигню _начинают_переписывать_ на ненужной фигне, с использованием ненужной фигни.

    Я вот каждый раз плачу от счастья от таких новостей.

     

  • 1.13, Аноним (13), 19:26, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    вот именно в контексте бутылок, я не понимаю зачем тут раст. питон вроде норм для таких тулов, нет?
     
     
  • 2.30, 12yoexpert (ok), 20:29, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    на питоне невозможно написать гуи для макоси, тебе же всё объяснили
     
     
  • 3.35, Аноним (37), 21:07, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    PyQt запретили или PySide? Или gi?
     
     
  • 4.50, 12yoexpert (ok), 23:19, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    да. статью не читал?
     

  • 1.16, xsignal (ok), 19:29, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > будет переписан
    > имеющееся монолитное приложение на Python не позволяет реализовать многие идеи

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

     
     
  • 2.21, Аноним (-), 19:37, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    На языке V.
     

  • 1.20, Афроним (?), 19:33, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Port Proton не имеет ограничений из-за GTK. Проблема у  Bottles явно не в GTK но разработчики зрят в будущее где Wayland,Rust,QT всех победил. Так что Port Proton ближайшие лет ацать* торт.
     
     
  • 2.41, pic (??), 21:15, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Они метят во что-то большее, типа Big Pictures.
    Поэтому слез с Bottles на PortProton.
     

  • 1.32, Аноним (32), 20:40, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну как бы без разницы, кто что на что будет переписывать, хоть на Visual Basic. Официальный язык Опеннета - Си. И только Си. Только на нём пишут эксперты. УРА!
     
     
  • 2.52, Аноним (51), 23:36, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Посмотри ЗП Си и Python. Так что Python реально рулит.
     

  • 1.33, laindono (ok), 20:44, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Для меня, как человека, изучавшего iced весьма глубоко, было сюрпризом, что его взяли для целой DE. Оно местами сыровато. По крайней мере было таковым, когда последний раз смотрел.
     
  • 1.36, Аноним (39), 21:08, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Опять? Его же уже переписывали, не?
     
     
  • 2.65, нах. (?), 06:34, 29/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    И чо?
     

  • 1.42, Аноним (42), 21:19, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не понял. Next mode - положить все в один префикс?

    Хрен там оно работать будет.

    Хорошо, хоть классический вариант оставят.

     
  • 1.45, Балмер (?), 21:45, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Тридцать три года всё переписивают да переписивают, да невыпереписяют.
     
  • 1.49, Аноним (49), 22:44, 28/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    для меня главная ценность bottles -- это их сборки wine caffe и wine soda, с вес... большой текст свёрнут, показать
     
     
  • 2.55, Аноним (39), 23:47, 28/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Даже у ванильного вайна совместимость лучше.
     

  • 1.57, Аноним (57), 02:04, 29/12/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.59, Аноним (59), 03:23, 29/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Делов-то, пусть переписывают хоть на Cobol, есть вменяемые альтернативы. Сабж можно использовать не для запуска, а в роли дополнительного источника инструкций для запуска windows-программ.
     
  • 1.60, Аноним (60), 04:45, 29/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну как бы с одного проблемного языка на другой проблемный.
    Самое веселое что весь функционал бутылок - это обертка вокруг вайна.
    У лутриса и playonlinux хотя бы скрипты для нубов есть.

    https://github.com/winegui/WineGUI

     
     
  • 2.68, Аноним (68), 07:16, 29/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    У языка нет проблем, это у вас возможно проблемы с восприятием языка, или мира в котором живете
     
     
  • 3.69, Илья (??), 07:55, 29/12/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Если у пейфона нет проблем, чего же с него всё переписывают?
     

  • 1.61, Аноним (61), 04:59, 29/12/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +2 +/
     
  • 1.62, Аноним (-), 06:10, 29/12/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +1 +/
     
  • 1.63, Аноним (63), 06:25, 29/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Зачем переписывать подобное приложение, которое представляет собой некритичный ко времени исполнения код, на Rust?
     
     
  • 2.66, нах. (?), 06:35, 29/12/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну мож слегкаа устали каждый раз с питона на питон?
    Давайте не будем им мешать, и просто за ними понаблюдаем!
     

  • 1.67, Аноним (68), 07:13, 29/12/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А чего это они за советом к  экспертам опеннета не обратились на чем им писать? Им бы сразу трушную сишечку посоветовали, и какой бородатый гуй использовать
     

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



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

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