when updating via portmaster, the dialog to accept the Intel EULA license is hidden in the build log file that is automatically generated by portmaster. Thus the license can not be accepted and the build stalls forever.
WORKAROUND: go to the ports directory in the ports tree, manually create the port's package and install it:
$ cd /usr/ports/sysutils/devcpu-data
$ sudo make package
$ cd work/pkg
$ sudo pkg add -f devcpu-data-1.6.txz
Then update any other ports as usual, e.g.
$ sudo portmaster --packages-build -a
Created attachment 166371 [details]
Auto-accept the Intel EULA
PM has a new maintainer, reassign PR.
How can i reproduce this bug? I get the dialog to accept the EULA while the update - even without the patch.
So does this bug still stands? If yes: which steps do i need to follow to reproduce it?
(In reply to Torsten Zühlsdorff from comment #3)
This is how I was able to reproduce the problem (or at least what I think the reporter of the bug is reporting):
1) pkg delete devcpu-data
2) cd /usr/ports/sysutils/devcpu-data
3) Edit Makefile and change PORTVERSION from 1.6 to 1.5
4) make install clean
5) Edit Makefile and change PORTVERSION back to 1.6
6) portmaster -H -a
thanks for the pointer. Which your description i could reproduce the problem.
But i am a little in doubt. The problem just occurs because of the "-H" flag, which clearly state "hide details of the port build and install in a log file".
Accepting the EULA is part of the port build.
So, yeah. I understand the problem but i'm not sure if this is solvable. I will have a deeper look at the code to figure this out.
Forgot to mention:
The patch "fix" this problem but simply auto-accepting the EULA. I can confirm, that the patch fixes the issue.
I could not say if auto-accepting is correct. But this isn't a portmaster issue. ;)
(In reply to Torsten Zühlsdorff from comment #6)
last update I tried was:
# portmaster --packages-build -a -x curl
i.e. w/o the -H flag. The problem is that when I let portmaster do the update it hides many output in log files (which is usually good and not the error itself). Maybe it shows /dev/stdout but redirects /dev/stderr to a log and the port writes the EULA acceptance dialog to stderr? What's going wrong here is that other dialogs (of other ports) are shown on the console and not written to log files but the EULA dialog of dev/cpu-data goes to a log file.
I cannot reproduce the problem with the current portmaster version:
# portmaster -m LICENSES_ASK=yes sysutils/devcpu-data
displays the license text, allows to scroll down to the bottom and to accept or reject the license.
Please re-open this PR with sufficient detail to allow to reproduce it, if you think it is still relevant.
I have verified the problem if -H is passed.
A fix will be committed to portmaster, after testing.
A commit references this bug:
Date: Fri Jan 12 21:59:51 UTC 2018
New revision: 458881
Fix display of license acceptance menu if build logs are hidden with -H.
Reported by: firstname.lastname@example.org
Approved by: antoine (implicit)
Fixed in portmaster 3.18_13.