write source recipe