اجرای برنامه‌های ویندوز در لینوکس همیشه کار ساده‌ای نیست. بعضی بازی‌ها با Wine یا لایه ترجمه Proton شرکت Valve بدون مشکل اجرا می‌شوند، اما برنامه‌های دیگری وجود دارند که ممکن است سازگاری مناسبی با این ابزارها نداشته باشند. این مشکل فقط به بازی‌ها محدود نیست و گاهی یک نرم‌افزار کاری یا کاربردی ساده نیز می‌تواند به تنظیمات پیچیده‌ای نیاز داشته باشد.

در چنین شرایطی، Bottles می‌تواند گزینه بسیار مناسبی باشد. Bottles در واقع یک مدیر گرافیکی Wine prefix است که ساخت و مدیریت محیط‌های جداگانه برای اجرای برنامه‌های ویندوز را ساده‌تر می‌کند. برخلاف استفاده مستقیم از Wine، کاربر می‌تواند تنظیمات، وابستگی‌ها، نسخه‌های مختلف Wine و فایل‌های هر محیط را از طریق یک رابط گرافیکی مدیریت کند. ArchWiki نیز Bottles را یک مدیر گرافیکی Wine prefix معرفی کرده و اشاره می‌کند که این ابزار امکان مدیریت Wine runnerها و وابستگی‌های ویندوز را فراهم می‌کند.

بنابراین عنوان «بدون Wine» نباید به معنای بی‌ارتباط بودن Bottles با Wine برداشت شود؛ Bottles در واقع لایه مدیریتی و گرافیکی روی Wine است که استفاده از آن را برای بسیاری از کاربران ساده‌تر می‌کند.

نصب Bottles در آرچ لینوکس

نسخه Flatpak انتخاب پیشنهادی توسعه‌دهندگان است

یکی از مهم‌ترین نکات هنگام نصب Bottles در آرچ لینوکس، انتخاب روش نصب مناسب است. Bottles از طریق AUR نیز در دسترس است، اما توسعه‌دهندگان این پروژه نسخه Flatpak را به عنوان روش رسمی و پیشنهادی معرفی می‌کنند. نسخه Flatpak تنها نسخه‌ای است که Bottles آن را کاملاً sandbox شده معرفی می‌کند و وابستگی‌های موردنیاز را نیز همراه خود دارد.

ArchWiki نیز همین توصیه را دارد و دلیل اصلی استفاده از Flatpak را sandbox کردن Bottles عنوان می‌کند. در عین حال، بسته‌های bottles و bottles-git همچنان در AUR وجود دارند؛ بنابراین نمی‌توان گفت نسخه AUR اصلاً قابل استفاده نیست، بلکه Flatpak گزینه‌ای است که پشتیبانی و تست رسمی بیشتری دارد.

برای نصب نسخه Flatpak در آرچ لینوکس، ابتدا باید Flatpak و مخزن Flathub روی سیستم آماده باشند. سپس می‌توان Bottles را با شناسه رسمی آن نصب کرد:

flatpak install com.usebottles.bottles

شناسه رسمی برنامه com.usebottles.bottles است و مستندات فعلی Bottles نیز همین روش را به عنوان مسیر پیشنهادی نصب معرفی می‌کنند.

پس از نصب، اولین اجرای Bottles ممکن است به دانلود و آماده‌سازی اجزای موردنیاز نیاز داشته باشد. مدت زمان این مرحله به سرعت اتصال اینترنت و وضعیت سرورهای مربوط به دریافت فایل‌ها بستگی دارد؛ بنابراین اگر فرایند اولیه کمی طول کشید، بهتر است آن را متوقف نکنید.

Bottles چیست؟ اجرای برنامه‌های ویندوز در لینوکس با Bottles و Wine

چرا Bottles می‌تواند از Lutris کاربردی‌تر باشد؟

رابط گرافیکی مدرن‌تر و تمرکز بیشتر روی مدیریت محیط‌ها

Lutris یکی از شناخته‌شده‌ترین ابزارهای مدیریت Wine و اجرای بازی‌ها در لینوکس است، اما Bottles با هدف متفاوتی طراحی شده است. Bottles علاوه بر بازی‌ها، برای اجرای نرم افزارهای ویندوزی معمولی و برنامه‌های بهره‌وری نیز بسیار مناسب است.

نقطه قوت اصلی Bottles، ایجاد محیط‌های جداگانه‌ای است که هرکدام تنظیمات خاص خودشان را دارند. این ساختار باعث می‌شود تنظیمات یک برنامه الزاماً روی برنامه دیگری تأثیر نگذارد. خود پروژه نیز امکان انتخاب محیط‌ها و runnerهای مختلف و تغییر تنظیمات آنها را در اختیار کاربر قرار می‌دهد.

Bottles چیست؟ اجرای برنامه‌های ویندوز در لینوکس با Bottles و Wine

در نتیجه، برای سیستمی که قرار است هم‌زمان چند نرم افزار ویندوزی متفاوت روی آن اجرا شود، می‌توان محیط‌های جداگانه‌ای برای هر گروه از برنامه‌ها ساخت. این رویکرد مدیریت وابستگی‌ها و تنظیمات را ساده‌تر می‌کند و احتمال ایجاد تداخل بین برنامه‌ها را کاهش می‌دهد.

البته مقایسه Bottles و Lutris به نوع استفاده نیز بستگی دارد. Lutris همچنان برای مدیریت بازی‌ها و کتابخانه‌های مختلف گزینه قدرتمندی است، در حالی که Bottles برای کسانی که بیشتر با برنامه‌های ویندوزی معمولی، ابزارهای کاری و محیط‌های ایزوله سروکار دارند، جذابیت بیشتری دارد.

محیط‌های جداگانه Bottles چه مزیتی دارند؟

هر برنامه می‌تواند تنظیمات و وابستگی‌های مخصوص خودش را داشته باشد

یکی از مهم‌ترین مشکلات استفاده مستقیم از Wine، مدیریت prefixها و تنظیمات آنهاست. Wine برای اجرای برنامه‌های ویندوزی به یک محیط شبیه‌سازی‌شده نیاز دارد که فایل‌ها، تنظیمات رجیستری، DLLها و سایر اجزای مربوط به برنامه در آن قرار می‌گیرند.

Bottles این مفهوم را در قالب محیط‌هایی با نام Bottle در اختیار کاربر قرار می‌دهد. هر Bottle می‌تواند تنظیمات، وابستگی‌ها و runner مخصوص خودش را داشته باشد. در مستندات رسمی Bottles نیز تأکید شده است که محیط‌ها را می‌توان پس از ایجاد تغییر داد و مواردی مانند وابستگی‌ها و تنظیمات مرتبط با runner را مدیریت کرد.

Bottles چیست؟ اجرای برنامه‌های ویندوز در لینوکس با Bottles و Wine

این جداسازی زمانی اهمیت بیشتری پیدا می‌کند که چند برنامه ویندوزی مختلف روی لینوکس اجرا شوند. به عنوان مثال، یک Bottle می‌تواند برای نرم افزارهای کاری، دیگری برای بازی‌ها و Bottle دیگری برای آزمایش برنامه‌های ناشناخته مورد استفاده قرار گیرد.

Bottles همچنین امکان نصب وابستگی‌ها، تغییر تنظیمات محیط و استفاده از runnerهای مختلف را فراهم می‌کند. در نتیجه، اگر یک برنامه با یک نسخه خاص از Wine بهتر کار کند، لازم نیست همان تنظیمات برای تمام برنامه‌های دیگر اعمال شود.

این ساختار به‌خصوص برای کاربرانی مفید است که به جای اجرای یک یا دو برنامه ساده، مجموعه‌ای از نرم افزارهای ویندوزی را در لینوکس مدیریت می‌کنند.

 

 

 

 

Bottles فقط برای بازی نیست

اجرای بازی یکی از قابلیت‌هاست، نه تمام کاربرد برنامه

ممکن است به دلیل شباهت Bottles با ابزارهایی مانند Lutris تصور شود که این برنامه صرفاً یک لانچر بازی است، اما چنین برداشتی کامل نیست. Bottles می‌تواند بازی‌های ویندوزی را اجرا کند، اما ساختار آن برای مدیریت انواع برنامه‌های ویندوز نیز طراحی شده است.

پروژه Bottles امکان استفاده از Installerهای آماده را نیز فراهم می‌کند. این Installerها مجموعه‌ای از قوانین برای نصب خودکار برنامه هستند و می‌توانند محیط Bottle را پیکربندی کرده، وابستگی‌های موردنیاز را نصب کنند و برنامه را با تنظیمات مناسب آماده اجرا کنند. مستندات رسمی Bottles همچنین برای Installerها درجات سازگاری Bronze و Silver و Gold و Platinum را تعریف می‌کند.

Bottles چیست؟ اجرای برنامه‌های ویندوز در لینوکس با Bottles و Wine

این ویژگی می‌تواند برای برنامه‌هایی که نصب آنها با Wine به تنظیمات دستی زیادی نیاز دارد، مفید باشد. در عین حال، سازگاری هر برنامه تضمین‌شده نیست و امتیاز Installer نیز نشان‌دهنده نتیجه آزمایش‌های سازگاری است، نه تضمین اجرای بدون مشکل در تمام سخت‌افزارها و توزیع‌های لینوکس.

آیا Bottles واقعاً جایگزین Wine و Lutris می‌شود؟

برای بعضی کاربران بله، اما انتخاب بهتر به نوع استفاده بستگی دارد

Bottles را بهتر است جایگزین کامل Wine در نظر نگیریم؛ زیرا خود Bottles بر پایه Wine ساخته شده است. مزیت اصلی آن ارائه یک رابط کاربری و سیستم مدیریتی ساده‌تر برای چیزی است که در حالت عادی می‌تواند به تنظیمات دستی زیادی نیاز داشته باشد.

برای اجرای چند برنامه ویندوزی، جدا کردن محیط‌ها، مدیریت وابستگی‌ها و آزمایش runnerهای مختلف، Bottles می‌تواند تجربه بسیار ساده‌تری ارائه کند. نسخه Flatpak نیز مزیت sandboxing را به همراه دارد و در حال حاضر روش نصب رسمی و پیشنهادی پروژه محسوب می‌شود.

Bottles چیست؟ اجرای برنامه‌های ویندوز در لینوکس با Bottles و Wine

در مقابل، کاربرانی که کنترل کاملاً دستی روی Wine prefixها می‌خواهند یا به ابزارهای تخصصی‌تر برای مدیریت بازی‌ها نیاز دارند، ممکن است همچنان Wine یا Lutris را ترجیح دهند.

در نهایت، Bottles بیشتر از اینکه یک فناوری کاملاً جدا از Wine باشد، راهی ساده‌تر برای مدیریت Wine و برنامه‌های ویندوزی در لینوکس است. ترکیب محیط‌های ایزوله، runnerهای قابل انتخاب، مدیریت وابستگی‌ها، Installerهای آماده و رابط گرافیکی باعث شده این ابزار برای اجرای برنامه‌های ویندوزی، مخصوصاً نرم افزارهای غیرگیمینگ، به گزینه‌ای جدی تبدیل شود.

 

 

چند نکته مهم پیش از استفاده

  • Flatpak روش پیشنهادی Bottles است و نسخه‌ای است که پروژه بیشترین پشتیبانی و تست را برای آن ارائه می‌کند.
  • Bottleهای جداگانه برای برنامه‌های مختلف می‌توانند از تداخل تنظیمات و وابستگی‌ها جلوگیری کنند.
  • Bottles فقط برای بازی نیست و می‌تواند برای نرم افزارهای کاری و کاربردی ویندوز نیز استفاده شود.
  • سازگاری هر برنامه با Wine متفاوت است و Bottles نمی‌تواند اجرای همه نرم افزارهای ویندوز را تضمین کند.
  • Installerهای آماده Bottles می‌توانند نصب و پیکربندی بعضی برنامه‌ها را ساده‌تر کنند.
  • اگر هدف اجرای برنامه‌های ویندوز در لینوکس است، بهتر است ابتدا سازگاری همان برنامه مشخص بررسی شود و سپس Bottle مناسب برای آن ساخته شود.