Compare commits
10 Commits
2017-03-25
...
2017-04-10
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f16e4d8934 | ||
| e204ffb841 | |||
| 8c0a18a55b | |||
| fd834eb186 | |||
| f12b21f620 | |||
| 09212b7b67 | |||
| b518d9a525 | |||
| bda5db0417 | |||
| 37ae56a380 | |||
|
|
50085c2961 |
18
applications/graphical/adminsys.nix
Normal file
18
applications/graphical/adminsys.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
37
applications/graphical/bureautique.nix
Normal file
37
applications/graphical/bureautique.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -7,7 +7,7 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
|
|
||||||
mkIf cfg.conception-assistee {
|
mkIf (cfg.conception-assistee && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
@@ -7,13 +7,11 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
|
|
||||||
mkIf cfg.cartographie {
|
mkIf (cfg.cartographie && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Gestion de données géographiques
|
# Gestion de données géographiques
|
||||||
expat
|
|
||||||
gpsbabel # pour convettir les données des GPS
|
|
||||||
josm # outil de contribution à OpenStreetMap
|
josm # outil de contribution à OpenStreetMap
|
||||||
#qgis # client lourd de manipulation de données géographiques
|
#qgis # client lourd de manipulation de données géographiques
|
||||||
viking # analyse de topo, gestion de données GPS
|
viking # analyse de topo, gestion de données GPS
|
||||||
@@ -7,7 +7,7 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
# TODO: ménage
|
# TODO: ménage
|
||||||
mkIf cfg.internetSuite {
|
mkIf (cfg.internetSuite && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
@@ -17,18 +17,12 @@ environment.systemPackages = with pkgs; [
|
|||||||
chromium
|
chromium
|
||||||
firefox
|
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)
|
## Mail & Discussion (texte, audio)
|
||||||
clawsMail
|
clawsMail
|
||||||
hexchat
|
hexchat
|
||||||
quassel
|
quassel
|
||||||
quasselClient
|
quasselClient
|
||||||
mumble
|
mumble
|
||||||
mutt
|
|
||||||
pidgin
|
pidgin
|
||||||
thunderbird
|
thunderbird
|
||||||
|
|
||||||
@@ -53,5 +47,4 @@ environment.systemPackages = with pkgs; [
|
|||||||
#nixpkgs.config.permittedInsecurePackages = [
|
#nixpkgs.config.permittedInsecurePackages = [
|
||||||
# "webkitgtk-2.4.11" # pour que le plugin fancy de claws-mail fonctionne
|
# "webkitgtk-2.4.11" # pour que le plugin fancy de claws-mail fonctionne
|
||||||
#];
|
#];
|
||||||
|
|
||||||
}
|
}
|
||||||
15
applications/graphical/default-applications.nix
Normal file
15
applications/graphical/default-applications.nix
Normal file
@@ -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; [
|
||||||
|
];
|
||||||
|
}
|
||||||
39
applications/graphical/default.nix
Normal file
39
applications/graphical/default.nix
Normal file
@@ -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, ...)
|
||||||
|
];
|
||||||
|
}
|
||||||
25
applications/graphical/developpement-elm.nix
Normal file
25
applications/graphical/developpement-elm.nix
Normal file
@@ -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 = [
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
18
applications/graphical/developpement-haskell.nix
Normal file
18
applications/graphical/developpement-haskell.nix
Normal file
@@ -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 (<bidule>.eventlog)
|
||||||
|
]);
|
||||||
|
}
|
||||||
17
applications/graphical/developpement-java.nix
Normal file
17
applications/graphical/developpement-java.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -7,7 +7,7 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
|
|
||||||
mkIf cfg.jetbrains-licensed {
|
mkIf (cfg.jetbrains-licensed && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
15
applications/graphical/developpement-rust.nix
Normal file
15
applications/graphical/developpement-rust.nix
Normal file
@@ -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; [
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -7,7 +7,7 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
|
|
||||||
mkIf cfg.developpement {
|
mkIf (cfg.developpement && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
@@ -15,29 +15,18 @@ mkIf cfg.developpement {
|
|||||||
pgadmin # interface d'administration de postgres
|
pgadmin # interface d'administration de postgres
|
||||||
sqlitebrowser # interface d'administration de sqlite
|
sqlitebrowser # interface d'administration de sqlite
|
||||||
|
|
||||||
# C / C++
|
|
||||||
gcc # pour les appels depuis les scripts
|
|
||||||
|
|
||||||
# Documentation
|
# Documentation
|
||||||
#zeal # consulter la documentation hors ligne
|
#zeal # consulter la documentation hors ligne
|
||||||
|
|
||||||
# Gestion des sources
|
# 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
|
gitstats # génère un site web statique avec des statistiques
|
||||||
gitAndTools.gitFull # pour gitk
|
gitAndTools.gitFull # pour gitk
|
||||||
git-cola # interface pour utiliser git (historique, commit)
|
git-cola # interface pour utiliser git (historique, commit)
|
||||||
mercurial
|
|
||||||
subversion
|
|
||||||
|
|
||||||
# Mono
|
|
||||||
#mono46 # interpréteur .NET
|
|
||||||
|
|
||||||
## Visualisation & outils de diff
|
## Visualisation & outils de diff
|
||||||
#gource # visualisation en mouvement de l'historique git
|
#gource # visualisation en mouvement de l'historique git
|
||||||
meld # outil de comparaison graphique
|
meld # outil de comparaison graphique
|
||||||
#vbindiff # diff de fichier hexadecimaux avec vim
|
|
||||||
|
|
||||||
# Editeur texte
|
# Editeur texte
|
||||||
atom
|
atom
|
||||||
@@ -7,7 +7,7 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
|
|
||||||
mkIf cfg.edition-musique {
|
mkIf (cfg.edition-musique && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
@@ -7,18 +7,13 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
|
|
||||||
mkIf cfg.edition-photo {
|
mkIf (cfg.edition-photo && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Méta données
|
|
||||||
exif
|
|
||||||
exiftags
|
|
||||||
|
|
||||||
# Retouche, modification & dessin vectoriel
|
# Retouche, modification & dessin vectoriel
|
||||||
gimp # logiciel d'édition/montage/retouche photo
|
gimp # logiciel d'édition/montage/retouche photo
|
||||||
inkscape # édition d'image vectorielle (svg & autre)
|
inkscape # édition d'image vectorielle (svg & autre)
|
||||||
imagemagick # modification image en CLI
|
|
||||||
#rawtherapee # développemen de photos en RAW
|
#rawtherapee # développemen de photos en RAW
|
||||||
|
|
||||||
# TEST d'outil de gestion de catalogue de photos
|
# TEST d'outil de gestion de catalogue de photos
|
||||||
18
applications/graphical/edition-video.nix
Normal file
18
applications/graphical/edition-video.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
17
applications/graphical/jeux.nix
Normal file
17
applications/graphical/jeux.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -8,19 +8,13 @@ let
|
|||||||
in
|
in
|
||||||
|
|
||||||
# TODO ranger le spécifique pulseaudio
|
# TODO ranger le spécifique pulseaudio
|
||||||
mkIf cfg.multimediaSuite {
|
mkIf (cfg.multimediaSuite && cfg.graphical) {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Multimedia
|
|
||||||
|
|
||||||
## Audio
|
## Audio
|
||||||
beep
|
|
||||||
cmus # lecteur audio console
|
|
||||||
espeak # synthèse vocale
|
|
||||||
paprefs # préferences pulseaudio
|
paprefs # préferences pulseaudio
|
||||||
pavucontrol # mixer pulseaudio
|
pavucontrol # mixer pulseaudio
|
||||||
vorbis-tools # codec
|
|
||||||
|
|
||||||
## Video
|
## Video
|
||||||
smplayer # lecteur vidéo
|
smplayer # lecteur vidéo
|
||||||
17
applications/graphical/network.nix
Normal file
17
applications/graphical/network.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
17
applications/graphical/securite.nix
Normal file
17
applications/graphical/securite.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -50,13 +50,5 @@ mkIf true {
|
|||||||
detox # The detox utility renames files to make them easier to work with.
|
detox # The detox utility renames files to make them easier to work with.
|
||||||
duff # outil de recherche de fichiers en doublons
|
duff # outil de recherche de fichiers en doublons
|
||||||
rdfind # recherche de fichiers doublons pour remplacement par hard/soft link
|
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
|
|
||||||
)
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
17
applications/terminal/bureau.nix
Normal file
17
applications/terminal/bureau.nix
Normal file
@@ -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)
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -13,31 +13,10 @@ mkIf cfg.officeSuite {
|
|||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Bureautique
|
# Bureautique
|
||||||
aspell aspellDicts.fr # correction d'ortographe
|
aspell aspellDicts.fr # correction d'ortographe
|
||||||
gnumeric # tableur
|
|
||||||
#kde4.ksnapshot# réalisation de capture d'écran
|
|
||||||
|
|
||||||
# Gestion de tâche
|
# Gestion de tâche
|
||||||
taskwarrior # gestionnaire de tâches en console
|
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 -> <autre format>)
|
## Convertisseurs (texte -> <autre format>)
|
||||||
gnuplot # générateur de graphes à partir de données numériques
|
gnuplot # générateur de graphes à partir de données numériques
|
||||||
graphviz # dot, neato : traçage de graphes (carré, rond)
|
graphviz # dot, neato : traçage de graphes (carré, rond)
|
||||||
15
applications/terminal/cao.nix
Normal file
15
applications/terminal/cao.nix
Normal file
@@ -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; [
|
||||||
|
];
|
||||||
|
}
|
||||||
18
applications/terminal/cartographie.nix
Normal file
18
applications/terminal/cartographie.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
27
applications/terminal/client-internet.nix
Normal file
27
applications/terminal/client-internet.nix
Normal file
@@ -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
|
||||||
|
# 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
|
||||||
|
|
||||||
|
## Sauvegarde nuagique (cloud storage)
|
||||||
|
rclone
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -7,7 +7,7 @@ let
|
|||||||
profiles = config.r6d.profiles;
|
profiles = config.r6d.profiles;
|
||||||
in
|
in
|
||||||
|
|
||||||
{
|
mkIf true {
|
||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
39
applications/terminal/default.nix
Normal file
39
applications/terminal/default.nix
Normal file
@@ -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, ...)
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -25,7 +25,6 @@ mkIf cfg.developpement-haskell {
|
|||||||
hlint # qualite de code, analyse statique de code + astuces & bonnes pratiques
|
hlint # qualite de code, analyse statique de code + astuces & bonnes pratiques
|
||||||
#postgrest # mapper HTTP <-> PostgreSQL
|
#postgrest # mapper HTTP <-> PostgreSQL
|
||||||
stylish-haskell # qualité de code
|
stylish-haskell # qualité de code
|
||||||
threadscope # visualisation des threads (<bidule>.eventlog)
|
|
||||||
turtle # genre shell-scripting
|
turtle # genre shell-scripting
|
||||||
|
|
||||||
# Application perso
|
# Application perso
|
||||||
@@ -11,9 +11,6 @@ mkIf cfg.developpement-java {
|
|||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# IDE
|
|
||||||
idea.idea-community # IntelliJ IDEA
|
|
||||||
|
|
||||||
# Java
|
# Java
|
||||||
maven
|
maven
|
||||||
openjdk
|
openjdk
|
||||||
15
applications/terminal/developpement-jetbrains.nix
Normal file
15
applications/terminal/developpement-jetbrains.nix
Normal file
@@ -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; [
|
||||||
|
];
|
||||||
|
}
|
||||||
29
applications/terminal/developpement.nix
Normal file
29
applications/terminal/developpement.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
15
applications/terminal/edition-musique.nix
Normal file
15
applications/terminal/edition-musique.nix
Normal file
@@ -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; [
|
||||||
|
];
|
||||||
|
}
|
||||||
21
applications/terminal/edition-photo.nix
Normal file
21
applications/terminal/edition-photo.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -11,9 +11,6 @@ mkIf cfg.edition-video {
|
|||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Vidéo
|
|
||||||
#cinelerra # editeur video
|
|
||||||
pitivi # montage vidéo
|
|
||||||
ffmpeg-full # assemblage de flux audio & video en ligne de commande
|
ffmpeg-full # assemblage de flux audio & video en ligne de commande
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -11,7 +11,5 @@ mkIf cfg.jeux {
|
|||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Jeux
|
|
||||||
urbanterror
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
20
applications/terminal/multimedia.nix
Normal file
20
applications/terminal/multimedia.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -20,7 +20,6 @@ mkIf true {
|
|||||||
## Diagnostic
|
## Diagnostic
|
||||||
arp-scan
|
arp-scan
|
||||||
nmap # outil de scan de port réseau
|
nmap # outil de scan de port réseau
|
||||||
#wireshark
|
|
||||||
whois
|
whois
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -11,10 +11,7 @@ mkIf cfg.securitySuite {
|
|||||||
|
|
||||||
# Paquets
|
# Paquets
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Securité
|
|
||||||
gnome3.seahorse # gestionnaire graphique de clef GPG
|
|
||||||
pass # gestionnaire de mots de passe
|
pass # gestionnaire de mots de passe
|
||||||
pwgen # générateur de mots de passe
|
pwgen # générateur de mots de passe
|
||||||
#yubikey-personalization-gui # utilisation de la clef Yubikey
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
57
base.nix
57
base.nix
@@ -12,57 +12,10 @@ in
|
|||||||
# moulinette de configuration
|
# moulinette de configuration
|
||||||
./config-generator.nix
|
./config-generator.nix
|
||||||
|
|
||||||
# installées systématiquement
|
# subfolders
|
||||||
./applications/default-applications.nix
|
./applications/graphical/default.nix
|
||||||
./configuration/environment.nix
|
./applications/terminal/default.nix
|
||||||
./configuration/localisation.nix
|
./configuration/default.nix
|
||||||
./configuration/network.nix
|
./services/default.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
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ in
|
|||||||
# TODO camel case partout
|
# TODO camel case partout
|
||||||
# TODO everything in english
|
# TODO everything in english
|
||||||
# TODO sortir ce qui est privé
|
# TODO sortir ce qui est privé
|
||||||
|
# TODO portage du système d'annuaire de machines de capgemini
|
||||||
###### interface
|
###### interface
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
@@ -49,6 +50,7 @@ in
|
|||||||
edition-video = mkEnableOption "Profil pour la création/édition de video.";
|
edition-video = mkEnableOption "Profil pour la création/édition de video.";
|
||||||
elasticsearch = mkEnableOption "Profil pour activer le service elasticsearch.";
|
elasticsearch = mkEnableOption "Profil pour activer le service elasticsearch.";
|
||||||
fail2ban = mkEnableOption "Profil pour activer Fail2ban.";
|
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-builder = mkEnableOption "Profil pour une machine qui compile pour hydra.";
|
||||||
hydra-core = mkEnableOption "Profil pour un serveur hydra.";
|
hydra-core = mkEnableOption "Profil pour un serveur hydra.";
|
||||||
kibana = mkEnableOption "Profil pour activer le service kibana.";
|
kibana = mkEnableOption "Profil pour activer le service kibana.";
|
||||||
@@ -146,6 +148,7 @@ in
|
|||||||
|
|
||||||
r6d.config-generator = {
|
r6d.config-generator = {
|
||||||
docker = true;
|
docker = true;
|
||||||
|
graphical = true;
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -326,6 +329,7 @@ in
|
|||||||
|
|
||||||
r6d.config-generator = {
|
r6d.config-generator = {
|
||||||
laptop = true;
|
laptop = true;
|
||||||
|
graphical = true;
|
||||||
scanner = true;
|
scanner = true;
|
||||||
tincAddress = "192.168.12.7/24";
|
tincAddress = "192.168.12.7/24";
|
||||||
tincExtraConfig = ''
|
tincExtraConfig = ''
|
||||||
|
|||||||
27
configuration/default.nix
Normal file
27
configuration/default.nix
Normal file
@@ -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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -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),
|
||||||
|
|
||||||
|
|||||||
35
services/default.nix
Normal file
35
services/default.nix
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{ 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
|
||||||
|
./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
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -11,6 +11,6 @@ mkIf cfg.developpement-haskell {
|
|||||||
|
|
||||||
services.hoogle = {
|
services.hoogle = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# port 8080
|
port = 8888;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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 ];
|
||||||
#};
|
#};
|
||||||
|
|||||||
@@ -36,7 +36,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