FLATPAK(1) flatpak FLATPAK(1)

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

flatpak [OPTION...] {COMMAND}

ابزار Flatpak ابزاری برای مدیریت برنامه‌های کاربردی و محیط‌های زمان اجرای (runtimes) مورد استفادهٔ آن‌ها است. در مدل Flatpak، برنامه‌ها می‌توانند مستقل از سیستم میزبانی که روی آن به کار می‌روند ساخته و توزیع شوند، و در زمان اجرا تا حدی از سیستم میزبان ایزوله («سندباکس») هستند.

ابزار Flatpak می‌تواند در حالت سراسری سیستم (system-wide) یا به ازای هر کاربر (per-user) کار کند. داده‌های سراسری سیستم (محیط‌های زمان اجرا، برنامه‌ها و پیکربندی) در مسیر $prefix/var/lib/flatpak/ و داده‌های به ازای هر کاربر در مسیر $HOME/.local/share/flatpak/ قرار دارند. زیر این مسیرها، یک مخزن محلی در زیرپوشهٔ repo/ وجود دارد و محیط‌های زمان اجرا و برنامه‌های نصب‌شده در زیرپوشه‌های متناظر runtime/ و app/ قرار می‌گیرند.

ریموت‌های سراسری سیستم را می‌توان با قرار دادن فایل‌های flatpakrepo(5) در مسیرهای /usr/share/flatpak/remotes.d/ و /etc/flatpak/remotes.d/ به صورت ایستا از پیش پیکربندی کرد. در صورتی که فایلی با نام یکسان در هر دو مسیر موجود باشد، فایل موجود در /etc اولویت خواهد داشت.

علاوه بر نصب سراسری سیستم در مسیر $prefix/var/lib/flatpak/، که همواره نصب پیش‌فرض در نظر گرفته می‌شود مگر اینکه بازنویسی شود، می‌توان مکان‌های نصب سراسری بیشتری را از طریق فایل‌های پیکربندی در /etc/flatpak/installations.d/ تعریف کرد، که باید دست‌کم شناسهٔ مکان نصب و مسیر مطلق آن را مشخص کنند. سایر پارامترهای اختیاری مانند DisplayName، Priority یا StorageType نیز پشتیبانی می‌شوند.

ابزار Flatpak از OSTree برای توزیع و استقرار داده‌ها استفاده می‌کند. مخازنی که استفاده می‌کند مخازن OSTree هستند و می‌توان با ابزار ostree آن‌ها را دستکاری و مدیریت کرد. محیط‌های زمان اجرا و برنامه‌های نصب‌شده در واقع چک‌اوت‌های (checkouts) OSTree هستند.

دستورهای پایه‌ای برای ساخت فلت‌پک‌ها مانند build-init، build و build-finish در ابزار flatpak گنجانده شده‌اند. برای پشتیبانی ساخت در سطح بالاتر، ابزار مجزای flatpak-builder(1) را ببینید.

ابزار Flatpak از نصب از طریق مخازن بارگذاری جانبی (sideload repos) پشتیبانی می‌کند. این‌ها رونوشت‌های جزئی از یک مخزن هستند (تولیدشده توسط flatpak create-usb) که در حالت آفلاین (و آنلاین برای بهبود کارایی) به عنوان منبع نصب استفاده می‌شوند. این مخازن با ایجاد پیوندهای نمادین (symlinks) به منابع بارگذاری جانبی در زیرپوشهٔ sideload-repos در دایرکتوری نصب (به‌طور معمول /var/lib/flatpak/sideload-repos یا ~/.local/share/flatpak/sideload-repos) پیکربندی می‌شوند. علاوه بر این، پیوندهای نمادین را می‌توان در /run/flatpak/sideload-repos ایجاد کرد که مکان بهتری برای منابع غیردائمی است (زیرا با راه‌اندازی مجدد سیستم پاک می‌شود). این پیوندهای نمادین می‌توانند به دایرکتوری داده‌شده به flatpak create-usb که به‌طور پیش‌فرض در زیرمسیر .ostree/repo می‌نویسد، یا مستقیماً به یک مخزن ostree اشاره کنند.

گزینه‌های عمومی زیر شناخته می‌شوند. دستورهای تکی گزینه‌های مخصوص به خود را دارند.

-h, --help

نمایش گزینه‌های راهنما و خروج.

-v, --verbose

نمایش اطلاعات اشکال‌زدایی هنگام پردازش دستور. برای جزئیات بیشتر از -vv استفاده کنید.

--ostree-verbose

نمایش اطلاعات اشکال‌زدایی OSTree هنگام پردازش دستور.

--version

چاپ اطلاعات نسخه و خروج.

--default-arch

چاپ معماری پیش‌فرض و خروج.

--supported-arches

چاپ معماری‌های پشتیبانی‌شده به ترتیب اولویت و خروج.

--gl-drivers

چاپ فهرست درایورهای فعال gl و خروج.

--installations

چاپ مسیرهای مکان‌های نصب سیستم و خروج.

--print-system-only

هنگامی که دستور flatpak --print-updated-env اجرا می‌شود، تنها متغیرهای محیطی مربوط به مکان‌های نصب فلت‌پک سیستم چاپ شود و نصب خانگی کاربر در نظر گرفته نشود.

--print-updated-env

مجموعه متغیرهای محیطی مورد نیاز برای استفاده از فلت‌پک‌ها را با اصلاح مجموعهٔ فعلی متغیرهای محیطی چاپ می‌کند. این گزینه برای استفاده در تولیدکننده محیط (environment generator) سیستم systemd در نظر گرفته شده و نیازی به اجرای دستی آن نیست.

دستورهای مربوط به مدیریت برنامه‌ها و محیط‌های زمان اجرای نصب‌شده:

flatpak-install(1)

نصب یک برنامه یا محیط زمان اجرا از یک ریموت یا بسته (bundle).

flatpak-update(1)

به‌روزرسانی یک برنامه یا محیط زمان اجرای نصب‌شده.

flatpak-uninstall(1)

حذف نصب یک برنامه یا محیط زمان اجرای نصب‌شده.

flatpak-mask(1)

پوشاندن (mask) و جلوگیری از به‌روزرسانی‌ها و نصب خودکار.

flatpak-pin(1)

سنجاق کردن (pin) محیط‌های زمان اجرا برای جلوگیری از حذف خودکار.

flatpak-list(1)

فهرست کردن برنامه‌ها یا محیط‌های زمان اجرای نصب‌شده.

flatpak-info(1)

نمایش اطلاعات یک برنامه یا محیط زمان اجرای نصب‌شده.

flatpak-history(1)

نمایش تاریخچه.

flatpak-config(1)

مدیریت پیکربندی flatpak.

flatpak-repair(1)

تعمیر مکان نصب flatpak.

flatpak-create-usb(1)

رونوشت برنامه‌ها یا محیط‌های زمان اجرا روی حافظه‌های جداشدنی (removable media).

دستورهای مربوط به یافتن برنامه‌ها و محیط‌های زمان اجرا:

flatpak-search(1)

جستجو برای برنامه‌ها و محیط‌های زمان اجرا.

دستورهای مربوط به مدیریت برنامه‌های در حال اجرا:

flatpak-run(1)

اجرای یک برنامه.

flatpak-kill(1)

متوقف کردن یک برنامهٔ در حال اجرا.

flatpak-override(1)

بازنویسی دسترسی‌های یک برنامه.

flatpak-make-current(1)

مشخص کردن نسخهٔ پیش‌فرض برای اجرا.

flatpak-enter(1)

ورود به فضای نام (namespace) یک برنامهٔ در حال اجرا.

دستورهای مربوط به مدیریت دسترسی به فایل‌ها:

flatpak-document-export(1)

اعطای دسترسی به یک فایل خاص به یک برنامه.

flatpak-document-unexport(1)

لغو دسترسی به یک فایل خاص.

flatpak-document-info(1)

نمایش اطلاعات دربارهٔ یک فایل خاص.

flatpak-documents(1)

فهرست کردن فایل‌های صادرشده (به‌اشتراک‌گذاشته‌شده).

دستورهای مربوط به مدیریت مخزن پویا دسترسی‌ها (dynamic permission store):

flatpak-permission-remove(1)

حذف مورد از مخزن دسترسی‌ها.

flatpak-permissions(1)

فهرست کردن دسترسی‌ها.

flatpak-permission-show(1)

نمایش دسترسی‌های برنامه.

flatpak-permission-reset(1)

بازنشانی دسترسی‌های برنامه.

flatpak-permission-set(1)

تنظیم دسترسی‌های برنامه.

دستورهای مربوط به مدیریت مخازن ریموت:

flatpak-remotes(1)

فهرست کردن تمام مخازن ریموت پیکربندی‌شده.

flatpak-remote-add(1)

افزودن یک مخزن ریموت جدید.

flatpak-remote-modify(1)

تغییر ویژگی‌های یک مخزن ریموت پیکربندی‌شده.

flatpak-remote-delete(1)

حذف یک مخزن ریموت پیکربندی‌شده.

flatpak-remote-ls(1)

فهرست کردن محتویات یک مخزن ریموت پیکربندی‌شده.

flatpak-remote-info(1)

نمایش اطلاعات دربارهٔ یک مرجع (ref) در یک مخزن ریموت پیکربندی‌شده.

دستورهای مربوط به ساخت برنامه‌ها:

flatpak-build-init(1)

راه‌اندازی اولیه یک دایرکتوری ساخت.

flatpak-build(1)

اجرای دستور ساخت در یک دایرکتوری ساخت.

flatpak-build-finish(1)

نهایی‌سازی یک دایرکتوری ساخت برای صدور (export).

flatpak-build-export(1)

صدور یک دایرکتوری ساخت به یک مخزن.

flatpak-build-bundle(1)

ایجاد یک فایل بسته (bundle) از یک مرجع در یک مخزن محلی.

flatpak-build-import-bundle(1)

وارد کردن یک فایل بسته به یک مخزن محلی.

flatpak-build-sign(1)

امضای یک برنامه یا محیط زمان اجرا پس از صدور آن.

flatpak-build-update-repo(1)

به‌روزرسانی فایل خلاصه (summary) در یک مخزن.

flatpak-build-commit-from(1)

ایجاد یک کامیت جدید بر اساس یک مرجع (ref) موجود.

flatpak-repo(1)

چاپ اطلاعات دربارهٔ یک مخزن.

دستورهای موجود درون سندباکس:

flatpak-spawn(1)

اجرای یک دستور در یک سندباکس دیگر.

قالب‌های فایلی که توسط دستورهای Flatpak استفاده می‌شوند:

flatpakref(5)

ارجاع به یک ریموت برای یک برنامه یا محیط زمان اجرا

flatpakrepo(5)

ارجاع به یک ریموت

flatpak-remote(5)

پیکربندی برای یک ریموت

flatpak-installation(5)

پیکربندی برای یک مکان نصب

flatpak-metadata(5)

اطلاعات دربارهٔ یک برنامه یا محیط زمان اجرا

علاوه بر متغیرهای محیطی استاندارد مانند XDG_DATA_DIRS و XDG_DATA_HOME، ابزار flatpak متغیرهای اختصاصی خود را نیز بررسی می‌کند.

FLATPAK_BINARY

مسیر فایل اجرایی flatpak که هنگام نصب یک برنامه در فایل‌های .desktop و اسکریپت‌های صادرشده نوشته می‌شود. مقدار پیش‌فرض /usr/bin/flatpak است، مگر اینکه هنگام ساخت با --bindir بازنویسی شده باشد.

FLATPAK_BWRAP

مسیر فایل اجرایی bwrap(1) که برای ساخت سندباکس استفاده خواهد شد. بسته به نحوهٔ پیکربندی Flatpak در زمان ساخت، مقدار پیش‌فرض یا جستجو در PATH است یا استفاده از یک نسخهٔ داخلی (vendored) که معمولاً به صورت /usr/libexec/flatpak-bwrap نصب می‌شود.

FLATPAK_CONFIG_DIR

مکان پیکربندی سایت flatpak. در صورت عدم تنظیم، از /etc/flatpak استفاده می‌شود (مگر اینکه در زمان ساخت توسط --sysconfdir بازنویسی شده باشد).

FLATPAK_DATA_DIR

مکان پیش‌فرض‌های سطح سیستم‌عامل و قلاب‌های یکپارچه‌سازی Flatpak. در صورت عدم تنظیم، از /usr/share/flatpak استفاده می‌شود، مگر اینکه در زمان ساخت توسط --datadir بازنویسی شده باشد.

FLATPAK_DBUSPROXY

مسیر فایل اجرایی xdg-dbus-proxy(1) که برای فیلتر کردن ترافیک D-Bus بین سندباکس و سیستم میزبان استفاده خواهد شد. بسته به چگونگی پیکربندی Flatpak در زمان ساخت، حالت پیش‌فرض یا جستجو در PATH است یا استفاده از یک نسخهٔ داخلی (vendored) که معمولاً به صورت /usr/libexec/flatpak-dbus-proxy نصب می‌شود.

FLATPAK_DOWNLOAD_TMPDIR

مسیر دایرکتوری‌ای که هنگام دریافت لایه‌های OCI و احتمالاً سایر بارگیری‌ها در آینده به طور موقت استفاده می‌شود. متغیر استاندارد TMPDIR برای این کار استفاده نمی‌شود، زیرا برنامه‌های Flatpak اغلب برای قرارگیری در یک tmpfs بسیار بزرگ هستند.

FLATPAK_FANCY_OUTPUT

می‌تواند روی 0 تنظیم شود تا از قالب‌بندی تزئینی خروجی ترمینال جلوگیری شود. این ویژگی همچنین زمانی که خروجی استاندارد یک ترمینال نباشد یا G_MESSAGES_DEBUG تنظیم شده باشد، به صورت خودکار غیرفعال می‌شود.

FLATPAK_FORCE_TEXT_AUTH

می‌تواند روی 1 تنظیم شود تا در صورت نیاز به احراز هویت برای تغییر در مکان نصب سراسری سیستم، استفاده از یک عامل متنی ساده و توکار polkit(8) اجباری شود. به‌طور پیش‌فرض، در صورت وجود، از عامل polkit محیط رومیزی استفاده می‌شود که معمولاً به یک اعلان گرافیکی منجر می‌شود.

FLATPAK_GL_DRIVERS

فهرستی جداشده با دونقطه از افزونه‌های درایور گرافیک برای تلاش جهت استفاده در OpenGL، Vulkan و واسط‌های برنامه‌نویسی مشابه، با اولویت از بالاترین به پایین‌ترین. مقدار پیش‌فرض، انتخاب خودکار درایور گرافیک است. مقادیر این فهرست با آخرین جزء جداشده با نقطه در نام افزونه‌های دارای شرط active-gl-driver مطابقت دارند. مقادیر متداول عبارتند از default، mesa-git یا nvidia-550-120 (جایگزین کردن شماره نسخه با نسخهٔ اصلی و فرعی ماژول هستهٔ nvidia).

FLATPAK_RUN_DIR

مکان فایل‌های سراسری زمان اجرای flatpak. در صورت عدم تنظیم، از /run/flatpak استفاده می‌شود.

FLATPAK_SYSTEM_CACHE_DIR

مکانی که در طول دریافت (pull) در مکان نصب سراسری سیستم، مخازن موقت فرزند در آن ایجاد می‌شوند. در صورت عدم تنظیم، دایرکتوری‌ای در /var/tmp/ استفاده می‌شود. این ویژگی از آنجا سودمند است که احتمال بیشتری دارد روی همان سیستم‌فایل مخزن سیستم باشد (بنابراین احتمال مواردی مانند کپی‌برداری به روش reflink را افزایش می‌دهد) و می‌توان از پر شدن دایرکتوری خانگی کاربر با داده‌های موقت جلوگیری کرد.

FLATPAK_SYSTEM_DIR

مکان نصب پیش‌فرض سراسری سیستم. در صورت عدم تنظیم، از /var/lib/flatpak استفاده می‌شود (مگر اینکه در زمان ساخت توسط --localstatedir یا -Dsystem_install_dir بازنویسی شده باشد).

FLATPAK_TTY_PROGRESS

می‌تواند روی 0 تنظیم شود تا گزارش پیشرفت قابل‌خواندن توسط ماشین در ترمینال غیرفعال گردد. این ویژگی را می‌توان غیرفعال کرد زیرا از توالی OSC 9;4 استفاده می‌کند که برخی از شبیه‌سازهای ترمینال آن را به عنوان یک اعلان جهنده (popup) تفسیر می‌کنند.

FLATPAK_USER_DIR

مکان نصب به ازای هر کاربر. در صورت عدم تنظیم، از $XDG_DATA_HOME/flatpak استفاده می‌شود.

ostree(1), ostree.repo(5), flatpak-remote(5), flatpak-installation(5), https://www.flatpak.org

flatpak