| 13 Apr 2023 |
Gaël Reyrol | raitobezarius: Donc si je reçois un message de ce type là alors que j'ai activé le support binfmt via qemu qu'est-ce que je peux faire ? error: a 'aarch64-linux' with features {} is required to build '/nix/store/dfwf6xh3ivf0mzrlp11apq0ijixjqsds-audit-disable.drv', but I am a 'x86_64-linux' with features {benchmark, big-parallel, nixos-test, uid-range} | 07:22:23 |
raitobezarius | In reply to @Zevran:matrix.org raitobezarius: Donc si je reçois un message de ce type là alors que j'ai activé le support binfmt via qemu qu'est-ce que je peux faire ? error: a 'aarch64-linux' with features {} is required to build '/nix/store/dfwf6xh3ivf0mzrlp11apq0ijixjqsds-audit-disable.drv', but I am a 'x86_64-linux' with features {benchmark, big-parallel, nixos-test, uid-range} Restart le daemon Nix | 08:59:59 |
raitobezarius | Et réessaye | 09:00:02 |
Guillaume Desforges | le bon vieux "try rebooting" | 16:03:01 |
Guillaume Desforges | * le bon vieux "try rebooting your machine" | 16:03:07 |
Minijackson | Gaël Reyrol: si tu utilises Nix sur Ubuntu, il faut faire attention à faire un peu tout ce que fait le module NixOS correspondant: https://github.com/NixOS/nixpkgs/blob/87edbd74246ccdfa64503f334ed86fa04010bab9/nixos/modules/system/boot/binfmt.nix#L282-L324 | 16:51:58 |
Minijackson | donc installer qemu-user-binfmt (comme tu l'as probablement déjà fait), mais aussi modifier les options extra-platforms et extra-sandbox-paths du nix.conf | 16:53:02 |
raitobezarius | Je raisonnais sur un NixOS +1 | 16:56:38 |
Minijackson | chez moi, j'ai boot.binfmt.emulatedSystems = ["aarch64-linux" "powerpc64-linux"];, et ça me donne dans mon nix.conf:
extra-platforms = aarch64-linux powerpc64-linux i686-linux
extra-sandbox-paths = /run/binfmt /nix/store/lc46g4a2b4llnr259d5a9yks3apnlnpz-qemu-aarch64-binfmt-P-x86_64-unknown-linux-musl /nix/store/lmsmqifrmkiyxv7y05iv3rcg4fzws84i-qemu-ppc64-binfmt-P-x86_64-unknown-linux-musl
| 16:56:55 |
Minijackson | il faut que le qemu soit dans les paths autorisés dans la sandbox pour qu'il puisse être exécuté, sur Ubuntu, c'est probablement dans /usr/bin? Mais du coup c'est dommage de rajouter tout /usr/bin et /usr/lib (pour les .so de qemu) dans la sandbox :-/ | 16:58:28 |
Minijackson | (à voir en fonction de comment est fait le paquet qemu-user-binfmt) | 16:59:14 |
| 15 Apr 2023 |
| @ixxie:matrix.org left the room. | 10:08:50 |
| 17 Apr 2023 |
| @anonymous:techsaviours.org changed their profile picture. | 19:24:24 |
| 19 Apr 2023 |
| @anonymous:techsaviours.org changed their profile picture. | 01:04:47 |
| @fzara:matrix.eclipse.org joined the room. | 12:43:19 |
| Paul-Nicolas Madelaine joined the room. | 21:32:35 |
Paul-Nicolas Madelaine | In reply to @ambroisie:belanyi.fr En particulier, j'aimerai bien avoir des infos sur Typhon-CI (le dépôt GitHub est un peu barebones 🙃) je réponds un peu tard, mais je viens tout juste d'ajouter de la doc au repo :) | 21:33:21 |
| 20 Apr 2023 |
| @anonymous:techsaviours.org changed their display name from anonymous to anonymous (Old). | 03:15:37 |
| @anonymous:techsaviours.org changed their display name from anonymous (Old) to anonymous. | 03:56:47 |
| @anonymous:techsaviours.org left the room. | 05:23:09 |
@victor_mignot:matrix.org | Je crois que tout le bazar pour la cross compilation m'étonneras toujours un peu avec Nix.
J'essaie de build pour aarch64, un fork du kernel par un fabricant de SoC.
J'en arrive à la flake suivante avec les quelques recherches que j'ai pu faire:
https://paste.sr.ht/~dala/f3e3cc8197e9bbdb13ff6406a05630c198474e8b
Et je finis par arriver à un cas où il n'arrive pas à trouver GCC lors du build (alors qu'à priori je lui fourni un stdenv).
Quelqu'un aurait une idée d'où ça pourrait venir ?
| 14:56:31 |
@victor_mignot:matrix.org | Sachant ue l'idée d'utiliser le mkDerivation de pkgsCross m'est venue sachant que GCC ne reconnaissait pas l'option -mlittleendian sinon | 14:59:07 |
@victor_mignot:matrix.org | * Sachant que l'idée d'utiliser le mkDerivation de pkgsCross m'est venue sachant que GCC ne reconnaissait pas l'option -mlittleendian sinon | 15:01:26 |
Minijackson | personnellement, je te conseillerais d'utiliser plus un overlay, avec un callPackage, ça te rapprochera plus de quelque chose venant de nixpkgs | 15:02:18 |
Minijackson | import nixpkgs {
overlays = [(final: prev: {
linux-imx = final.callPackage ./linux-imx {};
})];
crossSystem = nixpkgs.lib.systems.examples.aarch64-multiplatform;
};
| 15:03:33 |
@victor_mignot:matrix.org | Je suis pas encore hyper familier avec les overlays, faudra que je me renseigne ! | 15:05:57 |
@victor_mignot:matrix.org | * Je suis pas encore hyper familier avec les overlays, faudra que je me renseigne | 15:06:48 |
Minijackson | la documentation officielle est ici: https://nixos.org/manual/nixpkgs/stable/#chap-overlays
mais expliqué vite fait, ça permet de modifier la liste des paquets disponibles | 15:07:21 |
Minijackson | pour ajouter, enlever, modifier les paquets nixpkgs | 15:07:33 |
@victor_mignot:matrix.org | Je vois l'idée, thanks ! | 15:08:05 |