4 ms·
It always blows my mind to see people trying to do something that is Windows native on Linux. Would you automate your Linux build using VB Script? Why not? Wh
by jiggawatts 4y ago
It always blows my mind to see people trying to do something that is Windows native on Linux.
Would you automate your Linux build using VB Script? Why not?
When in Rome, do as the Romans do!
Citrix actually purchased a company like this and sold their Linux-based virtual appliance that did one thing and one thing only: create Windows disk images for running Windows applications.
It was the stupidest thing I had ever seen that was packed full of clever solutions to problems that didn’t need solving.
- ilyt 4y agoThink the point there is to not pay for windows license to make some images
- yjftsjthsd-h 4y agoEh, it depends on context. If all your build servers are *nix boxes, no point in spinning up an NT machine just for building those images. In a Microsoft shop, controlling *nix boxes with powershell is probably a decent idea.
- thrwawy74 4y agoI actually had a neighbor who worked for Citrix and this describes him to a T. He was such a clever waste of time. I miss you Skip.
- throwaway09223 4y ago> trying to do something that is Windows native on Linux. You realize this blog post is about Illumos, not Linux, right? Illumos isn't nearly as well-polished. A lot of these types of tasks are easier on Linux than they are on Windows native.
- nix23 4y agoWhait linux is polished compared to illumos? Man you need a reality check.
- bragr 4y ago>You realize he's not using Linux, right? FTA: I had already gotten it working with QEMU under KVM on Linux but wanted to port it to propolis on our illumos distro, Helios.
- throwaway09223 4y agoAs I said, this is a blog about Illumos, not Linux (which wasn't notable, because it Just Worked on Linux) Illumos is not Linux.
- hinkley 4y agoI think you are quite fixated on a noun when most of the point is Windows on !Windows.
- throwaway09223 4y agoI think you've missed the point that this sort of thing is often easier on Linux than on Windows. Many of the leading repair tools for Windows are Linux based, for example. If you want to run older Windows software, you'll have an easier time on non-windows platforms via wine than on modern Windows. (Or, you can run otvdm, wine on windows itself) etc etc
- encryptluks2 4y ago> Would you automate your Linux build using VB Script? Why not? That is a completely different concept and not at all relative to building deployment images. They are not compiling Windows here on Linux. Creating build images doesn't necessarily require anything that is Windows specific. An unattended XML file can be added to a disk image without needing to boot into a Windows environment. The challenge with Windows automation though is to get an optimized image you need WIM mounting and modification. Linux even has a WIM tool, but the tools like DISM are not really there or the Windows ADK. I'm sure DISM can be reverse-engineered and then doing automation in Linux would make a lot of sense actually since it would be less-resource intensive. Spinning up a container or Linux distro is usually magnitudes faster than a Windows machine, and Windows automation in itself sucks comparatively. I would definitely pick doing automation on Linux whenever possible as long as it gets the job done well.
- jiggawatts 4y agoThis is precisely the attitude that I'm arguing against. No, Linux is not superior in any way for Windows install image automation! Why the heck would you reverse engineer and port the DISM tool, when the DISM tool already exists!?. Windows has a built-in set of free tools for automating image updates, integrations, and builds. E.g.: you can mount a WIM image offline (without booting a VM or needing a container), and inject updates, software, configuration, or even drivers. This is 100% supported an Will Just Work. It takes minutes, not hours. The article is the rough equivalent of trying to build a Linux install image using Windows, via some broken FUSE EXT3 driver the causes blue-screen crashes of the entire host OS, then spending a month trying to fix that instead of just using Linux to solve the task like a normal person. PS: I do 99.9% of my work with Windows. The one time in my career I had to inject drivers into a Linux install image, I created a Linux VM and just used that. (I had to make a version of XenServer that could boot from a MPIO FC adapter during install time, even if a path was down. Fun stuff.)
- encryptluks2 4y ago> No, Linux is not superior in any way for Windows install image automation! Having to configure a Windows environment for programmatic actions and subsequent changes is definitely more challenging. Even with the recent SSH access, which I believe the WinRM feature is still in preview, there are a lot of challenges for authentication that simply are not present in Linux. > Why the heck would you reverse engineer and port the DISM tool, when the DISM tool already exists!?. Because if you can do it in Linux, it makes sense to use an OS that is optimized to run like 95% of the world's server infrastructure due to performance and operational benefits. I really don't have time to get into an argument about why Steam OS chose Linux and why people use Wine to run Windows games on Linux. However, those are just a few indications that you're wrong. > Windows has a built-in set of free tools for automating image updates, integrations, and builds. They have a tool. I'm aware of Windows ADK. Everything else they had is no longer updated as far as I can tell. Most of them are just crappy GUIs wrapped around basic instructions that are as simple as creating partitions and copying files. > E.g.: you can mount a WIM image offline (without booting a VM or needing a container), and inject updates, software, configuration, or even drivers. It takes several minutes when in reality it is a subpar experience for developers looking to create multiple images. If someone creates a tool in Linux to do the same thing, but does it better, why does that bother you so much? Are you as bothered that Windows essentially has tried to create a Linux subsystem for Windows because developers were leaving Windows in droves because they found developing on Linux more pleasant? > The one time in my career I had to inject drivers into a Linux install image. You mean essentially installing a package via cloud-init which takes a second to add? Injecting drivers with Windows is still tedious if done through DISM and not the unattended XML.
- haileys 4y ago> Would you automate your Linux build using VB Script? Why not? No but Windows builds are automated with Unix tools like Perl and Make :)
- andai 4y agoThis is true. Tried compiling Windows XP recently and the use of Perl caught me off guard!
- deleted 4y ago[deleted]
- delta_p_delta_x 4y ago> It always blows my mind to see people trying to do something that is Windows native on Linux. > When in Rome, do as the Romans do! This seems to be a running trend for people with a deep dislike for anything Windows-native–they tend to force non-Windows paradigms on Windows, and when this breaks, blame Windows for not being 'POSIX-compatible'. Probably also led to the explosion of tools like Cygwin, Msys2, Mingw, etc.
- drekipus 4y agoWhat's the windows paradigm in this example? Tools like cygwin, etc, exist because there (was) absolutely nothing like it on windows back in the day, or it was locked behind some paid for editor, or most often it relied on obscure hacks that were hard to read. "find which file contains this string" is a non-windows paradigm.
- pjmlp 4y agoThere wasn't free beer POSIX support, lets put it like it. https://en.wikipedia.org/wiki/Windows_Services_for_UNIX https://en.wikipedia.org/wiki/Windows_Services_for_UNIX
- AlmostAnyone 4y ago> "find which file contains this string" is a non-windows paradigm. Really? What about FIND and FINDSTR? FIND command is older than Linux.