Synaptic
Synaptic is a graphical package management program for apt. It provides the same features as the apt-get command-line utility with a GUI front-end based on Gtk+. Install, remove, upgrade and downgrade single and multiple packages. Upgrade your whole system. Manage package repositories (sources.list). Find packages by name, description, and several other attributes. Select packages by status, section, name, or a custom filter. Sort packages by name, status, size, or version. Browse all available online documentation related to a package. Download the latest changelog of a package. Lock packages to the current version. Force the installation of a specific package version. Undo/Redo selections. Built-in terminal emulator for the package manager. Debian/Ubuntu only, configure packages through the debconf system. Debian/Ubuntu only, Xapain-based fast search (thanks to Enrico Zini).
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
Conda
Package, dependency, and environment management for any language, Python, R, Ruby, Lua, Scala, Java, JavaScript, C/ C++, Fortran, and more. Conda is an open-source package management system and environment management system that runs on Windows, macOS, Linux, and z/OS. Conda quickly installs, runs, and updates packages and their dependencies. Conda easily creates, saves, loads, and switches between environments on your local computer. It was created for Python programs, but it can package and distribute software for any language. Conda as a package manager helps you find and install packages. If you need a package that requires a different version of Python, you do not need to switch to a different environment manager, because conda is also an environment manager. With just a few commands, you can set up a totally separate environment to run that different version of Python, while continuing to run your usual version of Python in your normal environment.
Learn more
Aptitude
Aptitude is an Ncurses and command-line based front-end to numerous Apt libraries, which are also used by Apt, the default Debian package manager. Aptitude is text-based and run from a terminal. A mutt-like syntax for matching packages in a flexible manner. Mark packages as "automatically installed" or "manually installed" so that packages can be auto-removed when no longer required (feature available in Apt, too, since quite a few Debian releases). Preview of actions about to be taken with different colors marking different actions. The ability to interactively retrieve and display the Debian changelog of all available official packages. Score-based dependency resolver which is more suitable for interactive dependency resolution with additional hints from the user like "I don't want that part of the solution but keep that other part of the solution for your next try". Apt's dependency resolver on the other hand is optimized for good "one-shot" solutions.
Learn more