4 ms·
I'm sorry for the rant, it's a bit off topic and not called for, but would like to say my experience is sort of the opposite: I've been a Slackware-current use
by versteegen 11y ago
I'm sorry for the rant, it's a bit off topic and not called for, but would like to say my experience is sort of the opposite:
I've been a Slackware-current user for most of a decade, and I love that it's so easy to upgrade the OS using slackpkg. I can (and do) often only upgrade a subset of packages, and never even need to reboot afterwards, not even after replacing the kernel (although, obviously...). A simple package system without dependency tracking has had many advantages for me. But installing stuff not in the standard system is more of a pain; there are third party repos but no where near as convenient as Debian/Ubuntu. I compile a couple SlackBuilds (packages) per week. I admit I've spent a huge amount of time learning how to do things like that manually and wouldn't recommend Slackware to those who won't want to learn sysadmin.
On the other hand my experience with upgrading between Ubuntu releases is terrible. A number of things have broken, permanently, every time, and I can't trivially upgrade from Ubuntu 14.10, because they purposefully break the package manager in old releases by breaking URLs. Also other pain points, like it not allowing installing both 32 and 64 bit devel libraries. I need those! The package manager is too complex and clever for me. (Honestly, I don't want to spend time learning how to override it.)
I'm planning to format the drive and reinstall from scratch because it seems easier than fixing it.
- tremon 11y agoA simple package system without dependency tracking has had many advantages for me. Are you equating "simple package system" with "per-package service isolation" here? Because otherwise I don't see how your example about upgrades not requiring a reboot ties in with the package system. Debian has probably the most extensive package system, yet it still allows you to do upgrades without reboot. The major exception to this is dbus, because it still can't do stateful restarts. But I don't think that's a problem that Slackware is able to avoid, unless it avoids dbus completely. Also: since Wheezy, Debian allows parallel installation of many development and shared library packages from all (10!) arches, for example to facilitate cross-compilation. It's still a work-in-progress, but I believe over 80% of the archive (not including packages with binaries) should be co-installable now.
- versteegen 11y agoThanks 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.
- tremon 11y agoUbuntu 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 https://wiki.ubuntu.com/MultiarchSpec [2] https://wiki.debian.org/Multiarch/HOWTO https://wiki.debian.org/Multiarch/HOWTO
- 11y ago
- toast0 11y agoSlackpkg is relatively new, it was part of the slackware 9.1 release. A lot of people, myself included, remember experiences with older releases without a real package manager.