cirruslabs / docker-images-windows

Base Windows Docker images for Cirrus CI
MIT License
6 stars 7 forks source link

Adding GNU diff utils through choco, as they are no more part of MSYS2 #11

Closed ped7g closed 3 years ago

ped7g commented 5 years ago

why: I'm using diff in integration tests to compare results of outputs of various text and binary files and it feels to me this is overall pretty much very "default" development tool.

Extra fun fact: the MSYS2 does not have default diff.exe sort of reasoning about "minimal pack"? But there's about 6 different compression-diff executables in the msys bin directory in the current cirrus cmake image (and I guess some of them need base text diff to actually work). I don't know if those are part of minimal pack, and I spent already too much time trying to set up windows builds of my project (*), so I'm not going to even hunt down history of MSYS project and search who's idea and action lead to current status, I just find it kinda funny on the "ridiculous" side.

*) technically not blaming cirrus, just MS windows overall (and my lack of knowledge of it, haven't been using them for 13+ years and now it feels totally dumb and inferior compared to linux), although having some docs how to find/use the installed goodies in the cmake image would be nice, I ended up doing many path dir /w batch files in early commits to explore the image, finally managing to set up GNU find as default, and then doing find across Program Files directory to find where things like vcvars64.bat are located, as by default the script run by Cirrus doesn't have this on path (which is probably good thing), and I didn't find any docs/list of these locations (which is not that good). (and CMake itself was aware where the VSC is located, but did provide only project files, no batch files to start the build ... again makes kinda sense, but didn't help)

ped7g commented 5 years ago

There is alternative of installing the diff through pacman from the msys project itself, which would be maybe more coherent if one thinks of diff as part of msys ecosystem only, but I'm fine with it being installed outside of msys, plus the choco install is already being done any way, so just adding one more package....

ped7g commented 3 years ago

The MSYS2 is now gone, and diffutils are part of the git installation in latest "cirrusci/windowsservercore:cmake" image, so this PR is now pointless.