[Tex/LaTex] moderncv modify right margin or length of cvitem

moderncv

I am trying to edit my resume, and I have trouble managing the spacing on the cvitem. I'd like it to be of a shorter length, more specifically I want the line ending to be less than the other elements.

enter image description here

Here I have an itemize inside the cvitem. Basically I want the entire cvitem to be of shorter length. I tried modifying some of the moderncv classes, but to no avail. Help appreciated. Thanks!

EDIT: The code here

    \documentclass[12pt,a4paper,sans]{moderncv}

    \usepackage{verbatim}

    % moderncv themes
    \moderncvtheme[blue]{banking}                 % optional argument are 'blue' (default), 'orange', 'red', 'green', 'grey' and 'roman' (for roman fonts, instead of sans serif fonts)
    %\moderncvtheme[green]{classic}                % idem

    % character encoding
    \usepackage[utf8]{inputenc}                   % replace by the encoding you are using

    % adjust the page margins
    \usepackage[scale=0.93]{geometry}
    .....
    \begin{document}
    ....
    \cvitem{Projects}{\begin{itemize} 
    \item \textbf{Porting packages to Image Packaging System in OpenSolaris} \newline{} Sun Microsystems Internship. Ported applications such as Parcellite, VLC to the IPS in OpenSolaris. Published in Fibonacci, Vol 1, SF-FOSS, IIITM, Gwalior, India \end{itemize}}
    \end{document}

Best Answer

You can modify \cventry so that its content is inside a minipage. Put these lines in your preamble:

\renewcommand*{\cvitem}[3][.25em]{%
  \ifthenelse{\equal{#2}{}}{}{\begin{minipage}[t]{15cm}\hintstyle{#2}: }{#3}\end{minipage}%
  \par\addvspace{#1}}

and adjust 15cm to your needs.

MWE:

\documentclass[12pt,a4paper,sans]{moderncv}
 \usepackage{verbatim}

% moderncv themes
\moderncvtheme[blue]{banking}                 % optional argument are 'blue' (default), 'orange', 'red', 'green', 'grey' and 'roman' (for roman fonts, instead of sans serif fonts)
%\moderncvtheme[green]{classic}                % idem

% character encoding
\usepackage[utf8]{inputenc}                   % replace by the encoding you are using

% adjust the page margins
\usepackage[scale=0.93]{geometry}

\firstname{John}\familyname{Doe}

\renewcommand*{\cvitem}[3][.25em]{%
  \ifthenelse{\equal{#2}{}}{}{\begin{minipage}[t]{15cm}\hintstyle{#2}: }{#3}\end{minipage}%
  \par\addvspace{#1}}


\begin{document}

\maketitle

\cvitem{Projects}{\begin{itemize}
\item \textbf{Porting packages to Image Packaging System in OpenSolaris} \newline{} Sun Microsystems Internship. Ported applications such as Parcellite, VLC to the IPS in OpenSolaris. Published in Fibonacci, Vol 1, SF-FOSS, IIITM, Gwalior, India \end{itemize}}

\end{document} 

Output:

enter image description here