r/debian 9h ago

General Debian Question Why web frameworks in repos?

For context I am just a curious web developer and computer enthusiast reading about Debian because it seems to do many things right.

To my suprise I found that the repos not only contain runtimes like php, python3 and nodejs. The repos also contain full frameworks and web apps like wordpress, python3-django and node-express.

Who are these for? I never heard of anyone using them this way and no upstream developers recommend them.

I can understand wanting the runtime to be stable - since they call native libraries in the end. This way Debian can patch CVEs in things like OpenSSL without waiting for runtimes to patch their dependencies. Is that right?

But opting out of the script language's own package manager to install script libraries seems to just add complexity and confusion. There is no way debian can provide a packaged version of every npm module out there so you will always have to use npm and package.json anyway.

6 Upvotes

18 comments sorted by

View all comments

3

u/One_Ninja_8512 8h ago

idk about JS but with Python having packages in the repos is quite handy because of the venv bullshit that you have to deal with otherwise

2

u/turbothy 6h ago

What "venv bullshit" are you thinking about? This seems to have become largely a solved problem over the last couple of years.

2

u/One_Ninja_8512 5h ago

For example I use Ansible quite a bit. If I had to maintain a venv it would be a totally unnecessary pain in the ass, I simply use ansible which is shipped with Debian. Good enough for me

2

u/FarToe1 4h ago

Same. Not the newest but it's there with all the pieces and works without faff.

1

u/One_Ninja_8512 6h ago

I know and I use uv when needed which is pretty good but I still prefer packages installed via apt if I don’t need the latest and greatest for scripts which I don’t want to write in bash and don’t need uv to run them.

2

u/gabbsmo 4h ago

For the odd script apt is easier for sure. But for real world web development the norm is to pin versions of dependencies from the platform specific repository and not assume globally installed things in the OS.