module Projects ( Projects.modify ) where import XMonad import XMonad.Actions.DynamicProjects import XMonad.Util.Run singleApp :: String -> Project singleApp app = Project { projectName = app , projectDirectory = "/tmp" , projectStartHook = Just $ do spawn app } projects :: [Project] projects = [ singleApp "reaper" , singleApp "renoise" , singleApp "steam" , Project { projectName = "admin" , projectDirectory = "~/admin" , projectStartHook = Just $ do safeSpawn "vim" ["-g"] safeSpawnProg "alacritty" } , Project { projectName = "notes" , projectDirectory = "~/zk" , projectStartHook = Just $ do safeSpawn "vim" ["-g"] safeSpawnProg "alacritty" } , Project { projectName = "advent" , projectDirectory = "~/candy/2020-adventofcode" , projectStartHook = Just $ do safeSpawn "vim" ["-g"] safeSpawnProg "alacritty" } , Project { projectName = "accounting" , projectDirectory = "~/accounting" , projectStartHook = Just $ do safeSpawnProg "alacritty" } , Project { projectName = "flim" , projectDirectory = "/flims/rtorrent/download" , projectStartHook = Just $ do safeSpawnProg "alacritty" } , Project { projectName = "sound" , projectDirectory = "/tmp" , projectStartHook = Just $ do safeSpawnProg "pavucontrol" } , Project { projectName = "web" , projectDirectory = "/tmp" , projectStartHook = Just $ do spawn "firefox" } ] modify :: XConfig l -> XConfig l modify conf = dynamicProjects projects conf { workspaces = [] }