;;;; manifest.scm
;;; Un exemple de manifeste Guix simple
;;; Section 1: Déclarer les modules Guix nécessaires
;;; Permet à Guix de trouver les définitions des paquets que vous allez lister.
;;; Il faut ajouter une ligne (gnu packages ...) pour chaque catégorie de paquets.
(use-modules (guix packages) ; Fonctionnalité de base des manifestes
(gnu packages base) ; Pour "coreutils", "bash", etc.
(gnu packages build-tools) ; Pour "gcc-toolchain", "make", "cmake", "pkg-config"...
(gnu packages python) ; Pour "python", "python-numpy", etc.
(gnu packages science) ; Pour "hdf5", "netcdf", "gsl", etc.
(gnu packages tex) ; Pour "texlive-xyz"...
;; Ajoutez ici d'autres modules si vous utilisez des paquets
;; de catégories différentes (ex: (gnu packages maths) pour "openblas")
;; ou de canaux spécifiques (ex: (hpc packages mpi) si guix-hpc est configuré)
)
;;; Section 2: La liste des paquets désirés
;;; La fonction 'specifications->manifest' prend une liste de chaînes de caractères.
;;; Chaque chaîne est le nom d'un paquet tel que trouvé par 'guix search'.
(specifications->manifest
(list
;; Paquets de base souvent utiles
"coreutils" ; pour ls, cat, rm, etc.
"bash" ; le shell
;; Outils de compilation (si vous compilez du code)
"gcc-toolchain" ; Contient gcc, g++, gfortran, etc. (peut aussi être juste "gcc")
"make"
;"cmake" ; Décommentez si besoin
;"pkg-config" ; Décommentez si besoin
;; Paquets Python (exemple)
"python" ; Le paquet python principal (souvent Python 3)
"python-numpy"
"python-scipy"
"python-matplotlib"
"python-pandas"
;; Autres outils scientifiques (exemple)
"hdf5"
;"openmpi" ; Décommentez si besoin (le nom exact peut varier)
;; Ajoutez ici les noms exacts des autres paquets dont vous avez besoin
;; (utilisez 'guix search' pour trouver les noms)
;; "votre-outil-bioinfo"
;; "votre-librairie-specifique"
))