Getting started developing with Sitecore CMS on a Mac using C#
Asked Answered
B

2

7

We are going to be switching to Sitecore for our CMS and my team uses Macs. We have no .net, c# experience but are excited to learn. I understand Microsoft recently released Visual Studio Code to work on Mac, and I've looked into Xamarin. Can someone provide any tips for a Mac guy?

Biology answered 3/12, 2015 at 21:51 Comment(5)
Check out the official Sitecore compatibility table: kb.sitecore.net/articles/087164Astromancy
There are so many answers to this, SO is probably not the best place for it. To start with, you need Windows, Visual Studio and IIS. Also Sitecore is not for beginner .net developers, its a large application that takes even seasoned developers a while to get to grips with.Malik
The most convenient way for me was to simply install Windows on my iMac. You can have two systems coexisting on your machine.Pinnace
Thank you for your insightsBiology
not "hating", just stating for those of like mind that stumble across this ... installing WindowsOS into a virtual machine, to run on your Apple hardware, is not what i would categorize as "sitecore development on my mac". i would categorize it as "running WindowsOS on my Apple hardware to do sitecore development". "sitecore development on my mac" is looking more and more synonymous with something like the following: medium.com/@romaklimenko/…Aronoff
D
8

Visual Studio for Mac will not help you because Sitecore quite tightly relates on windows features like IIS and windows filesystem with drives and paths; also the rest of cross-platform ASP.NET 5 features (like owin etc.) are not yet supported by Sitecore.

At the moment the best way to work with Sitecore on Mac is virtualisation and in particular - Parallels Desktop for Mac. I am using that myself for last 3 years - that is the most convenient way. Parallels Desktop is a virtual machine solution that integrates your Windows VM very tightly into Mac, you can run multiple (let's say 2-4) Windows virtual machines at the same time (nice to test Content Management / Content Delivery distributed between separate "machines" just on one Mac) - they are all connected to each other and Mac by a "network". Also you will need to have an instance of SQL server (in that case you may allocate a separate VM or simply reference an external SQL server).

Parallels Desktop has a mode called Coherence, when in fact win and mac environments are sort of merged into each other, so you can for example drag-drop from Finder into Windows Exploreк like you do it natively, and get Windows start button at you Dock and many other great features.

However I prefer to run Parallels in a full screen mode on a second monitor to be 1-to-1 like a regular Windows machine. By setting hosts file on Mac machine I can run CMS and hosted websites right from Safari on Mac.

Also virtual machines are stored as folders on your hard drive, so you can easily backup your current state of OS as easy as just archiving that folder, and later revert to that moments you have "saved" - very helpful to experiment, especially if you are a beginner in Sitecore, so you'd not afraid to break anything accidentally.

Good place to start: official website, as well as quickly investigate all its magic on YouTube reviews.

P.S. of course, you may use any alternative virtualisation software, like VmWare etc.

Disclimax answered 4/12, 2015 at 0:10 Comment(4)
+1. I've been doing this for the past eighteen months or so, using VMware. My pain points have mostly been around source code control as my infosec overlords have declared that my VMs have no access to the corporate LAN. So my TFS interface is through the command-line tf tool from Microsoft. The devs share code through TFS and sometimes with Hedgehog's TDS.Hue
With Parallels internet is automatically mapped to you VMs (unless you explicitly deny that), and you can also specify whether it will be an individual network between host and vm(s) or your Vm falls just as another machine on your existing network (like corporate, by DHCP client) - in that case you'll get all your services working. But, I remember successfully achieving the same with VmWare as well in past, just not as easy as in parallelsDisclimax
Thank you both - this discussion and insight is extremely helpful for me.Biology
@MartinMiles Sorry, I wasn't clear, I'm not having technical issues with the networking setup. The infosec overlords have established a policy that unless the VM is created by our support group that it should not be able to access the network. If I want to play by their rules and policies (no admin access, etc) then the VM can access the network. If I want to do whatever I want on the VM, then the policy is that the VM shall not have network access.Hue
M
3

I use Visual Studio for Mac to build my Sitecore solutions. We use a gulp task based on the one that comes with Habitat to deploy changes to files (binaries, views, config, etc...) into a Windows virtual machine running in Parallels on my Mac.

There have only been two things I am missing from Visual Studio on Windows - debugging and Sitecore Rocks.

If you can live without those two things you can definitely develop your Sitecore solutions from a Mac with Sitecore running in Windows.

Medardas answered 7/8, 2018 at 4:32 Comment(1)
Have you tried with the new m1 and m2 processors? Is everything working properly?Dreeda

© 2022 - 2024 — McMap. All rights reserved.