ウェブアプリケーションパッケージガイドライン
2021年9月30日 (木) 15:33時点におけるKusanaginoturugi (トーク | 投稿記録)による版
パッケージ作成ガイドライン
32ビット – CLR – クロス – Eclipse – Electron – Free Pascal – GNOME – Go – Haskell – Java – KDE – カーネル – Lisp – MinGW – Node.js – ノンフリー – OCaml – Perl – PHP – Python – R – Ruby – Rust – VCS – ウェブ – Wine
このページではウェブアプリケーションをパッケージ化する方法を説明します。
Separate user
For security reasons, every web application should be run as a separate (unprivileged) user (i.e. $pkgname
).
Refer to the systemd-sysusers(8), sysusers.d(5), systemd-tmpfiles(8) and tmpfiles.d(5) man pages for details on how to create users and deal with ownership of files and folders for that user in a package.
ディレクトリ構造
The layout follows the FHS.
/usr/share/$pkgname
: The application's data directory holds the files of the web application. Files are owned byroot
and are therefore readonly to the application user and group$pkgname
./etc/$pkgname
: The configuration directory of the application holds configuration files for the application (symlinked to the data directory). Files located here have to go to the backup array and are owned by the user and group$pkgname
.
/run/$pkgname
: The runtime directory of the application (owned by the user and group$pkgname
). It can be used for sockets (e.g. in setups facilitating socket activation).
/var/cache/$pkgname
: The cache directory of the application (owned by the user and group$pkgname
). It (or subfolders in it) is symlinked to the data directory for applications requiring writable cache directories./var/lib/$pkgname
: The persistent storage of the application (owned by the user and group$pkgname
). It (or subfolders in it) is symlinked to the data directory for applications requiring persistent storage directories.