Просто установка Rep2/p2-php с PHP8.2.1 [Фронтенд для 5ch]

Привет, я бездарь.
Без зависимости от приложений установлю Rep2, чтобы просматривать 2ch/5ch.
Поскольку я сейчас использую Artix Linux, будет установлен PHP8.2.1.
Вдобавок, в качестве зависимостей установлю php-gd php-fpm imagemagick php-sqlite.
Говорят, нужно установить и другие, но поскольку проверка, о которой будет сказано ниже, прошла успешно, пока что это сойдет.
sudo pacman -S php php-gd php-fpm imagemagick php-sqlite
Сначала установлю то, что поддерживает PHP8.*, из репозитория mikoim.
https://github.com/mikoim/p2-php
git clone git://github.com/open774/p2-php.git
cd p2-php
Клонирую на свой ПК и перехожу в директорию
curl -O https://getcomposer.org/download/1.10.25/composer.phar
chmod +x composer.phar
./composer.phar install
Установка зависимостей... но если оставить как есть, она завершится неудачей, так как репозиторий Dropbox API был удален.
Если вы уже выполнили вышеуказанную команду, удалите кеш с помощью composer clear-cache.
https://github.com/dropbox/dropbox-php-sdk/
Итак, отредактируем /p2-php/composer.json.
{
"name": "open774/p2-php",
"description": "The server side 2ch viewer written in PHP",
"license": "X11",
"repositories": [
{
"type": "pear",
"url": "https://pear.php.net"
},
{
"type": "vcs",
"url": "https://github.com/open774/quickform"
}
],
"require": {
"php": ">=5.3.6",
"rsky/pear-core-min": "dev-master",
"rsky/pear-pager": ">=2.4.9beta2",
"rsky/pear-html_template_flexy": ">=1.3.13alpha6",
"pear-pear.php.net/benchmark": "1.2.9",
"pear-pear.php.net/cache_lite": "1.7.15",
"pear-pear.php.net/db": "1.7.14",
"pear-pear.php.net/db_dataobject": "1.11.2",
"pear-pear.php.net/date": "1.4.7",
"pear-pear.php.net/file": "1.4.1",
"pear-pear.php.net/file_util": "1.0.0",
"pear-pear.php.net/html_common": "1.2.5",
"2ch774/quickform": "dev-master",
"pear-pear.php.net/http_request2": "2.2.1",
"pear-pear.php.net/net_socket": "1.0.10",
"pear-pear.php.net/net_url": "1.0.15",
"pear-pear.php.net/net_url2": "2.1.1",
"pear-pear.php.net/net_useragent_mobile": "1.0.0",
"pear-pear.php.net/validate": "0.8.5",
"pear-pear.php.net/var_dump": "1.0.4",
"pear-pear.php.net/xml_parser": "1.3.4",
"pear-pear.php.net/xml_rss": "1.0.2",
"symfony/console": "2.2.*",
"symfony/yaml": "2.2.*",
"jakeasmith/http_build_url": "1.0.*",
"dropbox/dropbox-php-sdk": "dev-master"
}
}
В этом заменим "dropbox/dropbox-php-sdk": “dev-master” на то, что было опубликовано добровольцами.
"kunalvarma05/dropbox-php-sdk": "dev-master"
Таким образом, если выполнить ./composer.phar install, оно должно завершиться успешно.
Изменим права доступа.
chmod 0777 data/* rep2/ic
И затем, поскольку sqlite не будет работать как есть, отредактируйте php.ini и раскомментируйте или добавьте эти две строки:
extension=pdo_sqlite
extension=sqlite3
Выполним следующее для проверки.
php scripts/p2cmd.php check

Похоже, все в порядке.
Теперь протестируем это и получим доступ к localhost:8080.
cd rep2
php -S localhost:8080 web.php

...
Итак, поскольку можно подтвердить, что выдаются ошибки, мы будем редактировать это дальше.
Хотя велика вероятность, что я брошу это на полпути, я хочу создать мультиплатформенную среду, которая будет работать, если есть HTTP, поэтому я буду потихоньку продолжать, следуя настроению.
Не забывая о славе прошлых добровольцев, я постараюсь это продолжить!
Если не получится, извините (^o^)
Простите, мяу...
/ ̄ ̄ヽ ̄ ̄\
∠ レ | ⌒ヽ
\__ノ丶 )|
(_と__ノ⊂ニノ