xmonad-config/lib/Projects.hs

85 lines
3.7 KiB
Haskell
Raw Normal View History

module Projects (
Projects.modify
) where
import XMonad
import XMonad.Actions.DynamicProjects
2019-04-17 16:14:19 +02:00
import XMonad.Util.Run
2019-12-03 14:46:51 +01:00
spinVimAndSt :: String -> String -> Project
spinVimAndSt dir name =
2019-09-25 09:03:53 +02:00
Project { projectName = name
2019-12-03 14:46:51 +01:00
, projectDirectory = dir <> name
2019-09-25 09:03:53 +02:00
, projectStartHook = Just $ do safeSpawn "vim" ["-g", "+set guifont=Victor\\ Mono\\ SemiBold\\ 18|e ."]
2019-12-03 14:46:51 +01:00
safeSpawn "st" ["-f","Iosevka Samae-18","-e","tmux","new","-A","-s",name]
2019-09-25 09:03:53 +02:00
}
2019-12-03 14:46:51 +01:00
workProject = spinVimAndSt "~/relex/"
candyProject = spinVimAndSt "~/candy/"
projects :: [Project]
2019-12-03 14:46:51 +01:00
projects = [ candyProject "adventOfCode"
, workProject "ToyVault"
, workProject "ansible-ci"
, workProject "atlantis"
, workProject "bob-the-builder"
, workProject "docker-images"
, workProject "gitlab-runners"
, workProject "infra-inventory"
, workProject "isengard"
, workProject "mordor-ca"
, workProject "mordor-dashboard"
, workProject "mordor-the-repo-1"
, workProject "mordor-the-repo-2"
, workProject "mordor-the-repo-3"
, workProject "mordor-deploy"
, workProject "mordor-kvm"
, workProject "mordor-ops"
, workProject "mordorbooks"
, workProject "nix-role"
, workProject "nixpkgs"
, workProject "time-tracking"
, Project { projectName = "status"
, projectDirectory = "/tmp"
, projectStartHook = Just $ do safeSpawn "st" ["-f","Iosevka Samae-12","-e","sudo","speedometer.py","-r","wlan0","-t","wlan0"]
}
2019-09-25 09:03:53 +02:00
, Project { projectName = "admin"
2019-04-17 16:14:19 +02:00
, projectDirectory = "~/admin"
2019-12-03 14:46:51 +01:00
, projectStartHook = Just $ do safeSpawn "vim" ["-g", "+set guifont=Victor\\ Mono\\ SemiBold\\ 18|e ."]
safeSpawn "st" ["-f","Iosevka Samae-18","-e","tmux","new","-A","-s","admin"]
}
2019-04-17 16:14:19 +02:00
, Project { projectName = "email"
, projectDirectory = "~/mail"
, projectStartHook = Just $ do safeSpawnProg "st"
}
, Project { projectName = "frs"
, projectDirectory = "/tmp"
, projectStartHook = Just $ do safeSpawnProg "frs"
}
, Project { projectName = "fre"
, projectDirectory = "/tmp"
, projectStartHook = Just $ do safeSpawnProg "fre"
}
, Project { projectName = "network-graph"
, projectDirectory = "~/relex/catch-a-network-bug/csvplotter"
, projectStartHook = Just $ do safeSpawn "zathura" ["weekXGraph.pdf"]
safeSpawnProg "st"
}
, Project { projectName = "sound"
, projectDirectory = "/tmp"
, projectStartHook = Just $ do safeSpawnProg "pavucontrol"
}
, Project { projectName = "daily"
, projectDirectory = "/tmp"
2019-12-03 14:46:51 +01:00
, projectStartHook = Just $ do safeSpawnProg "chromium"
}
2019-09-25 09:03:53 +02:00
, Project { projectName = "notes"
, projectDirectory = "~/vimwiki/"
, projectStartHook = Just $ do safeSpawn "vim" ["-g", "+set guifont=Victor\\ Mono\\ SemiBold\\ 18|VimwikiMakeDiaryNote"]
}
]
modify :: XConfig l -> XConfig l
modify conf = dynamicProjects projects conf
2018-05-28 19:53:36 +02:00
{ workspaces = [] }