Passer au contenu principal

code. grind. sleep.

Étiquette: pkgsrc

modular-xorg, radeon et pas de KMS

Il y avait un moment que je n’avais pas touché à NetBSD et donc mis à jour mon lappy avec du pkg frais. Entre temps, la version de X.org modular, donc issue de pkgsrc, est revenue en 2012, avec son lot de drivers mis à jour. Le drivers xf86-video-ati, est passé en version 7.1.0, sauf qu’il fonctionne uniquement en KMS (Kernel Mode Setting), chose qu’on n’a pas encore dans notre kernel.

Passer de X.org natif à modular

X.org est fourni dans le basesys et dans pkgsrc, on appelle le premier « native » et le second « modular » selon la valeur de la variable X11_TYPE que l’on positionne dans son /etc/mk.conf pour signifier à pkgsrc sur lequel linker.

Bulk build partiel de pkgsrc

En suivant l'excellent tip de Mr GuiGui2, j’ai pu monter ma petite archi de bulk build personnelle pour fournir du package tout frais à pkgin. J’ai donc ajouté le bloc magique suivant à mon /etc/mk.conf, qui permet de gérer la présence de commentaires dans pkgchk.conf : # bulk build config DEPENDS_TARGET= bulk-install BATCH= yes BULK_PREREQ+= pkgtools/lintpkgsrc .if defined(SPECIFIC_PKGS) PKGLIST!= awk '$$1 !~ /^\\#/ {print $$1}' ${PKGCHK_CONF} . for _pkg_ in ${PKGLIST} HOST_SPECIFIC_PKGS+= ${_pkg_} .

Montrer les dépendances avec make dans pkgsrc

Généralement, on peut savoir quelles sont les dépendances d’un package en utilisant make show-depends, mais cela ne montre que les dépendances pour l’installation, les dépendances pour la compilation ne sont pas montrées. $ cd /usr/pkgsrc/databases/postgresql90-server/ $ make show-depends postgresql90-client>=9.0.4:../../databases/postgresql90-client Pour connaître les dépendances selon leur type (installation ou compilation), on peut utiliser la cible show-depends-pkgpaths alliée à la variable DEPENDS_TYPE. Pour avoir seulement les dépendances de compilation : $ make DEPENDS_TYPE=build show-depends-pkgpaths devel/bison devel/gmake pkgtools/digest Pour avoir seulement celles d’installation :

pkgsrc, pkg_comp et ccache

Pour utiliser ccache dans un chroot pkg_comp, on commence par installer ccache : # pkg_comp build devel/ccache # pkg_add /usr/pkgsrc/packages/All/ccache-3.1.4.tgz En utilisant la cible package-install dans le chroot, ccache s’y trouve installé. On l’installe aussi sur le système pour surveiller les statistiques plus tard. Ensuite, on édite le etc/mk.conf du chroot, par exemple /local/pkg_comp/default/etc/mk.conf, pour y définir les variables suivantes : # ... # fin de la conf speciale pkg_comp CCACHE_DIR=${WRKOBJDIR}/.