8 avril 2023

This commit is contained in:
Adrien Bourmault 2023-04-08 15:21:57 +02:00
parent ddc970a18d
commit ccfffc1547
No known key found for this signature in database
GPG Key ID: 6EB408FE0ACEC664
1 changed files with 43 additions and 7 deletions

View File

@ -11,44 +11,80 @@
;; utilisées dans cette configuration. ;; utilisées dans cette configuration.
(use-modules (gnu)) (use-modules (gnu))
(use-modules (gnu packages freedesktop)) (use-modules (gnu packages freedesktop))
(use-service-modules cups desktop networking ssh xorg) (use-service-modules cups desktop networking ssh xorg virtualization vpn)
;; Définitions
(define %sudoers-specification
(plain-file "sudoers" "\
root ALL=(ALL) ALL
%wheel ALL=(ALL) NOPASSWD: ALL
"))
(define %spice-rules
(udev-rule
"50-spice.rules"
(string-append "\
SUBSYSTEM==\"usb\", GROUP=\"spice\", MODE=\"0660\"
SUBSYSTEM==\"usb_device\", GROUP=\"spice\", MODE=\"0660\"
")))
;; CONF
(operating-system (operating-system
(locale "fr_FR.utf8") (locale "fr_FR.utf8")
(timezone "Europe/Paris") (timezone "Europe/Paris")
(keyboard-layout (keyboard-layout "fr" "oss")) (keyboard-layout (keyboard-layout "fr" "oss"))
(host-name "n-guix-port") (host-name "n-guix-port")
(sudoers-file %sudoers-specification)
;; La liste des comptes utilisateurs (« root » est implicite). ;; La liste des comptes utilisateurs (« root » est implicite).
(users (cons* (user-account (users (cons* (user-account
(name "neox") (name "neox")
(comment "neox") (comment "neox")
(group "users") (group "users")
(home-directory "/home/neox") (home-directory "/home/neox")
(supplementary-groups '("wheel" "netdev" "audio" "video"))) (supplementary-groups '("wheel" "netdev" "audio" "video" "libvirt" "kvm" "scanner" "spice")))
%base-user-accounts)) %base-user-accounts))
;; Packages installed system-wide. Users can also install packages ;; Packages installed system-wide. Users can also install packages
;; under their own account: use 'guix search KEYWORD' to search ;; under their own account: use 'guix search KEYWORD' to search
;; for packages and 'guix install PACKAGE' to install a package. ;; for packages and 'guix install PACKAGE' to install a package.
(packages (append (list (specification->package "nss-certs")) (packages (append (list (specification->package "nss-certs")
(specification->package "qemu")
(specification->package "virt-manager")
(specification->package "libvirt")
(specification->package "lvm2")
(specification->package "mdadm")
(specification->package "network-manager")
(specification->package "network-manager-openvpn"))
%base-packages)) %base-packages))
;; Voici la liste des services du système. Pour trouver les services disponibles, ;; Voici la liste des services du système. Pour trouver les services disponibles,
;; lancez « guix system search MOT-CLÉ » dans un terminal. ;; lancez « guix system search MOT-CLÉ » dans un terminal.
(services (services
(append (list (service gnome-desktop-service-type) (modify-services
(append
(list
(service gnome-desktop-service-type)
(service cups-service-type) (service cups-service-type)
(service libvirt-service-type)
(udev-rules-service 'spice %spice-rules #:groups '("spice"))
(service virtlog-service-type)
(pam-limits-service (pam-limits-service
(list (list
(pam-limits-entry "@audio" 'both 'rtprio 99) (pam-limits-entry "@audio" 'both 'rtprio 99)
(pam-limits-entry "@audio" 'both 'memlock 'unlimited))) (pam-limits-entry "@audio" 'both 'memlock 'unlimited)))
(set-xorg-configuration (set-xorg-configuration
(xorg-configuration (keyboard-layout keyboard-layout)))) (xorg-configuration (keyboard-layout keyboard-layout))))
%desktop-services)
(network-manager-service-type config => (network-manager-configuration
(inherit config)
(vpn-plugins
(list (specification->package "network-manager-openvpn")))))))
;; Voici la liste des services par défaut à laquelle nous
;; ajoutons nos propres services.
%desktop-services))
(bootloader (bootloader-configuration (bootloader (bootloader-configuration
(bootloader grub-efi-bootloader) (bootloader grub-efi-bootloader)
(targets (list "/boot/efi")) (targets (list "/boot/efi"))