#!/usr/bin/env python
# -*- coding: utf-8 -*-

pkginfos = {
    'deb': {
        'revision': '-1',
        'extension': 'deb',
        'docsuffix': '-doc',
        'devsuffix': '-dev',
        'debugsuffix': '-dbg',
        'separator1': '_',
        'separator2': '_',
        'i586': 'i386',
        'x86_64': 'amd64',
        'armv7l': 'armhf',
        'aarch64': 'arm64',
        'noarch': 'all'
    },
    'rpm': {
        'extension': 'rpm',
        'docsuffix': '-doc',
        'devsuffix': '-devel',
        'debugsuffix': '-debuginfo',
        'separator1': '-',
        'separator2': '.',
        'i586': 'i686'
    },
    'pkg.tar.zst': {
        'extension': 'pkg.tar.zst',
        'separator1': '-',
        'separator2': '-',
        'i586': 'i686'
    }
}

distinfos = {
    '^x?Ubuntu_.*': {
        'libsuffix': '0',
        'format': pkginfos['deb']
    },
    '^Debian_.*': {
        'libsuffix': '0',
        'format': pkginfos['deb']
    },
    '^Raspbian_.*': {
        'libsuffix': '0',
        'format': pkginfos['deb']
    },
    '^Fedora_.*': {
        'format': pkginfos['rpm']
    },
    '^CentOS_.*': {
        'format': pkginfos['rpm']
    },
    '^RHEL_.*': {
        'format': pkginfos['rpm']
    },
    '^RockyLinux_.*': {
        'format': pkginfos['rpm']
    },
    '^openSUSE_.*': {
        'libsuffix': '0',
        'format': pkginfos['rpm']
    },
    '^SLE_.*': {
        'libsuffix': '0',
        'format': pkginfos['rpm']
    },
    '^Mageia_.*': {
        'libsuffix': '0',
        'format': pkginfos['rpm']
    },
    '^Arch_.*': {
        'format': pkginfos['pkg.tar.zst']
    }
}

plugins = {
    'db': {
        'enabled': False,
        'conf': {
            'host': '',
            'user': '',
            'password': '',
            'database': ''
        }
    },
    'repo': {
        'enabled': False,
        'conf': {
            'repo_script': '',
            'output_script': ''
        }
    },
    'filelogger': {
        'enabled': False,
        'conf': {
            'log_info': True,
            'log_info_path': '',
            'log_error': True,
            'log_error_path': '',
            'log_fatal': True,
            'log_fatal_path': ''
        }
    },
}

projects = {
    'ZenLib': {
        'short': 'zl',
        'packages': [
            {
                'name': 'libzen',
                'kind': 'lib',
                'dest': 'libzen0',
                'v5suffix': True,
                'plugins': {
                    'db': {
                        'name': 'libname'
                    }
                }
            },
            {
                'name': 'libzen',
                'kind': 'dbg',
                'dest': 'libzen0',
                'v5suffix': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedbg'
                    }
                }
            },
            {
                'name': 'libzen',
                'kind': 'dev',
                'dest': 'libzen0',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedev'
                    }
                }
            },
            {
                'name': 'libzen',
                'kind': 'doc',
                'dest': 'libzen0',
                'universal': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedoc'
                    }
                }
            }
        ]
    },
    'MediaInfoLib': {
        'short': 'mil',
        'packages': [
            {
                'name': 'libmediainfo',
                'kind': 'lib',
                'dest': 'libmediainfo0',
                'v5suffix': True,
                'plugins': {
                    'db': {
                        'name': 'libname'
                    }
                }
            },
            {
                'name': 'libmediainfo',
                'kind': 'dbg',
                'dest': 'libmediainfo0',
                'v5suffix': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedbg'
                    }
                }
            },
            {
                'name': 'libmediainfo',
                'kind': 'dev',
                'dest': 'libmediainfo0',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedev'
                    }
                }
            },
            {
                'name': 'libmediainfo',
                'kind': 'doc',
                'dest': 'libmediainfo0',
                'universal': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedoc'
                    }
                }
            },
            {
                'name': 'python-mediainfo',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'exclude': ['^(?!Arch_).*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython3'
                    }
                }
            },
            {
                'name': 'python-mediainfodll',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'universal': True,
                'exclude': ['^(?!(xUbuntu_)|(Debian_)|(Raspbian_)).*', '^Ubuntu_.*', '^SLE_12_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython'
                    }
                }
            },
            {
                'name': 'python3-mediainfodll',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'universal': True,
                'exclude': ['^(?!(x?Ubuntu_)|(Debian_)|(Raspbian_)).*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython3'
                    }
                }
            },
            {
                'name': 'python2-mediainfo',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'exclude': ['^(?!(SLE_)|(openSUSE_)|(Mageia_)|(Fedora_)).*', '^SLE_12_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython'
                    }
                }
            },
            {
                'name': 'python3-mediainfo',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'exclude': ['^(?!(SLE_)|(openSUSE_)|(Mageia_)|(Fedora_)).*', '^SLE_12_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython3'
                    }
                }
            }
        ]
    },
    'MediaInfo': {
        'short': 'mi',
        'packages': [
            {
                'name': 'mediainfo',
                'kind': 'bin',
                'dest': 'mediainfo',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'mediainfo',
                'kind': 'dbg',
                'dest': 'mediainfo',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'mediainfo-gui',
                'kind': 'bin',
                'dest': 'mediainfo-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'mediainfo-gui',
                'kind': 'dbg',
                'dest': 'mediainfo-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'MediaConch': {
        'short': 'mc',
        'packages': [
            {
                'name': 'libmediaconch',
                'kind': 'lib',
                'dest': 'libmediaconch0',
                'plugins': {
                    'db': {
                        'name': 'libname'
                    }
                }
            },
            {
                'name': 'libmediaconch',
                'kind': 'dbg',
                'dest': 'libmediaconch0',
                'plugins': {
                    'db': {
                        'name': 'libnamedbg'
                    }
                }
            },
            {
                'name': 'libmediaconch',
                'kind': 'dev',
                'dest': 'libmediaconch0',
                'plugins': {
                    'db': {
                        'name': 'libnamedev'
                    }
                }
            },
            {
                'name': 'mediaconch',
                'kind': 'bin',
                'dest': 'mediaconch',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'mediaconch',
                'kind': 'dbg',
                'dest': 'mediaconch',
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'mediaconch-server',
                'kind': 'bin',
                'dest': 'mediaconch-server',
                'plugins': {
                    'db': {
                        'name': 'servername'
                    }
                }
            },
            {
                'name': 'mediaconch-server',
                'kind': 'dbg',
                'dest': 'mediaconch-server',
                'exclude': ['^RHEL_7$', '^CentOS_7$'],
                'plugins': {
                    'db': {
                        'name': 'servernamedbg'
                    }
                }
            },
            {
                'name': 'mediaconch-gui',
                'kind': 'bin',
                'dest': 'mediaconch-gui',
                'exclude': ['^RHEL_.*', '^CentOS_.*', '^RockyLinux_.*'],
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'mediaconch-gui',
                'kind': 'dbg',
                'dest': 'mediaconch-gui',
                'exclude': ['^RHEL_.*', '^CentOS_.*', '^RockyLinux_.*'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'BWFMetaEdit': {
        'short': 'bm',
        'packages': [
            {
                'name': 'bwfmetaedit',
                'kind': 'bin',
                'dest': 'bwfmetaedit',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'bwfmetaedit',
                'kind': 'dbg',
                'dest': 'bwfmetaedit',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'bwfmetaedit-gui',
                'kind': 'bin',
                'dest': 'bwfmetaedit-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'bwfmetaedit-gui',
                'kind': 'dbg',
                'dest': 'bwfmetaedit-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'MOVMetaEdit': {
        'short': 'mm',
        'packages': [
            {
                'name': 'movmetaedit',
                'kind': 'bin',
                'dest': 'movmetaedit',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'movmetaedit',
                'kind': 'dbg',
                'dest': 'movmetaedit',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'movmetaedit-gui',
                'kind': 'bin',
                'dest': 'movmetaedit-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'movmetaedit-gui',
                'kind': 'dbg',
                'dest': 'movmetaedit-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'AVIMetaEdit': {
        'short': 'am',
        'packages': [
            {
                'name': 'avimetaedit',
                'kind': 'bin',
                'dest': 'avimetaedit',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'avimetaedit',
                'kind': 'dbg',
                'dest': 'avimetaedit',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'avimetaedit-gui',
                'kind': 'bin',
                'dest': 'avimetaedit-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'avimetaedit-gui',
                'kind': 'dbg',
                'dest': 'avimetaedit-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'DVAnalyzer': {
        'short': 'dv',
        'packages': [
            {
                'name': 'dvanalyzer',
                'kind': 'bin',
                'dest': 'dvanalyzer',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'dvanalyzer',
                'kind': 'dbg',
                'dest': 'dvanalyzer',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'dvanalyzer-gui',
                'kind': 'bin',
                'dest': 'dvanalyzer-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'dvanalyzer-gui',
                'kind': 'dbg',
                'dest': 'dvanalyzer-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'RAWcooked': {
        'short': 'rc',
        'packages': [
            {
                'name': 'rawcooked',
                'kind': 'bin',
                'dest': 'rawcooked',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'rawcooked',
                'kind': 'dbg',
                'dest': 'rawcooked',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            }
        ]
    },
    'QCTools': {
        'short': 'qc',
        'packages': [
            {
                'name': 'qcli',
                'kind': 'bin',
                'dest': 'qcli',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'qcli',
                'kind': 'dbg',
                'dest': 'qcli',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'qctools',
                'kind': 'bin',
                'dest': 'qctools',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'qctools',
                'kind': 'dbg',
                'dest': 'qctools',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'dvrescue': {
        'short': 'dr',
        'packages': [
            {
                'name': 'dvrescue',
                'kind': 'bin',
                'dest': 'dvrescue',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'dvrescue',
                'kind': 'dbg',
                'dest': 'dvrescue',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'dvrescue-gui',
                'kind': 'bin',
                'dest': 'dvrescue-gui',
                'exclude': ['^xUbuntu_18.04$', '^openSUSE_.*', '^SLE_.*', '^CentOS_.*', '^RHEL_.*', '^RockyLinux_.*', '^Mageia_.*'],
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'dvrescue-gui',
                'kind': 'dbg',
                'dest': 'dvrescue-gui',
                'exclude': ['^Arch_.*', '^xUbuntu_18.04$', '^openSUSE_.*', '^SLE_.*', '^CentOS_.*', '^RHEL_.*', '^RockyLinux_.*', '^Mageia_.*'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'ffmpeg-ma': {
        'short': 'fm',
        'packages': [
            {
                'name': 'ffmpeg-ma',
                'kind': 'bin',
                'dest': 'ffmpeg',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            }
        ]
    },
    'sony9pin': {
        'short': 'sp',
        'packages': [
            {
                'name': 'sony9pin',
                'kind': 'bin',
                'dest': 'sony9pin',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'sony9pin',
                'kind': 'dbg',
                'dest': 'sony9pin',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            }
        ]
    }
}

92e7787b08a1450760a55bd73cd4a22ab4f63173
<mask token>

pkginfos = {'deb': {'revision': '-1', 'extension': 'deb', 'docsuffix':
    '-doc', 'devsuffix': '-dev', 'debugsuffix': '-dbg', 'separator1': '_',
    'separator2': '_', 'i586': 'i386', 'x86_64': 'amd64', 'armv7l': 'armhf',
    'aarch64': 'arm64', 'noarch': 'all'}, 'rpm': {'extension': 'rpm',
    'docsuffix': '-doc', 'devsuffix': '-devel', 'debugsuffix': '-debuginfo',
    'separator1': '-', 'separator2': '.', 'i586': 'i686'}, 'pkg.tar.zst': {
    'extension': 'pkg.tar.zst', 'separator1': '-', 'separator2': '-',
    'i586': 'i686'}}
distinfos = {'^x?Ubuntu_.*': {'libsuffix': '0', 'format': pkginfos['deb']},
    '^Debian_.*': {'libsuffix': '0', 'format': pkginfos['deb']},
    '^Raspbian_.*': {'libsuffix': '0', 'format': pkginfos['deb']},
    '^Fedora_.*': {'format': pkginfos['rpm']}, '^CentOS_.*': {'format':
    pkginfos['rpm']}, '^RHEL_.*': {'format': pkginfos['rpm']},
    '^RockyLinux_.*': {'format': pkginfos['rpm']}, '^openSUSE_.*': {
    'libsuffix': '0', 'format': pkginfos['rpm']}, '^SLE_.*': {'libsuffix':
    '0', 'format': pkginfos['rpm']}, '^Mageia_.*': {'libsuffix': '0',
    'format': pkginfos['rpm']}, '^Arch_.*': {'format': pkginfos['pkg.tar.zst']}
    }
plugins = {'db': {'enabled': False, 'conf': {'host': '', 'user': '',
    'password': '', 'database': ''}}, 'repo': {'enabled': False, 'conf': {
    'repo_script': '', 'output_script': ''}}, 'filelogger': {'enabled': 
    False, 'conf': {'log_info': True, 'log_info_path': '', 'log_error': 
    True, 'log_error_path': '', 'log_fatal': True, 'log_fatal_path': ''}}}
projects = {'ZenLib': {'short': 'zl', 'packages': [{'name': 'libzen',
    'kind': 'lib', 'dest': 'libzen0', 'v5suffix': True, 'plugins': {'db': {
    'name': 'libname'}}}, {'name': 'libzen', 'kind': 'dbg', 'dest':
    'libzen0', 'v5suffix': True, 'exclude': ['^Arch_.*'], 'plugins': {'db':
    {'name': 'libnamedbg'}}}, {'name': 'libzen', 'kind': 'dev', 'dest':
    'libzen0', 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'libnamedev'}}}, {'name': 'libzen', 'kind': 'doc', 'dest': 'libzen0',
    'universal': True, 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'libnamedoc'}}}]}, 'MediaInfoLib': {'short': 'mil', 'packages': [{
    'name': 'libmediainfo', 'kind': 'lib', 'dest': 'libmediainfo0',
    'v5suffix': True, 'plugins': {'db': {'name': 'libname'}}}, {'name':
    'libmediainfo', 'kind': 'dbg', 'dest': 'libmediainfo0', 'v5suffix': 
    True, 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name': 'libnamedbg'}
    }}, {'name': 'libmediainfo', 'kind': 'dev', 'dest': 'libmediainfo0',
    'exclude': ['^Arch_.*'], 'plugins': {'db': {'name': 'libnamedev'}}}, {
    'name': 'libmediainfo', 'kind': 'doc', 'dest': 'libmediainfo0',
    'universal': True, 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'libnamedoc'}}}, {'name': 'python-mediainfo', 'kind': 'ext', 'dest':
    'libmediainfo0', 'exclude': ['^(?!Arch_).*'], 'plugins': {'db': {'name':
    'libnamepython3'}}}, {'name': 'python-mediainfodll', 'kind': 'ext',
    'dest': 'libmediainfo0', 'universal': True, 'exclude': [
    '^(?!(xUbuntu_)|(Debian_)|(Raspbian_)).*', '^Ubuntu_.*', '^SLE_12_.*'],
    'plugins': {'db': {'name': 'libnamepython'}}}, {'name':
    'python3-mediainfodll', 'kind': 'ext', 'dest': 'libmediainfo0',
    'universal': True, 'exclude': [
    '^(?!(x?Ubuntu_)|(Debian_)|(Raspbian_)).*'], 'plugins': {'db': {'name':
    'libnamepython3'}}}, {'name': 'python2-mediainfo', 'kind': 'ext',
    'dest': 'libmediainfo0', 'exclude': [
    '^(?!(SLE_)|(openSUSE_)|(Mageia_)|(Fedora_)).*', '^SLE_12_.*'],
    'plugins': {'db': {'name': 'libnamepython'}}}, {'name':
    'python3-mediainfo', 'kind': 'ext', 'dest': 'libmediainfo0', 'exclude':
    ['^(?!(SLE_)|(openSUSE_)|(Mageia_)|(Fedora_)).*', '^SLE_12_.*'],
    'plugins': {'db': {'name': 'libnamepython3'}}}]}, 'MediaInfo': {'short':
    'mi', 'packages': [{'name': 'mediainfo', 'kind': 'bin', 'dest':
    'mediainfo', 'plugins': {'db': {'name': 'cliname'}}}, {'name':
    'mediainfo', 'kind': 'dbg', 'dest': 'mediainfo', 'exclude': ['^Arch_.*'
    ], 'plugins': {'db': {'name': 'clinamedbg'}}}, {'name': 'mediainfo-gui',
    'kind': 'bin', 'dest': 'mediainfo-gui', 'plugins': {'db': {'name':
    'guiname'}}}, {'name': 'mediainfo-gui', 'kind': 'dbg', 'dest':
    'mediainfo-gui', 'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
    'plugins': {'db': {'name': 'guinamedbg'}}}]}, 'MediaConch': {'short':
    'mc', 'packages': [{'name': 'libmediaconch', 'kind': 'lib', 'dest':
    'libmediaconch0', 'plugins': {'db': {'name': 'libname'}}}, {'name':
    'libmediaconch', 'kind': 'dbg', 'dest': 'libmediaconch0', 'plugins': {
    'db': {'name': 'libnamedbg'}}}, {'name': 'libmediaconch', 'kind': 'dev',
    'dest': 'libmediaconch0', 'plugins': {'db': {'name': 'libnamedev'}}}, {
    'name': 'mediaconch', 'kind': 'bin', 'dest': 'mediaconch', 'plugins': {
    'db': {'name': 'cliname'}}}, {'name': 'mediaconch', 'kind': 'dbg',
    'dest': 'mediaconch', 'plugins': {'db': {'name': 'clinamedbg'}}}, {
    'name': 'mediaconch-server', 'kind': 'bin', 'dest': 'mediaconch-server',
    'plugins': {'db': {'name': 'servername'}}}, {'name':
    'mediaconch-server', 'kind': 'dbg', 'dest': 'mediaconch-server',
    'exclude': ['^RHEL_7$', '^CentOS_7$'], 'plugins': {'db': {'name':
    'servernamedbg'}}}, {'name': 'mediaconch-gui', 'kind': 'bin', 'dest':
    'mediaconch-gui', 'exclude': ['^RHEL_.*', '^CentOS_.*',
    '^RockyLinux_.*'], 'plugins': {'db': {'name': 'guiname'}}}, {'name':
    'mediaconch-gui', 'kind': 'dbg', 'dest': 'mediaconch-gui', 'exclude': [
    '^RHEL_.*', '^CentOS_.*', '^RockyLinux_.*'], 'plugins': {'db': {'name':
    'guinamedbg'}}}]}, 'BWFMetaEdit': {'short': 'bm', 'packages': [{'name':
    'bwfmetaedit', 'kind': 'bin', 'dest': 'bwfmetaedit', 'plugins': {'db':
    {'name': 'cliname'}}}, {'name': 'bwfmetaedit', 'kind': 'dbg', 'dest':
    'bwfmetaedit', 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'clinamedbg'}}}, {'name': 'bwfmetaedit-gui', 'kind': 'bin', 'dest':
    'bwfmetaedit-gui', 'plugins': {'db': {'name': 'guiname'}}}, {'name':
    'bwfmetaedit-gui', 'kind': 'dbg', 'dest': 'bwfmetaedit-gui', 'exclude':
    ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'], 'plugins': {'db': {'name':
    'guinamedbg'}}}]}, 'MOVMetaEdit': {'short': 'mm', 'packages': [{'name':
    'movmetaedit', 'kind': 'bin', 'dest': 'movmetaedit', 'plugins': {'db':
    {'name': 'cliname'}}}, {'name': 'movmetaedit', 'kind': 'dbg', 'dest':
    'movmetaedit', 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'clinamedbg'}}}, {'name': 'movmetaedit-gui', 'kind': 'bin', 'dest':
    'movmetaedit-gui', 'plugins': {'db': {'name': 'guiname'}}}, {'name':
    'movmetaedit-gui', 'kind': 'dbg', 'dest': 'movmetaedit-gui', 'exclude':
    ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'], 'plugins': {'db': {'name':
    'guinamedbg'}}}]}, 'AVIMetaEdit': {'short': 'am', 'packages': [{'name':
    'avimetaedit', 'kind': 'bin', 'dest': 'avimetaedit', 'plugins': {'db':
    {'name': 'cliname'}}}, {'name': 'avimetaedit', 'kind': 'dbg', 'dest':
    'avimetaedit', 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'clinamedbg'}}}, {'name': 'avimetaedit-gui', 'kind': 'bin', 'dest':
    'avimetaedit-gui', 'plugins': {'db': {'name': 'guiname'}}}, {'name':
    'avimetaedit-gui', 'kind': 'dbg', 'dest': 'avimetaedit-gui', 'exclude':
    ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'], 'plugins': {'db': {'name':
    'guinamedbg'}}}]}, 'DVAnalyzer': {'short': 'dv', 'packages': [{'name':
    'dvanalyzer', 'kind': 'bin', 'dest': 'dvanalyzer', 'plugins': {'db': {
    'name': 'cliname'}}}, {'name': 'dvanalyzer', 'kind': 'dbg', 'dest':
    'dvanalyzer', 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'clinamedbg'}}}, {'name': 'dvanalyzer-gui', 'kind': 'bin', 'dest':
    'dvanalyzer-gui', 'plugins': {'db': {'name': 'guiname'}}}, {'name':
    'dvanalyzer-gui', 'kind': 'dbg', 'dest': 'dvanalyzer-gui', 'exclude': [
    '^Arch_.*', '^CentOS_7$', '^RHEL_7$'], 'plugins': {'db': {'name':
    'guinamedbg'}}}]}, 'RAWcooked': {'short': 'rc', 'packages': [{'name':
    'rawcooked', 'kind': 'bin', 'dest': 'rawcooked', 'plugins': {'db': {
    'name': 'cliname'}}}, {'name': 'rawcooked', 'kind': 'dbg', 'dest':
    'rawcooked', 'exclude': ['^Arch_.*'], 'plugins': {'db': {'name':
    'clinamedbg'}}}]}, 'QCTools': {'short': 'qc', 'packages': [{'name':
    'qcli', 'kind': 'bin', 'dest': 'qcli', 'plugins': {'db': {'name':
    'cliname'}}}, {'name': 'qcli', 'kind': 'dbg', 'dest': 'qcli', 'exclude':
    ['^Arch_.*'], 'plugins': {'db': {'name': 'clinamedbg'}}}, {'name':
    'qctools', 'kind': 'bin', 'dest': 'qctools', 'plugins': {'db': {'name':
    'guiname'}}}, {'name': 'qctools', 'kind': 'dbg', 'dest': 'qctools',
    'exclude': ['^Arch_.*'], 'plugins': {'db': {'name': 'guinamedbg'}}}]},
    'dvrescue': {'short': 'dr', 'packages': [{'name': 'dvrescue', 'kind':
    'bin', 'dest': 'dvrescue', 'plugins': {'db': {'name': 'cliname'}}}, {
    'name': 'dvrescue', 'kind': 'dbg', 'dest': 'dvrescue', 'exclude': [
    '^Arch_.*'], 'plugins': {'db': {'name': 'clinamedbg'}}}, {'name':
    'dvrescue-gui', 'kind': 'bin', 'dest': 'dvrescue-gui', 'exclude': [
    '^xUbuntu_18.04$', '^openSUSE_.*', '^SLE_.*', '^CentOS_.*', '^RHEL_.*',
    '^RockyLinux_.*', '^Mageia_.*'], 'plugins': {'db': {'name': 'guiname'}}
    }, {'name': 'dvrescue-gui', 'kind': 'dbg', 'dest': 'dvrescue-gui',
    'exclude': ['^Arch_.*', '^xUbuntu_18.04$', '^openSUSE_.*', '^SLE_.*',
    '^CentOS_.*', '^RHEL_.*', '^RockyLinux_.*', '^Mageia_.*'], 'plugins': {
    'db': {'name': 'guinamedbg'}}}]}, 'ffmpeg-ma': {'short': 'fm',
    'packages': [{'name': 'ffmpeg-ma', 'kind': 'bin', 'dest': 'ffmpeg',
    'plugins': {'db': {'name': 'cliname'}}}]}, 'sony9pin': {'short': 'sp',
    'packages': [{'name': 'sony9pin', 'kind': 'bin', 'dest': 'sony9pin',
    'plugins': {'db': {'name': 'cliname'}}}, {'name': 'sony9pin', 'kind':
    'dbg', 'dest': 'sony9pin', 'exclude': ['^Arch_.*'], 'plugins': {'db': {
    'name': 'clinamedbg'}}}]}}

#!/usr/bin/env python
# -*- coding: utf-8 -*-

pkginfos = {
    'deb': {
        'revision': '-1',
        'extension': 'deb',
        'docsuffix': '-doc',
        'devsuffix': '-dev',
        'debugsuffix': '-dbg',
        'separator1': '_',
        'separator2': '_',
        'i586': 'i386',
        'x86_64': 'amd64',
        'armv7l': 'armhf',
        'aarch64': 'arm64',
        'noarch': 'all'
    },
    'rpm': {
        'extension': 'rpm',
        'docsuffix': '-doc',
        'devsuffix': '-devel',
        'debugsuffix': '-debuginfo',
        'separator1': '-',
        'separator2': '.',
        'i586': 'i686'
    },
    'pkg.tar.zst': {
        'extension': 'pkg.tar.zst',
        'separator1': '-',
        'separator2': '-',
        'i586': 'i686'
    }
}

distinfos = {
    '^x?Ubuntu_.*': {
        'libsuffix': '0',
        'format': pkginfos['deb']
    },
    '^Debian_.*': {
        'libsuffix': '0',
        'format': pkginfos['deb']
    },
    '^Raspbian_.*': {
        'libsuffix': '0',
        'format': pkginfos['deb']
    },
    '^Fedora_.*': {
        'format': pkginfos['rpm']
    },
    '^CentOS_.*': {
        'format': pkginfos['rpm']
    },
    '^RHEL_.*': {
        'format': pkginfos['rpm']
    },
    '^RockyLinux_.*': {
        'format': pkginfos['rpm']
    },
    '^openSUSE_.*': {
        'libsuffix': '0',
        'format': pkginfos['rpm']
    },
    '^SLE_.*': {
        'libsuffix': '0',
        'format': pkginfos['rpm']
    },
    '^Mageia_.*': {
        'libsuffix': '0',
        'format': pkginfos['rpm']
    },
    '^Arch_.*': {
        'format': pkginfos['pkg.tar.zst']
    }
}

plugins = {
    'db': {
        'enabled': False,
        'conf': {
            'host': '',
            'user': '',
            'password': '',
            'database': ''
        }
    },
    'repo': {
        'enabled': False,
        'conf': {
            'repo_script': '',
            'output_script': ''
        }
    },
    'filelogger': {
        'enabled': False,
        'conf': {
            'log_info': True,
            'log_info_path': '',
            'log_error': True,
            'log_error_path': '',
            'log_fatal': True,
            'log_fatal_path': ''
        }
    },
}

projects = {
    'ZenLib': {
        'short': 'zl',
        'packages': [
            {
                'name': 'libzen',
                'kind': 'lib',
                'dest': 'libzen0',
                'v5suffix': True,
                'plugins': {
                    'db': {
                        'name': 'libname'
                    }
                }
            },
            {
                'name': 'libzen',
                'kind': 'dbg',
                'dest': 'libzen0',
                'v5suffix': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedbg'
                    }
                }
            },
            {
                'name': 'libzen',
                'kind': 'dev',
                'dest': 'libzen0',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedev'
                    }
                }
            },
            {
                'name': 'libzen',
                'kind': 'doc',
                'dest': 'libzen0',
                'universal': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedoc'
                    }
                }
            }
        ]
    },
    'MediaInfoLib': {
        'short': 'mil',
        'packages': [
            {
                'name': 'libmediainfo',
                'kind': 'lib',
                'dest': 'libmediainfo0',
                'v5suffix': True,
                'plugins': {
                    'db': {
                        'name': 'libname'
                    }
                }
            },
            {
                'name': 'libmediainfo',
                'kind': 'dbg',
                'dest': 'libmediainfo0',
                'v5suffix': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedbg'
                    }
                }
            },
            {
                'name': 'libmediainfo',
                'kind': 'dev',
                'dest': 'libmediainfo0',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedev'
                    }
                }
            },
            {
                'name': 'libmediainfo',
                'kind': 'doc',
                'dest': 'libmediainfo0',
                'universal': True,
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamedoc'
                    }
                }
            },
            {
                'name': 'python-mediainfo',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'exclude': ['^(?!Arch_).*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython3'
                    }
                }
            },
            {
                'name': 'python-mediainfodll',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'universal': True,
                'exclude': ['^(?!(xUbuntu_)|(Debian_)|(Raspbian_)).*', '^Ubuntu_.*', '^SLE_12_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython'
                    }
                }
            },
            {
                'name': 'python3-mediainfodll',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'universal': True,
                'exclude': ['^(?!(x?Ubuntu_)|(Debian_)|(Raspbian_)).*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython3'
                    }
                }
            },
            {
                'name': 'python2-mediainfo',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'exclude': ['^(?!(SLE_)|(openSUSE_)|(Mageia_)|(Fedora_)).*', '^SLE_12_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython'
                    }
                }
            },
            {
                'name': 'python3-mediainfo',
                'kind': 'ext',
                'dest': 'libmediainfo0',
                'exclude': ['^(?!(SLE_)|(openSUSE_)|(Mageia_)|(Fedora_)).*', '^SLE_12_.*'],
                'plugins': {
                    'db': {
                        'name': 'libnamepython3'
                    }
                }
            }
        ]
    },
    'MediaInfo': {
        'short': 'mi',
        'packages': [
            {
                'name': 'mediainfo',
                'kind': 'bin',
                'dest': 'mediainfo',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'mediainfo',
                'kind': 'dbg',
                'dest': 'mediainfo',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'mediainfo-gui',
                'kind': 'bin',
                'dest': 'mediainfo-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'mediainfo-gui',
                'kind': 'dbg',
                'dest': 'mediainfo-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'MediaConch': {
        'short': 'mc',
        'packages': [
            {
                'name': 'libmediaconch',
                'kind': 'lib',
                'dest': 'libmediaconch0',
                'plugins': {
                    'db': {
                        'name': 'libname'
                    }
                }
            },
            {
                'name': 'libmediaconch',
                'kind': 'dbg',
                'dest': 'libmediaconch0',
                'plugins': {
                    'db': {
                        'name': 'libnamedbg'
                    }
                }
            },
            {
                'name': 'libmediaconch',
                'kind': 'dev',
                'dest': 'libmediaconch0',
                'plugins': {
                    'db': {
                        'name': 'libnamedev'
                    }
                }
            },
            {
                'name': 'mediaconch',
                'kind': 'bin',
                'dest': 'mediaconch',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'mediaconch',
                'kind': 'dbg',
                'dest': 'mediaconch',
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'mediaconch-server',
                'kind': 'bin',
                'dest': 'mediaconch-server',
                'plugins': {
                    'db': {
                        'name': 'servername'
                    }
                }
            },
            {
                'name': 'mediaconch-server',
                'kind': 'dbg',
                'dest': 'mediaconch-server',
                'exclude': ['^RHEL_7$', '^CentOS_7$'],
                'plugins': {
                    'db': {
                        'name': 'servernamedbg'
                    }
                }
            },
            {
                'name': 'mediaconch-gui',
                'kind': 'bin',
                'dest': 'mediaconch-gui',
                'exclude': ['^RHEL_.*', '^CentOS_.*', '^RockyLinux_.*'],
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'mediaconch-gui',
                'kind': 'dbg',
                'dest': 'mediaconch-gui',
                'exclude': ['^RHEL_.*', '^CentOS_.*', '^RockyLinux_.*'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'BWFMetaEdit': {
        'short': 'bm',
        'packages': [
            {
                'name': 'bwfmetaedit',
                'kind': 'bin',
                'dest': 'bwfmetaedit',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'bwfmetaedit',
                'kind': 'dbg',
                'dest': 'bwfmetaedit',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'bwfmetaedit-gui',
                'kind': 'bin',
                'dest': 'bwfmetaedit-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'bwfmetaedit-gui',
                'kind': 'dbg',
                'dest': 'bwfmetaedit-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'MOVMetaEdit': {
        'short': 'mm',
        'packages': [
            {
                'name': 'movmetaedit',
                'kind': 'bin',
                'dest': 'movmetaedit',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'movmetaedit',
                'kind': 'dbg',
                'dest': 'movmetaedit',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'movmetaedit-gui',
                'kind': 'bin',
                'dest': 'movmetaedit-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'movmetaedit-gui',
                'kind': 'dbg',
                'dest': 'movmetaedit-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'AVIMetaEdit': {
        'short': 'am',
        'packages': [
            {
                'name': 'avimetaedit',
                'kind': 'bin',
                'dest': 'avimetaedit',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'avimetaedit',
                'kind': 'dbg',
                'dest': 'avimetaedit',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'avimetaedit-gui',
                'kind': 'bin',
                'dest': 'avimetaedit-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'avimetaedit-gui',
                'kind': 'dbg',
                'dest': 'avimetaedit-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'DVAnalyzer': {
        'short': 'dv',
        'packages': [
            {
                'name': 'dvanalyzer',
                'kind': 'bin',
                'dest': 'dvanalyzer',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'dvanalyzer',
                'kind': 'dbg',
                'dest': 'dvanalyzer',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'dvanalyzer-gui',
                'kind': 'bin',
                'dest': 'dvanalyzer-gui',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'dvanalyzer-gui',
                'kind': 'dbg',
                'dest': 'dvanalyzer-gui',
                'exclude': ['^Arch_.*', '^CentOS_7$', '^RHEL_7$'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'RAWcooked': {
        'short': 'rc',
        'packages': [
            {
                'name': 'rawcooked',
                'kind': 'bin',
                'dest': 'rawcooked',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'rawcooked',
                'kind': 'dbg',
                'dest': 'rawcooked',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            }
        ]
    },
    'QCTools': {
        'short': 'qc',
        'packages': [
            {
                'name': 'qcli',
                'kind': 'bin',
                'dest': 'qcli',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'qcli',
                'kind': 'dbg',
                'dest': 'qcli',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'qctools',
                'kind': 'bin',
                'dest': 'qctools',
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'qctools',
                'kind': 'dbg',
                'dest': 'qctools',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'dvrescue': {
        'short': 'dr',
        'packages': [
            {
                'name': 'dvrescue',
                'kind': 'bin',
                'dest': 'dvrescue',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'dvrescue',
                'kind': 'dbg',
                'dest': 'dvrescue',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            },
            {
                'name': 'dvrescue-gui',
                'kind': 'bin',
                'dest': 'dvrescue-gui',
                'exclude': ['^xUbuntu_18.04$', '^openSUSE_.*', '^SLE_.*', '^CentOS_.*', '^RHEL_.*', '^RockyLinux_.*', '^Mageia_.*'],
                'plugins': {
                    'db': {
                        'name': 'guiname'
                    }
                }
            },
            {
                'name': 'dvrescue-gui',
                'kind': 'dbg',
                'dest': 'dvrescue-gui',
                'exclude': ['^Arch_.*', '^xUbuntu_18.04$', '^openSUSE_.*', '^SLE_.*', '^CentOS_.*', '^RHEL_.*', '^RockyLinux_.*', '^Mageia_.*'],
                'plugins': {
                    'db': {
                        'name': 'guinamedbg'
                    }
                }
            }
        ]
    },
    'ffmpeg-ma': {
        'short': 'fm',
        'packages': [
            {
                'name': 'ffmpeg-ma',
                'kind': 'bin',
                'dest': 'ffmpeg',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            }
        ]
    },
    'sony9pin': {
        'short': 'sp',
        'packages': [
            {
                'name': 'sony9pin',
                'kind': 'bin',
                'dest': 'sony9pin',
                'plugins': {
                    'db': {
                        'name': 'cliname'
                    }
                }
            },
            {
                'name': 'sony9pin',
                'kind': 'dbg',
                'dest': 'sony9pin',
                'exclude': ['^Arch_.*'],
                'plugins': {
                    'db': {
                        'name': 'clinamedbg'
                    }
                }
            }
        ]
    }
}
