Multipackager
Current version: 0.39
Multipackager is a program that aims to simplify the creation of packages for linux distributions. To do so, it automatizes the creation of virtual machines with specific distributions, versions and architectures, and the compilation and packaging process for each one, both for binary and Python projects. It allows to create packages for i386 and amd64 architectures, for any available version of Debian, Ubuntu, Fedora and Arch. In a near future I hope to add support for other distros.
Downloads
GIT Repository
Package for Debian bullseye 32/64bit (24 Kbytes)
Package for Debian sid 32/64bit (24 Kbytes)
Package for Ubuntu impish 32/64bit (24 Kbytes)
Package for Ubuntu focal 32/64bit (24 Kbytes)
Package for fedora35 32/64bit (47 Kbytes)
History of versions
- version 0.39 (2021/12/11)
- Update the DNS in all the folders (fixes DNS problems with ubuntu containers)
- version 0.38 (2020/10/11)
- Support for new file extension in Arch
- version 0.37 (2020/05/03)
- Fedora works finally without YUM
- version 0.36 (2020/03/05)
- More priority to meson/ninja than to CMake
- Fixed meson build
- Fixed Fedora generation
- version 0.35 (2019/10/17)
- Fix Arch linux generation
- version 0.34 (2019/10/16)
- Fix Fedora generation to allow to generate Fedora 30
- version 0.33 (2018/08/25)
- Fixed Pacman command for installing packages
- version 0.32 (2018/02/28)
- Now using the OR option in debian control file to choose between two packages works fine
- version 0.31 (2017/11/26)
- Now does an 'apt update' before installing dependencies for a package
- Now doesn't wait for the user to press 'y' when installing meson
- version 0.30 (2017/01/22)
- Added support for Meson builder projects
- Allows to update in a single command all the distros based on the type (e.g. Update all debian distros)
- version 0.28 (2016/09/26)
- Installs all the packages needed also in RPM
- version 0.27 (2016/09/25)
- Now doesn't fail when debian dependencies have a version number requirement
- version 0.26 (2016/09/19)
- Installs all the packages needed for a project, instead of installing only the building ones
- version 0.25 (2016/09/06)
- Allows to specify different configuration folders for Debian/Ubuntu 32 and 64 bits
- version 0.24 (2016/08/25)
- Now shows the current distro being compiled in the terminal's titlebar
- Now shows the chroot path for the current shell in the terminal's titlebar
- Now the make for CMake projects is verbose
- version 0.23 (2016/07/17)
- Now ensures that any OverlayFS has been unmounted before trying to mount it again (could happen in previous version if multipackager is interrupted and launched again)
- version 0.22 (2016/05/10)
- Now uses OverlayFS to speed up all the operations, avoiding the full copy of the images (for backing up purposes) before doing any operation
- version 0.21 (2015/11/08)
- Now uses DNF for fedora 22 and greater, instead of YUM
- version 0.20 (2015/10/29)
- Now doesn't fail if the *build* folder doesn't exists in binary projects
- version 0.19 (2015/10/26)
- Now removes the *build* folder in python3 projects when building for ARCH, so it won't fail
- version 0.18 (2015/09/29)
- Now can install, in ARCH, dependencies from AUR for local packages
- version 0.17 (2015/09/27)
- Removed the 'sync' commands, which speeds up the work.
- Now adds the package size in debian packages
- version 0.16 (2015/08/30)
- Allows to install local packages before creating a package. Useful when creating a package that depends of another local project.
- Now, when the creation of a package fails, the system won't fail, but continue with the other OSs and, at the end, show which ones failed.
- version 0.15 (2015/08/24)
- Added support for both the old and new URI format for AUR repository (ARCH Linux)
- Now automagically downloads the GPG keys (ARCH Linux)
- Now only uses the makedeps for python projects in Pacman packages
- version 0.14 (2015/05/16)
- Added support for Pacman, the Arch's package manager.
- version 0.13 (2015/05/09)
- Now doesn't ask if the user wants to continue when updating a Fedora system
- version 0.12 (2015/04/26)
- Fixed a bug when launching a shell without specifying a linux distribution type and name
- version 0.11 (2015/04/25)
- Now keeps two caches, one with all the packages already installed in previous builds, and another (with a bare minimum system) for test shells, so the package creation process is much faster
- Allows to specify the package revision in the command line
- Allows to keep the temporary virtual machines used to build the packages
- version 0.10 (2015/04/24)
- Now ensures that the permissions and uid and gid in a package are the same than in the file system, to avoid conflicts in binary RPM packages
- version 0.9 (2015/04/23)
- Now the update of RPM caches works fine
- Now copies fine the RPM binary packages, instead of copying the folder containing them
- Now clears a classic MAKE project before building it
- version 0.8 (2015/04/22)
- Now supports alternative packages for deb (packagea | packageb)
- version 0.7 (2015/04/20)
- Now doesn't fail if the configure file doesn't exists.
- Translated all sentences
- version 0.6 (2015/04/19)
- Added support for Fedora (RPM) packages
- Allows to specify different triplets for binary and python projects
- Takes into account the package name for python projects too
- Allows to delete the caches
- Added missing dependencies
- Bug fixes
- version 0.5 (2015/04/18)
- Better command line parsing options
- Allows to mount several paths from the host machine inside the virtual machines
- Now the installation doesn't fail if the dep_utils package isn't installed
- Now generates the cache environment in all cases
- version 0.4 (2015/04/15)
- Now passes the destination folder to the **multipackager.sh** script
- version 0.3 (2015/04/14)
- Added manpage
- Fixed little bugs in the python3 packages generation
- version 0.2 (2015/04/14)
- Added support for Python3 packages
- version 0.1 (2015/04/14)
- First public version