Compare commits
15 Commits
2016-08-16
...
2016-09-19
| Author | SHA1 | Date | |
|---|---|---|---|
| 9b4a4f1b67 | |||
| b622554b42 | |||
| 332f40265d | |||
|
|
781973228f | ||
|
|
65e1c6ff0e | ||
| b42c8e3080 | |||
| adaa4eeb61 | |||
| 56d2c04cd6 | |||
| ebe63ea5e0 | |||
| ea69ceba37 | |||
|
|
e8521880e1 | ||
|
|
313457be31 | ||
| df0951ce65 | |||
| 1323e6dee1 | |||
|
|
d16271c61e |
37
Makefile
37
Makefile
@@ -1,5 +1,6 @@
|
||||
all: rebuild-switch
|
||||
date
|
||||
##--------- Commandes spécifiques pour NixOS
|
||||
|
||||
clean:
|
||||
nix-collect-garbage -d --delete-older-than 15d
|
||||
@@ -14,23 +15,26 @@ clean-log:
|
||||
journalctl --vacuum-size=1G
|
||||
|
||||
full-auto: submodules-update upgrade clean optimise
|
||||
|
||||
munin:
|
||||
pushd /var/www/munin/ ; python -m SimpleHTTPServer 8000
|
||||
@date
|
||||
|
||||
optimise:
|
||||
nix-store --optimise
|
||||
|
||||
push: submodules-push
|
||||
git push --all
|
||||
git push --tags
|
||||
|
||||
rebuild-switch:
|
||||
nixos-rebuild switch --fallback --show-trace
|
||||
|
||||
store-repair:
|
||||
nix-store --verify --check-contents --repair
|
||||
|
||||
upgrade:
|
||||
nixos-rebuild switch --upgrade --fallback --show-trace
|
||||
|
||||
##--------- Commandes spécifiques pour GIT
|
||||
|
||||
push: submodules-push
|
||||
git push --all
|
||||
git push --tags
|
||||
|
||||
submodules-update:
|
||||
#git submodule update --remote
|
||||
git submodule foreach git co master
|
||||
@@ -49,6 +53,21 @@ template:
|
||||
tag: submodules-tag
|
||||
git tag -f "$$(date +%F)-$$(hostname -s)"
|
||||
|
||||
upgrade:
|
||||
nixos-rebuild switch --upgrade --fallback --show-trace
|
||||
##--------- Munin
|
||||
|
||||
munin:
|
||||
pushd /var/www/munin/ ; python -m SimpleHTTPServer 8000
|
||||
##--------- Gestion d'un système de fichier monté en mémoire
|
||||
|
||||
tmpfs-create:
|
||||
mkdir -p /mnt/tmpfs
|
||||
|
||||
tmpfs-mount: tmpfs-create
|
||||
mount -t tmpfs -o size=10G tmpfs /mnt/tmpfs
|
||||
|
||||
tmpfs-umount:
|
||||
umount /mnt/tmpfs
|
||||
|
||||
tmpfs-destroy: tmpfs-umount
|
||||
rmdir /mnt/tmpfs
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ in {
|
||||
|
||||
users.extraUsers.root = {
|
||||
openssh.authorizedKeys.keys = [
|
||||
mbpJPierre03
|
||||
radxJPierre03
|
||||
radxRoot
|
||||
phenomTaeradan
|
||||
|
||||
@@ -106,7 +106,7 @@ in
|
||||
(mkIf pfl.isHome {
|
||||
r6d.profiles.isDesktop = true;
|
||||
})
|
||||
(mkIf pfl.isServer {
|
||||
(mkIf (pfl.isServer && !comp.isMonstre) {
|
||||
r6d.config-generator = {
|
||||
#database_postgres = true;
|
||||
dns_autorite = true;
|
||||
@@ -118,7 +118,7 @@ in
|
||||
};
|
||||
})
|
||||
# /!\ PAS un serveur
|
||||
(mkIf (!pfl.isServer) {
|
||||
(mkIf (!pfl.isServer || comp.isMonstre) {
|
||||
r6d.config-generator = {
|
||||
dns_resolveur = true;
|
||||
};
|
||||
|
||||
@@ -55,4 +55,6 @@ in
|
||||
clawsMail = pkgs.clawsMail.override { enablePluginFancy = true; };
|
||||
mumble = pkgs.mumble.override { pulseSupport = true; };
|
||||
};
|
||||
|
||||
security.setuidPrograms = [ "udevil" ];
|
||||
}
|
||||
|
||||
@@ -38,7 +38,9 @@ mkIf true {
|
||||
|
||||
## Exploitation FS
|
||||
inotify-tools # être notifié lorsque le contenu d'un répertoire change
|
||||
duff # outil de recherche de fichiers en doublons
|
||||
rdfind # recherche de fichiers doublons pour remplacement par hard/soft link
|
||||
|
||||
(mkIf profiles.isDesktop
|
||||
## Gestion de FS
|
||||
gparted # Gestion graphique de partitions
|
||||
@@ -46,6 +48,5 @@ mkIf true {
|
||||
(mkIf profiles.isDesktop
|
||||
unetbootin # création de clefs USB bootables
|
||||
)
|
||||
#
|
||||
];
|
||||
}
|
||||
|
||||
@@ -35,6 +35,7 @@ mkIf profiles.isDesktop {
|
||||
gnuplot # générateur de graphes à partir de données numériques
|
||||
graphviz # dot, neato : traçage de graphes (carré, rond)
|
||||
jekyll # générateur statique de site web
|
||||
odpdown # conversion md -> presentation ODP : https://github.com/thorstenb/odpdown
|
||||
pandoc
|
||||
texLiveFull # distribution LaTeX
|
||||
#texLive # distribution LaTeX de base
|
||||
|
||||
@@ -12,34 +12,37 @@ mkIf cfg.developpement {
|
||||
# Paquets
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Base de données
|
||||
pgadmin
|
||||
sqlitebrowser
|
||||
pgadmin # interface d'administration de postgres
|
||||
sqlitebrowser # interface d'administration de sqlite
|
||||
|
||||
# Développement
|
||||
cloc
|
||||
idea.idea-community
|
||||
gcc # pour les appels depuis les scripts
|
||||
idea.idea-community # IntelliJ IDEA
|
||||
gcc # pour les appels depuis les scripts
|
||||
|
||||
# Documentation
|
||||
zeal
|
||||
zeal # consulter la documentation hors ligne
|
||||
|
||||
## Gestion des sources
|
||||
# git # déjà présent dans "base"
|
||||
git-cola
|
||||
# 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
|
||||
|
||||
## Haskell
|
||||
ghc
|
||||
ghc # pour les appels depuis les scripts
|
||||
stack
|
||||
|
||||
## Rust
|
||||
cargo # récupération des dépendances + compilation projet rust
|
||||
rustPlatform.rustc
|
||||
cargo # récupération des dépendances + compilation projet rust
|
||||
rustPlatform.rustc # pour les appels depuis les scripts
|
||||
|
||||
## Visualisation & outils de diff
|
||||
gource
|
||||
meld
|
||||
vbindiff # diff de fichier hexadecimaux avec vim
|
||||
gource # visualisation en mouvement de l'historique git
|
||||
meld # outil de comparaison graphique
|
||||
vbindiff # diff de fichier hexadecimaux avec vim
|
||||
];
|
||||
}
|
||||
|
||||
@@ -18,4 +18,5 @@ mkIf profiles.isDesktop {
|
||||
slock # vérouiller l''écran. "cannot disable the out-of-memory killer for this process (make sure to suid or sgid slock)" --> en root
|
||||
yubikey-personalization-gui # utilisation de la clef Yubikey
|
||||
];
|
||||
security.setuidPrograms = [ "slock" ];
|
||||
}
|
||||
|
||||
@@ -15,5 +15,13 @@ mkIf cfg.virtualbox {
|
||||
linuxPackages.virtualboxGuestAdditions
|
||||
];
|
||||
|
||||
# À décommenter pour activer le pack d'extension
|
||||
#boot.kernelPackages = pkgs.linuxPackages // {
|
||||
# virtualbox = pkgs.linuxPackages.virtualbox.override {
|
||||
# enableExtensionPack = true;
|
||||
# pulseSupport = true;
|
||||
# };
|
||||
#};
|
||||
|
||||
virtualisation.virtualbox.host.enable = true;
|
||||
}
|
||||
|
||||
@@ -49,6 +49,7 @@ in
|
||||
];
|
||||
shellAliases = {
|
||||
byobu = "byobu-tmux";
|
||||
jacques-a-dit = "sudo";
|
||||
tree = "tree -C";
|
||||
tree1 = "tree -d -L 1";
|
||||
tree2 = "tree -d -L 2";
|
||||
@@ -58,6 +59,10 @@ in
|
||||
};
|
||||
etc.gitconfig.text = builtins.readFile ./gitconfig;
|
||||
};
|
||||
# programmes qui n'ont pas besoin de sudo pour fonctionner
|
||||
security.setuidPrograms = [
|
||||
"mtr"
|
||||
];
|
||||
programs.bash = {
|
||||
enableCompletion = true;
|
||||
promptInit = builtins.readFile ./bash-prompt.sh;
|
||||
|
||||
@@ -14,6 +14,7 @@ mkIf true {
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
# https://wiki.mozilla.org/Security/Guidelines/OpenSSH#Modern_.28OpenSSH_6.7.2B.29
|
||||
# http://www.cyberciti.biz/tips/linux-unix-bsd-openssh-server-best-practices.html
|
||||
extraConfig = ''
|
||||
KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256
|
||||
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
|
||||
|
||||
@@ -13,5 +13,6 @@ mkIf true {
|
||||
|
||||
security.sudo.extraConfig = ''
|
||||
%users ALL = NOPASSWD: ${pkgs.mtr}/bin/mtr
|
||||
%users ALL = NOPASSWD: ${pkgs.slock}/bin/slock
|
||||
'';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user