I know, this is an old question, but I managed to elegantly provide acronym descriptions that automatically get transformed to lowercase, while leaving proper nouns and abbreviations untouched.
I define a new command \MakeLowercaseEscaped
that transforms all characters to lowercase except those that have been put in curly braces (similar to titles in BibLaTeX entries). Thereby, I can provide capitalized acronym descriptions that automatically get transformed to lowercase. On the downside, it requires BibLaTeX as I borrow internals from BibLaTeX's \MakeSentencecase
.
\makeatletter
\newrobustcmd{\MakeLowercaseEscaped}{%
\let\blx@mksc@endhead\relax% prevent capitalization of first character
\blx@mksc@ii}
\makeatother
Afterwards, \newacronym
can be redefined to lowercase the description when using the acronym in the document body:
\let\oldnewacronym\newacronym
\renewcommand\newacronym[3]{%
\oldnewacronym[sort=#1,description=#3]{#1}{#2}{\MakeLowercaseEscaped{#3}}}
Now, acronyms can be defined with curly braces to avoid lowercasing proper nouns and abbreviations:
\newacronym{dsl}{DSL}{Domain-Specific Language}
\newacronym{egpu}{eGPU}{Embedded {GPU}}
\newacronym{latex}{\LaTeX}{{Lamport} {TeX}}
Using curly braces is pretty elegant as they will not mess up typesetting, if \newacronym
is not redefined or BibLaTeX is not available.

MWE for solution:
\documentclass[12pt]{article}
\usepackage[acronym]{glossaries}
\usepackage{biblatex}
\makenoidxglossaries
\makeatletter
\@ifpackageloaded{biblatex}{%
\newrobustcmd{\MakeLowercaseEscaped}{%
\let\blx@mksc@endhead\relax% prevent capitalization of first character
\blx@mksc@ii}
}{\newcommand\MakeLowercaseEscaped[1]{#1}}% fallback
\makeatother
\let\oldnewacronym\newacronym
\renewcommand\newacronym[3]{%
\oldnewacronym[sort=#1,description=#3]{#1}{#2}{\MakeLowercaseEscaped{#3}}}
\newacronym{dsl}{DSL}{Domain-Specific Language}
\newacronym{egpu}{eGPU}{Embedded {GPU}}
\newacronym{latex}{\LaTeX}{{Lamport} {TeX}}
\begin{document}
\Glspl{dsl} can be used to generate code for an \gls{egpu}.
This document was produced with the typesetting system \gls{latex}.
\printnoidxglossary[type=acronym]
\end{document}