Re: ports and interactivity
On Sun, 26 Mar 2006 16:48:58 -0800 Ian A. Tegebo [EMAIL PROTECTED] wrote: I'm interested in knowing several things: 1 When is a port interactive? 2 Is there an easy way to determine the above? 3 What are all the options for a given port? After doing some reading, I understand that one can learn about options in Makefiles, running make show-config, make show-options, or some other idiosyncratic method that seems to vary from port to port. In terms of question 1, there seems like there should be a IS_INTERACTIVE variable set in the Makefile but in the example of shells/bash-completion, there is no such variable and yet I was presented with what I imagine was dialog prompting me to choose between bash2 and the newer bash3 (default shells/bash). I have a hidden agenda here. I would like to be able to present portupgrade with a list of ports, preprocess all interactive ports before any actual building occurs, and then let portupgrade do its thing. Now, I could use the BATCH variable to at least process all ports that aren't interactive but that hardly seems cool when there could be dependencies that are interactive (which would show up when I pass -rRn to portupgrade). I've also taken a cursory look at portmanager and portmaster but neither seem to fulfill my agenda. It's not that I want to simply achieve automation, I want to do all the human work of evaluating options and making decisions up front (without all the tedious work of poking around in Makefiles when there are already nice things like those dialog prompts). Has anyone gone down this road? Does it not go anywhere? Is there a better way to do this? All the interactive dialogs that I've seen store the result of your choices in /var/db/ports. As a result, you never see the dialog again if you reinstall or upgrade the port. You could establish a set of options on a scratch machine, then copy the /var/db/ports directory to the new machines you are building. Also, the portupgrade.conf file allows you to add command line options for ports. See the man page for details. HTH. -- Bill Moran Collaborative Fusion Inc. ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: ports and interactivity
On Monday 27 March 2006 01:48, Ian A. Tegebo wrote: I'm interested in knowing several things: 1 When is a port interactive? 2 Is there an easy way to determine the above? 3 What are all the options for a given port? ... Now, I could use the BATCH variable to at least process all ports that aren't interactive but that hardly seems cool when there could be dependencies that are interactive (which would show up when I pass -rRn to portupgrade). BATCH stops INTERACTIVE ports being built, and causes other ports to build with default options, using the port knobs (as in WITH_FOO) to override the defaults. Only a handfull of ports are INTERACTIVE, usually because they require you to agree to a licence at install time. I want to do all the human work of evaluating options and making decisions up front Try this: #!/bin/sh # Get list of out-of-date ports # This may take some time plist=`pkg_version -ovl'' |awk '{ print $1 }'` # allow each out-of-date port to update it's config, and that of any new # dependencies (dialog only runs when something has changed) for porg in $plist ; do cd /usr/ports/${porg} make config-recursive done ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]
ports and interactivity
I'm interested in knowing several things: 1 When is a port interactive? 2 Is there an easy way to determine the above? 3 What are all the options for a given port? After doing some reading, I understand that one can learn about options in Makefiles, running make show-config, make show-options, or some other idiosyncratic method that seems to vary from port to port. In terms of question 1, there seems like there should be a IS_INTERACTIVE variable set in the Makefile but in the example of shells/bash-completion, there is no such variable and yet I was presented with what I imagine was dialog prompting me to choose between bash2 and the newer bash3 (default shells/bash). I have a hidden agenda here. I would like to be able to present portupgrade with a list of ports, preprocess all interactive ports before any actual building occurs, and then let portupgrade do its thing. Now, I could use the BATCH variable to at least process all ports that aren't interactive but that hardly seems cool when there could be dependencies that are interactive (which would show up when I pass -rRn to portupgrade). I've also taken a cursory look at portmanager and portmaster but neither seem to fulfill my agenda. It's not that I want to simply achieve automation, I want to do all the human work of evaluating options and making decisions up front (without all the tedious work of poking around in Makefiles when there are already nice things like those dialog prompts). Has anyone gone down this road? Does it not go anywhere? Is there a better way to do this? -- Ian Tegebo ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to [EMAIL PROTECTED]