How to right align a minipage?

Without minipages that would produce odd interline spacing; also this allows page breaks.

\documentclass{article}
\usepackage{enumitem}
\usepackage{showframe,lipsum} % just for the example

\newenvironment{leftbox}[1]
 {\itemize[
    nosep,
    leftmargin=0pt,
    rightmargin=\dimexpr\textwidth-#1\relax,
    itemindent=\parindent,
    listparindent=\parindent,
  ]\item[]\relax}
 {\enditemize}

\newenvironment{rightbox}[1]
 {\itemize[
    nosep,
    leftmargin=\dimexpr\textwidth-#1\relax,
    rightmargin=0pt,
    itemindent=\parindent,
    listparindent=\parindent,
  ]\item[]\relax}
 {\enditemize}

\begin{document}

\lipsum[1]

\begin{leftbox}{10cm}
\lipsum[2]
\end{leftbox}

\begin{rightbox}{10cm}
\lipsum[3]
\end{rightbox}

\lipsum[4]

\end{document}

enter image description here


You can use an \hfill before the minipage:

\documentclass[12pt]{article}

\usepackage{blindtext}

\begin{document}

\begin{minipage}{10cm}
\blindtext
\end{minipage}

\hfill%
\begin{minipage}{10cm}
\blindtext
\end{minipage}

\end{document}

Is this what you want?

\documentclass[12pt]{article}

\usepackage{blindtext}

\begin{document}

\begin{minipage}{10cm}
\blindtext
\end{minipage}

\begin{flushright}
\begin{minipage}{10cm}
\raggedleft\blindtext
\end{minipage}
\end{flushright}

\end{document} 

enter image description here