# SPDX-FileCopyrightText: 2022 Richard Brežák # # SPDX-License-Identifier: LGPL-3.0-or-later { inputs, lib', config, ... }: let inherit (lib') flip mapAttrs singleton loadSecrets mkAfter; config' = config; in { flake.nixosConfigurations.omen = inputs.nixpkgs.lib.nixosSystem { system = "x86_64-linux"; lib = lib'; specialArgs = { config' = config'; inputs' = inputs; secret = loadSecrets inputs.secret; }; modules = singleton ({ pkgs, lib, config, secret, ... }: { imports = [ ./xserver.nix ../../common/steam.nix ./grub.nix ./networking.nix ./filesystems.nix ./hardware.nix ./users.nix ./nixpkgs.nix ../../common/sound.nix ./firewall.nix ./microvm.nix ./impermenance.nix # ./test-vm.nix inputs.dwarffs.nixosModules.dwarffs inputs.microvm.nixosModules.host inputs.notnft.nixosModules.default inputs.self.nixosModules.notnft inputs.self.nixosModules.microvm-extras-host inputs.impermenance.nixosModules.impermanence ]; _module.args.nixinate = { host = secret.network.ips.omen.vpn or ""; sshUser = "main"; buildOn = "local"; substituteOnTarget = true; hermetic = false; nixOptions = [ "--override-input secret path://$HOME/dotfiles/secret" ]; }; services.fwupd.enable = true; services.syncthing = { enable = true; user = "main"; group = "main"; }; services.sshd.enable = true; # Makes QEMU recompile https://github.com/NixOS/nixpkgs/issues/221056 boot.binfmt.emulatedSystems = [ "aarch64-linux" "riscv64-linux" ]; time.timeZone = "Europe/Amsterdam"; system.stateVersion = "20.09"; virtualisation.podman.enable = true; virtualisation.podman.dockerCompat = true; }); }; }