init
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
# Compte admin des machines de la flotte : root, mot de passe "nixos"
|
||||
# STABLE (pas d'expiration forcée ici, contrairement à nixos_users) —
|
||||
# ces machines sont génériques/partagées, un mot de passe connu et
|
||||
# constant sur tout le parc est voulu pour l'administration courante.
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
users.mutableUsers = true;
|
||||
|
||||
users.users.root = {
|
||||
initialPassword = "nixos";
|
||||
};
|
||||
|
||||
# Login root direct autorisé nativement dès qu'un mot de passe est
|
||||
# défini (console/tty). SSH reste sur le défaut NixOS (clé uniquement) :
|
||||
# le mot de passe "nixos" n'ouvre pas la porte à distance, seulement en
|
||||
# local sur la machine.
|
||||
|
||||
# `initialPassword` n'est appliqué par NixOS qu'à la création du compte,
|
||||
# donc un rebuild/auto-upgrade ultérieur ne le réécrit jamais — mais ici
|
||||
# on ne force pas non plus de changement : "nixos" doit rester valide
|
||||
# indéfiniment sur la flotte.
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
# Socle commun à toutes les machines de la flotte (repo public).
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
# Toutes les machines de la flotte portent le même nom : pas
|
||||
# d'identification individuelle pour l'instant (voir README du repo
|
||||
# racine). À revoir plus tard via le numéro de série DMI si un vrai
|
||||
# besoin d'identification apparaît.
|
||||
networking.hostName = "Nixos_Fleet";
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
time.timeZone = "Europe/Paris";
|
||||
i18n.defaultLocale = "fr_FR.UTF-8";
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "fr_FR.UTF-8";
|
||||
LC_IDENTIFICATION = "fr_FR.UTF-8";
|
||||
LC_MEASUREMENT = "fr_FR.UTF-8";
|
||||
LC_MONETARY = "fr_FR.UTF-8";
|
||||
LC_NAME = "fr_FR.UTF-8";
|
||||
LC_NUMERIC = "fr_FR.UTF-8";
|
||||
LC_PAPER = "fr_FR.UTF-8";
|
||||
LC_TELEPHONE = "fr_FR.UTF-8";
|
||||
LC_TIME = "fr_FR.UTF-8";
|
||||
};
|
||||
services.xserver.xkb = {
|
||||
layout = "fr";
|
||||
variant = "";
|
||||
};
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.systemd-boot.configurationLimit = 10;
|
||||
|
||||
services.openssh.enable = true;
|
||||
networking.firewall.enable = true;
|
||||
|
||||
nix.settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
nix.gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 30d";
|
||||
};
|
||||
|
||||
# Convergence : chaque machine de la flotte tire ses mises à jour du
|
||||
# même repo public, sans intervention humaine (pas de netrc nécessaire
|
||||
# ici, contrairement au repo nixos_users). Voir README pour adapter
|
||||
# l'URL réelle du repo.
|
||||
system.autoUpgrade = {
|
||||
enable = true;
|
||||
dates = "daily";
|
||||
flake = "git+https://gitea.miniclic.net/Damien/Nixos_Fleet.git#usagers";
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
git
|
||||
curl
|
||||
wget
|
||||
htop
|
||||
nixfmt
|
||||
];
|
||||
|
||||
system.stateVersion = "26.05";
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
# Bureau Cinnamon générique pour la flotte. Adapté (pas importé) depuis
|
||||
# nixos_cinnamon/hosts/cinnamon/desktop-cinnamon.nix : les deux repos
|
||||
# restent indépendants au `git pull`.
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
services.xserver.enable = true;
|
||||
services.xserver.displayManager.lightdm.enable = true;
|
||||
services.xserver.desktopManager.cinnamon.enable = true;
|
||||
services.accounts-daemon.enable = true;
|
||||
|
||||
environment.cinnamon.excludePackages = with pkgs; [
|
||||
celluloid
|
||||
warpinator
|
||||
];
|
||||
|
||||
# Réglages de confidentialité génériques (pas de SearXNG/DNS personnels
|
||||
# comme sur le poste perso — cette config est destinée à être publique).
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
languagePacks = [ "fr" ];
|
||||
|
||||
preferences = {
|
||||
"privacy.resistFingerprinting" = true;
|
||||
"browser.newtabpage.activity-stream.showSponsored" = false;
|
||||
"browser.search.suggest.enabled" = false;
|
||||
"dom.security.https_only_mode" = true;
|
||||
"media.peerconnection.enabled" = false;
|
||||
"geo.enabled" = false;
|
||||
"network.captive-portal-service.enabled" = false;
|
||||
};
|
||||
|
||||
policies = {
|
||||
DisableTelemetry = true;
|
||||
DisablePocket = true;
|
||||
DisableFirefoxStudies = true;
|
||||
OfferToSaveLogins = false;
|
||||
DontCheckDefaultBrowser = true;
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
};
|
||||
ExtensionSettings = {
|
||||
"uBlock0@raymondhill.net" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
libreoffice
|
||||
thunderbird
|
||||
vlc
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user