This moves the various projects from "type-based" folders (such as "services" or "tools") into more appropriate semantic folders (such as "nix", "ops" or "web"). Deprecated projects (nixcon-demo & gotest) which only existed for testing/demonstration purposes have been removed. (Note: *all* builds are broken with this commit)
		
			
				
	
	
		
			24 lines
		
	
	
	
		
			537 B
		
	
	
	
		
			Haskell
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
	
		
			537 B
		
	
	
	
		
			Haskell
		
	
	
	
	
	
-- | Main module for the blog's web server
 | 
						|
module Main where
 | 
						|
 | 
						|
import Control.Applicative ((<$>), (<*>))
 | 
						|
import Server (runBlog)
 | 
						|
import System.Environment (getEnv)
 | 
						|
 | 
						|
data MainOptions
 | 
						|
  = MainOptions
 | 
						|
      { blogPort :: Int,
 | 
						|
        resourceDir :: String
 | 
						|
        }
 | 
						|
 | 
						|
readOpts :: IO MainOptions
 | 
						|
readOpts =
 | 
						|
  MainOptions
 | 
						|
    <$> (fmap read $ getEnv "PORT")
 | 
						|
    <*> getEnv "RESOURCE_DIR"
 | 
						|
 | 
						|
main :: IO ()
 | 
						|
main = do
 | 
						|
  opts <- readOpts
 | 
						|
  putStrLn ("tazblog starting on port " ++ (show $ blogPort opts))
 | 
						|
  runBlog (blogPort opts) (resourceDir opts)
 |