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 [22/04/2019 22:35]
gonzoleri [Installation]
utilisateurs:gonzoleri:tutos:guixsd-0.16-en-dual-boot-avec-debian-testing-sid [22/07/2019 16:04]
gonzoleri [Utilisation]
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
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 251: Ligne 251:
 <code root># reboot</​code>​ <code root># reboot</​code>​
  
-  +<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 : 
-**Maintenance**+ 
 +<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. <note important>​Bien entendu, il arrivera un moment où la mise-à-jour intégrale redeviendre 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** 
 + 
 +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>​ 
 +(markdown convertit un ficher texte en un fichier html en une seule ligne de commande). 
 + 
 +<code user>$ guix package -i ungoogled-chromium</​code>​ 
 + 
 +<code user>$ guix package -i mpv</​code>​ 
 + 
 +**mpv** est un fork de mplayer. Légereté et fluidité à l'​utilisation.
  
-J'ai lancé les 2 commandes suivantes ​:+Suite à ces installations,​ le système conseille de lancer ​:
  
 <code user>$ export PATH="​$HOME/​.config/​guix/​current/​bin:​$PATH"</​code>​ <code user>$ export PATH="​$HOME/​.config/​guix/​current/​bin:​$PATH"</​code>​
Ligne 263: Ligne 283:
 **[[https://​www.gnu.org/​software/​guix/​manual/​en/​html_node/​Invoking-guix-pull.html#​Invoking-guix-pull]]** **[[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 ​:+**Utilisation de "​manifest"​ pour gérer le profil de l'​utilisat(rice)ur,​ de manière déclarative,​ comme des "​packages" ​:**
  
-<code user>​guix gc -F 5G</code>+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 par un fichier **manifest.scm** créé dans mon ordinateur, plus exactement dans **~/​.config/​guix/**
  
-Suppression des générations vieilles de plus d'un mois :+En voici les différentes étapes ​:
  
-<code user>$ guix package ​--delete-generations=1m</​code>​+**1 -** Récupérer le script Guile suivant et l'​enregistrer à la racine du dossier personnel sous le nom de **'​manifest-to-manifest.scm'​**.
  
-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+<file scheme manifest-to-manifest.scm> 
-<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> ​+;; Run with: 
 +;;     guile -s FILE ~/.guix-profile
  
-<code user>​$ ​guix gc --collect-garbage +(use-modules (guix profiles) 
-.................................................................... +      (ice-9 match) 
-deleting `/​gnu/​store/​trash'​ +      (ice-9 pretty-print))
-deleting unused links... +
-note: currently hard linking saves 8874.56 MiB +
-guix gc: 5043,55469 Mo libérés*</​code>​+
  
-<note tip>Il existe d'​autres manières de faire plus pratiques, mais je ne les maîtrise pas pour l'​instant... +(define (guix-manifest where) 
-<code user>$ man guix gc</​code>​</note>+  (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<?))
  
-**Installation de logiciels**+;; 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))))
  
-Avec GuixSDles installations de logiciels peuvent se faire depuis le compte user.+(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>​
  
-Pour ce qui est de **//vim//**, j'ai préféré l'​installer depuis ​le compte root.+**2 -** Appeler ​le script :
  
-<​code ​root>guix package ​-i vim</code> +<​code ​user>$ guile -s manifest-to-manifest.scm ~/.guix-profile 
-<code user>$ guix package ​-i markdown<​/code+;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0 
-(markdown ​convertit un ficher texte en un fichier html en une seule ligne de commande).+;;;       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"​)
 +</​code>​
  
-<code user>guix package -i vlc</code>+Cette option --manifest accepte un fichier qui devrait renvoyer un manifeste 
 +objet, et le script que vous exécutez le génère à partir de votre profil. Donc on 
 +peut écrire la sortie de script "​(spécifications-manifest......)"​ dans un 
 +fichier, par exemple: "​~/​.config/​guix/​manifest.scm",​ puis utilisez "guix package -
 +~/.config/​guix/​manifest.scm "pour l’appliquer.
  
-<code user>$ guix package ​-i mpv</​code>​+**3 -** Création de ce nouveau fichier scheme, perso avec gedit :
  
-**mpv** est un fork de mplayer. Légereté ​et fluidité ​à l'utilisation.+<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 de ce fichier : 
 + 
 +<code user>$ guix package -m ~/​.config/​guix/​manifest.scm</​code>​  
 + 
 +Maintenant les mises-à-jour sont nettement plus rapides, le fichier ayant bien été pris en compte. 
 + 
 +A noter qu'il a fallu, pour valider ceci, effectuer les habituelles commandes **'​guix pull'​**,​ **'​guix package -u'**, **'​guix system reconfigure /​etc/​config.scm'​** et **'​reboot'​**. 
 + 
 +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 304: Ligne 405:
 Exemples : Exemples :
  
-<code root># guix gc -vim</​code>​+<code root># guix package ​-vim</​code>​
  
-<code user>$ guix gc -d youtube-viewer</​code>​+<code user>$ guix package ​-r vlc</​code>​
  
 **SSH** **SSH**
  
-J'ai mis mon accès ssh pour ovh dans un signet **nautilus** et ça fonctionne.+J'ai mis mon accès ssh pour ovh dans un signet **Fichiers** (Nautilus) ​et ça fonctionne.
  
 **MULTIMEDIA** **MULTIMEDIA**
Ligne 325: Ligne 426:
  
  
-Conversion d'un fichier .mkv (ou .webm... etc.)+Conversion d'un fichier .mkv (ou .webm... etc.) en **.mp4** :
  
 <code user>$ ffmpeg -i film-a-convertir.mkv -ab 128k -ac 2 -vcodec libx264 notre-produit-final.mp4</​code>​ <code user>$ ffmpeg -i film-a-convertir.mkv -ab 128k -ac 2 -vcodec libx264 notre-produit-final.mp4</​code>​
Ligne 346: Ligne 447:
 <code root># dd if=$(guix system disk-image my-os.scm) of=/​dev/​sdc</​code>​ <code root># dd if=$(guix system disk-image my-os.scm) of=/​dev/​sdc</​code>​
  
 + 
 +**Maintenance**
 +
 +Avoir la garantie que 5 Go vont rester disponibles. Cette commande peut être lancée régulièrement :
 +
 +<code user>​guix gc -F 5G</​code>​
 +
 +Suppression des générations vieilles de plus d'un mois :
 +
 +<code user>$ guix package --delete-generations=1m</​code>​
 +
 +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.
 +
 +<code user>$ guix gc --collect-garbage
 +....................................................................
 +deleting `/​gnu/​store/​trash'​
 +deleting unused links...
 +note: currently hard linking saves 8874.56 MiB
 +guix gc: 5043,55469 Mo libérés*</​code>​
 +
 +
 +<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> ​
 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