I am currently using Visual Studio, the most powerful, convenient, and useful code development system around. But increasingly owned by enemies of increasing wickedness and diminishing competence. Also, completely different, and not altogether compatible with, what is needed to build code on linux.
I attempted to build wxWidgets using MingGW which is open source, and failed.
Git is open source, and operated by good people, but its hash function is insecure, and its signing system relies on Gpg, which is designed to be part of the Web of Trust, which no longer exists and never was entirely working, and never designed for the use to which Git uses it.
After we get a signing and security system, which will not be for a while, we should create a fork of Git that actually is secure.
Build environment for Git for Windows is a package that builds a package manager that installs packages that can build Git on windows. But it is a package manager, not a pile of compilers and build tools, a package manager that merely installs precompiled files from who knows where, compiled by who knows who?
What we actually need is a full development environment that can build a full development environment, and you can have multiple versions of the tools on the same machine, and can select one or more all of the newly modified tools for your build environment, or build a full install package from source, including compilers, make utilities, ide, and git. When a source file for the ide or one of its components changes, the default full build action being to build the new component, and switch to it, but the release components are not overwritten, and you can switch back until you explicitly overwrite the release version by running a newly built install package or manually copy a newly built component over the release component.
There should be a unit test, of course, and should unit test fail, the default action should be to switch back to the release version, and open up the source code hinted by the unit test failure.
It should be a development environment that provides special case handling for development of the development environment.
All this is very far indeed from what Build environment for Git for Windows provides, and creating it would be an enormous project, but the only way to prevent toolchain attacks is to make toolchain development readily available to everyone.
reaction.la gpg key 154588427F2709CD9D7146B01C99BB982002C39F
This work is licensed under the Creative Commons Attribution 4.0 International License.