I would recommend you to install the full TeXLive manually (i.e. not using the Ubuntu packages) with both Linux and Windows binaries to the shared drive. The full TeXLive is about 2.6GB in size and should contain every package which is also available in MikTeX, except brand-new packages not yet included. Installing everything avoids any issues with missing packages. TeXWorks is available for both Windows and Linux.
The manual installation is important to get recent versions of the LaTeX package and to be able to run tlmgr
to update the packages. The 2.9GB should be ok for modern harddrives. If you deselect foreign languages and special fonts as well as e.g. XeTeX if not required you will be able to save a GB or so. The Ubuntu packages are largely outdated (still using TeXLive 2009 for example) and should not be used. One pain here is that Ubuntu will install its own TeXLive if you try to install anything TeX specific. One way to avoid this is to install TeXLive first using Ubuntu and then again manually. Both should use different paths and you should be able to delete the texmf tree of the Ubuntu version without any problem afterwards.
It is possible to install MacTeX with homebrew using Homebrew Cask via
$ brew tap caskroom/cask
$ brew cask install mactex
Since that basically downloads the MacTeX.pkg from ctan it should not be different from the usual manual installation.
If you would like to install without the GUI, you can
$ brew cask install mactex-no-gui
[edit] Homebrew 2.2.6
Skip the brew tap caskroom/cask
or the following error occures:
Error: caskroom/cask was moved. Tap homebrew/cask-cask instead.
If you do what it's says, you will get:
Error: caskroom/cask-cask was moved. Tap homebrew/cask-cask-cask instead.
You can continue to do what it tells you, until you realize that you should look for help online. I think it is a fun, yet unhelpful error message, maybe there is a good reason for it. Just go ahead and do
$ brew cask install mactex
Edit 2021
brew
has once again changed its syntax for this. You should now be using
$ brew install --cask mactex
Best Answer
While in MiKTeX an installation process is automatically triggered if you have, say,
\usepackage{beamer}
in a document preamble without the corresponding package installed, there is no such feature on TeX Live.The last statement is not true actually, as pointed out by wasteofspace in the comments there is the texliveonfly package that implements the on demand installation in TeX Live 2010 and later. I never tested it and don't know if it has drawbacks.
However, if you install the full (or almost full) TeX Live collection of packages (~2400) you will not need to add new packages, a periodic
tlmgr update -all
will take care of everything, including the installation of packages added to the TeX Live collection after you first full installation. This feature is explained in thetlmgr
manual.The manual has lots of info on useful commands and it is a recommended reading for every user.
The downside is of course that you need the full set of packages installed in your machine, which may be a problem if you don't have enough free space. If you really can't spare 2GB from your HD, it is also possible to install TeX Live in a, say, 4GB USB key and live happily ever after :)
Everything I just wrote requires that you install TeX Live with one the methods described here. If you decide to use the TeX packages from your distro you are forced to follow their update policy, which is different for different distros