/[packages]/backports/8/nextcloud/current/SPECS/nextcloud.spec
ViewVC logotype

Contents of /backports/8/nextcloud/current/SPECS/nextcloud.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1340645 - (show annotations) (download)
Wed Dec 12 14:58:01 2018 UTC (5 years, 4 months ago) by zezinho
Original Path: cauldron/nextcloud/current/SPECS/nextcloud.spec
File size: 6577 byte(s)
new version 14.4.0 requiring php 7
1 %define version 14.0.4
2 %define rel 1
3 %define prerel %{nil}
4
5 %if "%{prerel}" != "%{nil}"
6 %define lc_prerel %(echo %{prerel} | tr "A-Z" "a-z")
7 %define release %mkrel 1.%{lc_prerel}.%{rel}
8 %else
9 %define release %mkrel %{rel}
10 %endif
11
12 # exclude PHP dependencies as long as their usage is not proven
13 %define __requires_exclude_from ^%{_datadir}/.*$
14 %define __jar_repack %{nil}
15
16 Summary: Open personal cloud
17 Name: nextcloud
18 Version: %{version}
19 Release: %{release}
20 License: AGPLv3
21 Group: Networking/WWW
22 Url: http://nextcloud.com
23 Source0: https://download.nextcloud.com/server/releases/%{name}-%{version}%{?prerel}.tar.bz2
24 Source1: %{name}-httpd.conf
25 Source2: %{name}-httpd.inc
26 Source4: %{name}-mysql.txt
27 Source5: %{name}-postgresql.txt
28 Source7: %{name}-config.php
29 # Disable the integrity checking whilst a better way to deal with it is found
30 Patch5: %{name}-14.4.0-default_integrity_check_disabled.patch
31 # Direct the admin to the correct cli command for upgrades
32 Patch9: %{name}-12.0.2-correct-cli-upgrade.patch
33 Requires: apache-mod_php
34 Requires: php-curl > 7.0
35 Requires: php-dom
36 Requires: php-exif
37 Requires: php-fileinfo
38 Requires: php-gd
39 Requires: php-iconv
40 Requires: php-json
41 Requires: php-ldap
42 Requires: php-mbstring
43 Requires: php-openssl
44 Requires: php-pcre
45 Recommends: php-pcntl
46 Requires: php-pdo
47 Requires: php-session
48 Requires: php-simplexml
49 Requires: php-xmlwriter
50 Requires: php-zip
51 Requires: php-filter
52 Requires: %{name}-database = %{version}-%{release}
53 BuildArch: noarch
54
55 %description
56 A personal cloud server which runs on you personal server
57 and enables accessing your data from everywhere and sharing
58 with other people.
59
60 %package mysql
61 Summary: MySQL database support for NextCloud
62 Provides: %{name}-database = %{version}-%{release}
63 Requires: %{name} = %{version}-%{release}
64 # From getSupportedDatabases, mysql => pdo, mysql
65 Requires: php-pdo_mysql
66
67 %description mysql
68 This package ensures the necessary dependencies are in place for NextCloud to
69 work with MySQL / MariaDB databases. It does not require a MySQL / MariaDB
70 server to be installed, as you may well wish to use a remote database
71 server.
72 If you want the database to be on the same system as NextCloud itself, you must
73 also install and enable a MySQL / MariaDB server package. See README.mysql for
74 more details.
75
76 %package postgresql
77 Summary: PostgreSQL database support for NextCloud
78 Provides: %{name}-database = %{version}-%{release}
79 Requires: %{name} = %{version}-%{release}
80 # From getSupportedDatabases, pgsql => function, pg_connect
81 Requires: php-pdo_pgsql
82
83 %description postgresql
84 This package ensures the necessary dependencies are in place for NextCloud to
85 work with a PostgreSQL database. It does not require the PostgreSQL server
86 package to be installed, as you may well wish to use a remote database
87 server.
88 If you want the database to be on the same system as NextCloud itself, you must
89 also install and enable the PostgreSQL server package. See README.postgresql
90 for more details.
91
92 %package sqlite
93 Summary: SQLite 3 database support for NextCloud
94 Provides: %{name}-database = %{version}-%{release}
95 Requires: %{name} = %{version}-%{release}
96 # From getSupportedDatabases, pgsql => class, SQLite3
97 Requires: php-pdo_sqlite php-pcre
98
99 %description sqlite
100 This package ensures the necessary dependencies are in place for NextCloud to
101 work with an SQLite 3 database stored on the local system.
102
103 %prep
104 %setup -q -n %{name}
105 %autopatch -p 1
106 cp %{SOURCE4} README.mysql
107 cp %{SOURCE5} README.postgresql
108
109 # drop upstream update notification app
110 rm -rf apps/updatenotification
111 # also remove the actual updater
112 rm -rf updater
113
114 %install
115 install -d -m 755 %{buildroot}%{_datadir}/%{name}
116 # create nextcloud datadir
117 install -d -m 755 %{buildroot}%{_localstatedir}/lib/%{name}/data
118 # create writable app dir for appstore
119 install -d -m 755 %{buildroot}%{_localstatedir}/lib/%{name}/apps
120 # create nextcloud sysconfdir
121 install -d -m 755 %{buildroot}%{_sysconfdir}/%{name}
122
123 # install content
124 for d in $(find . -mindepth 1 -maxdepth 1 -type d | grep -v config); do
125 cp -a "$d" %{buildroot}%{_datadir}/%{name}
126 done
127
128 for f in {*.php,*.html,occ,robots.txt}; do
129 install -p -m 644 "$f" %{buildroot}%{_datadir}/%{name}
130 done
131
132 # symlink config dir
133 ln -sf %{_sysconfdir}/%{name} %{buildroot}%{_datadir}/%{name}/config
134
135 # nextcloud looks for ca-bundle.crt in config dir
136 ln -sf %{_sysconfdir}/pki/tls/certs/ca-bundle.crt %{buildroot}%{_sysconfdir}/%{name}/ca-bundle.crt
137
138 # set default config
139 install -p -m 644 %{SOURCE7} %{buildroot}%{_sysconfdir}/%{name}/config.php
140
141 install -D -m 644 %{SOURCE1} %{buildroot}%{webappconfdir}/%{name}.conf
142 install -D -m 644 %{SOURCE2} %{buildroot}%{webappconfdir}/%{name}.inc
143
144 cat > %{buildroot}%{_datadir}/%{name}/.htaccess <<EOF
145 # Version: %{version}
146 EOF
147
148 install -d -m 755 %{buildroot}%{_sysconfdir}/cron.d
149 cat > %{buildroot}%{_sysconfdir}/cron.d/%{name} <<EOF
150 # Run cron from to execute task even when no user connected
151 */15 * * * * apache /usr/bin/php -f /usr/share/nextcloud/cron.php
152 EOF
153
154 cat > README.urpmi <<EOF
155 Upgrade information
156
157 Starting with Nextcloud version 12, the config file changes a lot.
158 When upgrading from a previous version, you will have to edit by yourself
159 the config file using /etc/nextcloud/config.php.rpmnew as reference.
160 EOF
161
162
163 %pre
164 # on update from previous release, move data directory from
165 # %{_localstatedir}/lib/%{name} to %{_localstatedir}/lib/%{name}/data
166 if [ $1 -gt 1 ] ; then
167 if [ -d %{_localstatedir}/lib/%{name}/ -a ! -d %{_localstatedir}/lib/%{name}/data ]; then
168 mv %{_localstatedir}/lib/%{name} %{_localstatedir}/lib/%{name}.tmp
169 mkdir %{_localstatedir}/lib/%{name}
170 mv %{_localstatedir}/lib/%{name}.tmp %{_localstatedir}/lib/%{name}/data
171 fi
172 fi
173
174
175 %files
176 %doc AUTHORS config/config.sample.php README.urpmi
177
178 %dir %attr(-,apache,apache) %{_sysconfdir}/%{name}
179 %config(noreplace) %attr(0600,apache,apache) %{_sysconfdir}/%{name}/config.php
180 %{_sysconfdir}/%{name}/ca-bundle.crt
181
182 %{_datadir}/%{name}
183
184 %dir %attr(0755,apache,apache) %{_localstatedir}/lib/%{name}
185 %dir %attr(0755,apache,apache) %{_localstatedir}/lib/%{name}/apps
186 %dir %attr(0750,apache,apache) %{_localstatedir}/lib/%{name}/data
187
188 %config(noreplace) %{webappconfdir}/nextcloud.conf
189 %config(noreplace) %{webappconfdir}/nextcloud.inc
190 %config(noreplace) %{_sysconfdir}/cron.d/%{name}
191
192 %files mysql
193 %doc README.mysql
194
195 %files postgresql
196 %doc README.postgresql
197
198 %files sqlite

  ViewVC Help
Powered by ViewVC 1.1.30