Compare commits

..

14 Commits

11 changed files with 66 additions and 23 deletions

View File

@@ -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

View File

@@ -20,6 +20,7 @@ in {
users.extraUsers.root = {
openssh.authorizedKeys.keys = [
mbpJPierre03
radxJPierre03
radxRoot
phenomTaeradan

View File

@@ -55,4 +55,6 @@ in
clawsMail = pkgs.clawsMail.override { enablePluginFancy = true; };
mumble = pkgs.mumble.override { pulseSupport = true; };
};
security.setuidPrograms = [ "udevil" ];
}

View File

@@ -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
)
#
];
}

View File

@@ -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

View File

@@ -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
];
}

View File

@@ -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" ];
}

View File

@@ -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;
}

View File

@@ -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;

View File

@@ -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

View File

@@ -13,5 +13,6 @@ mkIf true {
security.sudo.extraConfig = ''
%users ALL = NOPASSWD: ${pkgs.mtr}/bin/mtr
%users ALL = NOPASSWD: ${pkgs.slock}/bin/slock
'';
}