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
|
||||
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
|
||||
|
||||
push: submodules-push
|
||||
|
||||
@@ -12,7 +12,7 @@ mkIf cfg.graphical {
|
||||
# Paquets
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Gestion de FS
|
||||
parted # Gestion graphique de partitions
|
||||
gparted # Gestion graphique de partitions
|
||||
unetbootin # création de clefs USB bootables
|
||||
];
|
||||
}
|
||||
|
||||
@@ -20,5 +20,8 @@ environment.systemPackages = with pkgs; [
|
||||
|
||||
## Mail & Discussion (texte, audio)
|
||||
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 }, "F6", function () awful.util.spawn("vlc") 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, "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" }, "F6", function () awful.util.spawn("clementine") 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, "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
|
||||
./haveged.nix
|
||||
./monitoring-munin.nix
|
||||
./monitoring-smokeping.nix
|
||||
./ssh.nix
|
||||
|
||||
# commandées par config-generator
|
||||
|
||||
@@ -11,6 +11,6 @@ mkIf cfg.developpement-haskell {
|
||||
|
||||
services.hoogle = {
|
||||
enable = true;
|
||||
# port 8080
|
||||
port = 10080;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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 ];
|
||||
#};
|
||||
|
||||
@@ -27,6 +27,12 @@ mkIf true {
|
||||
path = with pkgs; [ munin lm_sensors ];
|
||||
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
|
||||
services.munin-cron = {
|
||||
@@ -36,7 +42,7 @@ mkIf true {
|
||||
address 127.0.0.1
|
||||
'';
|
||||
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