Microsoft en Canonical brengen Bash naar Windows

Microsoft en Canonical maken Bash een standaardonderdeel van Windows 10. De twee bedrijven hebben gewerkt aan een Linux-subsysteem dat op zijn beurt op Windows-libraries draait, zo maakt de Windows-maker bekend op de ontwikkelaarsbijeenkomst Build.

Bash WindowsBash is de shell van vrijwel alle Linux-distributies en OS X, waar Windows zijn eigen PowerShell had. Gevolg van de stap is dat ontwikkelaars nu bijvoorbeeld ook emacs op Windows 10 kunnen gebruiken om hun code te bewerken, of tools als awk, grep en vi. Door de samenwerking met Canonical kunnen ontwikkelaars verder meerdere Ubuntu-binaries op Windows benaderen.

Ontwikkelaars kunnen Bash via Windows Store binnenhalen. Het is onderdeel van de Anniversary Update van Windows 10 deze zomer. Er zijn al langer tools die Bash mogelijk maken op Windows, zoals win-bash, nt-bash en Cygwin.

Windows Build 2016 Bash

Door Olaf van Miltenburg

Nieuwscoördinator

30-03-2016 • 19:08

206

Reacties (206)

206
196
108
8
0
49
Wijzig sortering
Wat extra achtergrond; Microsoft heeft hiervoor een aantal extra componenten toegevoegd; lxcore.sys, lxss.sys. Deze staan voor "Linux core" en "Linux subsystem". Eerder heeft Microsoft aan Windows Mobile gewerkt om hier Android apps op te laten draaien. Dit project had de naam "Astoria". De Linux kernel APIs hebben ze om die reden naar Windows (Mobile) overgebracht. "Astoria" heeft echter nooit het levenslicht mogen zien. De nieuwe naam is nu "Windows Subsystem for Linux" (WSL). Volgens Microsoft is het nog maar het tipje van de sluier van wat er nog meer gaat aankomen. Ik ben benieuwd!
Misschien wel heel erg speculeren, maar zou het misschien zo kunnen zijn dat Windows uiteindelijk ook een Linux/UNIX distributie zal gaan worden? Met de richting die ze opgaan zou het voor ze erg makkelijk worden, ze zijn veel software pakketten open-source aan het maken. Het zou dus kunnen zijn dat ze windows specifieke zaken naar linux omzetten, denk bijvoorbeeld aan .NET (mono, maar dan van Microsoft zelf), de desktop window manager, etc.
Ik geloof er niets van, meer compatibiliteit met Linux is één ding maar je hele platform open gooien (denk ook aan GNU/gpl/whatever) is heel wat anders. Je bent binnen no time al je IP kwijt en je USP's verdwijnen als sneeuw voor de zon.

Mooie omdraaiing trouwens: Mono maar dan van MS zelf :o
Fout. OS is slechts een onderdeel van het hele platform. Gezien de verregaande samenwerking met Red Hat zie ik 2 scenario's:

1. Windows verdwijnt (minst waarschijnlijke)
2. Windows wordt een Linux distributie

In beide gevallen gaat MS zich puur op het applicatieve richten. Eerst .Net, nu SQL. Dan AD en tot slot Exchange. Die je dan allemaal op een Red Hat of Winux kan draaien, maar die wel betalend blijven (en daar is niks mis mee).
Ik snap niet helemaal waarom half Tweakers lijkt te denken dat dit stappen zijn naar het overstappen van NT naar Linux. Dat gaat namelijk niet gebeuren.

MS heeft ook nogal een wat andere visie naar hoe een kernel en OS in elkaar moet zitten tegenover de Linux Community.

Tevens lijk je te vergeten dat wij consumenten eerder bijzaak zijn voor MS dan de focus hebben, zakelijk is vooralsnog verantwoordelijk voor het overgrote deel van hun inkomen en omzet. Naast dat MS de NT kernel zelf gebruikt voor diensten als Azure (De _enige_ windows super computer :P) en veel van hun andere hardware. Hoe dan ook de development van NT zal windeideren blijven leggen, opgeven zullen ze dat niet.

Ze gaan niet hun development krachten opgeven om aan de grillen van anderen te moeten voldoen in het geval met Linux (MS is nogal eigenwijs). Daarnaast is hun kennis uit het ontwikkelen van OSen en kernels nogal belangrijk voor ons allemaal en vooral MS zelf.

Mocht er een Kernel NT gaan vervangen zal dit eerder door Midori gebeuren.

[Reactie gewijzigd door batjes op 23 juli 2024 06:57]

Dat je voor deze reactie een +2 krijgt is te gek voor woorden. Dat consumenten bijzaak zijn, klopt uiteraard. Laat Linux nu net ook in de zakelijke wereld véél belangrijker zijn dan in de consumentenwereld.
97% van de Fortune 500 gebruikt Red Hat producten. 50% van het financiële verkeer ter wereld verloopt over Red Hat systemen om maar 2 getallen te roepen.
MS AzureStack is... juist ja, Red Hat OpenStack. SQL komt naar Linux, net als .Net. Zet je oogkleppen dus eens even af. MS van nu is niet meer het Linux-hatende MS van onder Ballmer.
En Azure een supercomputer? Iets met klok en klepel...

[Reactie gewijzigd door MtC op 23 juli 2024 06:57]

In de zakelijke wereld is Linux lang niet zo groot als Microsoft tenzij je naar webhosting oid gaat kijken (en zelfs daar is het ergens rond de 50/50 dacht ik waar dat in 2000 ergens nog 90-10 voor Linux was).

Een +2 waarschijnlijk omdat ik een zooi posts voorbij gescrolled ben waarin gesuggereerd wordt dat MS er aan zit te denken hun NT kernel te vervangen. Deze discussie is intern in MS ook al een aantal keer langsgekomen en het schijnt dat MS al eens serieus gekeken heeft of ze de kernel konden vervangen met Linux maar dat ze tegen nogal wat problemen aan lopen (voornamelijk de filebased aanpak van Linux) naast het feit dat MS graag meuk in een kernel stopt waar men bij Linux zegt "Dat hoort niet in de kernel"

Azure is 1 enkel systeem wat als het ware draait op 1 enkel OS (kernel). De NT kernel. Ik meen me eens een artikel gelezen te hebben dat vorig jaar ergens (of eind 2014) de kracht van Azure werd geschat op een #5 positie van de wereldwijde rank voor super computers, dat schuift nogal maar MS zit natuurlijk ook niet stil. Ik hou me er niet zo mee bezig maar het was zo ver ik weet de enige supercomputer van waarde wat op NT draaide.

Ik hoef mijn oogkleppen niet af te zetten om te zien dat MS geleerd heeft van het blind staren op hun eigen platform.
Nee hoor. Of dacht je dat de nieuwe generatie (Netflix, Google, Spotify, Facebook Etc.) op Windows draait? Zelfs bij banken in Nederland zoals de ING en Rabobank is Linux het platform voor nieuwe ontwikkelingen.

En uiteindelijk heeft Microsoft de keuze, of ze doen wel mee met de IoT of niet.

Als Microsoft mee wil doen, moet de kernel open. Dat kan niet anders. Dus of maken ze de nt kernel open source of ze gaan de Linux kernel gebruiken.

Voor mij staat als een paal boven water dat binnen 2 jaar Microsoft de handel open gooit.
Of het open source wordt weet ik niet zeker maar open absoluut. Anders missen ze nog meer de boot.

En dat gaat hun helemaal geen euro minder aan omzet schelen. Er is werkelijk geen enkel bedrijf op deze wereld die geen ondersteuning zou kopen bij Microsoft of hun partners. Consumenten hebben geen keuze, want banken geven je geen geld terug bij "cybercrime" als je geen officieel ondersteunde Windows pc hebt met een officieel ondersteunde virus scanner.

Dus het gaat geen euro of dollar schelen. Software IP is echt waardeloos. Dat weten ze tegenwoordig zelf op wall street (denk aan Elon Musk en diverse venture capitalists die dat roepen)

Sterker nog, Microsoft zou overnight zo gigantisch veel goodwill creëren in de developers wereld dat dat voordeel alleen al hun de 21ste eeuw in trekt.
Netflix, Google, Spotify en Facebook zijn samen verantwoordelijk voor de zakelijke markt?

Ze doen al een poging mee te doen met de IOT met Windows 10 :/ Daar hoeft NT niet voor geopensourced te worden (GPL gaat sowieso nooit gebeuren). Jij bent in de veronderstelling dat elk bedrijf zin heeft het OS zelf te onderhouden, de bedrijven die jij noemt zijn eerder uitzonderingen dan de regel. Het is doorgaans ook goedkoper om voor Windows te kiezen :) Zelf een OS onderhouden is vrij kostbaar.

Banken kunnen wel met Linux bezig zijn, de werkstations en zelfs pinautomaten in de muur draaien vooralsnog nog voornamelijk Windows, daar zijn er nogal wat meer van dan servers. En als je denkt dat ze geen stapel Windows servers hebben liggen.... Zakelijk zit ongeveer 3/4de bij Windows only en dat zal niet snel veranderen, en mocht je eens bij Nederlandse bedrijven naar binnen lopen ligt het waarschijnlijk nog eens stuk hoger (aantal Linux only omgevingen zijn bijna op 1 hand te tellen).

Vreemd dat banken Windows eisen, mijn eigen bank (ING) is ook tevreden als je Ubuntu gebruikt (en promoten dit zelfs een beetje)

Als je denkt dat Software IP geheel onbelangrijk is dan zit je volgens mij te diep in de Freenode wereld. Open Source is geen heilige graal.

NT gaat niet open source en Microsoft gaat niet switchen naar de Linux kernel, vraag me echt af waarom dit zo gedacht wordt, omdat MS meer aan Open Source doet? Alsof MS nooit wat weggaf. Technologie en kennis "teruggeven" heeft MS altijd al gedaan. Het is de laatste jaren alleen wat publieker met meer gehamer op het Open Source (voor mensen zoals jou).

Dat MS Bash implementeerd is om het nog moeilijker voor Linux te maken en mensen naar Windows over te halen, dat jij (en anderen) dit opvatten alsof Microsoft alles Open Source gaat gooien is vrij komisch :) MS is met een nieuwe poging bezig Linux de hoek in te drukken :/ 10+ jaar geleden was Microsoft 90%+ van al het computer gebruik, zowel zakelijk als consument. Vandaag de dag is dit door smartphones en tablets een heel stuk lager (<75%) en het zakt elke dag verder weg. Microsoft wil hun positie sterk stellen en de Tweakers linux fanbase slikt het als zoete koek.
Zolang je Azure een supercomputer blijft noemen, neem ik je niet serieus. Azure is een cloud platform.
.net is al voor een deel open source dus zal ongetwijfeld op linux gaan draaien (of draait al).
Sql server gaat ook op linux draaien.

Het wordt steeds minder relevant wat voor os je draait.

Wel moet ik zeggen dat powershell toch wel wat meer biedt dan de consoles van de *nixen. Ik vraag me af wat ik met bash moet. Maar cool is het zeker , omdat het kan :)
Het wordt steeds minder relevant wat voor os je draait.
...wat natuurlijk een regelrechte bedreiging voor Microsoft is.

Overigens is dit een beweging die al jaren gaande is. Toen MS begon met te investeren in de XBox vond ik dat meteen een hele logische keus, want games behoren tot de weinige software waarvoor je en weinig alternatieven hebt en die vrijwel exclusief op Windows draaien. Er zijn hordes games die exclusief voor Windows zijn (consoles even buiten beschouwing latend). Als gamer zit je dus eigenlijk aan Windows vast.

Windows zou een superset van Linux kunnen worden; dat je dus alle Linux apps op Windows kunt draaien. Andersom probeert men al heel lang (Wine) maar is een stuk moeilijker.
Wel moet ik zeggen dat powershell toch wel wat meer biedt dan de consoles van de *nixen. Ik vraag me af wat ik met bash moet.
Ik werk zelf veel met Node JS en NPM. Javascript en in principe platform onafhankelijk, maar wat je dus wel heel veel ziet is dat ontwikkelaars wat build scripts e.d. hebben. Vaak .sh files ontworpen om in Bash te draaien. Niet zo handig als je op Windows zit. Cygwin voelt wat mij betreft een beetje te hackerig aan allemaal dus op zich verwelkom ik een mooie geïntegreerde optie met de 'seal of approval' van MS er op wel. Altijd afwachten hoe het in de praktijk werkt natuurlijk.
Javascript en in principe platform onafhankelijk
Helemaal mee eens, maar als aanvulling, er worden door mijn collegae regelmatig binary packages in onze build ingebracht, dus dan is JS/NPM aan de bovenkant wel platformonafhankelijk, maar als Windowsgebruiker kom ik nog steeds in de problemen. Het is allemaal wel te compileren, maar dan heb ik als Java/open source gebruiker ineens .Net runtime en tools nodig die normaal helemaal niet in onze ontwikkelstack thuishoren.
De .NET runtime zit tegenwoordig in Windows dus het zou niet zo'n probleem moeten zijn.
Bedreiging?
Nee. Microsoft richt zich meer en meer op diensten.
Os wordt ook voor Microsoft minder belangrijk.
natuurlijk een regelrechte bedreiging voor Microsoft is.
Op de lange duur niet echt. Tegen die tijd is Windows allang open source, en is Microsoft volledig over naar hun nieuwe business model.

Ik ben er erg blij mee, met Bash voor Windows. Ook handig voor scripten. Maar ik gebruik voor CLI tegenwoordig Fish.
Na een discussie met een vriend van me die in dit wereldje gewerkt heeft zijn wij tot een soortgelijke conclusie gekomen. Met het aanbieden van Bash op Windows hoopt Microsoft waarschijnlijk de huidige generatie webontwikkelaars binnen te halen, een groep die de afgelopen jaren flink is gegroeid. Dit zijn gebruikers die veelal:
  • tools gebruiken die alleen maar goed werken in een Bash omgeving (node.js, npm, git, etc.)
  • geen Linux kunnen of willen installeren, omdat ze niet genoeg van computers weten ofwel het ze niet interesseert
  • een hele hoop van hun dagelijkse werkzaamheden willen scripten/automatiseren
  • een MacBook gebruiken omdat OSX standaard een Bash shell mee levert en de andere tools er makkelijk op te installeren zijn
PowerShell is misschien een goede CLI voor Windows admins, maar web developers hebben er niets aan want veel van de scripts die ze gebruiken komen rechtstreeks van het internet en zijn geschreven voor Bash.
ik weet niet, hoe je hier nu precies bij komt, maar bash is echt een belachelijk veel gebruikte taal, en hoewel MS met powershell enorme stappen heeft gemaakt is bash toch nog echt wel factor meer gebruikt.

ik denk dat jouw opmerking 'wat moet ik met bash' meer komt uit jouw onwetendheid en onkunde met linux-based omgevingen, en het feit dat powershell 'ondanks dat ze veel geleend heeft van de manier van werken onder oa bash, maar dat ze toch redelijk trou is gebleven aan de 'windows manier van denken' iets dat voor sommigen mensen volstrek logisch 'aanvoelt' maar dat niet per definitie hoeft te zijn.

onder het mom van cross-compatibillity kan ik hier nog wel soep van maken, maar ik vraag me toch af in hoeverre dit echt door de windows-wereld geadopteerd zal gaan worden.
Wat zou kunnen, is het referentie kader van dat bash vele GNU tools gebruikt (ls, sed, gawk, cut, xargs, sort, nl etc) die Windows standaard niet heeft, of zeer beperkt.

Daarom had volgens mij MSFT de hele UNIX-commando's en utilities in Powershell zelf "geintegreerd", gelijkend op een uitgebreide BusyBox.

Bijv. streaming text verwerken (meeste spreadaheet operaties in csv) kan wel in Powershell maar (bijna) niet in Bash, omdat in Bash geen 'awk' geïntegreerd zit. Unix tools doen immers slechts 1 ding en dat goed, dus Bash roept gewoon awk aan ipv eigen implementatie, veel modulairder dan het monolitsche Powershell.

Zelf heb ik Cygwin Portable geinstalleerd op mijn werk, ik heb geen tijd / zin om Powershell te leren en Cygwin is toch gratis. Nu kan ik anderen geen bash-scriptjes van mij laten gebruiken, straks hopelijk wel; kunnen we eindelijk afscheid nemen van het inferieure VBS / DOS Batch. En de Powershell-scriptjes van de ICT afdeling draaien wel gewoon bij mij dus iedereen kiest wat hij / zij het makkelijkste vind zonder religieuze oorlog, lijkt me win-win.

[Reactie gewijzigd door kidde op 23 juli 2024 06:57]

Anoniem: 28912 @i-chat1 april 2016 08:18
Met bash kan je in theorie meer. Aangezien veel third-party programma's ook met parameters en met stdin, stdout en stderr werken, kan je dat weer afvangen met bash en het verder door automatiseren..

Met Powershell gaat dit gewoon niet. Voor Windows beheer dingen kan je van alles doen, doordat Microsoft de CLI modules mee leverd voor zijn eigen programmatuur.
Third party is vaak helemaal niet CLI geörienteerd binnen Windows, laat staan dat het geleverd wordt met Powershell modules.

Door NT cmd, PS en VBS te combineren kan je natuurlijk wel een eind komen, maar alles is gewoon lastiger en moeilijker. En soms gaat het gewoon niet en dan moet je alsnog een third party tool kopen. Ook werkt het allemaal altijd goed en makkelijk met beheerder rechten, maar als standaardgebruiker komt het niet altijd goed uit de verf.
Ik heb geen ervaring met PowerShell, maar betwijfel dat het krachtiger is dan een *nix shell, daarmee kun je alles namelijk ;)

Verder een leuke ontwikkeling dat Microsoft richting het Linux landschap beweegt, hopelijk volgen er meer ontwikkelaars met meer crosscompatibliteit tot gevolg.
Met powershell kan je ook alles ;)
Ongetwijfeld, maar je hebt alleen een gigabyte werkgeheugen nodig :-)
Om eerlijk te zijn zie ik de meerwaarde hier niet van. Je geeft zelf al aan alles te kunnen met PowerShell en als je in een Windows wereld leeft dan geloof ik ook zeker dat dat waar is. Dus wat levert het een Windows admin op om Bash (en andere GNU command line tools) op Windows Server te kunnen gebruiken?
Omdat bash veel makkelijker is?
Omdat er veel meer documentatie over bash is dan over powershell?
Omdat er mega veel tutorials zijn om te scripten in bash?
Omdat iedereen in de linux wereld elkaar wil helpen?

Slechts een paar voorbeelden
Anoniem: 28912 @ctrl-tab31 maart 2016 08:25
Ik kan als gebruiker niet eens Powershell gebruiken, omdat de modules niet geinstalleerd staan.

Grijp ik toch maar weer terug naar VBS als ik echt iets voor elkaar wil krijgen. Powershell is wel leuk, maar met Bash kan je met standaard gebruikersrechten al gigantisch veel en met powershell niks.

Of ben je er zo een die iedereen root en admin rechten geeft op je netwerk? Nee, Powershell is leuk voor beheerders, maar voor de rest is het niet echt nuttig. Daarnaast is het natuurlijk 20 jaar te laat.

Die Linux admins zijn 20 jaar geleden al gevlucht toen alles nog met lelijke GUIs in Windows gedaan moest worden.
Anoniem: 28912 @mr01z031 maart 2016 09:02
Ik hoop toch echt dat je qua IT alleen iets doet in de hobby sfeer en niets professioneels. Nou ja, verkoper in een computerwinkel hoogstenst.

Voor core os en een set aan basis utilities is 1 gigabyte bizar veel geheugen en dat is in 2020 nog zo.
Waarom meteen in de offensief, ik bedoelde dit toch duidelijk als een grap, jammer.
Anoniem: 28912 @mr01z020 april 2016 09:54
Ja, we zien dat het als grap bedoeld is door de clown smiley.

Maar het is een hele slechte grap. Optimalisatie is een ondergeschoven kindje de laatste 2 decennia en we zouden zo veel meer kunnen met de hardware van vandaag als alles niet zo slordig en onhandig in elkaar zou zitten.
1gb is idd behoorlijke veel op een server, ik noem ie ven wat dingen,

1gb is wat je minimaal nodig hebt om 1TB aan data te managen op je zfs filesystem, 1gb is wat je nodig voor een beetje een webapp. 1tb is wat je nodig hebt voor IPS management op web-toegankelijke servers. kortom, niet iets om zomaar over de balk te smijten. want op genoeg systemen is het 8 tot 10% van de totale hoeveelheid ram.
Anoniem: 195813 @eXtink31 maart 2016 09:42
Daar heb ik ook al maanden over zitten bomen.
MS SQL naar Linux Port, .net naar open source, en nu deze stap.

Zal me niks verbazen als MS idd over gaat naar een Linux/Unix based OS in de toekomst.

Windows 10 is de laatste Windows versie die ooit zal uitkomen, zullen we blijven patchen ed. hebben ze gezegt,
Maar wie zegt dat ze stoppen met OSen uit brengen onder een andere naam... Winux...??

Unix/Linux based Windows compatable OS. code gebaseerd op een new generation BASH/.NET/MS SQL etc.... We zullen zien...
Denk niet dat ze hun NT kernel zullen droppen, en waarom zouden ze? Die kernel is nou juist een vrij net en solide onderdeel van Windows. (Dat krijg bijna gratis je als je een klein team een kernel laat maken, en ook alleen dat)
desktop window manager, bestaat al heel lang, en het is net zo als op elk ander besturing systeem een window manager, die het dus mogelijk maakt om vensters te tekenen op het scherm met een bureaublad, heb je een GUI met windows dan heb je een window manager.
Yup. Klink als OS level virtualisation. Met Linux als uitgangspunt kan je dan fijn Docker of TurnkeyLinux containers de lucht in schieten. In veel gevallen dus geen VM meer nodig. Scheelt een hoop resources. Fraai hoor. Onder OS X draai in nog een VM met Proxmox om containers te draaien. Daar zou dit ook wel mooi zijn. Zou voor Apple véél minder inspanning hoeven vergen om te implementeren.
Ja, het verschil is inderdaad dat OS X al een echt UNIX besturingssysteem is. Er zouden veel minder System calls "vertaald" moeten worden. FreeBSD heeft zo'n compatibility layer al voor Linux binaries.

Maar aangezien je heel veel "linux" programma's gewoon voor OS X kunt compileren denk ik niet dat Apple er erg in geïnteresseerd is.

En ik vraag me af in hoeverre de containers die je in een VM draait zo afhankelijk zijn van een linux omgeving dat ze niet in OS X werken. Is dat heel gebruikelijk in die wereld? En heeft Docker niet gewoon een Linux VM ingebouwd die je zou kunnen gebruiken?
Het blijft lastig, je blijft toch zitten met een extra laag en die abstractie zit in de praktijk toch vaak net even in de weg, of het nu gaat om performance of om hoe makkelijk het is voor alle ontwikkelaars in het team om precies te snappen hoe dat Docker-ding nu precies werkt. Wij zitten er momenteel midden in, en de collegae die op native Linux-machines werken hebben duidelijk een voordeel.
Ik begrijp dat een extra laag onhandig is, maar ik vraag me af of die voor de meeste software wel nodig is. Is het allemaal zo afhankelijk van de "standaard" Linux omgeving? Met andere woorden, welke dependencies draaien niet onder OS X?
Linux applicaties laten zich in de regel makkelijk naar OSX migreren. Migreren is wellicht zelfs een te groot woord.
Kant en klare containers direct op draaien, dat zou handig zijn. En daarvoor zou Apple slechts een keline inspanning voor hoeven leveren. Nu moet je met een omslachtige Docker VM onder VirtualBox werken. Of voor TurnKeyLinux met ProxMox.
Waarom HW virtualiseren en er een OS tussen schuiven plus resource allocaties segmenteren (oude Windows manier) als het met OS virtualisatie sneller en handiger zou zijn.

Misschien snap ik je niet.
Ik bedoelde de containers. Die zijn nu gestandaardiseerd op Linux, en Linux heeft natuurlijk software en libraries die onder OS X niet aanwezig zijn. Ik vroeg me af in hoeverre de containers daar afhankelijk van zijn.

Maar ik realiseerde me later pas dat het echte probleem zit in de voor een bepaalde kernel gecompileerde binaries. Nu vraag ik me eigenlijk af of ontwikkelaars een container met twee (of meer) sets binaries zouden kunnen leveren zodat dezelfde container ook onder OS X gewoon draait. Maar dat is zeker teveel werk voor de ontwikkelaar, toch? Het zou natuurlijk het mooiste zijn als XNU de Linux kernel kon emuleren.
Het is simpler. Een container can een Linux base OS zijn zonder een specifieke applicatie. Onder bv Proxmox kan je, op het zelfde Debian gebaseerde system van Proxmox, Debian, CentOS en Ubuntu containers draaien. Van ieder zijn verschillende versies beschikbaar. De libraries van al die OSen gaan dus mee in de container. Een container met een specifieke applicatie installeer je dus op een Linux van een specifieke smaak. De smaak zit in de container samen met de app. Zelf wilde ik nu eens eindelijk vaart maken van het standaard denken in Ubuntu naar Red Hat. Simpelweg een CentOS container de lucht in geschoten. Staat er in een poep en een scheet.
Voor jou of anderen die dit lezen om te klooien: Draai proxmox in een VirtualBox en ga eens lekker aan de slag met TurnKeyLinux. Vele tientallen applicances zeer snel in de lucht om mee te pielen. Of eens een andere Linux base zoals ik hierboven noem.
Volgens ubuntu is het praktisch een omgedraaide wine. Je kan linux binaries draaien op windows 10


Bron:
https://insights.ubuntu.c...7601.720915549.1456253230
Van wat ik begreep is dat Astoria nooit succesvol is geworden omdat in veel Android apps de google libs zitten voor bijvoorbeeld in-app purchases in de play store etc. De Android apps zonder dependencies op Google (play) zouden wel eenvoudig te draaien zijn. Ik hoorde zelfs iets dat een apk rename naar apkx al voldoende was om te draaien op windows 10 (mobile)
Anoniem: 457607 30 maart 2016 21:02
Het is speculatie, maar ik kan me een oorzaak bedenken. Er is een nieuwe generatie developers die met tools zoals node, npm, git, bower, etc werken, vrijwel allemaal op Macs. Deze groep is groter dan je denkt en zet de wereld van web developers op zijn kop.

Sommige van deze tools zijn werkend te krijgen op Windows, maar dat is inferieur. Oftewel, Microsoft is developers aan het lekken, en wil ze terug, dat is mijn theorie.
Dat valt ook te ondersteunen.

Er is laatst onder 56,033 ontwikkelaars vanuit StackOverflow een poll gehouden: 48% van de ontwikkelaars gebruikt Mac OS of Linux.
Dit is exact mijn standpunt. Npm, git, ruby (native spul) werkt allemaal zo ontzettend matig op Windows! Bovendien installeren veel grafische git gui's op Windows een eigen git (met eigen msysgit of alternatief) toe waardoor je er niet altijd van uit kunt gaan dat juist die git in je Path aanwezig is. Natuurlijk kun je weer een losse git installeren en de gui die git laten gebruiken, maar bijvoorbeeld de github cliënt heeft deze optie weer niet!

Oftewel finally! Al is het een verkapte container, het zou een flinke stap in de goede richting zijn voor developers. Of ik voor development daadwerkelijk op Windows over zou stappen is dan natuurlijk een tweede vraag... Tbh raak ik mijn Windows laptop nauwelijks meer aan sinds ik met OS X werk 8)7
Exact mijn eigen ervaring! Alle huidige tools werken standaard in UNIX omgeving maar vereisen eerst een hele bak handmatige configuratie om binnen Windows te draaien. Eigenlijk ben je soms bijna verplicht dual boot of VM te draaien om echt alles te kunnen ondersteunen.

De nieuwe richting van Microsoft kan hier wel eens een oplossing voor dit probleem gaan geven hoewel ik mij afvraag of het ook daadwerkelijke alle features zal/kan ondersteunen zonder dat je half Unix gaat poorten naar Windows.
Je overschat nu zelf de nieuwe generatie developers. Hierboven haalt iemand al een van de polls aan (waarbij je in de lijn van jouw argumentatie ook mag aannemen dat de response uit de moderne developers het grootst is, de 'ouwerwetse' halen immers hun informatie niet van een social community).

Tevens is er ook voor de nieuwe generaties ook voornamelijk werk in de grote bedrijven waar interne IT vaak achterloopt en je dwingt al dan niet via regels of aangekochte hardware om met bepaalde pakketten te werken. Git is allang geen linux feestje meer voor developers, iedere IDE kent meerdere Git plugins.
Node.js is nooit platform specifiek geweest...

Last but not least, sysadmins zijn niet per se developers en vice versa.
Anoniem: 457607 @CEx31 maart 2016 22:23
Ik heb geen getal gehangen aan de nieuwe generatie, dus ik weet niet hoe ik het overschat.

Je hebt zeker gelijk dat er een grote groep is van de oude garde en/of mensen die helemaal geen keuze hebben. Tegelijkertijd staat er een Mac-based generatie op. Beiden zijn waar, en sluiten elkaar niet uit.
Ik denk dat je gelijk hebt!

Ik stond paf toen ik in die Stackoverflow-enquete las, dat naar verwachting volgend jaar meer mensen developpen op Mac dan op Windows - Da's echt ongelofelijk, wat een omwenteling!

Welliswaar zie ik om me heen bijna alleen maar Mac's (freelancers, ondernemers en kleine bedrijven), ik had altijd aangenomen dat er waarschijnlijk in grote bedrijven enorme hoeveelheden ontwikkelaars op Windows werken. En die zijn er ook nog wel, maar binnenkort zijn ze naar verwachting niet meer in de meerderheid.

Plus wat anderen al zeiden: Veel soorten ontwikkelwerk is écht een Unix-feestje. Ik ben net zelf aan de slag geweest met de Google AdWords-API, en daar viel het me ook op dat alles Bash-georiënteerd is en er amper over Windows wordt gesproken. En ja, het kán wel op Windows, maar da's een hoop ellende.

Bizar idee, dat je binnenkort op Windows vim en apt-get kunt gebruiken!

[Reactie gewijzigd door strompf op 23 juli 2024 06:57]

Anoniem: 457607 @strompf31 maart 2016 22:21
Het is nog steeds zo dat bij grote, traditionele bedrijven Windows vaak de norm is, als soort van standaardisatie. Echter, we weten dat bedrijven steeds meer outsourcen. Enorme groepen (tientallen danwel honderden) interne ontwikkelaars is een enorme uitzondering aan het worden.

Dus is het vaak een mix, of alleen freelancers, en die brengen inderdaad in grote getalen Macs mee.
Als ik die foto zie dan lijkt het mij alsof ze een virtuele linux gaan draaien waarin je lokale harde schijven beschikbaar zijn onder /mnt . Als men het zo zou doen dan zie ik eigenlijk amper meerwaarde aan deze oplossing. Dat kan je vandaag al opzetten met een vm in Hyper-v, Virtualbox of VMWare.
Het is geen VM... Technisch gezien is het een verkapte vorm van een wine implementatie.

Als men kijkt onder de /users/xxxx/AppData/Local/x zal men een verborgen folder vinden. In die folder staat gans de binaries dat je normaal zou vinden onder een Linux distributie BEHALVE de Linux kernel.

Zodra je de bash aanroept, zal de lxcore.sys en lxss.sys windows drivers, automatisch all de functie calls dat normaal naar een Linux Kernel zouden gaan, vertalen naar de Windows Kernel.

Je kan het een reverse Wine project noemen. Waarbij Wine probeerde de DirectX calls te vertalen naar OpenGL calls om games enz te laten werken onder Linux, doet MS nu het omgekeerde. Men vertaald de Linux kernel calls naar de Windows Kernel calls.

Het gevolg is dat de "bash" niet eens ziet dat het op Windows draait, maar wel bijna 99.9% van de performance behaald. Als je ooit onder Linux gewerkt hebt met OpenVZ containers, dan is het een beetje gelijkaardig. De OpenVZ containers gebruiken de host Kernel ( zonder vertaling ) maar kan dan wel iedere Linux distributie draaien.

Een VM zal de OS dat je probeert te draaien zijn kernel draaien, en dan die kernel proberen te doen denken dat het op een barebone hardware draait. Men "emuleert" gans de hardware layer ( met enorme performance verlies ).

Op het system uit te drukken:

VM: Volledige systeem emulatie vanuit een hardware standpunt. Kan ieder OS draaien wat je wilt.

OpenVZ / Docker: Containers dat draaien op de host zijn kernel. Kan iedere Linux OS draaien dat gebruik maakt van een Linux Kernel. Maar je kan geen Windows / OSX draaien want deze hebben hun eigen kernel / abstract laag.

Dit zit tussen beide. Er is een kleine laag waarbij men dus de Linux Kernel calls onderschept & vertaald naar de Windows Kernel. Maar men "emuleert" niet gans de omgeving. Wat je ziet onder dit, is de echte hardware. Men zal hier en daar beperkte performance verlies hebben maar omdat men de hardware direct aanspreekt buiten die vertaling, is die performance bijna bare-metal.

-----------------

Beste info vind je hier:

https://channel9.msdn.com...6/C906?platform=hootsuite

Wat is het nut hiervan?

* Native "Linux" ( zonder de kernel ) omgeving onder Windows...

Beeld je in: Ipv dat je altijd moet werken met VirtualBox of andere virtualisatie toestanden, of een remote server om spullen te ontwikkelen, kan je nu gewoon apache, php, enz draaien onder deze native oplossing. Wat je dus ontwikkeld onder deze setup, zal 100% dezelfde zijn alsof je het onder virtualisatie of een remote server ontwikkeld zou hebben.

Ja: Je kan ook zaken zoals Apache/php installeren onder Windows direct maar vaak loop je later in problemen als je die zelfde code probeert te deployen op een Linux Server.

* Je hebt directe file access vanuit deze Bash omgeving naar je Windows file systeem. Laten we eerlijk zijn, een beetje Linux bash gebruiker kan enorm leuke zaken uithalen met find, grep, xarg, enz. Maar de beste kicker is: JE HEBT DIRECTE FILE ACCESS!

Als je draait onder Virtualbox is het altijd een halve ramp om toegang te krijgen tot het file systeem van je host of omgekeerd van je VM. Vaak zit je met shared netwerk folders te werken of andere mapping toestanden waar je een halve dag zit op te vloeken.

* Je hebt directe toegang tot Windows Netwerk vanuit de Bash omgeving.

Geen toestanden meer van Bridge netwerk of andere zaken onder Virtualbox. Je draait je Apache op poort 8081 en voila. Geen configuratie of uitzoeken waarom kan ik x ip niet accessen van men virtualisatie ( virtualbox... ).

* ... Kan nog lang verder gaan maar de gevolgen zijn vrij interessant. Laten we eerlijk zijn. De meeste van ons draaien linux omdat we graag de volwassen bash omgeving hebben, omdat het gewoon interessanter is om in te ontwikkelen ( zelfde ontwikkeling omgeving <=> deployment omgeving ).

------

De grote vraag zal worden, wat kan je nog meer? Kan je meerdere omgevingen draaien in de toekomst ( Ubuntu container 1, Ubuntu container 2, Debian, ... )? Aangezien de opbouw in de directory structuur lijkt dit een mogelijkheid.

Er zijn nog veel vragen maar dit is echt een feature dat Windows 10 eindelijk de moeite waard maakt ( vanuit mijn ogen als ontwikkelaar ) om Windows 7 te vervangen. Je moet jezelf afvragen ... waarom heeft het zo lang geduurd eer men op dit idee kwam.
Volgens de keynote lijkt het echt te gaan om een subsysteem (wat het ook mag betekenen), dus geen virtualisatie; gewoon pure binaries die ook op Windows kunnen runnen. Wat het dus sneller maakt dan Hyper-V/VirtualBox/VMWare.
Windows (eerst NT, later 'gewoon' Windows) heeft van oudsher al ondersteuning gehad voor verschillende subsystems, d.w.z. dat je direkt executables van bepaalde andere operating systems kunt draaien. Zie https://en.wikipedia.org/...e_of_Windows_NT#User_mode voor een overzicht. In eerdere versies van Windows zaten bijvoorbeeld OS/2 en POSIX subsystems. En eigenlijk draaien wat je normaliter Windows applicaties noemt onder het Win32 subsystem. (De enige "native" NT applicaties zijn een aantal systeemprogramma's, zoals csrss.exe, en het welbekende chkdsk.exe, die je af en toe mag begroeten als de machine gecrasht is. :) )

Wat men nu dus heeft gedaan is een nieuw subsystem toevoegen, dat de Linux kernel API implementeert, en waarschijnlijk ook ondersteuning biedt voor ELF, het executable format dat Linux gebruikt.
Volgens de keynote lijkt het echt te gaan om een subsysteem (wat het ook mag betekenen), dus geen virtualisatie; gewoon pure binaries die ook op Windows kunnen runnen. Wat het dus sneller maakt dan Hyper-V/VirtualBox/VMWare.
Dus zoals Cygwin, waarin je ook als mounts je Windows drive letters beschikbaar hebt (bijvoorbeeld /cygdrive/c/ als C:\ ).

Bash is leuk, maar de vraag is hoe het gesteld is met de meestvoorkomende Linux tools die geen onderdeel zijn van Bash maar die wel vaak door Bash scripts aangeroepen worden. Als die niet beschikbaar zijn, dan blijft het een ietwat kreupele implementatie.

[Reactie gewijzigd door The Zep Man op 23 juli 2024 06:57]

Scott Hanselman claimt dat het meer dan alleen Bash is:
This is a real native Bash Linux binary running on Windows itself. It's fast and lightweight and it's the real binaries. This is an genuine Ubuntu image on top of Windows with all the Linux tools I use like awk, sed, grep, vi, etc. It's fast and it's lightweight. The binaries are downloaded by you - using apt-get - just as on Linux, because it is Linux. You can apt-get and download other tools like Ruby, Redis, emacs, and on and on. This is brilliant for developers that use a diverse set of tools like me.
We gaan het zien :)
Scott Hanselman claimt dat het meer dan alleen Bash is:
Het lijkt een beetje op Windows Services for UNIX (en dat is al erg oud). ;)
YEAH
jij zegt het. Jee, dat is een ouwe koe! }:O _/-\o_
Ik zat al te zoeken of iemand SFU genoemd had. Wel had SFU geen bash, dus dat kan zeker komen door de samenwerking met Canonical. Maar SUA zal daar inderdaad wel onderliggen.
Kan je dan ook een X.org of Wayland desktop omgeving opstarten? Ik geloof nooit dat "apt-get install kde-plasma5" iets zinnigs kan doen.
Hmm goede vraag. Het lijkt me niet dat het toegang krijgt tot de native displays. Iemand ideeën hierover?
You can apt-get and download other tools like Ruby
Wat gelijk een probleem blootlegt aangezien er ook gewoon emacs for Windows en Ruby for Windows zijn...

Nadeel van dit soort oplossingen is meestal dat je eigenlijk gewoon twee systemen onder één kap hebt zeg maar. Het wordt (meestal) niet een mooi geïntegreerd geheel... Maar goed het blijft stukken beter dan een VM.
De bruikbaarheid van Cygwin (en ik gebruik het voortdurend) is beperkt, t.o.v. je collega's op Linux (of vaak zelfs Mac) omdat je alleen een beperkte set commando's beschikbaar hebt die "men" (Cygwin) overgezet heeft naar Windows. Wat Microsoft hier presenteert is een manier om de originele binaries te draaien "op Windows", dat is echt iets heel anders. Nu kun je dus ook "apt-get install jouw-favoriete-linux-tool" doen.
Uit de beschrijving haal ik dat een linux image is die draait op windows. Het is bekend dat Windows pasgeleden ook Docker ging ondersteunen ( https://docs.docker.com/engine/installation/windows/ ); dit klinkt bij mij als een soort Linux docker bovenop Windows. Dat zou ook de 'mounts' verklaren.

Dockers zijn light-weight containers, waardoor je niet alle overhead krijgt van een standaard VM, maar wel de isolation. Daarmee schalen ze harder dan standaard VM's.

Hoe dan ook, het is een beetje speculatie van mijn kant... we gaan het zien.
Dank je voor de link. Zo te zien is het een vertaling van de System calls zodat de native binaries werken op Windows. Sweet!

Dit is de noodzakelijke voorwaarde voor het runnen van Linux containers. Maw: De containers komen denk ik later wel weer terug in de picture, zodra ze aankondigen ook Ubuntu containers te draaien op Windows. Ik kan me niet anders voorstellen dan dat ze hier deze technologie voor gaan gebruiken.
Speculatie maar ik denk dat je deels gelijkt hebt. Ik denk dat Ubuntu op Windows ook container achtig is
Grote voordeel is dus dat het al meteen out-of-the-box is en dus ook voor non-virtualisatie beschikbaar is (niet iedere Windows-versie heeft die ondersteuning btw)
Grote voordeel is dus dat het al meteen out-of-the-box is en dus ook voor non-virtualisatie beschikbaar is (niet iedere Windows-versie heeft die ondersteuning btw)
Volgens mij kan je onder praktisch alle moderne Windows versies en edities VirtualBox e.d. draaien. Misschien niet met een zeldzame Starter edition, maar al heb je die dan heb je ook andere problemen. ;)
Maar als je Bash wilt gebruiken voor iets op bv de PC van je moeder, dan moet je dat ook weer installeren, ben je weer tijd kwijt met configureren, etc. Als het er meteen op staat is dat toch mooi?

Ze gaven aan dat vooral webdevelopers hier op zaten te wachten en gaven een voorbeeld met Ruby. Iets wat niet zo snel draait op Windows en je wat dingen voor moet doen, maar als dat nu tutorials makkelijker maakt zodat het om de inhoud gaat en niet de setup, dan is dat toch ook mooi? Juist dat elk platform weer anders in elkaar zat, maakte het dat veel zaken uit tutorials maar voor een enkel platform zinvol waren om te kijken. Al vraag ik me af of ze hier alles mee oplossen. Ik ken Bash zelf niet zo goed, maar ik weet bv wel dat je vaak python en visual studio nodig had om bepaalde zaken te kunnen builden voor NodeJS modules. Ik vraag me af of dat nu opgelost is.
En wat is nu het praktische nut hiervan ? Ik zie het echt niet.
Wat kan ik met bash op mijn windows machine wat ik voorheen niet kon ?
Linux commando's; gebruiken zoals diff, grep awk. Dan kan je b.v. met een simpel, kort shellscriptje alle bestanden waarin het woordje "vakantie" voorkomt kopiëren naar een USB stick:
for i in `find * -name *vakantie* -print`
do
cp ${i} /dev/usbdevice
done
Kan ook vanuit de windows grafische interface, maar dat kost je uren. Met een simpel shellscriptje laat je de computer het werk doen. Ik heb in het verleden hier vaak cygwin voor gebruikt, maar heb nu m'n laptop in dualboot staan en de C-schijf gemount onder linux.

[Reactie gewijzigd door Anoniem: 344577 op 23 juli 2024 06:57]

Volgens mij kan je dit gewoon met powershell net zo goed
Heeft PowerShell ook gcc, python, md5sum, ssh, perl, vim, xz, lzma, rsync, make, ffmpeg, mplayer en man, en kan ik er node en cabal zonder problemen in draaien? Dat lijkt me de meerwaarde, afgezien dat ik 20 jaar aan bestaande bash-scripts kan kopieren van internet.
Er zijn inderdaad allemaal alternatieven beschikbaar en dingen als python draaien gewoon op windows.

Heb je toch een linux-only tool gebruik dan gewoon linux ipv windows
Dat is inderdaad zo, u heeft 100% gelijk. Echter, het referentiekader van mijn reactie is mijn werk situatie, daar hebben we alleen Windows zonder admin-rechten. Linux is geen optie. De hele mikmak is onder Windows 7 portable en met wat regedits, PATH en proxy-settings met wat batch files met SET-commando's draaiende te krijgen, maar dat is gruwlijk veel werk, handmatig software zoeken (met risico op virussen downloaden), die downloaden en geklooi, dus in dat specifieke geval zie ik er meerwaarde in als dat allemaal gelijk 'uit de doos' werkt en met pakket-manager (apt of iets dergelijks). Powershell vind ik een leuke oplossing, volgens mij kan het super veel, maar helaas dusdanig anders dan Bash / awk dat het me veel tijd zou kosten al die nieuwe syntax en commando's te leren. Degenen die wel zelf hun software-omgeving op hun werk mogen beheren en kiezen weten niet half hoe gelukkig ze mogen zijn :*)

[Reactie gewijzigd door kidde op 23 juli 2024 06:57]

Linux spul native draaien.
Voor een bedrijf dat groot geworden is met MS DOS is dat toch wel een grote stap. Als Cygwin gebruiker weet ik niet helemaal welk probleem hier nu mee opgelost wordt maar standardisering op de commandoregel is welkom.
Er is nu ook geen standaard op de commandline. Iedere distributie heeft zn eigen implementaties.
Pardon? Bash is overal de de-facto standaard en werkt overal hetzelfde. De binaries die je binnen BASH aan kunt roepen zijn wel gevoelig voor distro verschillen, maar dingen als je $PATH zijn (dankzij de FSH) hetzelfde.
Anoniem: 28912 @sfranken31 maart 2016 08:40
Bourne Again Shell is immens populair, maar dat wil niet zeggen dat er geen alternatieven zijn. Ik heb ook nog een tijd met de Korn Shell gewerkt.

Die kan je onder GNU/Linux ook prima draaien. Ook heb je nog meer shells, die nog minder vaak gebruikt worden; csh, tcsh, zsh om er maar paar te noemen
Ik ken ze ;) Maar dat veranderd niets aan het feit dat BASH gewoon de defacto standaard is in Unix en Linux land (op wat HP zaken na, daar is het nog steeds KSH/SH ipv bash geloof ik). Kijk naar OS X, daar is Bash ook de standaard, net als in 90% van de Linux distros.

Tuurlijk, het is user configurable, maar daar gaat het even niet om.
bash != commandline.
Klopt, bash is je command interpreter. Als je m'n reactie begrijpend had gelezen had je dat ook wel begrepen.
Valt wel mee hoor, Microsoft heeft al decennia lang Unix subsystems op de NT-kernel geleverd.

Origineel was Windows NT zelfs bedoeld als drie-voudig OS: bovenop de microkernel zouden Windows, OS/2 en Unix subsystems draaien. Na de ruzie en split met IBM viel OS/2 af, maar nog jarenlang heeft Microsoft het Unix subsystem in hele magere vorm in stand gehouden (wat vooral nodig was omdat bepaalde overheidsinstanties jarenlang nog Unix-compatibility eisen in hun tenders hadden staan).
Xenix (ook van MS) was ooit de best verkopende Unix-variant. Het is niet of ze er geen ervaring mee hebben.
Het volgende probleem van Cygwingebruikers wordt opgelost: ik kan in Cygwin geen random "apt-get install xxx" doen, omdat veel packages niet voor Windows beschikbaar zijn. Wat Microsoft hier presenteert maakt het mogelijk om native Linux-executables te draaien.

Als NPM een binary onderdeel wil installeren, kan dat dus een Linux binary zijn, en hoef ik me niet in bochten te wringen om het op Windows werkend te krijgen.
Wow, dat lijkt me heerlijk!
Eindelijk voor heel veel simpele klusjes af zijn van een lange serie muiskliks.
Laat maar komen!
Er was al heel lang Cygwin he ;)
Er zijn meerdere (3rd party) oplossingen, waaronder CygWin.
Maar in dit geval lijkt me een MS-endorsed versie van een Linux subssystem wel lekker.

Het artikel is een beetje krom, maar editors als Vi (VIm) en Emacs draaien los van de shell, dus dat gaat waarschijnlijk meer om het feit dat het subsystem meer kan dan alleen een Bash shell draaien
Nou nog de apt-get installer en crontabs en rsync en je maakt veel andere pakketjes overbodig.
yum! :+ maar je hebt gelijk, ik heb een webserver op centos inclusief database sneller opgezet dan dat ik windows voor een thuisgebruiker installeer met alle drivers en shizzle die erbij komt en allemaal 1 voor 1 geinstalleerd moet worden ipv een simpele yum update -y
Je kan niet alles hebben, maar Ninite.com en snappydrivers helpen na een verse windows install toch wel in de tijdswinst
Ja en je drivers zijn performant ;)
Maar zonder gekheid, ik denk dat het er wel gaat komen
Snappydrivers pikt de laatste drivers op.

Vooralsnog eigenlijk nooit problemen, ware het niet dat het oneconomisch downloaden is ( 800MB voor één videodriver ;) )
Ik heb het op een stick staan, en update het zo nu en dan om de paar weken ( 13GB )
De usbstick heb ik vrijwel altijd in de buurt, al menigeen geholpen hiermee.
Op Windows is een apt-get achtig iets mogelijk in de vorm van chocolatey.org
Alleen niet alle packages worden echt lekker bijgehouden, waardoor je soms met oude versies blijft zitten. Over het algemeen worden populaire softwarepakketten wel snel up2date gebracht.
Hoewel dat eigenlijk niet anders is dan bij apt-get natuurlijk.
apt-get install kan blijkbaar al gebruikt worden. https://channel9.msdn.com/Events/Build/2016/C906?platform=hootsuite rond 8:08 minuten.
Je kan al heel, heel erg veel met PowerShell. Hell, voor de Server versies wordt PS neergezet als de standaard oplossing voor beheer.
Jazeker, powershell is een goede shell.
Maar ja, om zo'n nieuwe shell - powershell is echt heel anders dan bash/sh/ksh en dergelijke - net zo goed onder de knie te krijgen, dat gaat weer jaren duren.
Dus daarom zou het fijn zijn om mijn *nix ervaring gewoon mee te kunnen nemen naar windows.
Ik als PHP ontwikkelaar wordt hier werkelijk lyrisch van. Momenteel gebruik ik git bash om zaken als composer en bower te gebruiken. Maar de installatie van PHP, extensies, bash autocomplete scripts etc. is in Windows toch wat omslachtig. Hiermee zou dit dus allemaal out of the box moeten gaan werken via een simpele apt-get.
Ik hoop ook idd dat het geen 1 april grap is. apt-get install lamp om maar wat te zeggen. Ik gebruik nu ook git-bash. Maar als dit er komt ga ik meteen over. Volgende stap is native X server support? :P
Wayland dan he, Xorg is op z'n retour (al gaat 't niet super hard). En sudo apt-get install apache2 mysql-server php5 -y zou best mooi zijn onder Windows ja. Net als sudo apt-get install vim -y voor een behoorlijke editor
Ik wil de pret nog niet bederven, maar tussen Bash beschikbaar maken op Windows en apt-get kunnen gebruiken op Windows zit nog een heel groot gat. Zoals ook in de nieuwspost aangegeven kan Bash al langer met third-party tools op Windows worden gedraaid maar dat betekend nog niet dat je shellscriptjes ook opeens op Windows werken.
Volgens iemand hier (te lui om te zoeken nu) zou Scott Hanselman wel laten weten hebben dat apt-get beschikbaar is. Misschien niet voor alles, maar gezien het om een feature voor developers gaat heb ik er goede hoop in dat het voor mijn tooltjes wel in orde komt :)
Toch wel, zoals al vele malen in de comments aangegeven.
Awesome! Ik kan redelijk omgaan met Bash, maar om de een of andere reden heb ik CMD en Powershell altijd ingewikkeld gevonden. Cygwin en MinGW zijn een mooie oplossing, maar Bash-ondersteuning in standaard Windows is helemaal geweldig :D
PS is op zich niet slecht, je moet er wel wat tijd in steken om te leren. Het enige wat ik minder leuk vind is de manier waarop ze tab completion hebben toegepast. Waar bash aanvult totdat er meerdere mogelijkheden zijn zal PS je altijd op het eerste geldige resultaat zetten en kan je via tab verder blijven zoeken. Leuk als er maar 2 of 3 opties zijn, maar als je een lang sleutelwoord moet invoeren waarbij je tientallen resultaten kunt hebben met hetzelfde begin dan verlies je wel snel het snelheidsvoordeel dat die vervollediging kan geven.
Ik denk dat Microsoft de Linux APIs op de NT kernel beschikbaar heeft gemaakt. Dus de System Call Interfaces en hun eigen variant van glibc.
Alle binaries in userspace weten niet beter dan dat ze tegen een Linux kernel praten.

Graag de output van 'uname -a' als iemand toegang heeft tot deze software.
Klopt, in de video wordt dat duidelijk.

Op dit item kan niet meer gereageerd worden.