Solved Synth questions

Why Synth deleted the packages that couldnt build? and why Synth fail building those packges? why some packges are skipped?



Code:
sudo synth upgrade-system
Password:
Querying system about current package installations.
Stand by, comparing installed packages against the ports tree.
Scanning existing packages.
 progress: 95.21%              


The task is complete.  Final tally:
Initial queue size: 14
    packages built: 0
           ignored: 1
           skipped: 10
            failed: 3

Duration: 02:23:52
The build logs can be found at: /var/log/synth
Removed: pkg-1.9.3.txz
Removed: pkg-1.9.4.txz
Stand by, prescanning existing packages.
Stand by, recursively scanning 884 ports serially.
Scanning existing packages.
Packages validated, rebuilding local repository.
Local repository successfully rebuilt
Updating Synth repository catalogue...
Fetching meta.txz: 100%    260 B   0.3kB/s    00:01    
Fetching packagesite.txz: 100%  190 KiB 194.7kB/s    00:01    
Processing entries: 100%
Synth repository update completed. 870 packages processed.
Updating database digests format: 100%
New version of pkg detected; it needs to be installed first.
Checking integrity... done (0 conflicting)
The following 1 package(s) will be affected (of 0 checked):

Installed packages to be UPGRADED:
    pkg: 1.9.4 -> 1.9.4_1 [Synth]

Number of packages to be upgraded: 1
[1/1] Upgrading pkg from 1.9.4 to 1.9.4_1...
[1/1] Extracting pkg-1.9.4_1: 100%
Updating Synth repository catalogue...
Synth repository is up-to-date.
All repositories are up-to-date.
Checking for upgrades (423 candidates): 100%
Processing candidates (423 candidates): 100%
Checking integrity... done (2 conflicting)
  - libwmf-0.2.8.4_15 [Synth] conflicts with libwmf-nox11-0.2.8.4_15 [installed] on /usr/local/bin/libwmf-config
  - libwmf-0.2.8.4_15 [Synth] conflicts with libwmf-nox11-0.2.8.4_15 [Synth] on /usr/local/bin/libwmf-config
Checking integrity... done (0 conflicting)
The following 159 package(s) will be affected (of 0 checked):

Installed packages to be REMOVED:
    libwmf-nox11-0.2.8.4_15
    libreoffice-5.2.3_5
    firefox-50.1.0_4,1
    ar-libreoffice-5.2.3_5
 
Why Synth deleted the packages that couldnt build?
Because those packages now are obsolete, independently from the fact they could be rebuilt or not, note that this affect the local repository, not the installed packages.

and why Synth fail building those packges?
You need to check the respective packages build-logs.

why some packges are skipped?
Because they depend on packages that cannot be build. (failed to build), that means part of the files needed to build aren't avaiable.
 
Thanks if those packages are obsolete, what should i do? rebuild repository? for example firefox failed to build with synth, after portnaps fetch update i did in the firefox port sudo make install, to have it installed again, what is the correct way to install those deleted packages?
 
Obsolete, in the Synth context is referred to packages present in the local repository versus the port tree.

You need to rebuild them (and you can safely do it using Synth), but you need to look at those failed dependencies, without them you will not be able to rebuild firefox, nor using Synth, nor using make install.

Common cause of failed builds are:
- incorrect or obsolete or conflicting port options
- synth watchdog killing the build due to build looking like stalled, i.e. false positive on low power machine
- network disconnection and consequent inability to fetch distfiles
- others may be.

Best thing to do is looks at build log files.
 
I upgraded firefox and chrome to version 51.0.11 and 55.0.2883.87 if i do
Code:
pkg version -l "<"
i have no packges to update, if i do portmaster -a the same no packges to update, but if i do
Code:
synth upgrade-system
synth try to build firefox and chrome.
Also synth used all my swap memory i have 4gb of swap and the system was really slow while building the ports,
Can synth install just one package?
 
There's another thread about synth using swap. It uses tmpfs, and does require a lot of memory. Its creator recommends adding swap when building. (You can make a swap file on disk to just use while running synth.)

https://forums.freebsd.org/threads/59107/

To sum up, some of us found that one can increase swap and also decrease number of builds. By default, synth has setting for 6 builds if you have an 8 core CPU. You can edit /usr/local/etc/synth/synth.ini, to change the number of parallel builds, say, to 3, and add a temporary swap partition and that should fix the problem.

To install one package the command is synth install <pkgname>, e.g. synth install firefox but it will, like a port, often do things with dependencies as well, especially if you've mixed packages and ports--say, the default for packages is the quarterly build, so package X might use libA but the latest version uses libB.
 
i have no packges to update, if i do portmaster -a the same no packges to update, but if i do
Code:
synth upgrade-system
synth try to build firefox and chrome.

Yes, because what synth is doing is: building your "local repository", later it will install packages fetching them from your "local repository".
 
thanks i tried to install packages with synth install but i get:
Code:
Invalid port origin: firefox
but i do not understand why synth fail to build firefox and if i do
Code:
sudo make install
from the port directory it compiles fine,
please be patient with be, i installed synth some month ago , but i used for first time two days ago, it built more than 800 packages but i had problems with just a few. Is there any command to let synth know that firefox or any other packge is already updated?
 
Is there any command to let synth know that firefox or any other packge is already updated?
No, but there is an option to fetch that package from FreeBSD repository, assuming you didn't set some custom option for firefox or any dependency, see synth configure option "Fetch prebuilt packages".

In general, if you want to build from ports using ports-mgmt/synth, you will find that firefox will be rebuilt quite frequently, sometimes apparently unnecessarily, but it is the only way to guarantee the full consistency of the local repository and the installed packages.
 
Thanks a lot, synth build firefox and chromium just fine but using synth install, i think the problem was the low swap memory and high parallel builds, so next time if i have to build all the packages for example after a major version upgrade i can use synth instead of portamaster -af?
after using synth for the first time i have to say that i like it.
 
i think the problem was the low swap memory and high parallel builds
Most likely. Take some time to understand how ports-mgmt/synth works, specifically about number of builders and tmpfs use.

so next time if i have to build all the packages for example after a major version upgrade i can use synth instead of portamaster -af?
Of course yes, I would certainly suggest synth over portmaster.
 
Back
Top