]> git.pld-linux.org Git - packages/dar.git/blame - dar.spec
- 2.4.0
[packages/dar.git] / dar.spec
CommitLineData
5f5a8b21 1#
2# Conditional build:
248dd4dd 3%bcond_without ea # build without support for linux extented attributes
12760b79 4%bcond_without static # build without dar_static
9369df59 5%bcond_without static_libs # don't build static libraries
097d504f 6#
a5f8478f 7%if %{with static}
8%define with_static_libs 1
9%endif
10#
fbe89be6 11Summary: dar makes backup of a directory tree and files
83798cfc 12Summary(pl.UTF-8): dar - narzędzie do tworzenia kopii zapasowych drzew katalogów i plików
fbe89be6 13Name: dar
2a49a8ba 14Version: 2.4.0
afbac5c1 15Release: 1
9f50fcb5 16License: GPL v2
0e3cdb42 17Group: Applications/Archiving
845d862f 18Source0: http://dl.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
2a49a8ba 19# Source0-md5: 1e0e02d3c90cdaaaf2850eff25599fba
097d504f 20Patch0: %{name}-opt.patch
fbe89be6 21URL: http://dar.linux.free.fr/
248dd4dd 22%{?with_ea:BuildRequires: attr-devel >= 2.4.16-3}
8732677b 23BuildRequires: autoconf >= 2.59
097d504f 24BuildRequires: automake
efc8da18 25BuildRequires: bzip2-devel
e4cfcb7c 26BuildRequires: doxygen >= 1:1.3
c5440f43 27BuildRequires: e2fsprogs-devel
b9414f71
JB
28%ifarch alpha
29# ICE in 3.3.x up to 3.3.2 - require patched version
30BuildRequires: gcc-c++ >= 5:3.3.2-0.3
31%endif
d900f495 32BuildRequires: gettext-devel
853009b5 33BuildRequires: groff
2a49a8ba 34BuildRequires: libgcrypt
35BuildRequires: libgpg-error
efc8da18 36BuildRequires: libstdc++-devel
57d80953 37BuildRequires: libtool >= 2:1.4d
2a49a8ba 38BuildRequires: lzo-devel
0e3cdb42 39BuildRequires: openssl-devel >= 0.9.7k
efc8da18 40BuildRequires: zlib-devel
42343508 41%if %{with static}
248dd4dd 42%{?with_ea:BuildRequires: attr-static}
efc8da18 43BuildRequires: bzip2-static
5f5a8b21 44BuildRequires: glibc-static
2a49a8ba 45BuildRequires: libgcrypt-static
46BuildRequires: libgpg-error-static
5f5a8b21 47BuildRequires: libstdc++-static
2a49a8ba 48BuildRequires: lzo-static
d900f495 49BuildRequires: openssl-static
5f5a8b21 50BuildRequires: zlib-static
51%endif
5a9f3364 52Requires: %{name}-libs = %{version}-%{release}
fbe89be6 53BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
a5f8478f 55# don't generate `Requires' for sample scripts
56%define _noautoreq bash perl
57
fbe89be6 58%description
fbe89be6 59dar is a shell command, that makes backup of a directory tree and
60files.
61
62FILTERS: dar is able to backup from total file system to a single
63file. Additionally a mechanism of filters permits, based on the
64filename, to exclude or include some files while backing up or
65restoring a directory tree. In the other side, a secondary filter
66mechanism permits to exclude some branches of a directory tree, or to
67only include some branches.
68
69DIFFERENTIAL BACKUP: When making a backup with dar, you have the
70possibility to make a full backup or a differential backup. A full
71backup, as expected makes backup of all files as specified on the
72command line (with or without filters). Instead, a differential
73backup, (over filter mechanism), saves only files that have changed
74since a given reference backup. Additionally, files that existed in
75the reference backup and which do no more exist at the time of the
76differential backup are recorded in the backup. At recovery time,
77(unless you deactivate it), restoring a differential backup will
78update changed files and new files, but also remove files that have
79been recorded as deleted. Note that the reference backup can be a full
80backup or another differential backup. This way you can make a first
81full backup, then many differential backup, each taking as reference
82the last backup made.
83
84SLICES: Dar stands for Disk ARchive. From the beginning it was
85designed to be able to split an archive over several removable media
86whatever their number is and whatever their size is. Thus dar is able
87to save over old floppy disk, CD-R, DVD-R, CD-RW, DVD-RW, Zip, Jazz,
88etc... Dar is not concerned by un/mounting a removable medium, instead
89it is independent of hardware. Given the size, it will split the
90archive in several files (called SLICES), eventually pausing before
91creating the next one, allowing this way, the user to un/mount a
92medium, burn the file on CD-R, send it by email (if your mail system
93does not allow huge file in emails, dar can help you here also). By
94default, (no size specified), dar will make one slice whatever its
95size is. Additionally, the size of the first slice can be specified
96separately, if for example you want first to fulfil a partially filled
97disk before starting using empty ones. Last, at restoration time, dar
98will just pause and prompt the user asking a slice only if it is
99missing.
100
101COMPRESSION: last, dar can use compression. By default no compression
102is used. Actually only gzip algorithm is implemented, but some room
103has been done for bzip2 and any other compression algorithm. Note
104that, compression is made before slices, which means that using
105compression with slices, will not make slices smaller, but will
106probably make less slices in the backup.
107
108DIRECT ACCESS: even using compression dar has not to read the whole
109backup to extract one file. This way if you just want to restore one
110file from a huge backup, the process will be much faster than using
111tar. Dar first reads the catalogue (i.e. the contents of the backup),
112then it goes directly to the location of the saved file(s) you want to
113restore and proceed to restoration. In particular using slices dar
114will ask only for the slice(s) containing the file(s) to restore.
115
116HARD LINK CONSIDERATION: hard links are now properly saved. They are
117properly restored if possible. If for example restoring across a
118mounted filesystem, hard linking will fail, but dar will then
119duplicate the inode and file content, issuing a warning.
120
121EXTENDED ATTRIBUTES: support for extended attributes have to be
122activated at compilation time (see INSTALL). Dar is able to save and
123restore EA, all or just those of a given namespace (system or user).
124If no EA have been saved and restoration occurs over a file that has
125EA, they will be preserved. But if they have been saved empty for a
126given file, any existing EA for that file will be removed at
127restoration time, unless -u and/or -U is given on command-line.
128
129ARCHIVE TESTING thanks to CRC (cyclic redundancy checks), dar is able
130to detect data corruption in the archive. Only the file where data
131corruption occurred will not be possible to restore, but dar will
132restore the other even when compression is used.
133
134USING PIPES dar is now able to produce an archive to its standard
135output or named pipe. it is also able to read an archive through a
136pair of pipes, to take a remote archive as reference, or even to
137restore data from a remote archive. This way it is now possible to
138store an archive remotely and in total security (if using encrypted
139means)
140
141ISOLATION the catalogue (i.e.: the contents of an archive), can be
142extracted (this operation is called isolation) to a small file, that
143can in turn be used as reference for differential archive. There is no
144more need to provide an archive to be able to create a differential
145backup over it, just its catalogue is necessary.
146
147RE-SHAPE SLICES OF AN EXISTING ARCHIVE the external program named
148"dar_xform" is able to change the size of slices of a given archive.
149The resulting archive is totally identical to archives directly
150created by dar. Source archive can be taken from a set of slice, from
151standard input or even a named pipe.
152
9b828d75
JR
153%description -l pl.UTF-8
154dar jest poleceniem powłoki, które tworzy kopie zapasowe drzew
155katalogów i plików. Możliwości:
156- Filtry: dar może tworzyć kopię zapasową całego systemu plików do
157 pojedynczego pliku; mechanizm filtrów pozwala wyłączać lub dołączać
b0d714a3 158 pliki przy tworzeniu kopii lub odtwarzaniu z niej.
9b828d75
JR
159- Backup różnicowy: dar może tworzyć kopie pełne lub różnicowe
160 (zawierające tylko te pliki, które zmieniły się od innego backupu)
161- Części (slices): dar oznacza "Disk ARchive". Od początku ma
162 możliwość dzielenia archiwów na różne nośniki wymienialne,
163 niezależnie od ich liczby i rozmiaru (można tworzyć kopie na CD-R,
b0d714a3 164 DVD-R, CD-RW, Zip, Jazz...).
9b828d75 165- Kompresja: domyślnie dar nie kompresuje danych; ma zaimplementowany
b0d714a3 166 algorytm gzip, jest przygotowywany do bzip2 i innych. Kompresja jest
9b828d75
JR
167 wykonywana przed podziałem na części.
168- Bezpośredni dostęp: nawet w przypadku użycia kompresji, dar nie musi
169 czytać całej kopii aby odtworzyć jeden plik. Najpierw odczytuje
170 katalog, następnie skacze od razu do właściwego miejsca.
171- Obsługa twardych dowiązań: dar zachowuje i odtwarza je w miarę
172 możliwości; w przypadku niemożliwości wykonania dowiązania, powiela
173 plik i wypisuje ostrzeżenie.
174- Obsługa rozszerzonych atrybutów (zależnie od opcji kompilacji): dar
175 potrafi zachowywać i odtwarzać rozszerzone atrybuty - wszystkie lub
176 tylko dotyczące danej przestrzeni nazw (systemowej lub użytkownika).
177- Testowanie archiwów: dzięki użyciu CRC dar wykrywa uszkodzone dane;
178 tylko uszkodzone pliki nie zostaną odtworzone, reszta tak - nawet w
179 przypadku użycia kompresji.
180- Użycie rurek - dar może wyprodukować archiwum na standardowe wyjście
181 lub do nazwanej rurki. Może także czytać archiwum z pary rurek, a
182 nawet odtwarzać ze zdalnego archiwum.
183- Rozdzielenie: katalog (zawartość archiwum) może być wyciągnięty do
184 małego pliku, który może być używany jako odniesienie dla
185 różnicowego backupu.
186- Przekształcanie części istniejącego archiwum: zewnętrzny program o
187 nazwie dar_xform jest w stanie zmieniać rozmiary części podanego
188 archiwum. Może czytać z zestawu kawałków, standardowego wejścia lub
b0d714a3
JB
189 nazwanej rurki.
190
5f5a8b21 191%package static
b67216c8 192Summary: Static version of dar backup tool
83798cfc 193Summary(pl.UTF-8): Statyczna wersja archiwizatora dar
5f5a8b21 194Group: Applications
195
196%description static
197Static version of dar backup tool.
198
9b828d75 199%description static -l pl.UTF-8
5f5a8b21 200Statyczna wersja archiwizatora dar.
201
5a9f3364
JB
202%package libs
203Summary: Shared version of dar library
83798cfc 204Summary(pl.UTF-8): Współdzielona wersja biblioteki dar
c8a764ad 205Group: Libraries
5a9f3364
JB
206
207%description libs
208Shared version of dar library.
209
9b828d75
JR
210%description libs -l pl.UTF-8
211Współdzielona wersja biblioteki dar.
5a9f3364 212
09a398d2 213%package devel
c8a764ad 214Summary: Header files to develop dar software
83798cfc 215Summary(pl.UTF-8): Pliki nagłówkowe biblioteki dar
c8a764ad 216Group: Development/Libraries
217Requires: %{name}-libs = %{version}-%{release}
b7684ca4
JB
218%{?with_ea:Requires: attr-devel >= 2.4.16-3}
219Requires: bzip2-devel
220Requires: libstdc++-devel
c33a8d55 221Requires: openssl-devel
3cc31188 222Requires: zlib-devel
09a398d2 223
224%description devel
097d504f 225Header files to develop software which operates on dar.
09a398d2 226
9b828d75
JR
227%description devel -l pl.UTF-8
228Pliki nagłówkowe potrzebne do rozwoju oprogramowania korzystającego z
097d504f
JB
229dara.
230
231%package libs-static
232Summary: Static version of dar library
83798cfc 233Summary(pl.UTF-8): Statyczna wersja biblioteki dar
c8a764ad 234Group: Development/Libraries
235Requires: %{name}-devel = %{version}-%{release}
097d504f
JB
236
237%description libs-static
238Static version of dar library.
239
9b828d75 240%description libs-static -l pl.UTF-8
097d504f 241Statyczna wersja biblioteki dar.
09a398d2 242
bca9e56e 243%package doc
244Summary: dar - documentation
83798cfc 245Summary(pl.UTF-8): dar - dokumentacja
bca9e56e 246Group: Documentation
247Requires: %{name} = %{version}-%{release}
248
249%description doc
250Dar ducumentation.
251
aa8e3fd8 252%description doc -l pl.UTF-8
bca9e56e 253Dokumentacja dla dar.
254
fbe89be6 255%prep
256%setup -q
e42712d8 257%patch0 -p1
fbe89be6 258
259%build
a5f8478f 260%{__gettextize}
09a398d2 261%{__libtoolize}
262%{__aclocal}
263%{__autoconf}
264%{__autoheader}
265%{__automake}
266%configure \
bac87f6c 267 %{!?with_ea:--disable-ea-support} \
248dd4dd 268 %{!?with_static:--disable-dar-static} \
a5f8478f 269 --enable-static=%{?with_static_libs:yes}%{!?with_static_libs:no} \
12760b79 270 --enable-mode=64 \
09a398d2 271 --disable-upx
272%{__make}
fbe89be6 273
274%install
275rm -rf $RPM_BUILD_ROOT
42343508 276%{?with_static:install -d $RPM_BUILD_ROOT/bin}
5f5a8b21 277
097d504f
JB
278%{__make} install \
279 DESTDIR=$RPM_BUILD_ROOT
fbe89be6 280
42343508 281%{?with_static:mv -f $RPM_BUILD_ROOT{%{_bindir},/bin}/dar_static}
5f5a8b21 282
bca9e56e 283ln -sf %{_datadir}/%{name} misc/doc
a9720b1c 284
bac87f6c
KK
285%find_lang %{name}
286
fbe89be6 287%clean
288rm -rf $RPM_BUILD_ROOT
289
5a9f3364
JB
290%post libs -p /sbin/ldconfig
291%postun libs -p /sbin/ldconfig
09a398d2 292
bac87f6c 293%files -f %{name}.lang
fbe89be6 294%defattr(644,root,root,755)
bca9e56e 295%doc ChangeLog NEWS README THANKS TODO misc/doc
edcac7c2 296%dir %{_datadir}/%{name}
d428284d 297%attr(755,root,root) %{_bindir}/*
f0835823 298%{_mandir}/man1/*.1*
5f5a8b21 299
97597b5c 300%files libs
5a9f3364 301%defattr(644,root,root,755)
12760b79 302%attr(755,root,root) %{_libdir}/libdar64.so.*.*.*
97597b5c 303
09a398d2 304%files devel
305%defattr(644,root,root,755)
12760b79
KK
306%attr(755,root,root) %{_libdir}/libdar64.so
307%{_libdir}/libdar64.la
09a398d2 308%{_includedir}/dar
853009b5 309%{_pkgconfigdir}/libdar64.pc
09a398d2 310
42343508 311%if %{with static}
5f5a8b21 312%files static
313%defattr(644,root,root,755)
314%attr(755,root,root) /bin/*
315%endif
097d504f 316
9369df59 317%if %{with static_libs}
097d504f
JB
318%files libs-static
319%defattr(644,root,root,755)
12760b79 320%{_libdir}/libdar64.a
9369df59 321%endif
bca9e56e 322
323%files doc
324%defattr(644,root,root,755)
edcac7c2 325%{_datadir}/%{name}/*
This page took 0.13279 seconds and 4 git commands to generate.