Journal Petit guide à l'usage des développeurs de LL qui souhaitent se tirer dans le pied

Posté par  . Licence CC By‑SA.
101
13
fév.
2018

De l'utilité des mainteneurs

Contrairement au monde Windowsien, il est très peu commun pour un utilisateur de Linux ou BSD (voire même MacOS, avec HomeBrew) d'installer directement un logiciel depuis le site web de son développeur. Le plus clair du temps, on passe plutôt par un dépôt (de binaires ou de sources) : cela permet aux utilisateurs de ne pas avoir à se soucier de la configuration particulière de leur distribution préférée et de centraliser les installations et mises à (…)

Journal Pourquoi écrire un package Debian est-il si compliqué?

Posté par  (site web personnel) . Licence CC By‑SA.
89
8
sept.
2014

Bonjour Nal,

j'ai commencé à écrire des Packages pour Debian et je ne comprends pas pourquoi il faut que cela soit si compliqué.

Cela fait depuis plus de dix ans que j'écris des ports pour FreeBSD et cinq ans pour MacPorts. Je suis donc habitué à ce genre d'instructions:

  • Quick Porting pour FreeBSD, qui traite le cas facile en 3 pages A4.

  • Portfile development pour MacPorts qui traite le cas facile aussi rapidement — et la documentation est encore plus (…)

Journal Pourquoi vous ne devriez pas packager vous-même votre logiciel pour Debian ?

Posté par  (site web personnel) . Licence CC By‑SA.
76
28
oct.
2014

J’écris cet article pour vous raconter ma mésaventure et vous avertir des problèmes au devant desquels vous allez si vous décidez de packager pour Debian un logiciel que vous avez vous-même créé. C’est en quelque sorte une réponse à https://wiki.debian.org/AdvantagesForUpstream.

Je suis le créateur du jeu MiceAmaze, un petit jeu avec des souris et des serpents que j’ai écrit en C++ et qui utilise OpenGL pour le rendu. Le jeu est conçu dès l’origine pour marcher à la fois (…)

CARE et la reproductibilité des exécutions

Posté par  (site web personnel) . Édité par palm123, Benoît Sibaud, ZeroHeure, Florent Zara et Xavier Teyssier. Modéré par Xavier Teyssier. Licence CC By‑SA.
Étiquettes :
74
5
fév.
2014
Technologie

CARE (Comprehensive Archiver for Reproducible Execution) vient de sortir en version 2.1.

CARE est un outil permettant d'observer l'exécution d'une commande Linux (ls, gcc, vlc, …) et de créer une archive contenant l'intégralité des fichiers utilisés lors de l'exécution de cette commande. Il est alors possible d'extraire cette archive sur une autre machine afin de relancer la commande dans le système de fichiers d'origine.

Lors de la ré-exécution, la commande sera entièrement isolée dans l'archive et ne pourra accéder qu'aux fichiers et à l'environnement présent dans cette archive. Il est important de noter que les événements extérieurs (comme les entrées clavier, réseau, …) ne sont pas archivés et doivent, si nécessaire, être recréés par l'utilisateur.

Baptiste Daroussin revient sur pkgng, le nouveau système de packages binaires de FreeBSD

66
6
sept.
2013
FreeBSD

Nous avons la chance d'avoir quelques développeurs qui fréquentent LinuxFR.org (what else ?), dont Baptiste Daroussin (alias Bapt) qui contribue au système d'exploitation libre FreeBSD – tout comme Jean-Sébastien Pédron dont nous avons recueilli les propos il y a quelques jours : hasard ou coïncidence ? ;-)

Baptiste est quant à lui à l'origine de « pkgng », le nouveau système de packages binaires pour FreeBSD qui a été repris par DragonFly BSD.

Pour illustrer à quel point ce genre de fonctionnalité était attendu de longue date, je citerai ce que m'a confié un peu plus tôt un administrateur systèmes :

Baptiste c'est un peu notre sauveur pour l'utilisation de systèmes BSD en contexte professionnel.
pkg(8) et poudriere me font facilement gagner une à deux heures par semaine pour l'administration d'un parc de serveurs.

Baptiste a accepté de répondre à quelques questions pour LinuxFR.org ; nous le remercions chaleureusement à la fois pour le temps consacré à cet entretien et pour son implication dans FreeBSD !

À noter que certains hyperliens ont été ajoutés après coup par les contributeurs à cette dépêche pour en faciliter la lecture.

Jubako et Arx, un conteneur universel et son format d’archive

Posté par  (site web personnel) . Édité par orfenor, Yves Bourguignon, vmagnin, palm123, Ysabeau 🧶 🧦, patrick_g, Ltrlg et Julien Jorge. Modéré par Ysabeau 🧶 🧦. Licence CC By‑SA.
Étiquettes :
61
4
nov.
2022
Technologie

Jubako, quezako ?

重箱 (Jūbako) est le nom japonais des boîtes à bento. Ce sont des boîtes compartimentées qui peuvent se composer en fonction de ce qu’il y a à stocker dedans (en général un repas).

Et ça tombe bien, parce que Jubako, c’est un format de conteneur qui permet de stocker différentes données et méta-données. J’ai tendance à parler de conteneurs plutôt que d’archives, en effet « archive » est un mot orienté qui fait penser aux archives de fichiers, alors que Jubako se veut généraliste : un conteneur Jubako pourrait être utilisé pour plein d’autres choses : empaquetage d’applications, pack de ressources dans un binaire, conteneur multimédia, etc.

Vous pouvez voir Jubako comme étant au stockage ce que XML est à la sérialisation. XML définit comment sérialiser du contenu (sous forme d’un arbre de nœuds avec des attributs) mais ne définit pas quels sont ces nœuds et attributs. Chaque cas d’usage a sa propre structure. Pour Jubako c’est pareil, il définit comment stocker des données dans un fichier « d’archive » mais il ne définit pas quelles sont ces données. Chaque cas d’usage aura sa propre structure de données.

Jubako et Arx sont sous licence MIT.

Journal Write once, run anywhere qu'il disait

35
3
déc.
2012

Sommaire

Bonjour Nal,

Ces derniers jours, j'ai travaillé sur le packaging de Newton Adventure et ce n'est pas de tout repos !

Voici un résumé de mes recherches sur le sujet.

Du simple zip…

Jusqu'ici je distribuais une simple archive au format zip contenant l'exécutable java du projet, càd un fichier jar, ainsi que les bibliothèques dont il dépend : (…)

Journal Un nouveau format de paquets pour Ubuntu

Posté par  . Licence CC By‑SA.
Étiquettes :
33
10
mai
2013
Ce journal a été promu en dépêche : Un nouveau format de paquets logiciels utilisateurs pour Ubuntu.

Bonjour à tous, aujourd'hui nous sommes Vendredi, et comme tous les Vendredi les troll sortent de leurs grottes (ils ne font pas le pont).

Phoronix nous apprend qu'Ubuntu serait en train de préparer son propre format de paquet complémentaire aux .deb. Son avantage ? Fournir le logiciel avec toutes ses librairies, à l'instar de ce qui se fait dans les système d'exploitations propriétaires. Il n'y aura donc plus de dépendances à gérer, comme avec les .pbi sur PC-BSD, les .dmg (…)

Journal Paperwork : cherche mainteneur Debian

32
8
juil.
2014

Bonjour cher 'Nal,

Ross Vandegrift s'était proposé pour packager et maintenir des paquets Debian pour Paperwork et quelques-unes de ses dépendances. Il n'a malheureusement plus le temps. Ça m'embête, parce-que les paquets Debian, c'est un des points clés de mon plan de conquête du Monde.

Du coup, un poste d'assistant de super-vilain s'est libéré. Avis aux gens qui ont du temps à tuer (à défaut d'espions). C'est l'occasion de participer à un projet de logiciel libre et de (…)

Journal L'arbre des ports de FreeBSD a vingt ans

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
31
21
août
2014

Et voilà, cela fait vingt ans que le premier commit pour les ports de FreeBSD a été fait.
Au départ, il n'y avait que 10 ports. Aujourd'hui, les ports FreeBSD ont dépassé la barre des 24000 ports, des 500 committers pour plus de 360000 commits.

Bon anniversaire :)

Allez zou, la petite vidéo commémorative

Alire, le package manager d'Ada

28
1
juin
2022
Ada

Dans un précédent journal, il m’a été demandé de présenter Alire sous la forme d’une dépêche. Voilà, j’ai fini par prendre le temps et j’ai choisi la façon de le présenter.
Je vous propose donc une sorte de pas-à-pas plutôt qu’une explication un peu brutale

Le but

Nous allons donc créer des crates Alire (les Rustistes auront reconnu le terme).
J’ai bien dit des car cela va permettre de voir les deux types, lib ou bin que l’on peut créer.

Le projet

Le but n’étant pas d’écrire du code Ada, on va prendre un de mes projets préférés qui n’a, au moment de l’écriture de ces lignes, pas de crate associée.
J’ai nommé le Corporate Bullshit Generator, logiciel ô combien indispensable, source inépuisable d’études en scalabilité (autopromotion).

Ce magnifique projet est l’œuvre de Gautier de Montmollin qui produit aussi des choses beaucoup plus sérieuses comme Zip-Ada, une lib pour gérer les archives zip, Ada PDF Writer ou HAC, un compilateur Ada partiel.
Évidemment, tout est codé en pur Ada.

Bon assez causé, on y va direct car c’est NOTRE PROJEEEEETTTT :)

Project-Builder.org 0.11.1 est maintenant disponible

Posté par  (site web personnel) . Modéré par tuiu pol. Licence CC By‑SA.
25
9
mar.
2011
Perl

Je suis heureux d'annoncer la nouvelle et dernière version 0.11.1 de Project‑Builder.org !

Pour rappel, Project‑Builder.org est un outil GPLv2 qui supporte le concept de « Continuous Packaging » — empaquetage en continu —, développé conjointement par HP et Intel. Le but est de permettre de construire, à partir d'un seul répertoire source, régulièrement des paquets pour différentes distributions et architecture.

Le principal apport de cette version est l'ajout du support des remote machines (RM) en supplément des machines virtuelles (VM) ou des environnement virtuels (VE) ou chroot pour fabriquer des paquetages. On peut donc maintenant utiliser Project‑Builder.org simplement et facilement, dans un contexte de ferme de fabrication de paquets.

La mise à jour des VMs, VEs et RMs associées peut se faire en utilisant setupvm|ve|rm.

Cette version corrige aussi des bogues sur la gestion du parallélisme, ceux des sources et patchs additionnels, la gestion des ebuilds et les bogues #83, #86 et #87, notamment.

Un effort a été fait pour améliorer la sécurité dans l'usage de « sudo » en restreignant la liste des commandes utilisées (pour les RM principalement qui peuvent être gérées par des tiers, mais cela bénéficie aussi aux VM).

Enfin, encore du nettoyage de code, suite aux conférences Perl vues lors du FOSDEM 2011, qui m'ont donné envie d'améliorer le code. :-)

Pas de contre‑indication dans son utilisation. ;-)

pkgsrc 2014Q4 est disponible

Posté par  (site web personnel, Mastodon) . Édité par ZeroHeure et palm123. Modéré par ZeroHeure. Licence CC By‑SA.
25
18
jan.
2015
NetBSD

Dans un message à des listes de diffusion pkgsrc et NetBSD, Alistair Crooks a annoncé la disponibilité de la branche pkgsrc-2014Q4. Pkgsrc (prononcer package source) est une infrastructure de construction de logiciels tiers pour NetBSD, ainsi que pour d’autres systèmes de type UNIX. Il permet donc à NetBSD et à d’autres systèmes d’exploitation de disposer de nombreux logiciels sous forme source, mais aussi sous forme binaire.

Les développeurs pkgsrc fournissent une nouvelle version stable chaque trimestre. Comme son nom l’indique, pkgsrc 2014Q4 est donc la dernière sur les quatre de l'année 2014 et est disponible depuis le 2 janvier dernier.

Plus de détails sur cette version en particulier en seconde partie de dépêche, qui reprend grandement le courriel d'annonce.

Journal Rebelote : Paperwork : cherche mainteneur Debian

17
4
août
2014

Bonjour cher 'Nal,

Vandegrift Ross s'était proposé pour packager et maintenir des paquets Debian pour Paperwork et quelques-unes de ses dépendances. Il n'a malheureusement plus le temps. Rodier André s'était proposé pour le remplacer. Mais il n'a finalement plus le temps non plus.

Ça m'embête, parce-que les paquets Debian, c'est un des points clés de mon plan de conquête du Monde. Du coup, il y a, à nouveau, un poste d'assistant de super-vilain qui s'est libéré. Avis (…)

Journal FatELF : binaires universels pour Linux

Posté par  (site web personnel) .
13
15
juil.
2011

Em me promenant sur Icculus, je suis tombé sur le projet FatELF. Je ne connaissais pas. FatELF est un format de fichier qui englobe les binaires ELF pour différentes architectures dans un seul fichier.C'est l'équivalent des "Universal Binaries" de Mac OS X. Ça vous plait? Et pourtant y'a un os! Car il faut patcher le système pour que ça marche (le noyau et la glibc surtout) et personne n'a accepté le patch. Mais surtout les mainteneurs étaient très hostiles (…)