ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

AppBundler.jl - Bundle your Julia GUI Application | Erdmanis | JuliaCon 2024

Автор: The Julia Programming Language

Загружено: 2024-09-13

Просмотров: 1270

Описание: AppBundler.jl - Bundle your Julia GUI Application by Janis Erdmanis

PreTalx: https://pretalx.com/juliacon2024/talk...
AppBundler Presentation Slides: https://pretalx.com/media/juliacon202...
AppBundler Demo Repo: https://github.com/JanisErdmanis/Juli...
GitHub: https://github.com/PeaceFounder/AppBu...

Julia's ecosystem has a comprehensive range of GUI framework bindings, remarkably compatible across all major desktop platforms. Deploying Julia applications is straightforward for those with technical know-how, particularly in terms of instantiating the project's manifest file. However, the average user typically anticipates a more streamlined installation process. This includes a double-click installer, with easy access from the system menu, complete with an icon. They also expect a clean uninstallation process that doesn't leave residual files and returns the system to its prior state.

In the current digital landscape, major desktop platforms have adopted the concept of self-contained applications running in confined environments. For instance, Windows utilizes the MSIX package format, Linux employs flatpacks and snaps, while MacOS favors app bundles. Each format has unique organizational requirements for application directories, configuration files, and inherent functionalities. This poses a challenge to beginners aiming to package their Julia GUI applications.

The introduction of AppBundler marks a significant advancement in simplifying desktop application bundling for Julia. It relies on `main.jl` as the entry point and the project's `Manifest.toml` file to encapsulate all the necessary dependencies, including Julia itself. AppBundler uses a scratch space for caching artifacts, which streamlines the bundling process. It makes it quick, predictable, and convenient for rapid iteration. While it offers cross-platform bundling support for MacOS and Linux, AppBundler necessitates additional postprocessing for Windows and MacOS bundles. However, this is simplified through bundled helper scripts, accompanied by comprehensive documentation to assist developers. Additionally, AppBundler facilitates platform-specific customisation via a recipe system.

During the hands-on portion of the talk, we will explore application packaging strategies for Linux, MacOS, and Windows. For Linux, I will demonstrate creating a snap package, showcasing installation, user data storage, and debugging techniques. In MacOS, the focus will be on post-installation procedures, including precompilation, launcher creation, code signing, and `.dmg` file packaging, supplemented by a demonstration video. For Windows, we'll delve into the intricacies of packaging, such as precompilation, the `makemsix` command, and debugging, also accompanied by a video demonstration.

The talk will also cover customization options, starting with `Project.toml` variables under the `[bundle]` section. Here, application display names, summaries, and descriptions are defined for user visibility upon installation. We'll then discuss individual bundle configurations using the `meta` directory as the primary source for overriding the bundle recipe. A practical example will feature a GTK application bundled with strict confinement, detailing the specification of plugs in the `snap.yaml` file. We'll include the inclusion of a custom icon, and the redirection of standard output using `init.jl`, along with a custom `precompile.jl` file. Furthermore, we will explore the AppBundler.jl recipe system, demonstrating its utility in creating bundling recipes for uncovered platforms and packaging formats.

Finally, the talk will conclude with a discussion on the future directions of `AppBundler.jl`. The session will briefly address the current state of application confinement issues, which are crucial for being able to distribute applications in marketplaces, which I have stumbled upon. Finally, I will propose potential hackathon projects, such as developing a GitHub action script and integrating `PackageCompiler.jl` into the bundling pipeline.

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
AppBundler.jl - Bundle your Julia GUI Application | Erdmanis | JuliaCon 2024

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

Modeling and simulation of sampled-data systems | Bagge Carlson | JuliaCon 2024

Modeling and simulation of sampled-data systems | Bagge Carlson | JuliaCon 2024

New Ways to Compile Julia | Bezanson, Baraldi | JuliaCon 2024

New Ways to Compile Julia | Bezanson, Baraldi | JuliaCon 2024

Почему работает теория шести рукопожатий? [Veritasium]

Почему работает теория шести рукопожатий? [Veritasium]

AcceleratedKernels.jl: Cross-Architecture Parallel Algorithms | Nicusan | JuliaCon Global 2025

AcceleratedKernels.jl: Cross-Architecture Parallel Algorithms | Nicusan | JuliaCon Global 2025

Bypassing CSP for a Bounty, from Informative to High

Bypassing CSP for a Bounty, from Informative to High

Tailwind — потрясающая программа. Но я всё-таки перейду на другую.

Tailwind — потрясающая программа. Но я всё-таки перейду на другую.

JuliaSimBatteries.jl: Robust PDE Models of Lithium-ion Batteries | Micluța-Câmpeanu

JuliaSimBatteries.jl: Robust PDE Models of Lithium-ion Batteries | Micluța-Câmpeanu

Обзор Xiaomi 17 Ultra by Leica — УЛЬТРА ХОРОШО?

Обзор Xiaomi 17 Ultra by Leica — УЛЬТРА ХОРОШО?

China’s Next AI Shock Is Hardware

China’s Next AI Shock Is Hardware

Julia в академической среде: учебники, курсы Стэнфорда и будущее | Мосс | JuliaCon Global 2025

Julia в академической среде: учебники, курсы Стэнфорда и будущее | Мосс | JuliaCon Global 2025

EvoTrees.jl: Эффективные бустированные деревья на процессорах и графических процессорах в Julia |...

EvoTrees.jl: Эффективные бустированные деревья на процессорах и графических процессорах в Julia |...

Optimizing Gaussian Basis Sets with Automatic Differentiation | Madureira | JuliaCon Global 2025

Optimizing Gaussian Basis Sets with Automatic Differentiation | Madureira | JuliaCon Global 2025

I Bought 12 Broken Ryzen CPUs for $10 Each - Can I Profit?

I Bought 12 Broken Ryzen CPUs for $10 Each - Can I Profit?

Автоматизация тестирования и генерации документации для Dyad | Tiller | JuliaCon Global 2025

Автоматизация тестирования и генерации документации для Dyad | Tiller | JuliaCon Global 2025

Ziemkiewicz o Hołowni: zrobili z niego psychopatę, bo podskoczył Tuskowi!

Ziemkiewicz o Hołowni: zrobili z niego psychopatę, bo podskoczył Tuskowi!

FerriteCon 2025 Ким Луиза Автор: Введение в Ferrite.jl

FerriteCon 2025 Ким Луиза Автор: Введение в Ferrite.jl

Clawdbot (Moltbook) после анализа сотен сообщений: ФЕЙК

Clawdbot (Moltbook) после анализа сотен сообщений: ФЕЙК

Intro to the Julia Programming Language

Intro to the Julia Programming Language

When Water Cooling Goes WRONG. 7900 XTX Fan Header Destroyed

When Water Cooling Goes WRONG. 7900 XTX Fan Header Destroyed

AI Spending Delivers Mixed Results to Stocks | Bloomberg Tech 1/29/2026

AI Spending Delivers Mixed Results to Stocks | Bloomberg Tech 1/29/2026

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]