Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:gladiac:apps
bookstack
bookstack.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bookstack.spec of Package bookstack
# # spec file for package specRPM_CREATION_NAME # # Copyright (c) specCURRENT_YEAR SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %if "x%{?bookstack_php}" == "x" %global bookstack_php php8 %endif %define bookstack_configdir %{_sysconfdir}/%{name} %define bookstack_basedir /srv/www/webapps/%{name} %define bookstack_docroot /srv/www/webapps/%{name}/public %define bookstack_upload %{bookstack_basedir}/storage/uploads %define bookstack_homedir /var/lib/%{name} %define bookstack_cachedir /var/cache/%{name} %define bookstack_sessiondir %{bookstack_cachedir}/sessions %define bookstack_tmpdir %{bookstack_cachedir}/tmp %define bookstack_logdir /var/log/%{name} %define bookstack_upgrade_trigger %{bookstack_basedir}/storage/framework/pending_upgrade %global bookstack_services bookstack-queue.service %define apparmor_dir /etc/apparmor.d/php-fpm.d %define php_fpm_d /etc/%{bookstack_php}/fpm/php-fpm.d %define user_group_name bookstack %define pkg_name BookStack Name: bookstack Version: 24.05.1 Release: 0 Summary: An opinionated wiki system License: MIT Group: Productivity/Publishing/Other URL: https://github.com/BookStackApp/BookStack Source0: %{url}/archive/refs/tags/v%{version}/%{pkg_name}-%{version}.tar.gz Source1: %{pkg_name}-%{version}-vendor.tar.zst Source2: bookstack.conf Source3: bookstack-php-fpm.conf Source4: bookstack-apparmor.conf Source10: bookstack-manage.sh Source11: bookstack-upgrade.sh Source12: bookstack-queue.service Source20: bookstack.logrotate Patch0: bookstack-config-path.patch Patch1: bookstack-app-path.patch BuildArch: noarch BuildRequires: %{bookstack_php} BuildRequires: %{bookstack_php}-cli BuildRequires: %{bookstack_php}-curl BuildRequires: %{bookstack_php}-dom BuildRequires: %{bookstack_php}-fileinfo BuildRequires: %{bookstack_php}-fpm BuildRequires: %{bookstack_php}-gd BuildRequires: %{bookstack_php}-iconv %if "%{bookstack_php}" == "php7" BuildRequires: %{bookstack_php}-json %endif BuildRequires: %{bookstack_php}-mbstring BuildRequires: %{bookstack_php}-mysql BuildRequires: %{bookstack_php}-openssl BuildRequires: %{bookstack_php}-pdo BuildRequires: %{bookstack_php}-tokenizer BuildRequires: %{bookstack_php}-xmlwriter BuildRequires: apparmor-abstractions BuildRequires: apparmor-rpm-macros BuildRequires: fdupes BuildRequires: logrotate BuildRequires: php-fpm-apparmor BuildRequires: rsync BuildRequires: zstd Requires: %{bookstack_php} Requires: %{bookstack_php}-curl Requires: %{bookstack_php}-dom Requires: %{bookstack_php}-fileinfo Requires: %{bookstack_php}-gd Requires: %{bookstack_php}-iconv Requires: %{bookstack_php}-mbstring Requires: %{bookstack_php}-mysql Requires: %{bookstack_php}-openssl Requires: %{bookstack_php}-pdo Requires: %{bookstack_php}-tokenizer Requires: %{bookstack_php}-xmlwriter Requires(post): %{bookstack_php}-cli Requires(posttrans): %{bookstack_php}-cli %if "%{bookstack_php}" == "php7" Requires(post): %{bookstack_php}-json Requires(posttrans): %{bookstack_php}-json %endif Requires: sudo Requires(post): sudo Requires(posttrans): sudo Recommends: bookstack-php-fpm Suggests: logrotate %description BookStack is an opinionated wiki system that provides a pleasant and simple out-of-the-box experience. It is a platform to create documentation/wiki content built with PHP & Laravel %package php-fpm Group: Productivity/Networking/Web/Utilities %requires_eq %{bookstack_php}-fpm %requires_eq php-fpm-apparmor Requires: apparmor-abstractions Requires: bookstack = %{version} Summary: BookStack - PHP FPM configuration %description php-fpm BookStack is an opinionated wiki system. This package holds the php-fpm configuration. %prep %autosetup -n %{pkg_name}-%{version} -p1 -a1 find -name "\.git*" -print0 | xargs -0 rm -rf for S in $(grep -l '#!.*php' \ artisan \ vendor/bin/* \ vendor/doctrine/dbal/bin/* \ vendor/league/commonmark/bin/* \ vendor/league/html-to-markdown/bin/* \ vendor/masterminds/html5/bin/* \ vendor/mtdowling/jmespath.php/bin/* \ vendor/nesbot/carbon/bin/* \ vendor/nikic/php-parser/bin/* \ vendor/predis/predis/bin/* \ vendor/psy/psysh/bin/* \ vendor/symfony/console/Resources/bin/* \ vendor/symfony/error-handler/Resources/bin/* \ vendor/symfony/mime/Resources/bin/* \ vendor/symfony/string/Resources/bin/* \ vendor/symfony/translation/Resources/bin/* \ vendor/symfony/var-dumper/Resources/bin/* \ ) ; do SB="${S}.backup" cp ${S} ${SB} perl -p -i -e 's|#!/usr/bin/env php|#!%{_bindir}/php|g' $S diff -urN ${SB} ${S} || : rm ${SB} done %build %install install -d -m 0755 \ %{buildroot}/%{bookstack_basedir} \ %{buildroot}/%{bookstack_docroot} rsync -av \ app \ artisan \ bootstrap \ database \ lang \ resources \ routes \ storage \ themes \ vendor \ composer.json \ composer.lock \ version \ %{buildroot}%{bookstack_basedir} rsync -av \ public/ \ %{buildroot}/%{bookstack_docroot} install -d -m 0770 \ %{buildroot}/%{bookstack_configdir} \ %{buildroot}/%{bookstack_datadir} \ %{buildroot}/%{bookstack_docroot}/uploads/images \ %{buildroot}/%{bookstack_sessiondir} \ %{buildroot}/%{bookstack_tmpdir} \ %{buildroot}/%{bookstack_logdir} install -d -m 0770 \ %{buildroot}/%{bookstack_homedir} \ %{buildroot}/%{bookstack_homedir}/storage/framework \ # config file install -m 0600 %{SOURCE2} %{buildroot}%{bookstack_configdir}/bookstack.conf # php-fpm install -d -m 0755 %{buildroot}%{php_fpm_d} install -m 0644 %{SOURCE3} %{buildroot}%{php_fpm_d}/bookstack.conf # apparmor install -d -m 0755 %{buildroot}%{apparmor_dir} install -m 0644 %{SOURCE4} %{buildroot}%{apparmor_dir}/bookstack # manage script install -d -m 0755 %{buildroot}%{_sbindir} install -m 0750 %{SOURCE10} %{buildroot}%{_sbindir}/bookstack-manage install -m 0750 %{SOURCE11} %{buildroot}%{_sbindir}/bookstack-upgrade # systemd and rcservice install -d -m 0755 %{buildroot}%{_unitdir} install -m 0644 %{SOURCE12} %{buildroot}%{_unitdir}/bookstack-queue.service install -d -m 0755 %{buildroot}%{_sbindir} ln -s /sbin/service %{buildroot}%{_sbindir}/rcbookstack-queue # fix permissions find %{buildroot}%{bookstack_docroot} -type f | xargs chmod -x find %{buildroot}%{bookstack_basedir}/resources -type f | xargs chmod -x find %{buildroot}%{bookstack_basedir}/vendor -type f | xargs chmod -x touch %{buildroot}/%{bookstack_logdir}/upgrade.log # logrotate install -d -m 0755 %{buildroot}%{_sysconfdir}/logrotate.d install -m 0644 %{SOURCE20} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} # Find duplicates %fdupes %{buildroot}%{bookstack_basedir} %pre /usr/sbin/groupadd -r %{user_group_name} &>/dev/null || : /usr/sbin/useradd -g %{user_group_name} -s /bin/false -r -c "%{name}" -d %{bookstack_homedir} %{user_group_name} &>/dev/null || : %service_add_pre %{bookstack_services} %post if grep -q "APP_KEY=SomeRandomString" %{bookstack_configdir}/bookstack.conf; then /usr/sbin/bookstack-manage key:generate --force fi %service_add_post %{bookstack_services} %preun %service_del_preun %{bookstack_services} %postun if [ -x "%{_sbindir}/bookstack-upgrade" ]; then touch %{bookstack_upgrade_trigger} fi %service_del_postun %{bookstack_services} %posttrans if [ -x "%{_sbindir}/bookstack-upgrade" ]; then %{_sbindir}/bookstack-upgrade fi %files %license LICENSE %doc readme.md %dir /srv/www/webapps %{_sbindir}/bookstack-manage %{_sbindir}/bookstack-upgrade %{_sbindir}/rcbookstack-queue %{_unitdir}/bookstack-queue.service %dir %{_sysconfdir}/logrotate.d %config(noreplace) %{_sysconfdir}/logrotate.d/%{name} %defattr(-,root,%{user_group_name}) %dir %{bookstack_basedir} %{bookstack_basedir}/app %{bookstack_basedir}/artisan %dir %{bookstack_basedir}/bootstrap %{bookstack_basedir}/bootstrap/app.php %{bookstack_basedir}/bootstrap/phpstan.php %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_basedir}/bootstrap/cache %{bookstack_basedir}/database %{bookstack_basedir}/lang %{bookstack_basedir}/resources %{bookstack_basedir}/routes %dir %{bookstack_basedir}/storage %{bookstack_basedir}/storage/app %{bookstack_basedir}/storage/clockwork %{bookstack_basedir}/storage/fonts %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_basedir}/storage/framework %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_basedir}/storage/framework/cache %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_basedir}/storage/framework/sessions %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_basedir}/storage/framework/views %{bookstack_basedir}/storage/logs %{bookstack_basedir}/themes %{bookstack_basedir}/vendor %{bookstack_basedir}/composer.json %{bookstack_basedir}/composer.lock %{bookstack_basedir}/version %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_upload} %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_upload}/files %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_upload}/images %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_cachedir} %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_sessiondir} %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_tmpdir} %dir %{bookstack_docroot} %{bookstack_docroot}/.htaccess %{bookstack_docroot}/book_default_cover.png %{bookstack_docroot}/dist %{bookstack_docroot}/icon.ico %{bookstack_docroot}/icon-32.png %{bookstack_docroot}/icon-64.png %{bookstack_docroot}/icon-128.png %{bookstack_docroot}/icon-180.png %{bookstack_docroot}/icon.png %{bookstack_docroot}/index.php %{bookstack_docroot}/libs %{bookstack_docroot}/loading.gif %{bookstack_docroot}/loading_error.png %{bookstack_docroot}/logo.png %{bookstack_docroot}/user_avatar.png %{bookstack_docroot}/web.config %dir %{bookstack_docroot}/uploads %dir %attr(0755,%{user_group_name},%{user_group_name}) %{bookstack_docroot}/uploads/images %{bookstack_docroot}/uploads/.htaccess # /etc/bookstack %dir %attr(0750,%{user_group_name},root) %{bookstack_configdir} %config(noreplace) %attr(0640,%{user_group_name},root) %{bookstack_configdir}/bookstack.conf # /var/log/bookstack %dir %attr(0750,%{user_group_name},%{user_group_name}) %{bookstack_logdir} %ghost %attr(0640,bookstack,root) %{bookstack_logdir}/upgrade.log %files php-fpm %config(noreplace) %{php_fpm_d}/bookstack.conf %config(noreplace) %{apparmor_dir}/bookstack %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor