FLATPAK RUN(1) flatpak run FLATPAK RUN(1)

flatpak-run - اجرای یک برنامه یا باز کردن شل در یک محیط زمان اجرا (runtime)

flatpak run [OPTION...] REF [ARG...]

اگر REF نام یک برنامهٔ نصب‌شده باشد، فلت‌پک برنامه را در یک محیط ایزوله‌شده (سندباکس) اجرا می‌کند. آرگومان‌های اضافی به برنامه منتقل می‌شوند. شاخه و معماری جاری برنامه استفاده خواهد شد مگر اینکه با گزینه‌های --branch یا --arch به صورت دیگری مشخص شده باشد. نگاه کنید به flatpak-make-current(1).

اگر REF نام یک محیط زمان اجرا (runtime) باشد، یک شل در آن باز می‌شود. این کار برای توسعه و آزمایش مفید است. در صورت وجود ابهام در انتخاب شاخه، از شما خواسته می‌شود یکی را انتخاب کنید. برای جلوگیری از این حالت از گزینهٔ --branch استفاده کنید. معماری اصلی استفاده می‌شود مگر اینکه با --arch به‌طور دیگری مشخص شده باشد.

به‌طور پیش‌فرض، فلت‌پک ابتدا برنامه یا محیط زمان اجرا را در نصب‌های ویژهٔ کاربر (per-user) و سپس در تمام نصب‌های سیستمی جستجو می‌کند. این رفتار را می‌توان با گزینه‌های --user، --system و --installation تغییر داد.

فلت‌پک با سوار کردن (mount) ران‌تایم مناسب در /usr و یک دایرکتوری قابل نوشتن در /var (که محتوای آن بین اجراهای مختلف برنامه حفظ می‌شود)، یک محیط ایزوله برای اجرای برنامه ایجاد می‌کند. خود برنامه نیز در /app سوار می‌شود.

جزئیات محیط ایزوله توسط متادیتای برنامه و گزینه‌های مختلفی مانند --share و --socket که به دستور run ارسال می‌شوند، کنترل می‌گردد: دسترسی مجاز است اگر در فایل متادیتای برنامه یا با یک گزینه درخواست شده باشد و کاربر آن را لغو نکرده باشد.

سایر آرگومان‌ها به دستوری که در محیط ایزوله اجرا می‌شود ارسال می‌شوند. برای نحوهٔ مدیریت آرگومان‌های فایل، به گزینهٔ --file-forwarding مراجعه کنید.

متغیرهای محیطی معمولاً با برخی استثناها به برنامهٔ درون محیط ایزوله منتقل می‌شوند، مگر اینکه --clear-env مشخص شده باشد. متادیتای برنامه می‌تواند متغیرهای محیطی را بازنویسی کند، همان‌طور که گزینهٔ --env می‌تواند. علاوه بر این، فلت‌پک همیشه متغیرهای زیر را حذف یا لغو می‌کند، زیرا مقادیر نشست آن‌ها احتمالاً با عملکرد محیط ایزوله تداخل دارند:

PATH
LD_LIBRARY_PATH
LD_PRELOAD
LD_AUDIT
XDG_CONFIG_DIRS
XDG_DATA_DIRS
SHELL
TEMP
TEMPDIR
TMP
TMPDIR
XDG_RUNTIME_DIR
container
TZDIR
PYTHONPATH
PYTHONPYCACHEPREFIX
PERLLIB
PERL5LIB
XCURSOR_PATH
GST_PLUGIN_PATH_1_0
GST_REGISTRY
GST_REGISTRY_1_0
GST_PLUGIN_PATH
GST_PLUGIN_SYSTEM_PATH
GST_PLUGIN_SCANNER
GST_PLUGIN_SCANNER_1_0
GST_PLUGIN_SYSTEM_PATH_1_0
GST_PRESET_PATH
GST_PTP_HELPER
GST_PTP_HELPER_1_0
GST_INSTALL_PLUGINS_HELPER
KRB5CCNAME
XKB_CONFIG_ROOT
GIO_EXTRA_MODULES
GDK_BACKEND
VK_ADD_DRIVER_FILES
VK_ADD_LAYER_PATH
VK_DRIVER_FILES
VK_ICD_FILENAMES
VK_LAYER_PATH
__EGL_EXTERNAL_PLATFORM_CONFIG_DIRS
__EGL_EXTERNAL_PLATFORM_CONFIG_FILENAMES
__EGL_VENDOR_LIBRARY_DIRS
__EGL_VENDOR_LIBRARY_FILENAMES

همچنین چندین متغیر محیطی با پیشوند "GST_" که توسط gstreamer استفاده می‌شوند حذف می‌گردند (از فلت‌پک نسخهٔ 1.12.5 به بعد).

فلت‌پک همچنین متغیرهای محیطی XDG را بازنویسی می‌کند تا برنامه‌های ایزوله‌شده به مکان‌های فایل‌سیستم قابل نوشتن خود در زیر مسیر ~/.var/app/$APPID/: اشاره کنند:

XDG_DATA_HOME
XDG_CONFIG_HOME
XDG_CACHE_HOME
XDG_STATE_HOME (since Flatpak 1.13)

برنامه‌ها می‌توانند از گزینه‌های --persist=.local/state و --unset-env=XDG_STATE_HOME استفاده کنند تا در نسخه‌های قدیمی‌تر فلت‌پک به مسیر ~/.local/state سازگار با فلت‌پک 1.13 دسترسی پیدا کنند.

مقادیر میزبان این متغیرها از طریق متغیرهایی با پیشوند HOST_- در داخل محیط ایزوله در دسترس هستند:

HOST_XDG_DATA_HOME
HOST_XDG_CONFIG_HOME
HOST_XDG_CACHE_HOME
HOST_XDG_STATE_HOME (since Flatpak 1.13)

فلت‌پک متغیر محیطی FLATPAK_ID را برابر با شناسهٔ برنامهٔ در حال اجرا قرار می‌دهد.

فلت‌پک همچنین فایل /etc/os-release میزبان (در صورت وجود، یا /usr/lib/os-release به عنوان جایگزین) را مطابق با مشخصات os-release[1] به صورت فقط‌خواندنی در مسیر /run/host/os-release سوار (bind-mount) می‌کند.

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

گزینه‌های زیر پشتیبانی می‌شوند:

-h, --help

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

-u, --user

جستجوی برنامه و محیط زمان اجرا در نصب‌های ویژهٔ کاربر (per-user).

--system

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

--installation=NAME

جستجوی برنامه و محیط زمان اجرا در نصب سراسری مشخص‌شده با NAME از میان موارد تعریف‌شده در /etc/flatpak/installations.d/. استفاده از --installation=default معادل استفاده از --system است.

-v, --verbose

چاپ اطلاعات اشکال‌زدایی در طول پردازش دستور.

--ostree-verbose

چاپ اطلاعات اشکال‌زدایی OSTree در طول پردازش دستور.

--arch=ARCH

معماری مورد نظر برای اجرا. برای دیدن معماری‌های پشتیبانی‌شده توسط سیستم میزبان به flatpak --supported-arches مراجعه کنید.

--command=COMMAND

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

--cwd=DIR

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

--branch=BRANCH

شاخهٔ مورد استفاده.

-d, --devel

استفاده از محیط زمان اجرای توسعه (devel) که در متادیتای برنامه مشخص شده به جای ران‌تایم عادی، و استفاده از پروفایل seccomp که احتمال اختلال آن در ابزارهای توسعه کمتر است.

--runtime=RUNTIME

استفاده از این محیط زمان اجرا به جای ران‌تایم مشخص‌شده در متادیتای برنامه. این یک چندتایی کامل است، مانند org.freedesktop.Sdk/x86_64/1.2، اما چندتایی‌های جزئی نیز مجاز هستند. هر بخش خالی یا جاافتاده با مقادیر متناظر مشخص‌شده توسط برنامه پر می‌شود.

--runtime-version=VERSION

استفاده از این نسخهٔ ران‌تایم به جای نسخهٔ مشخص‌شده در متادیتای برنامه. این گزینه بر هر نسخه‌ای که با گزینهٔ --runtime مشخص شده باشد تقدم دارد.

--share=SUBSYSTEM

اشتراک‌گذاری یک زیرسیستم با نشست میزبان. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. SUBSYSTEM باید یکی از این موارد باشد: network، ipc. این گزینه می‌تواند چندین بار استفاده شود.

--unshare=SUBSYSTEM

عدم اشتراک‌گذاری یک زیرسیستم با نشست میزبان. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. SUBSYSTEM باید یکی از این موارد باشد: network، ipc. این گزینه می‌تواند چندین بار استفاده شود.

--share-if=SUBSYSTEM:CONDITION

اشتراک‌گذاری مشروط یک زیرسیستم با نشست میزبان، تنها زمانی که شرط مشخص‌شده در زمان اجرا برآورده شود. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. SUBSYSTEM باید یکی از موارد network یا ipc باشد. CONDITION باید یکی از موارد زیر باشد: true, false, has-input-device, has-wayland, has-usb-device, has-usb-portal. شرط‌ها را می‌توان با ! نقیض کرد، برای نمونه !has-input-device. این گزینه می‌تواند چندین بار استفاده شود. موجود از نسخهٔ 1.17 به بعد.

برای جزئیات بیشتر بخش مجوزهای مشروط (Conditional Permissions) را در flatpak-metadata(5) ببینید.

--socket=SOCKET

ارائه و در دسترس قرار دادن سوکت شناخته‌شده به برنامه. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. SOCKET باید یکی از موارد زیر باشد: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. این گزینه می‌تواند چندین بار استفاده شود.

--nosocket=SOCKET

عدم ارائه سوکت شناخته‌شده به برنامه. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. SOCKET باید یکی از موارد زیر باشد: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. این گزینه می‌تواند چندین بار استفاده شود.

--socket-if=SOCKET:CONDITION

ارائه مشروط یک سوکت شناخته‌شده به برنامه، تنها زمانی که شرط مشخص‌شده در زمان اجرا برآورده شود. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. SOCKET باید یکی از موارد زیر باشد: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. CONDITION باید یکی از موارد زیر باشد: true, false, has-input-device, has-wayland, has-usb-device, has-usb-portal. شرط‌ها را می‌توان با ! نقیض کرد، برای نمونه !has-wayland. این گزینه می‌تواند چندین بار استفاده شود. موجود از نسخهٔ 1.17 به بعد.

برای جزئیات بیشتر بخش مجوزهای مشروط (Conditional Permissions) را در flatpak-metadata(5) ببینید.

--device=DEVICE

ارائه یک دستگاه به برنامه. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. DEVICE باید یکی از این موارد باشد: dri, input, usb, kvm, shm, all. این گزینه می‌تواند چندین بار استفاده شود.

--nodevice=DEVICE

عدم ارائه یک دستگاه به برنامه. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. DEVICE باید یکی از این موارد باشد: dri, input, usb, kvm, shm, all. این گزینه می‌تواند چندین بار استفاده شود.

--device-if=DEVICE:CONDITION

ارائه مشروط یک دستگاه به برنامه، تنها زمانی که شرط مشخص‌شده در زمان اجرا برآورده شود. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. DEVICE باید یکی از این موارد باشد: dri, input, usb, kvm, shm, all. CONDITION باید یکی از موارد زیر باشد: true, false, has-input-device, has-wayland, has-usb-device, has-usb-portal. شرط‌ها را می‌توان با ! نقیض کرد، برای نمونه !has-input-device. این گزینه می‌تواند چندین بار استفاده شود. موجود از نسخهٔ 1.17 به بعد.

برای جزئیات بیشتر بخش مجوزهای مشروط (Conditional Permissions) را در flatpak-metadata(5) ببینید.

--allow=FEATURE

اجازهٔ دسترسی به یک قابلیت مشخص. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. FEATURE باید یکی از موارد devel، multiarch یا bluetooth باشد. این گزینه می‌تواند چندین بار استفاده شود.

برای آشنایی با معانی قابلیت‌های مختلف، flatpak-build-finish(1) را ببینید.

--disallow=FEATURE

عدم اجازهٔ دسترسی به یک قابلیت مشخص. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. FEATURE باید یکی از موارد devel، multiarch یا bluetooth باشد. این گزینه می‌تواند چندین بار استفاده شود.

--allow-if=FEATURE:CONDITION

اجازه دسترسی مشروط به یک قابلیت مشخص، تنها زمانی که شرط مشخص‌شده در زمان اجرا برقرار باشد. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. FEATURE باید یکی از موارد devel، multiarch یا bluetooth باشد. CONDITION باید یکی از موارد زیر باشد: true, false, has-input-device, has-wayland, has-usb-device, has-usb-portal. شرط‌ها را می‌توان با ! نقیض کرد، برای نمونه !has-input-device. این گزینه می‌تواند چندین بار استفاده شود. موجود از نسخهٔ 1.17 به بعد.

برای جزئیات بیشتر بخش مجوزهای مشروط (Conditional Permissions) را در flatpak-metadata(5) ببینید.

--filesystem=FILESYSTEM

اجازه دسترسی برنامه به زیرمجموعه‌ای از فایل‌سیستم. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. FILESYSTEM می‌تواند یکی از موارد زیر باشد: home, host, host-os, host-etc, host-root, xdg-desktop, xdg-documents, xdg-download, xdg-music, xdg-pictures, xdg-public-share, xdg-templates, xdg-videos, xdg-run, xdg-config, xdg-cache, xdg-data، یک مسیر مطلق، یا یک مسیر نسبی به پوشهٔ خانگی مانند ~/dir یا مسیرهای نسبی به پوشه‌های xdg مانند xdg-download/subdir. پسوند اختیاری :ro نشان می‌دهد که مسیر فقط‌خواندنی خواهد بود. پسوند اختیاری :create نشان می‌دهد که مسیر قابل خواندن/نوشتن بوده و در صورت عدم وجود ایجاد می‌شود. این گزینه می‌تواند چندین بار استفاده شود. برای جزئیات و معانی این فایل‌سیستم‌ها، فهرست "[Context] filesystems" را در flatpak-metadata(5) ببینید.

--nofilesystem=FILESYSTEM

خنثی کردن اثر گزینهٔ قبلی --filesystem=FILESYSTEM در مانیفست برنامه و/یا تغییرات سفارشی تنظیم‌شده با flatpak-override(1). این گزینه بخش Context متادیتای برنامه را لغو و بازنویسی می‌کند. FILESYSTEM می‌تواند مقادیری مشابه با --filesystem بپذیرد، اما پسوندهای :ro و :create در اینجا استفاده نمی‌شوند. این گزینه می‌تواند چندین بار استفاده شود.

این گزینه مانع از دسترسی به یک --filesystem با دامنهٔ محدودتر و مشخص‌تر نمی‌شود. برای نمونه، اگر برنامه‌ای در مانیفست خود یا در تنظیمات بازنویسی سراسری سیستم معادل --filesystem=xdg-config/MyApp را داشته باشد، و در تنظیمات بازنویسی کاربری flatpak override --user --nofilesystem=home تعیین شده باشد، از دسترسی آن به بیشتر بخش‌های پوشهٔ خانه جلوگیری خواهد شد، اما همچنان اجازه دسترسی به $XDG_CONFIG_HOME/MyApp را خواهد داشت.

به عنوان یک مورد خاص، --nofilesystem=host:reset علاوه بر داشتن رفتاری مشابه --nofilesystem=host، تمام مجوزهای --filesystem به‌ارث‌رسیده از مانیفست برنامه یا flatpak-override(1) را نادیده می‌گیرد.

--add-policy=SUBSYSTEM.KEY=VALUE

افزودن گزینهٔ خط‌مشی عمومی (generic policy). برای نمونه، "--add-policy=subsystem.key=v1 --add-policy=subsystem.key=v2" به این متادیتا نگاشت می‌شود:
[Policy subsystem]
key=v1;v2;

این گزینه می‌تواند چندین بار استفاده شود.

--remove-policy=SUBSYSTEM.KEY=VALUE

حذف گزینهٔ خط‌مشی عمومی. این گزینه می‌تواند چندین بار استفاده شود.

--usb=TYPE[:DATA]

افزودن پرسمان دستگاه USB به متادیتای برنامه. این کار اجازهٔ شمارش دستگاه‌ها و استفاده توسط پورتال USB را می‌دهد. TYPE باید یکی از موارد all، cls، dev یا vnd باشد.

all

تطابق با تمام دستگاه‌ها.

cls

پرسمان کلاس و زیرکلاس دستگاه. DATA باید در قالب CLASS:SUBCLASS باشد که در آن هر دو مقدار CLASS و SUBCLASS باید شماره شناسایی کلاس هگزادسیمال معتبر ۲ رقمی باشند. همچنین SUBCLASS می‌تواند * باشد تا با تمام زیرکلاس‌ها تطابق یابد.

dev

پرسمان شناسه محصول (product id) دستگاه. DATA باید یک عدد شناسه محصول هگزادسیمال معتبر ۴ رقمی باشد، برای نمونه 0a1b. این گزینه نیازمند فیلتر vnd در پرسمان است.

vnd

پرسمان شناسه سازنده (vendor id) دستگاه. DATA باید یک شناسه سازنده هگزادسیمال معتبر ۴ رقمی بزرگتر از صفر باشد، برای نمونه 0fab.

ترکیب چندین پرسمان دستگاه با علامت + امکان‌پذیر است، برای نمونه --usb=vnd:0123+dev:4567. فیلتر dev نیازمند vnd است. موجود از نسخهٔ 1.15.11 به بعد.

--nousb=VENDOR_ID:PRODUCT_ID

افزودن پرسمان مسدودسازی دستگاه USB به متادیتای برنامه. دستگاه‌های مسدودشده بر دستگاه‌های مجاز اولویت دارند. ساختار دستوری دقیقاً مشابه با --usb است. موجود از نسخهٔ 1.15.11 به بعد.

--env=VAR=VALUE

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

--unset-env=VAR

حذف یک متغیر محیطی در برنامه. این گزینه ورودی unset-environment در گروه [Context] متادیتا و گروه [Environment] را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--env-fd=FD

خواندن متغیرهای محیطی از توصیف‌گر فایل FD و تنظیم آن‌ها همانند گزینهٔ --env. از این گزینه می‌توان برای جلوگیری از مشاهده متغیرهای محیطی و مقادیر آن‌ها توسط سایر کاربران استفاده کرد.

هر متغیر محیطی در قالب VAR=VALUE است که با یک بایت صفر دنبال می‌شود. این قالب همان قالبی است که توسط env -0 و /proc/*/environ استفاده می‌شود.

--clear-env

عدم انتقال متغیرهای محیطی از محیط بیرون به برنامهٔ ایزوله‌شده (سندباکس). متغیرهای محیطی که صریحاً تنظیم یا حذف شده‌اند همچنان اعمال خواهند شد.

--own-name=NAME

اجازه به برنامه برای در اختیار گرفتن (مالکیت) نام شناخته‌شدهٔ NAME در گذرگاه نشست (session bus). اگر NAME با .* پایان یابد، به برنامه اجازه می‌دهد تمام نام‌های منطبق را در اختیار بگیرد. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--talk-name=NAME

اجازه به برنامه برای برقراری ارتباط با نام شناخته‌شدهٔ NAME در گذرگاه نشست (session bus). اگر NAME با .* پایان یابد، به برنامه اجازه می‌دهد با تمام نام‌های منطبق ارتباط برقرار کند. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--no-talk-name=NAME

عدم اجازه به برنامه برای برقراری ارتباط با نام شناخته‌شدهٔ NAME در گذرگاه نشست (session bus). اگر NAME با .* پایان یابد، به برنامه اجازه می‌دهد با تمام نام‌های منطبق ارتباط برقرار کند. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--system-own-name=NAME

اجازه به برنامه برای در اختیار گرفتن (مالکیت) نام شناخته‌شدهٔ NAME در گذرگاه سیستم (system bus). اگر NAME با .* پایان یابد، به برنامه اجازه می‌دهد تمام نام‌های منطبق را در اختیار بگیرد. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--system-talk-name=NAME

اجازه به برنامه برای برقراری ارتباط با نام شناخته‌شدهٔ NAME در گذرگاه سیستم (system bus). اگر NAME با .* پایان یابد، به برنامه اجازه می‌دهد با تمام نام‌های منطبق ارتباط برقرار کند. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--system-no-talk-name=NAME

عدم اجازه به برنامه برای برقراری ارتباط با نام شناخته‌شدهٔ NAME در گذرگاه سیستم (system bus). اگر NAME با .* پایان یابد، به برنامه اجازه می‌دهد با تمام نام‌های منطبق ارتباط برقرار کند. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--a11y-own-name=NAME

اجازه به برنامه برای در اختیار گرفتن (مالکیت) نام شناخته‌شدهٔ NAME در گذرگاه دسترسی‌پذیری (a11y bus). اگر NAME با .* پایان یابد، به برنامه اجازه می‌دهد تمام نام‌های منطبق را در اختیار بگیرد. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--persist=FILENAME

اگر برنامه به پوشهٔ خانگی واقعی دسترسی ندارد، مسیر (نسبی به پوشهٔ خانگی) FILENAME را به مسیر متناظر در پوشهٔ اختصاصی برنامه متصل (bind mount) می‌کند تا بتوان از آن مکان برای داده‌های پایدار استفاده کرد. این گزینه بخش Context در متادیتای برنامه را لغو و بازنویسی می‌کند. این گزینه می‌تواند چندین بار استفاده شود.

--no-session-bus

اجرای این نمونه بدون دسترسی فیلترشده به اتصال dbus نشست. توجه داشته باشید که این حالت پیش‌فرض هنگام اجرا با --sandbox است.

--session-bus

اجازهٔ دسترسی فیلترشده به اتصال dbus نشست. این حالت پیش‌فرض است، مگر زمانی که با --sandbox اجرا شود.

در حالت ایزوله (سندباکس)، حتی اگر دسترسی به گذرگاه نشست را مجاز کنید، سندباکس نمی‌تواند با شناسه‌های برنامه (org.the.App.*) در گذرگاه ارتباط برقرار کرده یا مالک آن‌ها شود (مگر اینکه صراحتاً اضافه شوند)، بلکه فقط با نام‌های موجود در زیرمجموعهٔ .Sandboxed (مانند org.the.App.Sandboxed.* و org.mpris.MediaPlayer2.org.the.App.Sandboxed.*) مجاز است.

--no-a11y-bus

اجرای این نمونه بدون دسترسی به گذرگاه دسترسی‌پذیری (accessibility bus). توجه داشته باشید که این حالت پیش‌فرض هنگام اجرا با --sandbox است.

--a11y-bus

اجازه دسترسی به گذرگاه دسترسی‌پذیری. این حالت پیش‌فرض است، مگر هنگامی که با --sandbox اجرا شود.

--sandbox

اجرای برنامه در حالت ایزوله (سندباکس)، که به معنی کنار گذاشتن تمام مجوزهای اضافی است که در غیر این صورت داشت، و همچنین قطع دسترسی به گذرگاه‌های نشست/سیستم/دسترسی‌پذیری و پورتال اسناد.

--log-session-bus

ثبت لاگ ترافیک گذرگاه نشست. این گزینه برای مشاهدهٔ دسترسی‌های مورد نیاز در سیاست D-Bus شما مفید است.

--log-system-bus

ثبت لاگ ترافیک گذرگاه سیستم. این گزینه برای مشاهدهٔ دسترسی‌های مورد نیاز در سیاست D-Bus شما مفید است.

-p, --die-with-parent

بستن و پایان دادن به کل محیط ایزوله هنگامی که فرآیند راه‌انداز خاتمه می‌یابد.

--parent-pid=PID

شناسهٔ فرایند (PID) فلت‌پک «والد» را مشخص می‌کند، که توسط گزینه‌های --parent-expose-pids و --parent-share-pids استفاده می‌شود.

--parent-expose-pids

فرآیندهای محیط ایزوله جدید را در محیط ایزوله فلت‌پک والد (همان‌طور که با --parent-pid تعریف شده) قابل مشاهده می‌سازد.

--parent-share-pids

استفاده از فضای نام یکسان برای شناسهٔ فرایندها بین فرآیندهای محیط ایزوله جدید و محیط ایزوله فلت‌پک والد، همان‌طور که با --parent-pid تعریف شده است. این گزینه مستلزم --parent-expose-pids است.

--instance-id-fd

نوشتن رشتهٔ شناسهٔ نمونه (instance ID) در توصیف‌گر فایل داده‌شده.

--file-forwarding

در صورت مشخص شدن این گزینه، سایر آرگومان‌ها بررسی می‌شوند و تمام آرگومان‌هایی که بین یک جفت آرگومان '@@' قرار گرفته‌اند به عنوان مسیر فایل تفسیر شده، در مخزن اسناد برون‌ریزی می‌شوند و در قالب مسیر سند حاصل به دستور ارسال می‌گردند. آرگومان‌های بین "@@u" و "@@" به عنوان URI در نظر گرفته شده و هر URI با طرح "file:" برون‌ریزی می‌شود. این موارد موقتی (غیرپایدار) بوده و دارای مجوز خواندن و نوشتن برای برنامه هستند.

--app-path=PATH

به جای سوار کردن محتوای برنامه در مسیر /app درون محیط ایزوله، مسیر PATH را در /app و محتوای اصلی برنامه را در /run/parent/app سوار می‌کند. اگر برنامه دارای افزونه باشد، آن‌ها نیز به /run/parent/app هدایت می‌شوند و در LD_LIBRARY_PATH درون محیط ایزوله گنجانده نخواهند شد.

--app-path=

به عنوان یک حالت خاص، --app-path= (با یک PATH خالی) منجر به سوار شدن یک دایرکتوری خالی در مسیر /app می‌شود.

--usr-path=PATH

به جای سوار کردن فایل‌های زمان اجرا در مسیر /usr درون محیط ایزوله، مسیر PATH را در /usr و فایل‌های عادی محیط زمان اجرا را در /run/parent/usr سوار می‌کند. اگر محیط زمان اجرا دارای افزونه باشد، آن‌ها نیز به /run/parent/usr هدایت می‌شوند و در LD_LIBRARY_PATH درون محیط ایزوله گنجانده نخواهند شد.

این گزینه معمولاً تنها زمانی مفید خواهد بود که با گزینه‌های --app-path= و --env=LD_LIBRARY_PATH=... ترکیب شود.

$ flatpak run org.gnome.gedit

$ flatpak run --devel --command=bash org.gnome.Builder

$ flatpak run --command=bash org.gnome.Sdk

$ flatpak run org.gnome.Boxes --nousb=0fd9:*

flatpak(1), flatpak-override(1), flatpak-enter(1)

1.
مشخصات os-release
flatpak