List of port upgrades like Gentoo emerge reddit / freebsd ---------------------------------------------------------------------- salonas · 2023-06-29 18:26 I use a FreeBSD VM for testing. Not something fancy but to "play". I use the pkg latest branch but I like the customization of the packages that Gentoo copied. BUT I can't find a normal way to show the port upgrades. With Gentoo emegre I use "emerge -av --deep --newuse --upgrade --with-bdeps=y world" and it shows everything that has to be upgraded. Then I choose what to do. For example I upgrade immediately the kernel and graphics drivers and let Firefox, Rust and Webkit for the night. ​ With FreeBSD I haven't found something similar. I use portupgrade but no list. Or I'm blind. ​ Can I have something similar? ---------------------------------------------------------------------- timvandijknl · 2023-06-29 19:06 You mean `pkg upgrade` and `freebsd-update fetch` ? ---------------------------------------------------------------------- salonas · 2023-06-29 19:19 I mean the list of PORTS to be upgraded. I don't want packages. I want to build ports with my own choices and then upgrade them. But I haven't found a way to show them. For example Firefox-1 to Firefox-2, Gimp-1 to Gimp-2, libjpeg-1 to libjpeg-2. And then choose to compile Gimp because it needs 5 minutes build-time. And during night upgrade Firefox because it needs 1 hour. ---------------------------------------------------------------------- timvandijknl · 2023-06-29 19:32 `portsnap fetch` in that case. [https://man.freebsd.org/cgi/man.cgi?portsnap(8)](https://man.freebsd. org/cgi/man.cgi?portsnap(8)) ---------------------------------------------------------------------- salonas · 2023-06-29 19:36 Maybe I don't explain it right. I fetch the ports and I want to see the upgrades. ---------------------------------------------------------------------- salonas · 2023-06-29 19:45 When I do "pkg upgrade" system lists a number of binary packages for upgrade. ​ I want the same with ports. For example "port-blahblah list" and show the upgrades after my "git pull" ---------------------------------------------------------------------- laffer1 · 2023-06-29 21:02 in the old days, i used portupgrade for that. It would work off a generated index file. however, if you list packages that need upgrading, that gives you a hint at what needs to be built anyway from ports. ---------------------------------------------------------------------- salonas · 2023-06-29 21:12 What is that command? I can't figure it out. ---------------------------------------------------------------------- laffer1 · 2023-06-29 21:21 Well you'd probably want portversion included with that software to look for updates. [https://pkgtools.github.io/](https://pkgtools.github.io/) You have to install it from ports/ports-mgmt/portupgrade It’s been a long time. Might be something like portversion -vL= ---------------------------------------------------------------------- salonas · 2023-06-29 21:30 Never saw it. I think that's the command. Tomorrow I'll try it. I want something simple. As I wrote before I tend to break the upgrades into smaller pieces. Unfortunately modern software is very very bloated. I have a Ryzen 5800x with 32gb of ram and Firefox on Gentoo needs 45 minutes to compile. Same with rust. So why bother with them during the day? ---------------------------------------------------------------------- hilti2 · 2023-06-29 23:49 `portsnap fetch update && portsdb -fu && portversion -vl '<'` Portsnap to update the ports tree. Portsdb to generate/update the index.db file and then portversion to show the list of ports that can be upgraded ---------------------------------------------------------------------- sp0rk173 · 2023-06-30 00:49 This is it ---------------------------------------------------------------------- theRealNilz02 · 2023-06-30 04:55 Use Gentoo then. ---------------------------------------------------------------------- salonas · 2023-06-30 09:22 Why use Gentoo only? The guy above gave me the solution. I have used these systems for about 30 years. Some of them are more modern than the others. For example Gentoo portage has integrated everything. Debian has some excellent apt frontends. Freebsd has a very nice port configuration. ---------------------------------------------------------------------- theRealNilz02 · 2023-06-30 09:49 If gentoo is so nice, just use it. Nothing is forcing you to use FreeBSD. ---------------------------------------------------------------------- salonas · 2023-06-30 10:07 Sorry but why the attitude? I asked a specific question about listing ports to be upgraded. Linux in general has integrated most package functions in a single command. Emerge, apt, dnf, pacman etc. You don't have to search for multiple commands. It's all in one. But Freebsd uses another approach. Different. Not better, not worse. I use pkg latest but sometimes I want some packages with my own options. That's why I asked. And if it's easy to make a complete switch from binary to source based since I have a decent machine. ---------------------------------------------------------------------- theRealNilz02 · 2023-06-30 10:19 Integration of all commands into one thing is entirely against BSDs idea of software. One tool for one task. Keep it simple, stupid. ---------------------------------------------------------------------- salonas · 2023-06-30 10:45 But that's not what I asked. I asked if there is a way to do a specific task that in other OS is integrated in the package manager. And apparently there is as the guy above showed. You can't tell me to use another OS just because I want something that it's different implemented. It's just different not exotic. I didn't ask for support of an FPGA board to put in a spaceship. I asked a simple command to show some packages. And the command is here. For example the default shell is sh. I use bash all these years. It's stupid to ask me not to use Freebsd for that. It's a bad idea for system scripts but for user scripting it's ok. ---------------------------------------------------------------------- salonas · 2023-06-30 12:09 Also bloat has lost it's meaning in modern operating systems. For example LLVM is the main compiler in Freebsd. But you can't build a single architecture. You must include everything. Why should I care about arm or MIPS? I use only amd64. ---------------------------------------------------------------------- Queueded · 2023-06-30 15:43 Switch from portupgrade to portmaster, and you'll get your list. N.B.: I use Gentoo and FreeBSD primarily and in nearly equal measures ---------------------------------------------------------------------- victoriggy · 2023-06-30 15:52 cd /usr/ports; git pull; portsdb -Fu; portversion -v -l "<" ---------------------------------------------------------------------- Plenty-Librarian-777 · 2023-06-30 19:50 `pkg version -vL =` This compares your installed packages with the current version in the ports tree. The '=' filters out the ones that are at same version, displaying only those with a newer version with '<'. if you use git for ports (and not portsnap) this command has become a bit slow, because git doesn't have and index file (in /usr/ports), but you can just go to /usr/ports and either `#make fetchindex` or `#make index` The first one fetches the file from the servers and the quick way. The second one builds an index by going through the ports tree. This one takes some time (like a few minutes, depends on PC w/e) but can be more accurate for a port or two here and there. Might not be worth the trouble to do after every git pull. Either way you can try one way, then delete the INDEX-xx file and compare each result. ---------------------------------------------------------------------- salonas · 2023-07-01 06:15 I see that there are many many ways to achieve what I want. Yesterday I tested the portversion command. I piped it to "less" and checked everything. Also I'll try the other methods.