/[smecontribs]/rpms/freedup/contribs10/freedup.spec
ViewVC logotype

Contents of /rpms/freedup/contribs10/freedup.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (show annotations) (download)
Tue Sep 28 14:15:12 2021 UTC (2 years, 7 months ago) by jcrisp
Branch: MAIN
CVS Tags: freedup-1_6-3
Initial import

1 %define name freedup
2 %define version 1.6
3 %define release 3
4 Name: %{name}
5 Summary: Links substantially identical, duplicate files to save file system space.
6 Version: %{version}
7 Release: %{release}
8 License: GPL
9 Packager: AN <AN@freedup.org>
10 Group: Applications/File
11 Source: http://%{name}.org/%{name}-%{version}-%{release}-src.tar.bz2
12 # Buildarch: i586
13 Vendor: AN <AN@freedup.org>
14 URL: http://%{name}.org/
15 #BuildRoot: /tmp/%{name}-broot
16 BuildRoot: /var/tmp/%{name}-%{version}-%{release}
17
18
19 %description
20 Freedup eliminates duplicate files by linking them, and thus reduces the amount
21 of used disk space within one or more file systems. By default, hardlinks are
22 used on a single device, symbolic links when the devices differ. A set of
23 options allows you to modify the methods of file comparison, the hash functions,
24 the linking behavior, and the reporting style. You may use batch or interactive
25 mode. Freedup usually only considers identical files, but when comparing audio
26 or graphics files, you may elect to ignore the tags. Multimedia files often are
27 a good target for deduplication.
28
29
30 %prep
31 rm -rf ${RPM_BUILD_ROOT}
32
33 %setup
34
35
36 %install
37 rm -rf $RPM_BUILD_ROOT
38 INSTALLDIR=/usr/bin
39 MANPAGEDIR=%{_mandir}
40 install -d $RPM_BUILD_ROOT/$INSTALLDIR
41 install -s -p -m 755 freedup $RPM_BUILD_ROOT/$INSTALLDIR/freedup
42 install -s -p -m 755 symharden $RPM_BUILD_ROOT/$INSTALLDIR/symharden
43 install -d $RPM_BUILD_ROOT/$MANPAGEDIR/man1
44 gzip -c freedup.1>freedup.1.gz
45 install -p -m 644 freedup.1.gz $RPM_BUILD_ROOT/$MANPAGEDIR/man1/freedup.1.gz
46
47
48 %clean
49 cd ..
50 rm -rf %{name}-%{version}
51
52 #rm -rf $RPM_BUILD_ROOT
53 #mkdir -p $RPM_BUILD_ROOT/usr/bin
54 #mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
55
56 %pre
57 [ -f /etc/services ] && $(grep -q freedup /etc/services) || echo -e "freedup\t\t31166/tcp" >>//etc/services
58 [ -d /etc/xinetd.d -a ! -f /etc/xinetd.d/freedup ] && echo "service freedup\n{\n\tport\t= 31166\n\tsocket_type\t= stream\n\tprotocol\t= tcp\n\twait\t= no\n\tuser\t= root\n\tdisable\t= yes\n\tserver\t= /home/aneuper/src/freedup/freedup\n\tserver_args\t= -W\n}" >>/etc/xinetd.d/freedup && chmod 644 /etc/xinetd.d/freedup
59 [ -f /etc/inetd.conf ] && $(grep -q freedup /etc/inetd.conf) || echo "#freedup stream tcp nowait root /usr/bin/freedup freedup -W" >>/etc/inetd.conf
60
61
62 %preun
63 rm /etc/xinetd.d/freedup
64 # leave entry in /etc/services
65 # leave entry in /etc/inetd.conf
66
67 %files
68 %defattr(-,root,root)
69 %attr(755,root,root) /usr/bin/symharden
70 %attr(755,root,root) /usr/bin/freedup
71 %doc {TODO,README,README.SHA,COPYING,COPYING.SHA,verify,ChangeLog,demo,html}
72 %{_mandir}/man1/freedup.1.gz
73
74
75 %changelog
76 * Wed Sep 01 2021 John Crisp <jcrisp@safeandsoundit.co.uk> 1.6-3.sme
77 - Test build
78 - Added Stephanes note
79
80 * Wed Jan 21 2015 stephane de labrusse <stephdl@de-labrusse.fr> 1.5-3.sme
81 - First release to sme9
82 + gui defaults to off, activate and deactivate using "make webon/weboff/state"
83
84 * Fri Feb 04 2011 devel (AN) <AN@freedup.org>
85 - Bugfixes in version 1.6-2
86 + replaced softlink to symharden.c
87
88 * Tue Jan 11 2011 devel (AN) <AN@freedup.org>
89 - Changes to version 1.6-1
90 + signal handler catches CTRL-C to free duplicates discovered so far
91 + added if-defines to avoid double parsing of *.h files
92 + removed inline directive [due to compile errors by request of Andres Meyer]
93 - Enhancement in version 1.6-1
94 + added listener interface
95 + added new platform makefile for Apple Mac Version 10.6.0 i386 [tested]
96 + catch filesystem errors (e.g. /sys) and print warnings instead of assertions
97 + added (sp)lint rule for linux
98 + added symharden tool to convert softlinks into hardlinks whereever possible
99 - Bugfixes in version 1.6-1
100 + added missing #ifdef HASHSUM statements [notified by Linc Davis]
101 + using include of <sys/stat.h> instead of <linux/stat.h> [by Linc Davis]
102 + added fclose() to mp4.c and checking all fclose()/fseek() result codes
103 + linted mp3.c, mp4.c mpc.c, auto.c, ogg.c, jpg.c and my.c
104 + partially linted freedup.c (e.g. splint does not fail anymore)
105 + moved filesize variables in "extra" functions from size_t=int to ulong
106 + incorporated patch to avoid segfaults [by Charles Duppy]
107 - Known Bug in 1.6-1
108 + Apple Mac version does not link different ownerships (yet reason unclear)
109
110 * Thu Mar 06 2008 devel (AN) <AN@freedup.org>
111 - Changes to unpublished version 1.5-4
112 + Corrected Copyright statements to comply with OSF (GPL) requirements
113 - Enhancement in unpublished version 1.5-4
114 + minor corrections to man page
115
116 * Thu Mar 06 2008 devel (AN) <AN@freedup.org>
117 - Changes to version 1.5-3
118 + gui defaults to off, activate and deactivate using "make webon/weboff/state"
119
120 * Thu Mar 06 2008 devel (AN) <AN@freedup.org>
121 - Changes to version 1.5-3
122 + the features provided with option -W are for testing purpose only
123 + basic web interface offered (reply not accepted yet)
124 + changed invisible default option for sorting criteria to '.'
125 - Enhancement in version 1.5-3
126 + automated installation routine for xinetd and inetd
127 + deinstall script for xinetd only
128 + added html pages to rpm package as well
129 - Bugfixes in version 1.5-3
130 + removed a leftover debug command
131
132 * Sun Mar 02 2008 devel (AN) <AN@freedup.org>
133 - Enhancement in version 1.5-2
134 + enable freedup to restore directory time stamp after linking (option -T)
135 + added usage help, man page and syntax web page for option -T
136 + extended test3 in Makefile.tests to check new option -T
137 + streamlined Makefile.tests using for-loops and 'test -ef'(25% reduced size)
138 + Makefile.tests now needs gnu 'test' facility '[' to work correctly
139 - Bugfixes in version 1.5-2
140 + corrected date in copyright notice for -V
141 + added '+' and '-' to -k option in online syntax help
142
143 * Sat Feb 02 2008 devel (AN) <AN@freedup.org>
144 - Enhancement in version 1.5-1
145 + file trees are now scanned by an internal routine, find is called on demand
146 + output during tree scanning changes every 1000 files (i.e. find activity)
147 + updated man page to show how to use find instead of the internal routine
148 + testing did not proof performance gain when using internal routine
149 - Changes in version 1.5-1
150 + first helper routines for web-based GUI
151 + corrected and completed copyright information
152 - Bugfixes in version 1.5-1
153 + minor corrections to freedup man page
154
155 * Mon Dec 31 2007 devel (AN) <AN@freedup.org>
156 - Enhancement in version 1.4-4
157 + report deleted files and the space saved (avail in interactive mode only)
158 + link directions '+'/'-' allow to select source by size (extra style only)
159 - Bugfixes in version 1.4-4
160 + Makefile copies so that rpm cygwin executable is executable under cygwin
161 + initialize all *source variables in dupinfo_entry() to avoid segfaults
162 + do not offer linking when files already linked in interactive mode (w/o -H)
163 + report linked files and bytes in interactive mode for extra styles
164
165 * Fri Dec 28 2007 devel (AN) <AN@freedup.org>
166 - Enhancement in version 1.4-3
167 + one common routine to open config file (simplifies later extensions)
168 + added routine to print existing environments in help (for a test period)
169 - Bugfixes in version 1.4-3
170 + use character instead of ascii code for '-k' in config file
171 + finally fixed missing initialisation to avoid failing (n+m) assertion
172 + if mp4 module is applied on mp3 files no more infinite loops should occur
173
174 * Mon Dec 24 2007 devel (AN) <AN@freedup.org>
175 - Enhancement in version 1.4-2
176 + there are no more restrictions on the number of identical files
177 + added '-H' for the same use as in fdupes: show hardlinked files too
178 + added man page description for '-k' and '-H'
179 - Bugfixes in version 1.4-2
180 + improved test routine for MP3 and JPG Mix
181 + added new line before printing statistics
182 + stop printing interactive selection list, when there are no more letters
183
184 * Fri Dec 21 2007 devel (AN) <AN@freedup.org>
185 - Enhancement in version 1.4-1
186 + '-k' option changed and recognized key pattern (same key as interactive)
187 + '-ni' now reports reliable predictions on linked files and bytes
188 + '-n' is reported (and indicated) to report to much for multiple links.
189 + options '-qin' (add '-q') now print file clusters like "fdupes -r"
190 + erased code that was not active anymore
191 + reduction of qsort calls gave more performance which ate up more lstat()s
192 - Bugfixes in version 1.4-1
193 + '--timediff' is only set to 0 if '--sametime' is disabled
194 + fixed algorithm stability problem, i.e. one qsort run is now sufficient.
195 - New in version 1.3-2
196 + ability set a mask for file permissions if 'same' permission is desired.
197 + group commands in interactive mode
198 - '@' suggests to link all files to entry with maximum link count
199 - '#' suggests to link all files to first entry given on command line
200 - '<' suggests to link all files to the oldest identical entry
201 - '>' suggests to link all files to the newest identical entry
202 + '-k' forces link source by sequence of file naming (compare with '@' above)
203 - Enhancement in version 1.3-2
204 + changed default to NOT to use hash functions
205 + writing also given directories to config file (w/o probing for existance)
206 + first preparations for a netbsd translation
207 - Bugfixes in version 1.3-2
208 + findoptions need not to be defined for reading directories from config file
209 + assertion in compare_..._hash moved into parenthesis where it belongs to.
210
211 * Sat Dec 15 2007 devel (AN) <AN@freedup.org>
212 - New in version 1.3-1
213 + '-#' now requires an integer option (watch out for difficulties!)
214 + advanced hash sum calculation is now usable (nearly no penalty, but gain)
215 + freedup.org is the new website (the old address remains valid)
216 - Enhancement in version 1.3-1
217 + new algorithm calculates internal hash sum during file comparison
218 + defaults to new hash algorithm (use --hash 1 to switch to old behaviour)
219 + more detailed man page sections on -e, -# and -o.
220 - Bugfixes in version 1.3-1
221 + hash sum counter counted double for internal hash algorithm
222
223 * Mon Dec 10 2007 devel (AN) <AN@freedup.org>
224 - New in version 1.2-1
225 + Easy storeing & loading of options using environments (not: -Vhaq? )
226 Options given before are overwritten if present in that environment
227 + option -b to set basedir (may be useful with environments)
228 + option -D allows to set a maximum time difference
229 - Enhancement in version 1.2-1
230 + long options are offered
231 + help screen adopted
232 + added inactive, buggy code for delayed hash calculation ("hi performance")
233 + a test for -D was introduced
234 - Bugfixes in version 1.2-1
235 + ignore failed calls of gethash() (e.g. due to file removal) [rare]
236 + expect that ferror() may be set in case of feof() [not reported yet]
237 + qsort() now gets the difference in contents for files of the same size.[nry]
238
239 * Thu Dec 06 2007 devel (AN) <AN@freedup.org>
240 - Enhancement in version 1.1-3
241 + extended test6 to check for symlinking of full and partial filename
242 + description in spec file renewed
243 - Bugfixes in version 1.1-3
244 + corrected symlinking files with partial filename to those with full
245 + added rules to have html files for rpm with cygwin where they are expected
246
247 * Sun Dec 02 2007 devel (AN) <AN@freedup.org>
248 - Enhancement in version 1.1-2
249 + allow one more start token 'moov' for mp4 style (mov-Suffix)
250 + added -x and -e switch with explanation to man page
251 - Bugfixes in version 1.1-2
252 + corrected MANPAGE definition in spec file for rpm with cygwin
253 + replaced dependencies in Makefile.tests to ensure correct linking
254
255 * Wed Nov 28 2007 devel (AN) <AN@freedup.org>
256 - New in version 1.1-1
257 + header/tail skipping and tag skipping introduced for extra modules
258 + extra modules for mp3, mp4, mpc, ogg and jpeg tags (still beta testing)
259 + the extra module "auto" selects extra modules by their magic automatically
260 + enabled extra modules inhibit external hashing functions
261 + test11 was added to check the extra style modules mp3, mp4 and jpg
262 + extra modules allow to be compiled as individual testing utilities
263 - Enhancement in version 1.1-1
264 + print only available hashmodes and extramodules with help
265 + now using defines for internal hash method (simplifies replacement)
266 + a message is printed if root privileges were missing during tests
267 + using a size that may differ from the file size
268 - Bugfixes in version 1.1-1
269 + test10 now recognizes non-default sort order
270 + correction to help/usage message
271 + added missing stop conditions to byte-by-byte-comparison
272
273 * Sat Nov 10 2007 devel (AN) <AN@freedup.org>
274 - Enhancement in version 1.0-5
275 + now compiles unchanged with Cygwin and Linux
276 + Makefiles were modified to simplify testing and compilation
277 + removed conversion untility "encap"
278 + ignore missing "html2text"
279 + generate a readable plain text README from README.html
280 + more file groups in the header section of Makefile
281 + sha1.c is now taken from and referenced to original source.
282 + added COLLATERAL section to man page
283 + added verification program to distribution
284
285 * Wed Nov 07 2007 devel (AN) <AN@freedup.org>
286 - Enhancement in version 1.0-4
287 + report version and copyright on '-V'
288 + included Allan Saddis SHA1 implementation as found in duff
289 + added more hash functions to default list
290 + use '-t' to select certain hash methods manually
291 + internal hash function is default, external ones require options
292 + introduced colour into Makefile testing routines
293 + Makefile relies on GNU make to auto-include OS specific settings
294 + added rules and other parts to generate debian packages
295 - Bugfixes in version 1.0-4
296 + errors on hash function testing are easier to understand now.
297 + errors on hash function selection are reported only with '-v'
298 + full special character support if internal hash methods chosen
299 + more recent list of files for tarball, clean and distclean
300
301 * Sat Nov 03 2007 devel (AN) <AN@freedup.org>
302 - Enhancement in version 1.0-3
303 + Hash Algorithms now are included and work for cygwin as well
304 + improved interactive dialogues
305 + build symbolic link path in shortest distance to given target path
306 - Bugfixes in version 1.0-3
307 + Successful testing with AIX 5.3
308 + do not stop interactive mode if setting the terminal discipline fails
309 + More intense Testing of comparison function (Makefile)
310 + More reliable testing of interactive mode and relative Path (Makefile)
311 + removed DANGER message due to program improvements
312 + special character support if external hash methods are disabled (-#)
313
314 * Wed Oct 31 2007 devel (AN) <AN@freedup.org>
315 - Enhancement in version 1.0-2
316 + runtime check for one out of three usable external hash methods (SHA1, MD5, SUM)
317 - Bugfixes in version 1.0-2
318 + corrected comparison length when comparing by memcmp() / failed with cygwin
319 + renamed finfo structure to frdinfo to avoid collisions with AIX
320 + added ALLPERMS define for non-Linux systems
321 + added Makefile define for FREEDUPEXE, since cygwin fails on ./freedup
322 + added Makefile define for echo with backslash translation
323 + added Makefile check for valid HASH executables in freedup.h
324 + print "ln -f <file1> <file2>" , so you may execute it without changes
325
326 * Sat Oct 27 2007 devel (AN) <AN@freedup.org>
327 - Enhancements in version 1.0
328 + new interactive mode with full choice list
329 + separated linking task into explicit function
330 + option -i asks for manual replacement selections
331 + options -in print file clusters like "fdupes -r"
332 + partial code clean up
333 - Bugfixes
334 + avoid name collisions by generating temporary filenames
335 + always check files for existance to avoid early termination
336 + previously checked that permissions differ (instead of being identical)
337 + previously checked that groups differ (instead of being identical)
338 + previously checked that users differ (instead of being identical)
339 + previously checked that times differ (instead of being identical)
340
341 * Tue Oct 09 2007 devel (AN) <AN@freedup.org>
342 - Enhancements in version 0.9 freedup.c
343 + added interactive mode (option -i) [this option is still beta]
344 + added delete selections in interactive mode
345 + added html documentation to archive
346 + added tolerance to unavailable files on fopen() [Rel.2]
347 - Enhancements in version 0.9 Makefile
348 + added definitions: INSTALLDIR, MANPAGEDIR, etc
349 + added targets: tarball, install, clean, distclean
350 + version and release are now defined in freedup.spec only
351 + added test that tries all numeric options during interaction [Rel.2]
352 - Enhancements in version 0.9 freedup.spec
353 + use install instead of cp
354
355 * Thu Oct 04 2007 devel (AN) <AN@freedup.org>
356 - Enhancements in version 0.8
357 + avoid linking empty files (new option -0)
358 + avoid printing any information (new option -q)
359 + updated man page to reflect all options
360 + added test7 to check for correct handling of empty files
361 - Bugfixes
362 + use mode instead of size to determine file type
363 + starting with release 1 (not with 0)
364 + added aditional file to distribution
365
366 * Tue Oct 02 2007 devel (AN) <AN@freedup.org>
367 - Enhancements in version 0.7
368 + compiles under cygwin (no hash support with cygwin)
369 + works for NTFS file systems (at least test cases worked)
370
371 * Fri Sep 21 2007 devel (AN) <AN@freedup.org>
372 - Enhancements in version 0.6
373 + MD5 hash scanning may be disabled by options now
374
375 * Wed Sep 12 2007 devel (AN) <AN@freedup.org>
376 - Enhancements in version 0.5
377 + exclude non-regular files from investigation using lstat
378 + error handling for OS functions now with messages instead of asserts
379 + corrected and completed some text messages
380 + Tested 400000 multimedia files in upto 20 trees
381
382 * Wed Aug 29 2007 devel (AN) <AN@freedup.org>
383 - Enhancements in version 0.4
384 + now a single run should be sufficient in most cases
385 + added -w to force symlinks instead of hardlinks
386 + added -l to allow only hardlinks and no symlinks
387 + first test comparing results for different trees
388 + more structured web page
389 - Bugfixes
390 + no more overwriting of previously scanned trees
391 + comparision return values are not zero if additional tests fail
392 + completed bug fixes from version 0.2
393
394 * Fri Aug 24 2007 devel (AN) <AN@freedup.org>
395 - Enhancements in version 0.3
396 + splitted user and group comparison into separate tests
397 - Bugfixes
398 + argument position is now less important than existing link count
399 This was needed to avoid alternating link replacements
400 + stop when number of changes gets constant :-(healing symptoms)
401 + do not reset file counter when deciding to realloc()
402
403 * Tue Aug 21 2007 devel (AN) <AN@freedup.org>
404 - Enhancements in version 0.2
405 + call "find" only once
406 + allow input from stdin
407 + some code cleaning
408 + added man page
409 + added more tests
410 + improved Makefile
411 - Bugfixes
412 + added -a to getopt string
413 + report correct version
414 + corrected basename macro
415
416 * Thu Aug 16 2007 devel (AN) <AN@freedup.org>
417 - Initial Release

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed