you are viewing a single comment's thread
view the rest of the comments
[–] 7 points 3 days ago (7 children)

I have convinced teams to switch to just after rewriting their makefiles in a fraction of the time and size. There have been some make die hards but they gave in to the team once they saw the justfiles.

Luckily we didn't have to write C or C++. I think the reason why that has so many build systems is because of the lack of a package manager. That entire world needs a cargo equivalent.

  • source
  • hideshow 7 child comments
  • [–] 6 points 3 days ago* (1 child)

    That entire world needs a cargo equivalent.

    The one time I needed to compile a rust app, I followed the instructions on their github and it used cargo and it didn't work. Don't remember the issue now, but it instantly gave me the same yuck I get when forced to use pip or npm and it breaks in the same fucking way.

    Had better luck compiling maven/gradle apps oh and yes, makefiles worked reliably for me so far.

    But this is just a personal anecdote and I rarely have to compile anything myself.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 2 days ago

    What breaks with npm in your case? In my experience it's been the rarest system to fail, like I can git clone something from 10 years ago, run npm i and the resulting app still builds and runs, despite a ton of announcements about deprecated libraries and update requests for vulnerability fixes.

  • source
  • parent
  • [–] 1 point 2 days ago (2 children)

    There are already plenty of package manager options in the C++ world. Having an "official" one arguably only helps improve the onboarding experience, but overall it's a chokepoint for the entire ecosystem. There are rarely "one size fits all" solutions to a problem, and there certainly isn't one for a problem as complex as software builds and packaging.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 2 days ago (1 child)

    There are? Where are the package registries? Could you give examples?

  • source
  • parent
  • hideshow 1 child comment
  • [–] 3 points 2 days ago

    Conan and vcpkg are the two big ones I'm familiar with, but some projects use CMake FetchContent (with github acting as the CDN/registry), and depending on your requirements you can also just use system package managers on Linux, maybe Homebrew or Nix/Guix, or more niche ones like Spack. I've seen projects packaged using self hosted Pacman registries, and that works surprisingly well.

  • source
  • parent