From aeeea3a7430dd8849ece489989904ce04c6454a0 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Fri, 3 Mar 2017 14:12:29 +0100 Subject: [PATCH 01/45] =?UTF-8?q?la=20clef=20du=20serveur=20hydra=20a=20ch?= =?UTF-8?q?ang=C3=A9e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/service-hydra-core.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/service-hydra-core.nix b/public/service-hydra-core.nix index efbf8e3..0197c87 100644 --- a/public/service-hydra-core.nix +++ b/public/service-hydra-core.nix @@ -74,7 +74,7 @@ mkIf cfg.hydra-core { ### Machines connues programs.ssh.knownHosts = { - "hydra.prunetwork.fr".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMhXFlj2oyArVyEwEwDxNXthB/JljHkq+UhTLxbekkMB"; + "hydra.prunetwork.fr".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHqja/yYsQeS5amZKPUG+EKSIkjEN6fYW54Fzvj1pFaP"; "monstre.dubronetwork.fr".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBTTrLhq1Cwm0rpnwEIxSLqVrJWZnt+/9dt+SKd8NiIc"; "pedro.dubronetwork.fr".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM7fjo2ysLqlfSo6BKnc6I6m1ayoPrbwEEyTKZmUzsOD"; "ocean.prunetwork.fr".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINCaRuTl8iCTUE4XInOpkSlwQj5Re4w4Iq+gNIlJe8pA"; From 8dd973ede1d90b0a9eaa02ad34a74a2052c4e417 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Fri, 3 Mar 2017 21:36:45 +0100 Subject: [PATCH 02/45] inutile --- logiciel-custom/osm2pgsql.nix | 40 ----------------------------------- 1 file changed, 40 deletions(-) delete mode 100644 logiciel-custom/osm2pgsql.nix diff --git a/logiciel-custom/osm2pgsql.nix b/logiciel-custom/osm2pgsql.nix deleted file mode 100644 index 8e001bf..0000000 --- a/logiciel-custom/osm2pgsql.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ stdenv, fetchurl -, boost -, bzip2 -, cmake -, expat -, geos -, lua -, postgresql -, proj -, zlib -} - -stdenv.mkDerivation rec { - #version = "0.87.1"; - version = "0.90.1"; - name = "osm2pgsql-${version}-0"; - - src = fetchurl { - url = "https://github.com/openstreetmap/osm2pgsql/archive/${version}.tar.gz"; - sha256 = "0i0zg8di8nbh96qnyyr156ikwcsq1w9b2291bazm5whb351flmqx"; - }; - - #nativeBuildInputs = [ ]; - buildInputs = [ ]; - - #preConfigure = '' - ''; - #buildPhase = ''jam "-j$NIX_BUILD_CORES" ''; - #installPhase = '' - #''; - - meta = with stdenv.lib; { - homepage = http://wiki.openstreetmap.org/wiki/Osm2pgsql; - description = "osm2pgsql is a tool for loading OpenStreetMap data into a PostgreSQL / PostGIS database suitable for applications like rendering into a map, geocoding with Nominatim, or general analysis."; - license = licenses.gpl2; - #maintainers = [ maintainers.phunehehe ]; - maintainers = [ maintainers.jpierre03 ]; - }; - } - From c10d2c6d638af822066faec4b8b390f941a1b30a Mon Sep 17 00:00:00 2001 From: es006 Date: Sat, 4 Mar 2017 11:03:04 +0000 Subject: [PATCH 03/45] le script byobu va chercher la liste des sous modules --- byobu-adminsys | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/byobu-adminsys b/byobu-adminsys index e96eca0..4a8bfb5 100755 --- a/byobu-adminsys +++ b/byobu-adminsys @@ -2,7 +2,7 @@ SESSION_NAME="Adminsys" PROJECT_DIR="/etc/nixos" -PROJECT_MODULES="base private server" +PROJECT_MODULES=$(cd $PROJECT_DIR && git submodule --quiet foreach 'echo $path') HEAD_ADDITIONNAL_TABS="git config" TAIL_ADDITIONNAL_TABS="glances htop" From 3364f19ed7c9438cf881174badf4fc12f55dbe6c Mon Sep 17 00:00:00 2001 From: System administrator Date: Sat, 4 Mar 2017 13:41:42 +0100 Subject: [PATCH 04/45] xmonad: variable pour java et trayer --- public/xmonad/xmonad.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/public/xmonad/xmonad.nix b/public/xmonad/xmonad.nix index ab5c91d..d55f5f7 100644 --- a/public/xmonad/xmonad.nix +++ b/public/xmonad/xmonad.nix @@ -13,6 +13,7 @@ mkIf cfg.xmonad { environment.systemPackages = with pkgs; [ dmenu haskellPackages.xmobar + trayer ]; # Services @@ -23,4 +24,7 @@ mkIf cfg.xmonad { haskellPackages.xmobar ]; }; + environment.variables = { + _JAVA_AWT_WM_NONREPARENTING = "1"; + }; } From 1e00db386403c1770bdb0f9bf6a2f3436338d3f7 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sat, 4 Mar 2017 17:17:19 +0100 Subject: [PATCH 05/45] haskell: commentaires --- public/app-developpement-haskell.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/public/app-developpement-haskell.nix b/public/app-developpement-haskell.nix index fda0dbf..6f8acb2 100644 --- a/public/app-developpement-haskell.nix +++ b/public/app-developpement-haskell.nix @@ -17,10 +17,11 @@ mkIf cfg.developpement-haskell { ghc # pour les appels depuis les scripts stack # pour les paquets en LTS de stackage + haskellPackages.hindent # indentation code + haskellPackages.hlint # qualite de code, analyse statique de code + astuces & bonnes pratiques + #haskellPackages.postgrest # mapper HTTP <-> PostgreSQL haskellPackages.stylish-haskell # qualité de code - haskellPackages.hindent - haskellPackages.hlint - haskellPackages.threadscope + haskellPackages.threadscope # visualisation des threads (.eventlog) # Application perso haskellPackages.hahp From e2178821d85136f281fe33daec3cf264a366d2fd Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sat, 4 Mar 2017 17:20:03 +0100 Subject: [PATCH 06/45] haskell: extraction du prefixe commun --- public/app-developpement-haskell.nix | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/public/app-developpement-haskell.nix b/public/app-developpement-haskell.nix index 6f8acb2..b78f89a 100644 --- a/public/app-developpement-haskell.nix +++ b/public/app-developpement-haskell.nix @@ -11,24 +11,23 @@ mkIf cfg.developpement-haskell { # Paquets environment.systemPackages = with pkgs; [ - # Haskell + # Haskell platform cabal-install # fournis cabal cabal2nix # convertir les .cabal en .nix ghc # pour les appels depuis les scripts stack # pour les paquets en LTS de stackage - - haskellPackages.hindent # indentation code - haskellPackages.hlint # qualite de code, analyse statique de code + astuces & bonnes pratiques - #haskellPackages.postgrest # mapper HTTP <-> PostgreSQL - haskellPackages.stylish-haskell # qualité de code - haskellPackages.threadscope # visualisation des threads (.eventlog) + ] ++ (with pkgs.haskellPackages; [ + # Haskell lib + autoproc # ? procmail + darcs # Gestionnaire de version éponyme + hindent # indentation code + hlint # qualite de code, analyse statique de code + astuces & bonnes pratiques + #postgrest # mapper HTTP <-> PostgreSQL + stylish-haskell # qualité de code + threadscope # visualisation des threads (.eventlog) + turtle # genre shell-scripting # Application perso - haskellPackages.hahp - - # Application - haskellPackages.autoproc # ? procmail - haskellPackages.darcs # Gestionnaire de version éponyme - haskellPackages.turtle # genre shell-scripting - ]; + hahp + ]); } From b1d3ee4aaec3dd9bb8e0bbc83e17cd37d83885ec Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sun, 5 Mar 2017 14:48:59 +0100 Subject: [PATCH 07/45] hydra: adresse tinc en .9 --- config-generator.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/config-generator.nix b/config-generator.nix index 801f685..9758791 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -210,10 +210,11 @@ in docker = true; hydra-builder = true; hydra-core = true; - #tincAddress = "192.168.12.6/24"; - #tincExtraConfig = '' - # ConnectTo = rollo_dubronetwork_fr - # ''; + tincAddress = "192.168.12.9/24"; + tincExtraConfig = '' + ConnectTo = rollo_dubronetwork_fr + ConnectTo = ocean_prunetwork_fr + ''; }; }) (mkIf comp.isOcean { From 1a3e8f4528e9d14615c03c1e1ac4c26ca0b7d643 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sun, 5 Mar 2017 15:03:23 +0100 Subject: [PATCH 08/45] tinc-hydra: ajout comme remote possible --- config-generator.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/config-generator.nix b/config-generator.nix index 9758791..d5b7aec 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -231,6 +231,7 @@ in nix-serve-server = true; tincAddress = "192.168.12.6/24"; tincExtraConfig = '' + ConnectTo = hydra_prunetwork_fr ConnectTo = rollo_dubronetwork_fr ''; }; @@ -256,6 +257,7 @@ in tincExtraConfig = '' ConnectTo = monstre_dubronetwork_fr ConnectTo = rollo_dubronetwork_fr + ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; }; @@ -276,6 +278,7 @@ in tincExtraConfig = '' ConnectTo = monstre_dubronetwork_fr ConnectTo = rollo_dubronetwork_fr + ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; nix-serve-server = true; @@ -297,6 +300,7 @@ in tincAddress = "192.168.12.4/24"; tincExtraConfig = '' ConnectTo = rollo_dubronetwork_fr + ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; }; @@ -314,6 +318,7 @@ in tincExtraConfig = '' ConnectTo = monstre_dubronetwork_fr ConnectTo = rollo_dubronetwork_fr + ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; }; @@ -356,6 +361,7 @@ in tincExtraConfig = '' ConnectTo = monstre_dubronetwork_fr ConnectTo = rollo_dubronetwork_fr + ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; }; @@ -376,6 +382,7 @@ in nix-serve-server = true; tincAddress = "192.168.12.5/24"; tincExtraConfig = '' + ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; znc = true; From 0dae9aef3c510fc4144beda93789573b22e1f005 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sun, 5 Mar 2017 15:14:25 +0100 Subject: [PATCH 09/45] haskell: ajout ghc-mod --- public/app-developpement-haskell.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/public/app-developpement-haskell.nix b/public/app-developpement-haskell.nix index b78f89a..31cb3af 100644 --- a/public/app-developpement-haskell.nix +++ b/public/app-developpement-haskell.nix @@ -20,6 +20,7 @@ mkIf cfg.developpement-haskell { # Haskell lib autoproc # ? procmail darcs # Gestionnaire de version éponyme + ghc-mod hindent # indentation code hlint # qualite de code, analyse statique de code + astuces & bonnes pratiques #postgrest # mapper HTTP <-> PostgreSQL From 3f744869515ad0d68616a003133cd2b5c3cb050c Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sun, 5 Mar 2017 15:33:31 +0100 Subject: [PATCH 10/45] =?UTF-8?q?nix-serve:=20latitude=20peut=20aussi=20?= =?UTF-8?q?=C3=AAtre=20un=20client=20nix-serve?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config-generator.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/config-generator.nix b/config-generator.nix index d5b7aec..21b73d0 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -274,6 +274,8 @@ in r6d.config-generator = { jetbrains-licensed = true; laptop = true; + nix-serve-client = true; + nix-serve-server = true; tincAddress = "192.168.12.2/24"; tincExtraConfig = '' ConnectTo = monstre_dubronetwork_fr @@ -281,7 +283,6 @@ in ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; - nix-serve-server = true; }; }) (mkIf comp.isMonstre { From 7bc21c0dc85f83636426eaeb495ae1e08f2b0685 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sun, 5 Mar 2017 19:07:48 +0100 Subject: [PATCH 11/45] awesome: ajout 2nd script pour xrandr --- public/config-awesome-4-rc.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/public/config-awesome-4-rc.lua b/public/config-awesome-4-rc.lua index ae2cf9d..fd21412 100644 --- a/public/config-awesome-4-rc.lua +++ b/public/config-awesome-4-rc.lua @@ -344,6 +344,7 @@ globalkeys = awful.util.table.join( awful.key({ modkey }, "F12", function () awful.util.spawn("slock") end), awful.key({ modkey, "Shift" }, "F1", function () awful.util.spawn("claws-mail") end), awful.key({ modkey, "Shift" }, "F3", function () awful.util.spawn("pcmanfm") end), + awful.key({ modkey }, "F10", function () awful.util.spawn("xrandr-auto-2") end) awful.key({ modkey }, "F11", function () awful.util.spawn("xrandr-auto") end) -- awful.key({ modkey, "Shift" }, "F11", function () awful.util.spawn("/home/taeradan/bin/xrandr-left") end), -- awful.key({ modkey, "Control" }, "F11", function () awful.util.spawn("/home/taeradan/bin/xrandr-right") end), From 4535ccf03c50ffed63c259d167cf9a69c027d9f1 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Mon, 6 Mar 2017 09:51:07 +0100 Subject: [PATCH 12/45] fix: oubli virgule --- public/config-awesome-4-rc.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/config-awesome-4-rc.lua b/public/config-awesome-4-rc.lua index fd21412..042de0c 100644 --- a/public/config-awesome-4-rc.lua +++ b/public/config-awesome-4-rc.lua @@ -344,7 +344,7 @@ globalkeys = awful.util.table.join( awful.key({ modkey }, "F12", function () awful.util.spawn("slock") end), awful.key({ modkey, "Shift" }, "F1", function () awful.util.spawn("claws-mail") end), awful.key({ modkey, "Shift" }, "F3", function () awful.util.spawn("pcmanfm") end), - awful.key({ modkey }, "F10", function () awful.util.spawn("xrandr-auto-2") end) + awful.key({ modkey }, "F10", function () awful.util.spawn("xrandr-auto-2") end), awful.key({ modkey }, "F11", function () awful.util.spawn("xrandr-auto") end) -- awful.key({ modkey, "Shift" }, "F11", function () awful.util.spawn("/home/taeradan/bin/xrandr-left") end), -- awful.key({ modkey, "Control" }, "F11", function () awful.util.spawn("/home/taeradan/bin/xrandr-right") end), From c96c981d207d30480fb881089bef667d6a4c020a Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Thu, 9 Mar 2017 21:55:54 +0100 Subject: [PATCH 13/45] =?UTF-8?q?retour=20=C3=A0=20openjdk,=20probl=C3=A8m?= =?UTF-8?q?es=20avec=20zulu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/app-developpement-java.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/app-developpement-java.nix b/public/app-developpement-java.nix index 87f0087..f3a61ec 100644 --- a/public/app-developpement-java.nix +++ b/public/app-developpement-java.nix @@ -16,6 +16,6 @@ mkIf cfg.developpement-java { # Java maven - zulu + openjdk ]; } From 14e9ddbc13900fd2af44bb77c15994c9769c832a Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Thu, 9 Mar 2017 23:32:55 +0100 Subject: [PATCH 14/45] set JAVA_HOME --- public/app-developpement-java.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/public/app-developpement-java.nix b/public/app-developpement-java.nix index f3a61ec..ec46e14 100644 --- a/public/app-developpement-java.nix +++ b/public/app-developpement-java.nix @@ -18,4 +18,7 @@ mkIf cfg.developpement-java { maven openjdk ]; + environment.variables = { + JAVA_HOME = "${pkgs.openjdk}"; + }; } From db66626208d6da6a0abc1dcc001198226d302a01 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Fri, 10 Mar 2017 11:29:03 +0100 Subject: [PATCH 15/45] ocean est un hydra builder --- config-generator.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/config-generator.nix b/config-generator.nix index 21b73d0..7b19179 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -226,6 +226,7 @@ in r6d.config-generator = { docker = true; + hydra-builder = true; radicale = true; nix-serve-client = true; nix-serve-server = true; From b983832308a808c06047ca69a56fcdb3818ab578 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Fri, 10 Mar 2017 11:32:34 +0100 Subject: [PATCH 16/45] =?UTF-8?q?hydra-builder:=20suppression=20de=20la=20?= =?UTF-8?q?configuration=20utilisateur=20(sp=C3=A9cifique=20machine)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/service-hydra-build.nix | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/public/service-hydra-build.nix b/public/service-hydra-build.nix index 81b8f98..3233fb6 100644 --- a/public/service-hydra-build.nix +++ b/public/service-hydra-build.nix @@ -28,18 +28,18 @@ mkIf cfg.hydra-builder { ## Ménage automatique tous les jours nix.gc.automatic = true; - users.users."hydrabld" = { - description = "Execution des jobs hydra"; - group = "nixbld"; - extraGroups = [ - "docker" - "nixbld" - "vboxusers" - ]; - isNormalUser = true; # devrait être à false: TODO débugger la conf ssh & users pour que ça marche en user système + # users.users."hydrabld" = { + # description = "Execution des jobs hydra"; + # group = "nixbld"; + # extraGroups = [ + # "docker" + # "nixbld" + # "vboxusers" + # ]; + # isNormalUser = true; # devrait être à false: TODO débugger la conf ssh & users pour que ça marche en user système - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGYpjcWJCf8dXpv2LmoIaNVbwZXEC50QUU6Az+lqeD89 hydra radx" - ]; - }; + # openssh.authorizedKeys.keys = [ + # "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGYpjcWJCf8dXpv2LmoIaNVbwZXEC50QUU6Az+lqeD89 hydra radx" + # ]; + # }; } From 3297760d21894ab916be051ad2cb43fc5d4adf71 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Fri, 10 Mar 2017 12:04:56 +0100 Subject: [PATCH 17/45] ajout systat pour les statistiques disque --- public/app-adminsys.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/public/app-adminsys.nix b/public/app-adminsys.nix index ba0e51b..3483fea 100644 --- a/public/app-adminsys.nix +++ b/public/app-adminsys.nix @@ -22,6 +22,7 @@ mkIf true { powertop python27Packages.ansible2 python27Packages.glances + sysstat # pour la commande "iostat -x -1" de monitoring d'activité disque usbutils # Backup From b829e708a016c7040170bd53dd50f5ac4fd39035 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Fri, 10 Mar 2017 12:37:04 +0100 Subject: [PATCH 18/45] la machine hydra est serveur nix-serve --- config-generator.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/config-generator.nix b/config-generator.nix index 7b19179..79583c8 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -210,6 +210,7 @@ in docker = true; hydra-builder = true; hydra-core = true; + nix-serve-server = true; tincAddress = "192.168.12.9/24"; tincExtraConfig = '' ConnectTo = rollo_dubronetwork_fr From e80018e27341856bfe974a9bd5202bc8812476e9 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Fri, 10 Mar 2017 12:49:35 +0100 Subject: [PATCH 19/45] radx: essai de faire une VM de build compatible hydra --- config-generator.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config-generator.nix b/config-generator.nix index 79583c8..1d3198a 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -249,7 +249,6 @@ in r6d.config-generator = { database_postgres = true; elasticsearch = true; - hydra-builder = true; #hydra-core = false; # DO NOT ENABLE ON WORKSTATION kibana = true; nix-serve-client = true; @@ -262,6 +261,7 @@ in ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; + virtualbox = true; }; }) From c3c7581a3e00b4d24adea97394b2e9c82d6af5d8 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 10 Mar 2017 15:15:37 +0100 Subject: [PATCH 20/45] rollo: active virtualbox --- config-generator.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/config-generator.nix b/config-generator.nix index 1d3198a..a06a2bd 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -388,6 +388,7 @@ in ConnectTo = hydra_prunetwork_fr ConnectTo = ocean_prunetwork_fr ''; + virtualbox = true; znc = true; }; }) From 5a7ad256154bb9121df88f539f3cb6fee1019cfa Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Mon, 13 Mar 2017 23:55:34 +0100 Subject: [PATCH 21/45] =?UTF-8?q?d=C3=A9sactivation=20gitg?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/app-developpement.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/app-developpement.nix b/public/app-developpement.nix index 867e88c..3553b40 100644 --- a/public/app-developpement.nix +++ b/public/app-developpement.nix @@ -24,7 +24,7 @@ mkIf cfg.developpement { # Gestion des sources cloc # outil pour compter les lignes de code source git # déjà présent dans "base" - gitg # interface pour utiliser git (historique, commit) + #gitg # interface pour utiliser git (historique, commit) gitstats # génère un site web statique avec des statistiques gitAndTools.gitFull # pour gitk git-cola # interface pour utiliser git (historique, commit) From ac76e6e62bb5ca73cc8fa2c9f5987384ee65e6fd Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Mon, 13 Mar 2017 23:55:47 +0100 Subject: [PATCH 22/45] dev: ajout editeur atom --- public/app-developpement.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/public/app-developpement.nix b/public/app-developpement.nix index 3553b40..f2fb4c7 100644 --- a/public/app-developpement.nix +++ b/public/app-developpement.nix @@ -38,5 +38,8 @@ mkIf cfg.developpement { #gource # visualisation en mouvement de l'historique git meld # outil de comparaison graphique #vbindiff # diff de fichier hexadecimaux avec vim + + # Editeur texte + atom ]; } From 0ffecb8804ac68994c68d0a782dd25010710ee6e Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Wed, 15 Mar 2017 17:16:20 +0100 Subject: [PATCH 23/45] option smokeping + activation pour serveurs --- config-generator.nix | 3 +++ public/service-monitoring-smokeping.nix | 3 +-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/config-generator.nix b/config-generator.nix index a06a2bd..76383f0 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -64,6 +64,7 @@ in 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."; + smokeping = mkEnableOption "Profil pour activer le monitoring réseau par smokeping."; 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."; @@ -123,6 +124,7 @@ in #dns_resolveur = true; # inutile d'exposer la conf complète du serveur par le store tant qu'il n'y a pas de protection complémentaire - utilisation SSH ? #nix-serve-server = true; + smokeping = true; #rabbitmq = true; }; @@ -174,6 +176,7 @@ in docker = true; locate = true; fail2ban = true; + smokeping = true; swap = true; }; }) diff --git a/public/service-monitoring-smokeping.nix b/public/service-monitoring-smokeping.nix index 7896832..d24e4b3 100644 --- a/public/service-monitoring-smokeping.nix +++ b/public/service-monitoring-smokeping.nix @@ -7,8 +7,7 @@ let profiles = config.r6d.profiles; in -# TODO: ajouter option -mkIf true { +mkIf cfg.smokeping { # Paquets environment.systemPackages = with pkgs; [ From f1c02b06258f3c95a80ac9835c066f9444570705 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Wed, 15 Mar 2017 17:16:43 +0100 Subject: [PATCH 24/45] fix: erreur de nomage --- public/service-monitoring-smokeping.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/service-monitoring-smokeping.nix b/public/service-monitoring-smokeping.nix index d24e4b3..c15f523 100644 --- a/public/service-monitoring-smokeping.nix +++ b/public/service-monitoring-smokeping.nix @@ -173,7 +173,7 @@ mkIf cfg.smokeping { ++ MultiHost menu = Multihost - title = Ensemble de mesures DNS + title = Ensemble de mesures de latence host = /France/Atos /France/Axialys /France/Azurtel \ /France/Bouygues-Telecom \ /France/Completel \ From 348433e39538ba576dd31b9daed8f2920a1d3520 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Mon, 20 Mar 2017 21:29:21 +0100 Subject: [PATCH 25/45] ajout service hoogle local pour profil dev-haskell --- public/public.nix | 1 + public/service-hoogle.nix | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 public/service-hoogle.nix diff --git a/public/public.nix b/public/public.nix index 0a60e5b..a40f7b5 100644 --- a/public/public.nix +++ b/public/public.nix @@ -41,6 +41,7 @@ in ./laptop.nix # appli & configuration adaptée pour un PC portable ./print.nix # configuration de base de cups ./service-elasticsearch.nix # service de stockage et recher de données + ./service-hoogle.nix # service hoogle pour haskell ./service-hydra-build.nix # service de construction de paquet. -> la machine compile des paquets ./service-hydra-core.nix # service pour l'instance d'hydra ./service-kibana.nix # service de visualisation de données stockées dans elasticsearch diff --git a/public/service-hoogle.nix b/public/service-hoogle.nix new file mode 100644 index 0000000..83f39a7 --- /dev/null +++ b/public/service-hoogle.nix @@ -0,0 +1,16 @@ +{ 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.developpement-haskell { + + services.hoogle = { + enable = true; + # port 8080 + }; +} From 15ce896f9cf640c480bf333ace738f05be941a22 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 22:15:59 +0100 Subject: [PATCH 26/45] =?UTF-8?q?bon=20num=C3=A9ro=20de=20version=20nixos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/environment.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/environment.nix b/public/environment.nix index b9f5167..b2f0b51 100644 --- a/public/environment.nix +++ b/public/environment.nix @@ -13,7 +13,7 @@ in nix.buildCores = 0; # The NixOS release to be compatible with for stateful data such as databases. - system.stateVersion = "16.09"; + system.stateVersion = "17.03"; # copies the NixOS configuration file (usually /etc/nixos/configuration.nix) and links it from the resulting system (getting to /run/current-system/configuration.nix) system.copySystemConfiguration = true; From 937565f88551c11733380010b42cb0937a200776 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 22:21:44 +0100 Subject: [PATCH 27/45] =?UTF-8?q?d=C3=A9placement=20na=C3=AFf=20dans=20"ap?= =?UTF-8?q?plications"=20et=20"services"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/{ => applications}/app-adminsys.nix | 0 public/{ => applications}/app-awesome.nix | 0 public/{ => applications}/app-bureau.nix | 0 public/{ => applications}/app-bureautique.nix | 0 public/{ => applications}/app-cao.nix | 0 .../{ => applications}/app-cartographie.nix | 0 .../app-client-internet.nix | 0 .../app-developpement-elm.nix | 0 .../app-developpement-haskell.nix | 0 .../app-developpement-java.nix | 0 .../app-developpement-jetbrains.nix | 0 .../app-developpement-rust.nix | 0 .../{ => applications}/app-developpement.nix | 0 public/{ => applications}/app-docker.nix | 0 .../app-edition-musique.nix | 0 .../{ => applications}/app-edition-photo.nix | 0 .../{ => applications}/app-edition-video.nix | 0 public/{ => applications}/app-jeux.nix | 0 public/{ => applications}/app-multimedia.nix | 0 public/{ => applications}/app-network.nix | 0 public/{ => applications}/app-securite.nix | 0 public/{ => applications}/app-virtualbox.nix | 0 public/public.nix | 70 +++++++++---------- .../{ => services}/service-elasticsearch.nix | 0 public/{ => services}/service-haveged.nix | 0 public/{ => services}/service-hoogle.nix | 0 public/{ => services}/service-hydra-build.nix | 0 public/{ => services}/service-hydra-core.nix | 0 public/{ => services}/service-kibana.nix | 0 public/{ => services}/service-laptop.nix | 0 public/{ => services}/service-locate.nix | 0 .../service-monitoring-munin.nix | 0 .../service-monitoring-smokeping.nix | 0 public/{ => services}/service-pulseaudio.nix | 0 public/{ => services}/service-ssh.nix | 0 public/{ => services}/service-x11.nix | 0 36 files changed, 35 insertions(+), 35 deletions(-) rename public/{ => applications}/app-adminsys.nix (100%) rename public/{ => applications}/app-awesome.nix (100%) rename public/{ => applications}/app-bureau.nix (100%) rename public/{ => applications}/app-bureautique.nix (100%) rename public/{ => applications}/app-cao.nix (100%) rename public/{ => applications}/app-cartographie.nix (100%) rename public/{ => applications}/app-client-internet.nix (100%) rename public/{ => applications}/app-developpement-elm.nix (100%) rename public/{ => applications}/app-developpement-haskell.nix (100%) rename public/{ => applications}/app-developpement-java.nix (100%) rename public/{ => applications}/app-developpement-jetbrains.nix (100%) rename public/{ => applications}/app-developpement-rust.nix (100%) rename public/{ => applications}/app-developpement.nix (100%) rename public/{ => applications}/app-docker.nix (100%) rename public/{ => applications}/app-edition-musique.nix (100%) rename public/{ => applications}/app-edition-photo.nix (100%) rename public/{ => applications}/app-edition-video.nix (100%) rename public/{ => applications}/app-jeux.nix (100%) rename public/{ => applications}/app-multimedia.nix (100%) rename public/{ => applications}/app-network.nix (100%) rename public/{ => applications}/app-securite.nix (100%) rename public/{ => applications}/app-virtualbox.nix (100%) rename public/{ => services}/service-elasticsearch.nix (100%) rename public/{ => services}/service-haveged.nix (100%) rename public/{ => services}/service-hoogle.nix (100%) rename public/{ => services}/service-hydra-build.nix (100%) rename public/{ => services}/service-hydra-core.nix (100%) rename public/{ => services}/service-kibana.nix (100%) rename public/{ => services}/service-laptop.nix (100%) rename public/{ => services}/service-locate.nix (100%) rename public/{ => services}/service-monitoring-munin.nix (100%) rename public/{ => services}/service-monitoring-smokeping.nix (100%) rename public/{ => services}/service-pulseaudio.nix (100%) rename public/{ => services}/service-ssh.nix (100%) rename public/{ => services}/service-x11.nix (100%) diff --git a/public/app-adminsys.nix b/public/applications/app-adminsys.nix similarity index 100% rename from public/app-adminsys.nix rename to public/applications/app-adminsys.nix diff --git a/public/app-awesome.nix b/public/applications/app-awesome.nix similarity index 100% rename from public/app-awesome.nix rename to public/applications/app-awesome.nix diff --git a/public/app-bureau.nix b/public/applications/app-bureau.nix similarity index 100% rename from public/app-bureau.nix rename to public/applications/app-bureau.nix diff --git a/public/app-bureautique.nix b/public/applications/app-bureautique.nix similarity index 100% rename from public/app-bureautique.nix rename to public/applications/app-bureautique.nix diff --git a/public/app-cao.nix b/public/applications/app-cao.nix similarity index 100% rename from public/app-cao.nix rename to public/applications/app-cao.nix diff --git a/public/app-cartographie.nix b/public/applications/app-cartographie.nix similarity index 100% rename from public/app-cartographie.nix rename to public/applications/app-cartographie.nix diff --git a/public/app-client-internet.nix b/public/applications/app-client-internet.nix similarity index 100% rename from public/app-client-internet.nix rename to public/applications/app-client-internet.nix diff --git a/public/app-developpement-elm.nix b/public/applications/app-developpement-elm.nix similarity index 100% rename from public/app-developpement-elm.nix rename to public/applications/app-developpement-elm.nix diff --git a/public/app-developpement-haskell.nix b/public/applications/app-developpement-haskell.nix similarity index 100% rename from public/app-developpement-haskell.nix rename to public/applications/app-developpement-haskell.nix diff --git a/public/app-developpement-java.nix b/public/applications/app-developpement-java.nix similarity index 100% rename from public/app-developpement-java.nix rename to public/applications/app-developpement-java.nix diff --git a/public/app-developpement-jetbrains.nix b/public/applications/app-developpement-jetbrains.nix similarity index 100% rename from public/app-developpement-jetbrains.nix rename to public/applications/app-developpement-jetbrains.nix diff --git a/public/app-developpement-rust.nix b/public/applications/app-developpement-rust.nix similarity index 100% rename from public/app-developpement-rust.nix rename to public/applications/app-developpement-rust.nix diff --git a/public/app-developpement.nix b/public/applications/app-developpement.nix similarity index 100% rename from public/app-developpement.nix rename to public/applications/app-developpement.nix diff --git a/public/app-docker.nix b/public/applications/app-docker.nix similarity index 100% rename from public/app-docker.nix rename to public/applications/app-docker.nix diff --git a/public/app-edition-musique.nix b/public/applications/app-edition-musique.nix similarity index 100% rename from public/app-edition-musique.nix rename to public/applications/app-edition-musique.nix diff --git a/public/app-edition-photo.nix b/public/applications/app-edition-photo.nix similarity index 100% rename from public/app-edition-photo.nix rename to public/applications/app-edition-photo.nix diff --git a/public/app-edition-video.nix b/public/applications/app-edition-video.nix similarity index 100% rename from public/app-edition-video.nix rename to public/applications/app-edition-video.nix diff --git a/public/app-jeux.nix b/public/applications/app-jeux.nix similarity index 100% rename from public/app-jeux.nix rename to public/applications/app-jeux.nix diff --git a/public/app-multimedia.nix b/public/applications/app-multimedia.nix similarity index 100% rename from public/app-multimedia.nix rename to public/applications/app-multimedia.nix diff --git a/public/app-network.nix b/public/applications/app-network.nix similarity index 100% rename from public/app-network.nix rename to public/applications/app-network.nix diff --git a/public/app-securite.nix b/public/applications/app-securite.nix similarity index 100% rename from public/app-securite.nix rename to public/applications/app-securite.nix diff --git a/public/app-virtualbox.nix b/public/applications/app-virtualbox.nix similarity index 100% rename from public/app-virtualbox.nix rename to public/applications/app-virtualbox.nix diff --git a/public/public.nix b/public/public.nix index a40f7b5..775137a 100644 --- a/public/public.nix +++ b/public/public.nix @@ -14,52 +14,52 @@ in ./localisation.nix ./network.nix #./network-ipv6.nix - ./service-haveged.nix - ./service-monitoring-munin.nix - ./service-monitoring-smokeping.nix - ./service-ssh.nix + ./services/service-haveged.nix + ./services/service-monitoring-munin.nix + ./services/service-monitoring-smokeping.nix + ./services/service-ssh.nix ./udev.nix # commandées par config-generator ## option de configuration spécifique - ./app-awesome.nix # pour le gestionaire de fenêtres awesome - ./app-cao.nix # de conception assisté par ordinateur & modélisation - ./app-cartographie.nix # manipuler les données géographiques & cartes - ./app-developpement.nix # développer des programmes/scripts - ./app-developpement-elm.nix # développer en elm - ./app-developpement-haskell.nix # développer en haskell - ./app-developpement-java.nix # développer en java - ./app-developpement-jetbrains.nix # outils jetbrains - ./app-developpement-rust.nix # développer en rust - ./app-docker.nix # activer docker - ./app-edition-musique.nix # modifier les fichiers musicaux - ./app-edition-photo.nix # modifier les photos & assimilé - ./app-edition-video.nix # modifier les vidéos - ./app-jeux.nix # jouer, tout simplement ;) - ./app-virtualbox.nix # activer virtualbox + ./applications/app-awesome.nix # pour le gestionaire de fenêtres awesome + ./applications/app-cao.nix # de conception assisté par ordinateur & modélisation + ./applications/app-cartographie.nix # manipuler les données géographiques & cartes + ./applications/app-developpement.nix # développer des programmes/scripts + ./applications/app-developpement-elm.nix # développer en elm + ./applications/app-developpement-haskell.nix # développer en haskell + ./applications/app-developpement-java.nix # développer en java + ./applications/app-developpement-jetbrains.nix # outils jetbrains + ./applications/app-developpement-rust.nix # développer en rust + ./applications/app-docker.nix # activer docker + ./applications/app-edition-musique.nix # modifier les fichiers musicaux + ./applications/app-edition-photo.nix # modifier les photos & assimilé + ./applications/app-edition-video.nix # modifier les vidéos + ./applications/app-jeux.nix # jouer, tout simplement ;) + ./applications/app-virtualbox.nix # activer virtualbox ./auto-upgrade.nix # mise à jour automatique du système ./laptop.nix # appli & configuration adaptée pour un PC portable ./print.nix # configuration de base de cups - ./service-elasticsearch.nix # service de stockage et recher de données - ./service-hoogle.nix # service hoogle pour haskell - ./service-hydra-build.nix # service de construction de paquet. -> la machine compile des paquets - ./service-hydra-core.nix # service pour l'instance d'hydra - ./service-kibana.nix # service de visualisation de données stockées dans elasticsearch - ./service-laptop.nix # services spécifiques aux pc portables - ./service-locate.nix # service locate + ./services/service-elasticsearch.nix # service de stockage et recher de données + ./services/service-hoogle.nix # service hoogle pour haskell + ./services/service-hydra-build.nix # service de construction de paquet. -> la machine compile des paquets + ./services/service-hydra-core.nix # service pour l'instance d'hydra + ./services/service-kibana.nix # service de visualisation de données stockées dans elasticsearch + ./services/service-laptop.nix # services spécifiques aux pc portables + ./services/service-locate.nix # service locate ./swap.nix # définition de l'utilisation du swap ./xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad ## if isDesktop - ./app-adminsys.nix # pour gérer le système dans son ensemble et les services - ./app-bureau.nix # éléments pour avoir un environement graphique minimal utilisable - ./app-bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) - ./app-client-internet.nix # pour accéder & utiliser des ressources par le réseau - ./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, ...) + ./applications/app-adminsys.nix # pour gérer le système dans son ensemble et les services + ./applications/app-bureau.nix # éléments pour avoir un environement graphique minimal utilisable + ./applications/app-bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) + ./applications/app-client-internet.nix # pour accéder & utiliser des ressources par le réseau + ./applications/app-multimedia.nix # pour gérer le son, l'image et la vidéo + ./applications/app-network.nix # de gestion, de diagnostique & surveillance réseau + ./applications/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 + ./services/service-pulseaudio.nix # activation du serveur audio + ./services/service-x11.nix # activation du serveur graphique X ]; } diff --git a/public/service-elasticsearch.nix b/public/services/service-elasticsearch.nix similarity index 100% rename from public/service-elasticsearch.nix rename to public/services/service-elasticsearch.nix diff --git a/public/service-haveged.nix b/public/services/service-haveged.nix similarity index 100% rename from public/service-haveged.nix rename to public/services/service-haveged.nix diff --git a/public/service-hoogle.nix b/public/services/service-hoogle.nix similarity index 100% rename from public/service-hoogle.nix rename to public/services/service-hoogle.nix diff --git a/public/service-hydra-build.nix b/public/services/service-hydra-build.nix similarity index 100% rename from public/service-hydra-build.nix rename to public/services/service-hydra-build.nix diff --git a/public/service-hydra-core.nix b/public/services/service-hydra-core.nix similarity index 100% rename from public/service-hydra-core.nix rename to public/services/service-hydra-core.nix diff --git a/public/service-kibana.nix b/public/services/service-kibana.nix similarity index 100% rename from public/service-kibana.nix rename to public/services/service-kibana.nix diff --git a/public/service-laptop.nix b/public/services/service-laptop.nix similarity index 100% rename from public/service-laptop.nix rename to public/services/service-laptop.nix diff --git a/public/service-locate.nix b/public/services/service-locate.nix similarity index 100% rename from public/service-locate.nix rename to public/services/service-locate.nix diff --git a/public/service-monitoring-munin.nix b/public/services/service-monitoring-munin.nix similarity index 100% rename from public/service-monitoring-munin.nix rename to public/services/service-monitoring-munin.nix diff --git a/public/service-monitoring-smokeping.nix b/public/services/service-monitoring-smokeping.nix similarity index 100% rename from public/service-monitoring-smokeping.nix rename to public/services/service-monitoring-smokeping.nix diff --git a/public/service-pulseaudio.nix b/public/services/service-pulseaudio.nix similarity index 100% rename from public/service-pulseaudio.nix rename to public/services/service-pulseaudio.nix diff --git a/public/service-ssh.nix b/public/services/service-ssh.nix similarity index 100% rename from public/service-ssh.nix rename to public/services/service-ssh.nix diff --git a/public/service-x11.nix b/public/services/service-x11.nix similarity index 100% rename from public/service-x11.nix rename to public/services/service-x11.nix From c8f8ad898d804b64bc0fdab99e5abdde7acac56b Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 22:25:34 +0100 Subject: [PATCH 28/45] =?UTF-8?q?suppression=20des=20pr=C3=A9fixes=20app?= =?UTF-8?q?=20et=20service?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{app-adminsys.nix => adminsys.nix} | 0 .../{app-awesome.nix => awesome.nix} | 0 .../{app-bureau.nix => bureau.nix} | 0 .../{app-bureautique.nix => bureautique.nix} | 0 public/applications/{app-cao.nix => cao.nix} | 0 ...{app-cartographie.nix => cartographie.nix} | 0 ...lient-internet.nix => client-internet.nix} | 0 ...oppement-elm.nix => developpement-elm.nix} | 0 ...-haskell.nix => developpement-haskell.nix} | 0 ...pement-java.nix => developpement-java.nix} | 0 ...brains.nix => developpement-jetbrains.nix} | 0 ...pement-rust.nix => developpement-rust.nix} | 0 ...pp-developpement.nix => developpement.nix} | 0 .../{app-docker.nix => docker.nix} | 0 ...dition-musique.nix => edition-musique.nix} | 0 ...pp-edition-photo.nix => edition-photo.nix} | 0 ...pp-edition-video.nix => edition-video.nix} | 0 .../applications/{app-jeux.nix => jeux.nix} | 0 .../{app-multimedia.nix => multimedia.nix} | 0 .../{app-network.nix => network.nix} | 0 .../{app-securite.nix => securite.nix} | 0 .../{app-virtualbox.nix => virtualbox.nix} | 0 public/public.nix | 70 +++++++++---------- ...ce-elasticsearch.nix => elasticsearch.nix} | 0 .../{service-haveged.nix => haveged.nix} | 0 .../{service-hoogle.nix => hoogle.nix} | 0 ...ervice-hydra-build.nix => hydra-build.nix} | 0 ...{service-hydra-core.nix => hydra-core.nix} | 0 .../{service-kibana.nix => kibana.nix} | 0 .../{service-laptop.nix => laptop.nix} | 0 .../{service-locate.nix => locate.nix} | 0 ...itoring-munin.nix => monitoring-munin.nix} | 0 ...smokeping.nix => monitoring-smokeping.nix} | 0 ...{service-pulseaudio.nix => pulseaudio.nix} | 0 public/services/{service-ssh.nix => ssh.nix} | 0 public/services/{service-x11.nix => x11.nix} | 0 36 files changed, 35 insertions(+), 35 deletions(-) rename public/applications/{app-adminsys.nix => adminsys.nix} (100%) rename public/applications/{app-awesome.nix => awesome.nix} (100%) rename public/applications/{app-bureau.nix => bureau.nix} (100%) rename public/applications/{app-bureautique.nix => bureautique.nix} (100%) rename public/applications/{app-cao.nix => cao.nix} (100%) rename public/applications/{app-cartographie.nix => cartographie.nix} (100%) rename public/applications/{app-client-internet.nix => client-internet.nix} (100%) rename public/applications/{app-developpement-elm.nix => developpement-elm.nix} (100%) rename public/applications/{app-developpement-haskell.nix => developpement-haskell.nix} (100%) rename public/applications/{app-developpement-java.nix => developpement-java.nix} (100%) rename public/applications/{app-developpement-jetbrains.nix => developpement-jetbrains.nix} (100%) rename public/applications/{app-developpement-rust.nix => developpement-rust.nix} (100%) rename public/applications/{app-developpement.nix => developpement.nix} (100%) rename public/applications/{app-docker.nix => docker.nix} (100%) rename public/applications/{app-edition-musique.nix => edition-musique.nix} (100%) rename public/applications/{app-edition-photo.nix => edition-photo.nix} (100%) rename public/applications/{app-edition-video.nix => edition-video.nix} (100%) rename public/applications/{app-jeux.nix => jeux.nix} (100%) rename public/applications/{app-multimedia.nix => multimedia.nix} (100%) rename public/applications/{app-network.nix => network.nix} (100%) rename public/applications/{app-securite.nix => securite.nix} (100%) rename public/applications/{app-virtualbox.nix => virtualbox.nix} (100%) rename public/services/{service-elasticsearch.nix => elasticsearch.nix} (100%) rename public/services/{service-haveged.nix => haveged.nix} (100%) rename public/services/{service-hoogle.nix => hoogle.nix} (100%) rename public/services/{service-hydra-build.nix => hydra-build.nix} (100%) rename public/services/{service-hydra-core.nix => hydra-core.nix} (100%) rename public/services/{service-kibana.nix => kibana.nix} (100%) rename public/services/{service-laptop.nix => laptop.nix} (100%) rename public/services/{service-locate.nix => locate.nix} (100%) rename public/services/{service-monitoring-munin.nix => monitoring-munin.nix} (100%) rename public/services/{service-monitoring-smokeping.nix => monitoring-smokeping.nix} (100%) rename public/services/{service-pulseaudio.nix => pulseaudio.nix} (100%) rename public/services/{service-ssh.nix => ssh.nix} (100%) rename public/services/{service-x11.nix => x11.nix} (100%) diff --git a/public/applications/app-adminsys.nix b/public/applications/adminsys.nix similarity index 100% rename from public/applications/app-adminsys.nix rename to public/applications/adminsys.nix diff --git a/public/applications/app-awesome.nix b/public/applications/awesome.nix similarity index 100% rename from public/applications/app-awesome.nix rename to public/applications/awesome.nix diff --git a/public/applications/app-bureau.nix b/public/applications/bureau.nix similarity index 100% rename from public/applications/app-bureau.nix rename to public/applications/bureau.nix diff --git a/public/applications/app-bureautique.nix b/public/applications/bureautique.nix similarity index 100% rename from public/applications/app-bureautique.nix rename to public/applications/bureautique.nix diff --git a/public/applications/app-cao.nix b/public/applications/cao.nix similarity index 100% rename from public/applications/app-cao.nix rename to public/applications/cao.nix diff --git a/public/applications/app-cartographie.nix b/public/applications/cartographie.nix similarity index 100% rename from public/applications/app-cartographie.nix rename to public/applications/cartographie.nix diff --git a/public/applications/app-client-internet.nix b/public/applications/client-internet.nix similarity index 100% rename from public/applications/app-client-internet.nix rename to public/applications/client-internet.nix diff --git a/public/applications/app-developpement-elm.nix b/public/applications/developpement-elm.nix similarity index 100% rename from public/applications/app-developpement-elm.nix rename to public/applications/developpement-elm.nix diff --git a/public/applications/app-developpement-haskell.nix b/public/applications/developpement-haskell.nix similarity index 100% rename from public/applications/app-developpement-haskell.nix rename to public/applications/developpement-haskell.nix diff --git a/public/applications/app-developpement-java.nix b/public/applications/developpement-java.nix similarity index 100% rename from public/applications/app-developpement-java.nix rename to public/applications/developpement-java.nix diff --git a/public/applications/app-developpement-jetbrains.nix b/public/applications/developpement-jetbrains.nix similarity index 100% rename from public/applications/app-developpement-jetbrains.nix rename to public/applications/developpement-jetbrains.nix diff --git a/public/applications/app-developpement-rust.nix b/public/applications/developpement-rust.nix similarity index 100% rename from public/applications/app-developpement-rust.nix rename to public/applications/developpement-rust.nix diff --git a/public/applications/app-developpement.nix b/public/applications/developpement.nix similarity index 100% rename from public/applications/app-developpement.nix rename to public/applications/developpement.nix diff --git a/public/applications/app-docker.nix b/public/applications/docker.nix similarity index 100% rename from public/applications/app-docker.nix rename to public/applications/docker.nix diff --git a/public/applications/app-edition-musique.nix b/public/applications/edition-musique.nix similarity index 100% rename from public/applications/app-edition-musique.nix rename to public/applications/edition-musique.nix diff --git a/public/applications/app-edition-photo.nix b/public/applications/edition-photo.nix similarity index 100% rename from public/applications/app-edition-photo.nix rename to public/applications/edition-photo.nix diff --git a/public/applications/app-edition-video.nix b/public/applications/edition-video.nix similarity index 100% rename from public/applications/app-edition-video.nix rename to public/applications/edition-video.nix diff --git a/public/applications/app-jeux.nix b/public/applications/jeux.nix similarity index 100% rename from public/applications/app-jeux.nix rename to public/applications/jeux.nix diff --git a/public/applications/app-multimedia.nix b/public/applications/multimedia.nix similarity index 100% rename from public/applications/app-multimedia.nix rename to public/applications/multimedia.nix diff --git a/public/applications/app-network.nix b/public/applications/network.nix similarity index 100% rename from public/applications/app-network.nix rename to public/applications/network.nix diff --git a/public/applications/app-securite.nix b/public/applications/securite.nix similarity index 100% rename from public/applications/app-securite.nix rename to public/applications/securite.nix diff --git a/public/applications/app-virtualbox.nix b/public/applications/virtualbox.nix similarity index 100% rename from public/applications/app-virtualbox.nix rename to public/applications/virtualbox.nix diff --git a/public/public.nix b/public/public.nix index 775137a..69e4773 100644 --- a/public/public.nix +++ b/public/public.nix @@ -14,52 +14,52 @@ in ./localisation.nix ./network.nix #./network-ipv6.nix - ./services/service-haveged.nix - ./services/service-monitoring-munin.nix - ./services/service-monitoring-smokeping.nix - ./services/service-ssh.nix + ./services/haveged.nix + ./services/monitoring-munin.nix + ./services/monitoring-smokeping.nix + ./services/ssh.nix ./udev.nix # commandées par config-generator ## option de configuration spécifique - ./applications/app-awesome.nix # pour le gestionaire de fenêtres awesome - ./applications/app-cao.nix # de conception assisté par ordinateur & modélisation - ./applications/app-cartographie.nix # manipuler les données géographiques & cartes - ./applications/app-developpement.nix # développer des programmes/scripts - ./applications/app-developpement-elm.nix # développer en elm - ./applications/app-developpement-haskell.nix # développer en haskell - ./applications/app-developpement-java.nix # développer en java - ./applications/app-developpement-jetbrains.nix # outils jetbrains - ./applications/app-developpement-rust.nix # développer en rust - ./applications/app-docker.nix # activer docker - ./applications/app-edition-musique.nix # modifier les fichiers musicaux - ./applications/app-edition-photo.nix # modifier les photos & assimilé - ./applications/app-edition-video.nix # modifier les vidéos - ./applications/app-jeux.nix # jouer, tout simplement ;) - ./applications/app-virtualbox.nix # activer virtualbox + ./applications/awesome.nix # pour le gestionaire de fenêtres awesome + ./applications/cao.nix # de conception assisté par ordinateur & modélisation + ./applications/cartographie.nix # manipuler les données géographiques & cartes + ./applications/developpement.nix # développer des programmes/scripts + ./applications/developpement-elm.nix # développer en elm + ./applications/developpement-haskell.nix # développer en haskell + ./applications/developpement-java.nix # développer en java + ./applications/developpement-jetbrains.nix # outils jetbrains + ./applications/developpement-rust.nix # développer en rust + ./applications/docker.nix # activer docker + ./applications/edition-musique.nix # modifier les fichiers musicaux + ./applications/edition-photo.nix # modifier les photos & assimilé + ./applications/edition-video.nix # modifier les vidéos + ./applications/jeux.nix # jouer, tout simplement ;) + ./applications/virtualbox.nix # activer virtualbox ./auto-upgrade.nix # mise à jour automatique du système ./laptop.nix # appli & configuration adaptée pour un PC portable ./print.nix # configuration de base de cups - ./services/service-elasticsearch.nix # service de stockage et recher de données - ./services/service-hoogle.nix # service hoogle pour haskell - ./services/service-hydra-build.nix # service de construction de paquet. -> la machine compile des paquets - ./services/service-hydra-core.nix # service pour l'instance d'hydra - ./services/service-kibana.nix # service de visualisation de données stockées dans elasticsearch - ./services/service-laptop.nix # services spécifiques aux pc portables - ./services/service-locate.nix # service locate + ./services/elasticsearch.nix # service de stockage et recher de données + ./services/hoogle.nix # service hoogle pour haskell + ./services/hydra-build.nix # service de construction de paquet. -> la machine compile des paquets + ./services/hydra-core.nix # service pour l'instance d'hydra + ./services/kibana.nix # service de visualisation de données stockées dans elasticsearch + ./services/laptop.nix # services spécifiques aux pc portables + ./services/locate.nix # service locate ./swap.nix # définition de l'utilisation du swap ./xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad ## if isDesktop - ./applications/app-adminsys.nix # pour gérer le système dans son ensemble et les services - ./applications/app-bureau.nix # éléments pour avoir un environement graphique minimal utilisable - ./applications/app-bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) - ./applications/app-client-internet.nix # pour accéder & utiliser des ressources par le réseau - ./applications/app-multimedia.nix # pour gérer le son, l'image et la vidéo - ./applications/app-network.nix # de gestion, de diagnostique & surveillance réseau - ./applications/app-securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) + ./applications/adminsys.nix # pour gérer le système dans son ensemble et les services + ./applications/bureau.nix # éléments pour avoir un environement graphique minimal utilisable + ./applications/bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) + ./applications/client-internet.nix # pour accéder & utiliser des ressources par le réseau + ./applications/multimedia.nix # pour gérer le son, l'image et la vidéo + ./applications/network.nix # de gestion, de diagnostique & surveillance réseau + ./applications/securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) ./hardware-scanner.nix # utilisation d'un scanner - ./services/service-pulseaudio.nix # activation du serveur audio - ./services/service-x11.nix # activation du serveur graphique X + ./services/pulseaudio.nix # activation du serveur audio + ./services/x11.nix # activation du serveur graphique X ]; } diff --git a/public/services/service-elasticsearch.nix b/public/services/elasticsearch.nix similarity index 100% rename from public/services/service-elasticsearch.nix rename to public/services/elasticsearch.nix diff --git a/public/services/service-haveged.nix b/public/services/haveged.nix similarity index 100% rename from public/services/service-haveged.nix rename to public/services/haveged.nix diff --git a/public/services/service-hoogle.nix b/public/services/hoogle.nix similarity index 100% rename from public/services/service-hoogle.nix rename to public/services/hoogle.nix diff --git a/public/services/service-hydra-build.nix b/public/services/hydra-build.nix similarity index 100% rename from public/services/service-hydra-build.nix rename to public/services/hydra-build.nix diff --git a/public/services/service-hydra-core.nix b/public/services/hydra-core.nix similarity index 100% rename from public/services/service-hydra-core.nix rename to public/services/hydra-core.nix diff --git a/public/services/service-kibana.nix b/public/services/kibana.nix similarity index 100% rename from public/services/service-kibana.nix rename to public/services/kibana.nix diff --git a/public/services/service-laptop.nix b/public/services/laptop.nix similarity index 100% rename from public/services/service-laptop.nix rename to public/services/laptop.nix diff --git a/public/services/service-locate.nix b/public/services/locate.nix similarity index 100% rename from public/services/service-locate.nix rename to public/services/locate.nix diff --git a/public/services/service-monitoring-munin.nix b/public/services/monitoring-munin.nix similarity index 100% rename from public/services/service-monitoring-munin.nix rename to public/services/monitoring-munin.nix diff --git a/public/services/service-monitoring-smokeping.nix b/public/services/monitoring-smokeping.nix similarity index 100% rename from public/services/service-monitoring-smokeping.nix rename to public/services/monitoring-smokeping.nix diff --git a/public/services/service-pulseaudio.nix b/public/services/pulseaudio.nix similarity index 100% rename from public/services/service-pulseaudio.nix rename to public/services/pulseaudio.nix diff --git a/public/services/service-ssh.nix b/public/services/ssh.nix similarity index 100% rename from public/services/service-ssh.nix rename to public/services/ssh.nix diff --git a/public/services/service-x11.nix b/public/services/x11.nix similarity index 100% rename from public/services/service-x11.nix rename to public/services/x11.nix From a51024633fe9d37c68bb5aa53cc4b3cae89867c1 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 22:30:01 +0100 Subject: [PATCH 29/45] =?UTF-8?q?option=20=C3=A0=20part=20pour=20pulseaudi?= =?UTF-8?q?o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config-generator.nix | 2 ++ public/services/pulseaudio.nix | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/config-generator.nix b/config-generator.nix index 76383f0..2581cb9 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -61,6 +61,7 @@ in nix-serve-server = mkEnableOption "Profil pour que la machine soit un serveur de cache nix."; nixStoreProxyCache = mkEnableOption "Profil pour activer le proxy cahce nginx pour le nix store"; print = mkEnableOption "Profil pour activer cups & pouvoir imprimer."; + pulseaudio = mkEnableOption "Profil pour activer pulseaudio."; 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."; @@ -111,6 +112,7 @@ in r6d.config-generator = { awesome = true; #nix-serve-client = true; + pulseaudio = true; scanner = true; }; }) diff --git a/public/services/pulseaudio.nix b/public/services/pulseaudio.nix index 7d3f3fe..cec8b10 100644 --- a/public/services/pulseaudio.nix +++ b/public/services/pulseaudio.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf profiles.isDesktop { +mkIf cfg.pulseaudio { # Pulse Audio hardware.pulseaudio = { From 156cbc8c271e90b8786a0fc050a0f4f783b12096 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 22:51:01 +0100 Subject: [PATCH 30/45] =?UTF-8?q?scanner=20sorti=20du=20profil=20desktop?= =?UTF-8?q?=20par=20d=C3=A9faut?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config-generator.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/config-generator.nix b/config-generator.nix index 2581cb9..0b3bcbf 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -113,7 +113,6 @@ in awesome = true; #nix-serve-client = true; pulseaudio = true; - scanner = true; }; }) (mkIf pfl.isHome { @@ -166,6 +165,7 @@ in edition-musique = true; edition-photo = true; edition-video = true; + scanner = true; virtualbox = true; xmonad = true; }; @@ -197,6 +197,7 @@ in edition-video = true; hydra-core = false; # DO NOT ENABLE ON WORKSTATION, YOU CAN CRASH YOUR SYSTEM print = true; + scanner = true; #virtualbox = true; #xmonad = true; }; @@ -322,6 +323,7 @@ in r6d.config-generator = { laptop = true; + scanner = true; tincAddress = "192.168.12.7/24"; tincExtraConfig = '' ConnectTo = monstre_dubronetwork_fr From 3963027f0496c93f93805e3e9d094bdbefb02d97 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 23:14:20 +0100 Subject: [PATCH 31/45] isDesktop -> isDesktopEnvironment + groupes de logiciels --- config-generator.nix | 28 +++++++++++++------------ public/applications/adminsys.nix | 4 ++-- public/applications/bureau.nix | 6 ++++-- public/applications/bureautique.nix | 2 +- public/applications/client-internet.nix | 2 +- public/applications/multimedia.nix | 3 ++- public/applications/network.nix | 1 - public/applications/securite.nix | 8 +------ public/services/x11.nix | 2 +- 9 files changed, 27 insertions(+), 29 deletions(-) diff --git a/config-generator.nix b/config-generator.nix index 0b3bcbf..1795905 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -9,7 +9,9 @@ let in { -# TODO: ménage +# TODO camel case partout +# TODO everything in english +# TODO sortir ce qui est privé ###### interface options = { @@ -20,8 +22,7 @@ in isDubronetwork = mkEnableOption "Pour distinguer les machines dubronetwork."; isPrunetwork = mkEnableOption "Pour distinguer les machines prunetwork."; # Utilisation machine - isDesktop = mkEnableOption "Pour indiquer une machine avec interface graphique."; - isHome = mkEnableOption "Pour indiquer que la machine sert à la maison (divertissement & autre)."; + isDesktopEnvironment = mkEnableOption "Pour indiquer une machine avec interface graphique."; isServer = mkEnableOption "Pour indiquer qu'il s'agit d'un serveur."; isWorkstation = mkEnableOption "Pour indiquer que la machine sert à travailler."; }; @@ -51,20 +52,24 @@ in hydra-builder = mkEnableOption "Profil pour une machine qui compile pour hydra."; hydra-core = mkEnableOption "Profil pour un serveur hydra."; kibana = mkEnableOption "Profil pour activer le service kibana."; + internetSuite = mkEnableOption "Profil pour la suite de logiciels pour Internet."; jetbrains-licensed = mkEnableOption "Profil pour la suite de développement Jetbrains payante (sous-ensemble)."; jeux = mkEnableOption "Profil pour les jeux vidéos."; laptop = mkEnableOption "Profil pour les outils spécifiques aux ordinateurs portables."; locate = mkEnableOption "Profil pour activer la fonction locate."; mailboxes = mkEnableOption "Profil pour stocker les mails dans des boîtes aux lettres."; + multimediaSuite = mkEnableOption "Profil pour la suite multimédia."; murmur = mkEnableOption "Profil pour activer un serveur Mumble (murmur)"; nix-serve-client = mkEnableOption "Profil pour que la machine soit un client de cache nix."; nix-serve-server = mkEnableOption "Profil pour que la machine soit un serveur de cache nix."; nixStoreProxyCache = mkEnableOption "Profil pour activer le proxy cahce nginx pour le nix store"; + officeSuite = mkEnableOption "Profil pour la suite bureautique"; print = mkEnableOption "Profil pour activer cups & pouvoir imprimer."; pulseaudio = mkEnableOption "Profil pour activer pulseaudio."; 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."; + securitySuite = mkEnableOption "Profil pour la suite de logiciels de sécurité."; smokeping = mkEnableOption "Profil pour activer le monitoring réseau par smokeping."; swap = mkEnableOption "Profil pour que le swap soit activé."; virtualbox = mkEnableOption "Profil pour l'utilisation de VirtualBox."; @@ -108,16 +113,16 @@ in config = mkMerge [ ## Définition des profils génériques - (mkIf pfl.isDesktop { + (mkIf pfl.isDesktopEnvironment { r6d.config-generator = { awesome = true; - #nix-serve-client = true; + internetSuite = true; + multimediaSuite = true; + officeSuite = true; pulseaudio = true; + securitySuite = true; }; }) - (mkIf pfl.isHome { - r6d.profiles.isDesktop = true; - }) (mkIf (pfl.isServer && !comp.isMonstre) { r6d.config-generator = { #database_postgres = true; @@ -137,7 +142,7 @@ in }; }) (mkIf pfl.isWorkstation { - r6d.profiles.isDesktop = true; + r6d.profiles.isDesktopEnvironment = true; r6d.config-generator = { docker = true; @@ -247,7 +252,6 @@ in (mkIf comp.isRadx { networking.hostName = "radx.prunetwork.fr"; # Define your hostname. r6d.profiles = { - isHome = true; isPrunetwork = true; isWorkstation = true; }; @@ -275,7 +279,6 @@ in networking.hostName = "latitude.dubronetwork.fr"; # Define your hostname. r6d.profiles = { isDubronetwork = true; - isHome = true; isWorkstation = true; }; @@ -318,7 +321,7 @@ in networking.hostName = "neo-nomade.dubronetwork.fr"; # Define your hostname. r6d.profiles = { isDubronetwork = true; - isHome = true; + isDesktopEnvironment = true; }; r6d.config-generator = { @@ -357,7 +360,6 @@ in networking.hostName = "phenom.dubronetwork.fr"; # Define your hostname. r6d.profiles = { isDubronetwork = true; - isHome = true; isWorkstation = true; }; diff --git a/public/applications/adminsys.nix b/public/applications/adminsys.nix index 3483fea..b112837 100644 --- a/public/applications/adminsys.nix +++ b/public/applications/adminsys.nix @@ -51,11 +51,11 @@ mkIf true { duff # outil de recherche de fichiers en doublons rdfind # recherche de fichiers doublons pour remplacement par hard/soft link - (mkIf profiles.isDesktop + (mkIf profiles.isDesktopEnvironment ## Gestion de FS gparted # Gestion graphique de partitions ) - (mkIf profiles.isDesktop + (mkIf profiles.isDesktopEnvironment unetbootin # création de clefs USB bootables ) ]; diff --git a/public/applications/bureau.nix b/public/applications/bureau.nix index b3ca6a3..934d172 100644 --- a/public/applications/bureau.nix +++ b/public/applications/bureau.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf profiles.isDesktop { +mkIf profiles.isDesktopEnvironment { # Paquets environment.systemPackages = with pkgs; [ @@ -33,7 +33,7 @@ mkIf profiles.isDesktop { ]; # Polices supplémentaires - fonts.fonts = with pkgs; mkIf profiles.isDesktop [ + fonts.fonts = with pkgs; [ fira # police créée pour Firefox fira-code # idem fira-mono + ligatures pour la programmation fira-mono # dérivée de fira en monospace @@ -46,5 +46,7 @@ mkIf profiles.isDesktop { # pour le montage des media amovibles devmon.source = "${pkgs.udevil}/bin/devmon"; udevil.source = "${pkgs.udevil}/bin/udevil"; # utilisé par spacefm + # vérouiller l''écran. "cannot disable the out-of-memory killer for this process (make sure to suid or sgid slock)" --> en root + slock.source = "${pkgs.slock}/bin/slock"; }; } diff --git a/public/applications/bureautique.nix b/public/applications/bureautique.nix index 27f70b3..1feb95c 100644 --- a/public/applications/bureautique.nix +++ b/public/applications/bureautique.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf profiles.isDesktop { +mkIf cfg.officeSuite { # Paquets environment.systemPackages = with pkgs; [ diff --git a/public/applications/client-internet.nix b/public/applications/client-internet.nix index 4866319..c615d04 100644 --- a/public/applications/client-internet.nix +++ b/public/applications/client-internet.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in # TODO: ménage -mkIf profiles.isDesktop { +mkIf cfg.internetSuite { # Paquets environment.systemPackages = with pkgs; [ diff --git a/public/applications/multimedia.nix b/public/applications/multimedia.nix index d825abb..d6188bc 100644 --- a/public/applications/multimedia.nix +++ b/public/applications/multimedia.nix @@ -7,7 +7,8 @@ let profiles = config.r6d.profiles; in -mkIf profiles.isDesktop { +# TODO ranger le spécifique pulseaudio +mkIf cfg.multimediaSuite { # Paquets environment.systemPackages = with pkgs; [ diff --git a/public/applications/network.nix b/public/applications/network.nix index f52c5e0..7f82062 100644 --- a/public/applications/network.nix +++ b/public/applications/network.nix @@ -8,7 +8,6 @@ let in mkIf true { -#mkIf profiles.isDesktop { # Paquets environment.systemPackages = with pkgs; [ diff --git a/public/applications/securite.nix b/public/applications/securite.nix index ec89433..a11d5c5 100644 --- a/public/applications/securite.nix +++ b/public/applications/securite.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf profiles.isDesktop { +mkIf cfg.securitySuite { # Paquets environment.systemPackages = with pkgs; [ @@ -17,10 +17,4 @@ mkIf profiles.isDesktop { pwgen # générateur de mots de passe #yubikey-personalization-gui # utilisation de la clef Yubikey ]; - - # Paquets avec setui root - security.wrappers = { - # vérouiller l''écran. "cannot disable the out-of-memory killer for this process (make sure to suid or sgid slock)" --> en root - slock.source = "${pkgs.slock}/bin/slock"; - }; } diff --git a/public/services/x11.nix b/public/services/x11.nix index 93e8b16..4c9bdf7 100644 --- a/public/services/x11.nix +++ b/public/services/x11.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf profiles.isDesktop { +mkIf profiles.isDesktopEnvironment { # Services # Enable the X11 windowing system. From 4660f79017a0985b1eeaeb695fd54397fd122318 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 23:25:46 +0100 Subject: [PATCH 32/45] =?UTF-8?q?refactor=20de=20la=20configuration=20sp?= =?UTF-8?q?=C3=A9cifique=20aux=20laptops?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/{ => configurations}/laptop.nix | 6 ++++++ public/public.nix | 3 +-- public/services/laptop.nix | 19 ------------------- 3 files changed, 7 insertions(+), 21 deletions(-) rename public/{ => configurations}/laptop.nix (86%) delete mode 100644 public/services/laptop.nix diff --git a/public/laptop.nix b/public/configurations/laptop.nix similarity index 86% rename from public/laptop.nix rename to public/configurations/laptop.nix index 86c592b..e9a47fb 100644 --- a/public/laptop.nix +++ b/public/configurations/laptop.nix @@ -24,4 +24,10 @@ mkIf cfg.laptop { networkmanagerapplet # gestionnaire réseau graphique + console (nm-applet + nmtui) wirelesstools # fournis iwconfig ]; + + # Services + services.xserver.synaptics = { + enable = true; + twoFingerScroll = true; + }; } diff --git a/public/public.nix b/public/public.nix index 69e4773..0521a27 100644 --- a/public/public.nix +++ b/public/public.nix @@ -38,14 +38,13 @@ in ./applications/jeux.nix # jouer, tout simplement ;) ./applications/virtualbox.nix # activer virtualbox ./auto-upgrade.nix # mise à jour automatique du système - ./laptop.nix # appli & configuration adaptée pour un PC portable + ./configurations/laptop.nix # appli & configuration adaptée pour un PC portable ./print.nix # configuration de base de cups ./services/elasticsearch.nix # service de stockage et recher de données ./services/hoogle.nix # service hoogle pour haskell ./services/hydra-build.nix # service de construction de paquet. -> la machine compile des paquets ./services/hydra-core.nix # service pour l'instance d'hydra ./services/kibana.nix # service de visualisation de données stockées dans elasticsearch - ./services/laptop.nix # services spécifiques aux pc portables ./services/locate.nix # service locate ./swap.nix # définition de l'utilisation du swap ./xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad diff --git a/public/services/laptop.nix b/public/services/laptop.nix deleted file mode 100644 index fe4c8c2..0000000 --- a/public/services/laptop.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ 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.laptop { - - # Gestion spécifique pour PC portable - - # Services - services.xserver.synaptics = { - enable = true; - twoFingerScroll = true; - }; -} From eeb4543f1f5273029b1b77b12c7392bb834591b0 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 23:29:32 +0100 Subject: [PATCH 33/45] TADA ! retour de l'activation de xserver dans le template :) --- public/services/x11.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/services/x11.nix b/public/services/x11.nix index 4c9bdf7..32f352e 100644 --- a/public/services/x11.nix +++ b/public/services/x11.nix @@ -12,7 +12,7 @@ mkIf profiles.isDesktopEnvironment { # Services # Enable the X11 windowing system. services.xserver = { - #enable = true; + enable = true; layout = "fr"; xkbOptions = "eurosign:e"; displayManager.lightdm.enable = true; From 097472cca045caf4bf17625cae7e7a901de38779 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 23:43:14 +0100 Subject: [PATCH 34/45] =?UTF-8?q?tri=20de=20la=20cat=C3=A9gorie=20applicat?= =?UTF-8?q?ions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/{applications => configuration}/awesome.nix | 0 public/{configurations => configuration}/laptop.nix | 0 public/public.nix | 8 ++++---- public/{applications => services}/docker.nix | 0 public/{applications => services}/virtualbox.nix | 0 5 files changed, 4 insertions(+), 4 deletions(-) rename public/{applications => configuration}/awesome.nix (100%) rename public/{configurations => configuration}/laptop.nix (100%) rename public/{applications => services}/docker.nix (100%) rename public/{applications => services}/virtualbox.nix (100%) diff --git a/public/applications/awesome.nix b/public/configuration/awesome.nix similarity index 100% rename from public/applications/awesome.nix rename to public/configuration/awesome.nix diff --git a/public/configurations/laptop.nix b/public/configuration/laptop.nix similarity index 100% rename from public/configurations/laptop.nix rename to public/configuration/laptop.nix diff --git a/public/public.nix b/public/public.nix index 0521a27..d474d05 100644 --- a/public/public.nix +++ b/public/public.nix @@ -22,7 +22,6 @@ in # commandées par config-generator ## option de configuration spécifique - ./applications/awesome.nix # pour le gestionaire de fenêtres awesome ./applications/cao.nix # de conception assisté par ordinateur & modélisation ./applications/cartographie.nix # manipuler les données géographiques & cartes ./applications/developpement.nix # développer des programmes/scripts @@ -31,21 +30,22 @@ in ./applications/developpement-java.nix # développer en java ./applications/developpement-jetbrains.nix # outils jetbrains ./applications/developpement-rust.nix # développer en rust - ./applications/docker.nix # activer docker ./applications/edition-musique.nix # modifier les fichiers musicaux ./applications/edition-photo.nix # modifier les photos & assimilé ./applications/edition-video.nix # modifier les vidéos ./applications/jeux.nix # jouer, tout simplement ;) - ./applications/virtualbox.nix # activer virtualbox ./auto-upgrade.nix # mise à jour automatique du système - ./configurations/laptop.nix # appli & configuration adaptée pour un PC portable + ./configuration/awesome.nix # pour le gestionaire de fenêtres awesome + ./configuration/laptop.nix # appli & configuration adaptée pour un PC portable ./print.nix # configuration de base de cups + ./services/docker.nix # activer docker ./services/elasticsearch.nix # service de stockage et recher de données ./services/hoogle.nix # service hoogle pour haskell ./services/hydra-build.nix # service de construction de paquet. -> la machine compile des paquets ./services/hydra-core.nix # service pour l'instance d'hydra ./services/kibana.nix # service de visualisation de données stockées dans elasticsearch ./services/locate.nix # service locate + ./services/virtualbox.nix # activer virtualbox ./swap.nix # définition de l'utilisation du swap ./xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad diff --git a/public/applications/docker.nix b/public/services/docker.nix similarity index 100% rename from public/applications/docker.nix rename to public/services/docker.nix diff --git a/public/applications/virtualbox.nix b/public/services/virtualbox.nix similarity index 100% rename from public/applications/virtualbox.nix rename to public/services/virtualbox.nix From 708e5fcbce1d2c0492b59ed96533742a49903b1a Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Fri, 24 Mar 2017 23:57:40 +0100 Subject: [PATCH 35/45] =?UTF-8?q?tri=20=C3=A0=20la=20racine=20de=20public/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/{ => configuration}/auto-upgrade.nix | 0 public/{ => configuration}/localisation.nix | 0 public/{ => configuration}/network-ipv6.nix | 0 public/{ => configuration}/network.nix | 0 public/{ => configuration}/swap.nix | 0 public/{ => configuration}/udev.nix | 0 public/public.nix | 18 +++++++++--------- public/{ => services}/print.nix | 0 .../scanner.nix} | 0 public/{ => services}/xmonad/xmobarrc | 0 public/{ => services}/xmonad/xmonad.hs | 0 public/{ => services}/xmonad/xmonad.nix | 0 12 files changed, 9 insertions(+), 9 deletions(-) rename public/{ => configuration}/auto-upgrade.nix (100%) rename public/{ => configuration}/localisation.nix (100%) rename public/{ => configuration}/network-ipv6.nix (100%) rename public/{ => configuration}/network.nix (100%) rename public/{ => configuration}/swap.nix (100%) rename public/{ => configuration}/udev.nix (100%) rename public/{ => services}/print.nix (100%) rename public/{hardware-scanner.nix => services/scanner.nix} (100%) rename public/{ => services}/xmonad/xmobarrc (100%) rename public/{ => services}/xmonad/xmonad.hs (100%) rename public/{ => services}/xmonad/xmonad.nix (100%) diff --git a/public/auto-upgrade.nix b/public/configuration/auto-upgrade.nix similarity index 100% rename from public/auto-upgrade.nix rename to public/configuration/auto-upgrade.nix diff --git a/public/localisation.nix b/public/configuration/localisation.nix similarity index 100% rename from public/localisation.nix rename to public/configuration/localisation.nix diff --git a/public/network-ipv6.nix b/public/configuration/network-ipv6.nix similarity index 100% rename from public/network-ipv6.nix rename to public/configuration/network-ipv6.nix diff --git a/public/network.nix b/public/configuration/network.nix similarity index 100% rename from public/network.nix rename to public/configuration/network.nix diff --git a/public/swap.nix b/public/configuration/swap.nix similarity index 100% rename from public/swap.nix rename to public/configuration/swap.nix diff --git a/public/udev.nix b/public/configuration/udev.nix similarity index 100% rename from public/udev.nix rename to public/configuration/udev.nix diff --git a/public/public.nix b/public/public.nix index d474d05..3d2a5e8 100644 --- a/public/public.nix +++ b/public/public.nix @@ -11,14 +11,14 @@ in imports = [ # installées systématiquement ./environment.nix - ./localisation.nix - ./network.nix - #./network-ipv6.nix + ./configuration/localisation.nix + ./configuration/network.nix + #./configuration/network-ipv6.nix + ./configuration/udev.nix ./services/haveged.nix ./services/monitoring-munin.nix ./services/monitoring-smokeping.nix ./services/ssh.nix - ./udev.nix # commandées par config-generator ## option de configuration spécifique @@ -34,10 +34,11 @@ in ./applications/edition-photo.nix # modifier les photos & assimilé ./applications/edition-video.nix # modifier les vidéos ./applications/jeux.nix # jouer, tout simplement ;) - ./auto-upgrade.nix # mise à jour automatique du système + ./configuration/auto-upgrade.nix # mise à jour automatique du système ./configuration/awesome.nix # pour le gestionaire de fenêtres awesome ./configuration/laptop.nix # appli & configuration adaptée pour un PC portable - ./print.nix # configuration de base de cups + ./configuration/swap.nix # définition de l'utilisation du swap + ./services/print.nix # configuration de base de cups ./services/docker.nix # activer docker ./services/elasticsearch.nix # service de stockage et recher de données ./services/hoogle.nix # service hoogle pour haskell @@ -46,8 +47,7 @@ in ./services/kibana.nix # service de visualisation de données stockées dans elasticsearch ./services/locate.nix # service locate ./services/virtualbox.nix # activer virtualbox - ./swap.nix # définition de l'utilisation du swap - ./xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad + ./services/xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad ## if isDesktop ./applications/adminsys.nix # pour gérer le système dans son ensemble et les services @@ -57,8 +57,8 @@ in ./applications/multimedia.nix # pour gérer le son, l'image et la vidéo ./applications/network.nix # de gestion, de diagnostique & surveillance réseau ./applications/securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) - ./hardware-scanner.nix # utilisation d'un scanner ./services/pulseaudio.nix # activation du serveur audio + ./services/scanner.nix # utilisation d'un scanner ./services/x11.nix # activation du serveur graphique X ]; } diff --git a/public/print.nix b/public/services/print.nix similarity index 100% rename from public/print.nix rename to public/services/print.nix diff --git a/public/hardware-scanner.nix b/public/services/scanner.nix similarity index 100% rename from public/hardware-scanner.nix rename to public/services/scanner.nix diff --git a/public/xmonad/xmobarrc b/public/services/xmonad/xmobarrc similarity index 100% rename from public/xmonad/xmobarrc rename to public/services/xmonad/xmobarrc diff --git a/public/xmonad/xmonad.hs b/public/services/xmonad/xmonad.hs similarity index 100% rename from public/xmonad/xmonad.hs rename to public/services/xmonad/xmonad.hs diff --git a/public/xmonad/xmonad.nix b/public/services/xmonad/xmonad.nix similarity index 100% rename from public/xmonad/xmonad.nix rename to public/services/xmonad/xmonad.nix From da41826e33cf99af02f24647f7edd2db94762ff8 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sat, 25 Mar 2017 00:05:47 +0100 Subject: [PATCH 36/45] =?UTF-8?q?d=C3=A9coupage=20des=20applications=20par?= =?UTF-8?q?=20d=C3=A9faut?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/default-applications.nix | 42 +++++++++++++++++++++++++++++++++ public/environment.nix | 29 ----------------------- public/public.nix | 1 + 3 files changed, 43 insertions(+), 29 deletions(-) create mode 100644 public/default-applications.nix diff --git a/public/default-applications.nix b/public/default-applications.nix new file mode 100644 index 0000000..c05b730 --- /dev/null +++ b/public/default-applications.nix @@ -0,0 +1,42 @@ +{ config, lib, pkgs, ... }: + +let + inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +{ + + # Paquets + environment.systemPackages = with pkgs; [ + bind # utilisé pour les utilitaires comme dig + byobu # permet de se déconnecter d'un terminal sans l'aréter + dhcp # client dhcp + git gitAndTools.gitSVN gitAndTools.tig gti # outil de gestion de version + gnumake # pour décrire les recettes de compilation + gnupg # GPG + gpm # prise en charge de la souris en console + htop # monitoring + lsb-release # pour les scripts qui utilisent cet outil + #libressl # librairie pour faire du TLS et les algorithmes de crypto par OpenBSD + ncdu # outil pour voir l'espace utilisé + par2cmdline # outil de récupération de fichiers corrompus - .par2 + p7zip # compression de fichier + parted # partitionnement de disque + pciutils + pinentry # pour taper les mots de passe gpg + psmisc # fournis les utilitaires comme killall, fuser, pstree + python # python -- python -m SimpleHTTPServer 8000 + #python34Packages.glances # monitoring + pwgen # générateur de mot de passe + rtorrent # TODO outil de téléchargement de torrent & magnet + tmux # nécessaire pour byobu + tree # affiche une arborescence de fichiers et dossiers + usbutils + (import ./vim.nix) + wget # client HTTP console + which # pour connaitre le chemin d'un exécutable + ]; +} diff --git a/public/environment.nix b/public/environment.nix index b2f0b51..3b47c47 100644 --- a/public/environment.nix +++ b/public/environment.nix @@ -29,35 +29,6 @@ in # Paquets environment = { - systemPackages = with pkgs; [ - bind # utilisé pour les utilitaires comme dig - byobu # permet de se déconnecter d'un terminal sans l'aréter - dhcp # client dhcp - git gitAndTools.gitSVN gitAndTools.tig gti # outil de gestion de version - gnumake # pour décrire les recettes de compilation - gnupg # GPG - gpm # prise en charge de la souris en console - htop # monitoring - lsb-release # pour les scripts qui utilisent cet outil - #libressl # librairie pour faire du TLS et les algorithmes de crypto par OpenBSD - ncdu # outil pour voir l'espace utilisé - par2cmdline # outil de récupération de fichiers corrompus - .par2 - p7zip # compression de fichier - parted # partitionnement de disque - pciutils - pinentry # pour taper les mots de passe gpg - psmisc # fournis les utilitaires comme killall, fuser, pstree - python # python -- python -m SimpleHTTPServer 8000 - #python34Packages.glances # monitoring - pwgen # générateur de mot de passe - rtorrent # TODO outil de téléchargement de torrent & magnet - tmux # nécessaire pour byobu - tree # affiche une arborescence de fichiers et dossiers - usbutils - (import ./vim.nix) - wget # client HTTP console - which # pour connaitre le chemin d'un exécutable - ]; shellAliases = { byobu = "byobu-tmux"; gpg = "gpg2"; diff --git a/public/public.nix b/public/public.nix index 3d2a5e8..49c9939 100644 --- a/public/public.nix +++ b/public/public.nix @@ -10,6 +10,7 @@ in { imports = [ # installées systématiquement + ./default-applications.nix ./environment.nix ./configuration/localisation.nix ./configuration/network.nix From 9997092984a5843222436401902d99f27007f2f4 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sat, 25 Mar 2017 00:08:22 +0100 Subject: [PATCH 37/45] oops: munin-muttrc n'a pas suivi son fichier .nix --- public/services/monitoring-munin.nix | 2 +- public/{ => services}/munin-muttrc | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename public/{ => services}/munin-muttrc (100%) diff --git a/public/services/monitoring-munin.nix b/public/services/monitoring-munin.nix index 17c4e2c..d8e6835 100644 --- a/public/services/monitoring-munin.nix +++ b/public/services/monitoring-munin.nix @@ -36,7 +36,7 @@ mkIf true { address 127.0.0.1 ''; extraGlobalConfig = '' - contact.email.command ${pkgs.mutt}/bin/mutt -F /etc/nixos/base/public/munin-muttrc -s "Munin notification for ''${var:host}" jean-pierre@ocean.prunetwork.fr + contact.email.command ${pkgs.mutt}/bin/mutt -F /etc/nixos/base/public/services/munin-muttrc -s "Munin notification for ''${var:host}" jean-pierre@ocean.prunetwork.fr ''; }; diff --git a/public/munin-muttrc b/public/services/munin-muttrc similarity index 100% rename from public/munin-muttrc rename to public/services/munin-muttrc From c1d112a10a37593f9757e853f4f0fcc8153b4732 Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sat, 25 Mar 2017 00:11:05 +0100 Subject: [PATCH 38/45] suite du tri dans public/ --- public/{ => applications}/default-applications.nix | 0 public/{ => applications}/vim.nix | 0 public/{ => applications}/vimrc | 0 public/{ => configuration}/bash-interactive-init.sh | 0 public/{ => configuration}/bash-prompt.sh | 0 public/{ => configuration}/environment.nix | 0 public/{ => configuration}/gitconfig | 0 public/public.nix | 4 ++-- 8 files changed, 2 insertions(+), 2 deletions(-) rename public/{ => applications}/default-applications.nix (100%) rename public/{ => applications}/vim.nix (100%) rename public/{ => applications}/vimrc (100%) rename public/{ => configuration}/bash-interactive-init.sh (100%) rename public/{ => configuration}/bash-prompt.sh (100%) rename public/{ => configuration}/environment.nix (100%) rename public/{ => configuration}/gitconfig (100%) diff --git a/public/default-applications.nix b/public/applications/default-applications.nix similarity index 100% rename from public/default-applications.nix rename to public/applications/default-applications.nix diff --git a/public/vim.nix b/public/applications/vim.nix similarity index 100% rename from public/vim.nix rename to public/applications/vim.nix diff --git a/public/vimrc b/public/applications/vimrc similarity index 100% rename from public/vimrc rename to public/applications/vimrc diff --git a/public/bash-interactive-init.sh b/public/configuration/bash-interactive-init.sh similarity index 100% rename from public/bash-interactive-init.sh rename to public/configuration/bash-interactive-init.sh diff --git a/public/bash-prompt.sh b/public/configuration/bash-prompt.sh similarity index 100% rename from public/bash-prompt.sh rename to public/configuration/bash-prompt.sh diff --git a/public/environment.nix b/public/configuration/environment.nix similarity index 100% rename from public/environment.nix rename to public/configuration/environment.nix diff --git a/public/gitconfig b/public/configuration/gitconfig similarity index 100% rename from public/gitconfig rename to public/configuration/gitconfig diff --git a/public/public.nix b/public/public.nix index 49c9939..afc3f45 100644 --- a/public/public.nix +++ b/public/public.nix @@ -10,8 +10,8 @@ in { imports = [ # installées systématiquement - ./default-applications.nix - ./environment.nix + ./applications/default-applications.nix + ./configuration/environment.nix ./configuration/localisation.nix ./configuration/network.nix #./configuration/network-ipv6.nix From 40426c1ad2f6c015084ce75af489fb7ea9688faf Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sat, 25 Mar 2017 00:25:30 +0100 Subject: [PATCH 39/45] =?UTF-8?q?d=C3=A9placement=20de=20la=20configuratio?= =?UTF-8?q?n=20=C3=A0=20la=20racine=20du=20d=C3=A9p=C3=B4t=20(sauf=20rc.lu?= =?UTF-8?q?a)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adminsys.nix | 0 .../applications => applications}/bureau.nix | 0 .../bureautique.nix | 0 {public/applications => applications}/cao.nix | 0 .../cartographie.nix | 0 .../client-internet.nix | 0 .../default-applications.nix | 0 .../developpement-elm.nix | 0 .../developpement-haskell.nix | 0 .../developpement-java.nix | 0 .../developpement-jetbrains.nix | 0 .../developpement-rust.nix | 0 .../developpement.nix | 0 .../edition-musique.nix | 0 .../edition-photo.nix | 0 .../edition-video.nix | 0 .../applications => applications}/jeux.nix | 0 .../multimedia.nix | 0 .../applications => applications}/network.nix | 0 .../securite.nix | 0 {public/applications => applications}/vim.nix | 0 {public/applications => applications}/vimrc | 0 base.nix | 56 +++++++++++++++- .../auto-upgrade.nix | 0 .../awesome.nix | 0 .../bash-interactive-init.sh | 0 .../bash-prompt.sh | 0 .../environment.nix | 0 .../configuration => configuration}/gitconfig | 0 .../laptop.nix | 0 .../localisation.nix | 0 .../network-ipv6.nix | 0 .../network.nix | 0 .../configuration => configuration}/swap.nix | 0 .../configuration => configuration}/udev.nix | 0 public/public.nix | 65 ------------------- {public/services => services}/docker.nix | 0 .../services => services}/elasticsearch.nix | 0 {public/services => services}/haveged.nix | 0 {public/services => services}/hoogle.nix | 0 {public/services => services}/hydra-build.nix | 0 {public/services => services}/hydra-core.nix | 0 {public/services => services}/kibana.nix | 0 {public/services => services}/locate.nix | 0 .../monitoring-munin.nix | 0 .../monitoring-smokeping.nix | 0 {public/services => services}/munin-muttrc | 0 {public/services => services}/print.nix | 0 {public/services => services}/pulseaudio.nix | 0 {public/services => services}/scanner.nix | 0 {public/services => services}/ssh.nix | 0 {public/services => services}/virtualbox.nix | 0 {public/services => services}/x11.nix | 0 {public/services => services}/xmonad/xmobarrc | 0 .../services => services}/xmonad/xmonad.hs | 0 .../services => services}/xmonad/xmonad.nix | 0 56 files changed, 53 insertions(+), 68 deletions(-) rename {public/applications => applications}/adminsys.nix (100%) rename {public/applications => applications}/bureau.nix (100%) rename {public/applications => applications}/bureautique.nix (100%) rename {public/applications => applications}/cao.nix (100%) rename {public/applications => applications}/cartographie.nix (100%) rename {public/applications => applications}/client-internet.nix (100%) rename {public/applications => applications}/default-applications.nix (100%) rename {public/applications => applications}/developpement-elm.nix (100%) rename {public/applications => applications}/developpement-haskell.nix (100%) rename {public/applications => applications}/developpement-java.nix (100%) rename {public/applications => applications}/developpement-jetbrains.nix (100%) rename {public/applications => applications}/developpement-rust.nix (100%) rename {public/applications => applications}/developpement.nix (100%) rename {public/applications => applications}/edition-musique.nix (100%) rename {public/applications => applications}/edition-photo.nix (100%) rename {public/applications => applications}/edition-video.nix (100%) rename {public/applications => applications}/jeux.nix (100%) rename {public/applications => applications}/multimedia.nix (100%) rename {public/applications => applications}/network.nix (100%) rename {public/applications => applications}/securite.nix (100%) rename {public/applications => applications}/vim.nix (100%) rename {public/applications => applications}/vimrc (100%) rename {public/configuration => configuration}/auto-upgrade.nix (100%) rename {public/configuration => configuration}/awesome.nix (100%) rename {public/configuration => configuration}/bash-interactive-init.sh (100%) rename {public/configuration => configuration}/bash-prompt.sh (100%) rename {public/configuration => configuration}/environment.nix (100%) rename {public/configuration => configuration}/gitconfig (100%) rename {public/configuration => configuration}/laptop.nix (100%) rename {public/configuration => configuration}/localisation.nix (100%) rename {public/configuration => configuration}/network-ipv6.nix (100%) rename {public/configuration => configuration}/network.nix (100%) rename {public/configuration => configuration}/swap.nix (100%) rename {public/configuration => configuration}/udev.nix (100%) delete mode 100644 public/public.nix rename {public/services => services}/docker.nix (100%) rename {public/services => services}/elasticsearch.nix (100%) rename {public/services => services}/haveged.nix (100%) rename {public/services => services}/hoogle.nix (100%) rename {public/services => services}/hydra-build.nix (100%) rename {public/services => services}/hydra-core.nix (100%) rename {public/services => services}/kibana.nix (100%) rename {public/services => services}/locate.nix (100%) rename {public/services => services}/monitoring-munin.nix (100%) rename {public/services => services}/monitoring-smokeping.nix (100%) rename {public/services => services}/munin-muttrc (100%) rename {public/services => services}/print.nix (100%) rename {public/services => services}/pulseaudio.nix (100%) rename {public/services => services}/scanner.nix (100%) rename {public/services => services}/ssh.nix (100%) rename {public/services => services}/virtualbox.nix (100%) rename {public/services => services}/x11.nix (100%) rename {public/services => services}/xmonad/xmobarrc (100%) rename {public/services => services}/xmonad/xmonad.hs (100%) rename {public/services => services}/xmonad/xmonad.nix (100%) diff --git a/public/applications/adminsys.nix b/applications/adminsys.nix similarity index 100% rename from public/applications/adminsys.nix rename to applications/adminsys.nix diff --git a/public/applications/bureau.nix b/applications/bureau.nix similarity index 100% rename from public/applications/bureau.nix rename to applications/bureau.nix diff --git a/public/applications/bureautique.nix b/applications/bureautique.nix similarity index 100% rename from public/applications/bureautique.nix rename to applications/bureautique.nix diff --git a/public/applications/cao.nix b/applications/cao.nix similarity index 100% rename from public/applications/cao.nix rename to applications/cao.nix diff --git a/public/applications/cartographie.nix b/applications/cartographie.nix similarity index 100% rename from public/applications/cartographie.nix rename to applications/cartographie.nix diff --git a/public/applications/client-internet.nix b/applications/client-internet.nix similarity index 100% rename from public/applications/client-internet.nix rename to applications/client-internet.nix diff --git a/public/applications/default-applications.nix b/applications/default-applications.nix similarity index 100% rename from public/applications/default-applications.nix rename to applications/default-applications.nix diff --git a/public/applications/developpement-elm.nix b/applications/developpement-elm.nix similarity index 100% rename from public/applications/developpement-elm.nix rename to applications/developpement-elm.nix diff --git a/public/applications/developpement-haskell.nix b/applications/developpement-haskell.nix similarity index 100% rename from public/applications/developpement-haskell.nix rename to applications/developpement-haskell.nix diff --git a/public/applications/developpement-java.nix b/applications/developpement-java.nix similarity index 100% rename from public/applications/developpement-java.nix rename to applications/developpement-java.nix diff --git a/public/applications/developpement-jetbrains.nix b/applications/developpement-jetbrains.nix similarity index 100% rename from public/applications/developpement-jetbrains.nix rename to applications/developpement-jetbrains.nix diff --git a/public/applications/developpement-rust.nix b/applications/developpement-rust.nix similarity index 100% rename from public/applications/developpement-rust.nix rename to applications/developpement-rust.nix diff --git a/public/applications/developpement.nix b/applications/developpement.nix similarity index 100% rename from public/applications/developpement.nix rename to applications/developpement.nix diff --git a/public/applications/edition-musique.nix b/applications/edition-musique.nix similarity index 100% rename from public/applications/edition-musique.nix rename to applications/edition-musique.nix diff --git a/public/applications/edition-photo.nix b/applications/edition-photo.nix similarity index 100% rename from public/applications/edition-photo.nix rename to applications/edition-photo.nix diff --git a/public/applications/edition-video.nix b/applications/edition-video.nix similarity index 100% rename from public/applications/edition-video.nix rename to applications/edition-video.nix diff --git a/public/applications/jeux.nix b/applications/jeux.nix similarity index 100% rename from public/applications/jeux.nix rename to applications/jeux.nix diff --git a/public/applications/multimedia.nix b/applications/multimedia.nix similarity index 100% rename from public/applications/multimedia.nix rename to applications/multimedia.nix diff --git a/public/applications/network.nix b/applications/network.nix similarity index 100% rename from public/applications/network.nix rename to applications/network.nix diff --git a/public/applications/securite.nix b/applications/securite.nix similarity index 100% rename from public/applications/securite.nix rename to applications/securite.nix diff --git a/public/applications/vim.nix b/applications/vim.nix similarity index 100% rename from public/applications/vim.nix rename to applications/vim.nix diff --git a/public/applications/vimrc b/applications/vimrc similarity index 100% rename from public/applications/vimrc rename to applications/vimrc diff --git a/base.nix b/base.nix index 850731d..93e894a 100644 --- a/base.nix +++ b/base.nix @@ -9,10 +9,60 @@ in { imports = [ - # recettes - ./public/public.nix - # moulinette de configuration ./config-generator.nix + + # installées systématiquement + ./applications/default-applications.nix + ./configuration/environment.nix + ./configuration/localisation.nix + ./configuration/network.nix + #./configuration/network-ipv6.nix + ./configuration/udev.nix + ./services/haveged.nix + ./services/monitoring-munin.nix + ./services/monitoring-smokeping.nix + ./services/ssh.nix + + # commandées par config-generator + ## option de configuration spécifique + ./applications/cao.nix # de conception assisté par ordinateur & modélisation + ./applications/cartographie.nix # manipuler les données géographiques & cartes + ./applications/developpement.nix # développer des programmes/scripts + ./applications/developpement-elm.nix # développer en elm + ./applications/developpement-haskell.nix # développer en haskell + ./applications/developpement-java.nix # développer en java + ./applications/developpement-jetbrains.nix # outils jetbrains + ./applications/developpement-rust.nix # développer en rust + ./applications/edition-musique.nix # modifier les fichiers musicaux + ./applications/edition-photo.nix # modifier les photos & assimilé + ./applications/edition-video.nix # modifier les vidéos + ./applications/jeux.nix # jouer, tout simplement ;) + ./configuration/auto-upgrade.nix # mise à jour automatique du système + ./configuration/awesome.nix # pour le gestionaire de fenêtres awesome + ./configuration/laptop.nix # appli & configuration adaptée pour un PC portable + ./configuration/swap.nix # définition de l'utilisation du swap + ./services/print.nix # configuration de base de cups + ./services/docker.nix # activer docker + ./services/elasticsearch.nix # service de stockage et recher de données + ./services/hoogle.nix # service hoogle pour haskell + ./services/hydra-build.nix # service de construction de paquet. -> la machine compile des paquets + ./services/hydra-core.nix # service pour l'instance d'hydra + ./services/kibana.nix # service de visualisation de données stockées dans elasticsearch + ./services/locate.nix # service locate + ./services/virtualbox.nix # activer virtualbox + ./services/xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad + + ## if isDesktop + ./applications/adminsys.nix # pour gérer le système dans son ensemble et les services + ./applications/bureau.nix # éléments pour avoir un environement graphique minimal utilisable + ./applications/bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) + ./applications/client-internet.nix # pour accéder & utiliser des ressources par le réseau + ./applications/multimedia.nix # pour gérer le son, l'image et la vidéo + ./applications/network.nix # de gestion, de diagnostique & surveillance réseau + ./applications/securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) + ./services/pulseaudio.nix # activation du serveur audio + ./services/scanner.nix # utilisation d'un scanner + ./services/x11.nix # activation du serveur graphique X ]; } diff --git a/public/configuration/auto-upgrade.nix b/configuration/auto-upgrade.nix similarity index 100% rename from public/configuration/auto-upgrade.nix rename to configuration/auto-upgrade.nix diff --git a/public/configuration/awesome.nix b/configuration/awesome.nix similarity index 100% rename from public/configuration/awesome.nix rename to configuration/awesome.nix diff --git a/public/configuration/bash-interactive-init.sh b/configuration/bash-interactive-init.sh similarity index 100% rename from public/configuration/bash-interactive-init.sh rename to configuration/bash-interactive-init.sh diff --git a/public/configuration/bash-prompt.sh b/configuration/bash-prompt.sh similarity index 100% rename from public/configuration/bash-prompt.sh rename to configuration/bash-prompt.sh diff --git a/public/configuration/environment.nix b/configuration/environment.nix similarity index 100% rename from public/configuration/environment.nix rename to configuration/environment.nix diff --git a/public/configuration/gitconfig b/configuration/gitconfig similarity index 100% rename from public/configuration/gitconfig rename to configuration/gitconfig diff --git a/public/configuration/laptop.nix b/configuration/laptop.nix similarity index 100% rename from public/configuration/laptop.nix rename to configuration/laptop.nix diff --git a/public/configuration/localisation.nix b/configuration/localisation.nix similarity index 100% rename from public/configuration/localisation.nix rename to configuration/localisation.nix diff --git a/public/configuration/network-ipv6.nix b/configuration/network-ipv6.nix similarity index 100% rename from public/configuration/network-ipv6.nix rename to configuration/network-ipv6.nix diff --git a/public/configuration/network.nix b/configuration/network.nix similarity index 100% rename from public/configuration/network.nix rename to configuration/network.nix diff --git a/public/configuration/swap.nix b/configuration/swap.nix similarity index 100% rename from public/configuration/swap.nix rename to configuration/swap.nix diff --git a/public/configuration/udev.nix b/configuration/udev.nix similarity index 100% rename from public/configuration/udev.nix rename to configuration/udev.nix diff --git a/public/public.nix b/public/public.nix deleted file mode 100644 index afc3f45..0000000 --- a/public/public.nix +++ /dev/null @@ -1,65 +0,0 @@ -{ config, lib, pkgs, ... }: - -let - #inherit (lib) mkIf mkMerge mkThenElse; - cfg = config.r6d.config-generator; - computers = config.r6d.computers; - profiles = config.r6d.profiles; -in - -{ - imports = [ - # installées systématiquement - ./applications/default-applications.nix - ./configuration/environment.nix - ./configuration/localisation.nix - ./configuration/network.nix - #./configuration/network-ipv6.nix - ./configuration/udev.nix - ./services/haveged.nix - ./services/monitoring-munin.nix - ./services/monitoring-smokeping.nix - ./services/ssh.nix - - # commandées par config-generator - ## option de configuration spécifique - ./applications/cao.nix # de conception assisté par ordinateur & modélisation - ./applications/cartographie.nix # manipuler les données géographiques & cartes - ./applications/developpement.nix # développer des programmes/scripts - ./applications/developpement-elm.nix # développer en elm - ./applications/developpement-haskell.nix # développer en haskell - ./applications/developpement-java.nix # développer en java - ./applications/developpement-jetbrains.nix # outils jetbrains - ./applications/developpement-rust.nix # développer en rust - ./applications/edition-musique.nix # modifier les fichiers musicaux - ./applications/edition-photo.nix # modifier les photos & assimilé - ./applications/edition-video.nix # modifier les vidéos - ./applications/jeux.nix # jouer, tout simplement ;) - ./configuration/auto-upgrade.nix # mise à jour automatique du système - ./configuration/awesome.nix # pour le gestionaire de fenêtres awesome - ./configuration/laptop.nix # appli & configuration adaptée pour un PC portable - ./configuration/swap.nix # définition de l'utilisation du swap - ./services/print.nix # configuration de base de cups - ./services/docker.nix # activer docker - ./services/elasticsearch.nix # service de stockage et recher de données - ./services/hoogle.nix # service hoogle pour haskell - ./services/hydra-build.nix # service de construction de paquet. -> la machine compile des paquets - ./services/hydra-core.nix # service pour l'instance d'hydra - ./services/kibana.nix # service de visualisation de données stockées dans elasticsearch - ./services/locate.nix # service locate - ./services/virtualbox.nix # activer virtualbox - ./services/xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad - - ## if isDesktop - ./applications/adminsys.nix # pour gérer le système dans son ensemble et les services - ./applications/bureau.nix # éléments pour avoir un environement graphique minimal utilisable - ./applications/bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) - ./applications/client-internet.nix # pour accéder & utiliser des ressources par le réseau - ./applications/multimedia.nix # pour gérer le son, l'image et la vidéo - ./applications/network.nix # de gestion, de diagnostique & surveillance réseau - ./applications/securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) - ./services/pulseaudio.nix # activation du serveur audio - ./services/scanner.nix # utilisation d'un scanner - ./services/x11.nix # activation du serveur graphique X - ]; -} diff --git a/public/services/docker.nix b/services/docker.nix similarity index 100% rename from public/services/docker.nix rename to services/docker.nix diff --git a/public/services/elasticsearch.nix b/services/elasticsearch.nix similarity index 100% rename from public/services/elasticsearch.nix rename to services/elasticsearch.nix diff --git a/public/services/haveged.nix b/services/haveged.nix similarity index 100% rename from public/services/haveged.nix rename to services/haveged.nix diff --git a/public/services/hoogle.nix b/services/hoogle.nix similarity index 100% rename from public/services/hoogle.nix rename to services/hoogle.nix diff --git a/public/services/hydra-build.nix b/services/hydra-build.nix similarity index 100% rename from public/services/hydra-build.nix rename to services/hydra-build.nix diff --git a/public/services/hydra-core.nix b/services/hydra-core.nix similarity index 100% rename from public/services/hydra-core.nix rename to services/hydra-core.nix diff --git a/public/services/kibana.nix b/services/kibana.nix similarity index 100% rename from public/services/kibana.nix rename to services/kibana.nix diff --git a/public/services/locate.nix b/services/locate.nix similarity index 100% rename from public/services/locate.nix rename to services/locate.nix diff --git a/public/services/monitoring-munin.nix b/services/monitoring-munin.nix similarity index 100% rename from public/services/monitoring-munin.nix rename to services/monitoring-munin.nix diff --git a/public/services/monitoring-smokeping.nix b/services/monitoring-smokeping.nix similarity index 100% rename from public/services/monitoring-smokeping.nix rename to services/monitoring-smokeping.nix diff --git a/public/services/munin-muttrc b/services/munin-muttrc similarity index 100% rename from public/services/munin-muttrc rename to services/munin-muttrc diff --git a/public/services/print.nix b/services/print.nix similarity index 100% rename from public/services/print.nix rename to services/print.nix diff --git a/public/services/pulseaudio.nix b/services/pulseaudio.nix similarity index 100% rename from public/services/pulseaudio.nix rename to services/pulseaudio.nix diff --git a/public/services/scanner.nix b/services/scanner.nix similarity index 100% rename from public/services/scanner.nix rename to services/scanner.nix diff --git a/public/services/ssh.nix b/services/ssh.nix similarity index 100% rename from public/services/ssh.nix rename to services/ssh.nix diff --git a/public/services/virtualbox.nix b/services/virtualbox.nix similarity index 100% rename from public/services/virtualbox.nix rename to services/virtualbox.nix diff --git a/public/services/x11.nix b/services/x11.nix similarity index 100% rename from public/services/x11.nix rename to services/x11.nix diff --git a/public/services/xmonad/xmobarrc b/services/xmonad/xmobarrc similarity index 100% rename from public/services/xmonad/xmobarrc rename to services/xmonad/xmobarrc diff --git a/public/services/xmonad/xmonad.hs b/services/xmonad/xmonad.hs similarity index 100% rename from public/services/xmonad/xmonad.hs rename to services/xmonad/xmonad.hs diff --git a/public/services/xmonad/xmonad.nix b/services/xmonad/xmonad.nix similarity index 100% rename from public/services/xmonad/xmonad.nix rename to services/xmonad/xmonad.nix From 50085c2961d058fc106549cb3126251e067295fe Mon Sep 17 00:00:00 2001 From: Yves Dubromelle Date: Sat, 25 Mar 2017 00:46:59 +0100 Subject: [PATCH 40/45] =?UTF-8?q?r=C3=A9partition=20des=20imports=20dans?= =?UTF-8?q?=20le=20niveau=201=20de=20sous-dossiers?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- applications/default.nix | 39 +++++++++++++++++++++++++++ base.nix | 56 +++------------------------------------ config-generator.nix | 1 + configuration/default.nix | 27 +++++++++++++++++++ services/default.nix | 36 +++++++++++++++++++++++++ 5 files changed, 107 insertions(+), 52 deletions(-) create mode 100644 applications/default.nix create mode 100644 configuration/default.nix create mode 100644 services/default.nix diff --git a/applications/default.nix b/applications/default.nix new file mode 100644 index 0000000..315933b --- /dev/null +++ b/applications/default.nix @@ -0,0 +1,39 @@ +{ config, lib, pkgs, ... }: + +let + #inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +{ + imports = [ + # installées systématiquement + ./default-applications.nix + + # commandées par config-generator + ## option de configuration spécifique + ./cao.nix # de conception assisté par ordinateur & modélisation + ./cartographie.nix # manipuler les données géographiques & cartes + ./developpement.nix # développer des programmes/scripts + ./developpement-elm.nix # développer en elm + ./developpement-haskell.nix # développer en haskell + ./developpement-java.nix # développer en java + ./developpement-jetbrains.nix # outils jetbrains + ./developpement-rust.nix # développer en rust + ./edition-musique.nix # modifier les fichiers musicaux + ./edition-photo.nix # modifier les photos & assimilé + ./edition-video.nix # modifier les vidéos + ./jeux.nix # jouer, tout simplement ;) + + ## if isDesktop + ./adminsys.nix # pour gérer le système dans son ensemble et les services + ./bureau.nix # éléments pour avoir un environement graphique minimal utilisable + ./bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) + ./client-internet.nix # pour accéder & utiliser des ressources par le réseau + ./multimedia.nix # pour gérer le son, l'image et la vidéo + ./network.nix # de gestion, de diagnostique & surveillance réseau + ./securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) + ]; +} diff --git a/base.nix b/base.nix index 93e894a..ac2d8d9 100644 --- a/base.nix +++ b/base.nix @@ -12,57 +12,9 @@ in # moulinette de configuration ./config-generator.nix - # installées systématiquement - ./applications/default-applications.nix - ./configuration/environment.nix - ./configuration/localisation.nix - ./configuration/network.nix - #./configuration/network-ipv6.nix - ./configuration/udev.nix - ./services/haveged.nix - ./services/monitoring-munin.nix - ./services/monitoring-smokeping.nix - ./services/ssh.nix - - # commandées par config-generator - ## option de configuration spécifique - ./applications/cao.nix # de conception assisté par ordinateur & modélisation - ./applications/cartographie.nix # manipuler les données géographiques & cartes - ./applications/developpement.nix # développer des programmes/scripts - ./applications/developpement-elm.nix # développer en elm - ./applications/developpement-haskell.nix # développer en haskell - ./applications/developpement-java.nix # développer en java - ./applications/developpement-jetbrains.nix # outils jetbrains - ./applications/developpement-rust.nix # développer en rust - ./applications/edition-musique.nix # modifier les fichiers musicaux - ./applications/edition-photo.nix # modifier les photos & assimilé - ./applications/edition-video.nix # modifier les vidéos - ./applications/jeux.nix # jouer, tout simplement ;) - ./configuration/auto-upgrade.nix # mise à jour automatique du système - ./configuration/awesome.nix # pour le gestionaire de fenêtres awesome - ./configuration/laptop.nix # appli & configuration adaptée pour un PC portable - ./configuration/swap.nix # définition de l'utilisation du swap - ./services/print.nix # configuration de base de cups - ./services/docker.nix # activer docker - ./services/elasticsearch.nix # service de stockage et recher de données - ./services/hoogle.nix # service hoogle pour haskell - ./services/hydra-build.nix # service de construction de paquet. -> la machine compile des paquets - ./services/hydra-core.nix # service pour l'instance d'hydra - ./services/kibana.nix # service de visualisation de données stockées dans elasticsearch - ./services/locate.nix # service locate - ./services/virtualbox.nix # activer virtualbox - ./services/xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad - - ## if isDesktop - ./applications/adminsys.nix # pour gérer le système dans son ensemble et les services - ./applications/bureau.nix # éléments pour avoir un environement graphique minimal utilisable - ./applications/bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) - ./applications/client-internet.nix # pour accéder & utiliser des ressources par le réseau - ./applications/multimedia.nix # pour gérer le son, l'image et la vidéo - ./applications/network.nix # de gestion, de diagnostique & surveillance réseau - ./applications/securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) - ./services/pulseaudio.nix # activation du serveur audio - ./services/scanner.nix # utilisation d'un scanner - ./services/x11.nix # activation du serveur graphique X + # subfolders + ./applications/default.nix + ./configuration/default.nix + ./services/default.nix ]; } diff --git a/config-generator.nix b/config-generator.nix index 1795905..dd76969 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -12,6 +12,7 @@ in # TODO camel case partout # TODO everything in english # TODO sortir ce qui est privé +# TODO portage du système d'annuaire de machines de capgemini ###### interface options = { diff --git a/configuration/default.nix b/configuration/default.nix new file mode 100644 index 0000000..e58bd01 --- /dev/null +++ b/configuration/default.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 + +{ + imports = [ + + # installées systématiquement + ./environment.nix + ./localisation.nix + ./network.nix + #./network-ipv6.nix + ./udev.nix + + # commandées par config-generator + ## option de configuration spécifique + ./auto-upgrade.nix # mise à jour automatique du système + ./awesome.nix # pour le gestionaire de fenêtres awesome + ./laptop.nix # appli & configuration adaptée pour un PC portable + ./swap.nix # définition de l'utilisation du swap + ]; +} diff --git a/services/default.nix b/services/default.nix new file mode 100644 index 0000000..88e70ff --- /dev/null +++ b/services/default.nix @@ -0,0 +1,36 @@ +{ config, lib, pkgs, ... }: + +let + #inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +{ + imports = [ + # installées systématiquement + ./haveged.nix + ./monitoring-munin.nix + ./monitoring-smokeping.nix + ./ssh.nix + + # commandées par config-generator + ## option de configuration spécifique + ./print.nix # configuration de base de cups + ./docker.nix # activer docker + ./elasticsearch.nix # service de stockage et recher de données + ./hoogle.nix # service hoogle pour haskell + ./hydra-build.nix # service de construction de paquet. -> la machine compile des paquets + ./hydra-core.nix # service pour l'instance d'hydra + ./kibana.nix # service de visualisation de données stockées dans elasticsearch + ./locate.nix # service locate + ./virtualbox.nix # activer virtualbox + ./xmonad/xmonad.nix # pour le gestionaire de fenêtre xmonad + + ## if isDesktop + ./pulseaudio.nix # activation du serveur audio + ./scanner.nix # utilisation d'un scanner + ./x11.nix # activation du serveur graphique X + ]; +} From 37ae56a380b2dfc771597c901bab1815032bf2c1 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sat, 25 Mar 2017 12:45:05 +0100 Subject: [PATCH 41/45] ajout option graphical + affectation pour workstation et neonomade --- config-generator.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/config-generator.nix b/config-generator.nix index dd76969..6cd21a0 100644 --- a/config-generator.nix +++ b/config-generator.nix @@ -50,6 +50,7 @@ in edition-video = mkEnableOption "Profil pour la création/édition de video."; elasticsearch = mkEnableOption "Profil pour activer le service elasticsearch."; fail2ban = mkEnableOption "Profil pour activer Fail2ban."; + graphical = mkEnableOption "Profil pour activer les applications graphgiques."; hydra-builder = mkEnableOption "Profil pour une machine qui compile pour hydra."; hydra-core = mkEnableOption "Profil pour un serveur hydra."; kibana = mkEnableOption "Profil pour activer le service kibana."; @@ -147,6 +148,7 @@ in r6d.config-generator = { docker = true; + graphical = true; }; }) @@ -327,6 +329,7 @@ in r6d.config-generator = { laptop = true; + graphical = true; scanner = true; tincAddress = "192.168.12.7/24"; tincExtraConfig = '' From bda5db0417ba56d19b2f14918db6bebbeab7dede Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sat, 25 Mar 2017 12:45:33 +0100 Subject: [PATCH 42/45] =?UTF-8?q?d=C3=A9coupages=20des=20applications=20en?= =?UTF-8?q?=20"graphical"=20et=20"terminal"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- applications/graphical/adminsys.nix | 18 +++++++++ applications/{ => graphical}/bureau.nix | 0 applications/graphical/bureautique.nix | 37 ++++++++++++++++++ applications/{ => graphical}/cao.nix | 2 +- applications/{ => graphical}/cartographie.nix | 4 +- .../{ => graphical}/client-internet.nix | 9 +---- .../graphical/default-applications.nix | 15 +++++++ applications/{ => graphical}/default.nix | 0 applications/graphical/developpement-elm.nix | 25 ++++++++++++ .../graphical/developpement-haskell.nix | 18 +++++++++ applications/graphical/developpement-java.nix | 17 ++++++++ .../developpement-jetbrains.nix | 2 +- applications/graphical/developpement-rust.nix | 15 +++++++ .../{ => graphical}/developpement.nix | 13 +------ .../{ => graphical}/edition-musique.nix | 2 +- .../{ => graphical}/edition-photo.nix | 9 +---- applications/graphical/edition-video.nix | 18 +++++++++ applications/graphical/jeux.nix | 17 ++++++++ applications/{ => graphical}/multimedia.nix | 8 +--- applications/graphical/network.nix | 17 ++++++++ applications/graphical/securite.nix | 17 ++++++++ applications/{ => terminal}/adminsys.nix | 8 ---- applications/terminal/bureau.nix | 17 ++++++++ applications/{ => terminal}/bureautique.nix | 21 ---------- applications/terminal/cao.nix | 15 +++++++ applications/terminal/cartographie.nix | 18 +++++++++ applications/terminal/client-internet.nix | 24 ++++++++++++ .../{ => terminal}/default-applications.nix | 2 +- applications/terminal/default.nix | 39 +++++++++++++++++++ .../{ => terminal}/developpement-elm.nix | 0 .../{ => terminal}/developpement-haskell.nix | 1 - .../{ => terminal}/developpement-java.nix | 3 -- .../terminal/developpement-jetbrains.nix | 15 +++++++ .../{ => terminal}/developpement-rust.nix | 0 applications/terminal/developpement.nix | 29 ++++++++++++++ applications/terminal/edition-musique.nix | 15 +++++++ applications/terminal/edition-photo.nix | 21 ++++++++++ applications/{ => terminal}/edition-video.nix | 3 -- applications/{ => terminal}/jeux.nix | 2 - applications/terminal/multimedia.nix | 20 ++++++++++ applications/{ => terminal}/network.nix | 1 - applications/{ => terminal}/securite.nix | 3 -- applications/{ => terminal}/vim.nix | 0 applications/{ => terminal}/vimrc | 0 base.nix | 3 +- 45 files changed, 439 insertions(+), 84 deletions(-) create mode 100644 applications/graphical/adminsys.nix rename applications/{ => graphical}/bureau.nix (100%) create mode 100644 applications/graphical/bureautique.nix rename applications/{ => graphical}/cao.nix (92%) rename applications/{ => graphical}/cartographie.nix (83%) rename applications/{ => graphical}/client-internet.nix (80%) create mode 100644 applications/graphical/default-applications.nix rename applications/{ => graphical}/default.nix (100%) create mode 100644 applications/graphical/developpement-elm.nix create mode 100644 applications/graphical/developpement-haskell.nix create mode 100644 applications/graphical/developpement-java.nix rename applications/{ => graphical}/developpement-jetbrains.nix (87%) create mode 100644 applications/graphical/developpement-rust.nix rename applications/{ => graphical}/developpement.nix (72%) rename applications/{ => graphical}/edition-musique.nix (90%) rename applications/{ => graphical}/edition-photo.nix (77%) create mode 100644 applications/graphical/edition-video.nix create mode 100644 applications/graphical/jeux.nix rename applications/{ => graphical}/multimedia.nix (74%) create mode 100644 applications/graphical/network.nix create mode 100644 applications/graphical/securite.nix rename applications/{ => terminal}/adminsys.nix (85%) create mode 100644 applications/terminal/bureau.nix rename applications/{ => terminal}/bureautique.nix (59%) create mode 100644 applications/terminal/cao.nix create mode 100644 applications/terminal/cartographie.nix create mode 100644 applications/terminal/client-internet.nix rename applications/{ => terminal}/default-applications.nix (99%) create mode 100644 applications/terminal/default.nix rename applications/{ => terminal}/developpement-elm.nix (100%) rename applications/{ => terminal}/developpement-haskell.nix (93%) rename applications/{ => terminal}/developpement-java.nix (88%) create mode 100644 applications/terminal/developpement-jetbrains.nix rename applications/{ => terminal}/developpement-rust.nix (100%) create mode 100644 applications/terminal/developpement.nix create mode 100644 applications/terminal/edition-musique.nix create mode 100644 applications/terminal/edition-photo.nix rename applications/{ => terminal}/edition-video.nix (85%) rename applications/{ => terminal}/jeux.nix (90%) create mode 100644 applications/terminal/multimedia.nix rename applications/{ => terminal}/network.nix (98%) rename applications/{ => terminal}/securite.nix (73%) rename applications/{ => terminal}/vim.nix (100%) rename applications/{ => terminal}/vimrc (100%) diff --git a/applications/graphical/adminsys.nix b/applications/graphical/adminsys.nix new file mode 100644 index 0000000..7e5c66a --- /dev/null +++ b/applications/graphical/adminsys.nix @@ -0,0 +1,18 @@ +{ 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.graphical { + + # Paquets + environment.systemPackages = with pkgs; [ + # Gestion de FS + parted # Gestion graphique de partitions + unetbootin # création de clefs USB bootables + ]; +} diff --git a/applications/bureau.nix b/applications/graphical/bureau.nix similarity index 100% rename from applications/bureau.nix rename to applications/graphical/bureau.nix diff --git a/applications/graphical/bureautique.nix b/applications/graphical/bureautique.nix new file mode 100644 index 0000000..a826720 --- /dev/null +++ b/applications/graphical/bureautique.nix @@ -0,0 +1,37 @@ +{ 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.officeSuite && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + # Bureautique + gnumeric # tableur + #kde4.ksnapshot# réalisation de capture d'écran + + ## Cartes mentales + freemind + + ## Diagrammes & Schémas + dia # dessin & schéma technique + + ## Editeur de texte + #lyx # surcouche WISIWIM à LaTeX + #focuswriter # outil pour l'écriture + textadept # un éditeur de texte facile pour copier-coller graphique + #zim # outil de prise de notes, wiki de bureau + + ## Visionneuse + #kde5.okular # pdf + mcomix # livres (cbr, liste d'images), gestion d'une bibliothèque + pdfpc # pdf + qpdfview # pdf + gqview # visionneuse image & gestion basique de collection + ]; +} diff --git a/applications/cao.nix b/applications/graphical/cao.nix similarity index 92% rename from applications/cao.nix rename to applications/graphical/cao.nix index 6d13c2f..3be3ed7 100644 --- a/applications/cao.nix +++ b/applications/graphical/cao.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf cfg.conception-assistee { +mkIf (cfg.conception-assistee && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ diff --git a/applications/cartographie.nix b/applications/graphical/cartographie.nix similarity index 83% rename from applications/cartographie.nix rename to applications/graphical/cartographie.nix index 4e41b18..c2c91b9 100644 --- a/applications/cartographie.nix +++ b/applications/graphical/cartographie.nix @@ -7,13 +7,11 @@ let profiles = config.r6d.profiles; in -mkIf cfg.cartographie { +mkIf (cfg.cartographie && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ # Gestion de données géographiques - expat - gpsbabel # pour convettir les données des GPS josm # outil de contribution à OpenStreetMap #qgis # client lourd de manipulation de données géographiques viking # analyse de topo, gestion de données GPS diff --git a/applications/client-internet.nix b/applications/graphical/client-internet.nix similarity index 80% rename from applications/client-internet.nix rename to applications/graphical/client-internet.nix index c615d04..e6711eb 100644 --- a/applications/client-internet.nix +++ b/applications/graphical/client-internet.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in # TODO: ménage -mkIf cfg.internetSuite { +mkIf (cfg.internetSuite && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ @@ -17,18 +17,12 @@ environment.systemPackages = with pkgs; [ chromium firefox - ## Réseaux sociaux - #python27Packages.turses # client twitter en ncurse - python27Packages.rainbowstream # client twitter en console - rtv # client reddit en console - ## Mail & Discussion (texte, audio) clawsMail hexchat quassel quasselClient mumble - mutt pidgin thunderbird @@ -53,5 +47,4 @@ environment.systemPackages = with pkgs; [ #nixpkgs.config.permittedInsecurePackages = [ # "webkitgtk-2.4.11" # pour que le plugin fancy de claws-mail fonctionne #]; - } diff --git a/applications/graphical/default-applications.nix b/applications/graphical/default-applications.nix new file mode 100644 index 0000000..34478cb --- /dev/null +++ b/applications/graphical/default-applications.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, ... }: + +let + inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +mkIf (true && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + ]; +} diff --git a/applications/default.nix b/applications/graphical/default.nix similarity index 100% rename from applications/default.nix rename to applications/graphical/default.nix diff --git a/applications/graphical/developpement-elm.nix b/applications/graphical/developpement-elm.nix new file mode 100644 index 0000000..ab11ef5 --- /dev/null +++ b/applications/graphical/developpement-elm.nix @@ -0,0 +1,25 @@ +{ 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.developpement-elm && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + ]; + + # Services + + # Réseau + networking.firewall = { + allowedTCPPorts = [ + ]; + allowedUDPPorts = [ + ]; + }; +} diff --git a/applications/graphical/developpement-haskell.nix b/applications/graphical/developpement-haskell.nix new file mode 100644 index 0000000..f118036 --- /dev/null +++ b/applications/graphical/developpement-haskell.nix @@ -0,0 +1,18 @@ +{ 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.developpement-haskell && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + ] ++ (with pkgs.haskellPackages; [ + # Haskell lib + threadscope # visualisation des threads (.eventlog) + ]); +} diff --git a/applications/graphical/developpement-java.nix b/applications/graphical/developpement-java.nix new file mode 100644 index 0000000..6e91238 --- /dev/null +++ b/applications/graphical/developpement-java.nix @@ -0,0 +1,17 @@ +{ 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.developpement-java && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + # IDE + idea.idea-community # IntelliJ IDEA + ]; +} diff --git a/applications/developpement-jetbrains.nix b/applications/graphical/developpement-jetbrains.nix similarity index 87% rename from applications/developpement-jetbrains.nix rename to applications/graphical/developpement-jetbrains.nix index 3c7e259..3901bb3 100644 --- a/applications/developpement-jetbrains.nix +++ b/applications/graphical/developpement-jetbrains.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf cfg.jetbrains-licensed { +mkIf (cfg.jetbrains-licensed && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ diff --git a/applications/graphical/developpement-rust.nix b/applications/graphical/developpement-rust.nix new file mode 100644 index 0000000..5a64ba1 --- /dev/null +++ b/applications/graphical/developpement-rust.nix @@ -0,0 +1,15 @@ +{ 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.developpement-rust && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + ]; +} diff --git a/applications/developpement.nix b/applications/graphical/developpement.nix similarity index 72% rename from applications/developpement.nix rename to applications/graphical/developpement.nix index f2fb4c7..2a07dd5 100644 --- a/applications/developpement.nix +++ b/applications/graphical/developpement.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf cfg.developpement { +mkIf (cfg.developpement && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ @@ -15,29 +15,18 @@ mkIf cfg.developpement { pgadmin # interface d'administration de postgres sqlitebrowser # interface d'administration de sqlite - # C / C++ - gcc # pour les appels depuis les scripts - # Documentation #zeal # consulter la documentation hors ligne # Gestion des sources - cloc # outil pour compter les lignes de code source - git # déjà présent dans "base" #gitg # interface pour utiliser git (historique, commit) gitstats # génère un site web statique avec des statistiques gitAndTools.gitFull # pour gitk git-cola # interface pour utiliser git (historique, commit) - mercurial - subversion - - # Mono - #mono46 # interpréteur .NET ## Visualisation & outils de diff #gource # visualisation en mouvement de l'historique git meld # outil de comparaison graphique - #vbindiff # diff de fichier hexadecimaux avec vim # Editeur texte atom diff --git a/applications/edition-musique.nix b/applications/graphical/edition-musique.nix similarity index 90% rename from applications/edition-musique.nix rename to applications/graphical/edition-musique.nix index 7e9c67d..5f692f7 100644 --- a/applications/edition-musique.nix +++ b/applications/graphical/edition-musique.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -mkIf cfg.edition-musique { +mkIf (cfg.edition-musique && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ diff --git a/applications/edition-photo.nix b/applications/graphical/edition-photo.nix similarity index 77% rename from applications/edition-photo.nix rename to applications/graphical/edition-photo.nix index 67ba57a..cdda5de 100644 --- a/applications/edition-photo.nix +++ b/applications/graphical/edition-photo.nix @@ -7,18 +7,13 @@ let profiles = config.r6d.profiles; in -mkIf cfg.edition-photo { +mkIf (cfg.edition-photo && cfg.graphical) { # Paquets -environment.systemPackages = with pkgs; [ - # Méta données - exif - exiftags - + environment.systemPackages = with pkgs; [ # Retouche, modification & dessin vectoriel gimp # logiciel d'édition/montage/retouche photo inkscape # édition d'image vectorielle (svg & autre) - imagemagick # modification image en CLI #rawtherapee # développemen de photos en RAW # TEST d'outil de gestion de catalogue de photos diff --git a/applications/graphical/edition-video.nix b/applications/graphical/edition-video.nix new file mode 100644 index 0000000..3314453 --- /dev/null +++ b/applications/graphical/edition-video.nix @@ -0,0 +1,18 @@ +{ 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.edition-video && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + # Vidéo + #cinelerra # editeur video + pitivi # montage vidéo + ]; +} diff --git a/applications/graphical/jeux.nix b/applications/graphical/jeux.nix new file mode 100644 index 0000000..8ecb8da --- /dev/null +++ b/applications/graphical/jeux.nix @@ -0,0 +1,17 @@ +{ 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.jeux && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + # Jeux + urbanterror + ]; +} diff --git a/applications/multimedia.nix b/applications/graphical/multimedia.nix similarity index 74% rename from applications/multimedia.nix rename to applications/graphical/multimedia.nix index d6188bc..1124636 100644 --- a/applications/multimedia.nix +++ b/applications/graphical/multimedia.nix @@ -8,19 +8,13 @@ let in # TODO ranger le spécifique pulseaudio -mkIf cfg.multimediaSuite { +mkIf (cfg.multimediaSuite && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ - # Multimedia - ## Audio - beep - cmus # lecteur audio console - espeak # synthèse vocale paprefs # préferences pulseaudio pavucontrol # mixer pulseaudio - vorbis-tools # codec ## Video smplayer # lecteur vidéo diff --git a/applications/graphical/network.nix b/applications/graphical/network.nix new file mode 100644 index 0000000..48b4645 --- /dev/null +++ b/applications/graphical/network.nix @@ -0,0 +1,17 @@ +{ config, lib, pkgs, ... }: + +let + inherit (lib) mkIf; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +mkIf (true && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + ## Diagnostic + #wireshark + ]; +} diff --git a/applications/graphical/securite.nix b/applications/graphical/securite.nix new file mode 100644 index 0000000..461e836 --- /dev/null +++ b/applications/graphical/securite.nix @@ -0,0 +1,17 @@ +{ 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.securitySuite && cfg.graphical) { + + # Paquets + environment.systemPackages = with pkgs; [ + gnome3.seahorse # gestionnaire graphique de clef GPG + #yubikey-personalization-gui # utilisation de la clef Yubikey + ]; +} diff --git a/applications/adminsys.nix b/applications/terminal/adminsys.nix similarity index 85% rename from applications/adminsys.nix rename to applications/terminal/adminsys.nix index b112837..723cfc5 100644 --- a/applications/adminsys.nix +++ b/applications/terminal/adminsys.nix @@ -50,13 +50,5 @@ mkIf true { detox # The detox utility renames files to make them easier to work with. duff # outil de recherche de fichiers en doublons rdfind # recherche de fichiers doublons pour remplacement par hard/soft link - - (mkIf profiles.isDesktopEnvironment - ## Gestion de FS - gparted # Gestion graphique de partitions - ) - (mkIf profiles.isDesktopEnvironment - unetbootin # création de clefs USB bootables - ) ]; } diff --git a/applications/terminal/bureau.nix b/applications/terminal/bureau.nix new file mode 100644 index 0000000..b72fbec --- /dev/null +++ b/applications/terminal/bureau.nix @@ -0,0 +1,17 @@ +{ config, lib, pkgs, ... }: + +let + inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +mkIf true { + + # Paquets + environment.systemPackages = with pkgs; [ + ## Manipulation de fichier + vifm # gestionnaire de fichiers basé sur VIM (console) + ]; +} diff --git a/applications/bureautique.nix b/applications/terminal/bureautique.nix similarity index 59% rename from applications/bureautique.nix rename to applications/terminal/bureautique.nix index 1feb95c..bb2e5f4 100644 --- a/applications/bureautique.nix +++ b/applications/terminal/bureautique.nix @@ -13,31 +13,10 @@ mkIf cfg.officeSuite { environment.systemPackages = with pkgs; [ # Bureautique aspell aspellDicts.fr # correction d'ortographe - gnumeric # tableur - #kde4.ksnapshot# réalisation de capture d'écran # Gestion de tâche taskwarrior # gestionnaire de tâches en console - ## Cartes mentales - freemind - - ## Diagrammes & Schémas - dia # dessin & schéma technique - - ## Editeur de texte - #lyx # surcouche WISIWIM à LaTeX - #focuswriter # outil pour l'écriture - textadept # un éditeur de texte facile pour copier-coller graphique - #zim # outil de prise de notes, wiki de bureau - - ## Visionneuse - #kde5.okular # pdf - mcomix # livres (cbr, liste d'images), gestion d'une bibliothèque - pdfpc # pdf - qpdfview # pdf - gqview # visionneuse image & gestion basique de collection - ## Convertisseurs (texte -> ) gnuplot # générateur de graphes à partir de données numériques graphviz # dot, neato : traçage de graphes (carré, rond) diff --git a/applications/terminal/cao.nix b/applications/terminal/cao.nix new file mode 100644 index 0000000..ac5da71 --- /dev/null +++ b/applications/terminal/cao.nix @@ -0,0 +1,15 @@ +{ 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.conception-assistee { + + # Paquets + environment.systemPackages = with pkgs; [ + ]; +} diff --git a/applications/terminal/cartographie.nix b/applications/terminal/cartographie.nix new file mode 100644 index 0000000..b7c80c7 --- /dev/null +++ b/applications/terminal/cartographie.nix @@ -0,0 +1,18 @@ +{ 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.cartographie { + + # Paquets + environment.systemPackages = with pkgs; [ + # Gestion de données géographiques + expat + gpsbabel # pour convertir les données des GPS + ]; +} diff --git a/applications/terminal/client-internet.nix b/applications/terminal/client-internet.nix new file mode 100644 index 0000000..146b9f0 --- /dev/null +++ b/applications/terminal/client-internet.nix @@ -0,0 +1,24 @@ +{ config, lib, pkgs, ... }: + +let + inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in +# TODO: ménage +mkIf cfg.internetSuite { + +# Paquets +environment.systemPackages = with pkgs; [ + # Clients Internet + + ## Réseaux sociaux + #python27Packages.turses # client twitter en ncurse + python27Packages.rainbowstream # client twitter en console + rtv # client reddit en console + + ## Mail & Discussion (texte, audio) + mutt + ]; +} diff --git a/applications/default-applications.nix b/applications/terminal/default-applications.nix similarity index 99% rename from applications/default-applications.nix rename to applications/terminal/default-applications.nix index c05b730..598975e 100644 --- a/applications/default-applications.nix +++ b/applications/terminal/default-applications.nix @@ -7,7 +7,7 @@ let profiles = config.r6d.profiles; in -{ +mkIf true { # Paquets environment.systemPackages = with pkgs; [ diff --git a/applications/terminal/default.nix b/applications/terminal/default.nix new file mode 100644 index 0000000..315933b --- /dev/null +++ b/applications/terminal/default.nix @@ -0,0 +1,39 @@ +{ config, lib, pkgs, ... }: + +let + #inherit (lib) mkIf mkMerge mkThenElse; + cfg = config.r6d.config-generator; + computers = config.r6d.computers; + profiles = config.r6d.profiles; +in + +{ + imports = [ + # installées systématiquement + ./default-applications.nix + + # commandées par config-generator + ## option de configuration spécifique + ./cao.nix # de conception assisté par ordinateur & modélisation + ./cartographie.nix # manipuler les données géographiques & cartes + ./developpement.nix # développer des programmes/scripts + ./developpement-elm.nix # développer en elm + ./developpement-haskell.nix # développer en haskell + ./developpement-java.nix # développer en java + ./developpement-jetbrains.nix # outils jetbrains + ./developpement-rust.nix # développer en rust + ./edition-musique.nix # modifier les fichiers musicaux + ./edition-photo.nix # modifier les photos & assimilé + ./edition-video.nix # modifier les vidéos + ./jeux.nix # jouer, tout simplement ;) + + ## if isDesktop + ./adminsys.nix # pour gérer le système dans son ensemble et les services + ./bureau.nix # éléments pour avoir un environement graphique minimal utilisable + ./bureautique.nix # dédiée à la bureautique (traitement de texte, dessin, ...) + ./client-internet.nix # pour accéder & utiliser des ressources par le réseau + ./multimedia.nix # pour gérer le son, l'image et la vidéo + ./network.nix # de gestion, de diagnostique & surveillance réseau + ./securite.nix # relatives à la sécurité (chiffrement, gpg, mots de passe, ...) + ]; +} diff --git a/applications/developpement-elm.nix b/applications/terminal/developpement-elm.nix similarity index 100% rename from applications/developpement-elm.nix rename to applications/terminal/developpement-elm.nix diff --git a/applications/developpement-haskell.nix b/applications/terminal/developpement-haskell.nix similarity index 93% rename from applications/developpement-haskell.nix rename to applications/terminal/developpement-haskell.nix index 31cb3af..a402bf8 100644 --- a/applications/developpement-haskell.nix +++ b/applications/terminal/developpement-haskell.nix @@ -25,7 +25,6 @@ mkIf cfg.developpement-haskell { hlint # qualite de code, analyse statique de code + astuces & bonnes pratiques #postgrest # mapper HTTP <-> PostgreSQL stylish-haskell # qualité de code - threadscope # visualisation des threads (.eventlog) turtle # genre shell-scripting # Application perso diff --git a/applications/developpement-java.nix b/applications/terminal/developpement-java.nix similarity index 88% rename from applications/developpement-java.nix rename to applications/terminal/developpement-java.nix index ec46e14..880d0e5 100644 --- a/applications/developpement-java.nix +++ b/applications/terminal/developpement-java.nix @@ -11,9 +11,6 @@ mkIf cfg.developpement-java { # Paquets environment.systemPackages = with pkgs; [ - # IDE - idea.idea-community # IntelliJ IDEA - # Java maven openjdk diff --git a/applications/terminal/developpement-jetbrains.nix b/applications/terminal/developpement-jetbrains.nix new file mode 100644 index 0000000..de3149e --- /dev/null +++ b/applications/terminal/developpement-jetbrains.nix @@ -0,0 +1,15 @@ +{ 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.jetbrains-licensed { + + # Paquets + environment.systemPackages = with pkgs; [ + ]; +} diff --git a/applications/developpement-rust.nix b/applications/terminal/developpement-rust.nix similarity index 100% rename from applications/developpement-rust.nix rename to applications/terminal/developpement-rust.nix diff --git a/applications/terminal/developpement.nix b/applications/terminal/developpement.nix new file mode 100644 index 0000000..495df93 --- /dev/null +++ b/applications/terminal/developpement.nix @@ -0,0 +1,29 @@ +{ 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.developpement { + + # Paquets + environment.systemPackages = with pkgs; [ + # C / C++ + gcc # pour les appels depuis les scripts + + # Gestion des sources + cloc # outil pour compter les lignes de code source + git # déjà présent dans "base" + mercurial + subversion + + # Mono + #mono46 # interpréteur .NET + + ## Visualisation & outils de diff + #vbindiff # diff de fichier hexadecimaux avec vim + ]; +} diff --git a/applications/terminal/edition-musique.nix b/applications/terminal/edition-musique.nix new file mode 100644 index 0000000..f875da7 --- /dev/null +++ b/applications/terminal/edition-musique.nix @@ -0,0 +1,15 @@ +{ 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.edition-musique { + + # Paquets + environment.systemPackages = with pkgs; [ + ]; +} diff --git a/applications/terminal/edition-photo.nix b/applications/terminal/edition-photo.nix new file mode 100644 index 0000000..bc923df --- /dev/null +++ b/applications/terminal/edition-photo.nix @@ -0,0 +1,21 @@ +{ 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.edition-photo { + + # Paquets +environment.systemPackages = with pkgs; [ + # Méta données + exif + exiftags + + # Retouche, modification & dessin vectoriel + imagemagick # modification image en CLI + ]; +} diff --git a/applications/edition-video.nix b/applications/terminal/edition-video.nix similarity index 85% rename from applications/edition-video.nix rename to applications/terminal/edition-video.nix index 9cbc4b6..c3ae81c 100644 --- a/applications/edition-video.nix +++ b/applications/terminal/edition-video.nix @@ -11,9 +11,6 @@ mkIf cfg.edition-video { # Paquets environment.systemPackages = with pkgs; [ - # Vidéo - #cinelerra # editeur video - pitivi # montage vidéo ffmpeg-full # assemblage de flux audio & video en ligne de commande ]; diff --git a/applications/jeux.nix b/applications/terminal/jeux.nix similarity index 90% rename from applications/jeux.nix rename to applications/terminal/jeux.nix index 54b96b5..ae00806 100644 --- a/applications/jeux.nix +++ b/applications/terminal/jeux.nix @@ -11,7 +11,5 @@ mkIf cfg.jeux { # Paquets environment.systemPackages = with pkgs; [ - # Jeux - urbanterror ]; } diff --git a/applications/terminal/multimedia.nix b/applications/terminal/multimedia.nix new file mode 100644 index 0000000..847ffe2 --- /dev/null +++ b/applications/terminal/multimedia.nix @@ -0,0 +1,20 @@ +{ 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.multimediaSuite { + + # Paquets + environment.systemPackages = with pkgs; [ + ## Audio + beep + cmus # lecteur audio console + espeak # synthèse vocale + vorbis-tools # codec + ]; +} diff --git a/applications/network.nix b/applications/terminal/network.nix similarity index 98% rename from applications/network.nix rename to applications/terminal/network.nix index 7f82062..5432452 100644 --- a/applications/network.nix +++ b/applications/terminal/network.nix @@ -20,7 +20,6 @@ mkIf true { ## Diagnostic arp-scan nmap # outil de scan de port réseau - #wireshark whois ]; diff --git a/applications/securite.nix b/applications/terminal/securite.nix similarity index 73% rename from applications/securite.nix rename to applications/terminal/securite.nix index a11d5c5..20b4dcf 100644 --- a/applications/securite.nix +++ b/applications/terminal/securite.nix @@ -11,10 +11,7 @@ mkIf cfg.securitySuite { # Paquets environment.systemPackages = with pkgs; [ - # Securité - gnome3.seahorse # gestionnaire graphique de clef GPG pass # gestionnaire de mots de passe pwgen # générateur de mots de passe - #yubikey-personalization-gui # utilisation de la clef Yubikey ]; } diff --git a/applications/vim.nix b/applications/terminal/vim.nix similarity index 100% rename from applications/vim.nix rename to applications/terminal/vim.nix diff --git a/applications/vimrc b/applications/terminal/vimrc similarity index 100% rename from applications/vimrc rename to applications/terminal/vimrc diff --git a/base.nix b/base.nix index ac2d8d9..1717af4 100644 --- a/base.nix +++ b/base.nix @@ -13,7 +13,8 @@ in ./config-generator.nix # subfolders - ./applications/default.nix + ./applications/graphical/default.nix + ./applications/terminal/default.nix ./configuration/default.nix ./services/default.nix ]; From b518d9a52588f5f95c88688dbfabca0228baa747 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sat, 25 Mar 2017 12:46:55 +0100 Subject: [PATCH 43/45] activation wireshark --- applications/graphical/network.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/graphical/network.nix b/applications/graphical/network.nix index 48b4645..93809df 100644 --- a/applications/graphical/network.nix +++ b/applications/graphical/network.nix @@ -12,6 +12,6 @@ mkIf (true && cfg.graphical) { # Paquets environment.systemPackages = with pkgs; [ ## Diagnostic - #wireshark + wireshark ]; } From 09212b7b675517d132148fad687cefd3abe52ad3 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sun, 26 Mar 2017 21:45:26 +0200 Subject: [PATCH 44/45] =?UTF-8?q?d=C3=A9placement=20du=20service=20smokepi?= =?UTF-8?q?ng=20vers=20private?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/default.nix | 1 - services/monitoring-smokeping.nix | 198 ------------------------------ 2 files changed, 199 deletions(-) delete mode 100644 services/monitoring-smokeping.nix diff --git a/services/default.nix b/services/default.nix index 88e70ff..c2eb2f3 100644 --- a/services/default.nix +++ b/services/default.nix @@ -12,7 +12,6 @@ in # installées systématiquement ./haveged.nix ./monitoring-munin.nix - ./monitoring-smokeping.nix ./ssh.nix # commandées par config-generator diff --git a/services/monitoring-smokeping.nix b/services/monitoring-smokeping.nix deleted file mode 100644 index c15f523..0000000 --- a/services/monitoring-smokeping.nix +++ /dev/null @@ -1,198 +0,0 @@ -{ 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.smokeping { - - # Paquets - environment.systemPackages = with pkgs; [ - bind - ]; - - # Paquets avec setuid root - security.wrappers = { - # outil de diagnostic réseau - fping.source = "${pkgs.fping}/bin/fping"; - }; - - # Services - - services.smokeping = { - enable = true; - probeConfig = '' - + FPing - #binary = ${pkgs.fping}/bin/fping - binary = ${config.security.wrapperDir}/fping - - +DNS - #binary = ${pkgs.bind}/bin/dig - binary = /run/current-system/sw/bin/dig - forks = 5 - offset = 50% - step = 300 - timeout = 15 - ''; - targetConfig = '' - probe = FPing - menu = Top - title = Suivi de la latence reseau - remark = Monitoring de la latence reseau. \ - Here you will learn all about the latency of our network. - + Local - probe = FPing - menu = Local - title = Local Network - ++ LocalMachine - menu = Local Machine - title = This host - host = localhost - - + Grudu_Tinc - probe = FPing - title = Grudu_Tinc - menu = Grudu.net - Tinc - - ++ Hydra - menu = hydra.grudu.net - title = hydra.grudu.net - host = hydra.grudu.net - - ++ Monstre - menu = monstre.grudu.net - title = monstre.grudu.net - host = monstre.grudu.net - - ++ Rollo - menu = rollo.grudu.net - title = rollo.grudu.net - host = rollo.grudu.net - - ++ Ocean - menu = ocean.grudu.net - title = ocean.grudu.net - host = ocean.grudu.net - - ++ MultiHost - menu = Multihost - title = Ensemble de mesures de latence - host = /Grudu_Tinc/Monstre /Grudu_Tinc/Rollo /Grudu_Tinc/Ocean /Grudu_Tinc/Hydra - - + Grudu_DNS - title = Grudu_DNS - menu = Grudu.net - DNS - probe = DNS - pings = 5 - ++ Ocean - title = ocean - menu = serveur ocean - server = ocean.prunetwork.fr - +++ ocean - host = ocean.grudu.net - lookup = ocean.grudu.net - +++ rollo - host = rollo.grudu.net - lookup = rollo.grudu.net - ++ Rollo - title = rollo - menu = serveur rollo - server = rollo.dubronetwork.fr - +++ ocean - host = ocean.grudu.net - lookup = ocean.grudu.net - +++ rollo - host = rollo.grudu.net - lookup = rollo.grudu.net - ++ MultiHost - menu = Multihost - title = Ensemble de mesures DNS - host = /Grudu_DNS/Ocean/ocean /Grudu_DNS/Ocean/rollo /Grudu_DNS/Rollo/ocean /Grudu_DNS/Rollo/rollo - + France - probe = FPing - title = France - menu = Operateur francais - - ++ Atos - menu = Atos - title = www.atos.fr - host = www.atos.fr - - ++ Axialys - menu = Axialys - title = www.axialys.fr - host = www.axialys.fr - - ++ Azurtel - menu = azurtel - title = www.azurtel.fr - host = www.azurtel.fr - - ++ Bouygues-Telecom - menu = Bouygues-Telecom - title = www.bouygues-telecom.fr - host = www.bouygues-telecom.fr - - ++ Colt - menu = Colt - title = www.colt.fr - host = www.colt.fr - - ++ Completel - menu = completel - title = www.completel.fr - host = www.completel.fr - - ++ Free - menu = Free - title = www.free.fr - host = www.free.fr - - ++ Kosmos - menu = Kosmos - title = www.kosmos.fr - host = www.kosmos.fr - - ++ Orange - menu = Orange - title = www.orange.fr - host = www.orange.fr - - ++ Renater - menu = Renater - title = www.renater.fr - host = www.renater.fr - - ++ SFR - menu = SFR - title = www.sfr.fr - host = www.sfr.fr - - ++ MultiHost - menu = Multihost - title = Ensemble de mesures de latence - host = /France/Atos /France/Axialys /France/Azurtel \ - /France/Bouygues-Telecom \ - /France/Completel \ - /France/Free \ - /France/Kosmos \ - /France/Orange \ - /France/Renater \ - /France/SFR - - # /France/Colt - ''; - }; - - # Réseau - networking.firewall = { - allowedTCPPorts = [ - #8081 # accès depuis localhost uniquement ou à travers un proxy nginx - ]; - allowedUDPPorts = [ - ]; - }; -} From f12b21f620fc640c805dc574f2c977e75ec1fdf5 Mon Sep 17 00:00:00 2001 From: Jean-Pierre PRUNARET Date: Sun, 26 Mar 2017 22:45:05 +0200 Subject: [PATCH 45/45] =?UTF-8?q?hydra:=20l'=C3=A9valuation=20des=20builds?= =?UTF-8?q?=20n'est=20pas=20prioritaire=20sur=20le=20syst=C3=A8me?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/hydra-core.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/services/hydra-core.nix b/services/hydra-core.nix index 0197c87..a145991 100644 --- a/services/hydra-core.nix +++ b/services/hydra-core.nix @@ -62,6 +62,8 @@ mkIf cfg.hydra-core { #package = hydra-src-pkg ; }; + systemd.services.hydra-evaluator.serviceConfig.Nice = -19; + #systemd.services.hydra-evaluator = { # path = [ pkgs.nettools config.services.hydra.package ]; #};