News for hackers. Stuff that matters.
Re:.NET Core 3.0 by factorialboy on Monday September 23, 2019 @02:32PM (#21051976)
Sorry for a basic question, can this be used to make desktop apps across platforms?
Re:.NET Core 3.0 by strangecasts on Monday September 23, 2019 @02:43PM (#21052111)
Yes - while WPF and Windows Forms are still Windows-exclusive, there are several cross-platform UI libraries for .NET Core, like Eto.Forms (https://github.com/picoe/Eto) and Avalonia (https://avaloniaui.net/).

It's also possible to build an Electron wrapper around an ASP.NET Core web app: https://github.com/ElectronNET/Electron.NET

Re:.NET Core 3.0 by rajeev-k on Monday September 23, 2019 @03:02PM (#21052329)
Docker is a better way to distribute apps than Electron, in my opinion. From a developer point of view you just build a regular web app, so better than Electron. From the user's point of view, Docker is better because of isolation, and because there is nothing to install. You run just one command to download and run the image. If you want the app to have its own window then use Chrome's "Create shortcut" command. This is indistinguishable from an Electron app, but better. See an app written in this fashion here: https://hub.docker.com/r/eurekasearch/eurekasearch
Re:.NET Core 3.0 by nitePhyyre on Monday September 23, 2019 @03:49PM (#21052828)
"From the user's point of view, Docker is better [...] run just one command" Nope. Your "better" solution just became fundamentally impossible for 99.9% of users.
Re:.NET Core 3.0 by interlocutor on Monday September 23, 2019 @03:58PM (#21052928)
See https://kitematic.com/ it is a UI for starting containers.
Re:.NET Core 3.0 by strangecasts on Monday September 23, 2019 @03:35PM (#21052694)
For the end user there is something to install - specifically, Docker, which is quite... hefty on Windows
Re:.NET Core 3.0 by Kihashi on Tuesday September 24, 2019 @11:55AM (#21061501)
I've had to debug every install of docker for windows that I've done because it doesn't set something up correctly. Usually this involves googling the error message, finding a github thread where people are talking about which builds this affects, and then trying one of three or more powershell commands to fix whichever part of the install failed. In the most recent attempt, the error message told me to enabled virtualization in the BIOS, but it was actually that HyperV had not been enabled properly[1]. It was installed and the UI ran, but if you tried to start any VM, it would fail. I doubt debugging this sort of thing is feasible for an end user.

[1]: https://stackoverflow.com/questions/39684974/docker-for-wind...

Re:.NET Core 3.0 by charrondev on Monday September 23, 2019 @05:42PM (#21054039)
If I remember correctly it also requires windows pro or enterprise.

These 2 requirements make this fundamentally unusable for most.

- Windows 10 64-bit: Pro, Enterprise, or Education (Build 15063 or later). - Hyper-V and Containers Windows features must be enabled.

Re:.NET Core 3.0 by noisem4ker on Tuesday September 24, 2019 @04:24PM (#21064239)
Docker Toolbox, although less polished, is based on VirtualBox and happily runs without Hyper-V. The only thing I've found missing is the control panel GUI.

https://github.com/docker/toolbox

Re:.NET Core 3.0 by aliswe on Monday September 23, 2019 @05:47PM (#21054093)
Don't forget it requires HyperV as well
Re:.NET Core 3.0 by cpitman on Monday September 23, 2019 @04:10PM (#21053052)
A basic requirement for distributing desktop apps should be not requiring root to install/run them.
Re:.NET Core 3.0 by ros65536 on Monday September 23, 2019 @04:46PM (#21053431)
I don't know about Eto.Forms but from what I have tried of Avalonia I'd say It could only be used for toy projects: there is almost no documentation, there are missing features like app icons, system tray, etc. Maybe in a few years It might be good, but I'd stay away from .net if the purpose is to have a cross platform GUI app
Re:.NET Core 3.0 by ticmasta on Monday September 23, 2019 @02:50PM (#21052180)
The short answer is yes.

How you approach this is very dependent on where you're coming from (i.e. existing solution) but with WPF and Winforms now part of Core 3.0 you can then build a native, single exe by specifying the target architecture (ex: win x64) and then bundling the framework with your app. They do some trimming as well (i.e. tree shaking) to get the exe size down but have admitted it's still in early stages and sometimes drops required framework components. You can fix this by adding an explicit reference to the assembly in your project source though...

There are a million ways to get onto different platforms though, ranging from the above, to xamarin to electron (via blazor), to net-new apps, etc.