1; 1. Open this file with Inno Setup with Unicode support and preprocessor.
2; 2. Change "#defines" below (or see below how to use COPYQ_INNO_SETUP environment variable).
3; 3. Compile "setup.exe".
4
5; Path for output installation file
6#define Output "."
7
8[Setup]
9AppId={{9DF1F443-EA0B-4C75-A4D3-767A7783228E}
10AppName=CopyQ
11AppVersion={#AppVersion}
12AppVerName=CopyQ {#AppVersion}
13AppPublisher=Lukas Holecek
14AppPublisherURL=http://hluk.github.io/CopyQ/
15AppSupportURL=http://hluk.github.io/CopyQ/
16AppUpdatesURL=http://hluk.github.io/CopyQ/
17DefaultDirName={pf}\CopyQ
18DefaultGroupName=CopyQ
19AllowNoIcons=yes
20LicenseFile={#Source}\LICENSE
21OutputDir={#Output}
22OutputBaseFilename=copyq-{#AppVersion}-setup
23Compression=lzma
24SolidCompression=yes
25SetupIconFile={#Source}\src\images\icon.ico
26WizardImageFile=logo.bmp
27WizardSmallImageFile=logo-small.bmp
28
29[Languages]
30Name: en; MessagesFile: "compiler:Default.isl"
31Name: cz; MessagesFile: "compiler:Languages\Czech.isl"
32Name: de; MessagesFile: "compiler:Languages\German.isl"
33Name: es; MessagesFile: "compiler:Languages\Spanish.isl"
34Name: it; MessagesFile: "compiler:Languages\Italian.isl"
35
36[CustomMessages]
37en.ProgramFiles=Program Files
38en.Translations=Translations
39en.Plugins=Plugins
40en.PluginText=Text with Highlighting
41en.PluginImages=Images
42en.PluginWeb=Web Pages
43en.PluginNotes=Notes
44en.PluginEncrypted=Encryption
45en.PluginFakeVim=FakeVim Editor
46en.PluginSynchronize=Synchronize Items to Disk
47en.PluginTags=Item Tags
48en.PluginPinned=Pinned Items
49
50cz.ProgramFiles=Soubory programu
51cz.Translations=Překlady
52cz.Plugins=Zásuvné moduly
53cz.PluginText=Text se zvýrazňováním
54cz.PluginImages=Obrázky
55cz.PluginWeb=Webové stránky
56cz.PluginNotes=Poznámky
57cz.PluginEncrypted=Šifrování
58cz.PluginFakeVim=FakeVim editor
59cz.PluginSynchronize=Synchronizace prvků na disk
60cz.PluginTags=Štítky u prvků
61cz.PluginPinned=Připnuté prvky
62
63de.AutoStartProgram=Starte %1 automatisch
64
65es.ProgramFiles=Archivos de programa
66es.Plugins=Complementos
67es.PluginText=Texto resaltado
68es.PluginImages=Imágenes
69es.PluginWeb=Páginas web
70
71it.ProgramFiles=File programma
72it.Translations=Traduzioni
73it.Plugins=Plugin
74it.PluginText=Testo evidenziato
75it.PluginImages=Immagini
76it.PluginWeb=Pagine web
77it.PluginNotes=Note
78it.PluginEncrypted=Criptazione
79it.PluginFakeVim=Editor FakeVim
80it.PluginSynchronize=Sincronizza elementi nel disco
81it.PluginTags=Tag elementi
82
83
84[Types]
85Name: "full"; Description: "{code:GetFullInstallation}"
86Name: "compact"; Description: "{code:GetCompactInstallation}"
87Name: "custom"; Description: "{code:GetCustomInstallation}"; Flags: iscustom
88
89[Components]
90Name: "program"; Description: "{cm:ProgramFiles}"; Types: full compact custom; Flags: fixed
91Name: "translations"; Description: "{cm:Translations}"; Types: full compact custom
92Name: "plugins"; Description: "{cm:Plugins}"; Types: full
93Name: "plugins/text"; Description: "{cm:PluginText}"; Types: full
94Name: "plugins/images"; Description: "{cm:PluginImages}"; Types: full
95Name: "plugins/notes"; Description: "{cm:PluginNotes}"; Types: full
96Name: "plugins/encrypted"; Description: "{cm:PluginEncrypted}"; Types: full
97Name: "plugins/fakevim"; Description: "{cm:PluginFakeVim}"; Types: full
98Name: "plugins/synchronize"; Description: "{cm:PluginSynchronize}"; Types: full
99Name: "plugins/tags"; Description: "{cm:PluginTags}"; Types: full
100Name: "plugins/pinned"; Description: "{cm:PluginPinned}"; Types: full
101
102[Tasks]
103Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; Flags: unchecked
104Name: "startup"; Description: {cm:AutoStartProgram,CopyQ}; Flags: unchecked
105
106[Files]
107Source: "{#Root}\copyq.exe"; DestDir: "{app}"; Components: program; Flags: ignoreversion
108Source: "{#Root}\snoretoast.exe"; DestDir: "{app}"; Components: program; Flags: ignoreversion skipifsourcedoesntexist
109Source: "{#Root}\AUTHORS"; DestDir: "{app}"; Components: program; Flags: ignoreversion
110Source: "{#Root}\LICENSE"; DestDir: "{app}"; Components: program; Flags: ignoreversion
111Source: "{#Root}\README.md"; DestDir: "{app}"; Components: program; Flags: ignoreversion
112Source: "{#Root}\themes\*"; DestDir: "{app}\themes"; Components: program; Flags: ignoreversion
113Source: "{#Root}\translations\*.qm"; DestDir: "{app}\translations"; Components: translations; Flags: ignoreversion
114Source: "{#Root}\plugins\*itemtext.dll"; DestDir: "{app}\plugins"; Components: plugins/text; Flags: ignoreversion
115Source: "{#Root}\plugins\*itemimage.dll"; DestDir: "{app}\plugins"; Components: plugins/images; Flags: ignoreversion
116Source: "{#Root}\plugins\*itemnotes.dll"; DestDir: "{app}\plugins"; Components: plugins/notes; Flags: ignoreversion
117Source: "{#Root}\plugins\*itemencrypted.dll"; DestDir: "{app}\plugins"; Components: plugins/encrypted; Flags: ignoreversion
118Source: "{#Root}\plugins\*itemfakevim.dll"; DestDir: "{app}\plugins"; Components: plugins/fakevim; Flags: ignoreversion
119Source: "{#Root}\plugins\*itemsync.dll"; DestDir: "{app}\plugins"; Components: plugins/synchronize; Flags: ignoreversion
120Source: "{#Root}\plugins\*itemtags.dll"; DestDir: "{app}\plugins"; Components: plugins/tags; Flags: ignoreversion
121Source: "{#Root}\plugins\*itempinned.dll"; DestDir: "{app}\plugins"; Components: plugins/pinned; Flags: ignoreversion
122
123; Qt and toolchain
124Source: "{#Root}\bearer\*.dll"; DestDir: "{app}\bearer"; Components: program; Flags: ignoreversion recursesubdirs createallsubdirs
125Source: "{#Root}\imageformats\*.dll"; DestDir: "{app}\imageformats"; Components: program; Flags: ignoreversion recursesubdirs createallsubdirs
126Source: "{#Root}\platforms\*.dll"; DestDir: "{app}\platforms"; Components: program; Flags: ignoreversion recursesubdirs createallsubdirs
127Source: "{#Root}\styles\*.dll"; DestDir: "{app}\styles"; Components: program; Flags: ignoreversion recursesubdirs createallsubdirs
128Source: "{#Root}\*.dll"; DestDir: "{app}"; Components: program; Flags: ignoreversion
129
130[Icons]
131Name: "{group}\CopyQ"; Filename: "{app}\copyq.exe"
132Name: "{commondesktop}\CopyQ"; Filename: "{app}\copyq.exe"; Tasks: desktopicon
133Name: "{userstartup}\CopyQ"; Filename: "{app}\copyq.exe"; Tasks: startup
134
135[Run]
136Filename: "{app}\copyq.exe"; Description: "{cm:LaunchProgram,CopyQ}"; Flags: nowait postinstall skipifsilent
137
138[Code]
139function GetFullInstallation(Param: string): string;
140begin
141	Result := SetupMessage(msgFullInstallation);
142end;
143
144function GetCustomInstallation(Param: string): string;
145begin
146	Result := SetupMessage(msgCustomInstallation);
147end;
148
149function GetCompactInstallation(Param: string): string;
150begin
151	Result := SetupMessage(msgCompactInstallation);
152end;
153