logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
utilisateurs:gonzoleri:tutos:guixsd-0.16-en-dual-boot-avec-debian-testing-sid [10/07/2019 21:12]
gonzoleri [Utilisation]
utilisateurs:gonzoleri:tutos:guixsd-0.16-en-dual-boot-avec-debian-testing-sid [26/07/2019 11:32]
gonzoleri [Utilisation]
Ligne 2: Ligne 2:
  
   * Objet : Installation en Dual Boot   * Objet : Installation en Dual Boot
-  * Niveau requis :​{{tag>​avisé}}+  * Niveau requis :​{{tag>​avisé}} ​L'​installation de **Guix System 1.0.1** ne devrait pas être très différente à effectuer (non testé).
   * Commentaires : [[https://​www.gnu.org/​software/​guix/​manual/​html_node/​GNU-Free-Documentation-License.html]]   * Commentaires : [[https://​www.gnu.org/​software/​guix/​manual/​html_node/​GNU-Free-Documentation-License.html]]
   * Débutant, à savoir : [[https://​www.gnu.org/​software/​guix/​manual/​fr/​guix.fr.html]] :-)   * Débutant, à savoir : [[https://​www.gnu.org/​software/​guix/​manual/​fr/​guix.fr.html]] :-)
Ligne 106: Ligne 106:
 <code root># mkswap /​dev/​sda5</​code>​ <code root># mkswap /​dev/​sda5</​code>​
 <code root># swapon /​dev/​sda5</​code>​ <code root># swapon /​dev/​sda5</​code>​
-**Procédons à l'installation**+====C'est parti !====
 Avec les partitions cibles prêtes et la racine cible montée sur /mnt, on est bon. Premièrement : Avec les partitions cibles prêtes et la racine cible montée sur /mnt, on est bon. Premièrement :
 <code root># herd start cow-store /​mnt</​code>​ <code root># herd start cow-store /​mnt</​code>​
Ligne 118: Ligne 118:
 <code root># touch /​etc/​configuration/​perso.scm</​code>​ <code root># touch /​etc/​configuration/​perso.scm</​code>​
 <note tip>​Sinon vous pouvez éditer un fichier existant déjà dans **///​etc/​configuration//​** (par exemple, “**desktop.scm**” ou “**bare-bones.scm**” et le modifier à votre guise).</​note>​ <note tip>​Sinon vous pouvez éditer un fichier existant déjà dans **///​etc/​configuration//​** (par exemple, “**desktop.scm**” ou “**bare-bones.scm**” et le modifier à votre guise).</​note>​
 +====Configuration en cours d'​installation====
 Pour adapter la configuration de l'​ordinateur à mes besoins, j'ai utilisé **vi** , ne connaissant que celui-ci. ​ Pour adapter la configuration de l'​ordinateur à mes besoins, j'ai utilisé **vi** , ne connaissant que celui-ci. ​
 Nano et Zile sont toutefois disponibles. ​ Nano et Zile sont toutefois disponibles. ​
Ligne 134: Ligne 134:
   (host-name "​gnu"​)   (host-name "​gnu"​)
   (timezone "​Europe/​Paris"​)   (timezone "​Europe/​Paris"​)
-  (locale "en_US.utf8"​)+  (locale "fr_FR.utf8"​)
  
-;; Assuming /dev/sda is the target hard disk, and "​my-root"​ is +;; Assuming /dev/sda is the target hard disk, and "​my-root"​ is the label of the target root file system, 
-;; the label of the target root file system, and /dev/sda6 the +;; and /dev/sda6 the target partition for the GuixSD installation.  
-;; target partition for the GuixSD installation. +;; La partition /dev/sda6 sera détectée par le système, pour cela, elle ne doit pas figurer ici
-(bootloader (grub-configuration (target "/​dev/​sda"​) (menu-entries ​        ​Ajout de '​menu-entries'​ +(bootloader (grub-configuration (target "/​dev/​sda"​) (menu-entries ​       ;C'est bien "/​dev/​sda"​. Puis ajout de '​menu-entries'​ 
-                ​(list ​                                             ; Déclaration de la liste d'​entrées +                ​(list ​                                            ​;​Déclaration de la liste d'​entrées 
- (menu-entry ​                                      ​; Entrons dans le menu + (menu-entry ​                                     ;Entrons dans le menu 
-         (label "​Debian GNU/​Linux"​) ​                       ; Titre de la distribution +         (label "​Debian GNU/​Linux"​) ​                      ​;Titre de la distribution 
-                 (linux "/​boot/​vmlinuz-4.19.0-1-amd64"​) ​           ; Noyau à démarrer +                 (linux "/​boot/​vmlinuz-4.19.0-1-amd64"​) ​          ​;Noyau à démarrer 
-                 (linux-arguments '​("​root=/​dev/​sda1"​)) ​            ​; Debian se trouve sur /dev/sda1 +                 (linux-arguments '​("​root=/​dev/​sda1"​)) ​           ;Debian se trouve sur /dev/sda1 
-                 (initrd "/​boot/​initrd.img-4.19.0-1-amd64"​)))))) ​  ​; C'est parti pour le démarrage !+                 (initrd "/​boot/​initrd.img-4.19.0-1-amd64"​)))))) ​ ;C'est parti pour le démarrage !
        ​        ​
 (file-systems (cons (file-system (file-systems (cons (file-system
Ligne 175: Ligne 175:
 ;; Cela devrait marcher si vous remplacez (gnome-desktop-service) par (service gnome-desktop-service-type) ;; Cela devrait marcher si vous remplacez (gnome-desktop-service) par (service gnome-desktop-service-type)
 (services (cons* (service gnome-desktop-service-type) ​ ;; Testé, c'est bon. (services (cons* (service gnome-desktop-service-type) ​ ;; Testé, c'est bon.
-                %desktop-services)) ​                   ​;; '​console-keymap-service'​ est déprécié lui aussi+                %desktop-services)) ​                   ​
  
 ;; Allow resolution of '​.local'​ host names with mDNS. ;; Allow resolution of '​.local'​ host names with mDNS.
Ligne 227: Ligne 227:
  
  
-**Mises à jour** +====Mises-à-jour==== 
  
 (A faire 3 ou 4 fois par mois) (A faire 3 ou 4 fois par mois)
Ligne 251: Ligne 251:
 <code root># reboot</​code>​ <code root># reboot</​code>​
  
-<​note ​important>​**Remarque :** Lors d'une mise-à-jour,​ la commande **guix package -u** effectue l'​opération intégralement. Par exemple, chez moi le paquetage //​webkitgtk//​ met très longtemps à se construire sous forme de dérivation. Idem pour //​ungoogled-chromium//​. Pour gagner du temps, j'ai employé la commande suivante :+<​note ​tip>​**Remarque :** Lors d'une mise-à-jour,​ la commande **guix package -u** effectue l'​opération intégralement. Par exemple, chez moi le paquetage //​webkitgtk//​ met très longtemps à se construire sous forme de dérivation. Idem pour //​ungoogled-chromium//​. Pour gagner du temps, j'ai employé la commande suivante :
  
 <code user>$ guix package --upgrade . --do-not-upgrade webkitgtk ungoogled-chromium</​code>​ <code user>$ guix package --upgrade . --do-not-upgrade webkitgtk ungoogled-chromium</​code>​
  
-La mise-à-jour s'est effectuée beaucoup plus rapidement et, un redémarrage plus tard, Epiphany et Chromium se lancent et fonctionnent parfaitement bien. Bien entendu, il arrivera un moment où la mise-à-jour intégrale ​redeviendre ​nécessaire. Il faudra à nouveau faire preuve de patience... À moins que... l'​écriture d'un fichier '​manifest'​ me permette de confiner mon profil logiciels de manière satisfaisante. En effet les mises-à-jour depuis un fichier manifest sont beaucoup plus rapides. Reste à mettre en place cette pratique... **Infos :** [[https://​www.gnu.org/​software/​guix/​manual/​fr/​html_node/​Invoquer-guix-package.html#​profile_002dmanifest]]</​note>​+La mise-à-jour s'est effectuée beaucoup plus rapidement et, un redémarrage plus tard, Epiphany et Chromium se lancent et fonctionnent parfaitement bien. <note important>​Bien entendu, il arrivera un moment où la mise-à-jour intégrale ​redeviendra ​nécessaire. Il faudra à nouveau faire preuve de patience...</​note> ​À moins que... l'​écriture d'un fichier '​manifest'​ me permette de confiner mon profil logiciels de manière satisfaisante. En effet les mises-à-jour depuis un fichier manifest sont beaucoup plus rapides. Reste à mettre en place cette pratique... **Infos :** [[https://​www.gnu.org/​software/​guix/​manual/​fr/​html_node/​Invoquer-guix-package.html#​profile_002dmanifest]]</​note>​
  
  
-**Installation de logiciels**+====Installation de logiciels====
  
 Avec GuixSD, les installations de logiciels peuvent se faire depuis le compte user. Avec GuixSD, les installations de logiciels peuvent se faire depuis le compte user.
  
-Pour ce qui est de **//​vim//​**,​ j'ai préféré l'​installer depuis le compte root. 
- 
-<code root># guix package -i vim</​code>​ 
 <code user>$ guix package -i markdown</​code>​ <code user>$ guix package -i markdown</​code>​
-(markdown convertit un ficher texte en un fichier html en une seule ligne de commande).+**markdown** convertit un ficher texte en fichier html en une seule ligne de commande.
  
 <code user>$ guix package -i ungoogled-chromium</​code>​ <code user>$ guix package -i ungoogled-chromium</​code>​
 +
 +**ungoogled-chromium** me semble plus rapide et plus abouti que Icecat.
  
 <code user>$ guix package -i mpv</​code>​ <code user>$ guix package -i mpv</​code>​
  
 **mpv** est un fork de mplayer. Légereté et fluidité à l'​utilisation. **mpv** est un fork de mplayer. Légereté et fluidité à l'​utilisation.
 +
 +
 +Pour ce qui est de **//​vim//​**,​ j'ai préféré l'​installer depuis le compte root.
 +
 +<code root># guix package -i vim</​code>​
 +
 +
 +
 +
 +Suite à ces installations,​ le système conseille de lancer :
 +
 +<code user>$ export PATH="​$HOME/​.config/​guix/​current/​bin:​$PATH"</​code>​
 +
 +<code user>$ export INFOPATH="​$HOME/​.config/​guix/​current/​share/​info:​$INFOPATH"</​code>​
 +
 +Source :
 +
 +**[[https://​www.gnu.org/​software/​guix/​manual/​en/​html_node/​Invoking-guix-pull.html#​Invoking-guix-pull]]**
 +
 +====Utilisation de manifest==== ​
 +
 +<note tip>"​Pour gérer le profil de l'​utilisat(ric(e)ur,​ de manière **déclarative**,​ comme des packages"​ (iyzsong) :​-D</​note>​
 +
 +L'​écriture d'un fichier **'​manifest'​** va me permettre de confiner l'​environnement logiciel dans mon profil.
 +Les mises-à-jour se feront beaucoup plus rapidement, car elles seront relayées depuis un fichier **manifest.scm** qui sera créé dans mon ordinateur, plus exactement dans **~/​.config/​guix/​**
 +
 +En voici les différentes étapes :
 +
 +**1 -** Récupérer le script Guile suivant et l'​enregistrer à la racine du dossier personnel sous le nom de **'​manifest-to-manifest.scm'​**.
 +
 +<file scheme manifest-to-manifest.scm>​
 +;; Run with:
 +;;     guile -s FILE ~/​.guix-profile
 +
 +(use-modules (guix profiles)
 +      ​(ice-9 match)
 +      ​(ice-9 pretty-print))
 +
 +(define (guix-manifest where)
 +  (sort (map (lambda (entry)
 +      (let ((out (manifest-entry-output entry)))
 +        (if (string= out "​out"​)
 +    ​(manifest-entry-name entry)
 +    ​(format #f "​~a:​~a"​
 +    ​(manifest-entry-name entry)
 +    ​(manifest-entry-output entry)))))
 +    ​(manifest-entries (profile-manifest where)))
 + string<?​))
 +
 +;; Thanks to Ivan Vilata-i-Balaguer for this:
 +(define (guix-commit)
 +  (let ((guix-manifest (profile-manifest (string-append (getenv "​HOME"​) "/​.config/​guix/​current"​))))
 +    (match (assq '​source (manifest-entry-properties (car (manifest-entries guix-manifest))))
 +      (('​source ('​repository ('​version 0) _ _
 +      ​('​commit commit) _ ...))
 +       ​commit)
 +      (_ #f))))
 +
 +(match (command-line)
 +  ((_ where)
 +   ​(format #t ";; commit: ~a\n" (guix-commit))
 +   ​(pretty-print
 +    `(specifications->​manifest
 +      ',​(guix-manifest where))))
 +  (_ (error "​Please provide the path to a Guix profile."​)))
 +</​file>​
 +
 +**2 -** Appeler le script :
 +
 +<code user>$ guile -s manifest-to-manifest.scm ~/​.guix-profile</​code>​
 +<file bash Sortie de la commande>​
 +;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
 +;;;       or pass the --no-auto-compile argument to disable.
 +;;; compiling /​home/​hubert/​manifest-to-manifest.scm
 +;;; compiled /​home/​hubert/​.cache/​guile/​ccache/​2.2-LE-8-3.A/​home/​hubert/​manifest-to-manifest.scm.go
 +;; commit: 6c.....................................a
 +(specifications->​manifest
 +  '​("​brasero"​
 +    "​ffmpeg"​
 +    "​gimp"​
 +    "​gnumeric"​
 +    "​inkscape"​
 +    "​lynx"​
 +    "​markdown"​
 +    "​mpv"​
 +    "​obs"​
 +    "​qemu"​
 +    "​quassel"​
 +    "​racket"​
 +    "​sbcl-next"​
 +    "​ungoogled-chromium"​
 +    "​wget"​
 +    "​youtube-dl"​
 +    "​youtube-viewer"​))
 +</​file>​
 +
 +**3 -** Création de ce nouveau fichier scheme (personnellement avec gedit) :
 +
 +<code user>$ gedit</​code>​
 +
 +<file scheme ~/​.config/​guix/​manifest.scm>​
 +(specifications->​manifest
 +  '​("​brasero"​
 +    "​ffmpeg"​
 +    "​gimp"​
 +    "​gnumeric"​
 +    "​inkscape"​
 +    "​lynx"​
 +    "​markdown"​
 +    "​mpv"​
 +    "​obs"​
 +    "​qemu"​
 +    "​quassel"​
 +    "​racket"​
 +    "​sbcl-next"​
 +    "​ungoogled-chromium"​
 +    "​wget"​
 +    "​youtube-dl"​
 +    "​youtube-viewer"​))
 +</​file>​
 +
 +Je le nomme **manifest.scm** et l'​enregistre dans **~/​.config/​guix/​**
 +
 +**4 -** Arrive l'​étape d'​installation,​ de mise-à-jour,​ de compilation et de construction :
 +
 +<code user>$ guix package -m ~/​.config/​guix/​manifest.scm</​code> ​
 +
 +Ensuite j'ai appliqué les habituelles commandes de [[utilisateurs:​gonzoleri:​tutos:​guixsd-0.16-en-dual-boot-avec-debian-testing-sid#​mises-a-jour|mises-à-jour]],​ reconfiguré //'/​etc/​config.scm'//​ et redémarré le système.
 +
 +Maintenant les mises-à-jour sont nettement plus rapides, le fichier ayant bien été pris en compte.
 +
 +Cette nouvelle situation est d'​autant plus apréciable que j'​habite dans une zone non dégroupée.
 + 
  
 **Désinstallation de logiciels** **Désinstallation de logiciels**
Ligne 286: Ligne 418:
 J'ai mis mon accès ssh pour ovh dans un signet **Fichiers** (Nautilus) et ça fonctionne. J'ai mis mon accès ssh pour ovh dans un signet **Fichiers** (Nautilus) et ça fonctionne.
  
-**MULTIMEDIA**+====Multimédia====
  
 Téléchargement d'une vidéo : Téléchargement d'une vidéo :
Ligne 321: Ligne 453:
  
    
-**Maintenance**+====Maintenance====
  
-J'ai lancé les 2 commandes suivantes :+Les 2 commandes suivantes ​ont déjà été évoquées plus haut, mais je pense qu'​elles ont également leur place ici. 
 +Elles sont à lancer peu après l'​installation du système, celui-ci nous en informant en temps voulu :
  
 <code user>$ export PATH="​$HOME/​.config/​guix/​current/​bin:​$PATH"</​code>​ <code user>$ export PATH="​$HOME/​.config/​guix/​current/​bin:​$PATH"</​code>​
 +
 <code user>$ export INFOPATH="​$HOME/​.config/​guix/​current/​share/​info:​$INFOPATH"</​code>​ <code user>$ export INFOPATH="​$HOME/​.config/​guix/​current/​share/​info:​$INFOPATH"</​code>​
- 
-Source : 
- 
-**[[https://​www.gnu.org/​software/​guix/​manual/​en/​html_node/​Invoking-guix-pull.html#​Invoking-guix-pull]]** 
  
 Avoir la garantie que 5 Go vont rester disponibles. Cette commande peut être lancée régulièrement : Avoir la garantie que 5 Go vont rester disponibles. Cette commande peut être lancée régulièrement :
Ligne 341: Ligne 471:
  
 Une fois que ceci a été fait, une manière radicale de gagner davantage de place consiste à supprimer les fichiers inutiles en lançant le garbage collector (ramasse-miettes) sans arguments. Une fois que ceci a été fait, une manière radicale de gagner davantage de place consiste à supprimer les fichiers inutiles en lançant le garbage collector (ramasse-miettes) sans arguments.
-<note important>​Dans ce cas, pour que la procédure puisse arriver à son terme, des reconstructions et téléchargements ultérieurs pourront être nécessaires (**//guix pull//** suivi de **//guix package -u//** seront toujours capables de s'en occuper en cas de besoin). <note tip>Il existe d'​autres manières de faire plus pratiques, mais je ne les maîtrise pas pour l'​instant... 
-<code user>$ man guix gc</​code></​note></​note> ​ 
  
 <code user>$ guix gc --collect-garbage <code user>$ guix gc --collect-garbage
Ligne 351: Ligne 479:
 guix gc: 5043,55469 Mo libérés*</​code>​ guix gc: 5043,55469 Mo libérés*</​code>​
  
 +
 +<note important>​Des reconstructions et téléchargements ultérieurs pourront parfois être nécessaires (**//guix pull//** suivi de **//guix package -u//** seront toujours capables de s'en occuper en cas de besoin). <note tip>Il existe d'​autres manières de faire plus pratiques, mais je ne les maîtrise pas pour l'​instant...
 +<code user>$ man guix gc</​code></​note></​note> ​
 Ce système me donne toujours autant satisfaction malgré sa jeune existence, les quelques trucs manquants étant amplement comblés par une pratique quotidienne des plus enrichissantes. J'​espère avoir le temps de donner ici d'​autres exemples d'​utilisation et de maintenance. Ce système me donne toujours autant satisfaction malgré sa jeune existence, les quelques trucs manquants étant amplement comblés par une pratique quotidienne des plus enrichissantes. J'​espère avoir le temps de donner ici d'​autres exemples d'​utilisation et de maintenance.
  
 {{ https://​www.hubert-lombard.website/​vignettes/​GnuLinuxHurd-250x199.png |}} {{ https://​www.hubert-lombard.website/​vignettes/​GnuLinuxHurd-250x199.png |}}
utilisateurs/gonzoleri/tutos/guixsd-0.16-en-dual-boot-avec-debian-testing-sid.txt · Dernière modification: 27/08/2020 17:27 par gonzoleri

Pied de page des forums

Propulsé par FluxBB