Discussion:
Creating a formula for Homebrew
Wesley Viana
2018-02-08 02:28:18 UTC
Permalink
Hello,

I was depending on gnulib for building a project from github.

The first thing that I've done was to search on brew (a macOS package
manager) for it.

Searching on web I've found the gnulib website.

So I've followed the instructions as in site, and after cloning the
repository, just placed the repo folder into my PATH temporarily by a
`PATH="$PWD:$PATH".

Then I was able to procede with what I was trying to compile.

So I was wondering how to contribute by "packing" gnulib into a brew
formula.

I was reading
https://github.com/Homebrew/brew/blob/master/docs/Formula-Cookbook.md

But in Grap the URL
<https://github.com/Homebrew/brew/blob/master/docs/Formula-Cookbook.md#grab-the-url>
session,
I was unable to realize where could I take a a specific version snapshot
zip.

Browsing your Savanah repository, I was able to find this snapshot zip link
snapshot
<http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=snapshot;h=HEAD;sf=tgz>.

And by running `gnulib-tools --version` I've got a "gnulib-tool (GNU gnulib
2018-02-04)"

So I wonder to check the tags and try to snapshot it, but notice that the
most recent tag was 4 years old.

My understanding is the brew would like to have a new formula for each new
version.

How could we create this formula? How could I help?

PS:

- English is not my first language.
- This is the first time I'm trying to contribute into some free software /
open source.
- I've never created a brew formula before
- I don't event totally understand what gnulib-tool is totally about, but
as it was simple to get working I thought it would be simple to create a
formula and help others.


Wesley Viana,
E-mail: ***@gmail.com
Skype: viana.wesley
Twitter: @wviana <http://twitter.com/wviana>
Bruno Haible
2018-02-08 10:43:08 UTC
Permalink
Hi,
Post by Wesley Viana
So I was wondering how to contribute by "packing" gnulib into a brew
formula.
Packaging gnulib through a packaging system (such as Debian, pkg, BSD ports,
or brew) is, in the current state of things, not desirable.

Gnulib is a source code library [1], and, although the documentation states
that the user has the choice between using the git repo and stable releases [2],
there have not been such stable releases for 4 years. That is, everyone uses
the git repo. And we are taking QA steps to ensure a high quality of the
code in the git repo.

Packaging gnulib through a packaging system would have the effect that its
users see an older version of gnulib, without benefits - because whether
someone invokes 'git clone' or 'brew', it's a network access in any case.

Bruno

[1] https://www.gnu.org/software/gnulib/manual/html_node/Brief-Overview.html
[2] https://www.gnu.org/software/gnulib/manual/html_node/Steady-Development.html
Continue reading on narkive:
Loading...