remove nfs and autofs
This commit is contained in:
parent
da6095e0d2
commit
db24e9b742
4 changed files with 0 additions and 110 deletions
|
|
@ -7,7 +7,6 @@
|
||||||
../../../modules/wireguard.nix
|
../../../modules/wireguard.nix
|
||||||
../../../modules/podman.nix
|
../../../modules/podman.nix
|
||||||
../../../modules/traefik.nix
|
../../../modules/traefik.nix
|
||||||
../../../modules/nfs.nix
|
|
||||||
../../../modules/borg-client.nix
|
../../../modules/borg-client.nix
|
||||||
../../../modules/login-display.nix
|
../../../modules/login-display.nix
|
||||||
];
|
];
|
||||||
|
|
@ -194,15 +193,6 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# NFS file sharing configuration
|
|
||||||
services.nfs-custom = {
|
|
||||||
enable = true;
|
|
||||||
exportPath = "/mnt/storage/Media";
|
|
||||||
allowedNetworks = [ "10.1.1.0/24" "10.2.2.0/24" ]; # LAN and WireGuard
|
|
||||||
};
|
|
||||||
|
|
||||||
# Login display with SMART disk health status
|
# Login display with SMART disk health status
|
||||||
services.login-display = {
|
services.login-display = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../system-default.nix # Common NixOS system configuration
|
../system-default.nix # Common NixOS system configuration
|
||||||
../../../modules/wireguard.nix
|
../../../modules/wireguard.nix
|
||||||
../../../modules/autofs.nix
|
|
||||||
../../../modules/login-display.nix
|
../../../modules/login-display.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
@ -318,12 +317,4 @@
|
||||||
showDiskUsage = true;
|
showDiskUsage = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# AutoFS auto-mounting for remote NFS shares
|
|
||||||
services.autofs-custom = {
|
|
||||||
enable = true;
|
|
||||||
remoteHost = "lan.hs.yanlincs.com"; # Prefer LAN when at home
|
|
||||||
replicas = [ "10.2.2.20" ]; # Fallback to WireGuard when remote
|
|
||||||
mountPoint = "/mnt/hs-media";
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,58 +0,0 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.services.autofs-custom;
|
|
||||||
in
|
|
||||||
|
|
||||||
{
|
|
||||||
options.services.autofs-custom = {
|
|
||||||
enable = mkEnableOption "AutoFS automatic mounting";
|
|
||||||
|
|
||||||
remoteHost = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
description = "Primary remote NFS server hostname or IP";
|
|
||||||
};
|
|
||||||
|
|
||||||
mountPoint = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
description = "Local mount point";
|
|
||||||
};
|
|
||||||
|
|
||||||
replicas = mkOption {
|
|
||||||
type = types.listOf types.str;
|
|
||||||
default = [];
|
|
||||||
description = "Replica server hostnames or IPs for failover (in order of preference)";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable (
|
|
||||||
let
|
|
||||||
# Build server list: primary host followed by replicas
|
|
||||||
allHosts = [ cfg.remoteHost ] ++ cfg.replicas;
|
|
||||||
# For NFSv4 with fsid=0, the exported path becomes root, so mount as "/"
|
|
||||||
locations = "${concatStringsSep "," allHosts}:/";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
services.autofs = {
|
|
||||||
enable = true;
|
|
||||||
timeout = 300;
|
|
||||||
autoMaster = ''
|
|
||||||
/- /etc/auto.nfs --timeout=300
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
# Create the auto.nfs map file
|
|
||||||
environment.etc."auto.nfs".text = ''
|
|
||||||
${cfg.mountPoint} -fstype=nfs4,rw,soft,intr,noatime ${locations}
|
|
||||||
'';
|
|
||||||
|
|
||||||
systemd.tmpfiles.rules = [
|
|
||||||
"d ${cfg.mountPoint} 0755 root root -"
|
|
||||||
];
|
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.nfs-utils ];
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
||||||
{ config, lib, ... }:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.services.nfs-custom;
|
|
||||||
in
|
|
||||||
|
|
||||||
{
|
|
||||||
options.services.nfs-custom = {
|
|
||||||
enable = mkEnableOption "NFS server";
|
|
||||||
|
|
||||||
exportPath = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
description = "Path to export via NFS";
|
|
||||||
};
|
|
||||||
|
|
||||||
allowedNetworks = mkOption {
|
|
||||||
type = types.listOf types.str;
|
|
||||||
default = [ "10.2.2.0/24" ];
|
|
||||||
description = "Networks allowed to access the export (CIDR)";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
services.nfs.server = {
|
|
||||||
enable = true;
|
|
||||||
exports = ''
|
|
||||||
${cfg.exportPath} ${concatStringsSep " " (map (net: "${net}(rw,sync,no_subtree_check,no_root_squash,fsid=0)") cfg.allowedNetworks)}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue