Sobre o projeto

awake é um pequeno utilitário de linha de comando para macOS que mantém um Mac acordado enquanto a automação da GUI é executada. Ele usa uma única invocação do caffeinate com os flags -disu para bloquear a suspensão da tela, a suspensão ociosa do sistema, a suspensão na energia AC e para declarar atividade do usuário, de modo que o temporizador de ociosidade do protetor de tela não acumule. As asserções são mantidas apenas pela duração solicitada e depois liberadas; nenhuma configuração do sistema é modificada. A ferramenta suporta durações como 2h, 90m, 45s ou segundos, operação em segundo plano com -b, relatório de status que mostra as asserções realmente mantidas e as instâncias em execução, e awake off para parar todas as instâncias. Ela rastreia as instâncias pela linha de comando em vez de pidfile, de modo que instâncias iniciadas em outros terminais permaneçam controláveis. A interface segue o idioma do Mac, com inglês e chinês simplificado incluídos, e pode ser substituída via AWAKE_LANG. awake inclui uma interface de terminal com um indicador de progresso de respiração, suporte a truecolor e 256 cores, tratamento de NO_COLOR e saída em texto simples quando redirecionada. O loop de animação é implementado com builtins do zsh para evitar forks de processo por quadro. Ele não impede bloqueios manuais, suspensão ao fechar a tampa, nem faz alterações permanentes. A instalação é um simples clone e symlink para um diretório no PATH, exigindo apenas zsh e ferramentas padrão do macOS.