MSYS2
MSYS2 is a collection of tools and libraries providing you with an easy-to-use environment for building, installing and running native Windows software. It consists of a command line terminal called mintty, bash, version control systems like git and subversion, tools like tar and awk and even build systems like autotools, all based on a modified version of Cygwin. Despite some of these central parts being based on Cygwin, the main focus of MSYS2 is to provide a build environment for native Windows software and the Cygwin-using parts are kept at a minimum. MSYS2 provides up-to-date native builds for GCC, mingw-w64, CPython, CMake, Meson, OpenSSL, FFmpeg, Rust, Ruby, just to name a few. To provide easy installation of packages and a way to keep them updated it features a package management system called Pacman, which should be familiar to Arch Linux users.
Learn more
Fortran Package Manager
Package manager and build system for Fortran. There are already many packages available for use with fpm, providing an easily accessible and rich ecosystem of general-purpose and high-performance code. Fortran Package Manager (fpm) is a package manager and build system for Fortran. Its key goal is to improve the user experience of Fortran programmers. It does so by making it easier to build your Fortran program or library, run the executables, tests, and examples, and distribute it as a dependency to other Fortran projects. Fpm’s user interface is modeled after Rust’s Cargo. Its long-term vision is to nurture and grow the ecosystem of modern Fortran applications and libraries. The Fortran package manager has a plugin system that allows it to easily extend its functionality. The fpm-search project is a plugin to query the package registry. Since it is built with fpm we can easily install it on our system.
Learn more
PyPI
PyPI is the official repository for Python software packages, hosting hundreds of thousands of projects that developers can publish and users can discover and install. It supports both source distributions (“sdists”) and pre-built binary “wheels”, allowing packages to include native extensions for different platforms. Projects on PyPI consist of multiple releases, each of which can include various files for different operating systems or Python versions. Metadata for each package includes things like version number, dependencies, licensing, classifiers, description (including rendering Markdown or reStructuredText), and other information that tools like pip use to resolve, download, and install the correct package. PyPI provides search and filtering based on package metadata, letting users find what they need via keywords, compatibility, or other package attributes.
Learn more
fpm
fpm is a tool that lets you easily create packages for Debian, Ubuntu, Fedora, CentOS, RHEL, Arch Linux, FreeBSD, macOS, and more! fpm isn’t a new packaging system, it’s a tool to help you make packages for existing systems with less effort. It does this by offering a command-line interface to allow you to create packages easily. FPM is written in ruby and can be installed using gem. For some package formats (like rpm and snap), you will need certain packages installed to build them. Some package formats require other tools to be installed on your machine to be built; especially if you are building a package for another operating system/distribution. FPM takes your program and builds packages that can be installed easily on various operating systems. It can take any nodejs package, ruby gem, or even a python package and turn it into a deb, rpm, pacman, etc. package.
Learn more