Compare commits
15 Commits
2017-03-26
...
hydra
| Author | SHA1 | Date | |
|---|---|---|---|
| 6bf53d872c | |||
| 78c2e17328 | |||
| 766b28e25a | |||
| c9e664d353 | |||
| b51b2588de | |||
|
|
42db758638 | ||
|
|
07d8924ecd | ||
|
|
2dc04d849b | ||
| 184de980a5 | |||
|
|
f16e4d8934 | ||
| e204ffb841 | |||
| 8c0a18a55b | |||
| fd834eb186 | |||
| f12b21f620 | |||
| 09212b7b67 |
3
Makefile
3
Makefile
@@ -41,6 +41,9 @@ download-sources:
|
|||||||
# https://nixos.org/wiki/Download_all_sources
|
# https://nixos.org/wiki/Download_all_sources
|
||||||
nix-store -r $$(grep -l outputHash $$(nix-store -qR $$(nix-instantiate '<nixpkgs>' -A geeqie) | grep '.drv$$'))
|
nix-store -r $$(grep -l outputHash $$(nix-store -qR $$(nix-instantiate '<nixpkgs>' -A geeqie) | grep '.drv$$'))
|
||||||
|
|
||||||
|
build-iso:
|
||||||
|
nix-build '<nixpkgs/nixos>' -A config.system.build.isoImage -I nixos-config=/etc/nixos/base/iso-image/livecd-minimal.nix
|
||||||
|
|
||||||
##--------- Commandes spécifiques pour GIT
|
##--------- Commandes spécifiques pour GIT
|
||||||
|
|
||||||
push: submodules-push
|
push: submodules-push
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ mkIf cfg.graphical {
|
|||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Gestion de FS
|
# Gestion de FS
|
||||||
parted # Gestion graphique de partitions
|
gparted # Gestion graphique de partitions
|
||||||
unetbootin # création de clefs USB bootables
|
unetbootin # création de clefs USB bootables
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,5 +20,8 @@ environment.systemPackages = with pkgs; [
|
|||||||
|
|
||||||
## Mail & Discussion (texte, audio)
|
## Mail & Discussion (texte, audio)
|
||||||
mutt
|
mutt
|
||||||
|
|
||||||
|
## Sauvegarde nuagique (cloud storage)
|
||||||
|
rclone
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
7
iso-image/Makefile.installation
Normal file
7
iso-image/Makefile.installation
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
all:
|
||||||
|
nixos-generate-config --root /mnt
|
||||||
|
git config --global user.email "nixos-live@example.org"
|
||||||
|
git config --global user.name "NixOS Live"
|
||||||
|
cd /mnt/etc/nixos && git init . && git add . && git commit -m "initial commit"
|
||||||
|
cd /mnt/etc/nixos && git submodule add http://gogs.prunetwork.fr:80/nixos-config/nixos-template-base.git base
|
||||||
|
cd /mnt/etc/nixos && git submodule add https://gogs.prunetwork.fr/Capgemini-CDS-Arkea/template-nixos.git capgemini-cmb
|
||||||
23
iso-image/configuration.nix
Normal file
23
iso-image/configuration.nix
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
capgemini-cmb/default.nix
|
||||||
|
/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
|
||||||
|
nixos-template-base/base.nix
|
||||||
|
];
|
||||||
|
# Custom name
|
||||||
|
isoImage.isoName = pkgs.lib.mkForce "${config.isoImage.isoBaseName}-capgemini-${config.system.nixosLabel}-${pkgs.stdenv.system}.iso";
|
||||||
|
# Avoid having the terminal flooded by kernel audit messages
|
||||||
|
boot.kernelParams = [ "audit=0" ];
|
||||||
|
|
||||||
|
# Files to copy to the liveCD
|
||||||
|
isoImage.contents = [
|
||||||
|
{
|
||||||
|
source = ./Makefile.installation;
|
||||||
|
target = "/custom/Makefile";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
environment.shellAliases = { nixos-generate-custom-config = "cd /iso/custom/ && make";};
|
||||||
|
networking.hostName = "nixos-livecd.corp.capgemini.com";
|
||||||
|
}
|
||||||
@@ -341,11 +341,12 @@ globalkeys = awful.util.table.join(
|
|||||||
awful.key({ modkey }, "F5", function () awful.util.spawn("spacefm") end),
|
awful.key({ modkey }, "F5", function () awful.util.spawn("spacefm") end),
|
||||||
awful.key({ modkey }, "F6", function () awful.util.spawn("vlc") end),
|
awful.key({ modkey }, "F6", function () awful.util.spawn("vlc") end),
|
||||||
awful.key({ modkey }, "F7", function () awful.util.spawn("claws-mail") end),
|
awful.key({ modkey }, "F7", function () awful.util.spawn("claws-mail") end),
|
||||||
|
awful.key({ modkey }, "F11", function () awful.util.spawn("xrandr-auto") end),
|
||||||
awful.key({ modkey }, "F12", function () awful.util.spawn("slock") end),
|
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" }, "F1", function () awful.util.spawn("claws-mail") end),
|
||||||
awful.key({ modkey, "Shift" }, "F3", function () awful.util.spawn("pcmanfm") 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, "Shift" }, "F6", function () awful.util.spawn("clementine") end),
|
||||||
awful.key({ modkey }, "F11", function () awful.util.spawn("xrandr-auto") end)
|
awful.key({ modkey, "Shift" }, "F11", function () awful.util.spawn("xrandr-auto-2") end)
|
||||||
-- awful.key({ modkey, "Shift" }, "F11", function () awful.util.spawn("/home/taeradan/bin/xrandr-left") 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),
|
-- awful.key({ modkey, "Control" }, "F11", function () awful.util.spawn("/home/taeradan/bin/xrandr-right") end),
|
||||||
|
|
||||||
|
|||||||
17
release.nix
Normal file
17
release.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{ supportedSystems ? [ "x86_64-linux" ]
|
||||||
|
, nixpkgs ? import <nixpkgs> {}
|
||||||
|
, config ? import ./config-generator.nix
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
|
||||||
|
with (import <nixpkgs/pkgs/top-level/release-lib.nix> { inherit supportedSystems; });
|
||||||
|
|
||||||
|
{
|
||||||
|
#r6d.base = import ./r6d-base.nix;
|
||||||
|
r6d = {
|
||||||
|
#= import ./iso-image/configuration.nix;
|
||||||
|
applications.terminal.cao = import ./applications/terminal/cao.nix {
|
||||||
|
config = self.config;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -12,7 +12,6 @@ in
|
|||||||
# installées systématiquement
|
# installées systématiquement
|
||||||
./haveged.nix
|
./haveged.nix
|
||||||
./monitoring-munin.nix
|
./monitoring-munin.nix
|
||||||
./monitoring-smokeping.nix
|
|
||||||
./ssh.nix
|
./ssh.nix
|
||||||
|
|
||||||
# commandées par config-generator
|
# commandées par config-generator
|
||||||
|
|||||||
@@ -11,6 +11,6 @@ mkIf cfg.developpement-haskell {
|
|||||||
|
|
||||||
services.hoogle = {
|
services.hoogle = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# port 8080
|
port = 10080;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,6 +62,8 @@ mkIf cfg.hydra-core {
|
|||||||
#package = hydra-src-pkg ;
|
#package = hydra-src-pkg ;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.services.hydra-evaluator.serviceConfig.Nice = -19;
|
||||||
|
|
||||||
#systemd.services.hydra-evaluator = {
|
#systemd.services.hydra-evaluator = {
|
||||||
# path = [ pkgs.nettools config.services.hydra.package ];
|
# path = [ pkgs.nettools config.services.hydra.package ];
|
||||||
#};
|
#};
|
||||||
|
|||||||
@@ -27,6 +27,12 @@ mkIf true {
|
|||||||
path = with pkgs; [ munin lm_sensors ];
|
path = with pkgs; [ munin lm_sensors ];
|
||||||
serviceConfig.TimeoutStartSec = "3min";
|
serviceConfig.TimeoutStartSec = "3min";
|
||||||
};
|
};
|
||||||
|
users.extraUsers.munin = {
|
||||||
|
#extraGroups = [ "postfix" "root" ];
|
||||||
|
extraGroups = [ "postfix" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
# chmod a+rX -Rv /var/lib/postfix/queue/
|
||||||
|
|
||||||
## Munin server -- generate /var/www/munin
|
## Munin server -- generate /var/www/munin
|
||||||
services.munin-cron = {
|
services.munin-cron = {
|
||||||
@@ -36,7 +42,7 @@ mkIf true {
|
|||||||
address 127.0.0.1
|
address 127.0.0.1
|
||||||
'';
|
'';
|
||||||
extraGlobalConfig = ''
|
extraGlobalConfig = ''
|
||||||
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
|
contact.email.command ${pkgs.mutt}/bin/mutt -F /etc/nixos/base/public/services/munin-muttrc -s "Munin notification for ''${var:host}" root@prunetwork.fr
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -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 = [
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user