xmonad-config/lib/Projects.hs

58 lines
1.8 KiB
Haskell

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 = [] }