;; Ceci est une configuration de système d'exploitation générée par
;; l'installateur graphique.
;;
;; Une fois l'installation terminée, vous pouvez apprendre à modifier
;; ce fichier pour ajuster la configuration du système et le passer à
;; la commande « guix system reconfigure » pour rendre vos changements
;; effectifs.


;; Indique quels modules importer pour accéder aux variables
;; utilisées dans cette configuration.
(use-modules (gnu)
	     (nongnu packages linux)
             (gnu packages shells))
(use-service-modules cups desktop networking ssh xorg)

(operating-system
  (kernel linux)
  (firmware (list linux-firmware))
  (locale "fr_FR.utf8")
  (timezone "Europe/Paris")
  (keyboard-layout (keyboard-layout "fr" "bepo_afnor"))
  (host-name "CoursThales")

  ;; La liste des comptes utilisateurs (« root » est implicite).
  (users (cons* (user-account
                  (name "jc")
                  (comment "Jean-Christophe JANEUX BERTHE")
                  (group "users")
                  (home-directory "/home/jc")
                  (shell (file-append fish "/bin/fish"))
                  (supplementary-groups '("wheel" "netdev" "audio" "video")))
                %base-user-accounts))

 ;; Paquets installés pour tout le système. Les utilisateurs et utilisatrices peuvent
 ;; aussi installer des paquets sous leur propre compte : utilisez « guix search MOT-CLÉ »
 ;; pour chercher des paquets et « guix install PAQUET » pour installer un paquet.
 (packages (append (list (specification->package "zsh")) %base-packages))

  ;; Voici la liste des services du système.  Pour trouver les services
  ;; disponibles, lancez « guix system search MOT-CLÉ » dans un terminal.
  (services
   (append (list (service gnome-desktop-service-type)
                 (service bluetooth-service-type
			  (bluetooth-configuration
			    (auto-enable? #t)))

                 ;; Pour configurer OpenSSH, passez un enregistrement « openssh-configuration »
                 ;; en deuxième argument à « service » ci-dessous.
                 (service openssh-service-type)
                 (service tor-service-type)
                 (service cups-service-type)
                 (set-xorg-configuration
                  (xorg-configuration (keyboard-layout keyboard-layout))))

           ;; Voici la liste des services par défaut à laquelle nous
           ;; ajoutons nos propres services.
           %desktop-services))
  (bootloader (bootloader-configuration
                (bootloader grub-efi-bootloader)
                (targets (list "/boot/efi"))
                (keyboard-layout keyboard-layout)))
  (mapped-devices (list (mapped-device
                          (source (uuid
                                   "52cf448f-df74-47ba-9091-14db17094221"))
                          (target "cryptroot")
                          (type luks-device-mapping))))

  ;; La liste des systèmes de fichiers qui seront « montés ».  Les identifiants
  ;; de systèmes de fichiers uniques (« UUIDs ») qui se trouvent ici s'obtiennent
  ;; en exécutant « blkid » dans un terminal.
  (file-systems (cons* (file-system
                         (mount-point "/boot/efi")
                         (device (uuid "A148-A386"
                                       'fat32))
                         (type "vfat"))
                       (file-system
                         (mount-point "/")
                         (device "/dev/mapper/cryptroot")
                         (type "ext4")
                         (dependencies mapped-devices)) %base-file-systems)))