Spec URL: http://dl.dropbox.com/u/4023668/unison240.spec SRPM URL: http://dl.dropbox.com/u/4023668/unison240-2.40.63-1.fc15.src.rpm Description: Unison is a multi-master file-synchronization tool. It allows two replicas of a collection of files and directories to be stored on different hosts (or different locations on the same host), modified separately, and then brought up to date by propagating the changes in each replica to the other. The unison package seems to be unmaintained (3 years since the last upgrade). This is my first package. I used the old spec and upgraded it too the recent stable version of unison. I may need a sponsor. unison240 fixes Bug 698833 (amongst others)
Did you try to contact the maintainers? You can find them via the package database: https://admin.fedoraproject.org/pkgdb Some comments: - Use the name macro - License is GPLv3+ (it seems) - Run rpmlint on all your packages: unison240-debuginfo.x86_64: E: debuginfo-without-sources - desktop-file-validate usr/share/applications/fedora-unison-2.40.desktop usr/share/applications/fedora-unison-2.40.desktop: warning: key "Encoding" in group "Desktop Entry" is deprecated usr/share/applications/fedora-unison-2.40.desktop: warning: value "Utility;Application;" for key "Categories" in group "Desktop Entry" contains a deprecated value "Application" Also use the icon in the desktop file. - Compiler flags are not honored - Try to solve file permissions before the files section - Use -p with install and cp commands; don't use -f with cp though - cat-ing the desktop file can go to the prep section. You could also have a file instead and use sed to place ver_compat. - Since you require ocaml 3.12 or above, you won't take this package to EPEL5. You can therefore drop the clean section, the buildroot rm in the install section and the buildroot definition. In order to find a sponsor, you should also take part in other reviews.
SRPM: http://dl.dropbox.com/u/4023668/unison240-2.40.63-1.fc15.src.rpm thanks for the quick response. contacted the fedora ocaml guy - rjones. He said unison is hard to package :-) (In reply to comment #1) > Did you try to contact the maintainers? You can find them via the package > database: https://admin.fedoraproject.org/pkgdb > > Some comments: > > - Use the name macro > I think I'm doing it where it's possible. > - Run rpmlint on all your packages: > unison240-debuginfo.x86_64: E: debuginfo-without-sources > I don't understand this rpmlint unison240-debuginfo-2.40.63-1.fc15.x86_64.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. > > Also use the icon in the desktop file. > it is used, isn't it!? > - Compiler flags are not honored > uhh...how is this with ocmal compiler possible? %{optflags} gives me bad errors > > - Since you require ocaml 3.12 or above, you won't take this package to EPEL5. > You can therefore drop the clean section, the buildroot rm in the install > section and the buildroot definition. > Ok, lowered to version 3.11.2 but still not compatible. > In order to find a sponsor, you should also take part in other reviews. good idea
Please always post a link to both -- SRPM and Spec file. Use a new release number when you publish a new version of your package and create a changelog entry. The changelog is for changes in packaging. Ah, yes, the icon entry is there, sorry! Concerning the name macro, you're right as well. I didn't notice the difference in ver_compat_name and ver_compat. By the way: %define should be %global: http://fedoraproject.org/wiki/Packaging:Guidelines#.25global_preferred_over_.25define My rebuild of your current version still has the debuginfo error on F15: http://www.geofrogger.net/review/unison240-debuginfo-2.40.63-1.fc15.x86_64.rpm
little update SPEC: http://dl.dropbox.com/u/4023668/unison240.spec SRPM: http://dl.dropbox.com/u/4023668/unison240-2.40.63-2.fc15.src.rpm why I have to post both the SPEC and SRPM? really have no idea how to pass the rpm optflags. make CFLAGS="$RPM_OPT_FLAGS" doesnt't work: "/usr/bin/ocamlopt: unknown option `-O2'." ...
and there is also no ./configure script in unison
Have you looked at the spec file posted here: https://bugzilla.redhat.com/show_bug.cgi?id=698833 Probably you have, but I'm mentioning this just in case you overlooked it. I'm not an expert on packaging, but apparently with this file it was possible to create an unison rpm. See http://forums.fedoraforum.org/showthread.php?t=264197
thanks for posting. But my unison rpm is working (I'm using it for myself). The question is how to pass the optflags and why some rebuilds got still debuginfo errors. This report is about ocaml optflags, but it doesn't apply here https://bugzilla.redhat.com/show_bug.cgi?id=438025
Today I learned how to build packages on koji: http://koji.fedoraproject.org/koji/taskinfo?taskID=3332045 Interestingly, the koji-unison-debuginfo gives also no errors: rpmlint unison240-debuginfo-2.40.63-2.fc15.x86_64.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings.
semantik-0.7.3-2.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/semantik-0.7.3-2.fc15
whoops little c&p mistake, sry
Using --vendor fedora has been obsolete for many years. Please remove it. Since IIRC Unison is not upwards or backwards compatible, I'm thinking that this package should be unison240.
(In reply to comment #4) > little update > SPEC: http://dl.dropbox.com/u/4023668/unison240.spec > SRPM: http://dl.dropbox.com/u/4023668/unison240-2.40.63-2.fc15.src.rpm > > why I have to post both the SPEC and SRPM? This makes it easier to check out the spec file without having to download the whole SRPM. > really have no idea how to pass the rpm optflags. make CFLAGS="$RPM_OPT_FLAGS" > doesnt't work: > "/usr/bin/ocamlopt: unknown option `-O2'." ... Crazy idea here... Maybe you set CFLAGS to $RPM_OPT_FLAGS but use sed to remove the minimum number of options that makes ocamlopt happy... The question I have is: Is this package required to use the standard compiler flags? The guidelines[1] say: "For C, C++, and Fortran code, the %{optflags} macro contains these flags." I'm not familier with ocmal... Is it considered a standard C,C++, etc. compiler? Richard [1] http://fedoraproject.org/wiki/Packaging:Guidelines#Compiler_flags
SPEC: http://brummbq.fedorapeople.org/unison240.spec SRPM: http://brummbq.fedorapeople.org/unison240-2.40.63-3.fc15.src.rpm (In reply to comment #11) > Using --vendor fedora has been obsolete for many years. Please remove it. Thanks, fixed. > Since IIRC Unison is not upwards or backwards compatible, I'm thinking that > this package should be unison240. This isn't exactly what I'm doing?
Okay, the title of the review request was just wrong. Fixed.
(In reply to comment #12) > (In reply to comment #4) > > really have no idea how to pass the rpm optflags. make CFLAGS="$RPM_OPT_FLAGS" > > doesnt't work: > > "/usr/bin/ocamlopt: unknown option `-O2'." ... > > Crazy idea here... Maybe you set CFLAGS to $RPM_OPT_FLAGS but use sed to remove > the minimum number of options that makes ocamlopt happy... No good idea, not a single option is compatible. > The question I have is: Is this package required to use the standard compiler > flags? I don't think so
hey dudes, Until we get unison240 into fedora updates I set up a Open Build Service Repo containing unison240 for F14 and F15. https://build.opensuse.org/package/show?package=unison240&project=home%3ABrummbQ
I will review this package
The %optflags mentioned above are not required. This is looking pretty good Gregor, but can you check here: http://fedoraproject.org/wiki/Packaging:OCaml#Requires_and_provides I believe this macro is newer than the previous version of unison and probably should be included. Please include before updating This package is APPROVED Required ======== + - OK - - N/A X - attention ? - comment please [+] named according to the Package Naming Guidelines [+] The spec file name must match the base package %{name}, in the format %{name}.spec [+] Meet the Packaging Guidelines [+] Be licensed with a Fedora approved license and meet the Licensing Guidelines [+] The License field in the package spec file must match the actual license [+] License file must be included in %doc [+] The spec file must be written in American English [+] The spec file for the package MUST be legible [+] The sources used to build the package must match the upstream source [+] Successfully compile and build into binary rpms on at least one primary architecture [+] Proper use of ExcludeArch [+] All build dependencies must be listed in BuildRequires [+] The spec file MUST handle locales properly [+] Shared library files (not just symlinks) in any of the dynamic linker's default paths, must call ldconfig in %post and %postun [+] Packages must NOT bundle copies of system libraries [+] If the package is designed to be relocatable, the packager must state this fact in the request for review, along with the rationalization for relocation of that specific package [+] A package must own all directories that it creates directories under this [+] A Fedora package must not list a file more than once in the spec file's %files listings [+] Permissions on files must be set properly. [+] Each package must consistently use macros [+] The package must contain code, or permissable content [-] Large documentation files must go in a -doc subpackage [+] If a package includes something as %doc, it must not affect the runtime of the application [-] Header files must be in a -devel package [-] Static libraries must be in a -static package [-] library files that end in .so (without suffix) must go in a -devel package You have separated the *_debug.so files out into a separate package? [-] devel packages must require the base package using a fully versioned dependency [+] Packages must NOT contain any .la libtool archives [+] GUI apps must include a %{name}.desktop file, properly installed with desktop-file-install in the %install section [+] Packages must not own files or directories already owned by other packages [+] All filenames in rpm packages must be valid UTF-8 [+] Packaged according to Fedora OCAML packaging guidelines Should Items ============ [-] the packager SHOULD query upstream for any missing license text files to include it [-] Non-English language support for description and summary sections in the package spec if available [+] The reviewer should test that the package builds in mock [-] The package should compile and build into binary rpms on all supported architectures [+] The reviewer should test that the package functions as described [+] If scriptlets are used, those scriptlets must be sane [-] Usually, subpackages other than devel should require the base package using a fully versioned dependency [-] The placement of pkgconfig(.pc) should usually be placed in a -devel pkg [-] If the package has file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin consider requiring the package which provides the file instead of the file itself [-] Should contain man pages for binaries/scripts
Great! Thank you, Brendan. When you have to review something ping me and I will help you out.
New Package SCM Request ======================= Package Name: unison240 Short Description: Multi-master File synchronization tool Owners: BrummbQ Branches: f15 f16 InitialCC:
BrummbQ is not a valid FAS account.
New Package SCM Request ======================= Package Name: unison240 Short Description: Multi-master File synchronization tool Owners: brummbq Branches: f15 f16 InitialCC:
Git done (by process-git-requests).
Thanks Greg, tiny one here for you: https://bugzilla.redhat.com/show_bug.cgi?id=781685
pushed to stable
Package Change Request ====================== Package Name: unison240 New Branches: el6 Owners: rjones