Skip to content

Instantly share code, notes, and snippets.

@andrewchambers
Last active July 17, 2019 05:56
Show Gist options
  • Save andrewchambers/aff15418fcce12a487f2583d73a8ab78 to your computer and use it in GitHub Desktop.
Save andrewchambers/aff15418fcce12a487f2583d73a8ab78 to your computer and use it in GitHub Desktop.
coolpkg

Concept for coolpkg

Coolpkg is a new decentralized, time traveling package manager that ...

  • Solves dependency hell.
  • Gives you reproducible builds.
  • Makes it easy to share programs with your friends (or worst enemy, it doesn't care.).
  • Works well with existing tools (docker, various operating systems and more).
  • Is fun to use.

If you don't like it, we have a money back guarantee.

Time travel? really?

Backwards only :).

With coolpkg you can easily reference old packages from years ago and all old dependencies will be installed while not conflicting with any of latest software you have installed.

How it works

  • Packages are defined in a simple python like dialect.
  • Packages can only refer to explicit and exact software versions by cryptographic hashes that will never change all the way down the build chain.
  • Packages can never conflict with each other (because they are content addressed.).
  • Packages can be imported from anywhere on the internet and they should always work as intended (Package builds are isolated and reproducable by default.).

When can I use it?

It is concept only for now, star the project, donate or send kind messages and suggestions to help make it a reality.

If you can't wait, you could try Nixos or Guix which are existing implementations of similar ideas.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment