Compare commits

...

11 Commits

9 changed files with 61 additions and 25 deletions

View File

@@ -1,5 +1,6 @@
all: rebuild-switch all: rebuild-switch
date date
##--------- Commandes spécifiques pour NixOS
clean: clean:
nix-collect-garbage -d --delete-older-than 15d nix-collect-garbage -d --delete-older-than 15d
@@ -14,23 +15,26 @@ clean-log:
journalctl --vacuum-size=1G journalctl --vacuum-size=1G
full-auto: submodules-update upgrade clean optimise full-auto: submodules-update upgrade clean optimise
@date
munin:
pushd /var/www/munin/ ; python -m SimpleHTTPServer 8000
optimise: optimise:
nix-store --optimise nix-store --optimise
push: submodules-push
git push --all
git push --tags
rebuild-switch: rebuild-switch:
nixos-rebuild switch --fallback --show-trace nixos-rebuild switch --fallback --show-trace
store-repair: store-repair:
nix-store --verify --check-contents --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: submodules-update:
#git submodule update --remote #git submodule update --remote
git submodule foreach git co master git submodule foreach git co master
@@ -49,6 +53,21 @@ template:
tag: submodules-tag tag: submodules-tag
git tag -f "$$(date +%F)-$$(hostname -s)" git tag -f "$$(date +%F)-$$(hostname -s)"
upgrade: ##--------- Munin
nixos-rebuild switch --upgrade --fallback --show-trace
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

@@ -106,7 +106,7 @@ in
(mkIf pfl.isHome { (mkIf pfl.isHome {
r6d.profiles.isDesktop = true; r6d.profiles.isDesktop = true;
}) })
(mkIf pfl.isServer { (mkIf (pfl.isServer && !comp.isMonstre) {
r6d.config-generator = { r6d.config-generator = {
#database_postgres = true; #database_postgres = true;
dns_autorite = true; dns_autorite = true;
@@ -118,7 +118,7 @@ in
}; };
}) })
# /!\ PAS un serveur # /!\ PAS un serveur
(mkIf (!pfl.isServer) { (mkIf (!pfl.isServer || comp.isMonstre) {
r6d.config-generator = { r6d.config-generator = {
dns_resolveur = true; dns_resolveur = true;
}; };

View File

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

View File

@@ -38,7 +38,9 @@ mkIf true {
## Exploitation FS ## Exploitation FS
inotify-tools # être notifié lorsque le contenu d'un répertoire change 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 rdfind # recherche de fichiers doublons pour remplacement par hard/soft link
(mkIf profiles.isDesktop (mkIf profiles.isDesktop
## Gestion de FS ## Gestion de FS
gparted # Gestion graphique de partitions gparted # Gestion graphique de partitions
@@ -46,6 +48,5 @@ mkIf true {
(mkIf profiles.isDesktop (mkIf profiles.isDesktop
unetbootin # création de clefs USB bootables 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 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)
jekyll # générateur statique de site web jekyll # générateur statique de site web
odpdown # conversion md -> presentation ODP : https://github.com/thorstenb/odpdown
pandoc pandoc
texLiveFull # distribution LaTeX texLiveFull # distribution LaTeX
#texLive # distribution LaTeX de base #texLive # distribution LaTeX de base

View File

@@ -12,34 +12,37 @@ mkIf cfg.developpement {
# Paquets # Paquets
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# Base de données # Base de données
pgadmin pgadmin # interface d'administration de postgres
sqlitebrowser sqlitebrowser # interface d'administration de sqlite
# Développement # Développement
cloc cloc
idea.idea-community idea.idea-community # IntelliJ IDEA
gcc # pour les appels depuis les scripts gcc # pour les appels depuis les scripts
# Documentation # Documentation
zeal zeal # consulter la documentation hors ligne
## Gestion des sources ## Gestion des sources
# git # déjà présent dans "base" # git # déjà présent dans "base"
git-cola # 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 mercurial
subversion subversion
## Haskell ## Haskell
ghc ghc # pour les appels depuis les scripts
stack stack
## Rust ## Rust
cargo # récupération des dépendances + compilation projet rust cargo # récupération des dépendances + compilation projet rust
rustPlatform.rustc rustPlatform.rustc # pour les appels depuis les scripts
## Visualisation & outils de diff ## Visualisation & outils de diff
gource gource # visualisation en mouvement de l'historique git
meld meld # outil de comparaison graphique
vbindiff # diff de fichier hexadecimaux avec vim 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 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 yubikey-personalization-gui # utilisation de la clef Yubikey
]; ];
security.setuidPrograms = [ "slock" ];
} }

View File

@@ -15,5 +15,13 @@ mkIf cfg.virtualbox {
linuxPackages.virtualboxGuestAdditions 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; virtualisation.virtualbox.host.enable = true;
} }

View File

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