how is Linux GHC formed?