Windows build environment:

- Added build script
- Added build-installer script
- Added pack script
- Added gitlog script
- Use shadow build
This commit is contained in:
thunder2 2016-09-06 21:31:41 +02:00
parent ebfc82cc1e
commit a35985e3fc
60 changed files with 1357 additions and 444 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Instal·la ${APPNAME} i els components necessaris."
!insertmacro LANG_STRING Section_Data "Pells"
!insertmacro LANG_STRING Section_Data_Desc "Instal·la pells."
!insertmacro LANG_STRING Section_Shortcuts "Icones d'accés directe"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Afegir icones d'accés directe."
!insertmacro LANG_STRING Section_StartMenu "Icona del menú d'inici"
!insertmacro LANG_STRING Section_StartMenu_Desc "Afegir icona en el menú d'inici"
!insertmacro LANG_STRING Section_Desktop "Icona d'escriptori"
!insertmacro LANG_STRING Section_Desktop_Desc "Afegir icona a l'escriptori"
!insertmacro LANG_STRING Section_QuickLaunch "Icona de la barra ràpida d'accés"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Afegir icona a la barra ràpida d'accés"
!insertmacro LANG_STRING Section_Plugins "Complements opcionals"
!insertmacro LANG_STRING Section_Plugins_Desc "Components opcionals per afegir funcionalitat."
!insertmacro LANG_STRING Section_Plugin_FeedReader "LectorFonts"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Instal·lar complement LectorFonts."
!insertmacro LANG_STRING Section_Plugin_LinksCloud "NúvolEnllaços"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Instal·lar complement NúvolEnllaços."
!insertmacro LANG_STRING Section_Plugin_VOIP "VeuIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Instal·lar complement VeuIP."
!insertmacro LANG_STRING Section_AutoStart "Posada en marxa automàtica"
!insertmacro LANG_STRING Section_AutoStart_Desc "Autoengegar al arrencar."
!insertmacro LANG_STRING Page_InstallMode "Mode instal·lació"
!insertmacro LANG_STRING Page_InstallMode_Desc "Escull com vols instal·lar ${APPNAME}."
!insertmacro LANG_STRING Page_InstallMode_Standard "Instal·lació e&stàndard"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Instal·la ${APPNAME} per la sessió d'usuari actual."
!insertmacro LANG_STRING Page_InstallMode_Portable "Instal·lació &portable."
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "En mode portable les dades de configuració s'emmagatzemen a la carpeta d'aplicació i no s'escriu informació al registre del sistema."
!insertmacro LANG_STRING Link_Uninstall "Desinstal·lar."

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Installiert ${APPNAME} und die benötigten Komponenten."
!insertmacro LANG_STRING Section_Data "Skins"
!insertmacro LANG_STRING Section_Data_Desc "Skins installieren."
!insertmacro LANG_STRING Section_Shortcuts "Verknüpfungssymbole"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Verküpfungssymbole hinzufügen."
!insertmacro LANG_STRING Section_StartMenu "Startmenüsymbol"
!insertmacro LANG_STRING Section_StartMenu_Desc "Fügt Symbol zum Startmenü hinzu."
!insertmacro LANG_STRING Section_Desktop "Desktopsymbol"
!insertmacro LANG_STRING Section_Desktop_Desc "Fügt Symbol zum Desktop hinzu."
!insertmacro LANG_STRING Section_QuickLaunch "Schnellstartsymbol"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Fügt Symbol zur Schnellstartleiste hinzu."
!insertmacro LANG_STRING Section_Plugins "Optionale Plug-ins"
!insertmacro LANG_STRING Section_Plugins_Desc "Optionale Plug-ins zum Erweitern der Funktionalität."
!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Installiert das Plug-in Feedreader."
!insertmacro LANG_STRING Section_Plugin_LinksCloud "Verknüpfungswolke"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Installiert das Plug-in Verknüpfungswolke."
!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Installiert das Plug-in VOIP"
!insertmacro LANG_STRING Section_AutoStart "Automatischer Programmstart"
!insertmacro LANG_STRING Section_AutoStart_Desc "Beim Start automatisch ausführen."
!insertmacro LANG_STRING Page_InstallMode "Installationsmodus"
!insertmacro LANG_STRING Page_InstallMode_Desc "Wähle wie du ${APPNAME} installieren willst."
!insertmacro LANG_STRING Page_InstallMode_Standard "&Standardinstallation"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Installiere ${APPNAME} für den derzeitigen Benutzer dieses Geräts."
!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable Installation"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "Im portablen Modus werden alle Konfigurationsdaten im Verzeichnis der Anwendung gespeichert und keine Informationen in der Registry abgelegt."
!insertmacro LANG_STRING Link_Uninstall "Deinstallieren"

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Installs ${APPNAME} and required components."
!insertmacro LANG_STRING Section_Data "Skins"
!insertmacro LANG_STRING Section_Data_Desc "Installs skins."
!insertmacro LANG_STRING Section_Shortcuts "Shortcut icons"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Adds shortcut icons."
!insertmacro LANG_STRING Section_StartMenu "Start Menu icon"
!insertmacro LANG_STRING Section_StartMenu_Desc "Adds icon to start menu."
!insertmacro LANG_STRING Section_Desktop "Desktop icon"
!insertmacro LANG_STRING Section_Desktop_Desc "Adds icon to desktop."
!insertmacro LANG_STRING Section_QuickLaunch "Quick Launch icon"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Adds icon to Quick Launch toolbar."
!insertmacro LANG_STRING Section_Plugins "Optional plugins"
!insertmacro LANG_STRING Section_Plugins_Desc "Optional plugins to extend functionality."
!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Installs plugin FeedReader."
!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Installs plugin VOIP."
;!insertmacro LANG_STRING Section_Link "File Association"
;!insertmacro LANG_STRING Section_Link_Desc "Associate ${APPNAME} with .pqi file extension."
!insertmacro LANG_STRING Section_AutoStart "Auto Startup"
!insertmacro LANG_STRING Section_AutoStart_Desc "Auto-Run at startup."
!insertmacro LANG_STRING Page_InstallMode "Installation Mode"
!insertmacro LANG_STRING Page_InstallMode_Desc "Choose how you want to install ${APPNAME}."
!insertmacro LANG_STRING Page_InstallMode_Standard "&Standard installation"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Install ${APPNAME} for the current user of this machine."
!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable installation"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "In portable mode all configuration data is stored in the application folder and no information is written to the registry."
!insertmacro LANG_STRING Link_Uninstall "Uninstall"

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Instala ${APPNAME} y los componentes requeridos."
!insertmacro LANG_STRING Section_Data "Coberturas (skins)"
!insertmacro LANG_STRING Section_Data_Desc "Instalar coberturas"
!insertmacro LANG_STRING Section_Shortcuts "Iconos de accesos directos"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Añade iconos de accesos directos."
!insertmacro LANG_STRING Section_StartMenu "Icono de menú de inicio"
!insertmacro LANG_STRING Section_StartMenu_Desc "Añade icono al menú de inicio."
!insertmacro LANG_STRING Section_Desktop "Icono del escritorio"
!insertmacro LANG_STRING Section_Desktop_Desc "Añade icono al escritorio"
!insertmacro LANG_STRING Section_QuickLaunch "Icono de inicio rápido"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Añade icono a la Barra de Inicio Rápido"
!insertmacro LANG_STRING Section_Plugins "Complementos opcionales"
!insertmacro LANG_STRING Section_Plugins_Desc "Complementos opcionales para expandir la funcionalidad."
!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Instala el complemento FeedReader."
!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Instala el complemento LinksCloud."
!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Instala el complemento VOIP"
!insertmacro LANG_STRING Section_AutoStart "Auto iniciar"
!insertmacro LANG_STRING Section_AutoStart_Desc "Auto-ejecutar al incio."
!insertmacro LANG_STRING Page_InstallMode "Modo de instalación"
!insertmacro LANG_STRING Page_InstallMode_Desc "Elija cómo quiere instalar ${APPNAME}."
!insertmacro LANG_STRING Page_InstallMode_Standard "Instalación &Estándar"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Instalar ${APPNAME} para el usuario actual de esta máquina."
!insertmacro LANG_STRING Page_InstallMode_Portable "Instalación &Portable"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "En modo portable, todos los datos de configuración se almacenan en la carpeta de la aplicación y no se escribe ninguna información en el registro."
!insertmacro LANG_STRING Link_Uninstall "Desinstalar"

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Installe ${APPNAME} et les composants requis."
!insertmacro LANG_STRING Section_Data "Habillages"
!insertmacro LANG_STRING Section_Data_Desc "Installe des habillages."
!insertmacro LANG_STRING Section_Shortcuts "Icônes de raccourci"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Ajoute les icônes de raccourci."
!insertmacro LANG_STRING Section_StartMenu "Icône de menu démarrage"
!insertmacro LANG_STRING Section_StartMenu_Desc "Ajoute l'icône au menu démarrer."
!insertmacro LANG_STRING Section_Desktop "Icônes de bureau"
!insertmacro LANG_STRING Section_Desktop_Desc "Ajoute l'icône sur le bureau."
!insertmacro LANG_STRING Section_QuickLaunch "Icône de lancement rapide"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Ajoute une icône à la barre d'outils de lancement rapide."
!insertmacro LANG_STRING Section_Plugins "Plug-ins optionnels"
!insertmacro LANG_STRING Section_Plugins_Desc "Plug-ins optionnels destinés à étendre les fonctionnalités."
!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Installe le plug-in FeedReader."
!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Installe le plug-in LinksCloud."
!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Installe le plug-in VOIP."
!insertmacro LANG_STRING Section_AutoStart "Démarrage automatique"
!insertmacro LANG_STRING Section_AutoStart_Desc "Démarrage automatique au démarrage."
!insertmacro LANG_STRING Page_InstallMode "Mode d'installation"
!insertmacro LANG_STRING Page_InstallMode_Desc "Choisissez comment vous voulez installer ${APPNAME}."
!insertmacro LANG_STRING Page_InstallMode_Standard "&Installation standard"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Installer ${APPNAME} pour l'utilisateur actuel de cette machine."
!insertmacro LANG_STRING Page_InstallMode_Portable "&Installation portable"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "En mode portable toutes les données de configuration sont stockées dans le dossier de l'application et aucune information n'est écrite dans la base de registre."
!insertmacro LANG_STRING Link_Uninstall "Désinstaller"

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Instaluje ${APPNAME} oraz wymagane komponenty."
!insertmacro LANG_STRING Section_Data "Skórki"
!insertmacro LANG_STRING Section_Data_Desc "Instaluje skórki."
!insertmacro LANG_STRING Section_Shortcuts "Ikony skrótów"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Dodaje skróty ikon."
!insertmacro LANG_STRING Section_StartMenu "Start Menu icon"
!insertmacro LANG_STRING Section_StartMenu_Desc "Dodaje ikonę do menu start."
!insertmacro LANG_STRING Section_Desktop "Ikona na pulpicie"
!insertmacro LANG_STRING Section_Desktop_Desc "Dodawanie ikony na pulpicie"
!insertmacro LANG_STRING Section_QuickLaunch "Ikona szybkiego uruchamiania"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Dodaje ikonę do paska Szybkiego Uruchamiania."
!insertmacro LANG_STRING Section_Plugins "Wtyczki opcjonalne"
!insertmacro LANG_STRING Section_Plugins_Desc "Wtyczki opcjonalne rozszerzające funkcjonalność."
!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Instaluje wtyczki FeedReader"
!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Instaluje wtyczki LinksCloud."
!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Instaluje wtyczki VOIP."
!insertmacro LANG_STRING Section_AutoStart "Auto Startup"
!insertmacro LANG_STRING Section_AutoStart_Desc "Automatyczne uruchamianie przy starcie."
!insertmacro LANG_STRING Page_InstallMode "Tryb instalacji"
!insertmacro LANG_STRING Page_InstallMode_Desc "Wybierz jak chcesz zainstalować ${APPNAME}."
!insertmacro LANG_STRING Page_InstallMode_Standard "&Standardowa instalacja"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Zainstaluj ${APPNAME} dla bieżącego użytkownika tej maszyny."
!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable installation"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "W trybie przenośnym wszystkie dane konfiguracyjne są przechowywane w folderze aplikacji i nie są zapisywane w rejestrze."
!insertmacro LANG_STRING Link_Uninstall "Odinstaluj"

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Установка ${APPNAME} и необходимых компонентов."
!insertmacro LANG_STRING Section_Data "Оболочки"
!insertmacro LANG_STRING Section_Data_Desc "Установка оболочек."
!insertmacro LANG_STRING Section_Shortcuts "Ярлыки"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Добавление ярлыков."
!insertmacro LANG_STRING Section_StartMenu "Ярлык в меню Пуск"
!insertmacro LANG_STRING Section_StartMenu_Desc "Добавление ярлыка в меню Пуск."
!insertmacro LANG_STRING Section_Desktop "Ярлык на рабочем столе"
!insertmacro LANG_STRING Section_Desktop_Desc "Добавление ярлыка на рабочий стол."
!insertmacro LANG_STRING Section_QuickLaunch "Ярлык в панели быстрого запуска"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Добавление ярлыка на панель быстрого запуска."
!insertmacro LANG_STRING Section_Plugins "Дополнительные плагины"
!insertmacro LANG_STRING Section_Plugins_Desc "Дополнительные плагины для расширения функциональности."
!insertmacro LANG_STRING Section_Plugin_FeedReader "FeedReader RSS-агрегатор"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "Установка плагина FeedReader."
!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud Облако ссылок"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "Установка плагина LinksCloud."
!insertmacro LANG_STRING Section_Plugin_VOIP "VoIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "Установка плагина VoIP."
!insertmacro LANG_STRING Section_AutoStart "Автозапуск"
!insertmacro LANG_STRING Section_AutoStart_Desc "Автозапуск при загрузке системы."
!insertmacro LANG_STRING Page_InstallMode "Режим установки"
!insertmacro LANG_STRING Page_InstallMode_Desc "Выберите метод установки ${APPNAME}."
!insertmacro LANG_STRING Page_InstallMode_Standard "Стандартная установка"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Установка ${APPNAME} для текущего пользователя компьютера."
!insertmacro LANG_STRING Page_InstallMode_Portable "Портативная установка"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "В режиме портативной установки все конфигурационные файлы сохраняются в папку приложения и в системный реестр не записывается никакой информации."
!insertmacro LANG_STRING Link_Uninstall "Удаление программы"

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "${APPNAME} ve gerekli bileşenleri kurar."
!insertmacro LANG_STRING Section_Data "Temalar"
!insertmacro LANG_STRING Section_Data_Desc "Tema yükleyin."
!insertmacro LANG_STRING Section_Shortcuts "Kısayol simgeleri"
!insertmacro LANG_STRING Section_Shortcuts_Desc "Kısayol simgesi ekleyin."
!insertmacro LANG_STRING Section_StartMenu "Başlat Menüsü simgesi"
!insertmacro LANG_STRING Section_StartMenu_Desc "Başlat menüsüne simge ekleyin."
!insertmacro LANG_STRING Section_Desktop "Masaüstü simgesi"
!insertmacro LANG_STRING Section_Desktop_Desc "Masaüstüne simge ekleyin."
!insertmacro LANG_STRING Section_QuickLaunch "Hızlı Başlat simgesi"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "Hızlı Başlat araç çubuğuna simge ekleyin."
!insertmacro LANG_STRING Section_Plugins "İsteğe bağlı eklentiler"
!insertmacro LANG_STRING Section_Plugins_Desc "İşlevselliği artırmak için isteğe bağlı eklentiler."
!insertmacro LANG_STRING Section_Plugin_FeedReader "AkışOkuyucu"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "AkışOkuyucu eklentisini yükleyin."
!insertmacro LANG_STRING Section_Plugin_LinksCloud "BağlantıBulutu"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "BağlantıBulutu eklentisini yükleyin."
!insertmacro LANG_STRING Section_Plugin_VOIP "VOIP"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "VOIP eklentisini yükleyin."
!insertmacro LANG_STRING Section_AutoStart "Otomatik Başlat"
!insertmacro LANG_STRING Section_AutoStart_Desc "ılışta otomatik başlatın."
!insertmacro LANG_STRING Page_InstallMode "Kurulum Yöntemi"
!insertmacro LANG_STRING Page_InstallMode_Desc "${APPNAME} kurulum şeklini seçin"
!insertmacro LANG_STRING Page_InstallMode_Standard "&Normal kurulum"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "${APPNAME} yalnızca şimdiki kullanıcı için kurulsun."
!insertmacro LANG_STRING Page_InstallMode_Portable "&Taşınabilir kurulum"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "Taşınabilir kipte tüm ayarlar uygulama klasörüne depolanır ve kayıt defterine hiçbir bilgi yazılmaz."
!insertmacro LANG_STRING Link_Uninstall "Kaldırın"

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="ca_ES" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation>${APPNAME}</translation>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation>Instal·la ${APPNAME} i els components necessaris.</translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation>Pells</translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation>Instal·la pells.</translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation>Icones d&apos;accés directe</translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation>Afegir icones d&apos;accés directe.</translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation>Icona del menú d&apos;inici</translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation>Afegir icona en el menú d&apos;inici</translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation>Icona d&apos;escriptori</translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation>Afegir icona a l&apos;escriptori</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation>Icona de la barra ràpida d&apos;accés</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation>Afegir icona a la barra ràpida d&apos;accés</translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation>Complements opcionals</translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation>Components opcionals per afegir funcionalitat.</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>LectorFonts</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>Instal·lar complement LectorFonts.</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation>NúvolEnllaços</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>Instal·lar complement NúvolEnllaços.</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation>VeuIP</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation>Instal·lar complement VeuIP.</translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation>Posada en marxa automàtica</translation>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation>Autoengegar al arrencar.</translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation>Mode instal·lació</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation>Escull com vols instal·lar ${APPNAME}.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation>Instal·lació e&amp;stàndard</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation>Instal·la ${APPNAME} per la sessió d&apos;usuari actual.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation>Instal·lació &amp;portable.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation>En mode portable les dades de configuració s&apos;emmagatzemen a la carpeta d&apos;aplicació i no s&apos;escriu informació al registre del sistema.</translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation>Desinstal·lar.</translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,27 @@
@echo off
:: Very simple conversion from *.ts to *.nsh using xslt
pushd "%~dp0"
if "%1"=="" (
for %%F in (*.ts) do if "%%F" NEQ "en.ts" call :convert %%~nF
goto :exit
)
call :convert %1
:exit
popd
goto :EOF
:convert
if not exist "%~1.ts" (
echo File "%~1.ts" not found.
goto :EOF
)
echo %~1
"%~dp0xsltproc.exe" --output "%~dp0..\%~1.nsh" "%~dp0convert_from_ts.xsl" "%~1.ts"

View file

@ -0,0 +1,20 @@
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:strip-space elements="*"/>
<xsl:template match="context">
<xsl:text>!insertmacro LANG_STRING </xsl:text>
<xsl:value-of select="./name"/>
<xsl:text> "</xsl:text>
<xsl:choose>
<xsl:when test="./message/translation!=''"><xsl:value-of select="./message/translation"/></xsl:when>
<xsl:otherwise><xsl:value-of select="./message/source"/></xsl:otherwise>
</xsl:choose>
<xsl:text>"
</xsl:text>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,50 @@
@echo off
:: Very simple conversion from *.nsh to *.ts
setlocal
set Language=en
if "%1" NEQ "" set Language=%1
set InputFile=%~dp0..\%Language%.nsh
set OutputFile=%~dp0%Language%.ts
if not exist "%InputFile%" (
echo File %InputFile% not found.
goto :exit
)
echo ^<?xml version="1.0" encoding="utf-8"?^> >"%OutputFile%"
echo ^<!DOCTYPE TS^> >>"%OutputFile%"
echo ^<TS version="2.0" language="en_US"^> >>"%OutputFile%"
for /F "tokens=1,2,3,*" %%A in (%InputFile%) do if "%%A"=="!insertmacro" call :context %%C %%D
echo ^</TS^> >>"%OutputFile%"
:exit
endlocal
goto :EOF
:context
setlocal EnableDelayedExpansion
:: Simple replace of & to &amp;
set Text=%2
set Text=%Text:&=^&amp;%
set Text=%Text:~1,-1%
echo !Text!
echo ^<context^> >>"%OutputFile%"
echo ^<name^>%~1^</name^> >>"%OutputFile%"
echo ^<message^> >>"%OutputFile%"
echo ^<source^>!Text!^</source^> >>"%OutputFile%"
echo ^<translation type="unfinished"^>^</translation^> >>"%OutputFile%"
echo ^</message^> >>"%OutputFile%"
echo ^</context^> >>"%OutputFile%"
endlocal
goto :EOF

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="de" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation>${APPNAME}</translation>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation>Installiert ${APPNAME} und die benötigten Komponenten.</translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation>Skins</translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation>Skins installieren.</translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation>Verknüpfungssymbole</translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation>Verküpfungssymbole hinzufügen.</translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation>Startmenüsymbol</translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation>Fügt Symbol zum Startmenü hinzu.</translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation>Desktopsymbol</translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation>Fügt Symbol zum Desktop hinzu.</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation>Schnellstartsymbol</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation>Fügt Symbol zur Schnellstartleiste hinzu.</translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation>Optionale Plug-ins</translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation>Optionale Plug-ins zum Erweitern der Funktionalität.</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>FeedReader</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>Installiert das Plug-in Feedreader.</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation>Verknüpfungswolke</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>Installiert das Plug-in Verknüpfungswolke.</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation>VOIP</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation>Installiert das Plug-in VOIP</translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation>Automatischer Programmstart</translation>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation>Beim Start automatisch ausführen.</translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation>Installationsmodus</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation>Wähle wie du ${APPNAME} installieren willst.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation>&amp;Standardinstallation</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation>Installiere ${APPNAME} für den derzeitigen Benutzer dieses Geräts.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation>&amp;Portable Installation</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation>Im portablen Modus werden alle Konfigurationsdaten im Verzeichnis der Anwendung gespeichert und keine Informationen in der Registry abgelegt.</translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation>Deinstallieren</translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,186 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.0" language="en_US">
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="es" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation>${APPNAME}</translation>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation>Instala ${APPNAME} y los componentes requeridos.</translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation>Coberturas (skins)</translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation>Instalar coberturas</translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation>Iconos de accesos directos</translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation>Añade iconos de accesos directos.</translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation>Icono de menú de inicio</translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation>Añade icono al menú de inicio.</translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation>Icono del escritorio</translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation>Añade icono al escritorio</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation>Icono de inicio rápido</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation>Añade icono a la Barra de Inicio Rápido</translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation>Complementos opcionales</translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation>Complementos opcionales para expandir la funcionalidad.</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>FeedReader</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>Instala el complemento FeedReader.</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation>LinksCloud</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>Instala el complemento LinksCloud.</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation>VOIP</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation>Instala el complemento VOIP</translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation>Auto iniciar</translation>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation>Auto-ejecutar al incio.</translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation>Modo de instalación</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation>Elija cómo quiere instalar ${APPNAME}.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation>Instalación &amp;Estándar</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation>Instalar ${APPNAME} para el usuario actual de esta máquina.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation>Instalación &amp;Portable</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation>En modo portable, todos los datos de configuración se almacenan en la carpeta de la aplicación y no se escribe ninguna información en el registro.</translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation>Desinstalar</translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="fr" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation>${APPNAME}</translation>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation>Installe ${APPNAME} et les composants requis.</translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation>Habillages</translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation>Installe des habillages.</translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation>Icônes de raccourci</translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation>Ajoute les icônes de raccourci.</translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation>Icône de menu démarrage</translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation>Ajoute l&apos;icône au menu démarrer.</translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation>Icônes de bureau</translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation>Ajoute l&apos;icône sur le bureau.</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation>Icône de lancement rapide</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation>Ajoute une icône à la barre d&apos;outils de lancement rapide.</translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation>Plug-ins optionnels</translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation>Plug-ins optionnels destinés à étendre les fonctionnalités.</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>FeedReader</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>Installe le plug-in FeedReader.</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation>LinksCloud</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>Installe le plug-in LinksCloud.</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation>VOIP</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation>Installe le plug-in VOIP.</translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation>Démarrage automatique</translation>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation>Démarrage automatique au démarrage.</translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation>Mode d&apos;installation</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation>Choisissez comment vous voulez installer ${APPNAME}.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation>&amp;Installation standard</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation>Installer ${APPNAME} pour l&apos;utilisateur actuel de cette machine.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation>&amp;Installation portable</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation>En mode portable toutes les données de configuration sont stockées dans le dossier de l&apos;application et aucune information n&apos;est écrite dans la base de registre.</translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation>Désinstaller</translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="pl" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation>${APPNAME}</translation>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation>Instaluje ${APPNAME} oraz wymagane komponenty.</translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation>Skórki</translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation>Instaluje skórki.</translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation>Ikony skrótów</translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation>Dodaje skróty ikon.</translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation>Dodaje ikonę do menu start.</translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation>Ikona na pulpicie</translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation>Dodawanie ikony na pulpicie</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation>Ikona szybkiego uruchamiania</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation>Dodaje ikonę do paska Szybkiego Uruchamiania.</translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation>Wtyczki opcjonalne</translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation>Wtyczki opcjonalne rozszerzające funkcjonalność.</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>FeedReader</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>Instaluje wtyczki FeedReader</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>Instaluje wtyczki LinksCloud.</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation>VOIP</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation>Instaluje wtyczki VOIP.</translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation>Automatyczne uruchamianie przy starcie.</translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation>Tryb instalacji</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation>Wybierz jak chcesz zainstalować ${APPNAME}.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation>&amp;Standardowa instalacja</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation>Zainstaluj ${APPNAME} dla bieżącego użytkownika tej maszyny.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation>W trybie przenośnym wszystkie dane konfiguracyjne przechowywane w folderze aplikacji i nie zapisywane w rejestrze.</translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation>Odinstaluj</translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="ru" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation>${APPNAME}</translation>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation>Установка ${APPNAME} и необходимых компонентов.</translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation>Оболочки</translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation>Установка оболочек.</translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation>Ярлыки</translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation>Добавление ярлыков.</translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation>Ярлык в меню Пуск</translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation>Добавление ярлыка в меню Пуск.</translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation>Ярлык на рабочем столе</translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation>Добавление ярлыка на рабочий стол.</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation>Ярлык в панели быстрого запуска</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation>Добавление ярлыка на панель быстрого запуска.</translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation>Дополнительные плагины</translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation>Дополнительные плагины для расширения функциональности.</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>FeedReader RSS-агрегатор</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>Установка плагина FeedReader.</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation>LinksCloud Облако ссылок</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>Установка плагина LinksCloud.</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation>VoIP</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation>Установка плагина VoIP.</translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation>Автозапуск</translation>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation>Автозапуск при загрузке системы.</translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation>Режим установки</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation>Выберите метод установки ${APPNAME}.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation>Стандартная установка</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation>Установка ${APPNAME} для текущего пользователя компьютера.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation>Портативная установка</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation>В режиме портативной установки все конфигурационные файлы сохраняются в папку приложения и в системный реестр не записывается никакой информации.</translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation>Удаление программы</translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="tr" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation>${APPNAME}</translation>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation>${APPNAME} ve gerekli bileşenleri kurar.</translation>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation>Temalar</translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation>Tema yükleyin.</translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation>Kısayol simgeleri</translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation>Kısayol simgesi ekleyin.</translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation>Başlat Menüsü simgesi</translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation>Başlat menüsüne simge ekleyin.</translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation>Masaüstü simgesi</translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation>Masaüstüne simge ekleyin.</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation>Hızlı Başlat simgesi</translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation>Hızlı Başlat araç çubuğuna simge ekleyin.</translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation>İsteğe bağlı eklentiler</translation>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation>İşlevselliği artırmak için isteğe bağlı eklentiler.</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>AkışOkuyucu</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>AkışOkuyucu eklentisini yükleyin.</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation>BağlantıBulutu</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>BağlantıBulutu eklentisini yükleyin.</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation>VOIP</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation>VOIP eklentisini yükleyin.</translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation>Otomatik Başlat</translation>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation>ılışta otomatik başlatın.</translation>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation>Kurulum Yöntemi</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation>${APPNAME} kurulum şeklini seçin</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation>&amp;Normal kurulum</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation>${APPNAME} yalnızca şimdiki kullanıcı için kurulsun.</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation>&amp;Taşınabilir kurulum</translation>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation>Taşınabilir kipte tüm ayarlar uygulama klasörüne depolanır ve kayıt defterine hiçbir bilgi yazılmaz.</translation>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation>Kaldırın</translation>
</message>
</context>
</TS>

Binary file not shown.

View file

@ -0,0 +1,205 @@
<?xml version="1.0" ?><!DOCTYPE TS><TS language="zh_CN" version="2.0">
<context>
<name>Section_Main</name>
<message>
<source>${APPNAME}</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_Main_Desc</name>
<message>
<source>Installs ${APPNAME} and required components.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_Data</name>
<message>
<source>Skins</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_Data_Desc</name>
<message>
<source>Installs skins.</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_Shortcuts</name>
<message>
<source>Shortcut icons</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_Shortcuts_Desc</name>
<message>
<source>Adds shortcut icons.</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_StartMenu</name>
<message>
<source>Start Menu icon</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_StartMenu_Desc</name>
<message>
<source>Adds icon to start menu.</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_Desktop</name>
<message>
<source>Desktop icon</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_Desktop_Desc</name>
<message>
<source>Adds icon to desktop.</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_QuickLaunch</name>
<message>
<source>Quick Launch icon</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_QuickLaunch_Desc</name>
<message>
<source>Adds icon to Quick Launch toolbar.</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_Plugins</name>
<message>
<source>Optional plugins</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_Plugins_Desc</name>
<message>
<source>Optional plugins to extend functionality.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader</name>
<message>
<source>FeedReader</source>
<translation>RSS订阅</translation>
</message>
</context>
<context>
<name>Section_Plugin_FeedReader_Desc</name>
<message>
<source>Installs plugin FeedReader.</source>
<translation>RSS订阅插件</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud</name>
<message>
<source>LinksCloud</source>
<translation>LinksCloud</translation>
</message>
</context>
<context>
<name>Section_Plugin_LinksCloud_Desc</name>
<message>
<source>Installs plugin LinksCloud.</source>
<translation>LinksCloud</translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP</name>
<message>
<source>VOIP</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_Plugin_VOIP_Desc</name>
<message>
<source>Installs plugin VOIP.</source>
<translation></translation>
</message>
</context>
<context>
<name>Section_AutoStart</name>
<message>
<source>Auto Startup</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Section_AutoStart_Desc</name>
<message>
<source>Auto-Run at startup.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Page_InstallMode</name>
<message>
<source>Installation Mode</source>
<translation></translation>
</message>
</context>
<context>
<name>Page_InstallMode_Desc</name>
<message>
<source>Choose how you want to install ${APPNAME}.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Page_InstallMode_Standard</name>
<message>
<source>&amp;Standard installation</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Page_InstallMode_Standard_Desc</name>
<message>
<source>Install ${APPNAME} for the current user of this machine.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Page_InstallMode_Portable</name>
<message>
<source>&amp;Portable installation</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Page_InstallMode_Portable_Desc</name>
<message>
<source>In portable mode all configuration data is stored in the application folder and no information is written to the registry.</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Link_Uninstall</name>
<message>
<source>Uninstall</source>
<translation></translation>
</message>
</context>
</TS>

View file

@ -0,0 +1,29 @@
!insertmacro LANG_STRING Section_Main "${APPNAME}"
!insertmacro LANG_STRING Section_Main_Desc "Installs ${APPNAME} and required components."
!insertmacro LANG_STRING Section_Data "皮肤"
!insertmacro LANG_STRING Section_Data_Desc "安装皮肤"
!insertmacro LANG_STRING Section_Shortcuts "快捷方式图标"
!insertmacro LANG_STRING Section_Shortcuts_Desc "添加快捷方式图标"
!insertmacro LANG_STRING Section_StartMenu "开始菜单图标"
!insertmacro LANG_STRING Section_StartMenu_Desc "添加图标至开始菜单"
!insertmacro LANG_STRING Section_Desktop "桌面图标"
!insertmacro LANG_STRING Section_Desktop_Desc "添加图标至桌面"
!insertmacro LANG_STRING Section_QuickLaunch "快速启动栏图标"
!insertmacro LANG_STRING Section_QuickLaunch_Desc "添加图标至快速启动栏"
!insertmacro LANG_STRING Section_Plugins "Optional plugins"
!insertmacro LANG_STRING Section_Plugins_Desc "Optional plugins to extend functionality."
!insertmacro LANG_STRING Section_Plugin_FeedReader "RSS订阅"
!insertmacro LANG_STRING Section_Plugin_FeedReader_Desc "安装RSS订阅插件"
!insertmacro LANG_STRING Section_Plugin_LinksCloud "LinksCloud"
!insertmacro LANG_STRING Section_Plugin_LinksCloud_Desc "安装插件LinksCloud"
!insertmacro LANG_STRING Section_Plugin_VOIP "语音"
!insertmacro LANG_STRING Section_Plugin_VOIP_Desc "安装语音插件"
!insertmacro LANG_STRING Section_AutoStart "Auto Startup"
!insertmacro LANG_STRING Section_AutoStart_Desc "Auto-Run at startup."
!insertmacro LANG_STRING Page_InstallMode "安装模式"
!insertmacro LANG_STRING Page_InstallMode_Desc "Choose how you want to install ${APPNAME}."
!insertmacro LANG_STRING Page_InstallMode_Standard "&Standard installation"
!insertmacro LANG_STRING Page_InstallMode_Standard_Desc "Install ${APPNAME} for the current user of this machine."
!insertmacro LANG_STRING Page_InstallMode_Portable "&Portable installation"
!insertmacro LANG_STRING Page_InstallMode_Portable_Desc "In portable mode all configuration data is stored in the application folder and no information is written to the registry."
!insertmacro LANG_STRING Link_Uninstall "卸载"

View file

@ -0,0 +1,471 @@
; Script generated with the Venis Install Wizard & modified by defnax
; Reworked by Thunder
# Needed defines
;!define BUILDADD ""
;!define RELEASEDIR ""
;!define QTDIR ""
;!define MINGWDIR ""
# Optional defines
;!define OUTDIR ""
# Check needed defines
!ifndef BUILDADD
!error "BUILDADD is not defined"
!endif
!ifndef RELEASEDIR
!error "RELEASEDIR is not defined"
!endif
!ifndef QTDIR
!error "QTDIR is not defined"
!endif
!ifndef MINGWDIR
!error "MINGWDIR is not defined"
!endif
# Check optional defines
!ifdef OUTDIR
!define OUTDIR_ "${OUTDIR}\"
!else
!define OUTDIR ""
!define OUTDIR_ ""
!endif
!ifndef INSTALLERADD
!define INSTALLERADD ""
!endif
# Source directory
!define SOURCEDIR "..\..\.."
# Get version from executable
!GetDllVersion "${RELEASEDIR}\retroshare-gui\src\release\RetroShare06.exe" VERSION_
!define VERSION ${VERSION_1}.${VERSION_2}.${VERSION_3}${BUILDADD}
;!define REVISION ${VERSION_4}
# Get version of Qt
!GetDllVersion "${QTDIR}\bin\QtCore4.dll" QTVERSION_
!define QTVERSION ${QTVERSION_1}.${QTVERSION_2}.${QTVERSION_3}
# Check version
!ifndef REVISION
!error "REVISION is not defined"
!endif
!ifndef REVISION
!error "REVISION is not defined"
!endif
# Date
!define /date Date "%Y%m%d"
# Application name and version
!define APPNAME "RetroShare"
!define APPNAMEANDVERSION "${APPNAME} ${VERSION}"
!define PUBLISHER "RetroShare Team"
# Install path
!define INSTDIR_NORMAL "$ProgramFiles\${APPNAME}"
!define INSTDIR_PORTABLE "$Desktop\${APPNAME}"
!define DATADIR_NORMAL "$APPDATA\${APPNAME}"
!define DATADIR_PORTABLE "$INSTDIR\Data"
# Main Install settings
Name "${APPNAMEANDVERSION}"
InstallDirRegKey HKLM "Software\${APPNAME}" ""
OutFile "${OUTDIR_}RetroShare-${VERSION}-${Date}-${REVISION}-Qt${QTVERSION}${INSTALLERADD}-setup.exe"
BrandingText "${APPNAMEANDVERSION}"
RequestExecutionlevel highest
# Use compression
SetCompressor /SOLID LZMA
# Global variables
Var PortableMode
Var InstDirNormal
Var InstDirPortable
Var DataDir
Var StyleSheetDir
# Modern interface settings
!include Sections.nsh
!include nsDialogs.nsh
!include "MUI.nsh"
# Interface Settings
!define MUI_ABORTWARNING
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP "${SOURCEDIR}\build_scripts\Windows\installer\HeaderImage.bmp"
;!define MUI_WELCOMEFINISHPAGE_BITMAP "...bmp"
# MUI defines
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
!define MUI_FINISHPAGE_NOAUTOCLOSE
!define MUI_LICENSEPAGE_RADIOBUTTONS
!define MUI_COMPONENTSPAGE_SMALLDESC
!define MUI_FINISHPAGE_LINK "Visit the RetroShare forum for the latest news and support"
!define MUI_FINISHPAGE_LINK_LOCATION "http://retroshare.sourceforge.net/forum/"
!define MUI_FINISHPAGE_RUN "$INSTDIR\RetroShare06.exe"
!define MUI_FINISHPAGE_SHOWREADME $INSTDIR\changelog.txt
!define MUI_FINISHPAGE_SHOWREADME_TEXT changelog.txt
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
!define MUI_UNFINISHPAGE_NOAUTOCLOSE
;!define MUI_LANGDLL_REGISTRY_ROOT HKLM
;!define MUI_LANGDLL_REGISTRY_KEY ${REGKEY}
;!define MUI_LANGDLL_REGISTRY_VALUENAME InstallerLanguage
# Defines the un-/installer logo of RetroShare
!insertmacro MUI_DEFAULT MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange.bmp"
!insertmacro MUI_DEFAULT MUI_UNWELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange-uninstall.bmp"
# Installer pages
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "$(myLicenseData)"
Page Custom PortableModePageCreate PortableModePageLeave
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE dir_leave
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
# Set languages (first is default language)
!insertmacro MUI_RESERVEFILE_LANGDLL
# Installer languages
!define MUI_LANGDLL_ALLLANGUAGES
# Translations
!macro LANG_LOAD LANGUAGE LANGCODE LANGID LICENCEFILE
!insertmacro MUI_LANGUAGE "${LANGUAGE}"
; !verbose off
!define LANG "${LANGUAGE}"
!include "lang\${LANGCODE}.nsh"
LangString LANGUAGEID "${LANG_${LANG}}" "1031"
LicenseLangString myLicenseData ${LANGCODE} ${LICENCEFILE}
; !verbose on
!undef LANG
!macroend
!macro LANG_STRING NAME VALUE
LangString "${NAME}" "${LANG_${LANG}}" "${VALUE}"
!macroend
!insertmacro LANG_LOAD "English" "en" "1033" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "French" "fr" "1036" "${SOURCEDIR}\retroshare-gui\src\license\license-FR.txt"
!insertmacro LANG_LOAD "German" "de" "1031" "${SOURCEDIR}\retroshare-gui\src\license\license-GER.txt"
!insertmacro LANG_LOAD "Turkish" "tr" "1055" "${SOURCEDIR}\retroshare-gui\src\license\license-TR.txt"
!insertmacro LANG_LOAD "SimpChinese" "zh_CN" "2052" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Polish" "pl" "1045" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Spanish" "es" "1034" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Russian" "ru" "1049" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Catalan" "ca_ES" "1027" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
LicenseData $(myLicenseData)
# Main binaries
Section $(Section_Main) Section_Main
;Set Section required
SectionIn RO
; Set Section properties
SetOverwrite on
; Clears previous error logs
; Delete "$INSTDIR\*.log"
; Main binaries
SetOutPath "$INSTDIR"
File /oname=RetroShare06.exe "${RELEASEDIR}\retroshare-gui\src\release\RetroShare06.exe"
File /oname=retroshare06-nogui.exe "${RELEASEDIR}\retroshare-nogui\src\release\RetroShare06-nogui.exe"
; Qt binaries
File "${QTDIR}\bin\QtCore4.dll"
File "${QTDIR}\bin\QtGui4.dll"
File "${QTDIR}\bin\QtMultimedia4.dll"
File "${QTDIR}\bin\QtNetwork4.dll"
File "${QTDIR}\bin\QtSvg4.dll"
File "${QTDIR}\bin\QtXml4.dll"
; MinGW binaries
File "${MINGWDIR}\bin\libstdc++-6.dll"
File "${MINGWDIR}\bin\libgcc_s_dw2-1.dll"
File "${MINGWDIR}\bin\libwinpthread-1.dll"
; External binaries
File "${SOURCEDIR}\..\libs\bin\miniupnpc.dll"
File "${SOURCEDIR}\..\libs\bin\libeay32.dll"
File "${SOURCEDIR}\..\libs\bin\ssleay32.dll"
; Other files
File "${SOURCEDIR}\retroshare-gui\src\changelog.txt"
File "${SOURCEDIR}\libbitdht\src\bitdht\bdboot.txt"
; Image formats
SetOutPath "$INSTDIR\imageformats"
File /r "${QTDIR}\plugins\imageformats\qgif4.dll"
File /r "${QTDIR}\plugins\imageformats\qico4.dll"
File /r "${QTDIR}\plugins\imageformats\qjpeg4.dll"
File /r "${QTDIR}\plugins\imageformats\qmng4.dll"
File /r "${QTDIR}\plugins\imageformats\qsvg4.dll"
File /r "${QTDIR}\plugins\imageformats\qtga4.dll"
File /r "${QTDIR}\plugins\imageformats\qtiff4.dll"
; Sounds
SetOutPath "$INSTDIR\sounds"
File /r "${SOURCEDIR}\retroshare-gui\src\sounds\*.*"
; Translations
SetOutPath "$INSTDIR\translations"
File /r "${SOURCEDIR}\retroshare-gui\src\translations\*.qm"
File /r "${QTDIR}\translations\qt_*.qm"
; WebUI
SetOutPath "$INSTDIR\webui"
File /r "${SOURCEDIR}\libresapi\src\webui\*.*"
; License
SetOutPath "$INSTDIR\license"
File /r "${SOURCEDIR}\retroshare-gui\src\license\*.*"
SectionEnd
# Plugins
SectionGroup $(Section_Plugins) Section_Plugins
Section $(Section_Plugin_FeedReader) Section_Plugin_FeedReader
SetOutPath "$DataDir\extensions6"
File "${RELEASEDIR}\plugins\FeedReader\release\FeedReader.dll"
SectionEnd
Section $(Section_Plugin_VOIP) Section_Plugin_VOIP
SetOutPath "$DataDir\extensions6"
File "${RELEASEDIR}\plugins\VOIP\release\VOIP.dll"
SectionEnd
SectionGroupEnd
# Data (Styles)
Section $(Section_Data) Section_Data
; Set Section properties
SetOverwrite on
; Chat style
SetOutPath "$StyleSheetDir\stylesheets\Bubble"
File /r "${SOURCEDIR}\retroshare-gui\src\gui\qss\chat\Bubble\*.*"
SetOutPath "$StyleSheetDir\stylesheets\Bubble_Compact"
File /r "${SOURCEDIR}\retroshare-gui\src\gui\qss\chat\Bubble_Compact\*.*"
; Stylesheets
SetOutPath "$INSTDIR\qss"
File /r "${SOURCEDIR}\retroshare-gui\src\qss\*.*"
SectionEnd
;Section $(Section_Link) Section_Link
; Delete any existing keys
; Write the file association
; WriteRegStr HKCR .pqi "" retroshare
; WriteRegStr HKCR retroshare "" "PQI File"
; WriteRegBin HKCR retroshare EditFlags 00000100
; WriteRegStr HKCR "retroshare\shell" "" open
; WriteRegStr HKCR "retroshare\shell\open\command" "" `"$INSTDIR\RetroShare06.exe" "%1"`
;SectionEnd
# Shortcuts
SectionGroup $(Section_Shortcuts) Section_Shortcuts
Section $(Section_StartMenu) Section_StartMenu
SetOutPath "$INSTDIR"
CreateDirectory "$SMPROGRAMS\${APPNAME}"
CreateShortCut "$SMPROGRAMS\${APPNAME}\$(Link_Uninstall).lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
CreateShortCut "$SMPROGRAMS\${APPNAME}\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe" 0
SectionEnd
Section $(Section_Desktop) Section_Desktop
CreateShortCut "$DESKTOP\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe" 0
SectionEnd
Section $(Section_QuickLaunch) Section_QuickLaunch
CreateShortCut "$QUICKLAUNCH\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe" 0
SectionEnd
SectionGroupEnd
Section $(Section_AutoStart) Section_AutoStart
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "RetroShare" "$INSTDIR\${APPNAME}06.exe -m"
SectionEnd
;Section $(Section_AutoStart) Section_AutoStart
; CreateShortCut "$SMSTARTUP\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe -m" 0
;SectionEnd
Section -FinishSection
${If} $PortableMode = 0
WriteRegStr HKLM "Software\${APPNAME}" "" "$INSTDIR"
WriteRegStr HKLM "Software\${APPNAME}" "Version" "${VERSION}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayName" "${APPNAME}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayVersion" "${VERSION}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayIcon" "$INSTDIR\RetroShare06.exe"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "Publisher" "${PUBLISHER}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "NoModify" "1"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "NoRepair" "1"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "UninstallString" "$INSTDIR\uninstall.exe"
WriteUninstaller "$INSTDIR\uninstall.exe"
${Else}
; Create the file the application uses to detect portable mode
FileOpen $0 "$INSTDIR\portable" w
FileClose $0
${EndIf}
SectionEnd
# Descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Main} $(Section_Main_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Data} $(Section_Data_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Shortcuts} $(Section_Shortcuts_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_StartMenu} $(Section_StartMenu_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Desktop} $(Section_Desktop_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_QuickLaunch} $(Section_QuickLaunch_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugins} $(Section_Plugins_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugin_FeedReader} $(Section_Plugin_FeedReader_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugin_VOIP} $(Section_Plugin_VOIP_Desc)
; !insertmacro MUI_DESCRIPTION_TEXT ${Section_Link} $(Section_Link_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_AutoStart} $(Section_AutoStart_Desc)
!insertmacro MUI_FUNCTION_DESCRIPTION_END
# Uninstall
Section "Uninstall"
; Remove file association registry keys
; DeleteRegKey HKCR .pqi
DeleteRegKey HKCR RetroShare
; Remove program/uninstall regsitry keys
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}"
DeleteRegKey HKLM SOFTWARE\${APPNAME}
DeleteRegValue HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "RetroShare"
; Remove shortcuts, if any
Delete "$SMPROGRAMS\${APPNAME}\*.*"
; Remove desktop shortcut
Delete "$DESKTOP\${APPNAME}.lnk"
; Remove Quicklaunch shortcut
Delete "$QUICKLAUNCH\${APPNAME}.lnk"
; Remove Autstart
Delete "$SMSTARTUP\${APPNAME}.lnk"
; Remove directories used
RMDir "$SMPROGRAMS\${APPNAME}"
RMDir /r "$INSTDIR"
; Don't remove the directory, otherwise
; we lose the XPGP keys.
; Should make this an option though...
RMDir /r "${DATADIR_NORMAL}\extensions6"
RMDir /r "${DATADIR_NORMAL}\stylesheets"
SectionEnd
Function .onInit
StrCpy $InstDirNormal "${INSTDIR_NORMAL}"
StrCpy $InstDirPortable "${INSTDIR_PORTABLE}"
StrCpy $PortableMode 0
StrCpy $INSTDIR "$InstDirNormal"
StrCpy $DataDir "${DATADIR_NORMAL}"
InitPluginsDir
Push $R1
File /oname=$PLUGINSDIR\spltmp.bmp "${SOURCEDIR}\retroshare-gui\src\gui\images\logo\logo_splash.png"
advsplash::show 1200 1000 1000 -1 $PLUGINSDIR\spltmp
Pop $R1
Pop $R1
!insertmacro MUI_LANGDLL_DISPLAY
FunctionEnd
# Installation mode
Function RequireAdmin
UserInfo::GetAccountType
Pop $8
${If} $8 != "admin"
MessageBox MB_ICONSTOP "You need administrator rights to install ${APPNAME}"
SetErrorLevel 740 ;ERROR_ELEVATION_REQUIRED
Abort
${EndIf}
FunctionEnd
Function SetModeDestinationFromInstdir
${If} $PortableMode = 0
StrCpy $InstDirNormal $INSTDIR
${Else}
StrCpy $InstDirPortable $INSTDIR
${EndIf}
FunctionEnd
Function PortableModePageCreate
Call SetModeDestinationFromInstdir ; If the user clicks BACK on the directory page we will remember their mode specific directory
!insertmacro MUI_HEADER_TEXT $(Page_InstallMode) $(Page_InstallMode_Desc)
nsDialogs::Create 1018
Pop $0
${NSD_CreateRadioButton} 5u 25u -10u 8u $(Page_InstallMode_Standard)
Pop $1
${NSD_CreateLabel} 18u 40u -10u 24u $(Page_InstallMode_Standard_Desc)
Pop $0
${NSD_CreateRadioButton} 5u 75u -10u 8u $(Page_InstallMode_Portable)
Pop $2
${NSD_CreateLabel} 18u 90u -10u 24u $(Page_InstallMode_Portable_Desc)
Pop $0
${If} $PortableMode = 0
SendMessage $1 ${BM_SETCHECK} ${BST_CHECKED} 0
${Else}
SendMessage $2 ${BM_SETCHECK} ${BST_CHECKED} 0
${EndIf}
nsDialogs::Show
FunctionEnd
Function PortableModePageLeave
${NSD_GetState} $1 $0
${If} $0 <> ${BST_UNCHECKED}
StrCpy $PortableMode 0
StrCpy $INSTDIR $InstDirNormal
Call RequireAdmin
; Enable sections
SectionSetText ${Section_Shortcuts} $(Section_Shortcuts)
SectionSetText ${Section_StartMenu} $(Section_StartMenu)
SectionSetText ${Section_Desktop} $(Section_Desktop)
SectionSetText ${Section_QuickLaunch} $(Section_QuickLaunch)
SectionSetText ${Section_AutoStart} $(Section_AutoStart)
!insertmacro SelectSection ${Section_Shortcuts}
!insertmacro SelectSection ${Section_AutoStart}
!insertmacro SelectSection ${Section_StartMenu}
!insertmacro SelectSection ${Section_Desktop}
!insertmacro SelectSection ${Section_QuickLaunch}
${Else}
StrCpy $PortableMode 1
StrCpy $INSTDIR $InstDirPortable
; Disable sections
!insertmacro UnselectSection ${Section_Shortcuts}
!insertmacro UnselectSection ${Section_AutoStart}
!insertmacro UnselectSection ${Section_StartMenu}
!insertmacro UnselectSection ${Section_Desktop}
!insertmacro UnselectSection ${Section_QuickLaunch}
SectionSetText ${Section_Shortcuts} ""
SectionSetText ${Section_StartMenu} ""
SectionSetText ${Section_Desktop} ""
SectionSetText ${Section_QuickLaunch} ""
SectionSetText ${Section_AutoStart} ""
${EndIf}
FunctionEnd
Function dir_leave
${If} $PortableMode = 0
StrCpy $DataDir "${DATADIR_NORMAL}"
StrCpy $StyleSheetDir $DataDir
${Else}
StrCpy $DataDir "${DATADIR_PORTABLE}"
StrCpy $StyleSheetDir $INSTDIR
${EndIf}
FunctionEnd

View file

@ -0,0 +1,489 @@
; Script generated with the Venis Install Wizard & modified by defnax
; Reworked by Thunder
# Needed defines
;!define BUILDADD ""
;!define RELEASEDIR ""
;!define QTDIR ""
;!define MINGWDIR ""
# Optional defines
;!define OUTDIR ""
# Check needed defines
!ifndef BUILDADD
!error "BUILDADD is not defined"
!endif
!ifndef RELEASEDIR
!error "RELEASEDIR is not defined"
!endif
!ifndef QTDIR
!error "QTDIR is not defined"
!endif
!ifndef MINGWDIR
!error "MINGWDIR is not defined"
!endif
# Check optional defines
!ifdef OUTDIR
!define OUTDIR_ "${OUTDIR}\"
!else
!define OUTDIR ""
!define OUTDIR_ ""
!endif
!ifndef INSTALLERADD
!define INSTALLERADD ""
!endif
# Source directory
!define SOURCEDIR "..\..\.."
# Get version from executable
!GetDllVersion "${RELEASEDIR}\retroshare-gui\src\release\RetroShare06.exe" VERSION_
!define VERSION ${VERSION_1}.${VERSION_2}.${VERSION_3}${BUILDADD}
;!define REVISION ${VERSION_4}
# Get version of Qt
!GetDllVersion "${QTDIR}\bin\Qt5Core.dll" QTVERSION_
!define QTVERSION ${QTVERSION_1}.${QTVERSION_2}.${QTVERSION_3}
# Check version
!ifndef REVISION
!error "REVISION is not defined"
!endif
!ifndef REVISION
!error "REVISION is not defined"
!endif
# Date
!define /date Date "%Y%m%d"
# Application name and version
!define APPNAME "RetroShare"
!define APPNAMEANDVERSION "${APPNAME} ${VERSION}"
!define PUBLISHER "RetroShare Team"
# Install path
!define INSTDIR_NORMAL "$ProgramFiles\${APPNAME}"
!define INSTDIR_PORTABLE "$Desktop\${APPNAME}"
!define DATADIR_NORMAL "$APPDATA\${APPNAME}"
!define DATADIR_PORTABLE "$INSTDIR\Data"
# Main Install settings
Name "${APPNAMEANDVERSION}"
InstallDirRegKey HKLM "Software\${APPNAME}" ""
OutFile "${OUTDIR_}RetroShare-${VERSION}-${Date}-${REVISION}-Qt${QTVERSION}${INSTALLERADD}-setup.exe"
BrandingText "${APPNAMEANDVERSION}"
RequestExecutionlevel highest
# Use compression
SetCompressor /SOLID LZMA
# Global variables
Var PortableMode
Var InstDirNormal
Var InstDirPortable
Var DataDir
Var StyleSheetDir
# Modern interface settings
!include Sections.nsh
!include nsDialogs.nsh
!include "MUI.nsh"
# Interface Settings
!define MUI_ABORTWARNING
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP "${SOURCEDIR}\build_scripts\Windows\installer\HeaderImage.bmp"
;!define MUI_WELCOMEFINISHPAGE_BITMAP "...bmp"
# MUI defines
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
!define MUI_FINISHPAGE_NOAUTOCLOSE
!define MUI_LICENSEPAGE_RADIOBUTTONS
!define MUI_COMPONENTSPAGE_SMALLDESC
!define MUI_FINISHPAGE_LINK "Visit the RetroShare forum for the latest news and support"
!define MUI_FINISHPAGE_LINK_LOCATION "http://retroshare.sourceforge.net/forum/"
!define MUI_FINISHPAGE_RUN "$INSTDIR\RetroShare06.exe"
!define MUI_FINISHPAGE_SHOWREADME $INSTDIR\changelog.txt
!define MUI_FINISHPAGE_SHOWREADME_TEXT changelog.txt
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
!define MUI_UNFINISHPAGE_NOAUTOCLOSE
;!define MUI_LANGDLL_REGISTRY_ROOT HKLM
;!define MUI_LANGDLL_REGISTRY_KEY ${REGKEY}
;!define MUI_LANGDLL_REGISTRY_VALUENAME InstallerLanguage
# Defines the un-/installer logo of RetroShare
!insertmacro MUI_DEFAULT MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange.bmp"
!insertmacro MUI_DEFAULT MUI_UNWELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange-uninstall.bmp"
# Installer pages
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "$(myLicenseData)"
Page Custom PortableModePageCreate PortableModePageLeave
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE dir_leave
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
# Set languages (first is default language)
!insertmacro MUI_RESERVEFILE_LANGDLL
# Installer languages
!define MUI_LANGDLL_ALLLANGUAGES
# Translations
!macro LANG_LOAD LANGUAGE LANGCODE LANGID LICENCEFILE
!insertmacro MUI_LANGUAGE "${LANGUAGE}"
; !verbose off
!define LANG "${LANGUAGE}"
!include "lang\${LANGCODE}.nsh"
LangString LANGUAGEID "${LANG_${LANG}}" "1031"
LicenseLangString myLicenseData ${LANGCODE} ${LICENCEFILE}
; !verbose on
!undef LANG
!macroend
!macro LANG_STRING NAME VALUE
LangString "${NAME}" "${LANG_${LANG}}" "${VALUE}"
!macroend
!insertmacro LANG_LOAD "English" "en" "1033" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "French" "fr" "1036" "${SOURCEDIR}\retroshare-gui\src\license\license-FR.txt"
!insertmacro LANG_LOAD "German" "de" "1031" "${SOURCEDIR}\retroshare-gui\src\license\license-GER.txt"
!insertmacro LANG_LOAD "Turkish" "tr" "1055" "${SOURCEDIR}\retroshare-gui\src\license\license-TR.txt"
!insertmacro LANG_LOAD "SimpChinese" "zh_CN" "2052" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Polish" "pl" "1045" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Spanish" "es" "1034" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Russian" "ru" "1049" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
!insertmacro LANG_LOAD "Catalan" "ca_ES" "1027" "${SOURCEDIR}\retroshare-gui\src\license\license.txt"
LicenseData $(myLicenseData)
# Main binaries
Section $(Section_Main) Section_Main
;Set Section required
SectionIn RO
; Set Section properties
SetOverwrite on
; Clears previous error logs
; Delete "$INSTDIR\*.log"
; Main binaries
SetOutPath "$INSTDIR"
File /oname=RetroShare06.exe "${RELEASEDIR}\retroshare-gui\src\release\RetroShare06.exe"
File /oname=retroshare06-nogui.exe "${RELEASEDIR}\retroshare-nogui\src\release\RetroShare06-nogui.exe"
; Qt binaries
File "${QTDIR}\bin\Qt5Core.dll"
File "${QTDIR}\bin\Qt5Gui.dll"
File "${QTDIR}\bin\Qt5Multimedia.dll"
File "${QTDIR}\bin\Qt5Network.dll"
File "${QTDIR}\bin\Qt5PrintSupport.dll"
File "${QTDIR}\bin\Qt5Svg.dll"
File "${QTDIR}\bin\Qt5Widgets.dll"
File "${QTDIR}\bin\Qt5Xml.dll"
; Qt audio
SetOutPath "$INSTDIR\audio"
File /r "${QTDIR}\plugins\audio\qtaudio_windows.dll"
; Qt platforms
SetOutPath "$INSTDIR\platforms"
File /r "${QTDIR}\plugins\platforms\qwindows.dll"
; MinGW binaries
SetOutPath "$INSTDIR"
File "${MINGWDIR}\bin\libstdc++-6.dll"
File "${MINGWDIR}\bin\libgcc_s_dw2-1.dll"
File "${MINGWDIR}\bin\libwinpthread-1.dll"
; External binaries
File "${SOURCEDIR}\..\libs\bin\miniupnpc.dll"
File "${SOURCEDIR}\..\libs\bin\libeay32.dll"
File "${SOURCEDIR}\..\libs\bin\ssleay32.dll"
; Other files
File "${SOURCEDIR}\retroshare-gui\src\changelog.txt"
File "${SOURCEDIR}\libbitdht\src\bitdht\bdboot.txt"
; Image formats
SetOutPath "$INSTDIR\imageformats"
File /r "${QTDIR}\plugins\imageformats\qgif.dll"
File /r "${QTDIR}\plugins\imageformats\qicns.dll"
File /r "${QTDIR}\plugins\imageformats\qico.dll"
File /r "${QTDIR}\plugins\imageformats\qjpeg.dll"
File /r "${QTDIR}\plugins\imageformats\qsvg.dll"
File /r "${QTDIR}\plugins\imageformats\qtga.dll"
File /r "${QTDIR}\plugins\imageformats\qtiff.dll"
File /r "${QTDIR}\plugins\imageformats\qwbmp.dll"
File /r "${QTDIR}\plugins\imageformats\qwebp.dll"
; Sounds
SetOutPath "$INSTDIR\sounds"
File /r "${SOURCEDIR}\retroshare-gui\src\sounds\*.*"
; Translations
SetOutPath "$INSTDIR\translations"
File /r "${SOURCEDIR}\retroshare-gui\src\translations\*.qm"
File /r "${QTDIR}\translations\qt_*.qm"
File /r "${QTDIR}\translations\qtbase_*.qm"
File /r "${QTDIR}\translations\qtscript_*.qm"
File /r "${QTDIR}\translations\qtquick1_*.qm"
File /r "${QTDIR}\translations\qtmultimedia_*.qm"
File /r "${QTDIR}\translations\qtxmlpatterns_*.qm"
; WebUI
SetOutPath "$INSTDIR\webui"
File /r "${SOURCEDIR}\libresapi\src\webui\*.*"
; License
SetOutPath "$INSTDIR\license"
File /r "${SOURCEDIR}\retroshare-gui\src\license\*.*"
SectionEnd
# Plugins
SectionGroup $(Section_Plugins) Section_Plugins
Section $(Section_Plugin_FeedReader) Section_Plugin_FeedReader
SetOutPath "$DataDir\extensions6"
File "${RELEASEDIR}\plugins\FeedReader\release\FeedReader.dll"
SectionEnd
Section $(Section_Plugin_VOIP) Section_Plugin_VOIP
SetOutPath "$DataDir\extensions6"
File "${RELEASEDIR}\plugins\VOIP\release\VOIP.dll"
SectionEnd
SectionGroupEnd
# Data (Styles)
Section $(Section_Data) Section_Data
; Set Section properties
SetOverwrite on
; Chat style
SetOutPath "$StyleSheetDir\stylesheets\Bubble"
File /r "${SOURCEDIR}\retroshare-gui\src\gui\qss\chat\Bubble\*.*"
SetOutPath "$StyleSheetDir\stylesheets\Bubble_Compact"
File /r "${SOURCEDIR}\retroshare-gui\src\gui\qss\chat\Bubble_Compact\*.*"
; Stylesheets
SetOutPath "$INSTDIR\qss"
File /r "${SOURCEDIR}\retroshare-gui\src\qss\*.*"
SectionEnd
;Section $(Section_Link) Section_Link
; Delete any existing keys
; Write the file association
; WriteRegStr HKCR .pqi "" retroshare
; WriteRegStr HKCR retroshare "" "PQI File"
; WriteRegBin HKCR retroshare EditFlags 00000100
; WriteRegStr HKCR "retroshare\shell" "" open
; WriteRegStr HKCR "retroshare\shell\open\command" "" `"$INSTDIR\RetroShare06.exe" "%1"`
;SectionEnd
# Shortcuts
SectionGroup $(Section_Shortcuts) Section_Shortcuts
Section $(Section_StartMenu) Section_StartMenu
SetOutPath "$INSTDIR"
CreateDirectory "$SMPROGRAMS\${APPNAME}"
CreateShortCut "$SMPROGRAMS\${APPNAME}\$(Link_Uninstall).lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
CreateShortCut "$SMPROGRAMS\${APPNAME}\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe" 0
SectionEnd
Section $(Section_Desktop) Section_Desktop
CreateShortCut "$DESKTOP\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe" 0
SectionEnd
Section $(Section_QuickLaunch) Section_QuickLaunch
CreateShortCut "$QUICKLAUNCH\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe" 0
SectionEnd
SectionGroupEnd
Section $(Section_AutoStart) Section_AutoStart
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "RetroShare" "$INSTDIR\${APPNAME}06.exe -m"
SectionEnd
;Section $(Section_AutoStart) Section_AutoStart
; CreateShortCut "$SMSTARTUP\${APPNAME}.lnk" "$INSTDIR\RetroShare06.exe" "" "$INSTDIR\RetroShare06.exe -m" 0
;SectionEnd
Section -FinishSection
${If} $PortableMode = 0
WriteRegStr HKLM "Software\${APPNAME}" "" "$INSTDIR"
WriteRegStr HKLM "Software\${APPNAME}" "Version" "${VERSION}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayName" "${APPNAME}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayVersion" "${VERSION}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayIcon" "$INSTDIR\RetroShare06.exe"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "Publisher" "${PUBLISHER}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "NoModify" "1"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "NoRepair" "1"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "UninstallString" "$INSTDIR\uninstall.exe"
WriteUninstaller "$INSTDIR\uninstall.exe"
${Else}
; Create the file the application uses to detect portable mode
FileOpen $0 "$INSTDIR\portable" w
FileClose $0
${EndIf}
SectionEnd
# Descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Main} $(Section_Main_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Data} $(Section_Data_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Shortcuts} $(Section_Shortcuts_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_StartMenu} $(Section_StartMenu_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Desktop} $(Section_Desktop_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_QuickLaunch} $(Section_QuickLaunch_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugins} $(Section_Plugins_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugin_FeedReader} $(Section_Plugin_FeedReader_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_Plugin_VOIP} $(Section_Plugin_VOIP_Desc)
; !insertmacro MUI_DESCRIPTION_TEXT ${Section_Link} $(Section_Link_Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Section_AutoStart} $(Section_AutoStart_Desc)
!insertmacro MUI_FUNCTION_DESCRIPTION_END
# Uninstall
Section "Uninstall"
; Remove file association registry keys
; DeleteRegKey HKCR .pqi
DeleteRegKey HKCR RetroShare
; Remove program/uninstall regsitry keys
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}"
DeleteRegKey HKLM SOFTWARE\${APPNAME}
DeleteRegValue HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "RetroShare"
; Remove shortcuts, if any
Delete "$SMPROGRAMS\${APPNAME}\*.*"
; Remove desktop shortcut
Delete "$DESKTOP\${APPNAME}.lnk"
; Remove Quicklaunch shortcut
Delete "$QUICKLAUNCH\${APPNAME}.lnk"
; Remove Autstart
Delete "$SMSTARTUP\${APPNAME}.lnk"
; Remove directories used
RMDir "$SMPROGRAMS\${APPNAME}"
RMDir /r "$INSTDIR"
; Don't remove the directory, otherwise
; we lose the XPGP keys.
; Should make this an option though...
RMDir /r "${DATADIR_NORMAL}\extensions6"
RMDir /r "${DATADIR_NORMAL}\stylesheets"
SectionEnd
Function .onInit
StrCpy $InstDirNormal "${INSTDIR_NORMAL}"
StrCpy $InstDirPortable "${INSTDIR_PORTABLE}"
StrCpy $PortableMode 0
StrCpy $INSTDIR "$InstDirNormal"
StrCpy $DataDir "${DATADIR_NORMAL}"
InitPluginsDir
Push $R1
File /oname=$PLUGINSDIR\spltmp.bmp "${SOURCEDIR}\retroshare-gui\src\gui\images\logo\logo_splash.png"
advsplash::show 1200 1000 1000 -1 $PLUGINSDIR\spltmp
Pop $R1
Pop $R1
!insertmacro MUI_LANGDLL_DISPLAY
FunctionEnd
# Installation mode
Function RequireAdmin
UserInfo::GetAccountType
Pop $8
${If} $8 != "admin"
MessageBox MB_ICONSTOP "You need administrator rights to install ${APPNAME}"
SetErrorLevel 740 ;ERROR_ELEVATION_REQUIRED
Abort
${EndIf}
FunctionEnd
Function SetModeDestinationFromInstdir
${If} $PortableMode = 0
StrCpy $InstDirNormal $INSTDIR
${Else}
StrCpy $InstDirPortable $INSTDIR
${EndIf}
FunctionEnd
Function PortableModePageCreate
Call SetModeDestinationFromInstdir ; If the user clicks BACK on the directory page we will remember their mode specific directory
!insertmacro MUI_HEADER_TEXT $(Page_InstallMode) $(Page_InstallMode_Desc)
nsDialogs::Create 1018
Pop $0
${NSD_CreateRadioButton} 5u 25u -10u 8u $(Page_InstallMode_Standard)
Pop $1
${NSD_CreateLabel} 18u 40u -10u 24u $(Page_InstallMode_Standard_Desc)
Pop $0
${NSD_CreateRadioButton} 5u 75u -10u 8u $(Page_InstallMode_Portable)
Pop $2
${NSD_CreateLabel} 18u 90u -10u 24u $(Page_InstallMode_Portable_Desc)
Pop $0
${If} $PortableMode = 0
SendMessage $1 ${BM_SETCHECK} ${BST_CHECKED} 0
${Else}
SendMessage $2 ${BM_SETCHECK} ${BST_CHECKED} 0
${EndIf}
nsDialogs::Show
FunctionEnd
Function PortableModePageLeave
${NSD_GetState} $1 $0
${If} $0 <> ${BST_UNCHECKED}
StrCpy $PortableMode 0
StrCpy $INSTDIR $InstDirNormal
Call RequireAdmin
; Enable sections
SectionSetText ${Section_Shortcuts} $(Section_Shortcuts)
SectionSetText ${Section_StartMenu} $(Section_StartMenu)
SectionSetText ${Section_Desktop} $(Section_Desktop)
SectionSetText ${Section_QuickLaunch} $(Section_QuickLaunch)
SectionSetText ${Section_AutoStart} $(Section_AutoStart)
!insertmacro SelectSection ${Section_Shortcuts}
!insertmacro SelectSection ${Section_AutoStart}
!insertmacro SelectSection ${Section_StartMenu}
!insertmacro SelectSection ${Section_Desktop}
!insertmacro SelectSection ${Section_QuickLaunch}
${Else}
StrCpy $PortableMode 1
StrCpy $INSTDIR $InstDirPortable
; Disable sections
!insertmacro UnselectSection ${Section_Shortcuts}
!insertmacro UnselectSection ${Section_AutoStart}
!insertmacro UnselectSection ${Section_StartMenu}
!insertmacro UnselectSection ${Section_Desktop}
!insertmacro UnselectSection ${Section_QuickLaunch}
SectionSetText ${Section_Shortcuts} ""
SectionSetText ${Section_StartMenu} ""
SectionSetText ${Section_Desktop} ""
SectionSetText ${Section_QuickLaunch} ""
SectionSetText ${Section_AutoStart} ""
${EndIf}
FunctionEnd
Function dir_leave
${If} $PortableMode = 0
StrCpy $DataDir "${DATADIR_NORMAL}"
StrCpy $StyleSheetDir $DataDir
${Else}
StrCpy $DataDir "${DATADIR_PORTABLE}"
StrCpy $StyleSheetDir $INSTDIR
${EndIf}
FunctionEnd