task | reformatted with nixfmt
This commit is contained in:
parent
e3fea64660
commit
c3a0a0847f
119 changed files with 1010 additions and 2135 deletions
|
|
@ -1,15 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
deployment = {
|
||||
tags = ["workstation" "intel"];
|
||||
};
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = { tags = [ "workstation" "intel" ]; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
# ../disko/mmcblk.nix
|
||||
|
|
|
|||
|
|
@ -1,26 +1,13 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"ahci"
|
||||
"uas"
|
||||
"sd_mod"
|
||||
];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "uas" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/sda2";
|
||||
|
|
@ -32,9 +19,7 @@
|
|||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/sda3";}
|
||||
];
|
||||
swapDevices = [{ device = "/dev/sda3"; }];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
@ -45,5 +30,6 @@
|
|||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
disko.devices = {
|
||||
disk = {
|
||||
vdb = {
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
inputs.nixos-hardware.nixosModules.raspberry-pi-4
|
||||
./hardware-configuration.nix
|
||||
|
|
|
|||
|
|
@ -1,9 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, config, pkgs, ... }: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
|
|
|
|||
|
|
@ -1,27 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"ehci_pci"
|
||||
"ahci"
|
||||
"sd_mod"
|
||||
"rtsx_pci_sdmmc"
|
||||
];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "ehci_pci" "ahci" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/8f55014e-8c1b-475d-8fe6-501977358d97";
|
||||
|
|
@ -33,9 +20,8 @@
|
|||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/843421e5-cb74-4c43-b88d-5053e7f7dec4";}
|
||||
];
|
||||
swapDevices =
|
||||
[{ device = "/dev/disk/by-uuid/843421e5-cb74-4c43-b88d-5053e7f7dec4"; }];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
@ -47,5 +33,6 @@
|
|||
# networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
deployment = {
|
||||
tags = ["workstation" "intel"];
|
||||
};
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = { tags = [ "workstation" "intel" ]; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
inputs.nixos-hardware.nixosModules.google-pixelbook
|
||||
./hardware-configuration.nix
|
||||
|
|
|
|||
|
|
@ -1,27 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"usb_storage"
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
"sdhci_pci"
|
||||
];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "usb_storage" "usbhid" "sd_mod" "sdhci_pci" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/mmcblk0p2";
|
||||
|
|
@ -46,5 +33,6 @@
|
|||
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,4 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ config, pkgs, lib, ... }: {
|
||||
boot.kernelPatches = lib.singleton {
|
||||
name = "eve-config";
|
||||
patch = null;
|
||||
|
|
|
|||
|
|
@ -1,15 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
deployment = {
|
||||
tags = ["server" "intel"];
|
||||
};
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = { tags = [ "server" "intel" ]; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../server
|
||||
|
|
@ -16,11 +9,9 @@
|
|||
];
|
||||
networking.hostName = "fred";
|
||||
boot = {
|
||||
binfmt.emulatedSystems = ["aarch64-linux"];
|
||||
binfmt.emulatedSystems = [ "aarch64-linux" ];
|
||||
loader = {
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
};
|
||||
systemd-boot = { enable = true; };
|
||||
efi = {
|
||||
canTouchEfiVariables = true;
|
||||
efiSysMountPoint = "/boot";
|
||||
|
|
|
|||
|
|
@ -1,9 +1,5 @@
|
|||
# Auto-generated using compose2nix v0.1.6.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ config, lib, ... }: {
|
||||
# Runtime
|
||||
virtualisation.docker = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -1,29 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"ehci_pci"
|
||||
"ahci"
|
||||
"usbhid"
|
||||
"ums_realtek"
|
||||
"sd_mod"
|
||||
"sr_mod"
|
||||
];
|
||||
boot.initrd.kernelModules = ["dm-snapshot"];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "ehci_pci" "ahci" "usbhid" "ums_realtek" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/4a1d2915-6964-4479-98c6-d17e333e83e9";
|
||||
|
|
@ -35,7 +20,7 @@
|
|||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
@ -45,5 +30,6 @@
|
|||
# networking.interfaces.enp0s25.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,5 @@
|
|||
# Auto-generated using compose2nix v0.1.6.
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, lib, ... }: {
|
||||
# Runtime
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
|
|
@ -35,29 +31,16 @@
|
|||
"/home/don/docker/speedtest/config:/config:rw"
|
||||
"/home/don/docker/speedtest/web:/etc/ssl/web:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"bandwidth-db"
|
||||
"bandwidth-ts"
|
||||
];
|
||||
dependsOn = [ "bandwidth-db" "bandwidth-ts" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network=container:bandwidth-ts"
|
||||
];
|
||||
extraOptions = [ "--network=container:bandwidth-ts" ];
|
||||
};
|
||||
systemd.services."podman-bandwidth" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
unitConfig.UpheldBy = [
|
||||
"podman-bandwidth-db.service"
|
||||
"podman-bandwidth-ts.service"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
unitConfig.UpheldBy =
|
||||
[ "podman-bandwidth-db.service" "podman-bandwidth-ts.service" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
virtualisation.oci-containers.containers."bandwidth-db" = {
|
||||
image = "mariadb:10";
|
||||
|
|
@ -69,30 +52,16 @@
|
|||
PGID = "1000";
|
||||
PUID = "1000";
|
||||
};
|
||||
volumes = [
|
||||
"/home/don/docker/speedtest-db:/var/lib/mysql:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"bandwidth-ts"
|
||||
];
|
||||
volumes = [ "/home/don/docker/speedtest-db:/var/lib/mysql:rw" ];
|
||||
dependsOn = [ "bandwidth-ts" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network=container:bandwidth-ts"
|
||||
];
|
||||
extraOptions = [ "--network=container:bandwidth-ts" ];
|
||||
};
|
||||
systemd.services."podman-bandwidth-db" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
unitConfig.UpheldBy = [
|
||||
"podman-bandwidth-ts.service"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
unitConfig.UpheldBy = [ "podman-bandwidth-ts.service" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
virtualisation.oci-containers.containers."bandwidth-ts" = {
|
||||
image = "tailscale/tailscale";
|
||||
|
|
@ -108,7 +77,7 @@
|
|||
"/dev/net/tun:/dev/net/tun:rw"
|
||||
"/home/don/docker/tailscale/var_lib:/var/lib:rw"
|
||||
];
|
||||
cmd = ["tailscaled"];
|
||||
cmd = [ "tailscaled" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--cap-add=net_admin"
|
||||
|
|
@ -119,26 +88,16 @@
|
|||
];
|
||||
};
|
||||
systemd.services."podman-bandwidth-ts" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "no";
|
||||
};
|
||||
after = [
|
||||
"podman-network-tstest-default.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-tstest-default.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "no"; };
|
||||
after = [ "podman-network-tstest-default.service" ];
|
||||
requires = [ "podman-network-tstest-default.service" ];
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
|
||||
# Networks
|
||||
systemd.services."podman-network-tstest-default" = {
|
||||
path = [pkgs.podman];
|
||||
path = [ pkgs.podman ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -147,17 +106,15 @@
|
|||
script = ''
|
||||
podman network inspect tstest-default || podman network create tstest-default --opt isolate=true
|
||||
'';
|
||||
partOf = ["podman-compose-tstest-root.target"];
|
||||
wantedBy = ["podman-compose-tstest-root.target"];
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
|
||||
# Root service
|
||||
# When started, this will automatically create all resources and start
|
||||
# the containers. When stopped, this will teardown all resources.
|
||||
systemd.targets."podman-compose-tstest-root" = {
|
||||
unitConfig = {
|
||||
Description = "Root target generated by compose2nix.";
|
||||
};
|
||||
wantedBy = ["multi-user.target"];
|
||||
unitConfig = { Description = "Root target generated by compose2nix."; };
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../server
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../../server ];
|
||||
networking.hostName = "harper";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../server
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../../server ];
|
||||
networking.hostName = "harper2";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,17 +1,8 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
||||
deployment = {
|
||||
tags = ["workstation" "intel"];
|
||||
tags = [ "workstation" "intel" ];
|
||||
allowLocalDeployment = true;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
inputs.nixos-hardware.nixosModules.dell-xps-13-9310
|
||||
./hardware-configuration.nix
|
||||
|
|
|
|||
|
|
@ -1,28 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"thunderbolt"
|
||||
"nvme"
|
||||
"uas"
|
||||
"sd_mod"
|
||||
"rtsx_pci_sdmmc"
|
||||
];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "thunderbolt" "nvme" "uas" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/nvme0n1p2";
|
||||
|
|
@ -47,5 +33,6 @@
|
|||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
boot.kernelModules = [
|
||||
"axge"
|
||||
"ax88179_178a"
|
||||
];
|
||||
}
|
||||
{ config, pkgs, ... }: { boot.kernelModules = [ "axge" "ax88179_178a" ]; }
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../server
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../../server ];
|
||||
networking.hostName = "nuwww";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,16 +1,7 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = {
|
||||
targetHost = "nixos";
|
||||
tags = ["arm"];
|
||||
tags = [ "arm" ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../server
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../server ];
|
||||
networking.hostName = "pi1";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,21 +1,13 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = [];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules = [ ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.loader.grub.enable = false;
|
||||
boot.loader.generic-extlinux-compatible.enable = true;
|
||||
|
||||
|
|
@ -24,7 +16,7 @@
|
|||
fsType = "ext4";
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../server
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../../server ];
|
||||
networking.hostName = "pihole";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
deployment = {
|
||||
tags = ["intel"];
|
||||
};
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = { tags = [ "intel" ]; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, config, pkgs, ... }: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
|
|
|
|||
|
|
@ -1,27 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"usb_storage"
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
"sdhci_pci"
|
||||
];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "usb_storage" "usbhid" "sd_mod" "sdhci_pci" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/90189466-8309-4b46-befe-cf476b8a7dd7";
|
||||
|
|
@ -43,5 +30,6 @@
|
|||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,5 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
{ inputs, outputs, lib, config, pkgs, ... }:
|
||||
let
|
||||
my-python-packages = python-packages:
|
||||
with python-packages; [
|
||||
pip
|
||||
|
|
@ -18,16 +12,10 @@
|
|||
in {
|
||||
nix = {
|
||||
settings = {
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
warn-dirty = false;
|
||||
auto-optimise-store = true;
|
||||
trusted-users = [
|
||||
"root"
|
||||
"don"
|
||||
];
|
||||
trusted-users = [ "root" "don" ];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
|
@ -35,12 +23,7 @@ in {
|
|||
options = "--delete-older-than 7d";
|
||||
};
|
||||
};
|
||||
imports = [
|
||||
../../home
|
||||
./systemd.nix
|
||||
./tailscale.nix
|
||||
./upgrade-diff.nix
|
||||
];
|
||||
imports = [ ../../home ./systemd.nix ./tailscale.nix ./upgrade-diff.nix ];
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
|
@ -59,17 +42,14 @@ in {
|
|||
inputMethod = {
|
||||
enable = true;
|
||||
type = "fcitx5";
|
||||
fcitx5.addons = with pkgs; [
|
||||
fcitx5-mozc
|
||||
fcitx5-gtk
|
||||
];
|
||||
fcitx5.addons = with pkgs; [ fcitx5-mozc fcitx5-gtk ];
|
||||
};
|
||||
};
|
||||
|
||||
# Bootloader.
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
kernelParams = ["consoleblank=60"];
|
||||
kernelParams = [ "consoleblank=60" ];
|
||||
#loader = {
|
||||
#systemd-boot = {
|
||||
#enable = true;
|
||||
|
|
@ -79,53 +59,33 @@ in {
|
|||
#efiSysMountPoint = "/boot";
|
||||
#};
|
||||
#};
|
||||
plymouth = {
|
||||
enable = true;
|
||||
};
|
||||
kernel = {
|
||||
sysctl = {
|
||||
"vm.swappiness" = 10;
|
||||
};
|
||||
};
|
||||
plymouth = { enable = true; };
|
||||
kernel = { sysctl = { "vm.swappiness" = 10; }; };
|
||||
};
|
||||
|
||||
security = {
|
||||
polkit = {
|
||||
enable = true;
|
||||
};
|
||||
polkit = { enable = true; };
|
||||
sudo.enable = false;
|
||||
doas = {
|
||||
enable = true;
|
||||
extraRules = [
|
||||
{
|
||||
users = ["don"];
|
||||
keepEnv = true;
|
||||
noPass = true;
|
||||
}
|
||||
];
|
||||
extraRules = [{
|
||||
users = [ "don" ];
|
||||
keepEnv = true;
|
||||
noPass = true;
|
||||
}];
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
pcscd = {
|
||||
enable = true;
|
||||
};
|
||||
pcscd = { enable = true; };
|
||||
avahi = {
|
||||
enable = true;
|
||||
nssmdns4 = true;
|
||||
};
|
||||
printing = {
|
||||
enable = true;
|
||||
};
|
||||
udisks2 = {
|
||||
enable = true;
|
||||
};
|
||||
nscd = {
|
||||
enableNsncd = true;
|
||||
};
|
||||
tailscale = {
|
||||
enable = true;
|
||||
};
|
||||
printing = { enable = true; };
|
||||
udisks2 = { enable = true; };
|
||||
nscd = { enableNsncd = true; };
|
||||
tailscale = { enable = true; };
|
||||
locate = {
|
||||
enable = true;
|
||||
package = pkgs.mlocate;
|
||||
|
|
@ -206,12 +166,8 @@ in {
|
|||
];
|
||||
|
||||
programs = {
|
||||
dconf = {
|
||||
enable = true;
|
||||
};
|
||||
mtr = {
|
||||
enable = true;
|
||||
};
|
||||
dconf = { enable = true; };
|
||||
mtr = { enable = true; };
|
||||
gnupg = {
|
||||
agent = {
|
||||
enable = true;
|
||||
|
|
@ -223,9 +179,7 @@ in {
|
|||
|
||||
nixpkgs.overlays = [
|
||||
(final: super: {
|
||||
khal = super.khal.overridePythonAttrs (_: {
|
||||
doCheck = false;
|
||||
});
|
||||
khal = super.khal.overridePythonAttrs (_: { doCheck = false; });
|
||||
})
|
||||
];
|
||||
|
||||
|
|
@ -233,45 +187,33 @@ in {
|
|||
networking.firewall = {
|
||||
enable = true;
|
||||
# always allow traffic from your Tailscale network
|
||||
trustedInterfaces = ["tailscale0"];
|
||||
trustedInterfaces = [ "tailscale0" ];
|
||||
checkReversePath = "loose";
|
||||
|
||||
# allow the Tailscale UDP port through the firewall
|
||||
allowedUDPPorts = [config.services.tailscale.port];
|
||||
allowedTCPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedUDPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedUDPPorts = [ config.services.tailscale.port ];
|
||||
allowedTCPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
allowedUDPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
|
||||
# allow you to SSH in over the public internet
|
||||
allowedTCPPorts = [22];
|
||||
allowedTCPPorts = [ 22 ];
|
||||
interfaces = {
|
||||
"tailscale0" = {
|
||||
allowedTCPPorts = [
|
||||
22
|
||||
8080
|
||||
8443
|
||||
];
|
||||
allowedTCPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedUDPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedTCPPorts = [ 22 8080 8443 ];
|
||||
allowedTCPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
allowedUDPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,11 +1,5 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
searxng
|
||||
];
|
||||
{ pkgs, config, ... }: {
|
||||
environment.systemPackages = with pkgs; [ searxng ];
|
||||
services.searx = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
{pkgs, ...}: let
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
readlink = "${pkgs.coreutils}/bin/readlink";
|
||||
notify-send = "${pkgs.libnotify}/bin/notify-send";
|
||||
in {
|
||||
|
|
@ -6,7 +7,7 @@ in {
|
|||
services = {
|
||||
clean-keychain = {
|
||||
description = "Clean up .keychain on boot";
|
||||
wantedBy = ["multi-user.target"];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${pkgs.coreutils-full}/bin/rm -rf /home/don/.keychain";
|
||||
|
|
@ -26,15 +27,13 @@ in {
|
|||
${notify-send} --urgency=low --icon=system-reboot "Reboot is needed for a NixOS upgrade."
|
||||
fi
|
||||
'';
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
};
|
||||
serviceConfig = { Type = "oneshot"; };
|
||||
};
|
||||
};
|
||||
timers = {
|
||||
detect-reboot-for-upgrade = {
|
||||
wantedBy = ["timers.target"];
|
||||
partOf = ["detect-reboot-for-upgrade.service"];
|
||||
wantedBy = [ "timers.target" ];
|
||||
partOf = [ "detect-reboot-for-upgrade.service" ];
|
||||
timerConfig = {
|
||||
OnCalendar = "hourly";
|
||||
Unit = "detect-reboot-for-upgrade.service";
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,12 +1,6 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, config, ... }: {
|
||||
nixpkgs.config.allowUnfreePredicate = pkg:
|
||||
builtins.elem (lib.getName pkg) [
|
||||
"unifi-controller"
|
||||
];
|
||||
builtins.elem (lib.getName pkg) [ "unifi-controller" ];
|
||||
services = {
|
||||
unifi = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{pkgs, ...}: {
|
||||
{ pkgs, ... }: {
|
||||
system.activationScripts.diff = {
|
||||
supportsDryActivation = true;
|
||||
text = ''
|
||||
|
|
|
|||
|
|
@ -1,16 +1,7 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = {
|
||||
tags = ["workstation" "intel"];
|
||||
tags = [ "workstation" "intel" ];
|
||||
allowLocalDeployment = true;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
inputs.nixos-hardware.nixosModules.lenovo-thinkpad-x260
|
||||
./hardware-configuration.nix
|
||||
|
|
|
|||
|
|
@ -1,21 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "sd_mod" "rtsx_pci_sdmmc"];
|
||||
boot.initrd.kernelModules = ["dm-snapshot"];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "ahci" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/c871ca4a-fb86-4631-b3bd-105931c5f373";
|
||||
|
|
@ -25,10 +18,10 @@
|
|||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/55CA-7FD8";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0022" "dmask=0022"];
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
@ -39,5 +32,6 @@
|
|||
# networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,5 @@
|
|||
# Auto-generated using compose2nix v0.1.6.
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, lib, ... }: {
|
||||
# Runtime
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
|
|
@ -25,31 +21,16 @@
|
|||
MARIADB_RANDOM_ROOT_PASSWORD = "true";
|
||||
MARIADB_USER = "speedy";
|
||||
};
|
||||
volumes = [
|
||||
"/home/don/docker/speedtest-db:/var/lib/mysql:rw"
|
||||
];
|
||||
volumes = [ "/home/don/docker/speedtest-db:/var/lib/mysql:rw" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network-alias=db"
|
||||
"--network=speedtest-default"
|
||||
];
|
||||
extraOptions = [ "--network-alias=db" "--network=speedtest-default" ];
|
||||
};
|
||||
systemd.services."podman-speedtest-db" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
after = [
|
||||
"podman-network-speedtest-default.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-speedtest-default.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-speedtest-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-speedtest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
after = [ "podman-network-speedtest-default.service" ];
|
||||
requires = [ "podman-network-speedtest-default.service" ];
|
||||
partOf = [ "podman-compose-speedtest-root.target" ];
|
||||
wantedBy = [ "podman-compose-speedtest-root.target" ];
|
||||
};
|
||||
virtualisation.oci-containers.containers."speedtest-tracker" = {
|
||||
image = "ghcr.io/alexjustesen/speedtest-tracker:latest";
|
||||
|
|
@ -69,40 +50,23 @@
|
|||
"/home/don/docker/speedtest/config:/config:rw"
|
||||
"/home/don/docker/speedtest/web:/etc/ssl/web:rw"
|
||||
];
|
||||
ports = [
|
||||
"8080:80/tcp"
|
||||
"8443:443/tcp"
|
||||
];
|
||||
dependsOn = [
|
||||
"speedtest-db"
|
||||
];
|
||||
ports = [ "8080:80/tcp" "8443:443/tcp" ];
|
||||
dependsOn = [ "speedtest-db" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network-alias=speedtest-tracker"
|
||||
"--network=speedtest-default"
|
||||
];
|
||||
extraOptions =
|
||||
[ "--network-alias=speedtest-tracker" "--network=speedtest-default" ];
|
||||
};
|
||||
systemd.services."podman-speedtest-tracker" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
after = [
|
||||
"podman-network-speedtest-default.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-speedtest-default.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-speedtest-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-speedtest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
after = [ "podman-network-speedtest-default.service" ];
|
||||
requires = [ "podman-network-speedtest-default.service" ];
|
||||
partOf = [ "podman-compose-speedtest-root.target" ];
|
||||
wantedBy = [ "podman-compose-speedtest-root.target" ];
|
||||
};
|
||||
|
||||
# Networks
|
||||
systemd.services."podman-network-speedtest-default" = {
|
||||
path = [pkgs.podman];
|
||||
path = [ pkgs.podman ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -111,17 +75,15 @@
|
|||
script = ''
|
||||
podman network inspect speedtest-default || podman network create speedtest-default --opt isolate=true
|
||||
'';
|
||||
partOf = ["podman-compose-speedtest-root.target"];
|
||||
wantedBy = ["podman-compose-speedtest-root.target"];
|
||||
partOf = [ "podman-compose-speedtest-root.target" ];
|
||||
wantedBy = [ "podman-compose-speedtest-root.target" ];
|
||||
};
|
||||
|
||||
# Root service
|
||||
# When started, this will automatically create all resources and start
|
||||
# the containers. When stopped, this will teardown all resources.
|
||||
systemd.targets."podman-compose-speedtest-root" = {
|
||||
unitConfig = {
|
||||
Description = "Root target generated by compose2nix.";
|
||||
};
|
||||
wantedBy = ["multi-user.target"];
|
||||
unitConfig = { Description = "Root target generated by compose2nix."; };
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
deployment = {
|
||||
tags = ["arm"];
|
||||
};
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = { tags = [ "arm" ]; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../workstation
|
||||
../wm
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../workstation ../wm ];
|
||||
networking.hostName = "t2";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,28 +1,20 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = [];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules = [ ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/mmcblk0p2";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../server
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../server ];
|
||||
networking.hostName = "vm";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"ahci"
|
||||
"xhci_pci"
|
||||
"virtio_pci"
|
||||
"sr_mod"
|
||||
"virtio_blk"
|
||||
];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/vda3";
|
||||
|
|
@ -33,9 +20,7 @@
|
|||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/vda2";}
|
||||
];
|
||||
swapDevices = [{ device = "/dev/vda2"; }];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
@ -45,5 +30,6 @@
|
|||
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ];
|
||||
networking.hostName = "vm1";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"ahci"
|
||||
"xhci_pci"
|
||||
"virtio_pci"
|
||||
"sr_mod"
|
||||
"virtio_blk"
|
||||
];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/vda3";
|
||||
|
|
@ -33,9 +20,7 @@
|
|||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/vda2";}
|
||||
];
|
||||
swapDevices = [{ device = "/dev/vda2"; }];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
@ -45,5 +30,6 @@
|
|||
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
deployment = {
|
||||
tags = ["server" "intel" "vps" "web"];
|
||||
};
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = { tags = [ "server" "intel" "vps" "web" ]; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
./network.nix
|
||||
|
|
@ -15,8 +8,9 @@
|
|||
networking.hostName = "w1";
|
||||
boot = {
|
||||
initrd = {
|
||||
availableKernelModules = ["ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi"];
|
||||
kernelModules = ["nvme"];
|
||||
availableKernelModules =
|
||||
[ "ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi" ];
|
||||
kernelModules = [ "nvme" ];
|
||||
};
|
||||
loader = {
|
||||
grub = {
|
||||
|
|
|
|||
|
|
@ -1,21 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = ["ahci" "xhci_pci" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||
boot.initrd.kernelModules = ["dm-snapshot"];
|
||||
boot.kernelModules = [];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "ahci" "xhci_pci" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/sda1";
|
||||
|
|
@ -25,10 +18,10 @@
|
|||
fileSystems."/boot" = {
|
||||
device = "/dev/sda15";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0022" "dmask=0022"];
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
{lib, ...}: {
|
||||
{ lib, ... }: {
|
||||
# This file was populated at runtime with the networking
|
||||
# details gathered from the active system.
|
||||
networking = {
|
||||
nameservers = [
|
||||
"1.1.1.1"
|
||||
];
|
||||
nameservers = [ "1.1.1.1" ];
|
||||
defaultGateway = "172.31.1.1";
|
||||
defaultGateway6 = {
|
||||
address = "fe80::1";
|
||||
|
|
@ -14,12 +12,10 @@
|
|||
usePredictableInterfaceNames = lib.mkForce false;
|
||||
interfaces = {
|
||||
eth0 = {
|
||||
ipv4.addresses = [
|
||||
{
|
||||
address = "5.161.104.185";
|
||||
prefixLength = 32;
|
||||
}
|
||||
];
|
||||
ipv4.addresses = [{
|
||||
address = "5.161.104.185";
|
||||
prefixLength = 32;
|
||||
}];
|
||||
ipv6.addresses = [
|
||||
{
|
||||
address = "2a01:4ff:f0:c3e0::1";
|
||||
|
|
@ -30,18 +26,14 @@
|
|||
prefixLength = 64;
|
||||
}
|
||||
];
|
||||
ipv4.routes = [
|
||||
{
|
||||
address = "172.31.1.1";
|
||||
prefixLength = 32;
|
||||
}
|
||||
];
|
||||
ipv6.routes = [
|
||||
{
|
||||
address = "fe80::1";
|
||||
prefixLength = 128;
|
||||
}
|
||||
];
|
||||
ipv4.routes = [{
|
||||
address = "172.31.1.1";
|
||||
prefixLength = 32;
|
||||
}];
|
||||
ipv6.routes = [{
|
||||
address = "fe80::1";
|
||||
prefixLength = 128;
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,9 +1,5 @@
|
|||
# Auto-generated using compose2nix v0.1.6.
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, lib, ... }: {
|
||||
# Runtime
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
|
|
@ -35,29 +31,16 @@
|
|||
"/home/don/docker/speedtest/config:/config:rw"
|
||||
"/home/don/docker/speedtest/web:/etc/ssl/web:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"bandwidth-db"
|
||||
"bandwidth-ts"
|
||||
];
|
||||
dependsOn = [ "bandwidth-db" "bandwidth-ts" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network=container:bandwidth-ts"
|
||||
];
|
||||
extraOptions = [ "--network=container:bandwidth-ts" ];
|
||||
};
|
||||
systemd.services."podman-bandwidth" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
unitConfig.UpheldBy = [
|
||||
"podman-bandwidth-db.service"
|
||||
"podman-bandwidth-ts.service"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
unitConfig.UpheldBy =
|
||||
[ "podman-bandwidth-db.service" "podman-bandwidth-ts.service" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
virtualisation.oci-containers.containers."bandwidth-db" = {
|
||||
image = "mariadb:10";
|
||||
|
|
@ -69,30 +52,16 @@
|
|||
PGID = "1000";
|
||||
PUID = "1000";
|
||||
};
|
||||
volumes = [
|
||||
"/home/don/docker/speedtest-db:/var/lib/mysql:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"bandwidth-ts"
|
||||
];
|
||||
volumes = [ "/home/don/docker/speedtest-db:/var/lib/mysql:rw" ];
|
||||
dependsOn = [ "bandwidth-ts" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network=container:bandwidth-ts"
|
||||
];
|
||||
extraOptions = [ "--network=container:bandwidth-ts" ];
|
||||
};
|
||||
systemd.services."podman-bandwidth-db" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
unitConfig.UpheldBy = [
|
||||
"podman-bandwidth-ts.service"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
unitConfig.UpheldBy = [ "podman-bandwidth-ts.service" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
virtualisation.oci-containers.containers."bandwidth-ts" = {
|
||||
image = "tailscale/tailscale";
|
||||
|
|
@ -100,7 +69,8 @@
|
|||
PGID = "1000";
|
||||
PUID = "1000";
|
||||
TS_ACCEPT_DNS = "true";
|
||||
TS_AUTHKEY = "tskey-auth-k6qutwuAk221CNTRL-9L2MS7sw2SVtH2kYKCcVNVsUHKYSX5UjH";
|
||||
TS_AUTHKEY =
|
||||
"tskey-auth-k6qutwuAk221CNTRL-9L2MS7sw2SVtH2kYKCcVNVsUHKYSX5UjH";
|
||||
TS_HOSTNAME = "fred-bw";
|
||||
TS_STATE_DIR = "/var/lib/tailscale";
|
||||
};
|
||||
|
|
@ -108,7 +78,7 @@
|
|||
"/dev/net/tun:/dev/net/tun:rw"
|
||||
"/home/don/docker/tailscale/var_lib:/var/lib:rw"
|
||||
];
|
||||
cmd = ["tailscaled"];
|
||||
cmd = [ "tailscaled" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--cap-add=net_admin"
|
||||
|
|
@ -119,26 +89,16 @@
|
|||
];
|
||||
};
|
||||
systemd.services."podman-bandwidth-ts" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "no";
|
||||
};
|
||||
after = [
|
||||
"podman-network-tstest-default.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-tstest-default.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "no"; };
|
||||
after = [ "podman-network-tstest-default.service" ];
|
||||
requires = [ "podman-network-tstest-default.service" ];
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
|
||||
# Networks
|
||||
systemd.services."podman-network-tstest-default" = {
|
||||
path = [pkgs.podman];
|
||||
path = [ pkgs.podman ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -147,17 +107,15 @@
|
|||
script = ''
|
||||
podman network inspect tstest-default || podman network create tstest-default --opt isolate=true
|
||||
'';
|
||||
partOf = ["podman-compose-tstest-root.target"];
|
||||
wantedBy = ["podman-compose-tstest-root.target"];
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
|
||||
# Root service
|
||||
# When started, this will automatically create all resources and start
|
||||
# the containers. When stopped, this will teardown all resources.
|
||||
systemd.targets."podman-compose-tstest-root" = {
|
||||
unitConfig = {
|
||||
Description = "Root target generated by compose2nix.";
|
||||
};
|
||||
wantedBy = ["multi-user.target"];
|
||||
unitConfig = { Description = "Root target generated by compose2nix."; };
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,16 +1,7 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./default.nix ];
|
||||
deployment = {
|
||||
tags = ["server" "intel" "vps" "web"];
|
||||
tags = [ "server" "intel" "vps" "web" ];
|
||||
targetHost = "178.156.139.49";
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
./network.nix
|
||||
|
|
@ -15,8 +8,9 @@
|
|||
networking.hostName = "w1";
|
||||
boot = {
|
||||
initrd = {
|
||||
availableKernelModules = ["ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi"];
|
||||
kernelModules = ["nvme"];
|
||||
availableKernelModules =
|
||||
[ "ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi" ];
|
||||
kernelModules = [ "nvme" ];
|
||||
};
|
||||
loader = {
|
||||
grub = {
|
||||
|
|
|
|||
|
|
@ -1,21 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = ["ahci" "xhci_pci" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||
boot.initrd.kernelModules = ["dm-snapshot"];
|
||||
boot.kernelModules = [];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "ahci" "xhci_pci" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/sda1";
|
||||
|
|
@ -25,10 +18,10 @@
|
|||
fileSystems."/boot" = {
|
||||
device = "/dev/sda15";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0022" "dmask=0022"];
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
{lib, ...}: {
|
||||
{ lib, ... }: {
|
||||
# This file was populated at runtime with the networking
|
||||
# details gathered from the active system.
|
||||
networking = {
|
||||
nameservers = [
|
||||
"1.1.1.1"
|
||||
];
|
||||
nameservers = [ "1.1.1.1" ];
|
||||
defaultGateway = "172.31.1.1";
|
||||
defaultGateway6 = {
|
||||
address = "fe80::1";
|
||||
|
|
@ -14,12 +12,10 @@
|
|||
usePredictableInterfaceNames = lib.mkForce false;
|
||||
interfaces = {
|
||||
eth0 = {
|
||||
ipv4.addresses = [
|
||||
{
|
||||
address = "178.156.139.49";
|
||||
prefixLength = 32;
|
||||
}
|
||||
];
|
||||
ipv4.addresses = [{
|
||||
address = "178.156.139.49";
|
||||
prefixLength = 32;
|
||||
}];
|
||||
ipv6.addresses = [
|
||||
{
|
||||
address = "2a01:4ff:f0:9df8::1";
|
||||
|
|
@ -30,18 +26,14 @@
|
|||
prefixLength = 64;
|
||||
}
|
||||
];
|
||||
ipv4.routes = [
|
||||
{
|
||||
address = "172.31.1.1";
|
||||
prefixLength = 32;
|
||||
}
|
||||
];
|
||||
ipv6.routes = [
|
||||
{
|
||||
address = "fe80::1";
|
||||
prefixLength = 128;
|
||||
}
|
||||
];
|
||||
ipv4.routes = [{
|
||||
address = "172.31.1.1";
|
||||
prefixLength = 32;
|
||||
}];
|
||||
ipv6.routes = [{
|
||||
address = "fe80::1";
|
||||
prefixLength = 128;
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,9 +1,5 @@
|
|||
# Auto-generated using compose2nix v0.1.6.
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, lib, ... }: {
|
||||
# Runtime
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
|
|
@ -35,29 +31,16 @@
|
|||
"/home/don/docker/speedtest/config:/config:rw"
|
||||
"/home/don/docker/speedtest/web:/etc/ssl/web:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"bandwidth-db"
|
||||
"bandwidth-ts"
|
||||
];
|
||||
dependsOn = [ "bandwidth-db" "bandwidth-ts" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network=container:bandwidth-ts"
|
||||
];
|
||||
extraOptions = [ "--network=container:bandwidth-ts" ];
|
||||
};
|
||||
systemd.services."podman-bandwidth" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
unitConfig.UpheldBy = [
|
||||
"podman-bandwidth-db.service"
|
||||
"podman-bandwidth-ts.service"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
unitConfig.UpheldBy =
|
||||
[ "podman-bandwidth-db.service" "podman-bandwidth-ts.service" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
virtualisation.oci-containers.containers."bandwidth-db" = {
|
||||
image = "mariadb:10";
|
||||
|
|
@ -69,30 +52,16 @@
|
|||
PGID = "1000";
|
||||
PUID = "1000";
|
||||
};
|
||||
volumes = [
|
||||
"/home/don/docker/speedtest-db:/var/lib/mysql:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"bandwidth-ts"
|
||||
];
|
||||
volumes = [ "/home/don/docker/speedtest-db:/var/lib/mysql:rw" ];
|
||||
dependsOn = [ "bandwidth-ts" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network=container:bandwidth-ts"
|
||||
];
|
||||
extraOptions = [ "--network=container:bandwidth-ts" ];
|
||||
};
|
||||
systemd.services."podman-bandwidth-db" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "always";
|
||||
};
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
unitConfig.UpheldBy = [
|
||||
"podman-bandwidth-ts.service"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "always"; };
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
unitConfig.UpheldBy = [ "podman-bandwidth-ts.service" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
virtualisation.oci-containers.containers."bandwidth-ts" = {
|
||||
image = "tailscale/tailscale";
|
||||
|
|
@ -100,7 +69,8 @@
|
|||
PGID = "1000";
|
||||
PUID = "1000";
|
||||
TS_ACCEPT_DNS = "true";
|
||||
TS_AUTHKEY = "tskey-auth-k6qutwuAk221CNTRL-9L2MS7sw2SVtH2kYKCcVNVsUHKYSX5UjH";
|
||||
TS_AUTHKEY =
|
||||
"tskey-auth-k6qutwuAk221CNTRL-9L2MS7sw2SVtH2kYKCcVNVsUHKYSX5UjH";
|
||||
TS_HOSTNAME = "fred-bw";
|
||||
TS_STATE_DIR = "/var/lib/tailscale";
|
||||
};
|
||||
|
|
@ -108,7 +78,7 @@
|
|||
"/dev/net/tun:/dev/net/tun:rw"
|
||||
"/home/don/docker/tailscale/var_lib:/var/lib:rw"
|
||||
];
|
||||
cmd = ["tailscaled"];
|
||||
cmd = [ "tailscaled" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--cap-add=net_admin"
|
||||
|
|
@ -119,26 +89,16 @@
|
|||
];
|
||||
};
|
||||
systemd.services."podman-bandwidth-ts" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 500 "no";
|
||||
};
|
||||
after = [
|
||||
"podman-network-tstest-default.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-tstest-default.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-tstest-root.target"
|
||||
];
|
||||
serviceConfig = { Restart = lib.mkOverride 500 "no"; };
|
||||
after = [ "podman-network-tstest-default.service" ];
|
||||
requires = [ "podman-network-tstest-default.service" ];
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
|
||||
# Networks
|
||||
systemd.services."podman-network-tstest-default" = {
|
||||
path = [pkgs.podman];
|
||||
path = [ pkgs.podman ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -147,17 +107,15 @@
|
|||
script = ''
|
||||
podman network inspect tstest-default || podman network create tstest-default --opt isolate=true
|
||||
'';
|
||||
partOf = ["podman-compose-tstest-root.target"];
|
||||
wantedBy = ["podman-compose-tstest-root.target"];
|
||||
partOf = [ "podman-compose-tstest-root.target" ];
|
||||
wantedBy = [ "podman-compose-tstest-root.target" ];
|
||||
};
|
||||
|
||||
# Root service
|
||||
# When started, this will automatically create all resources and start
|
||||
# the containers. When stopped, this will teardown all resources.
|
||||
systemd.targets."podman-compose-tstest-root" = {
|
||||
unitConfig = {
|
||||
Description = "Root target generated by compose2nix.";
|
||||
};
|
||||
wantedBy = ["multi-user.target"];
|
||||
unitConfig = { Description = "Root target generated by compose2nix."; };
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,4 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ config, pkgs, lib, ... }: {
|
||||
services.desktopManager.cosmic.enable = true;
|
||||
services.displayManager.cosmic-greeter.enable = true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,3 +1 @@
|
|||
{pkgs, ...}: {
|
||||
imports = [./sway];
|
||||
}
|
||||
{ pkgs, ... }: { imports = [ ./sway ]; }
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{pkgs, ...}: {
|
||||
{ pkgs, ... }: {
|
||||
# programs.regreet = {
|
||||
# enable = true;
|
||||
# settings = {
|
||||
|
|
@ -12,7 +12,8 @@
|
|||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "${pkgs.greetd.greetd}/bin/agreety --cmd /home/don/bin/mysway";
|
||||
command =
|
||||
"${pkgs.greetd.greetd}/bin/agreety --cmd /home/don/bin/mysway";
|
||||
# command = "${pkgs.greetd.tuigreet}/bin/tuigreet --cmd /home/don/bin/mysway";
|
||||
user = "greeter";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,9 +1,4 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ config, pkgs, lib, ... }: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
alacritty
|
||||
bemenu
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{pkgs, ...}: {
|
||||
environment.systemPackages = with pkgs; [sddm-chili-theme];
|
||||
{ pkgs, ... }: {
|
||||
environment.systemPackages = with pkgs; [ sddm-chili-theme ];
|
||||
|
||||
services.displayManager = {
|
||||
sddm = {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
{pkgs, ...}: let
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
dbus-sway-environment = pkgs.writeTextFile {
|
||||
name = "dbus-sway-environment";
|
||||
destination = "/bin/dbus-sway-environment";
|
||||
|
|
|
|||
|
|
@ -1,11 +1,5 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
{ inputs, outputs, lib, config, pkgs, ... }:
|
||||
let
|
||||
my-python-packages = python-packages:
|
||||
with python-packages; [
|
||||
pip
|
||||
|
|
@ -19,16 +13,10 @@
|
|||
in {
|
||||
nix = {
|
||||
settings = {
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
warn-dirty = false;
|
||||
auto-optimise-store = true;
|
||||
trusted-users = [
|
||||
"root"
|
||||
"don"
|
||||
];
|
||||
trusted-users = [ "root" "don" ];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
|
@ -66,58 +54,40 @@ in {
|
|||
inputMethod = {
|
||||
enable = true;
|
||||
type = "fcitx5";
|
||||
fcitx5.addons = with pkgs; [
|
||||
fcitx5-mozc
|
||||
fcitx5-gtk
|
||||
];
|
||||
fcitx5.addons = with pkgs; [ fcitx5-mozc fcitx5-gtk ];
|
||||
};
|
||||
};
|
||||
|
||||
# Bootloader.
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
kernelParams = ["consoleblank=60" "mem_sleep_default=deep"];
|
||||
kernelParams = [ "consoleblank=60" "mem_sleep_default=deep" ];
|
||||
# extraModulePackages = [config.boot.kernelPackages.ddcci-driver];
|
||||
# kernelModules = ["i2c-dev" "ddcci_backlight"];
|
||||
loader =
|
||||
if (pkgs.hostPlatform != lib.mkDefault "aarch64-linux")
|
||||
then {
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
};
|
||||
efi = {
|
||||
canTouchEfiVariables = true;
|
||||
efiSysMountPoint = "/boot";
|
||||
};
|
||||
}
|
||||
else {
|
||||
grub.enable = false;
|
||||
generic-extlinux-compatible.enable = true;
|
||||
};
|
||||
plymouth = {
|
||||
enable = true;
|
||||
};
|
||||
kernel = {
|
||||
sysctl = {
|
||||
"vm.swappiness" = 10;
|
||||
loader = if (pkgs.hostPlatform != lib.mkDefault "aarch64-linux") then {
|
||||
systemd-boot = { enable = true; };
|
||||
efi = {
|
||||
canTouchEfiVariables = true;
|
||||
efiSysMountPoint = "/boot";
|
||||
};
|
||||
} else {
|
||||
grub.enable = false;
|
||||
generic-extlinux-compatible.enable = true;
|
||||
};
|
||||
plymouth = { enable = true; };
|
||||
kernel = { sysctl = { "vm.swappiness" = 10; }; };
|
||||
};
|
||||
|
||||
security = {
|
||||
polkit = {
|
||||
enable = true;
|
||||
};
|
||||
polkit = { enable = true; };
|
||||
sudo.enable = false;
|
||||
doas = {
|
||||
enable = true;
|
||||
extraRules = [
|
||||
{
|
||||
users = ["don"];
|
||||
keepEnv = true;
|
||||
noPass = true;
|
||||
}
|
||||
];
|
||||
extraRules = [{
|
||||
users = [ "don" ];
|
||||
keepEnv = true;
|
||||
noPass = true;
|
||||
}];
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -127,44 +97,26 @@ in {
|
|||
ACTION=="add|change", KERNEL=="sd[a-z]*[0-9]*|mmcblk[0-9]*p[0-9]*|nvme[0-9]*n[0-9]*p[0-9]*", ENV{ID_FS_TYPE}=="ext4", ATTR{../queue/scheduler}="none"
|
||||
'';
|
||||
};
|
||||
pcscd = {
|
||||
enable = true;
|
||||
};
|
||||
pcscd = { enable = true; };
|
||||
avahi = {
|
||||
enable = true;
|
||||
nssmdns4 = true;
|
||||
};
|
||||
printing = {
|
||||
enable = true;
|
||||
};
|
||||
udisks2 = {
|
||||
enable = true;
|
||||
};
|
||||
nscd = {
|
||||
enableNsncd = true;
|
||||
};
|
||||
fwupd = {
|
||||
enable = true;
|
||||
};
|
||||
flatpak = {
|
||||
enable = true;
|
||||
};
|
||||
fstrim = {
|
||||
enable = true;
|
||||
};
|
||||
printing = { enable = true; };
|
||||
udisks2 = { enable = true; };
|
||||
nscd = { enableNsncd = true; };
|
||||
fwupd = { enable = true; };
|
||||
flatpak = { enable = true; };
|
||||
fstrim = { enable = true; };
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa = {
|
||||
enable = true;
|
||||
support32Bit = true;
|
||||
};
|
||||
pulse = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
tailscale = {
|
||||
enable = true;
|
||||
pulse = { enable = true; };
|
||||
};
|
||||
tailscale = { enable = true; };
|
||||
logind = {
|
||||
lidSwitchExternalPower = "ignore";
|
||||
lidSwitchDocked = "ignore";
|
||||
|
|
@ -185,15 +137,11 @@ in {
|
|||
};
|
||||
|
||||
hardware = {
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
};
|
||||
pulseaudio = {
|
||||
enable = false;
|
||||
};
|
||||
bluetooth = { enable = true; };
|
||||
pulseaudio = { enable = false; };
|
||||
sane = {
|
||||
enable = true;
|
||||
extraBackends = [pkgs.sane-airscan];
|
||||
extraBackends = [ pkgs.sane-airscan ];
|
||||
};
|
||||
};
|
||||
security.rtkit.enable = true;
|
||||
|
|
@ -220,15 +168,8 @@ in {
|
|||
isNormalUser = true;
|
||||
initialPassword = "changeme";
|
||||
description = "Don Harper";
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
"scanner"
|
||||
"lp"
|
||||
"video"
|
||||
"mlocate"
|
||||
"disk"
|
||||
];
|
||||
extraGroups =
|
||||
[ "networkmanager" "wheel" "scanner" "lp" "video" "mlocate" "disk" ];
|
||||
openssh.authorizedKeys.keys = [
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINd8AdVbQQ/Fmw+b9mI8EMYqIoRkwmSwAOtmlte3incL don@loki"
|
||||
];
|
||||
|
|
@ -244,7 +185,7 @@ in {
|
|||
|
||||
# Allow unfree packages
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
nixpkgs.config.permittedInsecurePackages = ["electron-25.9.0"];
|
||||
nixpkgs.config.permittedInsecurePackages = [ "electron-25.9.0" ];
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
anonymousPro
|
||||
|
|
@ -305,18 +246,10 @@ in {
|
|||
];
|
||||
|
||||
programs = {
|
||||
dconf = {
|
||||
enable = true;
|
||||
};
|
||||
light = {
|
||||
enable = true;
|
||||
};
|
||||
mtr = {
|
||||
enable = true;
|
||||
};
|
||||
kdeconnect = {
|
||||
enable = true;
|
||||
};
|
||||
dconf = { enable = true; };
|
||||
light = { enable = true; };
|
||||
mtr = { enable = true; };
|
||||
kdeconnect = { enable = true; };
|
||||
gnupg = {
|
||||
agent = {
|
||||
enable = true;
|
||||
|
|
@ -327,59 +260,47 @@ in {
|
|||
};
|
||||
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {qutebrowser = prev.qutebrowser.override {enableWideVine = true;};})
|
||||
(final: prev: {
|
||||
qutebrowser = prev.qutebrowser.override { enableWideVine = true; };
|
||||
})
|
||||
(final: super: {
|
||||
khal = super.khal.overridePythonAttrs (_: {
|
||||
doCheck = false;
|
||||
});
|
||||
khal = super.khal.overridePythonAttrs (_: { doCheck = false; });
|
||||
})
|
||||
];
|
||||
|
||||
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
|
||||
nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
||||
|
||||
# Open ports in the firewall.
|
||||
networking.firewall = {
|
||||
enable = true;
|
||||
# always allow traffic from your Tailscale network
|
||||
trustedInterfaces = ["tailscale0"];
|
||||
trustedInterfaces = [ "tailscale0" ];
|
||||
checkReversePath = "loose";
|
||||
|
||||
# allow the Tailscale UDP port through the firewall
|
||||
allowedUDPPorts = [config.services.tailscale.port];
|
||||
allowedTCPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedUDPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedUDPPorts = [ config.services.tailscale.port ];
|
||||
allowedTCPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
allowedUDPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
|
||||
# allow you to SSH in over the public internet
|
||||
allowedTCPPorts = [22];
|
||||
allowedTCPPorts = [ 22 ];
|
||||
interfaces = {
|
||||
"tailscale0" = {
|
||||
allowedTCPPorts = [
|
||||
22
|
||||
8080
|
||||
8443
|
||||
];
|
||||
allowedTCPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedUDPPortRanges = [
|
||||
{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}
|
||||
];
|
||||
allowedTCPPorts = [ 22 8080 8443 ];
|
||||
allowedTCPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
allowedUDPPortRanges = [{
|
||||
from = 1714;
|
||||
to = 1764;
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
@ -413,5 +334,6 @@ in {
|
|||
"x-scheme-handler/about" = "org.qutebrowser.qutebrowser.desktop";
|
||||
"x-scheme-handler/unknown" = "org.qutebrowser.qutebrowser.desktop";
|
||||
};
|
||||
environment.sessionVariables.DEFAULT_BROWSER = "${pkgs.qutebrowser}/bin/qutebrowser";
|
||||
environment.sessionVariables.DEFAULT_BROWSER =
|
||||
"${pkgs.qutebrowser}/bin/qutebrowser";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
{pkgs, ...}: let
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
readlink = "${pkgs.coreutils}/bin/readlink";
|
||||
notify-send = "${pkgs.libnotify}/bin/notify-send";
|
||||
in {
|
||||
|
|
@ -13,13 +14,11 @@ in {
|
|||
${notify-send} --urgency=low --icon=system-reboot "Reboot is needed for a NixOS upgrade."
|
||||
fi
|
||||
'';
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
};
|
||||
serviceConfig = { Type = "oneshot"; };
|
||||
};
|
||||
systemd.user.timers.detect-reboot-for-upgrade = {
|
||||
wantedBy = ["timers.target"];
|
||||
partOf = ["detect-reboot-for-upgrade.service"];
|
||||
wantedBy = [ "timers.target" ];
|
||||
partOf = [ "detect-reboot-for-upgrade.service" ];
|
||||
timerConfig = {
|
||||
OnCalendar = "hourly";
|
||||
Unit = "detect-reboot-for-upgrade.service";
|
||||
|
|
|
|||
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
programs = {
|
||||
# GAMES!
|
||||
steam = {
|
||||
|
|
@ -16,8 +9,6 @@
|
|||
# # Open ports in the firewall for Source Dedicated Server
|
||||
# dedicatedServer.openFirewall = true;
|
||||
};
|
||||
gamemode = {
|
||||
enable = true;
|
||||
};
|
||||
gamemode = { enable = true; };
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, inputs, ... }: {
|
||||
virtualisation.libvirtd.enable = true;
|
||||
environment.systemPackages = with pkgs; [gnome-boxes];
|
||||
environment.systemPackages = with pkgs; [ gnome-boxes ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,5 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
readlink = "${pkgs.coreutils}/bin/readlink";
|
||||
notify-send = "${pkgs.libnotify}/bin/notify-send";
|
||||
in {
|
||||
|
|
@ -12,7 +9,7 @@ in {
|
|||
systemd-networkd-wait-online.enable = lib.mkForce false;
|
||||
clean-keychain = {
|
||||
description = "Clean up .keychain on boot";
|
||||
wantedBy = ["multi-user.target"];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${pkgs.coreutils-full}/bin/rm -rf /home/don/.keychain";
|
||||
|
|
@ -32,15 +29,13 @@ in {
|
|||
${notify-send} --urgency=low --icon=system-reboot "Reboot is needed for a NixOS upgrade."
|
||||
fi
|
||||
'';
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
};
|
||||
serviceConfig = { Type = "oneshot"; };
|
||||
};
|
||||
};
|
||||
timers = {
|
||||
detect-reboot-for-upgrade = {
|
||||
wantedBy = ["timers.target"];
|
||||
partOf = ["detect-reboot-for-upgrade.service"];
|
||||
wantedBy = [ "timers.target" ];
|
||||
partOf = [ "detect-reboot-for-upgrade.service" ];
|
||||
timerConfig = {
|
||||
OnCalendar = "hourly";
|
||||
Unit = "detect-reboot-for-upgrade.service";
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,4 +1,4 @@
|
|||
{pkgs, ...}: {
|
||||
{ pkgs, ... }: {
|
||||
system.activationScripts.diff = {
|
||||
supportsDryActivation = true;
|
||||
text = ''
|
||||
|
|
|
|||
|
|
@ -1,14 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../server
|
||||
];
|
||||
{ inputs, outputs, lib, config, pkgs, ... }: {
|
||||
imports = [ ./hardware-configuration.nix ../../server ];
|
||||
networking.hostName = "www2";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,29 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
{ config, lib, pkgs, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"ehci_pci"
|
||||
"ahci"
|
||||
"usbhid"
|
||||
"ums_realtek"
|
||||
"sd_mod"
|
||||
"sr_mod"
|
||||
];
|
||||
boot.initrd.kernelModules = ["dm-snapshot"];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "ehci_pci" "ahci" "usbhid" "ums_realtek" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/4a1d2915-6964-4479-98c6-d17e333e83e9";
|
||||
|
|
@ -35,7 +20,7 @@
|
|||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
|
@ -45,5 +30,6 @@
|
|||
# networking.interfaces.enp0s25.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue