diff --git a/hosts/display/colmena.nix b/hosts/display/colmena.nix new file mode 100644 index 0000000..755457f --- /dev/null +++ b/hosts/display/colmena.nix @@ -0,0 +1,4 @@ +{ inputs, outputs, lib, config, pkgs, ... }: { + imports = [ ./default.nix ]; + deployment = { tags = [ "arm" ]; }; +} diff --git a/hosts/display/default.nix b/hosts/display/default.nix index 1e61f12..d35fbbf 100644 --- a/hosts/display/default.nix +++ b/hosts/display/default.nix @@ -2,8 +2,14 @@ imports = [ inputs.nixos-hardware.nixosModules.raspberry-pi-4 ./hardware-configuration.nix - ../../server + ../server ./kiosk.nix ]; networking.hostName = "display"; + nixpkgs.overlays = [ + (final: super: { + makeModulesClosure = x: + super.makeModulesClosure (x // { allowMissing = true; }); + }) + ]; } diff --git a/hosts/display/hardware-configuration.nix b/hosts/display/hardware-configuration.nix new file mode 100644 index 0000000..9386dbf --- /dev/null +++ b/hosts/display/hardware-configuration.nix @@ -0,0 +1,32 @@ +# 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") ]; + + boot.initrd.availableKernelModules = [ ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ ]; + boot.extraModulePackages = [ ]; + boot.loader.grub.enable = false; + boot.loader.generic-extlinux-compatible.enable = true; + + fileSystems."/" = { + device = "/dev/disk/by-label/NIXOS_SD"; + fsType = "ext4"; + options = [ "noatime" ]; + }; + + 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 + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enu1u1.useDHCP = lib.mkDefault true; + # networking.interfaces.wlan0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; + powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand"; +} diff --git a/hosts/display/kiosk.nix b/hosts/display/kiosk.nix index 5a6de7b..acafead 100644 --- a/hosts/display/kiosk.nix +++ b/hosts/display/kiosk.nix @@ -2,8 +2,9 @@ environment.systemPackages = with pkgs; [ cog ]; services.cage = { - enable = true; - user = "don"; - program = "${pkgs.cog}/bin/cog http://homeassistant.home.duckland.org:8123/dashboard-pi/0"; + enable = true; + user = "don"; + program = + "${pkgs.cog}/bin/cog http://homeassistant.home.duckland.org:8123/dashboard-pi/0"; }; }