It works as documented but you did not follow the documentation!
The MUI_FUNCTION_DESCRIPTION_BEGIN/END block has to come after the sections in the .nsi (The MUI helpfile documents this in the "Components page descriptions" section). The reason for this is that ${SectionAVG}
is not going to be defined util after the section has been declared. When using LangString
strings you also need to use the correct syntax: $(lang_string_id)
.
!include MUI2.nsh
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE English
LangString DESC_avg ${LANG_ENGLISH} "foo foo foo foo foo foo foo foo foo"
LangString DESC_cc ${LANG_ENGLISH} "bar BAR bar"
Section "AVG Anti-Virus" SectionAVG
SectionEnd
Section "CCleaner" SectionCC
SectionEnd
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SectionAVG} $(DESC_avg)
!insertmacro MUI_DESCRIPTION_TEXT ${SectionCC} $(DESC_cc)
!insertmacro MUI_FUNCTION_DESCRIPTION_END