{ config, lib, pkgs, ... }: { imports = [ ]; options.me = { sm64ex.enable = lib.mkOption { type = lib.types.bool; default = false; example = true; description = "Whether we want to install sm64ex."; }; }; config = lib.mkIf config.me.sm64ex.enable ( lib.mkMerge [ (lib.mkIf config.me.graphical { allowedUnfree = [ "sm64ex" ]; environment.systemPackages = with pkgs; [ sm64ex ]; # nixpkgs.overlays = [ # (final: prev: { # sm4ex = prev.sm64ex.override { # baseRom.name = "SuperMario64.z64"; # }; # }) # ]; # TODO perhaps install ~/.local/share/sm64ex/sm64config.txt environment.persistence."/persist" = lib.mkIf (!config.me.buildingIso) { hideMounts = true; users.talexander = { directories = [ { directory = ".local/share/sm64ex"; user = "talexander"; group = "talexander"; mode = "0755"; } ]; }; }; }) ] ); }