[HN Gopher] Decompiling Hyper-V Manager to rebuild it from source
___________________________________________________________________
Decompiling Hyper-V Manager to rebuild it from source
Author : password4321
Score : 106 points
Date : 2024-05-06 11:02 UTC (1 days ago)
(HTM) web link (awakecoding.com)
(TXT) w3m dump (awakecoding.com)
| Nuzzerino wrote:
| > Even if we've managed to rebuild and patch Hyper-V Manager from
| source, this is not enough for a real community project to take
| place. As much as I would like to just upload the decompiled
| source code to GitHub to start making significant changes to it,
| there's no legal standing for this project. I can only go as far
| as streamlining the process of decompilation such that others can
| experiment making changes locally.
|
| I don't know what I'm missing here but something about this whole
| idea rubs me the wrong way. Who in their right mind is going to
| do this in a production environment where there is no apparent
| possibility to have a shared repository for the updates? And no
| possibility of any support or warranty (for what it's worth).
| It's worth about the price of whatever clicks the blog post
| generated.
|
| It's not like the software is that old. I don't blame him for
| disliking the powershell interface but this isn't the answer.
| actionfromafar wrote:
| For years there were patches distributed for pine (or was it
| qmail?) back when it had a proprietary license, it kind of
| reminds me of that.
| prmoustache wrote:
| This is also how Apache (hence the name) and the Berkeley
| Software Distribution (BSD) were born.
| wolrah wrote:
| > I don't know what I'm missing here but something about this
| whole idea rubs me the wrong way. Who in their right mind is
| going to do this in a production environment where there is no
| apparent possibility to have a shared repository for the
| updates?
|
| They said right at the beginning:
|
| > The primary goal of decompiling Hyper-V Manager is really to
| assess its value as a potential open source project, which is
| what I'm hoping Microsoft can be convinced to do.
| awakecoding wrote:
| Thank you for clarifying - I am in no way suggesting that
| locally patching a decompiled Hyper-V Manager makes sense
| beyond its experimental value. Having gone through the
| exercise, it confirmed it's potential value as an open source
| project, but this can only realistically happen if Microsoft
| open sources Hyper-V Manager like they've done for many
| things in the past, especially software that is no longer
| actively developed.
| maxrecursion wrote:
| I use hyper-v regularly and never even heard of windows admin
| center. Another example of Microsoft changing something that
| isn't broke just for the sake of change.
|
| I'm glad I've been building a homelab and can move all my
| studying too that since it seems hyper-v is being shoved out the
| door by Microsoft.
| binkHN wrote:
| Windows Admin Center was created because everyone wanted to
| manage Windows from a web browser. The current result is it
| works, but it's far from an optimal GUI solution for managing
| Windows machines.
| awakecoding wrote:
| Windows Admin Center was created because Microsoft _thinks_
| sysadmins want to manage Windows from a web browser. Instead,
| most of them would rather use desktop apps over RDP, which is
| why the deprecated Microsoft Management Console (MMC) is
| still widely used. WAC adoption is nowhere near what it
| should be in practice at this point.
| binkHN wrote:
| I couldn't agree with you more; the native GUI tools are
| leaps and bounds better than their lumbering web
| counterparts.
| sonicanatidae wrote:
| What you missed with WAC is a hardtime setting it up, for a
| result that was mediocre.
| naikrovek wrote:
| WAC is one of those things that looks excellent on paper, but
| is borderline useless in practice.
| yardie wrote:
| > The Hyper-V PowerShell cmdlets that wrap the underlying Hyper-V
| WMI provider are well maintained and provide complete access to
| many settings not properly exposed in Hyper-V Manager.
|
| I'm very familiar with Hyper-V, HVManager, and SCVMM. If you want
| to do anything more than a light touch deployment of a VM you're
| going to use Powershell. Microsoft has made that abundantly clear
| and even their training courses have you deploy through PS. SCVMM
| adds a nice wrapper with some additional orchestration. And it
| also adds a whole other library of PS that are also not exposed
| in their very advanced Windows SCVMM GUI.
|
| This is a cool experiment but completely unnecessary. You can
| write a Powershell GUI with the settings and options that you
| prefer. It's what I've done when I wanted to see nice tabular
| view of VM resources that the existing GUIs could not give me.
| Give in to Powershell!
| voidfunc wrote:
| Powershell is pretty awesome in Windows but it melts a lot of
| traditional Unix hacker brains from my experience.
|
| You really have to buy into it and that's a hard sell for those
| who aren't Windows power users.
| binkHN wrote:
| If you're doing Windows administration, PowerShell is a must;
| the Windows GUI is too limiting.
| pjmlp wrote:
| It is easier to approach it, if instead of trying to see UNIX
| everywhere, one thinks of the REPL environments from Xerox
| PARC/ETHZ, or even AmigaDOS with REXX.
| stackskipton wrote:
| Former Windows Admin who still uses Powershell on *nix. Once
| you get over the hump, you will find it's pretty darn good
| scripting language. Personally, I find it much more
| maintainable since verb-noun is clunky while writing but much
| easier to read.
| sumtechguy wrote:
| For me my brain can NOT stop trying to use it as a CMD
| replacement. The CMD commands just do not work (duh its not
| CMD!). I then have to have that 'kerthunk' spot where I try
| to use the newer commands. Nothing wrong with powershell.
| It is just my brain for some reason can not let go of CMD
| in this context. Jump to bash no sweat. But for some reason
| my brain just will not use powershell correctly and I have
| no idea why. Great scripting lang and way better than bash
| or CMD script.
| awakecoding wrote:
| I actually love PowerShell and use it extensively to automate
| Hyper-V labs, but there's a big difference between automation
| and one-off things like a checkbox to enable nested
| virtualization. There's also a large portion of users looking
| for something just good enough as a desktop GUI to manage
| just a few VMs with no automation, and Hyper-V Manager is
| definitely behind when compared to VirtualBox or VMware
| Workstation in that regard.
| steve1977 wrote:
| Fair point, but these people probably also don't administer
| Hyper-V environments.
| adancalderon wrote:
| "Hyper-V is undeniably a critical component of the Microsoft
| virtualization stack runs on it, but it's also used in
| Virtualization-Based Security, Windows Containers, Windows
| Subsystem for Linux, Windows Subsystem for Android, and even the
| Xbox."
|
| weird sentence
| awakecoding wrote:
| Weird, right? That's exactly the argument repeated ad nauseam
| by Microsoft as "proof" that Hyper-V isn't dead, somehow
| excluding the lack of a good _desktop_ GUI for Hyper-V VMs from
| why users would feel differently
| awakecoding wrote:
| Oh and the funny thing is that since writing this blog post
| Microsoft killed Windows Subsystem for Android despite its
| immense value as a developer tool
| awakecoding wrote:
| I just realized what you saw, I originally meant to say
| "Hyper-V is undeniably a critical component of the Microsoft
| virtualization stack as Azure runs on it", I've got it fixed
| and also removed the Windows Subsystem for Android mention
| since Microsoft killed it
| userbinator wrote:
| Just like Java, one of the (few) things I like about .NET
| languages is how they can be easily decompiled and recompiled,
| although I think it missed the era when disassembling and binary
| patching was really common even amongst non-programmers, so it
| didn't get as much attention and empower users as much as it
| could have.
| pjmlp wrote:
| As someone that works with both, one of the best design
| decisions of .NET was going back to the managed languages that
| predated Java, and include the same kind of features for low
| level programming, and proper value types.
|
| Granted they didn't expose everything to C#, rather C++/CLI or
| having to emit MSIL directly, but since Midori, and Core
| reboot, those remaining features have been slowly exposed to C#
| as well.
|
| Meanwhile on Java side we keep getting Valhala on little
| pieces, and most likely stuff like Panama or Vector types, will
| never make it to ART.
| magnat wrote:
| > Even if we've managed to rebuild and patch Hyper-V Manager from
| source, this is not enough for a real community project to take
| place. As much as I would like to just upload the decompiled
| source code to GitHub to start making significant changes to it,
| there's no legal standing for this project
|
| I did almost exactly the same thing with Microsoft Reporting
| Services / ReportViewer several years ago, but decided to go a
| step further and published whole thing on a GitHub and uploaded
| packages for .NET Core/5/6/7/8 to NuGet - both platform
| controlled by Microsoft.
|
| Both repo and packages are still up. Only legal inquires came
| from other companies asking if they can really use it. For
| reasons I cannot fathom, Microsoft MVPs and community managers
| direct anyone asking for .NET Core version of ReportViewer to my
| recompiled package and sources, with links all over Microsoft's
| forums, reddit and Q&A sites. GitHub analytics shows some
| visitors come via direct links from docs.microsoft.com.
|
| I guess Microsoft just doesn't care. Hell, they allow scripts for
| one-click product activation bypass to be hosted on GitHub.
| pathartl wrote:
| It doesn't surprise me. There are parts of Microsoft that are
| almost completely supported by the community. You've provided
| an improvement to their product for free. It's not like they're
| making money on it directly, and any easier you make it ensures
| stickiness in their platform.
___________________________________________________________________
(page generated 2024-05-07 23:02 UTC)