@@ -64,6 +64,8 @@ protected File doApply(LinuxPackager packager) throws Exception {
64
64
File executable = packager .getExecutable ();
65
65
File javaFile = new File (appFolder , jreDirectoryName + "/bin/java" );
66
66
File mimeXmlFile = packager .getMimeXmlFile ();
67
+ File installationPath = packager .getLinuxConfig ().getInstallationPath ();
68
+ File appPath = new File (installationPath , name );
67
69
68
70
// generates desktop file from velocity template
69
71
File desktopFile = new File (assetsFolder , name + ".desktop" );
@@ -87,7 +89,7 @@ protected File doApply(LinuxPackager packager) throws Exception {
87
89
88
90
Mapper appFolderMapper = new Mapper ();
89
91
appFolderMapper .setType ("perm" );
90
- appFolderMapper .setPrefix ("/opt/" + name );
92
+ appFolderMapper .setPrefix (appPath . getAbsolutePath () );
91
93
appFolderMapper .setFileMode ("644" );
92
94
93
95
Data appFolderData = new Data ();
@@ -102,12 +104,12 @@ protected File doApply(LinuxPackager packager) throws Exception {
102
104
103
105
Mapper executableMapper = new Mapper ();
104
106
executableMapper .setType ("perm" );
105
- executableMapper .setPrefix ("/opt/" + name );
107
+ executableMapper .setPrefix (appPath . getAbsolutePath () );
106
108
executableMapper .setFileMode ("755" );
107
109
108
110
Data executableData = new Data ();
109
111
executableData .setType ("file" );
110
- executableData .setSrc (new File ( appFolder . getAbsolutePath () + "/" + name ) );
112
+ executableData .setSrc (executable );
111
113
executableData .addMapper (executableMapper );
112
114
113
115
dataProducers .add (executableData );
@@ -150,7 +152,7 @@ protected File doApply(LinuxPackager packager) throws Exception {
150
152
Mapper javaBinaryMapper = new Mapper ();
151
153
javaBinaryMapper .setType ("perm" );
152
154
javaBinaryMapper .setFileMode ("755" );
153
- javaBinaryMapper .setPrefix ("/opt/" + name + "/" + jreDirectoryName + "/bin" );
155
+ javaBinaryMapper .setPrefix (appPath + "/" + jreDirectoryName + "/bin" );
154
156
155
157
Data javaBinaryData = new Data ();
156
158
javaBinaryData .setType ("file" );
@@ -168,7 +170,7 @@ protected File doApply(LinuxPackager packager) throws Exception {
168
170
Mapper javaSpawnHelperMapper = new Mapper ();
169
171
javaSpawnHelperMapper .setType ("perm" );
170
172
javaSpawnHelperMapper .setFileMode ("755" );
171
- javaSpawnHelperMapper .setPrefix ("/opt/" + name + "/" + jreDirectoryName + "/lib" );
173
+ javaSpawnHelperMapper .setPrefix (appPath + "/" + jreDirectoryName + "/lib" );
172
174
173
175
Data javaSpawnHelperData = new Data ();
174
176
javaSpawnHelperData .setType ("file" );
@@ -182,7 +184,7 @@ protected File doApply(LinuxPackager packager) throws Exception {
182
184
183
185
// symbolic link in /usr/local/bin to app binary data producer
184
186
185
- DataProducer linkData = createLink ("/usr/local/bin/" + name , "/opt/" + name + "/" + name );
187
+ DataProducer linkData = createLink ("/usr/local/bin/" + executable . getName (), appPath + "/" + executable . getName () );
186
188
187
189
dataProducers .add (linkData );
188
190
0 commit comments