Instalei o guix sobre o Debian e depois usei o guix para instalar o emacs e alguns pacotes do emacs (emacs-discover e emacs-mastodon), o que também fez com que o guix instalasse algumas dependências desses pacotes.
Cada pacote instalado pelo guix aparece duas vezes na lista do gerenciador de pacotes embutido no emacs. Para esclarecer, eles não estão aparecendo duas vezes porque estão disponíveis em outro repositório como elpa ou melpa. Eles não apareciam até serem instalados pelo guix, e são listados como "externos" na coluna de status da lista (captura de tela anexada).
Existe uma maneira de consertar isso? Vai ficar muito chato ter muitos pacotes duplicados.
Então, acontece que o guix, durante a instalação do emacs ou dos pacotes do emacs, atualizou automaticamente $GUIX_PROFILE/etc/profile com a linha:
exportar EMACSLOADPATH="${GUIX_PROFILE:-/gnu/store/aw9nzpanmzpnf0j3fdh6vlv05d95si6c-profile}/compartilhar/emacs/site-lisp${EMACSLOADPATH:+:}$EMACSLOADPATH"
Em seguida, o guix automaticamente obtém esse script de perfil para atualizar o ambiente do usuário para que os pacotes recém-instalados possam ser encontrados.
No entanto, o guix originou o perfil duas vezes (talvez uma vez ao instalar o emacs e uma vez ao instalar os pacotes do emacs; ou talvez uma vez para cada pacote do emacs que eu instalei), levando ao resultado de que minha variável de ambiente tinha o diretório site-lisp duplicado na variável de ambiente. A ferramenta de pacote do emacs dentro do emacs aparentemente escaneará alegremente o mesmo diretório duas vezes e adicionará entradas nas duas vezes em que encontrar os pacotes no mesmo diretório.
A resolução é super simples: saia do seu shell para limpar o ambiente, depois faça login novamente para obter um novo shell e a variável env terá o diretório apenas uma vez.