11 ms·
Show HN: Boot Windows 10 Directly into Linux Desktop of Choice
- imafish 10y agoThat looks awesome. How well do Linux DE's run on Windows?
- nxc18 10y agoIts a bit of a mixed bag. Just getting them set up tends to be pretty iffy; they tend to rely on lots of sockets, which I gather aren't actually implemented by WSL. In terms of performance once they are up and running, things are actually pretty decent. The biggest bottleneck appears to be I/O, which is kind of a problem for everything WSL. That part makes installing a gig+ desktop package frustrating as it takes way longer than it should. The funny thing is the types of issues I get with WSL are also had by people using actual Linux. And there's no compositing. Final answer: Full Linux DEs run as well on Windows today as they ran on Linux in 2007.
- hashhar 10y agoYes. Sockets are available in Insider releases though but I/O still remains a pain.
- chrisper 10y agoYes, but not everything. They do not implement everything 1:1 so not everything may work. For example, they implemented inotify, but they left away a few things and certain applications crash because they expect certain functionality.
- dingo_bat 10y agoIf sockets are not available how do programs access the network?
- nxc18 10y agoIts special UNIX sockets. Actual TCP/IP sockets work fine. The workarounds for UNIX sockets not working typically involve switching to use TCP/IP sockets instead.
- zujko 10y agoThis is really awesome!
- ChuckMcM 10y agoNice. For a long time when I ran windows I also ran Xwin-32 from Starnet[1]. That let me putty -X[2] into a linux box and run things with GUIs on the PC where I was sitting. I found I still had xwin-32 installed so I opened up WSL, set my display to :0 and started up xeyes, and blam! there the were. Very nice. [1] https://starnet.com/ https://starnet.com/ [2] Not literal, putty has a setting to allow X just like ssh does.
- yarper 10y agoThis looks cool! I initially thought by the title you'd made a new grub, but was pleasantly surprised!
- blackflame7000 10y agoLooks pretty sweet, nice work!
- maaaats 10y agoCan someone explain what this is for someone not really into the lingo here?
- revelation 10y agoIt uses the new Windows 10 Linux subsystem (WSL) to run your window manager of choice on a Windows port of the Xserver (pray for the soul of whoever ported that). Then it neatly integrates that into the standard Windows login.
- spooterspooter 10y agoYeah, or I guess I could just install my own keyloggers and just email the reports to MS directly.
- killjoywashere 10y agoHe's sort of running open source desktops on a Windows 10 kernel. But not really, there's an abstraction layer called WSL in between. There are some interesting effects though: you can touch test.txt in Bash and then open that file in Notepad without setting up any network shares, virtual machines, etc. In my mind, Microsoft developed WSL to try to keep developers: if you grew up on Linux but are now employed maintaining Windows servers, WSL gives you a way to get to your shell of choice and maybe you won't tell your boss to migrate from Azure to GCP or AWS. There's a lot of stuff (notably a lot of hardware) that still doesn't work as advertised. Graphics cards being a big one. This fellow got graphical desktops running. Sounds like I/O is an issue, but it works.
- majewsky 10y ago> if you grew up on Linux but are now employed maintaining Windows servers I think it's the other way around. It's useful for people who develop for Linux, but their company issues Windows notebooks to employees because their internal IT infrastructure is AD+Exchange+etc.
- 10y ago
- Eridrus 10y agoThis seems totally pointless, but also quite cool :) Xming/VcXsrv seem to be working pretty well for me and I get to keep my windows desktop.
- interfixus 10y agoRun your Tesla on a petrol engine. Whatever is the bleedin' point?
- jahnu 10y agoI'm willing to bet I'll have a better driver experience.
- saghm 10y agoI really hope this pun was intentional, because it's phenomenal
- nxc18 10y agoIts just a fun little project. The idea is to make you question what it means to be a Linux desktop. Here we have very convincing (running authentic binaries!) Linux DEs, but there's no Linux.
- killjoywashere 10y agoWhat a great purpose! GNU/Windows indeed!
- Jare 10y agoYou have lots of gas but no power plug.
- chrisper 10y agoBecause being able to awesome electric engine and awesome petrol engine and the same time (and not having to choose between them) is awesome!
- majewsky 10y agoI see you've never worked at a place where every OS that's not approved by corporate IT gets kicked out of the network.
- djloche 10y agoRight now I'm waiting for a GCC related fix in WSL that is scheduled to get pushed in April. In the meantime I've spun up Ubuntu in VirtualBox that gets the job done. This looks like a great option to play around with once that GCC fix is pushed
- youdontknowtho 10y agoThis is so awesome. I love the guys notes as well. Right on. Great work dude. Keep it up.
- chrisper 10y agoI was experimenting running stuff like PyCharm, VS Code, Sublime etc. in WSl through X11 Forwarding. Eventually I gave up and just run it properly in VirtualBox with seamless mode.
- snuxoll 10y agoFYI, for PyCharm a remote interpreter is probably an easier solution as long as you aren't needing your app to draw anything on an X11 window.
- chrisper 10y agoI kind of want to have a development environment in Linux. I also like to game, so for that Windows (in non-vm) is better. So that's why I tried to go with WSL in the first place. But Virtualbox seamless is a nice middle ground between the two OS and I don't have to worry about things that haven't been implemented in WSL.
- flukus 10y agoLinux gaming has been improving rapidly lately, in another year I doubt windows will be necessary.
- dingo_bat 10y agoBiggest overstatement. Linux gaming, though becoming more possible, is nowhere near gaming on windows. Forget game availability, even most GPUs are not properly supported on most Linuxes.
- flukus 10y ago> even most GPUs are not properly supported on most Linuxes This situation is rapidly changing too with ATI and intels OSS GPU drivers.
- 10y ago
- mee_too 10y agoI bet RMS will now ask people to start calling it GNU/Windows :)
- H4CK3RM4N 10y agoSadly, there's more GNU code in this than Linux code, so it's not entirely inaccurate.
- yjftsjthsd-h 10y agoThere should be literally 0 "Linux" code, so yes.
- bitwize 10y agohttps://mikegerwitz.com/2016/04/GNU-kWindows https://mikegerwitz.com/2016/04/GNU-kWindows
- dingo_bat 10y agoI guess that's accurate, since there are zero lines of the Linux kernel in WSL.
- nxc18 10y agoI really like the GNU/k* notation; it highlights the separation between the kernel and the operating system in a very clear way. In this case it would be entirely accurate; Windows is standing on its head to look like a Linux kernel and does a pretty convincing job. Unfortunately for projects related to WSL, which ultimately challenge some of the 'defaults' people expect, there is a tension between the name that is accurate and one that people will understand. For example, people are so tied to the notion that Ubuntu is a Linux distribution that calling it anything else would be confusing, despite the reality that Ubuntu is an operating system that just happens to have Linux as a kernel most of the time.
- Analemma_ 10y agoNo, it's "GNU\Windows" ;)
- floatboth 10y agoHeh, I'm using VcXsrv + PuTTY + a custom PowerShell script https://github.com/myfreeweb/xvmmgr https://github.com/myfreeweb/xvmmgr to quickly launch a terminal forwarded from a FreeBSD VirtualBox VM.
- TheRealDunkirk 10y agoThe worst of both worlds! The Windows kernel and the Linux UI! I kid; I kid. Looks fun.
- mtdewcmu 10y agoRight... You can make Windows 10 look like a unix workstation from 1995.
- kazinator 10y agoI.e. Windows 95, more or less.
- kuschku 10y agoKDE Plasma 5 is actually reasonably modern. http://i.imgur.com/XcnYxy0.png http://i.imgur.com/XcnYxy0.png
- erklik 10y agoelementaryOS ever more so. Although, it is a bit of a clone of MacOSX which may be a turn off for some but still is quite user friendly. I installed it for my family members ( not at all knowledgeable people in terms of computers etc ) and they all have gotten along with it very well.
- kuschku 10y agoKDE Plasma recently added a new unified theming system, and there is now a theme to make KDE Plasma look and work exactly like macOS with that (with menus in top bar, dock, etc) But yes, elementary does the "good defaults are impirtant" very well.
- swah 10y agoLooks almost nice, but feels like spacing and font size is wrong on some places. Maybe I'm just used to win10...
- int_handler 10y agoCool experiment, but holy Tour de France coding style Batman: https://github.com/NathanCastle/BootShellCredentialProvider/blob/master/BSCP/CredentialProvider/BSCredential.cpp#L334 https://github.com/NathanCastle/BootShellCredentialProvider/...
- taspeotis 10y agoSeems okay to me? RAII would make it tidier but the nesting is a simple way to handle cleaning up if you fail part-way through.
- partycoder 10y agoIn flowchart decision points, it's clearer to make "yes" co-linear and "no" orthogonal. Likewise I prefer to structure cyclomatic complexity like this by doing something like if not <condition 1> return else if not <condition 2> return <logic> Rather than if <condition1> if <condition2> if <condition 3> ...
- richardwhiuk 10y agoEarly returns here will require duplicated free() calls, which makes it hard to prevent leaks. This coding style is standard practice for Win32 API development.
- int_19h 10y agoThe more typical coding style for raw Win32 is to have a block of CloseHandle/Free/... block at the end of the function, and goto it for early exit. Usually with some helper macros to easily write "if it failed, goto cleanup" one-liners.
- richardwhiuk 10y agoYou can't have a single cleanup (because subsequent calls use memory/handles from prior - otherwise you'd have a function wrapper), so it ends up getting really nasty - at which point, the logic feels clearer (and easier to match alloc and free) if you have indented blocks. The change I'd make to the code would be to have a shorter indent block. HRESULT hr; hr = DoFoo(); if (!SUCCESS(hr)) { goto exit; } hr = DoBar(); if (!(SUCCESS(hr)) { goto cleanup_foo; } hr = DoBar(); if (!(SUCCESS(hr)) { goto cleanup_bar; } hr = DoBaz(); if (SUCCESS(hr)) { CleanupBaz(); } cleanup_bar: CleaupBar(); cleanup_foo: CleanupFoo(); exit: return hr;
- abtinf 10y agoI will surely look into this - it would be very helpful to run a proper tiling window manager like spectrwm/i3/dwm/xmonad under Windows.
- doggydogs94 10y agoI am impressed when someone can make a credential provider. I think Microsoft's documentation and samples are still for Vista.
- ge96 10y agoEdit: nvm I read this backwards Do you need a license of Windows 10? (Read the article) I think now it's hardware licensed in the case of a computer that was bought with Windows 10 on it. Then on re-installs you just get an iso of Windows 10, no key. So in this case if you didn't have Windows 10 to begin with...
- wereHamster 10y agoAm I the only one surprised that a project which is still under active development still uses sourceforge (https://sourceforge.net/projects/vcxsrv/ https://sourceforge.net/projects/vcxsrv/)? SF should be dead after it began hijacking projects and added adware to installers? https://arstechnica.com/information-technology/2015/05/sourceforge-grabs-gimp-for-windows-account-wraps-installer-in-bundle-pushing-adware/ https://arstechnica.com/information-technology/2015/05/sourc...
- jychang 10y agoYou're a year out of date. New ownership. https://www.reddit.com/r/sysadmin/comments/4n3e1s/the_state_of_sourceforge_since_its_acquisition_in/ https://www.reddit.com/r/sysadmin/comments/4n3e1s/the_state_...
- frozenport 10y agoDid you juat forgive github for the recent change to their TOS that bans GPL?! No, we should host everything on high uptime content agnostic platforms like S3. Or run our own infastructure but use a 3rd party service like GitLab for improved redundancy!
- baldfat 10y agoI think once the dust falls everyone will realize that GPL is fine. This github is lawyer speech for how they allow search results. TOS releases always are drama till people settle down and read what it actually says and its intent.
- lightedman 10y agoThis is almost as useful as Dragon Linux on Windows nearly 20 years ago.
- zaggynl 10y agoCool but appears to be broken, when starting the configurator for the first time, the registry keys don't exist and it fails silently. Issue here: https://github.com/NathanCastle/BootShellCredentialProvider/issues/1 https://github.com/NathanCastle/BootShellCredentialProvider/...
- 0xTJ 10y agoI just wish you could do it the other way around from WSL. (LSW I guess) Windows executable inside the Linux kernel.
- mmjaa 10y agoCTRL-F: embrace <not found> I disappoint! Why you no understand, this is the same ol' Microsoft? (really I pressed Cmd-F)