infra/nix/os/devices/steveej-t480s-work/system.nix

97 lines
2.2 KiB
Nix

{ pkgs
, lib
, config
, ... }:
let
keys = import ../../../variables/keys.nix;
in {
# TASK: new device
networking.hostName = "steveej-t480s-work"; # Define your hostname.
# Used for testing local Openshift clusters
environment.etc."NetworkManager/dnsmasq.d/openshift.conf".text =
let
openshiftClusterName = "openshift-steveej";
openshiftDomain = "openshift.testing";
openshiftSubnetBase = "192.168.126";
in ''
server=/${openshiftDomain}/${openshiftSubnetBase}.1
address=/.apps.${openshiftClusterName}.${openshiftDomain}/${openshiftSubnetBase}.51
'';
networking.firewall.enable = lib.mkForce false;
networking.firewall.checkReversePath = false;
networking.bridges."virbr1".interfaces = [];
networking.interfaces."virbr1".ipv4.addresses = [
{ address = "10.254.254.254"; prefixLength = 24; }
];
services.printing = {
enable = true;
drivers = with pkgs; [
hplip
cups-kyodialog3
mfcj6510dwlpr
mfcj6510dw-cupswrapper
mfcl3770cdw.driver
mfcl3770cdw.cupswrapper
];
};
services.fprintd.enable = true;
security.pam.services = {
login.fprintAuth = true;
sudo.fprintAuth = true;
};
# Kubernetes
# services.kubernetes.roles = ["master" "node"];
# virtualization
virtualisation = {
libvirtd = {
enable = true;
extraOptions = [
"--listen"
];
extraConfig = ''
listen_tls = 0
listen_tcp = 1
auth_tcp="none"
tcp_port = "16509"
'';
};
virtualbox.host = {
enable = false ;
addNetworkInterface = false;
};
docker = {
enable = true;
extraOptions = "--experimental";
};
};
boot.initrd.network = {
enable = true;
useDHCP = true;
udhcpc.extraArgs = [ "-x hostname:${config.networking.hostName}" ];
ssh = {
enable = true;
authorizedKeys = keys.users.steveej.openssh;
};
};
security.pki.certificateFiles = [
"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"
../../../../certificates/sat-r220-02.lab.eng.rdu2.redhat.com.crt
];
services.xserver.videoDrivers = [ "modesetting" ];
boot.kernelPackages = lib.mkForce pkgs.linuxPackages;
}