1
0

Compare commits

..

9 Commits

7 changed files with 75 additions and 12 deletions

View File

@ -90,11 +90,11 @@
]
},
"locked": {
"lastModified": 1707178626,
"narHash": "sha256-dWjRyJ6bN7Ku9MmE1xsnCB8jOtFoGiK+HjS/EgI149A=",
"lastModified": 1707317562,
"narHash": "sha256-0wj5AS8RLVr+S/QWWxCsMvmVjmXUWGfR9kPaZimJEss=",
"owner": "wobcom",
"repo": "fernglas",
"rev": "70146ddd80a4c8ebd0c2f522f7bd556bd5b2f1b0",
"rev": "25020466957dbe0e193f7857d827020f5c1aa996",
"type": "github"
},
"original": {
@ -127,11 +127,11 @@
"systems": "systems_2"
},
"locked": {
"lastModified": 1694529238,
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {

View File

@ -72,7 +72,12 @@
porter = { name = "porter"; };
storage-2 = { name = "storage-2"; };
web-2 = { name = "web-2"; };
zinc = { name = "zinc"; };
zinc = {
name = "zinc";
modules = [
nixos-hardware.nixosModules.common-cpu-intel
];
};
# nixfiles-auto-install: add new host above
_iso = { name = "_iso"; };
};

View File

@ -264,7 +264,7 @@
ip46tables -A forward-filter -o enp1s0.202 -j DROP
'';
clerie.firewall.extraForwardMangleCommands = ''
ip46tables -t mangle -A forward-mangle -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1452
ip46tables -t mangle -A forward-mangle -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1416
'';
services.pppd = {
@ -280,7 +280,7 @@
noipdefault
lcp-echo-interval 20
lcp-echo-failure 3
mtu 1492
mtu 1456
hide-password
defaultroute
+ipv6

View File

@ -8,6 +8,7 @@
../../configuration/desktop
./initrd.nix
./programs.nix
];
# Use the systemd-boot EFI boot loader.

View File

@ -1,6 +1,31 @@
{ config, ... }:
{ config, pkgs, lib, ... }:
{
with lib;
let
configure_network = pkgs.writeScriptBin "configure-network" ''
ifdisplay=""
while true; do
ifdisplay_new=$(ipconfig -t 10 all)
ipconfig_status=$?
# Only show network config if something changes
if [[ "$ifdisplay" != "$ifdisplay_new" ]]; then
ifdisplay=$ifdisplay_new
echo
echo "$ifdisplay"
echo
fi
# Wait a little before checking again
if [[ $ipconfig_status == 0 ]]; then
sleep 5
fi
done
'';
in {
boot.initrd.network.enable = true;
boot.initrd.network.ssh = {
@ -12,11 +37,30 @@
"/var/src/secrets/initrd/ssh_host_ed25519_key"
];
};
boot.initrd.extraFiles."/root/.ash_history".source = pkgs.writeText ".ash_history" ''
cryptsetup-askpass
'';
boot.initrd.kernelModules = [
"igc" # integrated rj45 network interface
"cdc_ether" # external 5G modem via usb
];
boot.kernelParams = [ "ip=dhcp" ];
boot.initrd.extraUtilsCommands = ''
copy_bin_and_libs ${configure_network}/bin/configure-network
'';
boot.initrd.network.postCommands = mkBefore ''
configure-network &
'';
boot.initrd.postMountCommands = mkBefore ''
pkill -x configure-network
# Override the previously set interfaces with the ones that really exist
ifaces=$(ip -o link show | grep "link/ether" | cut -d: -f2 | xargs -n 1)
'';
boot.initrd.network.wireguard = {
enable = true;

12
hosts/zinc/programs.nix Normal file
View File

@ -0,0 +1,12 @@
{ pkgs, ... }:
{
users.users.clerie.packages = with pkgs; [
firefox
blender
cura
];
}

View File

@ -41,6 +41,7 @@ in
boot.initrd.network.postCommands = ''
ip link add dev "wg-initrd" type wireguard
ip link set "wg-initrd" mtu 1280
${concatMapStringsSep "\n" (ip: ''
ip address add "${ip}" dev "wg-initrd"