Software Alternatives, Accelerators & Startups

pkgsrc VS Conda

Compare pkgsrc VS Conda and see what are their differences

pkgsrc logo pkgsrc

pkgsrc is a framework for building over 17,000 open source software packages.

Conda logo Conda

Binary package manager with support for environments.
  • pkgsrc Landing page
    Landing page //
    2023-06-30
Not present

pkgsrc features and specs

  • Cross-Platform Support
    pkgsrc is designed to be a portable package management system and can be used on a variety of Unix-like operating systems, including NetBSD, Solaris, Linux, and macOS. This cross-platform capability makes it a versatile tool for developers working in diverse environments.
  • Consistency Across Systems
    Using pkgsrc allows for a consistent package management experience regardless of the underlying operating system, reducing the learning curve and maintenance overhead for administrators managing multiple systems.
  • Comprehensive Package Collection
    pkgsrc offers a wide range of software packages, providing a robust collection that can meet diverse user needs from scientific libraries to web applications.
  • Quarterly Releases
    With quarterly releases, pkgsrc provides a balanced approach between stability and keeping software up to date, offering users new features regularly while maintaining reliability.
  • Flexible Build Options
    pkgsrc supports a flexible build system, allowing users to customize package builds with specific options or dependencies, tailored to their specific needs or system requirements.

Possible disadvantages of pkgsrc

  • Smaller Community
    Compared to other popular package management systems like apt (Debian/Ubuntu) or yum (RedHat/CentOS), pkgsrc has a relatively smaller community, which might affect the availability of support and community-driven improvements.
  • Potentially Older Software
    While pkgsrc maintains stable quarterly releases, it may occasionally lag behind other systems in terms of offering the very latest versions of certain software, which might not be ideal for users needing the newest features.
  • Manual Configuration
    Setting up pkgsrc might require manual interventions and configurations, which could pose a hurdle for users unfamiliar with its setup process or those who prefer more automated solutions.
  • Dependency Management
    Although pkgsrc is quite capable in dependency handling, some users may find its dependency resolution to be less automatic or seamless compared to other systems which offer more integrated solutions.
  • Performance Overhead
    Because it is designed to be cross-platform, there can be some performance overhead associated with using pkgsrc compared to native package managers that are optimized for specific operating systems.

Conda features and specs

  • Cross-Platform Package Manager
    Conda is a versatile package manager that works across multiple operating systems including Windows, macOS, and Linux, making it a universal solution for environment management.
  • Environment Management
    Conda can create, export, list, remove, and manage environments that contain different versions of Python and/or various packages, enhancing reproducibility and isolation.
  • Wide Range of Packages
    Conda supports a broad spectrum of packages not limited to Python, which means it can install software and their dependencies from the C, C++, FORTRAN, and other ecosystems.
  • Binary Package Delivery
    Packages are delivered as binaries, meaning you don't have to compile anything. This speeds up the installation process and reduces the possibility of errors.
  • Easy Dependency Resolution
    Conda automatically manages dependencies, ensuring that the required packages are installed in the correct versions and reducing compatibility issues.
  • Version Control
    It allows you to manage different versions of software and switch between them seamlessly without conflict, which is crucial for development, testing, and deployment.

Possible disadvantages of Conda

  • Large Disk Space Requirement
    Conda environments can take up a significant amount of disk space due to the inclusion of multiple versions of Python and other binaries.
  • Complexity
    While Conda is powerful, its comprehensive set of features may be overwhelming for beginners who only need simpler package management.
  • Performance Overhead
    The convenience of automated dependency resolution and environment management can sometimes come at the cost of performance, particularly during the first setup.
  • Slower Package Availability
    Newer versions of some packages may take longer to become available on Conda compared to other package managers like pip, leading to potential delays in adopting the latest features.
  • Third-Party Channels
    While Conda has its main channel, many packages are hosted on third-party channels, which can lead to inconsistencies or reliability issues.
  • Not Limited to Python
    Although this is also a strength, for users who are primarily working with Python, Conda might feel over-engineered for their needs.

Analysis of Conda

Overall verdict

  • Yes, Conda is generally regarded as a good tool due to its versatility, efficiency in managing dependencies, and user-friendly features.

Why this product is good

  • Conda is considered good because it is a powerful package manager and environment manager that is language agnostic. It simplifies the installation of packages and dependencies across different programming languages, particularly beneficial for data science and machine learning tasks. It also handles library conflicts with ease, making it a preferred choice for managing complex software environments.

Recommended for

  • Data scientists
  • Machine learning engineers
  • Software developers using Python, R, or any other language needing isolated environments
  • Researchers requiring reproducible scientific environments
  • Anyone who frequently works with packages that have complex dependencies

pkgsrc videos

pkgsrc on ChromeOS

More videos:

  • Review - Using pkgsrc for multi-platform deployments in heterogeneous environments, G Clifford Williams

Conda videos

No Conda videos yet. You could help us improve this page by suggesting one.

Add video

Category Popularity

0-100% (relative to pkgsrc and Conda)
Developer Tools
41 41%
59% 59
Front End Package Manager
Package Manager
39 39%
61% 61
Productivity
100 100%
0% 0

User comments

Share your experience with using pkgsrc and Conda. For example, how are they different and which one is better?
Log in or Post with

Social recommendations and mentions

Based on our record, Conda should be more popular than pkgsrc. It has been mentiond 32 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

pkgsrc mentions (11)

  • Debian isn't waiting for 2038 to blow up, switches to 64-bit time for everything
    > Most open source software packages are also compiled for BSD variants, they switched to 64 bit time_t a long time ago and reported back upstream any problems. * NetBSD in 2012: https://www.netbsd.org/releases/formal-6/NetBSD-6.0.html * OpenBSD in 2014: http://www.openbsd.org/55.html For packaging, NetBSD uses their (multi-platform) Pkgsrc, which has 29,000 packages, which probably covers a large swath of... - Source: Hacker News / 12 months ago
  • Our Audit of Homebrew
    > https://pkgsrc.smartos.org/install-on-macos/ Note that Pkgsrc is a NetBSD-derived project. * https://pkgsrc.org The Joyent folks leveraged it to allow their customers, who were perhaps not as familiar with Solaris/SmartOS, a larger pool of packages. Pkgsrc was running on Solaris before Joyent, Joyent built on top of it. - Source: Hacker News / almost 2 years ago
  • Show HN: Brioche โ€“ A new Nix-like package manager
    Https://pkgsrc.org/ from netbsd runs on many systems. - Source: Hacker News / about 2 years ago
  • Installing packages without an internet connection?
    It seems according to pkgsrc.org that pkgin might follow the PKG_PATH environment variable. You're supposed to set PKG_PATH="http://cdn.NetBSD.org/pub/pkgsrc/packages/NetBSD/$(uname -p)/$(uname -r|cut -f '1 2' -d.)/All/", and according to uname(1), -p gives the processor architecture and -r gives the operating system [kernel] release. Source: over 3 years ago
  • pkgsrc.se is no more :(
    It seems like pkgsrc.org hasnโ€™t got the news yet. Source: over 3 years ago
View more

Conda mentions (32)

  • Say Hello to UV: A Fast Python Package & Project Manager Written in Rust
    If youโ€™ve been managing Python projects long enough, youโ€™ve probably dealt with a mess of tools: pip, pip-tools, poetry, virtualenv, conda, maybe even pdm. - Source: dev.to / over 1 year ago
  • The Simplest Data Architecture
    You can use isolated Python environments like venv or conda. If you do this, you'll have to manage your environments yourself, and also constantly switch between them to run your data engineering code vs dbt. - Source: dev.to / almost 2 years ago
  • Python's virtual environments
    Conda is an open-source package management system and environment management system that runs on Windows, macOS, and Linux. It is a powerful tool that allows you to create and manage virtual environments, install and update packages, and manage dependencies. Conda is particularly popular in the scientific computing community, as it provides access to a wide range of scientific computing libraries and tools. I... - Source: dev.to / about 2 years ago
  • Introducing Flama for Robust Machine Learning APIs
    When dealing with software development, reproducibility is key. This is why we encourage you to use Python virtual environments to set up an isolated environment for your project. Virtual environments allow the isolation of dependencies, which plays a crucial role to avoid breaking compatibility between different projects. We cannot cover all the details about virtual environments in this post, but we encourage... - Source: dev.to / over 2 years ago
  • Ask HN: Package management for multiple modules in C++, Python, Java project?
    Conda https://docs.conda.io/en/latest/ ?? I'm not sure, but I used it to download some Python packages. It's an alternative to pip, but I'm not sure about the details. - Source: Hacker News / over 2 years ago
View more

What are some alternatives?

When comparing pkgsrc and Conda, you can also consider the following products

Homebrew - The missing package manager for macOS

Python Poetry - Python packaging and dependency manager.

Yay - Yay is an AUR helper written in go, based on the design of yaourt, apacman and pacaur.

Portage - Portage is source-based package manager used by Gentoo and its descendants. It controls all process from fetching source through building it, installing into clean environment to "merging" with already installed software.

Nix - All-in-one digital toolbox. No monthly fees.

Docker - Docker is an open platform that enables developers and system administrators to create distributed applications.