Deprecated: Grav\Framework\Form\Traits\FormTrait::getData(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Traits/FormTrait.php on line 197

Deprecated: Grav\Framework\Form\Traits\FormTrait::submit(): Implicitly marking parameter $files as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Traits/FormTrait.php on line 369

Deprecated: Grav\Framework\Form\Traits\FormTrait::render(): Implicitly marking parameter $layout as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Traits/FormTrait.php on line 505

Deprecated: Grav\Framework\Form\Interfaces\FormInterface::submit(): Implicitly marking parameter $files as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Interfaces/FormInterface.php on line 143

Deprecated: Grav\Framework\Interfaces\RenderInterface::render(): Implicitly marking parameter $layout as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Interfaces/RenderInterface.php on line 37

Deprecated: Grav\Framework\Route\Route::getBase(): Implicitly marking parameter $language as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Route/Route.php on line 95

Deprecated: Grav\Common\Backup\Backups::backup(): Implicitly marking parameter $status as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Backup/Backups.php on line 197

Deprecated: Grav\Common\Scheduler\Scheduler::run(): Implicitly marking parameter $runTime as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Scheduler/Scheduler.php on line 242

Deprecated: Grav\Common\Scheduler\Job::isDue(): Implicitly marking parameter $date as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Scheduler/Job.php on line 235

Deprecated: Grav\Common\Scheduler\Job::onlyOne(): Implicitly marking parameter $whenOverlapping as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Scheduler/Job.php on line 306

Deprecated: Grav\Common\Scheduler\Job::getMetadata(): Implicitly marking parameter $key as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Scheduler/Job.php on line 882

Deprecated: Twig\Environment::__construct(): Implicitly marking parameter $loader as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/twig/twig/src/Environment.php on line 122

Deprecated: Grav\Common\Twig\Extension\GravExtension::translateLanguage(): Implicitly marking parameter $languages as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Twig/Extension/GravExtension.php on line 935

Deprecated: Grav\Common\Page\Page::parent(): Implicitly marking parameter $var as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Page.php on line 2398

Deprecated: Grav\Common\Page\Interfaces\PageRoutableInterface::parent(): Implicitly marking parameter $var as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Interfaces/PageRoutableInterface.php on line 136

Deprecated: RocketTheme\Toolbox\File\MarkdownFile::header(): Implicitly marking parameter $var as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/rockettheme/toolbox/File/src/MarkdownFile.php on line 44

Deprecated: Symfony\Component\Yaml\Parser::getNextEmbedBlock(): Implicitly marking parameter $indentation as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Parser.php on line 578

Deprecated: Symfony\Component\Yaml\Parser::preg_match(): Implicitly marking parameter $matches as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Parser.php on line 1094

Deprecated: Symfony\Component\Yaml\Inline::initialize(): Implicitly marking parameter $parsedLineNumber as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Inline.php on line 37

Deprecated: Symfony\Component\Yaml\Inline::initialize(): Implicitly marking parameter $parsedFilename as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Inline.php on line 37

Deprecated: Symfony\Component\Yaml\Inline::parse(): Implicitly marking parameter $value as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Inline.php on line 61

Deprecated: Symfony\Component\Yaml\Inline::parseScalar(): Implicitly marking parameter $delimiters as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Inline.php on line 272

Deprecated: Symfony\Component\Yaml\Inline::parseScalar(): Implicitly marking parameter $isQuoted as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Inline.php on line 272

Deprecated: Symfony\Component\Yaml\Inline::evaluateScalar(): Implicitly marking parameter $isQuotedString as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/symfony/yaml/Inline.php on line 565

Deprecated: Grav\Framework\Flex\Flex::getDirectories(): Implicitly marking parameter $types as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Flex.php on line 97

Deprecated: Grav\Framework\Flex\Flex::getCollection(): Implicitly marking parameter $keys as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Flex.php on line 128

Deprecated: Grav\Framework\Flex\Flex::getCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Flex.php on line 128

Deprecated: Grav\Framework\Flex\Flex::getObject(): Implicitly marking parameter $type as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Flex.php on line 274

Deprecated: Grav\Framework\Flex\Flex::getObject(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Flex.php on line 274

Deprecated: Grav\Framework\Flex\Flex::resolveKeyAndType(): Implicitly marking parameter $type as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Flex.php on line 306

Deprecated: Grav\Framework\Flex\Flex::resolveType(): Implicitly marking parameter $type as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Flex.php on line 326

Deprecated: Grav\Framework\Flex\Interfaces\FlexInterface::getDirectories(): Implicitly marking parameter $types as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexInterface.php on line 49

Deprecated: Grav\Framework\Flex\Interfaces\FlexInterface::getCollection(): Implicitly marking parameter $keys as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexInterface.php on line 64

Deprecated: Grav\Framework\Flex\Interfaces\FlexInterface::getCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexInterface.php on line 64

Deprecated: Grav\Framework\Flex\Interfaces\FlexInterface::getObject(): Implicitly marking parameter $type as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexInterface.php on line 94

Deprecated: Grav\Framework\Flex\Interfaces\FlexInterface::getObject(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexInterface.php on line 94

Deprecated: Grav\Framework\Form\FormFlash::addUploadedFile(): Implicitly marking parameter $field as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 323

Deprecated: Grav\Framework\Form\FormFlash::addUploadedFile(): Implicitly marking parameter $crop as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 323

Deprecated: Grav\Framework\Form\FormFlash::addFile(): Implicitly marking parameter $crop as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 351

Deprecated: Grav\Framework\Form\FormFlash::removeFile(): Implicitly marking parameter $field as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 372

Deprecated: Grav\Framework\Form\FormFlash::setUser(): Implicitly marking parameter $user as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 450

Deprecated: Grav\Framework\Form\FormFlash::setUserName(): Implicitly marking parameter $username as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 468

Deprecated: Grav\Framework\Form\FormFlash::setUserEmail(): Implicitly marking parameter $email as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 479

Deprecated: Grav\Framework\Form\FormFlash::addFileInternal(): Implicitly marking parameter $crop as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/FormFlash.php on line 541

Deprecated: Grav\Framework\Form\Interfaces\FormFlashInterface::addUploadedFile(): Implicitly marking parameter $field as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Interfaces/FormFlashInterface.php on line 149

Deprecated: Grav\Framework\Form\Interfaces\FormFlashInterface::addUploadedFile(): Implicitly marking parameter $crop as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Interfaces/FormFlashInterface.php on line 149

Deprecated: Grav\Framework\Form\Interfaces\FormFlashInterface::addFile(): Implicitly marking parameter $crop as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Interfaces/FormFlashInterface.php on line 159

Deprecated: Grav\Framework\Form\Interfaces\FormFlashInterface::removeFile(): Implicitly marking parameter $field as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Form/Interfaces/FormFlashInterface.php on line 168

Deprecated: Grav\Framework\Flex\FlexDirectory::getConfig(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 158

Deprecated: Grav\Framework\Flex\FlexDirectory::getSearchOptions(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 200

Deprecated: Grav\Framework\Flex\FlexDirectory::getDirectoryForm(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 217

Deprecated: Grav\Framework\Flex\FlexDirectory::getDirectoryConfigUri(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 314

Deprecated: Grav\Framework\Flex\FlexDirectory::getDirectoryConfig(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 326

Deprecated: Grav\Framework\Flex\FlexDirectory::getCollection(): Implicitly marking parameter $keys as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 375

Deprecated: Grav\Framework\Flex\FlexDirectory::getCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 375

Deprecated: Grav\Framework\Flex\FlexDirectory::getIndex(): Implicitly marking parameter $keys as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 402

Deprecated: Grav\Framework\Flex\FlexDirectory::getIndex(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 402

Deprecated: Grav\Framework\Flex\FlexDirectory::getObject(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 425

Deprecated: Grav\Framework\Flex\FlexDirectory::getCache(): Implicitly marking parameter $namespace as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 441

Deprecated: Grav\Framework\Flex\FlexDirectory::getStorageFolder(): Implicitly marking parameter $key as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 509

Deprecated: Grav\Framework\Flex\FlexDirectory::getMediaFolder(): Implicitly marking parameter $key as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 518

Deprecated: Grav\Framework\Flex\FlexDirectory::createCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 558

Deprecated: Grav\Framework\Flex\FlexDirectory::createIndex(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 575

Deprecated: Grav\Framework\Flex\FlexDirectory::loadCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 629

Deprecated: Grav\Framework\Flex\FlexDirectory::update(): Implicitly marking parameter $key as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/FlexDirectory.php on line 1123

Deprecated: Grav\Framework\Flex\Traits\FlexAuthorizeTrait::isAuthorized(): Implicitly marking parameter $scope as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Traits/FlexAuthorizeTrait.php on line 37

Deprecated: Grav\Framework\Flex\Traits\FlexAuthorizeTrait::isAuthorized(): Implicitly marking parameter $user as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Traits/FlexAuthorizeTrait.php on line 37

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getConfig(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 52

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getDirectoryForm(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 60

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getDirectoryConfigUri(): Implicitly marking parameter $name as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 81

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getCollection(): Implicitly marking parameter $keys as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 110

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 110

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getIndex(): Implicitly marking parameter $keys as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 122

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getIndex(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 122

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getObject(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 133

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getCache(): Implicitly marking parameter $namespace as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 139

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getStorageFolder(): Implicitly marking parameter $key as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 150

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::getMediaFolder(): Implicitly marking parameter $key as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 156

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::createCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 177

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::createIndex(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 185

Deprecated: Grav\Framework\Flex\Interfaces\FlexDirectoryInterface::loadCollection(): Implicitly marking parameter $keyField as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexDirectoryInterface.php on line 208

Deprecated: Grav\Framework\Flex\Interfaces\FlexAuthorizeInterface::isAuthorized(): Implicitly marking parameter $scope as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexAuthorizeInterface.php on line 32

Deprecated: Grav\Framework\Flex\Interfaces\FlexAuthorizeInterface::isAuthorized(): Implicitly marking parameter $user as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Flex/Interfaces/FlexAuthorizeInterface.php on line 32

Deprecated: Grav\Common\User\Traits\UserTrait::authorize(): Implicitly marking parameter $scope as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/User/Traits/UserTrait.php on line 79

Deprecated: Grav\Common\User\Interfaces\AuthorizeInterface::authorize(): Implicitly marking parameter $scope as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/User/Interfaces/AuthorizeInterface.php on line 25

Deprecated: Grav\Common\Page\Media::__construct(): Implicitly marking parameter $media_order as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Media.php on line 41

Deprecated: Grav\Common\Page\Medium\AbstractMedia::createFromArray(): Implicitly marking parameter $blueprint as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Medium/AbstractMedia.php on line 232

Deprecated: Grav\Common\Media\Traits\MediaUploadTrait::checkUploadedFile(): Implicitly marking parameter $filename as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Traits/MediaUploadTrait.php on line 74

Deprecated: Grav\Common\Media\Traits\MediaUploadTrait::checkUploadedFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Traits/MediaUploadTrait.php on line 74

Deprecated: Grav\Common\Media\Traits\MediaUploadTrait::checkFileMetadata(): Implicitly marking parameter $filename as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Traits/MediaUploadTrait.php on line 118

Deprecated: Grav\Common\Media\Traits\MediaUploadTrait::checkFileMetadata(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Traits/MediaUploadTrait.php on line 118

Deprecated: Grav\Common\Media\Traits\MediaUploadTrait::copyUploadedFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Traits/MediaUploadTrait.php on line 255

Deprecated: Grav\Common\Media\Traits\MediaUploadTrait::deleteFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Traits/MediaUploadTrait.php on line 332

Deprecated: Grav\Common\Media\Traits\MediaUploadTrait::renameFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Traits/MediaUploadTrait.php on line 374

Deprecated: Grav\Common\Media\Interfaces\MediaCollectionInterface::createFromArray(): Implicitly marking parameter $blueprint as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Interfaces/MediaCollectionInterface.php on line 108

Deprecated: Grav\Common\Media\Interfaces\MediaUploadInterface::checkUploadedFile(): Implicitly marking parameter $filename as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Interfaces/MediaUploadInterface.php on line 35

Deprecated: Grav\Common\Media\Interfaces\MediaUploadInterface::checkUploadedFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Interfaces/MediaUploadInterface.php on line 35

Deprecated: Grav\Common\Media\Interfaces\MediaUploadInterface::copyUploadedFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Interfaces/MediaUploadInterface.php on line 54

Deprecated: Grav\Common\Media\Interfaces\MediaUploadInterface::deleteFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Interfaces/MediaUploadInterface.php on line 63

Deprecated: Grav\Common\Media\Interfaces\MediaUploadInterface::renameFile(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Media/Interfaces/MediaUploadInterface.php on line 72

Deprecated: Grav\Common\Page\Medium\MediumFactory::fromArray(): Implicitly marking parameter $blueprint as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Medium/MediumFactory.php on line 153

Deprecated: Grav\Common\Page\Medium\ImageMedium::__construct(): Implicitly marking parameter $blueprint as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Medium/ImageMedium.php on line 49

Deprecated: Grav\Common\Page\Medium\Medium::__construct(): Implicitly marking parameter $blueprint as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Medium/Medium.php on line 46

Deprecated: Grav\Common\Page\Markdown\Excerpts::__construct(): Implicitly marking parameter $page as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Markdown/Excerpts.php on line 45

Deprecated: Grav\Common\Page\Markdown\Excerpts::__construct(): Implicitly marking parameter $config as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Markdown/Excerpts.php on line 45

Deprecated: Parsedown::blockSetextHeader(): Implicitly marking parameter $Block as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/erusev/parsedown/Parsedown.php on line 715

Deprecated: Parsedown::blockTable(): Implicitly marking parameter $Block as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/erusev/parsedown/Parsedown.php on line 853

Deprecated: DiDom\Document::load(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/user/plugins/image-captions/vendor/imangazaliev/didom/src/DiDom/Document.php on line 254

Deprecated: Grav\Common\Security::detectXssFromSvgFile(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Security.php on line 33

Deprecated: Grav\Common\Security::detectXssFromPages(): Implicitly marking parameter $status as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Security.php on line 98

Deprecated: Grav\Common\Security::detectXssFromArray(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Security.php on line 148

Deprecated: Grav\Common\Security::detectXss(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Security.php on line 179

Deprecated: Grav\Common\Page\Collection::__construct(): Implicitly marking parameter $pages as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Page/Collection.php on line 46

Deprecated: Grav\Framework\Psr7\Response::__construct(): Implicitly marking parameter $reason as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Psr7/Response.php on line 38

Deprecated: Grav\Framework\Psr7\Response::withJson(): Implicitly marking parameter $status as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Psr7/Response.php on line 58

Deprecated: Grav\Framework\Session\Messages::clear(): Implicitly marking parameter $scope as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Session/Messages.php on line 53

Deprecated: Grav\Framework\Session\Messages::all(): Implicitly marking parameter $scope as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Session/Messages.php on line 86

Deprecated: Grav\Framework\Session\Messages::fetch(): Implicitly marking parameter $scope as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Framework/Session/Messages.php on line 108

Deprecated: Grav\Common\Data\Validation::authorize(): Implicitly marking parameter $user as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/system/src/Grav/Common/Data/Validation.php on line 167
Run GUI application with Docker | ddyms

That is possible? Yes it is, in reality many GUI applications packed in docker and run through browser or passing to xorg. Usually there is two kind of docker images that trying run GUI applications, first it the one that emulate desktop either using VNC and other means, then the second is by passing the application to xorg directly. In this write we will explain the second type, passing the GUI to xorg.

First of all, let build two docker images with gui application, first is gimp and second is inkscape.

  • Dockerfile.gimp

    FROM debian:bullseye-slim
    RUN apt update && apt-get install -y --no-install-recommends \
        gimp \
        --no-install-recommends \
        && rm -rf /var/lib/apt/lists/*
    ENTRYPOINT [ "gimp"]
    • Build image
      $ docker build . -t gimp:local . -f Dockerfile.gimp
  • Dockerfile.inkscape

    FROM debian:bullseye-slim
    RUN apt update && apt-get install -y --no-install-recommends \
        inkscape \
        --no-install-recommends \
        && rm -rf /var/lib/apt/lists/*
    ENTRYPOINT [ "inkscape"]
    • Build the image
      $ docker build . -t inkscape:local . -f Dockerfile.inkscape

Now we got two images, inkscape:local and gimp:local, then we just need to run them via docker run

docker run --rm --name gimp-local \
                  -v /etc/localtime:/etc/localtime:ro \
                  -v /tmp/.X11-unix:/tmp/.X11-unix \
                  -e DISPLAY=$DISPLAY \
                  gimp:local

Two parameters -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY must exist.

Then we will see gimp startup display loading, and load the gimp. 2022-11-03-134732_950x608_scrot

Now we run the inkscape, using the same command but by replace gimp to inkscape

docker run --rm --name inkscape-local \
                  -v /etc/localtime:/etc/localtime:ro \
                  -v /tmp/.X11-unix:/tmp/.X11-unix \
                  -e DISPLAY=$DISPLAY \
                  inkscape:local

Same condition as gimp, the inkscape GUI will show shortly. 2022-11-03-135400_943x1035_scrot

This is one of caveat using GUI as docker, inconsistent theming, as every applications had their own preset configuration and preferences, the GUI interface will different each other when native installation will read per user configuration, usually stored at ~/.config path. The theme may bad looking, missing fonts, missing icons

Second caveat is non persistent, docker image don't have the path that will store user settings or data, the path will created and deleted after application exited. Everytime application started it will use application preset settings rather that user defined one. But this also become advantage for privacy, as application created and destroyed on demand, then no data saved such as history, custom settings, etc. So depends on personal use-case this may useful or annoying for some reason.

These two is directly noticed after using gimp and inkscape few days, performance wise nothing difference from native install, there are maybe some other caveats that i didn't noticed so you may find some other caveats when using other applications.

We already had the docker run command, now its time to convert in to compose type, as we dont want to typing docker run everytime, using bashrc ALIAS also one way out. Compose

#docker run --rm --name gimp-local \
#                  -v /etc/localtime:/etc/localtime:ro \
#                  -v /tmp/.X11-unix:/tmp/.X11-unix \
#                  -e DISPLAY=$DISPLAY \
#                  gimp:local
version: "3.8"
services:
  gimp:
    image: gimp:local
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /tmp/.X11-unix:/tmp/.X11-unix
      # Add path to your data, because container will not read host data, 
      # only the one we passed
      - /some/path/to/your/data:/data
    environment:
      - DISPLAY=$DISPLAY

Hail privacy

sources:

Previous Post Next Post

Add a comment


Deprecated: Twig\Parser::addImportedSymbol(): Implicitly marking parameter $node as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/twig/twig/src/Parser.php on line 330

Deprecated: Twig\NodeVisitor\SafeAnalysisNodeVisitor::intersectSafe(): Implicitly marking parameter $a as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/twig/twig/src/NodeVisitor/SafeAnalysisNodeVisitor.php on line 141

Deprecated: Twig\NodeVisitor\SafeAnalysisNodeVisitor::intersectSafe(): Implicitly marking parameter $b as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/twig/twig/src/NodeVisitor/SafeAnalysisNodeVisitor.php on line 141

Deprecated: Twig\Node\Expression\ArrayExpression::addElement(): Implicitly marking parameter $key as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/twig/twig/src/Node/Expression/ArrayExpression.php on line 59

Deprecated: Twig\NodeTraverser::traverseForVisitor(): Implicitly marking parameter $node as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/vendor/twig/twig/src/NodeTraverser.php on line 63