Spec URL: http://psabata.fedorapeople.org/tintin/tintin.spec SRPM URL: http://psabata.fedorapeople.org/tintin/tintin-2.00.5-1.fc14.src.rpm Description: TinTin++, aka tt++, is a free MUD client. Known rpmlint issues: 1. Spelling. 2. %buildroot usage in %build section; I consider this the best solution, though
Source tar ball is original. Ok. Summary verified from home page. Ok. Group for instant messenger is Ok. FIX: License should be GPLv2+ (src/main.c). The same applies for doc sub-package. URL is Ok. BuildRequires Ok. FIX: Source0 returns HTML file instead of the tar ball. TODO: Source0 URL hard-codes version number, use %{version} macro. Description verified from home page. Ok. TODO: Correct spelling of `Windows Xp' (letter case). TODO: Group for `doc' sub-package should be `Documentation'. FIX: Make `doc' sub-package noarch. %configure --bindir overrode because Makefile does not respect DESTDIR. Ok. TODO: Patch Makefile.in to respect DESTDIR and report it to upstream. TODO: Package `TODO' file. TODO: Package change logs from `mods' directory. FIX: Package COPYING into `doc' sub-package as it's independent. $ rpmlint tintin.spec ../SRPMS/tintin-2.00.5-1.fc14.src.rpm ../RPMS/x86_64/tintin-* tintin.spec:32: W: rpm-buildroot-usage %build %configure --bindir=%{buildroot}%{_bindir} tintin.src: W: spelling-error Summary(en_US) tt -> rt, tr, t tintin.src: W: spelling-error %description -l en_US tt -> rt, tr, t tintin.src:32: W: rpm-buildroot-usage %build %configure --bindir=%{buildroot}%{_bindir} tintin-doc.x86_64: W: spelling-error %description -l en_US tt -> rt, tr, t tintin.x86_64: W: spelling-error Summary(en_US) tt -> rt, tr, t tintin.x86_64: W: spelling-error %description -l en_US tt -> rt, tr, t tintin.x86_64: W: no-manual-page-for-binary tt++ 4 packages and 1 specfiles checked; 0 errors, 8 warnings. rpmlint Ok. $ rpm -q -lv -p ../RPMS/x86_64/tintin-2.00.5-1.fc14.x86_64.rpm -rwxr-xr-x 1 root root 359080 úno 15 17:41 /usr/bin/tt++ drwxr-xr-x 2 root root 0 úno 15 17:41 /usr/share/doc/tintin-2.00.5 -rw-r--r-- 1 root root 18009 čec 5 2009 /usr/share/doc/tintin-2.00.5/COPYING -rw-r--r-- 1 root root 1916 pro 28 18:10 /usr/share/doc/tintin-2.00.5/CREDITS -rw-r--r-- 1 root root 4840 pro 28 18:37 /usr/share/doc/tintin-2.00.5/FAQ -rw-r--r-- 1 root root 1209 srp 2 2009 /usr/share/doc/tintin-2.00.5/INSTALL -rw-r--r-- 1 root root 6736 pro 28 18:40 /usr/share/doc/tintin-2.00.5/README $ rpm -q -lv -p ../RPMS/x86_64/tintin-doc-2.00.5-1.fc14.x86_64.rpm drwxr-xr-x 2 root root 0 úno 15 17:41 /usr/share/doc/tintin-doc-2.00.5 -rw-r--r-- 1 root root 6196 led 23 2010 /usr/share/doc/tintin-doc-2.00.5/SCRIPTS -rw-r--r-- 1 root root 8477 čec 9 2009 /usr/share/doc/tintin-doc-2.00.5/chat_protocol.txt -rw-r--r-- 1 root root 11181 čec 9 2009 /usr/share/doc/tintin-doc-2.00.5/tintin19.txt File permissions and layout Ok. $ rpm -q --requires -p ../RPMS/x86_64/tintin-2.00.5-1.fc14.x86_64.rpm | sort | uniq -c 1 libc.so.6(GLIBC_2.2.5)(64bit) 1 libc.so.6(GLIBC_2.3.4)(64bit) 1 libc.so.6(GLIBC_2.3)(64bit) 1 libc.so.6(GLIBC_2.4)(64bit) 1 libc.so.6()(64bit) 1 libnsl.so.1()(64bit) 1 libpcre.so.0()(64bit) 1 libpthread.so.0(GLIBC_2.2.5)(64bit) 1 libpthread.so.0()(64bit) 1 libutil.so.1(GLIBC_2.2.5)(64bit) 1 libutil.so.1()(64bit) 1 libz.so.1()(64bit) 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsXz) <= 5.2-1 1 rtld(GNU_HASH) $ rpm -q --requires -p ../RPMS/x86_64/tintin-doc-2.00.5-1.fc14.x86_64.rpm | sort | uniq -c 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsXz) <= 5.2-1 $ rpm -q --provides -p ../RPMS/x86_64/tintin-2.00.5-1.fc14.x86_64.rpm | sort | uniq -c 1 tintin(x86-64) = 2.00.5-1.fc14 1 tintin = 2.00.5-1.fc14 $ rpm -q --provides -p ../RPMS/x86_64/tintin-doc-2.00.5-1.fc14.x86_64.rpm | sort | uniq -c 1 tintin-doc(x86-64) = 2.00.5-1.fc14 1 tintin-doc = 2.00.5-1.fc14 Binary dependencies Ok. $ resolvedeps-f16 ../RPMS/x86_64/tintin-* Binary dependencies resolvable. Ok. Package build in F16 (http://koji.fedoraproject.org/koji/taskinfo?taskID=2841981). Ok. Otherwise package is in line with Fedora packaging guidelines. Please correct all `FIX' prefixed issues, consider fixing all `TODO' prefixed issues and provide new spec file. Resolution: Package NOT approved
Thank you, Petr. A corrected package, 2.00.5-2, is available. SPEC: http://psabata.fedorapeople.org/tintin/tintin.spec SRPM: http://psabata.fedorapeople.org/tintin/tintin-2.00.5-2.fc14.src.rpm
Spec file changes: --- tintin.spec 2011-02-15 17:13:04.000000000 +0100 +++ tintin.spec.1 2011-02-15 18:26:41.000000000 +0100 @@ -1,11 +1,12 @@ Name: tintin Version: 2.00.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: TinTin++, aka tt++, is a free MUD client Group: Applications/Internet -License: GPLv2 +License: GPLv2+ URL: http://tintin.sourceforge.net/ -Source0: http://sf.net/projects/%{name}/files/TinTin%2B%2B%20Source%20Code/2.00.5/%{name}-%{version}.tar.gz +Source0: http://garr.dl.sourceforge.net/project/%{name}/TinTin%2B%2B%20Source%20Code/%{version}/%{name}-%{version}.tar.gz +Patch0: tintin-2.00.5-destdir.patch BuildRequires: pcre-devel BuildRequires: zlib-devel @@ -13,44 +14,54 @@ TinTin++, aka tt++, is a free MUD client for Mac OS X, Linux, and Windows. The Windows port named WinTin++ (using the PuTTY terminal) is available for those who do not use Cygwin (A Linux/Unix emulator for Windows) and runs on -Windows Xp, Windows Vista, and Windows 7. Besides MUDs, TinTin++ also works +Windows XP, Windows Vista, and Windows 7. Besides MUDs, TinTin++ also works well with MUSH, Rogue, BBS, and Linux servers. %package doc Summary: TinTin++ documentation and examples -Group: Applications/Internet -License: GPLv2 +Group: Documentation +License: GPLv2+ +BuildArch: noarch %description doc TinTin++, aka tt++, MUD client documentation and examples. %prep %setup -q -n tt +%patch0 -p1 -b .destdir %build cd src -%configure --bindir=%{buildroot}%{_bindir} +%configure make %{?_smp_mflags} %install cd src -make install +make install DESTDIR=%{buildroot} cd .. chmod 644 COPYING CREDITS FAQ INSTALL README chmod 644 SCRIPTS chmod 644 docs/* && mv -v docs/* . +chmod 644 mods/*.mods && mv -v mods/*.mods . %files %defattr(-,root,root,-) -%doc COPYING CREDITS FAQ INSTALL README +%doc COPYING CREDITS FAQ INSTALL README *.mods %{_bindir}/tt++ %files doc %defattr(-,root,root,-) +%doc COPYING %doc chat_protocol.txt %doc tintin19.txt %doc SCRIPTS %changelog +* Tue Feb 15 2011 Petr Sabata <psabata> - 2.00.5-2 +- Source corrected +- Description spelling corrected +- TODO and Changelogs packaged, COPYING added to the doc package +- Changed build section, added DESTDIR patch + * Tue Feb 15 2011 Petr Sabata <psabata> - 2.00.5-1 - Package prepared for review > FIX: License should be GPLv2+ (src/main.c). The same applies for doc > sub-package. -License: GPLv2 +License: GPLv2+ Ok. > FIX: Source0 returns HTML file instead of the tar ball. -Source0: http://sf.net/projects/%{name}/files/TinTin%2B%2B%20Source%20Code/2.00.5/%{name}-%{version}.tar.gz +Source0: http://garr.dl.sourceforge.net/project/%{name}/TinTin%2B%2B%20Source%20Code/%{version}/%{name}-%{version}.tar.gz Ok. > FIX: Make `doc' sub-package noarch. +BuildArch: noarch Ok. > %configure --bindir overrode because Makefile does not respect DESTDIR. Ok. > TODO: Patch Makefile.in to respect DESTDIR and report it to upstream. Ok. NOTE: The patch works but better way is to inject DESTDIR right at mkdir and cp because $(bindir) is run-time path and more complex packages can use it at compile time. > FIX: Package COPYING into `doc' sub-package as it's independent. +%doc COPYING Ok. $ rpmlint tintin.spec ../SRPMS/tintin-2.00.5-2.fc14.src.rpm ../RPMS/x86_64/tintin-2.00.5-2.fc14.x86_64.rpm ../RPMS/noarch/tintin-doc-2.00.5-2.fc14.noarch.rpm tintin.src: W: spelling-error Summary(en_US) tt -> rt, tr, t tintin.src: W: spelling-error %description -l en_US tt -> rt, tr, t tintin.x86_64: W: spelling-error Summary(en_US) tt -> rt, tr, t tintin.x86_64: W: spelling-error %description -l en_US tt -> rt, tr, t tintin.x86_64: W: file-not-utf8 /usr/share/doc/tintin-2.00.5/igr.mods tintin.x86_64: W: no-manual-page-for-binary tt++ tintin-doc.noarch: W: spelling-error %description -l en_US tt -> rt, tr, t 3 packages and 1 specfiles checked; 0 errors, 7 warnings. FIX: Convert igr.mods into UTF-8. $ rpm -q -vl -p ../RPMS/x86_64/tintin-2.00.5-2.fc14.x86_64.rpm -rwxr-xr-x 1 root root 359080 úno 15 18:42 /usr/bin/tt++ drwxr-xr-x 2 root root 0 úno 15 18:42 /usr/share/doc/tintin-2.00.5 -rw-r--r-- 1 root root 13793 čec 9 2009 /usr/share/doc/tintin-2.00.5/1.5.mods -rw-r--r-- 1 root root 18009 čec 5 2009 /usr/share/doc/tintin-2.00.5/COPYING -rw-r--r-- 1 root root 1916 pro 28 18:10 /usr/share/doc/tintin-2.00.5/CREDITS -rw-r--r-- 1 root root 4840 pro 28 18:37 /usr/share/doc/tintin-2.00.5/FAQ -rw-r--r-- 1 root root 1209 srp 2 2009 /usr/share/doc/tintin-2.00.5/INSTALL -rw-r--r-- 1 root root 6736 pro 28 18:40 /usr/share/doc/tintin-2.00.5/README -rw-r--r-- 1 root root 32912 čec 9 2009 /usr/share/doc/tintin-2.00.5/dsc.mods -rw-r--r-- 1 root root 79424 pro 28 18:42 /usr/share/doc/tintin-2.00.5/igr.mods -rw-r--r-- 1 root root 5735 čec 9 2009 /usr/share/doc/tintin-2.00.5/pkj.mods -rw-r--r-- 1 root root 3357 čec 9 2009 /usr/share/doc/tintin-2.00.5/rse.mods -rw-r--r-- 1 root root 8615 čec 9 2009 /usr/share/doc/tintin-2.00.5/svr.mods -rw-r--r-- 1 root root 3105 čec 9 2009 /usr/share/doc/tintin-2.00.5/xin.mods -rw-r--r-- 1 root root 3347 čec 9 2009 /usr/share/doc/tintin-2.00.5/ycj.mods $ rpm -q -vl -p ../RPMS/noarch/tintin-doc-2.00.5-2.fc14.noarch.rpm drwxr-xr-x 2 root root 0 úno 15 18:42 /usr/share/doc/tintin-doc-2.00.5 -rw-r--r-- 1 root root 18009 čec 5 2009 /usr/share/doc/tintin-doc-2.00.5/COPYING -rw-r--r-- 1 root root 6196 led 23 2010 /usr/share/doc/tintin-doc-2.00.5/SCRIPTS -rw-r--r-- 1 root root 8477 čec 9 2009 /usr/share/doc/tintin-doc-2.00.5/chat_protocol.txt -rw-r--r-- 1 root root 11181 čec 9 2009 /usr/share/doc/tintin-doc-2.00.5/tintin19.txt File permissions and layout is Ok. Package builds in F16 (http://koji.fedoraproject.org/koji/taskinfo?taskID=2842109). Ok. Otherwise the package is in line Fedora packaging guide lines. Please correct all `FIX' prefixed issues and submit new spec file. Resolution: Package NOT approved.
2.00.5-3: SPEC: http://psabata.fedorapeople.org/tintin/tintin.spec SRPM: http://psabata.fedorapeople.org/tintin/tintin-2.00.5-3.fc14.src.rpm
Spec file changes: --- tintin.spec 2011-02-15 18:26:41.000000000 +0100 +++ tintin.spec.1 2011-02-15 19:15:50.000000000 +0100 @@ -1,6 +1,6 @@ Name: tintin Version: 2.00.5 -Release: 2%{?dist} +Release: 3%{?dist} Summary: TinTin++, aka tt++, is a free MUD client Group: Applications/Internet License: GPLv2+ @@ -43,6 +43,7 @@ chmod 644 SCRIPTS chmod 644 docs/* && mv -v docs/* . chmod 644 mods/*.mods && mv -v mods/*.mods . +iconv -f latin1 -t utf8 igr.mods > igr.mods.utf8 && mv igr.mods.utf8 igr.mods %files %defattr(-,root,root,-) @@ -57,6 +58,9 @@ %doc SCRIPTS %changelog +* Tue Feb 15 2011 Petr Sabata <psabata> - 2.00.5-3 +- igr.mods now gets converted to proper utf8 + * Tue Feb 15 2011 Petr Sabata <psabata> - 2.00.5-2 - Source corrected - Description spelling corrected > FIX: Convert igr.mods into UTF-8. +iconv -f latin1 -t utf8 igr.mods > igr.mods.utf8 && mv igr.mods.utf8 igr.mods Ok. $ rpmlint tintin.spec ../SRPMS/tintin-2.00.5-3.fc14.src.rpm ../RPMS/x86_64/tintin-2.00.5-3.fc14.x86_64.rpm ../RPMS/noarch/tintin-doc-2.00.5-3.fc14.noarch.rpm tintin.src: W: spelling-error Summary(en_US) tt -> rt, tr, t tintin.src: W: spelling-error %description -l en_US tt -> rt, tr, t tintin.x86_64: W: spelling-error Summary(en_US) tt -> rt, tr, t tintin.x86_64: W: spelling-error %description -l en_US tt -> rt, tr, t tintin.x86_64: W: no-manual-page-for-binary tt++ tintin-doc.noarch: W: spelling-error %description -l en_US tt -> rt, tr, t 3 packages and 1 specfiles checked; 0 errors, 6 warnings. rpmlint Ok. Package builds in F16 (http://koji.fedoraproject.org/koji/taskinfo?taskID=2843512). Ok. Package is in line with Fedora packaging guidelines. Resolution: Package APPROVED.
New Package SCM Request ======================= Package Name: tintin Short Description: TinTin++, aka tt++, is a free MUD client Owners: psabata Branches: f14 f15 InitialCC:
Please change your Group tag to "Amusements/Games". Did you asked the upstream author to fix permissions on doc files? Consider using "%doc %attr" instead. Why not keep "mods" subdir? ### chmod 644 docs/* && mv -v docs/* . ### There is no need to move files from docs/ ... Just add an entry for docs/*
(In reply to comment #7) > Please change your Group tag to "Amusements/Games". > I wasn't sure about what category to choose. TinTin++ isn't actually a game, just a client. In theory, it could be used to access other services as well. > Did you asked the upstream author to fix permissions on doc files? > Not yet. > Consider using "%doc %attr" instead. > > Why not keep "mods" subdir? > > ### > chmod 644 docs/* && mv -v docs/* . > ### > > There is no need to move files from docs/ ... Just add an entry for docs/* Would you find this okay? --- tintin.spec 2011-02-15 19:06:36.085563092 +0100 +++ tintin.spec.new 2011-02-16 15:27:17.439563027 +0100 @@ -1,6 +1,6 @@ Name: tintin Version: 2.00.5 -Release: 3%{?dist} +Release: 4%{?dist} Summary: TinTin++, aka tt++, is a free MUD client Group: Applications/Internet License: GPLv2+ @@ -38,26 +38,28 @@ %install cd src make install DESTDIR=%{buildroot} -cd .. -chmod 644 COPYING CREDITS FAQ INSTALL README -chmod 644 SCRIPTS -chmod 644 docs/* && mv -v docs/* . -chmod 644 mods/*.mods && mv -v mods/*.mods . +cd ../mods iconv -f latin1 -t utf8 igr.mods > igr.mods.utf8 && mv igr.mods.utf8 igr.mods %files %defattr(-,root,root,-) -%doc COPYING CREDITS FAQ INSTALL README *.mods +%doc %attr(0644,root,root) COPYING +%doc %attr(0644,root,root) CREDITS FAQ INSTALL README +%doc %attr(0755,root,root) mods/ +%doc %attr(0644,root,root) mods/* %{_bindir}/tt++ %files doc %defattr(-,root,root,-) -%doc COPYING -%doc chat_protocol.txt -%doc tintin19.txt -%doc SCRIPTS +%doc %attr(0644,root,root) COPYING +%doc %attr(0644,root,root) SCRIPTS +%doc %attr(0755,root,root) docs +%doc %attr(0644,root,root) docs/* %changelog +* Wed Feb 16 2011 Petr Sabata <psabata> - 2.00.5-4 +- Changed documentation files structure, removed chmod's in favor of attr's + * Tue Feb 15 2011 Petr Sabata <psabata> - 2.00.5-3 - igr.mods now gets converted to proper utf8
(In reply to comment #8) > (In reply to comment #7) [...] > > Would you find this okay? > > --- tintin.spec 2011-02-15 19:06:36.085563092 +0100 > +++ tintin.spec.new 2011-02-16 15:27:17.439563027 +0100 > @@ -1,6 +1,6 @@ > Name: tintin > Version: 2.00.5 > -Release: 3%{?dist} > +Release: 4%{?dist} [...] > > %files > %defattr(-,root,root,-) > -%doc COPYING CREDITS FAQ INSTALL README *.mods > +%doc %attr(0644,root,root) COPYING > +%doc %attr(0644,root,root) CREDITS FAQ INSTALL README > +%doc %attr(0755,root,root) mods/ > +%doc %attr(0644,root,root) mods/* > %{_bindir}/tt++ > > %files doc > %defattr(-,root,root,-) > -%doc COPYING > -%doc chat_protocol.txt > -%doc tintin19.txt > -%doc SCRIPTS > +%doc %attr(0644,root,root) COPYING > +%doc %attr(0644,root,root) SCRIPTS > +%doc %attr(0755,root,root) docs <--- remove Do not include docs subdir, just files. > +%doc %attr(0644,root,root) docs/* You could use: %doc %attr(0644,root,root) COPYING SCRIPTS docs/* > > %changelog > +* Wed Feb 16 2011 Petr Sabata <psabata> - 2.00.5-4 > +- Changed documentation files structure, removed chmod's in favor of attr's > + > * Tue Feb 15 2011 Petr Sabata <psabata> - 2.00.5-3 > - igr.mods now gets converted to proper utf8
William, upstream ships the docs directory with 0711 permissions; I have to change this if I want to include the directory without moving the files out of it, don't I? Ad doc files on one line: this is just a cosmetic change; I like to separate certain files from others if they are e.g. a "different documentation category".
(In reply to comment #10) > upstream ships the docs directory with 0711 permissions; I have to change this > if I want to include the directory without moving the files out of it, don't I? nope. %files %defattr(-,root,root,755) %doc %attr(0644,root,root) COPYING CREDITS FAQ INSTALL README %doc %attr(0755,root,root) mods %{_bindir}/tt++ %files doc %defattr(-,root,root,755) %doc %attr(0644,root,root) COPYING %doc %attr(0644,root,root) SCRIPTS %doc %attr(0644,root,root) docs/* > > Ad doc files on one line: this is just a cosmetic change; I like to separate > certain files from others if they are e.g. a "different documentation > category". yep ;)
(In reply to comment #11) > (In reply to comment #10) > > upstream ships the docs directory with 0711 permissions; I have to change this > > if I want to include the directory without moving the files out of it, don't I? > > nope. > > %files > %defattr(-,root,root,755) > %doc %attr(0644,root,root) COPYING CREDITS FAQ INSTALL README > %doc %attr(0755,root,root) mods > %{_bindir}/tt++ > > %files doc > %defattr(-,root,root,755) > %doc %attr(0644,root,root) COPYING > %doc %attr(0644,root,root) SCRIPTS > %doc %attr(0644,root,root) docs/* > If I use this, I get some weird results # ls -ld /usr/share/doc/tintin-* drw-r--r-- 3 root root 4096 Feb 16 17:11 /usr/share/doc/tintin-2.00.5 drw-r--r-- 2 root root 4096 Feb 16 17:11 /usr/share/doc/tintin-doc-2.00.5 # ls -l /usr/share/doc/tintin-2.00.5/ total 48 -rw-r--r-- 1 root root 18009 Jul 5 2009 COPYING -rw-r--r-- 1 root root 1916 Dec 28 18:10 CREDITS -rw-r--r-- 1 root root 4840 Dec 28 18:37 FAQ -rw-r--r-- 1 root root 1209 Aug 2 2009 INSTALL drw-r--r-- 2 root root 4096 Feb 16 17:11 mods -rw-r--r-- 1 root root 6736 Dec 28 18:40 README Could you tell why executable bits aren't set? I guess it could be caused by some mask in the case of the mods directory but the parent directories in docdir scare me. (current, stable F-14) > > > > Ad doc files on one line: this is just a cosmetic change; I like to separate > > certain files from others if they are e.g. a "different documentation > > category". > > yep ;)
Never mind, I missed the %defattr there. Thanks for pointing this out, I'll include it with newpackage updates.
Git done (by process-git-requests).
tintin-2.00.5-4.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/tintin-2.00.5-4.fc14
tintin-2.00.5-4.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/tintin-2.00.5-4.fc15
Thank you all for getting this package to Fedora!
tintin-2.00.5-4.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report.
tintin-2.00.5-4.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.