Use an old non PSR-0 library with Symfony2 and integrate it with composer (using gitlab)

Since the title summarize enough the content, here there are the steps!

Create the Git repo and format it in a way compatible with composer


        [your stuff]

Fill the composer.json file with some info about your library

  "name": "yourpackagename",
  "description": "PHP library for...",
  "license": "",
  "authors": [{
  "name": "aaa",
  "email": "bbb"
"require": {
"require-dev": {
"autoload": {
  "psr-0": { "": "src/" },
  "classmap": ["lib/"]

All the magic relies on the autoload section. Composer will generate a map of your non PSL-0 compliant library and will push it into the autoload process of your Symfony2 application.

Add your repository to Symfony2 composer.json file

"repositories": [
            "type": "vcs",
            "url": "[your account]/[your repo].git",
            "options": {
                "ssh2": {
                    "user": "git", 
                    "pubkey_file": "~/.ssh/",
                        "privkey_file": "~/.ssh/id_rsa"                

Always remember to add the key for the user which will launch the composer.phar script (so we are assuming that the repository is private!).

Require your package, maybe the dev-master (in case you are still developing it)

    "require": {
        [other stuff],