IMO if the government needs widgets it should ask for bids and contract based on price. Some broad restrictions are OK (e.g., prefer domestic manufacturers), but government has no business skewing the contract by promoting <insert favorite agenda>. If we want to promote X with public money, do so explicitly and separately: support research, fund startups, etc. My 2c
Sorry for confusion. In "buying widgets" I meant the regular procurement decision: the DoD needs N units of something (door handles, tank shells, whatever), it publishes specs, asks for bids and buys from whoever can deliver at the lower cost to the taxpayer. The government also funds research, where it gives money to generate something it believes to be beneficial longer term.
Funding research is, by definition, less cut-and-dry as to what we should pay for; thus having an agenda is not always bad and might even be good. I am using an "agenda" not in a narrow political sense, but including positions like "we should be funding space comms / drone networks / real-time soldier health monitoring / whatever because industry is not building what we think we will need in a few years".
But being somewhat exposed to the waste of DoD procurement I am personally vehemently against inserting such ideology into procurement decisions. Those should be money-based. Get what you need at the least cost to the taxpayer. If you do not know what you need, think harder or invite experts or do a study (and publish it so people writing it know they are associated with those decisions) before paying billions for questionable junk. My 2c.