add linux support & add reading environment variables