RFC: Explicit Requires without comments
by Michael Schwendt
Hello everyone!
Can we please enhance the packaging guidelines and request packagers to
add comments to explicit Requires more often than not?
Explicit Requires on package names are fragile. The contents of the
required package may move to a different (sub)package.
Uncommented Requires don't give a hint about why they have been added and
what inside a package is needed (with obvious exceptions, such as one
Python based package requiring another Python based package). What inside
a package is required? An executable? A directory? A datadir? A DBus
service? JavaScript files?
There's just
https://fedoraproject.org/wiki/Packaging:Guidelines#Explicit_Requires
but it focuses on library deps and in particular specific versions.
What do you think?
10 years, 8 months
Re: [Fedora-packaging] packaging Digest, Vol 102, Issue 15
by Jonathan De Wachter
I'm referring to the official naming policy to make this rename request and
this isn't the result of a personal preference. So far, the rule saying the
package name needs to match the upstream tarball is still not mentioned
anywhere, and is totally absurd to me, for the several following reasons:
1) The package name needs to reflect the project, not its tarball name.
As you said in the rename request ticket, using upper-case or lower-case
originate from an individual's history, so the author in this case probably
has used upper-case to ship his tarball because he's mainly a Windows user.
However, Linux users tend to use lower-case naming. We should also keep in
mind there isn't always a single "word" to call a project. People need to
make the difference between canonical, formal and complete name, and the
name chosen for the tarball isn't always the best for a package name. For
example, we could have named our tarball the several way, and we can still
do it:
- sfml-2.0.tar.gz
- SFML-2.0.tar.gz
- sf-2.0.tar.gz
- simple_and_fast_multimedia_library-2.0.tar.gz
- Simple-and-Fast-Multimedia-Library-2.0.tar.gz
I'm sure we can find a lot of ambiguous cases.
2) This invalidates the upstream's prefrence rule.
3) Many authors include a suffix or prefix to the project name to give a
hint about what language this library is for. Reusing this suffix or prefix
is silly, unless this does make the difference. I'm the author of pySFML
and although I use the word "pySFML" to name my project and to refer to the
binding for SFML, I ship my tarball under python-sfml-x.y.z.targ.gz.
4) You'd no longer have control on the package name.
5) What about tarball using fancy characters ?
Even if it's out-of-the-subject, I recall that allowing upper-case in a
package distribution context wasn't a good idea. I'm probably not the only
one to be pissed off to remember the packages cases and it wouldn't serve
any other purpose than differentiating two packages by their cases but
won't happen since this is also a bad idea.
To conclude, I would say we can still rename our tarball from SFML to sfml
but I consider it's Fedora's job to pull our tarball and make it fit its
policy, not the other way round.
Sonkun.
On Sat, Aug 17, 2013 at 2:00 PM,
<packaging-request(a)lists.fedoraproject.org>wrote:
> Send packaging mailing list submissions to
> packaging(a)lists.fedoraproject.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://admin.fedoraproject.org/mailman/listinfo/packaging
> or, via email, send a message with subject or body 'help' to
> packaging-request(a)lists.fedoraproject.org
>
> You can reach the person managing the list at
> packaging-owner(a)lists.fedoraproject.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of packaging digest..."
>
>
> Today's Topics:
>
> 1. Package naming guidelines (Michael Schwendt)
> 2. Re: Package naming guidelines (Ralf Corsepius)
> 3. Re: Package naming guidelines (Michael Schwendt)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Fri, 16 Aug 2013 19:13:23 +0200
> From: Michael Schwendt <mschwendt(a)gmail.com>
> To: <packaging(a)lists.fedoraproject.org>
> Subject: [Fedora-packaging] Package naming guidelines
> Message-ID: <20130816191323.09aee25e(a)faldor.intranet>
> Content-Type: text/plain; charset=US-ASCII
>
> Bad timing as weekend has arrived for many, but please, I would appreciate
> comments on this one *and* the earlier feedback in the ticket:
>
> https://bugzilla.redhat.com/997679
> -> https://bugzilla.redhat.com/997679#c14
>
> > Ralf Corsepius 2013-08-16 11:56:46 EDT
> >
> > You are forcing me to do something I've never done in Fedora before:
> >
> > (With my FPC-member hat on) This rename request violates the FPG,
> > because the upstream zip-ball is called SFML,
> > ...
> > Source0:
> http://www.sfml-dev.org/download/sfml/%{version}/SFML-%{version}-sources.zip
> > ...
> > It therefore MUST NOT be ACCEPTED.
>
>
> ------------------------------
>
> Message: 2
> Date: Sat, 17 Aug 2013 04:44:50 +0200
> From: Ralf Corsepius <rc040203(a)freenet.de>
> To: Discussion of RPM packaging standards and practices for Fedora
> <packaging(a)lists.fedoraproject.org>
> Subject: Re: [Fedora-packaging] Package naming guidelines
> Message-ID: <520EE3A2.9090007(a)freenet.de>
> Content-Type: text/plain; charset=UTF-8; format=flowed
>
> On 08/16/2013 07:13 PM, Michael Schwendt wrote:
> > Bad timing as weekend has arrived for many, but please, I would
> appreciate
> > comments on this one *and* the earlier feedback in the ticket:
> >
> > https://bugzilla.redhat.com/997679
> > -> https://bugzilla.redhat.com/997679#c14
>
> Executive summary:
>
> In https://bugzilla.redhat.com/997679 the package maintainer of SFML
> requests the SFML package to be renamed from SFML to sfml.
>
> I told him this would violated the FPG, because packages are supposed to
> be named to after the tarball. However he continues to insist on this
> renamer and sent comment https://bugzilla.redhat.com/997679#c14 in
> response to make unmisunderstandibly clear that he leave me no choice
> but to reject his package rename request.
>
> >> Ralf Corsepius 2013-08-16 11:56:46 EDT
> >>
> >> You are forcing me to do something I've never done in Fedora before:
> >>
> >> (With my FPC-member hat on) This rename request violates the FPG,
> >> because the upstream zip-ball is called SFML,
> >> ...
> >> Source0:
> http://www.sfml-dev.org/download/sfml/%{version}/SFML-%{version}-sources.zip
> >> ...
> >> It therefore MUST NOT be ACCEPTED.
> > --
>
> Ralf
>
>
>
> ------------------------------
>
> Message: 3
> Date: Sat, 17 Aug 2013 10:13:06 +0200
> From: Michael Schwendt <mschwendt(a)gmail.com>
> To: Discussion of RPM packaging standards and practices for Fedora
> <packaging(a)lists.fedoraproject.org>
> Subject: Re: [Fedora-packaging] Package naming guidelines
> Message-ID: <20130817101306.7ab58a98(a)faldor.intranet>
> Content-Type: text/plain; charset=US-ASCII
>
> On Sat, 17 Aug 2013 04:44:50 +0200, Ralf Corsepius wrote:
>
> > On 08/16/2013 07:13 PM, Michael Schwendt wrote:
> > > Bad timing as weekend has arrived for many, but please, I would
> appreciate
> > > comments on this one *and* the earlier feedback in the ticket:
> > >
> > > https://bugzilla.redhat.com/997679
> > > -> https://bugzilla.redhat.com/997679#c14
> >
> > Executive summary:
> >
> > In https://bugzilla.redhat.com/997679 the package maintainer of SFML
> > requests the SFML package to be renamed from SFML to sfml.
> >
> > I told him this would violated the FPG, because packages are supposed to
> > be named to after the tarball. However he continues to insist on this
> > renamer and sent comment https://bugzilla.redhat.com/997679#c14 in
> > response to make unmisunderstandibly clear that he leave me no choice
> > but to reject his package rename request.
>
> A few more details (the ticket comments aren't many, though):
>
> * In a previous Package Review request (bug 652085), it has been
> lower-case naming (sfml.spec and src.rpm). Different submitter and
> different
> reviewer as with the upper-case SFML package submission, but with no
> mention
> of the lower-case packages in other dists, and with no discussion of the
> naming guidelines.
>
> * One of the several bindings has been packaged in Fedora using lower-case
> naming and with a lower-case "-sfml" in its subpackage name, too. Same
> submitter as with the lower-case "sfml", but even another different
> reviewer.
>
> * Several of the bindings (there's the plan to package more of them) use
> a variety of mixed-case names, some all upper-case, others all lower-case.
> Especially with regard to Fedora's %{parent}-%{child} naming guidelines
> for add-on packages, it would get difficult and confusing to name the
> package family properly. ( http://www.sfml-dev.org/download/bindings.php )
>
> *
> https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Case_Sensitivity
> |
> | [...] Keep in mind to respect the wishes of the upstream maintainers.
> | However, if they do not express any preference of case, you should
> | default to lowercase naming.
>
> * https://fedoraproject.org/wiki/Packaging:NamingGuidelines#General_Naming
> |
> | If this package has been packaged by other distributions/packagers
> | in the past, then you should try to match their name for consistency.
>
>
> ------------------------------
>
> --
> packaging mailing list
> packaging(a)lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/packaging
>
> End of packaging Digest, Vol 102, Issue 15
> ******************************************
>
10 years, 8 months
Summary/Minutes from today's FPC Meeting (2013-08-15 16:00 - 17:40 UTC)
by James Antill
======================
#fedora-meeting-1: fpc
======================
Meeting started by abadger1999 at 15:33:21 UTC. The full logs are
available at
http://meetbot.fedoraproject.org/fedora-meeting-1/2013-08-15/fedora-meeti...
.
Meeting summary
---------------
* https://fedorahosted.org/fpc/ticket/323 Web Assets (abadger1999,
15:35:29)
* LINK:
https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/JavaScript
(abadger1999, 15:37:15)
* LINK:
https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/Web_Assets
(abadger1999, 15:37:29)
* LINK:
https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/FontsPolicy
(abadger1999, 15:37:33)
* LINK:
https://fedoraproject.org/w/index.php?title=User:Patches/PackagingDrafts/...
(tchol, 15:58:58)
* Web assets guidelines passed (+1:5, 0:0, -1:0) (abadger1999,
16:18:25)
* https://fedorahosted.org/fpc/ticket/326 Bundling exception for
python-kapteyn (abadger1999, 16:19:01)
* https://fedorahosted.org/fpc/ticket/327 Python shebangs should not
point to /usr/bin/python (abadger1999, 16:21:26)
* LINK:
https://fedoraproject.org/wiki/User:Toshio/Flock2013_Python_Guidelines#Wh...
(abadger1999, 16:24:31)
* https://fedorahosted.org/fpc/ticket/328 Soft-static uid/gid allocation
for Performance Co-Pilot (abadger1999, 16:25:48)
* ACTION: abadger1999 to confirm that our understanding of Performance
co-pilot is correct (abadger1999, 16:30:24)
* Open Floor (abadger1999, 16:30:30)
* LINK: https://fedorahosted.org/fpc/ticket/332 (tibbs|w, 16:33:15)
* Bundling exception for IQmol https://fedorahosted.org/fpc/ticket/332
(abadger1999, 16:33:40)
* LINK:
https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries#Copylibs
(limburgher, 16:37:05)
* ACTION: Smoother1rOgZ and abadger1999 will help the packager figure
out how to package these other pieces of code as libraries.
(abadger1999, 16:46:11)
* Open Floor (abadger1999, 16:46:31)
* Revisit SCLs (abadger1999, 16:46:57)
Meeting ended at 17:08:38 UTC.
Action Items
------------
* abadger1999 to confirm that our understanding of Performance co-pilot
is correct
* Smoother1rOgZ and abadger1999 will help the packager figure out how to
package these other pieces of code as libraries.
Action Items, by person
-----------------------
* abadger1999
* abadger1999 to confirm that our understanding of Performance
co-pilot is correct
* Smoother1rOgZ and abadger1999 will help the packager figure out how
to package these other pieces of code as libraries.
* Smoother1rOgZ
* Smoother1rOgZ and abadger1999 will help the packager figure out how
to package these other pieces of code as libraries.
* **UNASSIGNED**
* (none)
People Present (lines said)
---------------------------
* abadger1999 (90)
* limburgher (43)
* tibbs|w (31)
* tchol (30)
* geppetto (17)
* Smoother1rOgZ (16)
* racor (10)
* zodbot (4)
* rathann2 (1)
Generated by `MeetBot`_ 0.1.4
.. _`MeetBot`: http://wiki.debian.org/MeetBot
10 years, 8 months
Addon Packages General Naming policy
by Michael Schwendt
https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Addon_Packages_...
| If a new package is considered an "addon" package that enhances or adds a
| new functionality to an existing Fedora package without being useful on
| its own, its name should reflect this fact.
|
| The new package ("child") should prepend the "parent" package in its name,
| in the format: %{parent}-%{child}.
It's a simple naming scheme. Yet it seems that this part of the Naming
Guidelines is either not known widely enough, or some packagers and reviewers
think they don't need to adhere to this policy without asking this list
for feedback. And it's a "should" not a "must".
What's up with "vim" add-on packages? IMO, it's a confusing mess if some of
them start with vim- while others don't. Also, how to know whether/when a package
has been renamed to follow the guidelines? Packages like "gap-vim" and "uzbl-vim"
don't extend "gap" or "uzbl", but vim.
# yum list \*-vim-\*
Loaded plugins: langpacks, refresh-packagekit
Available Packages
fluxbox-vim-syntax.noarch 1.3.5-1.fc19 fedora
gap-vim.noarch 4.6.4-2.fc19 fedora
golang-vim.noarch 1.1.1-5.fc19 updates
protobuf-vim.x86_64 2.5.0-4.fc19 fedora
texlive-context-vim.noarch 3:svn29984.0-0.1.fc19 updates
texlive-context-vim-doc.noarch 3:svn29984.0-0.1.fc19 updates
uzbl-vim.x86_64 0-0.31.20120514228bc38cbd.fc19 fedora
wklej-vim.noarch 0.1.7-6.fc19 fedora
# yum info \*-vim-\*|grep '^\(Name\|Desc\)'
Name : fluxbox-vim-syntax
Description : Enable vim syntax highlighting support for fluxbox configuration
Name : gap-vim
Description : This package provides VIM add-on files to support editing GAP
Name : golang-vim
Description : Vim plugins for Go.
Name : protobuf-vim
Description : This package contains syntax highlighting for Google Protocol
Name : texlive-context-vim
Description : ConTeXt has excellent pretty printing capabilities for many
Name : texlive-context-vim-doc
Description : Documentation for context-vim
Name : uzbl-vim
Description : Highlighting files for uzbl's configuration.
Name : wklej-vim
Description : A wklej.org submitter plugin for vim.
On the contrary:
# yum list vim-\*
Loaded plugins: langpacks, refresh-packagekit
Installed Packages
vim-minimal.x86_64 2:7.3.1314-1.fc19 @updates
Available Packages
vim-X11.x86_64 2:7.3.1314-1.fc19 updates
vim-clustershell.noarch 1.6-3.fc19 fedora
vim-command-t.x86_64 1.4-4.fc19 fedora
vim-common.x86_64 2:7.3.1314-1.fc19 updates
vim-enhanced.x86_64 2:7.3.1314-1.fc19 updates
vim-filesystem.x86_64 2:7.3.1314-1.fc19 updates
vim-halibut.noarch 1.0-7.20120803svn9601.fc19 fedora
vim-jedi.noarch 0.5.0-5.fc19 fedora
vim-latex.noarch 1.8.23-11.20130116.788.git2ef9956.fc19 fedora
vim-latex-doc.noarch 1.8.23-11.20130116.788.git2ef9956.fc19 fedora
vim-nerdtree.noarch 4.2.0-9.fc19 fedora
vim-perl-support.noarch 5.0.1-3.fc19 fedora
vim-taglist.noarch 4.6-5.fc19 fedora
vim-vimoutliner.noarch 0.3.6-3.fc19 fedora
10 years, 8 months
Macro usage for Fedora 20 documentation tree change
by Greg Bailey
Hello list,
I have a package "mup" that currently fails to build in Rawhide due to
the introduction of the following Fedora 20 feature:
http://fedoraproject.org/wiki/Changes/UnversionedDocdirs
My current (broken) spec file has things like the following to fix up
file paths referenced by the upstream makefile:
sed -i -e 's|DOCDIR = $(PREFIX)/share/doc/packages/mup|DOCDIR =
$(PREFIX)/share/doc/%{name}-%{version}|' makefile
It's broken because the "make install" invocation installs things to
"/usr/share/doc/mup-6.1" but RPM in rawhide is now looking for
documentation files in "/usr/share/doc/mup" (unversioned).
My initial thinking was to set %{_docdir_fmt} if it's not already set,
using:
# Set %_docdir_fmt if it's not already defined
%{!?_docdir_fmt: %global _docdir_fmt %%{name}-%%{version} }
And then replace the sed line above with:
sed -i -e 's|DOCDIR = $(PREFIX)/share/doc/packages/mup|DOCDIR =
$(PREFIX)/share/doc/%{_docdir_fmt}|' makefile
This change allows builds to work on EPEL6, but breaks on rawhide
because in Fedora 20, %{_docdir_fmt} is set to "%{NAME}". The %{NAME}
macro doesn't appear to change to "mup" (my package), but "%{name}"
*does* evaluate to "mup". As a result, I end up installing files to the
literal path "/usr/share/doc/%{NAME}".
It's not clear to me whether macros are supposed to be case-sensitive or
not, but if I echo "%{NAME}" and "%{name}" in my .spec file, I get 2
different answers.
I'm a relatively new packager, and would appreciate any advice from the
experts here as to how best to refer to the correct documentation path
(i.e. "%{_pkgdocdir}" in rawhide) without having to maintain 2 different
spec files.
thanks!
Greg
10 years, 8 months