]> git.pld-linux.org Git - packages/lizardfs.git/blob - lizardfs.spec
Fix for paths in example config files.
[packages/lizardfs.git] / lizardfs.spec
1 # TODO:
2 # - Add daemon startup scripts
3 #   https://github.com/moosefs/moosefs/blob/master/systemd/moosefs-master.service.in
4 # - Verify if CGI server works, dependencies
5 # - Fix x32 asm code inside crcutil-1.0
6 # - Consider using external libcrcutil package
7
8 Summary:        Open Source Distributed File System
9 Summary(pl.UTF-8):      Rozporoszony system plików Open Source
10 Name:           lizardfs
11 Version:        3.9.4
12 Release:        0.4
13 License:        GPL v3
14 Group:          Applications
15 Source0:        https://github.com/lizardfs/lizardfs/archive/v.%{version}.tar.gz
16 # Source0-md5:  71766d18a5066506e54d952ab6056bd3
17 Patch0:         %{name}-cmake_fix.patch
18 URL:            https://github.com/lizardfs/lizardfs
19 BuildRequires:  /usr/bin/a2x
20 BuildRequires:  asciidoc
21 BuildRequires:  boost-devel
22 BuildRequires:  cmake >= 3.4.0
23 BuildRequires:  docbook-dtd45-xml
24 BuildRequires:  libfuse-devel
25 BuildRequires:  pkgconfig
26 BuildRequires:  rpmbuild(macros) >= 1.202
27 BuildRequires:  zlib-devel
28 ExclusiveArch:  %{ix86} %{x8664}
29
30 # Requires:
31 Requires(postun):       /usr/sbin/groupdel
32 Requires(postun):       /usr/sbin/userdel
33 Requires(pre):  /bin/id
34 Requires(pre):  /usr/bin/getgid
35 Requires(pre):  /usr/sbin/groupadd
36 Requires(pre):  /usr/sbin/useradd
37 Provides:       group(mfs)
38 Provides:       user(mfs)
39 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40
41 %description
42 LizardFS is a highly reliable, scalable and efficient distributed file
43 system. It spreads data over a number of physical servers, making it
44 visible to an end user as a single file system.
45
46 %description -l pl.UTF-8
47 LizardFS is jest niezawodnym, skalowalnym i efektywnym rozproszonym
48 systemem plików. Rozkłada dane na rózne fizyczne serwery, dająć
49 użytkownikowi końcowemu widok pojedynczego systemu plików.
50
51 %package master
52 Summary:        Master/shadow metadata server
53 Group:          Applications
54 Requires:       %{name} = %{version}-%{release}
55
56 %description master
57 Master/shadow metadata server
58
59 %package chunkserver
60 Summary:        Chunk server
61 Group:          Applications
62 Requires:       %{name} = %{version}-%{release}
63
64 %description chunkserver
65 Chunk server
66
67 %package metalogger
68 Summary:        Metalogger
69 Group:          Applications
70 Requires:       %{name} = %{version}-%{release}
71
72 %description metalogger
73 Metalogger
74
75 %package cgiserver
76 Summary:        CGI server
77 Group:          Applications
78 Requires:       %{name} = %{version}-%{release}
79
80 %description cgiserver
81 CGI server
82
83 %prep
84 %setup -q -n %{name}-v.%{version}
85 %patch0 -p1
86
87 %build
88 install -d build
89 cd build
90 %cmake  ../   \
91       -DBUILD_SHARED_LIBS=FALSE \
92       -DCMAKE_INSTALL_PREFIX:PATH=/  \
93       -DENABLE_DEBIAN_PATHS=TRUE
94       
95 %{__make}
96
97 %install
98 rm -rf $RPM_BUILD_ROOT
99 cd build
100 %{__make} install \
101         DESTDIR=$RPM_BUILD_ROOT
102
103 # %{_prefix}%{_sysconfdir}/mfs/ ?
104 install -d $RPM_BUILD_ROOT%{_sysconfdir}
105 ## mv $RPM_BUILD_ROOT%{_prefix}%{_sysconfdir}/mfs/ $RPM_BUILD_ROOT%{_sysconfdir}/mfs/
106
107 install -d $RPM_BUILD_ROOT/var/lib/%{name}
108 cp $RPM_BUILD_ROOT/var/lib/mfs/metadata.mfs.empty $RPM_BUILD_ROOT%{_sysconfdir}/mfs/
109 install -d $RPM_BUILD_ROOT/var/lib/%{name}/master
110 install -d $RPM_BUILD_ROOT/var/lib/%{name}/chunkserver
111 mv $RPM_BUILD_ROOT/var/lib/mfs/metadata.mfs.empty $RPM_BUILD_ROOT/var/lib/%{name}/master/metadata.mfs
112
113 %clean
114 rm -rf $RPM_BUILD_ROOT
115
116 %pre
117 # NOTE: Using same user/group (mfs) as for MooseFS from mfs.spec
118 %groupadd -g 282 mfs
119 %useradd -u 282 -d /var/lib/%{name} -g mfs -c "MooseFS/LizardFS Daemon" mfs
120
121 %postun
122 if [ "$1" = "0" ]; then
123         %userremove mfs
124         %groupremove mfs
125 fi
126
127 %files
128 %defattr(644,root,root,755)
129 %doc doc COPYING README UPGRADE NEWS INSTALL
130 %dir %{_sysconfdir}/mfs
131 %dir %attr(750,root,root) /var/lib/%{name}
132 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/globaliolimits.cfg.dist
133 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/iolimits.cfg.dist
134 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfsexports.cfg.dist
135 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfsgoals.cfg.dist
136 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfsmount.cfg.dist
137 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfstopology.cfg.dist
138 %attr(755,root,root) %{_bindir}/lizardfs-admin
139 %attr(755,root,root) %{_bindir}/lizardfs-probe
140 %attr(755,root,root) %{_bindir}/mfsappendchunks
141 %attr(755,root,root) %{_bindir}/mfscheckfile
142 %attr(755,root,root) %{_bindir}/mfsdeleattr
143 %attr(755,root,root) %{_bindir}/mfsdirinfo
144 %attr(755,root,root) %{_bindir}/mfsfileinfo
145 %attr(755,root,root) %{_bindir}/mfsfilerepair
146 %attr(755,root,root) %{_bindir}/mfsgeteattr
147 %attr(755,root,root) %{_bindir}/mfsgetgoal
148 %attr(755,root,root) %{_bindir}/mfsgettrashtime
149 %attr(755,root,root) %{_bindir}/mfsmakesnapshot
150 %attr(755,root,root) %{_bindir}/mfsmount
151 %attr(755,root,root) %{_bindir}/mfsrepquota
152 %attr(755,root,root) %{_bindir}/mfsrgetgoal
153 %attr(755,root,root) %{_bindir}/mfsrgettrashtime
154 %attr(755,root,root) %{_bindir}/mfsrsetgoal
155 %attr(755,root,root) %{_bindir}/mfsrsettrashtime
156 %attr(755,root,root) %{_bindir}/mfsseteattr
157 %attr(755,root,root) %{_bindir}/mfssetgoal
158 %attr(755,root,root) %{_bindir}/mfssetquota
159 %attr(755,root,root) %{_bindir}/mfssettrashtime
160 %attr(755,root,root) %{_bindir}/mfssnapshot
161 %attr(755,root,root) %{_bindir}/mfstools
162 %attr(755,root,root) %{_sbindir}/mfsmetadump
163 %attr(755,root,root) %{_sbindir}/mfsmetarestore
164 %attr(755,root,root) %{_sbindir}/mfsrestoremaster
165 %{_mandir}/man1/mfs*.1*
166 %{_mandir}/man5/globaliolimits.cfg.5*
167 %{_mandir}/man5/iolimits.cfg.5*
168 %{_mandir}/man5/mfs*.cfg.5*
169 %{_mandir}/man7/lizardfs.7*
170 %{_mandir}/man7/mfs.7
171 %{_mandir}/man7/moosefs.7
172 %{_mandir}/man8/lizardfs-admin.8*
173 %{_mandir}/man8/lizardfs-cgiserver.8*
174 %{_mandir}/man8/lizardfs-probe.8
175 %{_mandir}/man8/mfs*.8*
176
177 %files master
178 %defattr(644,root,root,755)
179 %attr(755,root,root) %{_sbindir}/mfsmaster
180 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfsmaster.cfg.dist
181 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/metadata.mfs.empty
182 %dir %attr(750,mfs,mfs) /var/lib/%{name}/master
183 %config(noreplace) %verify(not md5 mtime size) /var/lib/%{name}/master/metadata.mfs
184
185 %files chunkserver
186 %defattr(644,root,root,755)
187 %attr(755,root,root) %{_sbindir}/mfschunkserver
188 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfschunkserver.cfg.dist
189 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfshdd.cfg.dist
190 %dir %attr(750,mfs,mfs) /var/lib/%{name}/chunkserver
191
192 %files metalogger
193 %defattr(644,root,root,755)
194 %attr(755,root,root) %{_sbindir}/mfsmetalogger
195 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mfs/mfsmetalogger.cfg.dist
196 # %dir %attr(750,mfs,mfs) /var/lib/%{name}/metalogger
197
198 %files cgiserver
199 %defattr(644,root,root,755)
200 %attr(755,root,root) %{_sbindir}/lizardfs-cgiserver
201 %attr(755,root,root) %{_sbindir}/mfscgiserv
202 %{_datadir}/mfscgi/
203 # %dir %attr(750,mfs,mfs) /var/lib/%{name}/cgiserver
This page took 0.160452 seconds and 3 git commands to generate.