GuixPkgs es un proyecto de software que convierte la totalidad del repositorio de paquetes de GNU Guix en un flake de Nix, permitiendo combinarlos con los de Nixpkgs dentro de un mismo entorno de desarrollo. La herramienta se apoya en guix-transfer, un componente desarrollado previamente por el mismo autor, que reescribe las derivaciones de Guix como derivaciones de Nix para que nix-daemon pueda compilarlas.
El mecanismo fija un commit concreto de Guix mediante guix time-machine, lo que desacopla el resultado de la versión de guix-daemon instalada en la máquina del usuario. A continuación, vuelca el archivo .drv de cada paquete y lo procesa con guix-transfer --disable-tests --emit-nix-dir pkgs. Después reconstruye el índice by-name y almacena el canal, el commit y la marca temporal en guix-metadata.json.
La compilación de un paquete de Guix bajo Nix implica reconstruir toda la cadena de arranque de fuentes de Guix, un proceso que puede durar varias horas por cierre. Para evitarlo, GuixPkgs incorpora una caché binaria en Cachix (cachix use guixpkgs), patrocinada por Domen Kozar. El resultado es que paquetes de Guix como guile-png, que solo existían en ese ecosistema, quedan disponibles directamente en /nix/store y funcionan como cualquier otro paquete de Nix, sin necesidad de tener Guix instalado en la máquina consumidora. El autor plantea como siguiente paso crear un overlay que reemplace cada paquete de Nixpkgs por su equivalente en Guix, llegando a configurar un sistema NixOS donde todos los paquetes procedan de Guix.
