12
votes
How do you keep up with version changes in downloaded software?
You download software foo, author releases a new version. How do you keep in touch with this for software for things you use and how do you manage it across potentially dozens of different softwares?
in Gentoo:
emerge --update --newuse --deep world --ask
Do it at least weekly. All your packages will be updated.
Thanks for Chocolatey, that one's new to me and looks as delicious as its name implies.
You can also host your own Chocolatey repo, and use it to distribute software, if you're so inclined.
That would have saved me a hell of a lot of time at my last gig, since I had to support dozens of in-house custom apps. I got by with package studio, wds, and a lot of patience. I've seen the hell that is sms, no thanks. Chocolately looks better than all of them.
I'm all about that SCCM integration.
I only care about the version of Emacs and Firefox I use. I use GNU/Linux, so the rest of the software comes from my current distro's package manager. These days I'm trying out elementaryOS, until recently it was Debian Stable. Now I'm using Firefox from the package manager repos because it's up-to-date, but because Debian Stable one was very stale, I used it from their tarball, and it auto-updated itself.
Emacs is my workhorse, the epicentre of my computer use, so it's different. I follow the master branch, and build every week using a script which helps me review changes since last build and make note of interesting changes. I do this to keep up with new development and be able to send my patches upstream when I encounter a bug (seldom). I have a rather large config, and jumping from one release to another requires too much work, a big amount of changes to catch up on. This way, I can update my config gradually as changes come in.
When I really need to use some version of some other software, I can use
/etc/apt/preferences
to "pin" versions. I never need to tho.Under macOS I use homebrew as a package manager, and use up with mas. I also have a Python script that updates all my installed packages (only system site packages, I use venvs for any dev work).
Same here,
brew cask
,mas
, andbrew
cover about 95% of the limited amount of software I install.As the others: package manager. For me, apt / apt-get / aptitude on Debian GNU-Linux.
The quality, comprehensiveness, ease-of-use, power, flexibility, and lack of bullshit and drama these provide is staggering. I deal with a few proprietary systems (mostly MacOS) and the hassle of having to individually track software updates, or have applications randomly interrupt me to tell me that they want to be updated and restart, in the process killing my workflow and state is maddening.
I haven't touched Windows seriously in decades.
Even other Linux and Unix systems are often a pale shadow of Debian. Red Hat's RPM/Yum has always been vastly more problematic. I can't speak to Gentoo or several of the newer alternative package managers, though they seem at least more sane than RH.
The secret sauce for Debian isn't in the tools but the policy and packaging process. That is, yes as a matter of fact packaging software for Debian is slightly more of a pain in the ass than other systems. But administering Debian (or Ubuntu, Mint, or any of the numerous derivative distros) is so much saner, easier, more powerful, and more flexible. Apply a small amount of pain at one side of the process for massive wins at the other.
The only software I run locally these days are games and antivirus software. The AV updates itself and Steam updates the rest. I do use a power users tool for Kingdom of Loathing called KoLMafia, but even that has an add on that pulls the daily build.
Like others have said, package managers.
There are tons of package managers out there, see this wikipedia article.
I mostly use homebrew with my dotfiles repo. See my Brewfile and my Brewfile.work for the packages I install. I keep them up to date by running
bin/dot
which runs all the updates. See bin/dot. TheBrewfile
calls out tomas
as another user mentioned, which just keeps things up to date that brew can't handle.An 'up-and-coming' package manager is NixOS, but I haven't used it. Looks too difficult. On Windows, I've used Chocolatey with Boxstarter. I also use babun, which is a cygwin replacement. Then updating things is as easy as
pact update
.Linux of course is easy.
apt-get
,yum
, etc. all handle package-management fine.I'm on Linux (Fedora/GNOME) mostly, and I've gotten lazy so I just let Software handle my updates. It automatically updates Flatpaks (all from Flathub), and once every few weeks I'll reboot and install the DNF updates (almost all from Fedora repo/RPMFusion, plus Flash Player ugh).
The only software that isn't from Flathub, the Fedora repos, or it's own repo is Mailspring and Atom, which I update (re-download) from their websites every couple of months.
I'm with this guy, but on Debian instead of Fedora. Every now and then I get a little notification requesting that I install updates, and I just hit the little "Go for it" button and away it goes. Only exception is Discord. Every now and then Discord has a little pop up to demand I update and I grab the new .deb from their website.
You can get Discord from Flathub (Flatpak's on Stretch)
I just use whatever package manager comes with the OS. Every modern OS except Win10 has one by default.
When using windows all the software I use either has an auto update mechansim built in, is supported by chocolatey or it can be left outdated without any problems.