in src/main/java/org/apache/netbeans/nbpackage/rpm/RpmTask.java [64:97]
protected void customizeImage(Path image) throws Exception {
String pkgName = packageName();
// @TODO support other installation bases
String base = "usr";
Path baseDir = image.resolve(base);
Path appDir = baseDir.resolve("lib").resolve(pkgName);
Files.move(baseDir.resolve("lib").resolve("APPDIR"),
appDir);
String execName = findLauncher(appDir.resolve("bin")).getFileName().toString();
String packageLocation = "/" + base + "/lib/" + pkgName;
Path binDir = baseDir.resolve("bin");
Files.createDirectories(binDir);
setupLauncher(binDir, packageLocation, execName);
Path share = baseDir.resolve("share");
Files.createDirectories(share);
setupIcons(share, pkgName);
Path desktopFile = setupDesktopFile(share, "/" + base + "/bin/" + execName, pkgName);
Path buildRootDir = image.resolve("BUILDROOT");
Files.createDirectories(buildRootDir);
String buildName = packageName() + "-" + packageVersion() + "-" + "0" + "." + packageArch();
Path buildNameDir = buildRootDir.resolve(buildName);
Files.createDirectories(buildNameDir);
Path buildUsrDir = buildNameDir.resolve(base);
Files.move(baseDir, buildUsrDir);
Path rpmsDir = image.resolve("RPMS");
Files.createDirectories(rpmsDir);
}