source: trunk/mondo/mondo.spec @ 35

Last change on this file since 35 was 35, checked in by bcornec, 14 years ago

Again tagging improved

  • Property svn:keywords set to Id
File size: 20.4 KB
Line 
1#
2# $Id: mondo.spec 35 2005-09-29 01:16:57Z bcornec $
3#
4%define _prefix /usr
5%define libversion 2.0x_berlios
6%define __ln ln
7
8Summary:    A program which a Linux user can utilize to create a rescue/restore CD/tape
9Summary(fr):    Un programme pour les utilisateurs de Linux pour cr�r un CD/tape de sauvegarde/restauration
10Summary(it):    Un programma per utenti Linux per creare un CD/tape di rescue
11Summary(sp):    Un programa para los usuarios de Linux por crear una CD/cinta de restoracion/rescate
12Name:       mondo
13Version:    2.04_berlios
14Release:    1
15License:    GPL
16Group:      Applications/Archiving
17Url:        http://www.mondorescue.org
18Source:     %{name}-%{version}.tgz
19BuildRoot:  %{_tmppath}/%{name}-%{version}-root
20BuildRequires:  newt-devel >= 0.50, slang-devel >= 1.4.1, gcc
21%ifarch ia64
22Requires:   mindi >= 1.02, bzip2 >= 0.9, afio, mkisofs, binutils, elilo, newt >= 0.50, slang >= 1.4.1, buffer, parted
23%{!?_without_xmondo:BuildRequires:    gcc-c++, XFree86-devel, qt-devel, kdelibs-devel, libpng-devel}
24%else
25Requires:   mindi >= 1.02, bzip2 >= 0.9, afio, mkisofs, binutils, syslinux >= 1.52, newt >= 0.50, slang >= 1.4.1, cdrecord, buffer
26%{!?_without_xmondo:BuildRequires:    gcc-c++, XFree86-devel, qt-devel, kdelibs-devel, arts-devel, libart_lgpl-devel, libpng-devel}
27%endif
28Prefix:     %{_prefix}
29Autoreq:    0
30
31%package xmondo
32Summary:    A QT based graphical front end for %{name}
33Group:      Applications/Archiving
34Requires:   %{name} = %{version}-${release}, qt, kdelibs
35
36%package devel
37Summary:    Header files for building against Mondo
38Group:      Development/Libraries
39
40%description
41Objective
42"""""""""
43To produce a program which any Linux user can utilize to create
44a rescue/restore CD (or CDs, if their installation is >2Gb approx.). Also
45works for tapes and NFS.
46
47%description -l fr
48Objectif
49""""""""
50Mondo a pour but de fournir un programme utilisable par n'importe quel
51utilsateur de Linux pour cr�r un CD de sauvegarde/restauration
52(ou plusieurs CDs, si son installation d�asse les 2Go environ). Cela
53functionne avec des systemes d'entrainement de bande magnetique, et NFS,
54aussi.
55
56%description -l it
57Scopo
58"""""
59Mondo e' un programma che permette a qualsiasi utente Linux
60di creare un cd di rescue/restore (o piu' cd qualora l'installazione
61dovesse occupare piu' di 2Gb circa). Funziona con gli azionamenti di
62nastro, ed il NFS, anche.
63
64%description -l sp
65Objectivo
66"""""""""
67Mondo es un programa que permite cualquier usuario de Linux a crear una CD
68de restoracion/rescate (o CDs, si su instalacion es >2GO aprox.).  Funciona
69con cintas y NFS, tambien.
70
71%description xmondo
72Xmondo is a QT based graphical frontend to mondoarchive.  It can help you
73set up a backup by following onscreen prompts.
74
75%description devel
76mondo-devel contains a few header files that are necessary for developing
77with mondo.
78
79%prep
80%setup -q
81# clear out any CVS directories if they exist
82for dir in `find . -name CVS`
83do
84  rm -rf ${dir}
85done
86
87%configure %{!?_without_xmondo:--with-x11}
88
89%build
90%{__make} VERSION=%{version} CFLAGS="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_REENTRANT"
91
92%install
93rm -Rf /usr/local/share/mondo
94%{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/mondo
95%{__mkdir} -p $RPM_BUILD_ROOT%{_includedir}/mondo
96%{__mkdir} -p $RPM_BUILD_ROOT%{_sbindir}
97%{__mkdir} -p $RPM_BUILD_ROOT%{_libdir}
98%{__mkdir} -p $RPM_BUILD_ROOT%{_mandir}/man8
99for fname in mondo/mondoarchive/.libs/mondoarchive mondo/mondorestore/.libs/mondorestore ; do
100    %{__install} -m 755 $fname $RPM_BUILD_ROOT%{_sbindir}
101    %{__install} -m 755 $fname $RPM_BUILD_ROOT%{_datadir}/mondo
102done
103%{!?_without_xmondo:%{__install} -m 755 mondo/xmondo/.libs/xmondo $RPM_BUILD_ROOT%{_sbindir}}
104
105for f in libmondo libmondo.so libmondo-newt libmondo-newt.so libmondo-newt.1 libmondo-newt.so.1 libmondo-newt.1.0.0 libmondo-newt.so.1.0.0 libmondo.2 libmondo.so.2 libmondo.2.0.3 libmondo.so.2.0.3 ; do
106    fname=mondo/common/.libs/$f
107    if [ -e "$fname" ] ; then
108
109# Hugo's way
110#        %{__install} -m 755 $fname $RPM_BUILD_ROOT%{_libdir}
111# ----------
112# Joshua's way
113         %{__cp} -d $fname $RPM_BUILD_ROOT%{_libdir}
114# ----------
115   
116    fi
117done
118%{!?_without_xmondo:%{__install} -m 755 mondo/common/.libs/libXmondo-%{libversion}.so $RPM_BUILD_ROOT%{_libdir}}
119%{!?_without_xmondo:%{__ln} -s libXmondo-%{libversion}.so $RPM_BUILD_ROOT%{_libdir}/libXmondo.so}
120%{!?_without_xmondo:%{__install} -m 644 mondo/xmondo/mondo.png $RPM_BUILD_ROOT%{_datadir}/mondo}
121%{__install} -m 755 mondo/do-not-compress-these       $RPM_BUILD_ROOT%{_datadir}/mondo
122%{__install} -m 755 mondo/autorun                     $RPM_BUILD_ROOT%{_datadir}/mondo
123%{__install} -m 644 mondo/mondoarchive/mondoarchive.8 $RPM_BUILD_ROOT%{_mandir}/man8
124gzip -9 -f $RPM_BUILD_ROOT%{_mandir}/man8/mondoarchive.8
125%{__cp} -Rf mondo/restore-scripts  $RPM_BUILD_ROOT%{_datadir}/mondo
126%{__cp} -Rf mondo/post-nuke.sample $RPM_BUILD_ROOT%{_datadir}/mondo
127for fname in mondo/common/my-stuff.h mondo/common/mondostructures.h mondo/common/libmondo-*-EXT.h mondo/common/X-specific-EXT.h mondo/common/newt-specific-EXT.h; do
128    %{__install} -m 644 $fname $RPM_BUILD_ROOT%{_includedir}/mondo
129done
130
131%post
132ldconfig
133
134%clean
135%{__rm} -rf $RPM_BUILD_ROOT
136
137%files
138%defattr(-,root,root,-)
139%doc ChangeLog mondo/docs/en/*
140%dir %{_datadir}/mondo
141%{_sbindir}/mondorestore
142%{_sbindir}/mondoarchive
143%{_datadir}/mondo/mondorestore
144%{_datadir}/mondo/post-nuke.sample/*
145%{_datadir}/mondo/restore-scripts/*
146%{_datadir}/mondo/do-not-compress-these
147%{_datadir}/mondo/mondoarchive
148%{_datadir}/mondo/autorun
149%{_mandir}/man8/mondoarchive.8*
150%{_libdir}
151
152%{!?_without_xmondo:%files xmondo}
153%{!?_without_xmondo:%{_sbindir}/xmondo}
154%{!?_without_xmondo:%{_libdir}/libXmondo-%{libversion}.so}
155%{!?_without_xmondo:%{_libdir}/libXmondo.so}
156%{!?_without_xmondo:%{_datadir}/mondo/mondo.png}
157
158%files devel
159%dir %{_includedir}/mondo
160%{_includedir}/mondo/*
161
162%changelog
163* Tue Sep 06 2005 Bruno Cornec <bcornec@users.berlios.de> 2.04_berlios
164- Merge of patches mentionned on mondo ML + ia64 updates
165
166* Tue May 03 2005 Hugo Rabson <hugorabson@msn.com> 2.04_cvs_20050503
167- made mondo more clever about finding its home. Avoids mondo considering
168  directories like '/usr/share/doc/momdo' as its home.
169
170* Wed Aug 04 2004 Hugo Rabson <hugorabson@msn.com> 2.03
171- test sanity of user-specified tempdir
172- better SLES8 support
173
174* Mon Jun 28 2004 Hugo Rabson <hugorabson@msn.com> 2.02
175- instead of using 'dd' to erase partition table, delete existing
176  partitions w/ the same call to fdisk that is used to create the
177  new partitions; this should avoids locking up the partition table
178- set bootable partition in the above same call to fdisk, for
179  the same reason (avoids locking up the partition table)
180- better software RAID support
181- mount ext3 partitions as ext2 when restoring - better for Debian
182- better star, ACL support
183- added ACL, xattr support for afio users
184
185* Fri Jun 26 2004 Hugo Rabson <hugorabson@msn.com> 2.01
186- fixed cvs for SuSE systems
187- fixed NTFS backup/restore bug relating to partimagehack
188  log file overflow and NTFS v non-NTFS differentiation
189- more reliable extraction of config info from CDs, floppies
190- better support of ISO dirs at restore-time (Conor Daly)
191- fixed spec file for SuSE users
192- added ldconfig to install section
193
194* Fri Jun 19 2004 Hugo Rabson <hugorabson@msn.com> 2.00
195- first 2.0 release
196- updated grub-install.patched to support SuSE and Red Hat
197- call 'mt' to set block size to 32K before opening in/out tape
198- updated mondo-prep.c to create each disk's partitions all at once
199  (one call per drive) instead of one call to fdisk per partition
200- when extracting cfg file and mountlist from all.tar.gz (tape copy),
201  use block size of INTERNAL_TAPE_BLK_SIZE, not TAPE_BLOCK_SIZE
202- added star and rudimentary SELinux support
203- fixed lots of bugs
204- all logging now goes to /var/log/mondo-archive.log, with symlink
205  to /tmp/mondo-restore.log for restore-time log-tracking
206- added grub-install.patched
207- removed embleer & other binaries
208- added '-b' to specify block size
209- added '-R' for star support
210
211* Thu Mar 25 2004 Bruno Cornec <Bruno.Cornec@hp.com> 1.7_cvs-20040325
212- ia64 fixes
213
214* Fri Nov 07 2003 Joshua Oreman <oremanj@get-linux.org> 1.7_cvs-20031107
215- fixed symbolic links for libraries
216- added support for boot/root multi floppies
217
218- added kdelibs as xmondo dependency
219- added xmondo pixmap installation
220- better find_cdrom_device(), to cope w/ multiple CD writers
221- fixed -m and -Vc flags
222- fixed NTFS support!
223- bootable CD uses native, not El Torito, support now
224- removed mondo-makefilelist
225- added 2.6 kernel support
226- if 2.6 kernel, insist that the user specify CD device
227- drop Embleer; insist on ms-sys and parted if Windows partition
228
229* Wed Nov 05 2003 Jesse Keating <jkeating@j2solutions.net> 1.7_cvs-20031105.1
230- added -devel package
231
232* Tue Nov 04 2003 Jesse Keating <jkeating@j2solutions.net> 1.7_cvs-20031104.1
233- made xmondo a second package
234- added ability to specify --without xmondo at build time
235
236* Sun Nov 02 2003 Jesse Keating <jkeating@j2solutions.net> 1.7_cvs-20031102.1
237- Clean up, added spanish translation
238- Set prefix to be /usr
239- added/fixed Requires
240- remove CVS directories prior to building
241
242* Thu Oct 23 2003 Hugo Rabson <hugorabson@msn.com> 1.75_cvs_20031023
243- nothing yet
244
245* Wed Oct 22 2003 Hugo Rabson <hugorabson@msn.com> 1.75
246- fixed chmod/chown bug (Jens Richter)
247- ask user to confirm NFS mountpoint in Interactive Mode
248- rewritten format_everything() to make sure LVMs, RAIDs and
249  regular partitions are prepped in the correct order
250- better magicdev support
251- rewritten external binary caller subroutine
252- DVD support added
253- better backup-time control gui; offer to exclude nfs if appl.
254- fixed multi-tape support
255- re-implemented -D and -J
256- fixed bug in extract_config_file_from_ramdisk() which
257  affected tape+floppy users
258- updated is_incoming_block_valid() to make it
259  return end-of-tape if >300 flotsam blocks
260- unmount CD-ROM before burning (necessary for RH8/9)
261- fixed some stray assert()'s
262- fixed bug in grub-MR (Christian)
263- make user remove floppy/CD before restoring interactively from tape
264- fixed bug in am_I_in_disaster_recovery_mode()
265- added code to nuke_mode() to make sure NFS
266  (backup) share is mounted in Nuke Mode
267- improved tape device detection code
268- better GRUB support
269- better logging of changed bigfiles at compare-time
270- better NTFS support, thanks to partimagehack-static
271- better logging
272- rewrote tape-handling code, breaking compatibility w/ previous versions
273- fixed ISO/CD biggiefile verification bug in mondoarchive
274- fixed bug which stopped boot/compare-time changelist from popping up
275- replaced mondo-makefilelist with C code - faster, cleaner
276- tweaked GUI - better feedback
277
278* Wed May 28 2003 Anonymous <root@rohan> 1.74
279- misc fixes (Michael Hanscho's friend)
280- added rudimentary support for SME
281- added better label support
282- fixed biggietime atime/ctime restoration bug 73
283- fixed 'default boot loader' detection bug (Joshua Oreman)
284- use single-threaded make_afioballs_and_images() if FreeBSD
285- fixed mondoarchive -Vi multi-CD verify bug (Tom Mortell)
286- superior get_phys_size_of_drive() (Joshua Oreman)
287- fixed RAID-related bug in where_is_root_mounted()
288- ISO tweaks
289- fixed silly bug in load_filelist() which stopped
290  funny German filenames from being handled properly
291- fixed various calls to popup_and_get_string()
292- fixed spec file
293- reject -E /
294- added partimagehack to the mix
295
296* Tue May 20 2003 Anonymous <root@rohan> 1.73
297- mark devices as bootable _after_ unmounting them
298- resolve boot device (-f) if softlink
299- post_param_configuration() --- store iso-dev and isodir
300- added post-nuke-sample.tgz to package
301- Nuke Mode now checks mountlist against hardware; offer user
302  opportunity to edit mountlist if insane; if user declines, abort
303- added lots of assert()'s and other checks
304- ran code thru Valgrind to catch & fix some memory leaks
305- made mondo-restore.c smaller by moving some subroutines to
306  common/libmondo-raid.c and mondorestore/mondo-rstr-compare.c
307- added '-Q' to let user test mondoarchive's ability to find
308  their boot loader and type
309- improved which_boot_loader()
310- when burning or comparing to a CD, defeat autorun if it is
311  running, to avoid confusing mondoarchive and the user
312- if original backup media no longer available at boot-time
313  then offer user chance to choose another media source
314- when booting, type 'nuke noresize' to nuke w/o resizing
315  mountlist to fill your drives
316- add 'textonly' when booting, to avoid using Newt gui
317- run nice(20) to prioritize mondoarchive at start
318- don't pause and wait for next blank CD at backup-time
319  unless necessary (e.g. previous CD has not been removed)
320- get_phys_size_of_drive() --- better support of older drives
321- don't eject if "donteject" is in kernel's command line
322- cleaned up segfault-handling
323- added Conor's strip_path() to improve file list display
324- added Herman Kuster's multi-level bkp patch
325- better boot-time screen/message
326- added Joshua Oreman's FreeBSD patches x3
327- fixed interactive/textonly support
328- fixed support for subdir-within-NFS-mount
329- fixed "Can't backup if ramdisk not mounted" bug
330- try to work around eccentricities of multi-CD drive PCs
331- misc clean-ups (Steve Hindle)
332
333* Tue Apr 08 2003 Hugo Rabson <hugorabson@msn.com> 1.72
334- LVM/RAID bugs fixed (Brian Borgeson)
335- major clean-up of code (Stan Benoit)
336- make-me-bootable fix (Juraj Ziegler)
337- fixed problem w/ multi-ISO verify cycle (Tom Mortell)
338- removed duplicate entry from makefile
339- if root is /dev/root then assume not a ramdisk
340- reject relative paths if -d flag (Alessandro Polverini)
341- fixed potentially infinite loop in log_to_screen (Tom Mortell)
342- add '/' to custom filelist as workaround for obscure bug
343- ask user speed of CDRW if writing to CD
344- find_cdrom_device() --- if nonexistent/not found then
345  make sure to return '' as dev str and 1 as res
346- tweaked restore scripts tgz
347- cleaned up find_cdrom_device()
348- if user creates /usr/share/mondo/payload.tgz then untar
349  payload to CD at backup-time
350- fixed insist_on_this_cd_number()
351- fixed am_i_in_disaster_recovery_mode()
352- misc clean-up (Tom Mortell)
353- made code more legible
354- fixed post-nuke support
355- added -e support
356- fixed nfs support
357- fixed iso support
358- at restore-time, only sort mountlist internally,
359  in mount_all_devices() and unmount_all_devices()
360- fixed cosmetic bug in label-partitions-as-necessary
361- updated documentation
362- fixed fstab-hacking scripts
363
364* Wed Feb 12 2003 Hugo Rabson <hugorabson@msn.com> 1.71
365- log newt, slang, ncurses info
366- updated man page
367- handle %% chars in issue.net properly (Heiko Schlittermann)
368- fixed serious NFS restore bug
369- cleaned up spec file; it should cause fewer problems now (Jesse Keating)
370- changed various strcpy() calls to strncpy() calls
371- added mondo-makefilelist to makefile (Mikael Hultgren)
372- mount_cdrom() better at handling multiple CD drives
373- exclude /media/cdrom,cdrecorder,floppy
374- sensibly_set_tmpdir_and_scratchdir() --- exclude smb and smbfs
375- better logging by eval_call_to_make_ISO()
376- accept -J <fname> to let user provide their own fs catalog
377  instead of -I <paths> to backup
378- if dir excluded with -E or included with -I and dir is actually
379  a softlink then exclude/include the dir pointed to, as well
380- better location for manpage
381- adjusted block size of tarball at start of tape, to help
382  users w/ broken tape driver firmware
383- sort -u fstab after modifying it
384- if backup type is nfs then don't estimate noof media
385- fixed Makefile (Mikael Hultgren)
386- updated manpage
387
388* Mon Dec 07 2002 Hugo Rabson <hugo@firstlinux.net> 1.70
389- new devel branch opened
390
391* Mon Dec 02 2002 Hugo Rabson <hugo@firstlinux.net> 1.52
392- fixed bug in multithreading
393- use new grub-MR instead of grub-install
394- wipe only the partition table (not the MBR) when partitioning drives
395- ignore lilo.conf.anaconda when looking for lilo.conf file
396- accepts '-l RAW' to backup/restore original boot sector instead
397  of running grub or lilo to init it after restoring
398- fixed&updated stabgrub-me script; software RAID + GRUB work now
399- mount/unmount /boot partition for Gentoo 1.2 users
400- re-enabled extra tape checksums
401- disabled spurious warnings
402- unmount/remount supermounts at start/end of live restore, if nec.
403- cleaned up mondo's tape block handling (now, TAPE_BLOCK_SIZE=128K
404  and I've added INTERNAL_TAPE_BLK_SIZE=32K variable for buffering)
405- added Makefile
406- added -l RAW, to backup and restore original MBR
407- cleaned up iso_mode() and nfs restoring
408- create /mnt/RESTORING/mnt/.boot.d for Gentoo users
409- made mondorestore CD bootable for ArkLinux users
410- if user runs as 'su' not 'su -' then work around
411
412* Sun Nov 17 2002 Hugo Rabson <hugo@firstlinux.net> 1.51
413- pop-up list of changed files, at end of verification phase
414- better handling of changed.files list at restore-time
415- lots of CD-related fixes
416- added '-N' flag --- to let user exclude all NFS-related mounts&devices
417- better handling of 'kill'
418- restructuring of code to ease integration of mondo w/XMondo
419- fixed obscure bug in find_and_mount_actual_cd()
420- if / or /root has <50MB free then abort & complain
421- fixed install.sh
422- fixed .spec file
423- updated documentation
424- commented code
425- updated man page
426- added -v / --version flag
427- replace convoluted grep with wc (KP)
428- fixed bug affecting restoration of bigfiles from CD's created w/0 compression
429- fixed BurnProof-related bug
430- better at figuring out which is the best partition for temp/scratchdir
431- added do-not-compress-these (text file) to RPM
432- do not compress files of types listed in do-not-compress-these
433- dropped -U from call to afio - saves 20-30% runtime (Cosgrove)
434- added Cosgrove's do-not-compress-these list
435- included various patches from KP
436- chmod tmpdir, scratchdir to 700 before using
437- restore from specified backup device, even if its own cfg file disagrees
438- fixed multi-tape bug
439- fixed "Can't find first ISO when verifying nonbootable ISO" bug
440- multithreaded make_afioballs_and_images()
441- tmpdir and scratchdir are set sensibly whether mondoarchive is called with
442  command-line parameters or not
443- fixed bug in strip_spaces() which stopped it from handling
444  small strings correctly - affected mountlist editor
445- create a repaired copy of grub-install which is RAID-friendly;
446  use it when initializing boot sector with run_grub()
447- fixed bug in mondo-makefilelist
448
449* Sun Sep 08 2002 Hugo Rabson <hugo@firstlinux.net> 1.50
450- if restoring, don't try to find SCSI node of CD-ROM drive; find /dev entry
451- during selective restore, skip filesets which don't contain relevant archives
452- set /dev/null's perms to 777, just in case devfs-enabled kernel mangles it
453- remove /var/run/*.pid after restoring
454- move spurious lockfiles from /home/* to /home/*/.disabled
455- ask user to confirm the tape/CD device name
456- lots of multitape-related fixes
457- added code to autodetect the hardware of the user, if possible
458- if isodir does not exist then abort
459- more sanity-checking for -d flag
460- doubled 'biggiefile' threshold... to 32MB
461- exclude /root/images/mindi
462- fixed multi-imagedev bug (Emmanuel Druon)
463- unmount/remount /mnt/floppy before/after backing up, if Mandrake
464- restructured the source files
465- fixed serious bug in line 1546 - should have been !=, not ==; stopped
466  mondorestore from correctly restoring big files
467- added '#include <signal.h>' to my-stuff.h
468- exclude "incheckentry xwait()" from changed.files
469- fixed minor bug in find_cdrom_device()
470- fixed bug in friendly_sizestr...
471- insist on tape #1 when start verifying
472- added internal buffering, replacing the external 'buffer' exe
473- if differential backup then don't permit formatting or fdisking,
474  whether Interactive or Nuke mode
475- if mondorestore is run on live filesystem (or from ramdisk) without
476  parameters then mondorestore will ask which backup media (tape, CD, etc.)
477  was used; it will read the config file from the media and proceed from there
478- if tape streamer is softlink then resolve it first
479- incorporate post-nuke tarball
480- if user doesn't specify tape size, proceed anyway; behave intelligently
481  in the event of end-of-tape
482- prefix bkpinfo->restore_path to biggiefile fname before generating
483  checksum & comparing to archived biggiefile
484- if /etc/lilo.conf not found not /etc/lilo.conf.anaconda found
485  then create a softlink from the former to the latter, to work
486  around RH7.3's b0rken LILO support
487- LFS support (mharris, michele, hugo)
488- fixed verify bug --- CD#1 was being verified again & again & ...
489- differential mode fixed; supported again
490- ask user for boot loader + device if not detectible
491- list up to 512 files in file selection window at once (was 128)
492- better handling of bigfiles' checksums, perms and owns
493- delete final filelist if <=2 bytes long
494- if kernel not found and mondo in graphics mode then popup and ask
495  for kernel path+filename
496
497* Sun Jul 14 2002 Hugo Rabson <hugo@firstlinux.net> 1.45-1
498- 1.5x branch forked off from 1.4x branch
499
500
501
502
Note: See TracBrowser for help on using the repository browser.