Guix useful commands tuto
Table of Contents
This file is for reminding nice commands to use on guix system
Commandes utiles
Useful gneral commands
Gestion des paquets
guix package --install <package>: Installe le paquet spécifié.guix package --upgrade <package>: Met à jour le paquet spécifié.guix package --remove <package>: Supprime le paquet spécifié.guix package --list: Liste tous les paquets installés.
Recherche de paquets
guix search <search-term>: Recherche des paquets contenant le terme spécifié.guix describe <package>: Affiche la description du paquet spécifié, y compris ses dépendances et sa taille.
Gestion des configurations
guix package --set-default <package>: Définit le paquet spécifié comme défaut pour les applications qui en ont besoin.guix package --unset-default <package>: Supprime la configuration du paquet spécifié comme défaut.
Gestion des réplications
guix replicate: Crée une nouvelle réplication de l'environnement courant.guix switch-to-repl <name>: Active la réplication spécifiée.guix delete-repl <name>: Supprime la réplication spécifiée.
Gestion des dépôts
guix archive --generate: Génère un fichier d'archive contenant tous les paquets installés.guix archive --apply <file>: Applique le fichier d'archive spécifié pour restaurer les paquets installés.
Autres
guix shell: Ouvre une nouvelle session de shell avec les variables d'environnement et les chemins définis par Guix.guix config: Affiche ou modifie la configuration de Guix, y compris les répertoires de recherche et les options de téléchargement.
Commandes nécessaires pour Emacs
Lancer la commande ci-dessous dans un terminal sinon Emacs en mode server ne fonctionnera pas (Emacs se fige)
xhost +SI:localuser:$USER
Configurer son système
sudo -E guix system reconfigure ~/.config/guix/system.scm
Guix shell
Lancer la commande guix shell -m manifest.scm avec un fichier manifest.scm contenant les lignes ci-dessous.
Nota: ce fichier peut être réé avec la commande ci-après:
guix shell --export-manifest -D guile git emacs emacs-geiser emacs-geiser-guile > manifest.scm
Cela donne le contenu ci-après:
(concatenate-manifests
(list (specifications->manifest
(list "git"
"emacs"
"emacs-geiser"
"emacs-geiser-guile"))
(package->development-manifest
(specification->package "guile"))))
Fichier de configuration de xguix
;; 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))
(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"))
(host-name "xguix")
;; La liste des comptes utilisateurs (« root » est implicite).
(users (cons* (user-account
(name "xavier")
(comment "Xavier")
(group "users")
(home-directory "/home/xavier")
(supplementary-groups '("wheel" "netdev" "audio" "video")))
%base-user-accounts))
(packages (append (list (specification->package "xhost") ;; Sinon le lancement Emacs se fige
(specification->package "openbox")
(specification->package "awesome")
(specification->package "i3-wm")
(specification->package "i3status")
(specification->package "dmenu")
(specification->package "st")
(specification->package "ratpoison")
(specification->package "xterm")
(specification->package "emacs")
(specification->package "emacs-exwm")
(specification->package
"emacs-desktop-environment")
(specification->package "nss-certs"))
%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 mate-desktop-service-type)
;; 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-bootloader)
(targets (list "/dev/sda"))
(keyboard-layout keyboard-layout)
(menu-entries
(list
(menu-entry
(label "Ubuntu")
(linux "/boot/vmlinuz-5.15.0-52-generic")
(linux-arguments '("root=/dev/sda1"))
(initrd "/boot/initrd.img-5.15.0-52-generic"))))))
;; 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 "/")
(device (uuid
"6fbf6c02-2832-4f9f-a02c-673bb12bded6"
'ext4))
(type "ext4")) %base-file-systems)))
History
history guix upgrade guix pull guix package --list-generations guix home container ./config.scm fish_config theme man fish-doc man fish-tutorial guix home container ./home-configuration.scm guix home container config.scm guix home import ~/src/guix-config guix home --help guix home guix package -u guix package -I guix pull --news emacs ./config_xlh.scm cat /etc/profile fish_config theme choose Fairground fish_config theme choose Dracula fish_config theme show ssh-add glances guile emacs -nw xkill guix install xkill guix install font-fira-code guix install mc cd Config ls -la git clone https://gitlab.xlhcloud.fr/Prog/Config mkdir OrgFiles guix install git gnome-shell df -h cat /etc/hosts