source: trunk/mondo/mondo.spec @ 3

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

Initial import from latest mondo-2.04_cvs_20050503/mindi-1.04_cvs_20050503 on http://www.mondorescue.org

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