---
title: "Customising package source types "
date: "2022-04-26T22:44:13+00:00"
summary: "Customize Site Studio Sync package sources with ease. Learn to create and register custom package source services, override existing types, and define new metadata for enhanced flexibility in managing your Drupal site's content and configuration."
image:
type: "page"
url: "/drupal-starter-kits/add-ons/site-studio/customising-package-source-types"
id: "62050cd8-88f2-49b1-9a07-4a62e9296c47"
---

Site Studio Sync includes a **source** **type** of **default\_module\_package**. This type is handled by  the `modules/cohesion_sync/src/Services/DefaultModulePackage.php` service. Package source type services are gathered by `PackageSourceManager` service collector using `sitestudio_package_source` tag. It is possible to add your own custom types that would handle default packages in a different manner, for example fetching package stored in a remote FTP or AWS S3 bucket. To do so, you would need to follow these steps:

1.  Write your own package source service that Implements `Drupal\cohesion_sync\Services\PackageSourceServiceInterface` interface.
2.  Register your service using `sitestudio_package_source` tag and appropriate priority, depending if you are registering a new source **type** or overriding an existing one.
3.  Define your `site_studio.packages.yml` containing your new (or overridden) **type** and relevant metadata in **source** property.

More information about service collection and service tags is available [here](https://www.drupal.org/docs/8/api/services-and-dependency-injection/service-tags).