<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Emile "iMil" Heitor 's home &#187; pkgsrc</title>
	<atom:link href="http://imil.net/wp/tag/pkgsrc/feed/" rel="self" type="application/rss+xml" />
	<link>http://imil.net/wp</link>
	<description>life, unix and stuff</description>
	<lastBuildDate>Fri, 30 Dec 2011 20:58:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Aiguille, fil, trou</title>
		<link>http://imil.net/wp/2011/10/30/aiguille-fil-trou-3/</link>
		<comments>http://imil.net/wp/2011/10/30/aiguille-fil-trou-3/#comments</comments>
		<pubDate>Sat, 29 Oct 2011 23:30:17 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[build]]></category>
		<category><![CDATA[bulk]]></category>
		<category><![CDATA[pkgsrc]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=653</guid>
		<description><![CDATA[Pour une partie de mon parc de machines, je fais mon propre bulk build. Ce dernier ne construit pas l&#8217;ensemble des packages, mais un petit subset (environ 600 packages) avec mes propres préférences. Parmi elles, il en est une qui fout un merdier sans nom dans le build, converters/libiconv. Comme je l&#8217;expliquais ici il y [...]]]></description>
			<content:encoded><![CDATA[<p>Pour une partie de mon parc de machines, je fais mon propre <a href="http://www.netbsd.org/docs/pkgsrc/bulk.html">bulk build</a>. Ce dernier ne construit pas l&#8217;ensemble des <i>packages</i>, mais un petit <i>subset</i> (environ 600 packages) avec mes propres préférences. Parmi elles, il en est une qui fout un merdier sans nom dans le <i>build</i>, <code>converters/libiconv</code>. Comme je l&#8217;expliquais ici <a href="http://imil.net/wp/2009/11/12/notice-iconv-function-iconv-wrong-charset-conversion/">il y a quelques temps</a>, j&#8217;ai besoin de construire <code>converters/php-iconv</code> avec la version <i>pkgsrc</i> de la <code>libiconv</code>. Cet impératif a un impact non négligeable dans la configuration de mon <code>/etc/mk.conf</code>, aussi je vous livre ce dernier, final et fonctionnel:</p>
<pre>
.ifdef BSD_PKG_MK

# no base X11
MKX11=no
X11_TYPE=modular
# clean dependencies when the "clean" target is called
CLEANDEPENDS=yes
# everybody likes vim
ACCEPTABLE_LICENSES+=vim-license

USE_BUILTIN.iconv=      no
# A built-in gettext is always going to use a built-in iconv.
USE_BUILTIN.gettext=    no

PKG_RCD_SCRIPTS=        yes

PKG_OPTIONS.irssi=      perl inet6
PKG_OPTIONS.mplayer=    oss

DSPAM_STORAGE_DRIVER=   mysql
PKG_OPTIONS.dspam+=     graphs
MYSQL_VERSION_DEFAULT=  50
PHP_VERSION_DEFAULT=    52
PKG_OPTIONS.php=        -cgi fastcgi

PKG_OPTIONS.rtorrent=           xmlrpc

UPDATE_TARGET=package-install
DEPENDS_TARGET=         bulk-install
BATCH=                  yes

ACCEPTABLE_LICENSES+= socks5-license
ACCEPTABLE_LICENSES+= sendmail-license
ACCEPTABLE_LICENSES+= openmotif-license
ACCEPTABLE_LICENSES+= idea-license

PKG_OPTIONS.dovecot=    ssl ldap dovecot-sieve dovecot-managesieve
PKG_OPTIONS.nagios-nrpe = ssl tcpwrappers

PKGCHK_CONF?=   /usr/pkgsrc/pkgchk.conf
BULK_PREREQ+=   converters/libiconv
#
# Parse pkgchk.conf and supply list of packages for the bulk build framework.
#
.if defined(SPECIFIC_PKGS)
PKGLIST!=               awk '{print $$1}' ${PKGCHK_CONF}
.  for _pkg_ in ${PKGLIST}
HOST_SPECIFIC_PKGS+=    ${_pkg_}
.  endfor
.endif

.endif # BSD_PKG_MK
</pre>
<p>À noter, donc, les particularités suivantes:</p>
<ul>
<li>Xorg modular pour les dépendances relatives à X11</li>
<li>libiconv en provenance de pkgsrc, il est impératif de faire de même pour gettext</li>
<li>irssi est compilé avec le support perl et IPv6</li>
<li><i>storage</i> MySQL pour dspam</li>
<li>MySQL 5.0</li>
<li>PHP 5.2</li>
<li>Options <i>ssl ldap dovecot-sieve et dovecot-managesieve</i> pour dovecot</li>
<li>Options <i>ssl et tcpwrappers</i> pour nagios-nrpe</li>
<li>On ajoute libiconv comme pré-requis pour la construction <i>bulk</i></li>
</ul>
<p>J&#8217;utilise, pour générer tout ce petit monde, l&#8217;<strong>excellent</strong> script du sieur orgrim, disponible <a href="http://orgrim.net/post/2011/08/19/Bulk-build-partiel-de-pkgsrc">ici, avec sa note explicative</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/10/30/aiguille-fil-trou-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>pkgin (probably not weekly) news 3</title>
		<link>http://imil.net/wp/2011/10/29/pkgin-probably-not-weekly-news-3/</link>
		<comments>http://imil.net/wp/2011/10/29/pkgin-probably-not-weekly-news-3/#comments</comments>
		<pubDate>Sat, 29 Oct 2011 14:46:21 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[pkgin]]></category>
		<category><![CDATA[pkgsrc]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=645</guid>
		<description><![CDATA[I&#8217;ve just commited 0.5.2.1. As the version shows, it is a bugfix release; is@ got a very nasty bug that took me a while to figure out. For 3 years, the only pkg_summary(5) format I&#8217;ve seen was:

PKGNAME=foo
[...]

or, in case of conflicting packages:

CONFLICTS=bar
CONFLICTS=baz
PKGNAME=foo
[...]

Well it turns out that we can also find:

PKGNAME=foo
CONFLICTS=bar
[...]

which is pretty annoying when it [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just commited 0.5.2.1. As the version shows, it is a bugfix release; is@ got a very nasty bug that took me a while to figure out. For 3 years, the only <a href="http://netbsd.gw.com/cgi-bin/man-cgi?pkg_summary+5+NetBSD-current">pkg_summary(5)</a> format I&#8217;ve seen was:</p>
<pre>
PKGNAME=foo
[...]
</pre>
<p>or, in case of conflicting packages:</p>
<pre>
CONFLICTS=bar
CONFLICTS=baz
PKGNAME=foo
[...]
</pre>
<p>Well it turns out that we can also find:</p>
<pre>
PKGNAME=foo
CONFLICTS=bar
[...]
</pre>
<p>which is pretty annoying when it comes to stick to an anchor. Until now, I did the following:</p>
<pre>
static int
chk_pkgname(char *field)
{
        if (strncmp(field, "PKGNAME=", 8) == 0 ||
                strncmp(field, "CONFLICTS=", 10) == 0)
                return 1;

        return 0;
}
[...]
                /* browse entries following PKGNAME and build the SQL query */
                while (*psum != NULL &#038;&#038; !chk_pkgname(*psum)) {
                        update_col(sum, pkgid, *psum);
                        psum++;
                }
</pre>
<p>But with that new case, I had to check a little bit further:</p>
<pre>
static int
chk_pkgname(char *field, char *last_field)
{
	if (strncmp(field, "PKGNAME=", 8) == 0)
		return 1;
	/* in some very rare cases, CONFLICTS appears *after* PKGNAME */
	if (strncmp(last_field, "PKGNAME=", 8) != 0 &#038;&#038;
		/* never seen many CONFLICTS after PKGNAME, but just in case... */
		strncmp(last_field, "CONFLICTS=", 10) != 0 &#038;&#038;
		strncmp(field, "CONFLICTS=", 10) == 0)
		return 1;

	return 0;
}
[...]
		/* browse entries following PKGNAME and build the SQL query */
		while (*psum != NULL &#038;&#038; !chk_pkgname(*psum, *(psum - 1))) {
			update_col(sum, pkgid, *psum);
			psum++;
		}
</pre>
<p>I really don&#8217;t like the way it&#8217;s done but I&#8217;ve no sexier way in mind at the moment. Maybe after some glasses of wine&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/10/29/pkgin-probably-not-weekly-news-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>pkgin 0.5.1 released</title>
		<link>http://imil.net/wp/2011/10/16/pkgin-0-5-1-released/</link>
		<comments>http://imil.net/wp/2011/10/16/pkgin-0-5-1-released/#comments</comments>
		<pubDate>Sun, 16 Oct 2011 10:15:56 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[pkgin]]></category>
		<category><![CDATA[pkgsrc]]></category>

		<guid isPermaLink="false">http://imil.net/wp/2011/10/16/pkgin-0-5-1-released/</guid>
		<description><![CDATA[Finally, here comes a release ! Read the full announcement and changelog on pkgsrc-users.

]]></description>
			<content:encoded><![CDATA[<p>Finally, here comes a release ! Read the full announcement and changelog on <a href="http://mail-index.netbsd.org/pkgsrc-users/2011/10/16/msg015198.html">pkgsrc-users</a>.</p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/10/16/pkgin-0-5-1-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>pkgin (probably not weekly) news</title>
		<link>http://imil.net/wp/2011/09/28/pkgin-probably-not-weekly-news/</link>
		<comments>http://imil.net/wp/2011/09/28/pkgin-probably-not-weekly-news/#comments</comments>
		<pubDate>Wed, 28 Sep 2011 21:10:05 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[DragonFlyBSD]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[pkgin]]></category>
		<category><![CDATA[pkgsrc]]></category>
		<category><![CDATA[Solaris]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=634</guid>
		<description><![CDATA[Foreword: this post will be written in english as many pkgin users don&#8217;t speak french. Sorry to my french readers then, and sorry also to my english readers as i&#8217;m not as fluent in english as i am in french :)
I subscribed to jmmv&#8217;s blog, The Julipedia, a while ago and found his idea of [...]]]></description>
			<content:encoded><![CDATA[<p><i>Foreword: this post will be written in english as many <code>pkgin</code> users don&#8217;t speak french. Sorry to my french readers then, and sorry also to my english readers as i&#8217;m not as fluent in english as i am in french :)</i></p>
<p>I subscribed to jmmv&#8217;s blog, <a href="http://blog.julipedia.org/">The Julipedia</a>, a while ago and found his idea of the <a href="http://blog.julipedia.org/2011/09/kyua-weekly-status-report_26.html">&#8220;Kyua: Weekly status report&#8221;</a> very inspiring, that&#8217;s a good way to keep your users informed on how the project is moving and keeps you focused on your TODO (although i hate TODO&#8217;s&#8230;). I doubt i&#8217;ll have the time to write a weekly report, but at last i&#8217;ll try to write a post whenever important updates are made to <a href="http://pkgin.net/">my beloved project</a>.</p>
<p>So let&#8217;s begin !<br />
As you, pkgin users, may be aware of, i&#8217;m working on the future 0.5 release, which includes massive internal changes plus some features that have been asked and i found interesting. So, in addition to the features i already listed in <a href="http://mail-index.netbsd.org/pkgsrc-users/2011/08/29/msg014870.html">this mail</a> sent to <i>pkgsrc-users@</i>, here are some hilights on recent changes:</p>
<ul>
<li>pkgin now has a <a href="http://imil.net/gfx/pkgin-logo-new.png">new logo</a> !</li>
<li>it is now possible to export / import your keep-list, pretty much like <code>dpkg</code>&#8216;s <code>get/set-selection</code>. The exported list is in <code>pkg_chk</code>&#8216;s format. Thanks wiz@ for the idea</li>
<li>pkgin install can now take a &#8220;blob&#8221; as an argument, i.e. <code>pkgin in 'mysql-server&lt;5.5'</code>, thanks filip@ for the idea</li>
<li>pkgin now uses pkgsrc&#8217;s <code>pkg_install</code> for NetBSD also</li>
<li>added the <code>-t</code> modifier, mostly for debugging purposes, in order to trace the dependency tree and impact lists</li>
<li><code>pkg_install</code> error logs are handled in a nicer way</li>
<li>enlisted pkgin&#8217;s code to <a href="http://www.ohloh.net/p/pkgin">ohloh</a> (click on &#8220;i use this&#8221; !)</li>
<li>plus usual bugfixes</li>
</ul>
<p>Yeah, these were fairly productive holidays :) Of course most of these changes are only available in CVS, see http://pkgin.net for details. Some of them have already made their way to <a href="http://pkgsrc-wip.sourceforge.net/">pkgsrc-wip</a>, i try not to insert big changes now, so wip and CVS should be sync&#8217;ed quite often.</p>
<p>Needs to be done:</p>
<ul>
<li>make pkgin&#8217;s pkgsrc <strong>package</strong> depend on pkgsrc&#8217;s <code>pkg_install</code></li>
<li>reproduce and fix 2 different bugs two users had</li>
<li>optimize the dependency loop regarding packages that exists in many versions (i.e. bash)</li>
<li>check if <code>pkg_install</code> is to be upgraded and then push it on top of ordered list</li>
<li>test Minix 3.2.0</li>
</ul>
<p>Hope i&#8217;ll make it to <i>pkgsrc 2011Q4</i> !</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/09/28/pkgin-probably-not-weekly-news/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Un logo en carton</title>
		<link>http://imil.net/wp/2011/09/05/un-logo-en-carton/</link>
		<comments>http://imil.net/wp/2011/09/05/un-logo-en-carton/#comments</comments>
		<pubDate>Mon, 05 Sep 2011 18:23:33 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[Gimp]]></category>
		<category><![CDATA[logo]]></category>
		<category><![CDATA[pkgin]]></category>
		<category><![CDATA[pkgsrc]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=626</guid>
		<description><![CDATA[J&#8217;aime aussi les vacances parce qu&#8217;elles me donnent des idées, et ce matin, alors que j&#8217;attendais que la piscine se réchauffe, j&#8217;ai pondu ça:

]]></description>
			<content:encoded><![CDATA[<p>J&#8217;aime aussi les vacances parce qu&#8217;elles me donnent des idées, et ce matin, alors que j&#8217;attendais que la piscine se réchauffe, j&#8217;ai pondu ça:<br />
<a href="http://imil.net/gfx/pkgin-logo-new.png"><img src="/gfx/pkgin-logo-new.png" width="450"/></a></p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/09/05/un-logo-en-carton/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>pkgin 0.5, faster pussycat kill kill</title>
		<link>http://imil.net/wp/2011/08/29/pkgin-0-5-faster-pussycat-kill-kill/</link>
		<comments>http://imil.net/wp/2011/08/29/pkgin-0-5-faster-pussycat-kill-kill/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 10:25:58 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[pkgin]]></category>
		<category><![CDATA[pkgsrc]]></category>

		<guid isPermaLink="false">http://imil.net/wp/2011/08/29/pkgin-0-5-faster-pussycat-kill-kill/</guid>
		<description><![CDATA[Avant de partir me dorer la pilule à la maison, je vous jette en pâture une toute nouvelle pre-release de pkgin, j&#8217;ai nommé 0.5.0.
Fruit des conseils avisés du sieur Bapt, fort de son experience avec son fâmeux pkgng, ainsi que des multiples feedbacks d&#8217;horizons très differents, le code de pkgin 0.5.0 est plus rapide, plus [...]]]></description>
			<content:encoded><![CDATA[<p>Avant de partir <a href="http://en.wikipedia.org/wiki/Marbella">me dorer la pilule</a> à <a href="http://en.wikipedia.org/wiki/Andalusia">la maison</a>, je vous jette en pâture une toute nouvelle <a href="http://pkgsrc-wip.cvs.sourceforge.net/viewvc/pkgsrc-wip/wip/pkgin/">pre-release de pkgin</a>, j&#8217;ai nommé 0.5.0.</p>
<p>Fruit des conseils avisés du sieur <a href="http://blog.etoilebsd.net/">Bapt</a>, fort de son experience avec son fâmeux <a href="http://wiki.freebsd.org/pkgng">pkgng</a>, ainsi que des multiples <i>feedbacks</i> d&#8217;horizons très differents, le code de pkgin 0.5.0 est plus rapide, plus simple et embarque un certain nombre de <i>features requests</i>.</p>
<p>Dans l&#8217;ordre d&#8217;implémentation:</p>
<ul>
<li>Migration silencieuse d&#8217;une base 0.4 vers 0.5</li>
<li>Fonction check_yesno() plus souple</li>
<li>&#8220;Yes&#8221; par defaut pour pkgin install / remove / upgrade</li>
<li>Une unique structure pour toutes les formes de listes de packages</li>
<li>Nettoyage de dizaines de calculs de listes inutiles (perfs x10)</li>
<li>Introduction du champs FULLPKGNAME, accélération des recherches</li>
<li>unique_pkg(): plus de &#8220;many versions of foo available&#8221;, le plus récent est toujours choisi</li>
<li>Import du progressmeter d&#8217;OpenSSH</li>
</ul>
<p>Cette version restera en gestation dans <a href="http://pkgsrc-wip.cvs.sourceforge.net/viewvc/pkgsrc-wip/wip/pkgin/">wip</a> le temps qu&#8217;elle soit correctement testée, les changements sont nombreux et profonds, je dois m&#8217;assurer que tout fonctionne comme il se doit.<br />
Vous l&#8217;aurez compris, il faut tester, TESTER, <strong>TESTER</strong> !<br />
Je vous invite à rapporter les problèmes potentiels sur la liste de developpement de pkgin, à pkgin-devel-at-lists-point-sourceforge-point-net.</p>
<p><a href="http://imil.net/gfx/pkgin_upgrade.png"><img src="/gfx/pkgin_upgrade.png" width="450" alt="pkgin upgrade"/></a></p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/08/29/pkgin-0-5-faster-pussycat-kill-kill/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Leeeeeeeet the sun shiiiiiiiiiine</title>
		<link>http://imil.net/wp/2011/03/14/leeeeeeeet-the-sun-shiiiiiiiiiine/</link>
		<comments>http://imil.net/wp/2011/03/14/leeeeeeeet-the-sun-shiiiiiiiiiine/#comments</comments>
		<pubDate>Mon, 14 Mar 2011 08:27:41 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[Illumos]]></category>
		<category><![CDATA[pkgin]]></category>
		<category><![CDATA[pkgsrc]]></category>
		<category><![CDATA[Solaris]]></category>

		<guid isPermaLink="false">http://imil.net/wp/2011/03/14/leeeeeeeet-the-sun-shiiiiiiiiiine/</guid>
		<description><![CDATA[En fevrier dernier, je vous parlais d&#8217;Illumos, incubateur libre permettant à OpenIndiana de garder l&#8217;haleine fraiche et le teint pétillant.
Les choses ont pas mal évolué depuis, en particulier, je me suis un chouillat impliqué dans le projet visant à intégrer parfaitement pkgsrc à Illumos.
De discussions en reflexions, j&#8217;en suis venu à me demander s&#8217;il ne [...]]]></description>
			<content:encoded><![CDATA[<p>En fevrier dernier, je vous <a href="http://www.gcu-squad.org/2011/02/gcuitter-montre-moi-ton-cote-sombre/">parlais d&#8217;Illumos</a>, incubateur libre permettant à <a href="http://openindiana.org/">OpenIndiana</a> de garder l&#8217;haleine fraiche et le teint pétillant.</p>
<p>Les choses ont pas mal évolué depuis, en particulier, je me suis un chouillat <a href="http://www.illumos.org/projects/worsoe">impliqué</a> dans le projet visant à intégrer parfaitement <a href="http://www.netbsd.org/docs/software/packages.html">pkgsrc</a> à Illumos.</p>
<p>De discussions en reflexions, j&#8217;en suis venu à me demander s&#8217;il ne serait pas judicieux de monter un repository de binaires <i>pkgsrc</i> pour OpenIndiana/Illumos/Solaris puisque cette plateforme est finalement parfaitement supportée depuis des lustres mais qu&#8217;aucun repo digne de ce nom n&#8217;a été maintenu plus de 2 mois. (et puis evidemment, il faut bien un <a href="http://pkgin.net/">package manager</a> pour gêrer tous ces binaires hin hin hin&#8230;)<br />
Ainsi, Mads Worsøe Duun, l&#8217;initiateur du projet pkgsrc pour Illumos, a demandé aux gentils administrateurs du projet OpenIndiana (ouais, faut suivre) de nous mettre à disposition une buildbox afin de proposer des packages à jour, et bien plus de logiciels que n&#8217;en proposent <a href="http://www.blastwave.org/">Blastwave</a> ou les repos <a href="http://hub.opensolaris.org/bin/view/Project+pkg/WebHome">IPS/pkg</a> d&#8217;<a href="http://pkg.opensolaris.org/release/en/index.shtml">OpenSolaris</a> (*ricane* *ricane*).</p>
<p>Ce qui est réellement à notre disposition ici, c&#8217;est une <a href="http://en.wikipedia.org/wiki/Solaris_Containers">Zone</a>, or, dans la plupart des documentations <a href="http://www.perkin.org.uk/blog/2009/09/pkgsrc-on-solaris/">sur ce sujet</a> (pkgsrc et Solaris), la méthode préférée, c&#8217;est de justement créer une zone pour faire son <a href="http://www.netbsd.org/docs/pkgsrc/bulk.html">bulk build</a>, mais comme ne nous pouvons pas créer de zone dans une zone (<a href="http://knowyourmeme.com/memes/xzibit-yo-dawg">YO DAWG</a>), il faudra procéder autrement, et c&#8217;est la raison même de cet article.</p>
<p>Comme l&#8217;explique la documentation officielle, il serait parfaitement inconscient de réaliser son <i>bulk build</i> sur une arborescence opérationnelle, en effet, sur les 10000 packages disponibles, une quantité non négligeable d&#8217;entre eux vont ajouter des utilisateurs, des groupes, des repertoires, des logs, des modules, des librairies etc etc etc. Il vous faut une <a href="http://en.wikipedia.org/wiki/Sandbox_(computer_security)">sandbox</a>. Fort heureusement, la &#8220;création&#8221; d&#8217;une sandbox Solaris est d&#8217;une grande simplicité.</p>
<p>Je vous livre ici les differentes étapes que vous pourrez bien entendu concaténer dans un joli petit script.</p>
<p>On déclare tout d&#8217;abord la localisation du bac à sable sur le <i>filesystem</i>, puis on s&#8217;y rend :</p>
<pre>SANDBOX="/export/home/pkgsrc/sandbox"
cd ${SANDBOX}</pre>
<p>Là, nous créons tous les répertoires nécessaires au bon fonctionnement du <i>chroot</i>, <code>/tmp</code> possède evidemment des droits particuliers :</p>
<pre>mkdir -p bin sbin usr lib etc tmp dev opt var/run proc
chmod 777 tmp; chmod +t tmp</pre>
<p>On peuple un peu <code>/etc</code> de fichiers indispensables :</p>
<pre>cp /etc/passwd etc/
cp /etc/group etc/
cp /etc/shadow etc/
cp /etc/nsswitch.conf etc/
cp /etc/vfstab etc/
cp /etc/resolv.conf etc/
cp /etc/hosts etc/
cp /etc/netconfig etc/
cp /etc/datemsk etc/
cp /etc/user_attr etc/
cp /etc/auto_home etc/
cp /etc/project etc/
cp -r /etc/skel /etc/

chmod 400 etc/shadow</pre>
<p>Enfin, point de copie de fichiers inutiles, nous <i>mountons</i> en <i>loopback</i> les repertoires <code>/dev</code> et <code>/proc</code> en lecture et écriture, puis <code>bin sbin usr lib</code> en lecture seule afin de ne pas faire de bêtises.</p>
<pre>
for rwfs in proc dev
do
        mount -F lofs /${rwfs} ${SANDBOX}/${rwfs}
done

for rofs in bin sbin usr lib
do
        mount -F lofs -o ro /${rofs} ${SANDBOX}/${rofs}
done
</pre>
<p>C&#8217;est prêt !</p>
<pre>
imil@pkgsrc:~$ pfexec chroot pkgsrc/sandbox /usr/bin/bash
bash-4.0#
</pre>
<p>Afin de pouvoir correctement compiler l&#8217;ensemble des paquets de pkgsrc, vous aurez également besoin d&#8217;installer les logiciels suivants à l&#8217;aide de la commande <code>pkg install</code> : <code>SUNWgcc, gnu-patch, gnu-tar, system/xopen/xcu4, gnu-grep, developer/object-file</code>.</p>
<p>Enfin, voici les particularités de mon <code>mk.conf</code>, à ajouter aux directives du <i>mk.conf chrooté</i> grace au <i>bootstrap</i> et son drapeau <code>--mk-fragment</code> :</p>
<pre>
PKGSRC_COMPILER=                ccache gcc

ACCEPTABLE_LICENSES+=           vim-license
ACCEPTABLE_LICENSES+=           sendmail-license

FAILOVER_FETCH=                 yes
ALLOW_VULNERABLE_PACKAGES=      yes
PKG_DEVELOPER=                  yes

MAKE_JOBS=              16

PASSIVE_FETCH=          1

X11_TYPE=               native
X11BASE=                /usr/X11
</pre>
<p>Ainsi que la commande complète de <i>bootstrap</i> :</p>
<pre>
./bootstrap --workdir=/tmp/pkgsrc --prefix=/opt/ipp/pkg --abi=32 --mk-fragment=mk-fragment.conf
</pre>
<p>Happy building.<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/03/14/leeeeeeeet-the-sun-shiiiiiiiiiine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sysutils/shelldap dans les bacs</title>
		<link>http://imil.net/wp/2011/02/04/sysutilsshelldap-dans-les-bacs/</link>
		<comments>http://imil.net/wp/2011/02/04/sysutilsshelldap-dans-les-bacs/#comments</comments>
		<pubDate>Thu, 03 Feb 2011 22:00:49 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[LDAP]]></category>
		<category><![CDATA[pkgsrc]]></category>
		<category><![CDATA[shell]]></category>

		<guid isPermaLink="false">http://imil.net/wp/2011/02/04/sysutilsshelldap-dans-les-bacs/</guid>
		<description><![CDATA[Connaissez-vous shelldap ? Cet outil absolument indispendable est L&#8217;Outil que j&#8217;attendais depuis des années. Saoulé que j&#8217;étais de la machine-à-coredumps gq et de l&#8217;usine à gaz lat, j&#8217;implorais les Dieux du code de faire apparaître quelque part sur l&#8217;internet convivial un outil pratique pour éditer des bases LDAP, possiblement en console, fou optimiste que je [...]]]></description>
			<content:encoded><![CDATA[<p>Connaissez-vous <a href="http://projects.martini.nu/shelldap">shelldap</a> ? Cet outil absolument indispendable est L&#8217;Outil que j&#8217;attendais depuis des années. Saoulé que j&#8217;étais de la machine-à-coredumps <code>gq</code> et de l&#8217;usine à gaz <code>lat</code>, j&#8217;implorais les Dieux du code de faire apparaître quelque part sur l&#8217;internet convivial un outil <strong>pratique</strong> pour éditer des bases LDAP, possiblement en console, fou optimiste que je suis.</p>
<p>Et bien cet outil existe. Et il est énorme. Comme son nom l&#8217;indique, il s&#8217;agit effectivement d&#8217;un shell-like destiné à la consultation et l&#8217;administration de bases LDAP, avec la completion s&#8217;il vous plait.</p>
<p>Constatant avec effroi que ce formidable logiciel n&#8217;était pas encore présent dans <a href="http://www.netbsd.org/docs/software/packages.html">pkgsrc</a>, je me suis fendu d&#8217;un nouveau package, et <code>shelldap</code> est donc désormais disponible sous <a href="http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/sysutils/shelldap/?only_with_tag=MAIN">sysutils/shelldap</a>.</p>
<p>C&#8217;est cadeau, ça m&#8217;fait plaisir.<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/02/04/sysutilsshelldap-dans-les-bacs/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>pkgsrc/net/nagstamon&#8230; ça arrive (commited)</title>
		<link>http://imil.net/wp/2010/04/05/pkgsrcnetnagstamon-ca-arrive-commited/</link>
		<comments>http://imil.net/wp/2010/04/05/pkgsrcnetnagstamon-ca-arrive-commited/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 21:11:26 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[nagios]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[pkgsrc]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=467</guid>
		<description><![CDATA[Il y a quelques jours, nico me faisait découvrir nagstamon. Ce fabuleux petit outil est le pendant du plugin Nagios Checker pour Firefox pour votre bureau UNIX/Linux.
Nagstamon est disponible dans le repository unstable de Debian, mais devinez quoi, pas dans pkgsrc. Ntt.. ntt.. ntt&#8230; je ne pouvais pas laisser ce vide perdurer.
Pkgsrc est actuellement en [...]]]></description>
			<content:encoded><![CDATA[<p>Il y a quelques jours, <a href="http://www.rottenbytes.info/">nico</a> me faisait découvrir <a href="http://nagstamon.sourceforge.net/">nagstamon</a>. Ce fabuleux petit outil est le pendant du plugin <a href="https://addons.mozilla.org/fr/firefox/addon/3607">Nagios Checker pour Firefox</a> pour votre bureau UNIX/Linux.</p>
<p><i>Nagstamon</i> est disponible dans le <i>repository unstable</i> de Debian, mais devinez quoi, pas dans <a href="http://www.netbsd.org/docs/software/packages.html">pkgsrc</a>. Ntt.. ntt.. ntt&#8230; je ne pouvais pas laisser ce vide perdurer.</p>
<p><a href="http://www.netbsd.org/docs/software/packages.html">Pkgsrc</a> est actuellement en status <i>freeze</i> afin de préparer la sortie de <i>pkgsrc-2010Q1</i>, aussi, nous ne sommes autorisés à <i>commiter</i> que des correctifs mineurs ou impactant la sécurité. Ainsi, pour l&#8217;impatient qui souhaite essayer sur le champs ce package, j&#8217;ai mis en ligne un <a href="http://en.wikipedia.org/wiki/Shar">.shar</a> du futur package <a href="http://imil.net/NetBSD/nagstamon.shar">ici même</a>, à déployer dans <code>/usr/pkgsrc/net/nagstamon.</code></p>
<p><b>update</b></p>
<p>À vos CVS :)</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2010/04/05/pkgsrcnetnagstamon-ca-arrive-commited/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maintenant, toi aussi tu peux zuipzuip !</title>
		<link>http://imil.net/wp/2010/01/31/maintenant-toi-aussi-tu-peux-zuipzuip/</link>
		<comments>http://imil.net/wp/2010/01/31/maintenant-toi-aussi-tu-peux-zuipzuip/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 19:53:12 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[pkgin]]></category>
		<category><![CDATA[pkgsrc]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=381</guid>
		<description><![CDATA[Et oui, ami des bureaux qui tournicottent, car on peut lire dans l&#8217;annonce officielle de pkgsrc-2009Q4 la phrase suivante :

the &#8220;Package of the Quarter&#8221; award is hereby awarded jointly to
clang, the compiler and lowlevel virtual machine infrastructure
nominated by Matthias Drochner, and to compiz, the compositing window
manager, nominated by iMil.

Parce que pour ne rien gâcher, c&#8217;est [...]]]></description>
			<content:encoded><![CDATA[<p>Et oui, ami des bureaux qui tournicottent, car on peut lire dans <a href="http://mail-index.netbsd.org/pkgsrc-users/2010/01/31/msg011603.html">l&#8217;annonce officielle de pkgsrc-2009Q4</a> la phrase suivante :<br />
<i><br />
the &#8220;Package of the Quarter&#8221; award is hereby awarded jointly to<br />
clang, the compiler and lowlevel virtual machine infrastructure<br />
nominated by Matthias Drochner, and to compiz, the compositing window<br />
manager, nominated by iMil.<br />
</i><br />
Parce que pour ne rien gâcher, c&#8217;est un <i>package of the quarter</i> :)</p>
<p>Ajoutons à cela le dernier post d&#8217;<a href="http://www.feyrer.de/NetBSD/bx/blosxom.cgi/index.front">Hubert</a> qui annonce :<br />
<i><br />
Staying with driver games, iMil writes me that there&#8217;s documentation on getting DRI, AIGLX, Composite and Compiz  going with NetBSD 5.0 available in the O(ther)NetBSD Wiki now.</p>
<p>The documentation covers how to enable the Direct Rendering Manager (DRI), setting up and configuring Modular X.org, assuring that everything&#8217;s in place, and how to get Compitz going. Mmm, wobbly windows at last! :-)<br />
</i><br />
Je pense qu&#8217;on peut raisonnablement se dire qu&#8217;un bon petit <code>pkgin in compiz compiz-fusion-plugins-main compiz-fusion-plugins-extra compizconfig-backend-gconf compiz-bcop ccsm</code> suivi de la lecture de <a href="http://wiki.netbsd.se/DRI%2C_AIGLX%2C_Composite_and_Compiz">cette documentation</a> devrait en ravir plus d&#8217;un.</p>
<p>Ah, et pour <i>xorg-modular</i>, c&#8217;est <a href="http://pkgsrc.netbsdfr.org/">par ici</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2010/01/31/maintenant-toi-aussi-tu-peux-zuipzuip/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

<!-- Served from: imil.net @ 2012-02-04 19:21:38 by W3 Total Cache -->
