Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Oct 2012 19:52:41 +0200
From:      Michael Gmelin <freebsd@grem.de>
To:        Paul Schmehl <pschmehl_lists@tx.rr.com>, freebsd-ports@freebsd.org
Subject:   Re: How to check out ports
Message-ID:  <9BE61D61-A226-489E-B551-02FC9F919D55@grem.de>
In-Reply-To: <979E79833BE5A8EA79E38E1B@localhost>
References:  <6DE237A2D4133FBAED25FC26@localhost> <44626syfjv.fsf@be-well.ilk.org> <17F1F6096650E45134B198CD@localhost> <CAF6rxgkFeCE9wUAX0goMhWsQJ-kpEy93ADWGOdfw-wAQEi3G8w@mail.gmail.com> <85CE784EEB463CD1C26E6C06@localhost> <20121002232812.442d2c20@bsd64.grem.de> <267E4790564988D2A545BF49@Pauls-MacBook-Pro.local> <20121003132147.043c9a74@bsd64.grem.de> <979E79833BE5A8EA79E38E1B@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help

On 3 Oct 2012, at 19:40, Paul Schmehl <pschmehl_lists@tx.rr.com> wrote:

> --On October 3, 2012 1:21:47 PM +0200 Michael Gmelin <freebsd@grem.de> wro=
te:
>=20
>>=20
>> The file name is the result of the command "git describe" and is
>> therefore stable. It consists of three parts:
>>=20
>> tag - number of commits - commit hash
>>=20
>> This project uses tags for versioning (which makes sense), so this file
>> name tells you that you're dealing with version v2-1.10, there have
>> been no commits to the tree since this version (it's unaltered) and the
>> commit id is g2f5d496 (which is a short but unique version of the
>> original sha1). You can use this commit id to get exactly this version
>> from a git repository (git clone ...; git checkout g2f5d496). If
>> somebody commited to the repository, the number in the middle would
>> increase and the hash change - but this will not happen in this
>> scenario, since github creates the tarball by checking out the tag (git
>> clone ...; git checkout v2-1.10), so as long as the project owner
>> doesn't change the meaning of the tag (which he usually won't since he
>> would redefine what vesion v2-1.10 means) this file name is stable.
>>=20
>> That said, when you're fetching using the fetch command (this is
>> what ports uses) things look different anyway. Let's assume you're
>> fetching a tag (=3D a version) and not master (which is not a version, bu=
t
>> basically the current stable environment) and you're using the fetch
>> program to get it, then the resulting file name is NOT
>> firnsy-barnyard2-v2-1.10-0-g2f5d496.tar.gz but "v2-1.10".
>>=20
>> [dev@bsd64 /tmp]$ fetch
>> https://github.com/firnsy/barnyard2/tarball/v2-1.10
>> v2-1.10                                       100% of  409 kB  414 kBps
>> ...
>>=20
>> Like Eitan pointed out, fortunately there are github supporting options
>> in bsd.ports.mk. So if you use the following settings you should be fine
>> (just tested this here and ended up creating an almost complete port
>> skeleton - I turned v2-1.10 into 2.1.10 in the process, since v2-1.10
>> would not be supported by the ports system - so this installs as
>> barnyard2-2.1.10, which should be ok for future updates).
>>=20
>> Makefile:
>> # Whom:        pschmehl_lists@tx.rr.com
>> # $FreeBSD:$
>> #
>>=20
>> PORTNAME=3D    barnyard2
>> PORTVERSION=3D    2.1.10
>> CATEGORIES=3D    security
>> GH_ACCOUNT=3D    firnsy
>> GH_PROJECT=3D    barnyard2
>> GH_TAGNAME=3D    v2-1.10
>> GH_COMMIT=3D    2f5d496
>> USE_GITHUB=3D     YES
>> GNU_CONFIGURE=3D    yes
>> MAKE_JOBS_UNSAFE=3DYES
>>=20
>> MAINTAINER=3D    pschmehl_lists@tx.rr.com
>> COMMENT=3D    Barnyard2 is a dedicated spooler\
>>        for Snorts unified2 binary output format.
>>=20
>> pre-configure:
>>    cd ${WRKSRC}; ${SH} autogen.sh
>>=20
>> .include <bsd.port.mk>
>>=20
>> distinfo:
>> SHA256 (barnyard2-2.1.10.tar.gz) =3D
>> 31d4e3745606489658bd411f74ffeb8a27573fdc08d0b51a6a71e1bf4dece8a2 SIZE
>> (barnyard2-2.1.10.tar.gz) =3D 419781
>>=20
>> pkg-descr:
>> Barnyard2 is a dedicated spooler for Snort's
>> unified2 binary output format.
>>=20
>> https://github.com/firnsy/barnyard2/
>>=20
>> pkg-plist:
>> bin/barnyard2
>> etc/barnyard2.conf
>>=20
>> I attached the full port skeleton in a tarball, it might need some
>> checking, I just did the usual (make install, make reinstall,
>> pkg_create, pkg_delete).
>>=20
>> Maybe somebody could use this information to create a page about using
>> github in the porter's handbook (it won't be me :D)?
>=20
> Thanks, Michael.  You've been a huge help.  I had earlier searched /usr/po=
rts/Mk for any sign of github and found none.  Your email made me realize my=
 ports were out of date, a problem I need to fix.
>=20
> With your help I now have a distinfo file and am working on figuring out w=
hy it won't make.
>=20
> --=20
> Paul Schmehl, Senior Infosec Analyst
> As if it wasn't already obvious, my opinions
> are my own and not those of my employer.
> *******************************************
> "It is as useless to argue with those who have
> renounced the use of reason as to administer
> medication to the dead." Thomas Jefferson
> "There are some ideas so wrong that only a very
> intelligent person could believe in them." George Orwell
>=20

Check the tarball I sent in my last mail (attachments get purged on the mail=
ing list but I CCed you directly, should untar that in /usr/ports/security, i=
t's safer than copy and paste). That one built and installed ok on 9.0 amd64=
. What I could imagine is that autogen.sh is calling some autoconf/automake/=
lib tool magic that's already installed on my system and that should be made=
 a dependency of the port. Let me know if you can't figure it out, once I'm b=
ack tomorrow I can try building it in a clean jail on 8.2 to see what's up.

(Sorry or the messy formatting, traveling means using the phone)=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9BE61D61-A226-489E-B551-02FC9F919D55>