O problema em sua abordagem é que você usa exec
.
$ help exec
exec: exec [-cl] [-a name] [command [arguments ...]] [redirection ...]
Replace the shell with the given command.
Execute COMMAND, replacing this shell with the specified program.
ARGUMENTS become the arguments to COMMAND. If COMMAND is not specified,
any redirections take effect in the current shell.
[...]
Se você omitir o exec
e simplesmente executar seu executável como mostrado abaixo, sua sessão de login não deverá terminar quando você fechar o aplicativo.
exec /home/TUI/bin/main
No entanto, consulte Como faço para iniciar aplicativos automaticamente no login? para abordagens alternativas (e possivelmente mais fáceis) para iniciar automaticamente aplicativos no login.