Разобрался.
Вместо отдельных вызовов setopt для данных формы, как это
c.setopt(c.HTTPPOST, [('package[package_file]', (c.FORM_FILE, '/tmp/myfile.bin'))])
c.setopt(c.HTTPPOST, [('package[distro_version_id]', '1')])
Это должно быть вместе в одной структуре, как это
data = [
('package[distro_version_id]', '1'),
('package[package_file]', (
c.FORM_FILE, '/tmp/myfile.bin,
c.FORM_CONTENTTYPE, 'application/octet-stream'
))]
c.setopt(c.HTTPPOST, data)