The discrete Fourier transform (DFT) is often teached as being a transform that decomposes a given signal or sequence of numbers into sinusoids with frequencies $\large\frac{k}{N}$ where $k \in [0, N-1]$ and $N$ is the signal length (number of numbers in the sequence).
For $\mathbf{x} = (x_{0}, ..., x_{N-1})$ the DFT is defined as
$$ X_{k} = \sum_{n=0}^{N-1} x_{n}\omega^{kn}_{N} \quad 0 \leq k \leq N-1$$
where $\omega_{N} = e^{\large\frac{-2\pi i}{N}}$ is a primitive $N$th root of unity. So, what I want to ask is
What exactly is the connection between sinusoids and (primitive) roots of unity?
I don't see a root of unity being simply a sinusoidal wave. In that case it would be defined as $$y(t) = A\sin(2\pi ft + \theta)$$ as is usual ...
The $N^{th}$ root of unity is a complex number of the form $e^{j2\pi/N}$. A sinusoidal wave is a function like so:
$$ e^{j\omega t} = \cos(\omega t) + j \sin(\omega t), $$
where $j=\sqrt{-1}$. The formula you are looking at uses the roots of unity for convenience/preference/cleanliness, though I don't like it and find it confusing. When you raise a root of unity to $kn$ as is done in the sum, you get
$$ w_N^{kn} = (e^{j2\pi/N})^{kn} = e^{j2\pi kn/N} = \cos(2\pi kn/N) + j \sin(2\pi kn/N), $$
so each $w_N^{nk}$ in the sum is a sinusoidal wave of a different frequency.