درک لین، دانشجوی سال دوم ریاضیات دانشگاه واترلو، پس از مشارکت در برنامه Google Summer of Code 2025، پروژه Karton را به عنوان یک مدیر ماشین مجازی بومی برای محیط KDE تکمیل کرده است. این پروژه که تحت نظارت Harald Sitter، Tobias Fella و Nicolas Fella انجام شد، هدف ارائه جایگزینی مبتنی بر Qt برای مدیران ماشین مجازی مبتنی بر GTK و تسهیل تجربه کاربری است.
لین که کار خود را در فوریه ۲۰۲۵ آغاز کرده بود، یک بازنویسی کامل از نرمافزار انجام داد و از کتابخانههای libvirt، Qt و API libosinfo GLib استفاده کرد. یکی از دستاوردهای کلیدی وی توسعه یک تولیدکننده XML دامنه libvirt سفارشی بود که وابستگی به ابزار virt-install را برطرف کرد.
در بخش رابط کاربری، لین سیستم نمایشگر SPICE سفارشی طراحی کرد که با کتابخانه spice-client-glib کار میکند و امکان نمایش و تعامل مستقیم با ماشینهای مجازی را فراهم میآورد. این سیستم شامل پردازش تصاویر از طریق QImage، هدایت ورودی موس و صفحهکلید، و پخش صدا از طریق QAudioSink است.
پروژه دارای قابلیتهایی چون نصب خودکار ماشین مجازی با تشخیص فایل ISO، مدیریت حالتهای مختلف VM، و رابط کاربری نوسازی شده با نوار کناری و پیشنمایش تصویری است. لین همچنین قابلیت جداسازی رسانه نصب را پیادهسازی کرد تا کاربران پس از نصب سیستم عامل بتوانند از هارد دیسک مجازی بوت کنند.
با وجود پیشرفتهای قابل توجه، توسعهدهنده اعلام کرد که Karton هنوز برای انتشار رسمی آماده نیست و نیاز به بهبودهای بیشتری دارد. او برنامهریزی کرده در آینده بهینهسازی buffer نمایش، بهبود مقیاسبندی و رندر متن، انتقال فایل و clipboard، و ابزار مرور و نصب ISO را اضافه کند.
لین که در حال حاضر در تعطیلات است و قرار است در سپتامبر در رویداد Akademy در برلین شرکت کند، اعلام کرد پس از شروع دوره کارآموزی چهار ماهه خود در پاییز، زمان بیشتری برای ادامه توسعه این پروژه خواهد داشت. برنامههایی نیز برای بستهبندی Karton به عنوان Flatpak و اضافه کردن آن به برنامههای KDE در ماههای آینده در دست بررسی است.
پیوند مطلب در بلاگ کیدیای:
https://blogs.kde.org/2025/08/28/gsoc-2025-final-project-blog-developing-karton-the-kde-virtual-machine-manager@kde_fa