From 5ad9c73c0320cac47c4dc9cc3da0ad6cc7606f2c Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Wed, 9 Nov 2016 00:39:38 +0100 Subject: [PATCH] support basique des scanners (sane + simple-scan) --- base/activation-manuelle/users.nix | 3 +++ config-generator.nix | 2 ++ public/hardware-scanner.nix | 27 +++++++++++++++++++++++++++ public/public.nix | 1 + 4 files changed, 33 insertions(+) create mode 100644 public/hardware-scanner.nix diff --git a/base/activation-manuelle/users.nix b/base/activation-manuelle/users.nix index b4624d9..b13f02e 100644 --- a/base/activation-manuelle/users.nix +++ b/base/activation-manuelle/users.nix @@ -35,6 +35,7 @@ in { "audio" "docker" "plugdev" + "scanner" "vbox" "vboxusers" "wheel" @@ -56,6 +57,7 @@ in { "audio" "docker" "plugdev" + "scanner" "vbox" "vboxusers" "wheel" @@ -75,6 +77,7 @@ in { isNormalUser = true; extraGroups = [ "audio" + "scanner" ]; hashedPassword = "$6$vcZSVwQFcGg1xt$xuMiCmlozhgyFFGEw3rRnIrhVcglMlWY1lfJG17QoKE4KzrQfc9YAaJYgf.clc3ouFC/yLtEs18Q0DVGixTEt0"; }; diff --git a/config-generator.nix b/config-generator.nix index 9c84660..1077243 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -58,6 +58,7 @@ in print = mkEnableOption "Profil pour activer cups & pouvoir imprimer."; rabbitmq = mkEnableOption "Profil pour activer le service de messagerie AMQP."; radicale = mkEnableOption "Profil pour activer le service d'hébergement de calendrier + tâches & contacts."; + scanner = mkEnableOption "Profil pour que les scanners soient utilisable."; swap = mkEnableOption "Profil pour que le swap soit activé."; virtualbox = mkEnableOption "Profil pour l'utilisation de VirtualBox."; xmonad = mkEnableOption "Profil pour activer le gestionnaire de fenêtres xmonad."; @@ -122,6 +123,7 @@ in r6d.config-generator = { awesome = true; nix-serve-client = true; + scanner = true; }; }) (mkIf pfl.isHome { diff --git a/public/hardware-scanner.nix b/public/hardware-scanner.nix new file mode 100644 index 0000000..36c2713 --- /dev/null +++ b/public/hardware-scanner.nix @@ -0,0 +1,27 @@ +{ config, lib, pkgs, ... }: + +let + inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +mkIf cfg.scanner { + + # Paquets + environment.systemPackages = with pkgs; [ + simple-scan + ]; + + # Services + hardware.sane.enable = true; + + # Réseau + networking.firewall = { + allowedTCPPorts = [ + ]; + allowedUDPPorts = [ + ]; + }; +} diff --git a/public/public.nix b/public/public.nix index dbaeccb..2389b1d 100644 --- a/public/public.nix +++ b/public/public.nix @@ -49,6 +49,7 @@ in ./app-multimedia.nix # pour gérer le son, l'image et la vidéo ./app-network.nix # de gestion, de diagnostique & surveillance réseau ./app-securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) + ./hardware-scanner.nix # utilisation d'un scanner ./service-pulseaudio.nix # activation du serveur audio ./service-x11.nix # activation du serveur graphique X ];