Setup hera
This commit is contained in:
parent
1803ca2f6e
commit
67bdab2107
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1 +1,2 @@
|
||||||
configuration.nix
|
configuration.nix
|
||||||
|
local
|
||||||
|
|
|
@ -28,4 +28,5 @@
|
||||||
|
|
||||||
nix.maxJobs = lib.mkDefault 4;
|
nix.maxJobs = lib.mkDefault 4;
|
||||||
powerManagement.cpuFreqGovernor = "ondemand";
|
powerManagement.cpuFreqGovernor = "ondemand";
|
||||||
|
security.rngd.enable = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,9 +4,11 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ];
|
imports = [
|
||||||
|
<nixpkgs/nixos/modules/profiles/qemu-guest.nix>
|
||||||
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" ];
|
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "sr_mod" "virtio_blk" ];
|
||||||
boot.kernelModules = [ ];
|
boot.kernelModules = [ ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
@ -16,7 +18,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" =
|
||||||
{ device = "/dev/disk/by-uuid/A8E7-3962";
|
{ device = "/dev/disk/by-uuid/3D8A-20F0";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -5,8 +5,4 @@ imports = [
|
||||||
../../home-manager
|
../../home-manager
|
||||||
];
|
];
|
||||||
|
|
||||||
m-0.rustdev.enable = true;
|
|
||||||
m-0.taskwarrior.enable = true;
|
|
||||||
m-0.eventd.enable = true;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
BIN
hosts/hera/secret/boot_rsa
Normal file
BIN
hosts/hera/secret/boot_rsa
Normal file
Binary file not shown.
|
@ -7,6 +7,7 @@
|
||||||
../common/secret
|
../common/secret
|
||||||
../common/private-options.nix
|
../common/private-options.nix
|
||||||
./modules/laptop.nix
|
./modules/laptop.nix
|
||||||
|
./modules/server.nix
|
||||||
./admin.nix
|
./admin.nix
|
||||||
./syncthing.nix
|
./syncthing.nix
|
||||||
./modules/cdarknet
|
./modules/cdarknet
|
||||||
|
@ -18,8 +19,6 @@
|
||||||
|
|
||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
security.rngd.enable = true;
|
|
||||||
|
|
||||||
# So that boot does not fill up with old kernels
|
# So that boot does not fill up with old kernels
|
||||||
boot.loader.grub.configurationLimit = 5;
|
boot.loader.grub.configurationLimit = 5;
|
||||||
|
|
||||||
|
@ -32,7 +31,10 @@
|
||||||
Defaults timestamp_type=global, timestamp_timeout=15
|
Defaults timestamp_type=global, timestamp_timeout=15
|
||||||
";
|
";
|
||||||
|
|
||||||
networking.firewall.allowPing = true;
|
networking = {
|
||||||
|
firewall.allowPing = true;
|
||||||
|
useDHCP = false;
|
||||||
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
sshd.enable = true;
|
sshd.enable = true;
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
{ config, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
boot.initrd.network = {
|
|
||||||
enable = true;
|
|
||||||
ssh = {
|
|
||||||
enable = true;
|
|
||||||
authorizedKeys = config.users.users.root.openssh.authorizedKeys.keys;
|
|
||||||
|
|
||||||
# generate file with
|
|
||||||
# dropbearkey -t rsa -f /etc/nixos/boot_rsa
|
|
||||||
# nix-env -iA nixos.dropbear
|
|
||||||
hostRSAKey = /etc/nixos/local/boot_rsa;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
23
system/modules/init_ssh.nix
Normal file
23
system/modules/init_ssh.nix
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
with lib;
|
||||||
|
{
|
||||||
|
|
||||||
|
config = mkIf config.m-0.server.enable {
|
||||||
|
boot.initrd = {
|
||||||
|
network = {
|
||||||
|
enable = true;
|
||||||
|
ssh = {
|
||||||
|
enable = true;
|
||||||
|
authorizedKeys = config.users.users.root.openssh.authorizedKeys.keys;
|
||||||
|
|
||||||
|
# generate file with
|
||||||
|
# dropbearkey -t rsa -f /etc/nixos/boot_rsa
|
||||||
|
# nix-env -iA nixos.dropbear
|
||||||
|
hostRSAKey = ../../local/secret/boot_rsa;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
postMountCommands = "ip link set eth0 down";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -4,6 +4,7 @@ with lib;
|
||||||
options = {
|
options = {
|
||||||
m-0.laptop.enable = mkOption {
|
m-0.laptop.enable = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
config = mkIf config.m-0.laptop.enable {
|
config = mkIf config.m-0.laptop.enable {
|
||||||
|
|
|
@ -1,21 +1,26 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
|
with lib;
|
||||||
{
|
{
|
||||||
options = {
|
|
||||||
m-0.server.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.m-0.server.enable {
|
imports = [ ./init_ssh.nix ];
|
||||||
nix = {
|
|
||||||
gc = {
|
options = {
|
||||||
automatic = true;
|
m-0.server.enable = mkOption {
|
||||||
options = "--delete-older-than 5d";
|
type = types.bool;
|
||||||
};
|
default = false;
|
||||||
optimise.automatic = true;
|
|
||||||
};
|
|
||||||
system.autoUpgrade.enable = true;
|
|
||||||
system.autoUpgrade.dates = "22:00";
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf config.m-0.server.enable {
|
||||||
|
nix = {
|
||||||
|
gc = {
|
||||||
|
automatic = true;
|
||||||
|
options = "--delete-older-than 5d";
|
||||||
|
};
|
||||||
|
optimise.automatic = true;
|
||||||
|
};
|
||||||
|
system.autoUpgrade.enable = true;
|
||||||
|
system.autoUpgrade.dates = "22:00";
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue