Mixing ports and packages again

Greetings all,

despite reading topics on (not)mixing ports and packages, I still have some misconception(s).

As best as I understand it, if one changes an option, the custom-built package may depend on a package B instead of the default package A. So, if one runs pkg upgrade , the upgrade process may reverse the selction, package B may be removed and the custom-built package fails.

So, is the solution to built all packages and upgrade from the local repository of custom-built packages? Or, alternatively, after running pkg upgrade, rebuilt all the custom-built packages?

Is there anything else I am overlooking?

Slightly different issue appears to be "a chicken-and-an egg" problem. If the build environment, e.g.,
ports-mgmt/poudriere, and other supporting infrastructure is installed from packages, as many set-ups recommend, is this not a problem as it violates the non-mixing mantra?

Kindest regards,

M
 
So, is the solution to built all packages and upgrade from the local repository of custom-built packages?
That's the "best" way and will make sure all package dependencies line up correctly with your custom options.

If the build environment, e.g.,
ports-mgmt/poudriere, and other supporting infrastructure is installed from packages, as many set-ups recommend, is this not a problem as it violates the non-mixing mantra?
Really only for the first build. After that you simply point pkg(8) to the local custom repository, for example:
Code:
dicelan: {
  enabled: yes
  url: file:///usr/local/poudriere/data/packages/15-stable-server
}
 
I would say it really depends on what you need customized, and how often you update packages. If it is just a few programs you want to customize, then you could just build those from ports, lock them, and remember to rebuild if you want to upgrade them
For example, games/freeciv you might want to use the GTK client instead of the default QT6 client. There is no sense in setting up an entire build environment for making that switch.

If, on the other hand, you are wanting to make more system wide customizations, such as using a newer version of Samba, eliminating PulseAudio and Wayland (these are things I customize) then the number of programs that will need built starts to go up, and managing that manually becomes a big pain.

If you will be building a large number of programs, you should look into a dedicated machine for building, as it can take a lot of system resources and a lot of time.
 
Back
Top