--- parchive-1.1.orig/Makefile +++ parchive-1.1/Makefile @@ -1,4 +1,7 @@ +# Edited for Debian GNU/Linux. +DESTDIR = + CFLAGS=-g -W -Wall -Wno-unused -O2 par: backend.o checkpar.o makepar.o rwpar.o rs.o md5.o fileops.o main.o readoldpar.o interface.o ui_text.o @@ -14,4 +17,4 @@ make CC="dos-gcc -s" install: par - install par ${HOME}/bin/ + install par ${DESTDIR}/usr/bin/parchive --- parchive-1.1.orig/rwpar.c +++ parchive-1.1/rwpar.c @@ -232,8 +232,13 @@ i = read_i64(&pf->size); file->status = read_i64(&pf->status); file->file_size = read_i64(&pf->file_size); +/* DEBIAN: Applied patch from + * COPY(file->hash, pf->hash, sizeof(md5)); COPY(file->hash_16k, pf->hash_16k, sizeof(md5)); + */ + memmove(file->hash, pf->hash, sizeof(md5)); + memmove(file->hash_16k, pf->hash_16k, sizeof(md5)); l = (i - FILE_ENTRY_FIX_SIZE) / 2; NEW(file->filename, pl + l + 1); COPY(file->filename, path, pl); --- parchive-1.1.orig/debian/dirs +++ parchive-1.1/debian/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/man/man1 --- parchive-1.1.orig/debian/docs +++ parchive-1.1/debian/docs @@ -0,0 +1,2 @@ +NEWS +README --- parchive-1.1.orig/debian/control +++ parchive-1.1/debian/control @@ -0,0 +1,22 @@ +Source: parchive +Section: utils +Priority: optional +Maintainer: Rene Weber +Build-Depends: debhelper (>> 3.0.0) +Standards-Version: 3.6.1.0 + +Package: parchive +Architecture: any +Depends: ${shlibs:Depends} +Description: Use PAR files to reconstruct missing parts of multi-part archives + This utility applies the data-recovery capability concepts of RAID-like + systems to the posting and downloading of multi-part archives on USENET by + providing the ability to create and use redundant recovery records. It + supports the 'Reed-Soloman Code' implementation that allows for recovery of + any 'X' volumes for 'X' parity volumes present. It is popularly used on + USENET postings, but is not limited to this use. + . + The Debian parchive package supports "legacy" version 1.0 PAR files. + The Debian par2 package supports version 2.0 PAR files. + . + Upstream source: http://parchive.sourceforge.net/ --- parchive-1.1.orig/debian/rules +++ parchive-1.1/debian/rules @@ -0,0 +1,85 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This is the debhelper compatability version to use. +export DH_COMPAT=3 + +configure: configure-stamp +configure-stamp: + dh_testdir + # Add here commands to configure the package. + + + touch configure-stamp + +build: build-stamp + +build-stamp: configure-stamp + dh_testdir + + # Add here commands to compile the package. + $(MAKE) + #/usr/bin/docbook-to-man debian/parchive.sgml > parchive.1 + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + # Add here commands to clean up after the build process. + -$(MAKE) clean + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/parchive. + $(MAKE) install DESTDIR=$(CURDIR)/debian/parchive + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot +# dh_installdebconf + dh_installdocs + dh_installexamples + dh_installmenu +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_installinit + dh_installcron + dh_installman parchive.1 + dh_installinfo +# dh_undocumented + dh_installchangelogs + dh_link + dh_strip + dh_compress + dh_fixperms +# dh_makeshlibs + dh_installdeb +# dh_perl + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure --- parchive-1.1.orig/debian/changelog +++ parchive-1.1/debian/changelog @@ -0,0 +1,37 @@ +parchive (1.1-4) unstable; urgency=low + + * Take the package back from Vince with his approval. + * Fixed help text (Closes: #155433) + * Updated package description (Closes: #142033) + * Many thanks to Vince for taking care of this package in my absence. + + -- Rene Weber Sun, 1 Aug 2004 14:33:57 -0400 + +parchive (1.1-3) unstable; urgency=low + + * New maintainer (Closes: #244453) + * Edited control file to reflect the differences between PAR 1.0 files + supported by the parchive package and PAR 2.0 files supported by + the par2 package. + * Edited the Readme file as per above 2.0 vs 1.0 format issue. + * Bumped standards version from 3.5.2 to 3.6.1.0 + + -- Vince Mulhollon Sun, 30 May 2004 16:07:49 -0500 + +parchive (1.1-2) unstable; urgency=low + + * Uploading with maintainer set to QA group + * debian/copyright: removed dh_make boilerplatedness + + -- Andrew Pollock Sun, 9 May 2004 17:41:14 +1000 + +parchive (1.1-1) unstable; urgency=low + + * Initial Release. + * Name of binary changed to "parchive" instead of "par" due to a collision. + * Applied patch for sparc architectures found at + + Verified to work for one trivial case. + + -- Rene Weber Sat, 2 Feb 2002 23:40:31 -0500 + --- parchive-1.1.orig/debian/README.Debian +++ parchive-1.1/debian/README.Debian @@ -0,0 +1,14 @@ +parchive for Debian +------------------- + +Upstream calls the binary of this tool "par", but unfortunately there is +already a "par" in Debian, so I have renamed both the package and the binary +to "parchive". + +Also note that there are some problems with the current implementation. + +mentions the most important. + +Finally note that parchive supports the old legacy 1.0 PAR file format. +Use the par2 package which supports 2.0 PAR files for new projects. + --- parchive-1.1.orig/debian/copyright +++ parchive-1.1/debian/copyright @@ -0,0 +1,19 @@ +This package was debianized by Rene Weber on +Sat, 2 Feb 2002 23:40:31 -0500. + +It was downloaded from http://parchive.sourceforge.net/ + +Upstream Author: + +Willem Monsuwe + + + +Copyright: + +You are free to distribute this software under the terms of +the GNU General Public License. + +On Debian GNU/Linux systems, the complete text of the GNU General +Public License can be found in `/usr/share/common-licenses/GPL'. + --- parchive-1.1.orig/main.c +++ parchive-1.1/main.c @@ -30,12 +30,12 @@ { printf( "Usage:\n" -" par c(heck) [options] : Check parity archive\n" -" par r(ecover) [options] : Restore missing volumes\n" -" par a(dd) [options] [files] : Add files to parity archive\n" +" parchive c(heck) [options] : Check parity archive\n" +" parchive r(ecover) [options] : Restore missing volumes\n" +" parchive a(dd) [options] [files] : Add files to parity archive\n" " Advanced:\n" -" par m(ix) [options] : Try to restore from all parity files at once\n" -" par i(nteractive) [] : Interactive mode (very bare-bones)\n" +" parchive m(ix) [options] : Try to restore from all parity files at once\n" +" parchive i(nteractive) [] : Interactive mode (very bare-bones)\n" "\n" "Options: (Can be turned off with '+')\n" " -m : Move existing files out of the way\n" --- parchive-1.1.orig/parchive.1 +++ parchive-1.1/parchive.1 @@ -0,0 +1,93 @@ +.TH PARCHIVE "1" "May 30 2004" "parchive 1.1" "User Commands" +.SH NAME +parchive \- RAID like data recovery for PAR ver 1.0 files +.SH DESCRIPTION +The idea behind the parchive is to provide a tool to apply the data-recovery +capability concepts of RAID-like systems to the posting and recovery of +multi-part archives on Usenet. Current filespec and clients support the +'Reed-Soloman Code' implementation that allows for recovery of any 'X' +volumes for 'X' parity volumes present. + +The key to this mission is a clean file format specification which provides +all the necessary capabilities for programs to easily verify and regenerate +single missing parts out of a set of archives. + +We might just be able to make binary posting and downloading on Usenet a +little easier. That's a pretty cool goal! + +Note that parchive supports the old legacy version 1.0 PAR format. +For new projects, use the par2 package which supports the version 2.0 +PAR format which provides superior features. + +This manual page was written for the Debian GNU/Linux distribution +because the original program does not have a manual page. +.SH USAGE +.TP +parchive c(heck) [options] +Check parity archive +.TP +parchive r(ecover) [options] +Restore missing volumes +.TP +parchive a(dd) [options] [files] +Add files to parity archive +.TP +parchive m(ix) [options] +Try to restore from all parity files at once +.TP +parchive i(nteractive) [] +Interactive mode (very bare-bones) +.PP +Options: (Can be turned off with '+') +.TP +\fB\-m\fR +Move existing files out of the way +.TP +\fB\-f\fR +Fix faulty filenames +.TP +\fB\-p\fR +Number of files per parity volume +.TP +\fB\-n\fR +Number of parity volumes to create +.TP +\fB\-d\fR +Search for duplicate files +.TP +\fB\-k\fR +Keep broken files +.TP +\fB\-s\fR +Be smart if filenames are consistently different. +.TP +\fB\+i\fR +Do not add following files to parity volumes +.TP +\fB\+c\fR +Do not create parity volumes +.TP +\fB\+C\fR +Ignore case in filename comparisons +.TP +\fB\+H\fR +Do not check control hashes +.TP +\fB\-v\fR,\fB\+v\fR +Increase or decrease verbosity +.TP +\fB\-h\fR,\fB\-?\fR +Display this help +.TP +\fB\-\-\fR +Always treat following arguments as files +.SH "SEE ALSO" +The full documentation (such as it is) for +.B parchive +is maintained on the web site at + + +.SH AUTHOR +This manual page was written by Rene Weber , +and edited by Vince Mulhollon , +for the Debian GNU/Linux system (but may be used by others).