From Fedora Project Wiki

< FWN‎ | Beats

(fwn #148 spell-checked)
(fwn #149 devel beat)
Line 8: Line 8:
Contributing Writer: [[OisinFeeley|Oisin Feeley]]
Contributing Writer: [[OisinFeeley|Oisin Feeley]]


=== OpenOffice and go-oo ===
=== Splitting Up R ===


The controversy swirling around the OpenOffice.org "fork" named "go-oo" popped up[1] along with a request for information about why "[...] Fedora ships a relatively stock (stock + 98 patches) OO.o rather than shipping [...] the extended feature set provided by go-oo such as the opengl slide transitions [?]" [[CaolanMcNamara|Caolán McNamara]], the maintainer, explained[2] that he attempted to stick close to upstream "[w]ith a fairly aggressive push of any fedora patches back upstream asap [...]" and based upon the low number of reported bugs he believed "[...] this route provides the stablest and best supported product for fedora users." Caolán added that the OpenGL slide transitions were "still in a bit of a confused state" but would probably appear in Fedora 11. While Caolán eschewed any animosity to the parent ooo-build[3], and emphasized that Fedora had contributed <code>fontconfig</code> glyph replacement functionality to ooo-build and extended their <code>GStreamer</code> patches, he suggested that using ooo-build as an upstream would result in a confusing morass of patches upon patches.
[[TomCallaway|Tom Callaway]] alerted[1] the list that he intended to merge the <code>R-devel</code> package with the base <code>R</code>[2] package. Tom's motivation was that many complaints had been received from users who attempted to install extensions from the external CRAN[3] repository using R's built-in package system. "This doesn't work unless you have R-devel installed. The average R user is a professor or a student, and neither of them are going to necessarily possess the necessary Linux/Fedora knowledge to be able to understand why this doesn't work like the R documentation says it should." Tom recognized that this was a violation of the Fedora Packaging Guidelines[4] and that he was "[...] not entirely sure if I need FESCo or FPC approval to take this action, if so, this is my notice of requesting it. ;)"


[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01134.html
[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02240.html


[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01140.html
[2] R is an interpreted language based upon S and Scheme intended to be used for statistical computation: http://www.r-project.org/


[3] A collection of patches presented through a subversion repository which was intended to work around organizational and practical bottlenecks in OpenOffice.org development. http://wiki.services.openoffice.org/wiki/Ooo-build
[3] http://cran.r-project.org/


[[MuayyadAlSadi|Muayyad AlSadi]] argued[4] that go-oo should be used because "[...] one can drop java and ship openoffice on a livecd [like Novell, Gentoo, Ubuntu.]" In the exchange that followed Muayyad revealed[5][6] that he had produced a Fedora-derived LiveCD with <code>Openoffice.org</code> on it by the expedients of moving some large Java <code>jar</code> and <code>.class</code> files out of the core rpm package and restricting the language choice to Arabic only. Muayyad suggested that adding the resulting missing pieces could be done by adding them to comps.xml . Caolán argued[7] that providing a non-working OpenOffice.org (the search functionality depends on Lucene[8] and the XSLT wizard depends on SAXON[9] both of which are written in Java) was an unacceptable user experience. It also appeared that the other distributions mentioned by Muayyad had restricted themselves to a small subset of languages which would result in a non-usable OpenOffice.org for many Fedora users.
[4] http://fedoraproject.org/wiki/Packaging/Guidelines


[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01163.html
[[EnricoScholz|Enrico Scholz]] suggested[5] instead: "[...] add it to comps.xml [or] move 'R' to Rcore, and add 'R' which depends on 'R-core' + 'R-devel"' which have the major advantage of not missing all of R-devel's dependencies. Tom accepted[6] these points because "[...] the suggested R/R-core/R-devel split instead [would allow users] to get everything with yum install R, it would meet the guidelines, and minimal installs with R can simply have R-core."


[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01181.html
[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02249.html


[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01291.html
[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02251.html


[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01287.html
[[JamesAntill|James Antill]] agreed that the general model of "foo-core + additions" was maintained by such a split but asked[7] "[...] why don't we just package more of the <code>R</code> modules so <code>CRAN</code> usage isn't a requirement?" [[JoséMatos|José Matos]] answered[8] that there were far too many R modules "[...] more than 1500 modules (the have been growing at an exponential rate in the last years). So while we would like to see more R packages in Fedora in are not even near to have a reasonable subset of R packaged." James worried[9] that "[...] you could use that argument a lot (there are probably still more unpackaged libc using things than packaged)." James showed that there were many more unpackaged users of libc than packaged using:
<pre>repoquery -whatrequires '*-devel' | \
  fgrep -v - '-devel-' | \
  fgrep -v - '-static-'
</pre>


[8] A text search-engine library: http://lucene.apache.org/java/docs/
[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02267.html


[9] An XML stylesheet processor: http://saxon.sourceforge.net/
[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02272.html


Caolán suggested[10] that using go-oo as a base would not solve the Java dependency and referred[11] to his own work to reduce Java dependencies as a way in which this goal might be achieved: "Taking `removing java from core dependencies' as the target, then the right approach is the boring slow-fix stuff to e.g. rewrite the help search to not require the java lucene stuff and to tweak the xsltfilter stuff to be a standalone expert-style feature that only appears in the menus when the xsltfilter package is installed and place the saxon requires on that subpackage, and so on for other java functionality." Caolán had previously split out the <code>beanshell</code> scripting engine to a separate package and he recommended that Muayyad: "[...] investigate further as to why exactly removing or replacing java dependencies is the target, when I last thought seriously about the area I felt the right thing to do was stop swimming against the tide and boil out some concrete standalone feature requires for gcj to be able to provide the functionality that was missing at that stage to implement the java-needs of OOo, and our fabulous java hackers simply implemented them. Your questions should be what exactly are the size figures are for requiring the java dependencies and where is that space getting used and why."
[9] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02274.html


[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01362.html
The availability of a tool named <code>R2spec</code> to convert <code>R</code> package formats to rpm packages was mentioned[10] by [[MatthewSalzman|Matthew Salzman]]. Later threads which appeared in part only on @fedora-r-devel investigated the problem of languages implementing their own packaging systems. [[JoséMatos|José Matos]] played[11] Devil's Advocate with the remark that "[...] each language is building its own repository and packaging system in a sense we have lots of equivalents of (yum+rpm) for each language (perl, php, python, R, tex, ...) [but] for the system to be really useful it must use the least possible denominator (read the dumbest wins- pun intended ;-) )." José suggested that R2spec could also be tweaked to discover dependencies and include them in its generated spec files. It appeared[12] that Pierre-Yves had a "[...] small script to update the spec file when there is a new release of an already package R-library. This might be something that I should develop maybe a bit more now (especially since Bioconductor[12a] 2.3 has been released with R 2.8.0)"


[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01460.html
[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02288.html


=== PackageGurus, SpecMentats or UeberPackagers? ===
[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02301.html


On 2008-08-13 it was announced[1] on @fedora-announce that CVS access had been revamped to allow trusted users to modify packages "distro-wide", not merely packages which they own or co-maintain. In order to clarify the changes some new terminology was introduced. Ordinary maintainers (previously members of the "cvsextras" group) are now members of the "packagers" group and those who are trusted to assist with all packages are members of the group named "uberpackager". This change has been coming for some time (see FWN#136[2] for previous discussions) and seems as though it will help cut out some bureaucracy.
[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02306.html


[1] https://www.redhat.com/archives/fedora-announce-list/2008-August/msg00007.html
[12a] Modules primarily for bioinformatics and genomics.


[2] http://fedoraproject.org/wiki/FWN/Issue136#New.libraw1394.Rebuild.Exposes.Closed.ACLs
=== Flinging Poo at libtool-2.2 ===


[[LennartPoettering|Lennart Poettering]] objected[3] to the term "uberpackager" as too redolent of "Nazi terminology" and asked "[...] if we have "Überpackagers", maybe it's time to rename normal packagers to "Unterpackagers"? That would fit awfully well into our pursuit for world domination, wouldn't it?"
A discussion on the future of <code>libtool</code> in Fedora is worth reporting although it is slightly older. [[OrionPoplawski|Orion Poplawski]] wondered[1] whether it was the correct time to integrate <code>libtool-2.2.X</code> into Fedora 11. [[BenjaminKosnik|Benjamin Kosnik]] wanted[2] it available in Fedora before <code>GCC</code> was bumped to <code>gcc-4.4.x</code> as that will depend on <code>libtool-2.2.6</code>.


[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01657.html
[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00467.html


[[CaseyDahlin|Casey Dahlin]] took the point but wondered[4] why Lennart had waited until now to object which led[5] Lennart to clarify that he did not follow all Fedora mailing-list discussions and "[...] noticed the adoption of this term for the first time a week or two ago when I had to log into FAS and noticed I had become an Überpackager. And, oh, god, with my blonde hair and blue eyes it felt so deserved... "
[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00516.html


[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01658.html
A possible need for FESCo approval was expressed[3] by [[KarstenHopp|Karsten Hopp]] as he was worried that "[...] it breaks up to 300 packages according to my mass rebuilds. I'm going to prepare a Wiki page with details about that." That prompted the first of several queries about the purpose and suitability of <code>libtool</code>. [[DavidWoodhouse|David Woodhouse]] asked[4] "[i]sn't the whole point of libtool that it should make things _easier_, not break huge swathes of packages whenever we change it? How about we fix those 300 packages by making them _not_ use libtool, rather than making them use the latest version?" [[ToshioKuratomi|Toshio Kuratomi]] thought[5] that "If the state of the art has advanced and there's a tool that can replace libtool so a developer can say `I want a shared library' and the tool builds it on all platforms then we could look into getting upstreams to switch but simply getting rid of libtool in favour of handcoding Makefiles to build shared libraries is a step in the wrong direction."


[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01661.html
[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00479.html


[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00730.html


Many respondents were sympathetic to the objection. [[PaulFrields|Paul Frields]] explained[6] that "[u]se of "über-" has indeed made the jump to slang English. I think there's an increasing tendency in new media communities to attempt to subvert or undermine existing connotations of terms, for better or worse. In cases like this, I think we unconsciously or semi-consciously think we're deflating any unpleasantness by using them casually.I'm certain no offense was intended, but your comment is worth serious consideration." The problem of over-sensitivity was raised by several contributors including [[AndrewParker|Andrew Parker]] who asked[7] "Do we have to have all our words vetted against every language before we can use them?" and provided some examples of common failures to do this. [[AxelThimm|Axel Thimm]] added[8] further arguments against Lennart's interpretations.
[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00737.html


[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01659.html
AdamJackson offered[6] that gcc was available on <code>Solaris</code>, <code>Windows</code>, <code>*BSD</code> and <code>OSX</code> with the conclusion "[m]st of the complexity in libtool (and autotools in general) is to support systems that simply are not worth supporting and that practically speaking don't exist anymore. I'm being slightly flip in saying 'gcc -shared' but really not by much. Honestly for any fringe platform the correct thing to do is port gcc/binutils/gmake first." There were many disagreements on this point and [[SamVarshavchik|Sam Varshavchik]] posted[7] a convincing potted summary of them: "There's much more to libtool then just building shared libraries. If you remove everything from libtool that supports ancient platforms, you'll still have quite a bit left. For example, libtool builds both shared and static libraries in parallel. That, alone, saves you from dealing with a massive hairball in your makefiles. Ask anyone who works on a large, complicated app, that links with its own shared libraries. The option to easily build a statically-linked version is quite invaluable, for debugging purposes."


[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01785.html
[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00744.html


[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01815.html
[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00791.html


Some extensive bike-shedding[9] followed with suggestions for alternate terminology ranging from [[JonCiesla|Jon Ciesla's]] "spec-mentat"[10] to [[SethVidal|Seth Vidal's]][11] "WednesdayPackager". Seth exclaimed[12] "[...] our ability to make subtle references that even we eventually don't understand kicks ass. :)"
The practical experience of the MinGW project related[8] by DanielBerrange was also that gcc -shared was insuOEcient i[...] if you're trying to build for windows. The mingw32 work has only been made viable because libtool has basically taken care of the horrible shared library build process required by Windows.j Further details were supplied[9] at Adam's request and KevinKoAEer confirmed[10] that producing a DLL involved several complications.


[9] http://en.wikipedia.org/wiki/Color.of.the.bikeshed
[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00743.html


[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01662.html
[9] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00755.html


[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01800.html
[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00780.html


[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01863.html
Discussion of alternatives veered[11] towards <code>CMake</code>. [[BradenMcDaniel|Braden McDaniel]] was unconvinced[12] that this was a realistic suggestion for replacing libtool in approximately three hundred upstream projects. [[KevinKofler|Kevin Kofler]] took[13] a detailed look at the problem and argued that attempting to "[...] convince the automake developers to use something other than libtool is pointless, because automake should also go away, it's at least as obsolete, buggy, unable to maintain backwards compatibility, annoying, a massive time waster at build time and a major PITA for developers to code with as libtool is. The whole autotools stack sucks. It always did, we just didn't have anything better. We now do, so why are people still using autotools?" His critique seemed convincing and he later added[14] that "CMake is used by all of KDE 4 [...]" and in an exchange with [[RichardJones|Richard W. M. Jones]] explained[15] that Gnulib was also not a good replacement for autotools: "[...] a "library" which works by copying itself into the source code of the project is a horribly broken concept."


At one stage it appeared[13] that [[ToshioKuratomi|Toshio Kuratomi]] would change the name to "ultrapackagers" and Lennart excused[14] himself from further discussion: "Toshio already agreed to changing this term and it is not too much work. So let's just do it and forget about it and not continue this discussion here. I am here for the code, not for discussing Nazism." [[AxelThimm|Axel Thimm]][15] and [[TillMaas|Till Maas]] disagreed[16] that the prefix "über-" necessarily carried the connotations associated with it by Lennart and several others on the thread. Toshio noted[17] that he would need to make any change either tomorrow or else put it off until after the freeze. In passing he expressed a preference for the term "masterpackager" leading [[JesseKeating|Jesse Keating]] to joke[18] that he preferred his bike sheds colored chartreuse.
[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00780.html


[13] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01675.html
[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00775.html


[14] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01826.html
[13] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00799.html


[15] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01836.html
[14] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01017.html


[16] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01897.html
[15] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01142.html


[17] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01902.html
LennartPoettering and RalfCorsepius were[16] suspicious of the attempt to replace autotools with CMake. Ralf argued that "Cmake is imake in new clothes and suffers from the same design flaws as imake did. It's only the limited set of requirements being used by the limited set of use cases it's proponents apply which lets them think 'cmake is better'." StephenSmoogen saw[17] a need to halt the conversation when he examined it from a human neuropsychology viewpoint: "So basically this conversation is a 'dead' conversation. People have their hairs on their necks up, [enough] testosterone pumping to put [out] 3 or 4 beards in a day, and are [on] to the flinging poo part. At this point, there is no way either side is going to say that Cmake is better at this, or Autotools is better than that. Wait a week, and see if one can bridge the gap with some diplomatic discourse[.]"


[18] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01904.html
[16] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00954.html
[17] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01023.html


=== A Single Torrent ? ===
Later a new thread was started[18] by [[BradenMcDaniel|Braden McDaniel]] to recommend that <code>autoreconf</code> should be explicitly forbidden to be run by rpm packages. He explained that he saw the problems caused by running <code>autoreconf</code> or <code>libtoolize</code> as "[b]y running autoreconf, the RPM build becomes exposed to different versions of autoconf, automake, and libtool than were used by the upstream developer to create the upstream source package. Newer versions of these tools have the potential to introduce incompatibilities, breaking the RPM build. Rather than patching configure.[ac,in] and Makefile.am, a more resilient approach is to patch the configure script and Makefile.in files."[[ TillMaas|TillMaas]] added[19] a link to a wiki draft on the subject and suggested that "[...] one should run autoreconf locally and create a patch from this, that is then used within the spec." The conversation veered[20] into sharp disagreement as to whether autotool generated files should be treated similarly to "binary JARs (for which the packaging guidelines mandate that they have to be removed and rebuilt from source)" or this should be avoided in order to avoid "potential breakage". This issue seems destined to generate further disagreement.


The ability of many torrent clients to offer the user a choice of specific files within a torrent prompted [[JesseKeating|JesseKeating]] to ask[1] "[...] does it make sense to collapse the DVD and CD torrents into a single torrent and allow people to use the client to pick which they want? Are there pros/cons to this?"
[18] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00866.html


[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01735.html
[19] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00869.html


[[JonCiesla|Jon Ciesla]] wondered if the perceived "lowest common denominator client" <code>bittorrent-curses</code> offered this ability. <code>bittorrent-curses</code> was dismissed[2] as being dead and closed by [[JesseKeating|Jesse Keating]] which led[3] to a slightly hyperbolic demand by [[BehdadEsfahbod|Behdad Esfahbod]] for an equivalent to facilitate "mindless" downloading. In a later exchange with [[JohnReiser|John Reiser]] it was clarified[4] that the "old dead" <code>bittorrent4.4.0-7</code> only downloaded all files in a torrent. [[DenisLeroy|Dennis Leroy]] and [[ConradMeyer|Conrad Meyer]] provided[5] reassurance that both <code>rtorrent</code> and <code>transmission</code> provided ncurses-based interfaces that offer marking specific files for download.
[20] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00970.html


[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01745.html
=== Livna Migration to RPM Fusion ===


[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01753.html
Several of the third-party repositories external to the Fedora Project agreed some time ago to merge into a single new entity named "RPM Fusion"[1]. The current partners include Dribble, Freshrpms and Livna. [[ThorstenLeemhuis|Thorsten Leemhuis]] reported[2] that "[...] nearly all of livna's packages have been imported and build for RPM Fusion, but a few are still missing. So you should leave livna repos enabled for now if you want everything [.]" Thorsten explained the migration process in this post with the important details that "[...] all users that installed livna properly (e.g. by installing the livna-release package) and enabled the testing repos will now get RPM Fusion enabled automatically."


[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01752.html
[1] http://rpmfusion.org


[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01808.html
[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02367.html


Jesse explained[6] that one advantage of what he was suggesting was "[w]e can reduce the number of links offered to users on download pages, simplify the instructions, and have a better end user experience." His workflow avoided resorting to the command line.
A suggestion was made[3] by [[NicolasMailhot|Nicolas Mailhot]] to either use the "modern proxyfriendly createrepo" or else "define http.caching=packages" in the yum repo files.


[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01760.html
[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02368.html


[[RichiPlana|Richi Plana]] responded[7] that lumping all the isos into a single torrent was not a good idea as "[m]ost people really only download one iso [...]" and Jesse hastened[8] to clarify "I meant collapsing them per arch, so you'd have one torrent file for Fedora 10 x86.64, one for Fedora 10 i386, ppc, source etc.. and probably different torrent files for the i686 Live and x86.64 Live offerings. I wouldn't imagine one giant torrent file that has every iso of the release on it."
Users who currently have the Livna repository enabled can transition to the new RPM Fusion repository by:


[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01751.html
<code>yum install rpmfusion-free-release rpmfusion-nonfree-release</code>


[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01761.html
=== Sbin Sanity Stays ===


Some definite preferences were expressed[9] by [[ChrisSnook|Chris Snook]] on how to Do The Right Thing By Default: "there needs to be a standalone torrent that has just the DVD ISO (and maybe the netinst ISO) for all those newcomers who don't know any better, so we don't scare them off with a 9 GB torrent." Chris raised the problems of prioritization and smaller sets of disjoint peers for more specific torrents, especially for the case[10] of one CD iso per torrent. The ability to prioritize specific files might allow work to be started sooner by, for instance, downloading a LiveCD first. [[CallumLerwick|Callum Lerwick]] suggested [11] using <code>Azureus</code> for this purpose.
The latest FESCo meeting[1] logs record that the decision to add <code>/sbin</code> to each users <code>PATH</code> variable (see FWN#146[2]) will be kept until a working alternative for both non-root and root users is available. The brief deliberations indicate that FESCo members tended to manually add <code>/sbin</code> to their own paths and distilled the objections to the sole point of "".


[9] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01764.html
[[ThorstenLeemhuis|Thorsten Leemhuis]] was dismayed[3] and agreed with [[VilleSkyttä|Ville Skyttä]] that the change would[[4]] result in many confused users. Thorsten wished to "[...] help Ville and Matthew making a real solution, where sbin stays "root commands" only, and where package that are right now get into he search path for ordinary users (either with symlinks or by moving the binaries). But it's IMHO best for everyone if we do that for F11. Come on, we had /sbin not in the path for more then how many years, so what is one half year more (especially as everyone that dislikes it is used to enable it already)?"


[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01772.html
[[JonMasters|Jon Masters]] disagreed[5] on the basis that any script should be using an explicit and absolute binary location anyway: "If you're writing scripts and not explicitly calling out the binary location, then it's not surprising if your scripts break later. I know it's nice to always assume a particular PATH, but it's not good practice any more than including or not including sbin in the PATH to begin with." He also cautioned that most other distributions had made this change a long time ago and that "[...] everyone else is already laughing that Fedora didn't do this, so really it doesn't need to wait for yet another 1.5 years to get done :)"


[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01806.html
[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02273.html


A separate problem posed[12] by [[SethVidal|Seth Vidal]] was the absence of good trackers and seeders: "[I]n terms of clients - there are a lot of choices. In terms of trackers and good server-like-seeders there are NOT a lot of choices. [T]he original bittorrent client pre-proprietary is the best we have right now." [[CallumLerwick|Callum Lerwick]] again noted[13] <code>Azureus</code>' abilities: "I'd suggest just biting the bullet, fire up a vncserver instance, and run Azureus. It is incredibly flexible at managing many torrents at once, it can run a tracker as well, and the GUI allows you a level of insight into the status of a torrent that you just won't get from a text client."
[2] http://fedoraproject.org/wiki/FWN/Issue146#PATH:.2Fsbin.Tab.Confusion


[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01759.html
[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02294.html


[13] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01807.html
[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02180.html


=== The Old Sendmail Argument ===
[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02296.html


An old discussion (see FWN#145[1]) was given new legs when instructor [[LutzLange|Lutz Lange]] asked[2] why <code>sendmail</code> "[...] is still the default MTA in Fedora [?]" [[PatriceDumas|Patrice Dumas]] answered[3] with an excellent summary of the discussions preceding Fedora 10: "To sum up some people considered that local delivery was a must for the default MTA, and that a send-only MTA wasn't good enough, e.g., for cronie. My personnal opinion is that there should not be any MTA in the @base or @code group, and that a MTA should be chosed if it is pulled in as a dependency, so it could be sendmail or anything else. Whether local delivery is a must for cronie or other packages that today require /usr/sbin/sendmail is another story that caould be discussed a bit more, though in the end it seems to me that this should be up to the maintainer."
=== Packaging Webmin: Should it go in /opt ? ===


[1] http://fedoraproject.org/wiki/FWN/Issue145#Default.Deactivation.of.Services
[[AndyTheuninck|Andy Theuninck]] asked[1] for some help in "[...] trying to put a package together for webmin. It wants to install to libexec, but if I do that rpmlint (rightly) complains that there are non-executable text files. Perl files & HTML files are intermixed and separating them out would be a patching nightmare [...] as I read FHS /opt would be the most appropriate place [but] if I try to use /opt/webmin [then] rpmlint pitches a fit about using /opt."


[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01693.html
[[ToshioKuratomi|Toshio Kuratomi]] quoted[2] the FHS[3:] "The FHS says: /opt is reserved for the installation of add-on application software packages. Anything packaged by Fedora is part of the system packaging rather than an addon so we stay out of /opt." He also suggested that separating the different files types and getting webmin's upstream[4] to accept patches to do this was a preferred path in the Fedora Project. Failing this it was possible to separate the files and symlink them to the upstream-enforced layout. Another useful link[5] to the Fedora Project's web application packaging guidelines in Toshio's post indicated that non-executable files might best be put into /usr/share. Andy seemed[6] to like the idea of "[m]oving as much as possible over to /usr/share and symlinking against the files that are actually needed[...]" as this would allow upstream to continue to support many OSes by the simple expedient of "sticking everything into a single directory."


[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01694.html
[[NicolasMailhot|Nicolas Mailhot]] disparaged[7] the use of /opt as "[...] he right place to dump messes and is good enough for ISVs with no ambitions but Fedora does not package messes [.]" [[CaseyDahlin|Casey Dahlin]] cautioned[8] Nicolas "Easy, he's here because he wants to do the right thing, and he's not upstream, so there's no reason to clueby4 him just yet" and went on to suggest a similar path to that above: "You might do what apache does and simply place the files where they go, then symlink them to a conf directory in /etc . You'd be doing it on a much larger scale than apache, but until you get upstream to suck less, you at least have a precedent for it (though doing it for apache hasn't particularly encouraged them to change their goofy-as-hell recommended file layout)."


[[LesMikesell|Les Mikesell]] rose[4] to the defense of <code>sendmail</code> as a highly-audited and extensible standard with which most administrators are familiar. All these points were disputed by various and sundry and [[DominikMierzejewski|Dominik Mierzejewski]] added[5] the interesting information that <code>postfix</code> has partial <code>milter</code> support thus allowing it to be extended easily. [[DavidWoodhouse|David Woodhouse]] took issue[6] with the idea that <code>milter</code> support was important: "Some of the better alternatives don't even _try_ to run milters, because they are fully-featured enough in their own right, without needing to rely on external software" and appeared[7] to put to rest the idea that it was difficult for these alternatives to run tests on messages prior to accepting them in an SMTP conversation. Les finished[8] off with an argument invoking the inertia of a wide base of currently working sendmail systems: "[Postfix is] worse at backwards compatibility. Fedora seems to assume that their users don't already have something working, so maybe that's not a concern to anyone here. If it shipped with a decked-out, well tested setup already integrated with MimeDefang/clamd/spamassassin it might be enough of an improvement to switch."
[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02289.html


[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01697.html
[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02291.html


[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01730.html
[3] Filesystem Hierarchy Standard: http://www.pathname.com/fhs/


[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01895.html
[4] http://www.webmin.com/


[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01917.html
[5] http://fedoraproject.org/wiki/Packaging/Guidelines#Web.Applications


[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01750.html
[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02327.html


Some abstruse jokes were cracked[9] when [[DenisLeroy|Denis Leroy]] observed[10] that "[t]he sendmail configuration file is arguably one of the most complex and obfuscated configuration format ever designed in the history of computer science. :-)" and [[AlanCox|Alan Cox]] suggested[11] comparing it to IBM's JCL or TECO. But [[LesMikesell|Les Mikesell]] believed[12] that "[...] these days all of the m4 templates anyone might ever need have already been written, so everyone just uncomments or tweaks a few lines in sendmail.mc for options and the default already does the right thing for most people. Or, for complex scenarios you can drop in MimeDefang as a milter and do most of the control steps with perl snippets."
[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02297.html


[9] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01708.html
[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02300.html
 
[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01702.html
 
[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01707.html
 
[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01710.html
 
The decision to ship the Desktop spin[13] with no <code>MTA</code> was mentioned[14] by [[ColinWalters|Colin Walters]] with the observation that mail from <code>logwatch</code> would be sent to <code>/dev/null</code> as "[...] most logs from a desktop machine are just pure noise." In response to [[MatthewWoehlke|Matthew Woehlke's]] desire for a means to view some log information [[RahulSundaram|Rahul Sundaram]] suggested[[15]] working on <code>gnome-system-log</code>.
 
ArjanvandeVen threw[16] some cold water over the discussion with the observation that "[a]nybody trying to argue for the politics of Exim/Postfix/Sendmail as default choice is ignoring the reality..." as users simply requiring send-only MTAs can use sSMTP (or something similar) while those requiring a full-blown MTA have strong individual preferences. [[KarelZak|Karel Zak]] and [[ColinWalters|Colin Walters]] returned[17] to the vision of Fedora as a "desktop distribution" with Colin arguing "I understand there's the "workstation" use case where you're say doing web development and you want to install Apache or Tomcat or something locally and run logwatch on it. We obviously will support that. But it doesn't make sense for the default desktop OS to be sending you email about all the junk going on under the hood."
 
[13] https://fedoraproject.org/wiki/SIGs/Desktop
 
[14] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01787.html
 
[15] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01791.html
 
[16] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01915.html
 
[17] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01920.html
 
=== Review-o-matic ===
 
[[KushalDas|Kushal Das]] announced[1] that he was starting work on a project to help automate the repetitive parts of the review process, as originally suggested[2] by [[ChrisWeyl|Chris Weyl]] on @fedora-packaging. This seems timely in light of recent discussions which indicated (see FWN#111[3] and FWN#147[4)] that as the number of Fedora packages grows (PackageDB indicates[5] that Fedora has grown to offer approximately 6,842 packages) the review queue has on occasion become congested.
 
[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01625.html
 
[2] https://www.redhat.com/archives/fedora-packaging/2008-October/msg00023.html
 
[3] http://fedoraproject.org/wiki/FWN/Issue111#Review.Queue.Cont.
 
[4] http://fedoraproject.org/wiki/FWN/Issue147#LXDE.Feature.Removal.Disappointment.- .How.to.Avoid
 
[5] https://admin.fedoraproject.org/pkgdb/collections/
 
Kushal listed the basic tasks as: rpmlint; build in mock; md5sum matches between srpm and upstream. The tool would, upon submission of a new review request, download the SRPM and SPEC, run the aforementioned tasks and then post the results on bugzilla.
 
"Pierre-Yves" was among those that requested[6] the ability to make the build directly on <code>koji</code>. [[RichardJones|Richard W. M. Jones]] explained[7] that this would allow checking that the package also built on PPC/PPC64 architectures. [[PaulFrields|Paul Frields]] and [[BrianKearney|Brian Kearney]] liked[8] the idea of doing koji scratch-builds and Pierre-Yves and [[DebarshiRay|Debarshi Ray]] concurred[9] as long as it was possible to keep the builds from being removed until the review was completed. [[User:Ivazquez|Ignacio Vazquez-Abrams]] thought[10] that it ought to be easy enough to do some automatic annotations conditional on the success of the build.
 
[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01634.html
 
[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01649.html
 
[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01639.html
 
[9] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01641.html
 
[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01643.html
 
Approval of the general idea was expressed[11] by [[RichardJones|Richard W. M. Jones]] : "[...] every package guideline which (a) isn't already done by rpmlint, and (b) can feasibly be checked automatically, should be checked." He added that it would be useful to extend rpmbuild to be able to run test tools such as rpmlint or "review-o-matic" on its generated packages. [[VilleSkyttä|Ville Skyttä]] later confirmed[12] that Richard would need to get a patch in to rpm itself in order to get "[...] rpmbuild to run rpmlint automatically on the packages that rpmbuild makes [.]"
 
[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01649.html
 
[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01816.html
 
DebarshiRay linked[13] to a script named "fedora-qa" which seemed to overlap some of the functionality of rpmlint and added that [[RakeshPandit|Rakesh Pandit]] and [[DebarshiRay|Debarshi Ray]] were[14] working on using it to "[...] do spec file sanity checking [...]" He stated his own progress as "I have a very initial stage of code up and running which is taking bugzilla numbers manually (due to limited speed of network). Currently only doing koji builds and if successful then rpmlint on resultant rpms. It is also commenting back to the bugzilla entries."
 
[13] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01644.html
 
[14] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01825.html
 
It turned[15] out that [[ChrisWeyl|Chris Weyl]] had also gone to work on a base implementation and he asked if there was room for collaboration.
 
[15] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01718.html

Revision as of 01:01, 27 October 2008

Developments

In this section the people, personalities and debates on the @fedora-devel mailing list are summarized.

Contributing Writer: Oisin Feeley

Splitting Up R

Tom Callaway alerted[1] the list that he intended to merge the R-devel package with the base R[2] package. Tom's motivation was that many complaints had been received from users who attempted to install extensions from the external CRAN[3] repository using R's built-in package system. "This doesn't work unless you have R-devel installed. The average R user is a professor or a student, and neither of them are going to necessarily possess the necessary Linux/Fedora knowledge to be able to understand why this doesn't work like the R documentation says it should." Tom recognized that this was a violation of the Fedora Packaging Guidelines[4] and that he was "[...] not entirely sure if I need FESCo or FPC approval to take this action, if so, this is my notice of requesting it. ;)"

[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02240.html

[2] R is an interpreted language based upon S and Scheme intended to be used for statistical computation: http://www.r-project.org/

[3] http://cran.r-project.org/

[4] http://fedoraproject.org/wiki/Packaging/Guidelines

Enrico Scholz suggested[5] instead: "[...] add it to comps.xml [or] move 'R' to Rcore, and add 'R' which depends on 'R-core' + 'R-devel"' which have the major advantage of not missing all of R-devel's dependencies. Tom accepted[6] these points because "[...] the suggested R/R-core/R-devel split instead [would allow users] to get everything with yum install R, it would meet the guidelines, and minimal installs with R can simply have R-core."

[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02249.html

[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02251.html

James Antill agreed that the general model of "foo-core + additions" was maintained by such a split but asked[7] "[...] why don't we just package more of the R modules so CRAN usage isn't a requirement?" José Matos answered[8] that there were far too many R modules "[...] more than 1500 modules (the have been growing at an exponential rate in the last years). So while we would like to see more R packages in Fedora in are not even near to have a reasonable subset of R packaged." James worried[9] that "[...] you could use that argument a lot (there are probably still more unpackaged libc using things than packaged)." James showed that there were many more unpackaged users of libc than packaged using:

repoquery -whatrequires '*-devel' | \
  fgrep -v - '-devel-' | \
  fgrep -v - '-static-'

[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02267.html

[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02272.html

[9] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02274.html

The availability of a tool named R2spec to convert R package formats to rpm packages was mentioned[10] by Matthew Salzman. Later threads which appeared in part only on @fedora-r-devel investigated the problem of languages implementing their own packaging systems. José Matos played[11] Devil's Advocate with the remark that "[...] each language is building its own repository and packaging system in a sense we have lots of equivalents of (yum+rpm) for each language (perl, php, python, R, tex, ...) [but] for the system to be really useful it must use the least possible denominator (read the dumbest wins- pun intended ;-) )." José suggested that R2spec could also be tweaked to discover dependencies and include them in its generated spec files. It appeared[12] that Pierre-Yves had a "[...] small script to update the spec file when there is a new release of an already package R-library. This might be something that I should develop maybe a bit more now (especially since Bioconductor[12a] 2.3 has been released with R 2.8.0)"

[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02288.html

[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02301.html

[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02306.html

[12a] Modules primarily for bioinformatics and genomics.

Flinging Poo at libtool-2.2

A discussion on the future of libtool in Fedora is worth reporting although it is slightly older. Orion Poplawski wondered[1] whether it was the correct time to integrate libtool-2.2.X into Fedora 11. Benjamin Kosnik wanted[2] it available in Fedora before GCC was bumped to gcc-4.4.x as that will depend on libtool-2.2.6.

[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00467.html

[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00516.html

A possible need for FESCo approval was expressed[3] by Karsten Hopp as he was worried that "[...] it breaks up to 300 packages according to my mass rebuilds. I'm going to prepare a Wiki page with details about that." That prompted the first of several queries about the purpose and suitability of libtool. David Woodhouse asked[4] "[i]sn't the whole point of libtool that it should make things _easier_, not break huge swathes of packages whenever we change it? How about we fix those 300 packages by making them _not_ use libtool, rather than making them use the latest version?" Toshio Kuratomi thought[5] that "If the state of the art has advanced and there's a tool that can replace libtool so a developer can say `I want a shared library' and the tool builds it on all platforms then we could look into getting upstreams to switch but simply getting rid of libtool in favour of handcoding Makefiles to build shared libraries is a step in the wrong direction."

[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00479.html

[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00730.html

[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00737.html

AdamJackson offered[6] that gcc was available on Solaris, Windows, *BSD and OSX with the conclusion "[m]st of the complexity in libtool (and autotools in general) is to support systems that simply are not worth supporting and that practically speaking don't exist anymore. I'm being slightly flip in saying 'gcc -shared' but really not by much. Honestly for any fringe platform the correct thing to do is port gcc/binutils/gmake first." There were many disagreements on this point and Sam Varshavchik posted[7] a convincing potted summary of them: "There's much more to libtool then just building shared libraries. If you remove everything from libtool that supports ancient platforms, you'll still have quite a bit left. For example, libtool builds both shared and static libraries in parallel. That, alone, saves you from dealing with a massive hairball in your makefiles. Ask anyone who works on a large, complicated app, that links with its own shared libraries. The option to easily build a statically-linked version is quite invaluable, for debugging purposes."

[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00744.html

[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00791.html

The practical experience of the MinGW project related[8] by DanielBerrange was also that gcc -shared was insuOEcient i[...] if you're trying to build for windows. The mingw32 work has only been made viable because libtool has basically taken care of the horrible shared library build process required by Windows.j Further details were supplied[9] at Adam's request and KevinKoAEer confirmed[10] that producing a DLL involved several complications.

[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00743.html

[9] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00755.html

[10] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00780.html

Discussion of alternatives veered[11] towards CMake. Braden McDaniel was unconvinced[12] that this was a realistic suggestion for replacing libtool in approximately three hundred upstream projects. Kevin Kofler took[13] a detailed look at the problem and argued that attempting to "[...] convince the automake developers to use something other than libtool is pointless, because automake should also go away, it's at least as obsolete, buggy, unable to maintain backwards compatibility, annoying, a massive time waster at build time and a major PITA for developers to code with as libtool is. The whole autotools stack sucks. It always did, we just didn't have anything better. We now do, so why are people still using autotools?" His critique seemed convincing and he later added[14] that "CMake is used by all of KDE 4 [...]" and in an exchange with Richard W. M. Jones explained[15] that Gnulib was also not a good replacement for autotools: "[...] a "library" which works by copying itself into the source code of the project is a horribly broken concept."

[11] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00780.html

[12] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00775.html

[13] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00799.html

[14] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01017.html

[15] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01142.html

LennartPoettering and RalfCorsepius were[16] suspicious of the attempt to replace autotools with CMake. Ralf argued that "Cmake is imake in new clothes and suffers from the same design flaws as imake did. It's only the limited set of requirements being used by the limited set of use cases it's proponents apply which lets them think 'cmake is better'." StephenSmoogen saw[17] a need to halt the conversation when he examined it from a human neuropsychology viewpoint: "So basically this conversation is a 'dead' conversation. People have their hairs on their necks up, [enough] testosterone pumping to put [out] 3 or 4 beards in a day, and are [on] to the flinging poo part. At this point, there is no way either side is going to say that Cmake is better at this, or Autotools is better than that. Wait a week, and see if one can bridge the gap with some diplomatic discourse[.]"

[16] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00954.html

[17] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg01023.html

Later a new thread was started[18] by Braden McDaniel to recommend that autoreconf should be explicitly forbidden to be run by rpm packages. He explained that he saw the problems caused by running autoreconf or libtoolize as "[b]y running autoreconf, the RPM build becomes exposed to different versions of autoconf, automake, and libtool than were used by the upstream developer to create the upstream source package. Newer versions of these tools have the potential to introduce incompatibilities, breaking the RPM build. Rather than patching configure.[ac,in] and Makefile.am, a more resilient approach is to patch the configure script and Makefile.in files."TillMaas added[19] a link to a wiki draft on the subject and suggested that "[...] one should run autoreconf locally and create a patch from this, that is then used within the spec." The conversation veered[20] into sharp disagreement as to whether autotool generated files should be treated similarly to "binary JARs (for which the packaging guidelines mandate that they have to be removed and rebuilt from source)" or this should be avoided in order to avoid "potential breakage". This issue seems destined to generate further disagreement.

[18] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00866.html

[19] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00869.html

[20] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg00970.html

Livna Migration to RPM Fusion

Several of the third-party repositories external to the Fedora Project agreed some time ago to merge into a single new entity named "RPM Fusion"[1]. The current partners include Dribble, Freshrpms and Livna. Thorsten Leemhuis reported[2] that "[...] nearly all of livna's packages have been imported and build for RPM Fusion, but a few are still missing. So you should leave livna repos enabled for now if you want everything [.]" Thorsten explained the migration process in this post with the important details that "[...] all users that installed livna properly (e.g. by installing the livna-release package) and enabled the testing repos will now get RPM Fusion enabled automatically."

[1] http://rpmfusion.org

[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02367.html

A suggestion was made[3] by Nicolas Mailhot to either use the "modern proxyfriendly createrepo" or else "define http.caching=packages" in the yum repo files.

[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02368.html

Users who currently have the Livna repository enabled can transition to the new RPM Fusion repository by:

yum install rpmfusion-free-release rpmfusion-nonfree-release

Sbin Sanity Stays

The latest FESCo meeting[1] logs record that the decision to add /sbin to each users PATH variable (see FWN#146[2]) will be kept until a working alternative for both non-root and root users is available. The brief deliberations indicate that FESCo members tended to manually add /sbin to their own paths and distilled the objections to the sole point of "".

Thorsten Leemhuis was dismayed[3] and agreed with Ville Skyttä that the change would4 result in many confused users. Thorsten wished to "[...] help Ville and Matthew making a real solution, where sbin stays "root commands" only, and where package that are right now get into he search path for ordinary users (either with symlinks or by moving the binaries). But it's IMHO best for everyone if we do that for F11. Come on, we had /sbin not in the path for more then how many years, so what is one half year more (especially as everyone that dislikes it is used to enable it already)?"

Jon Masters disagreed[5] on the basis that any script should be using an explicit and absolute binary location anyway: "If you're writing scripts and not explicitly calling out the binary location, then it's not surprising if your scripts break later. I know it's nice to always assume a particular PATH, but it's not good practice any more than including or not including sbin in the PATH to begin with." He also cautioned that most other distributions had made this change a long time ago and that "[...] everyone else is already laughing that Fedora didn't do this, so really it doesn't need to wait for yet another 1.5 years to get done :)"

[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02273.html

[2] http://fedoraproject.org/wiki/FWN/Issue146#PATH:.2Fsbin.Tab.Confusion

[3] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02294.html

[4] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02180.html

[5] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02296.html

Packaging Webmin: Should it go in /opt ?

Andy Theuninck asked[1] for some help in "[...] trying to put a package together for webmin. It wants to install to libexec, but if I do that rpmlint (rightly) complains that there are non-executable text files. Perl files & HTML files are intermixed and separating them out would be a patching nightmare [...] as I read FHS /opt would be the most appropriate place [but] if I try to use /opt/webmin [then] rpmlint pitches a fit about using /opt."

Toshio Kuratomi quoted[2] the FHS[3:] "The FHS says: /opt is reserved for the installation of add-on application software packages. Anything packaged by Fedora is part of the system packaging rather than an addon so we stay out of /opt." He also suggested that separating the different files types and getting webmin's upstream[4] to accept patches to do this was a preferred path in the Fedora Project. Failing this it was possible to separate the files and symlink them to the upstream-enforced layout. Another useful link[5] to the Fedora Project's web application packaging guidelines in Toshio's post indicated that non-executable files might best be put into /usr/share. Andy seemed[6] to like the idea of "[m]oving as much as possible over to /usr/share and symlinking against the files that are actually needed[...]" as this would allow upstream to continue to support many OSes by the simple expedient of "sticking everything into a single directory."

Nicolas Mailhot disparaged[7] the use of /opt as "[...] he right place to dump messes and is good enough for ISVs with no ambitions but Fedora does not package messes [.]" Casey Dahlin cautioned[8] Nicolas "Easy, he's here because he wants to do the right thing, and he's not upstream, so there's no reason to clueby4 him just yet" and went on to suggest a similar path to that above: "You might do what apache does and simply place the files where they go, then symlink them to a conf directory in /etc . You'd be doing it on a much larger scale than apache, but until you get upstream to suck less, you at least have a precedent for it (though doing it for apache hasn't particularly encouraged them to change their goofy-as-hell recommended file layout)."

[1] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02289.html

[2] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02291.html

[3] Filesystem Hierarchy Standard: http://www.pathname.com/fhs/

[4] http://www.webmin.com/

[5] http://fedoraproject.org/wiki/Packaging/Guidelines#Web.Applications

[6] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02327.html

[7] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02297.html

[8] https://www.redhat.com/archives/fedora-devel-list/2008-October/msg02300.html