Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Thanks for the information. So I assume Ubuntu now also allows parallel multiarch devel packages?

I've never tried Debian, and my experience with Ubuntu is very limited. I guess my comment on reboots was off-base, and maybe more of it. I meant that packages aren't densely interconnected with dependencies. (macports has it really bad, seems every time I want to upgrade python I need to recompile gcc or something.) Anyway, the simplicity makes it easy to modify packages. E.g. last week I fiddled around with lua packages to allow parallel installing multiple versions (lua 5.1, 5.2, 5.3 are incompatible languages which are often mistaken for the same language by distro maintainers). However I realise creating .deb files is also easy, so I guess I could do just the same there. Also, Slackware's multiarch support is a very simple hack using a small script that works 100% of the time as far as I've seen. It's telling that Debian still only supports 80% of packages after who knows how much work put into it.



Ubuntu should be able to do it, as the multiarch spec was developed in collaboration [1]. I'm not sure how well-integrated it is with the rest of Ubuntu's archive and infrastructure though (for example, Ubuntu first used a modified syntax in sources.list vs Debian's dpkg --add-architecture approach [2]). My 80% figure is also just a wild guess, I've tried it very early and failed for some exotic packages, but right now I only use it for a few packages.

I understand what you mean about tightly integrated package dependencies, and for me Debian is the rare exception in that it mostly works. My main irk with it is that dpkg only allows one version of a package to be installed, so you end up with package names like gcc-4.9 to allow parallel installation. Or in your example, there's a lua5.1, lua5.2 and lua5.3 in the archive -- but that doesn't mean that every lua library is also available in all three versions.

But the package compatibility is still way better than ecosystems like Maven/Gradle or Stackage, where dependencies can be so tightly coupled that you end up working around old bugs in one package, or new bugs in another.

[1] https://wiki.ubuntu.com/MultiarchSpec

[2] https://wiki.debian.org/Multiarch/HOWTO


Thanks. Hmm, the MultiarchSpec page lists "Co-installable -dev packages" as an unresolved issue, but hasn't been updated since 2014. The MultiarchCross[1] page specifically about that issue hasn't been updated since 2013. I couldn't work out what the current situation is.

[1] https://wiki.ubuntu.com/MultiarchCross




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: