5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-04 02:02:55 +08:00
wails/v2/pkg/commands/build/packager_linux.go

114 lines
3.0 KiB
Go

package build
func packageApplication(_ *Options) error {
//
//// Check we have AppImage tools
//
//// Create AppImage build directory
//buildDirectory, err := getApplicationBuildDirectory(options, "linux")
//if err != nil {
// return err
//}
//
//defer deleteLinuxPackFiles(buildDirectory)
//
//// Get the name of the application and ensure we lower+kebab case it
//name := filepath.Base(options.ProjectData.OutputFilename)
//
//// Calculate asset directory
//assetDir := getPackageAssetsDirectory()
//
//// Copy default icon if one doesn't exist
//baseBuildDirectory, err := getBuildBaseDirectory(options)
//if err != nil {
// return err
//}
//iconFile := filepath.Join(baseBuildDirectory, "icon.png")
//if !fs.FileExists(iconFile) {
// err = fs.CopyFile(defaultIconPath(), iconFile)
// if err != nil {
// return err
// }
//}
//
//// Copy Icon
//targetIcon := filepath.Join(buildDirectory, name+".png")
//err = fs.CopyFile(iconFile, targetIcon)
//if err != nil {
// return err
//}
//
//// Copy app.desktop
//dotDesktopFile := filepath.Join(baseBuildDirectory, "linux", name+".desktop")
//if !fs.FileExists(dotDesktopFile) {
// bytes, err := ioutil.ReadFile(filepath.Join(assetDir, "app.desktop"))
// if err != nil {
// return err
// }
// appDesktop := string(bytes)
// appDesktop = strings.ReplaceAll(appDesktop, `{{.Name}}`, name)
// err = ioutil.WriteFile(dotDesktopFile, []byte(appDesktop), 0644)
// if err != nil {
// return err
// }
//}
//
//// Copy AppRun file
//// targetFilename = filepath.Join(buildDirectory, "AppRun")
//// if !fs.FileExists(targetFilename) {
//// bytes, err := ioutil.ReadFile(filepath.Join(assetDir, "AppRun"))
//// if err != nil {
//// return err
//// }
//// appRun := string(bytes)
//// appRun = strings.ReplaceAll(appRun, `{{.OutputFilename}}`, name)
//
//// err = ioutil.WriteFile(targetFilename, []byte(appRun), 0644)
//// if err != nil {
//// return err
//// }
//// }
//
//// Copy Binary
//sourceFile := filepath.Join(options.ProjectData.Path, options.ProjectData.OutputFilename)
//targetFile := filepath.Join(buildDirectory, options.ProjectData.OutputFilename)
//err = fs.CopyFile(sourceFile, targetFile)
//if err != nil {
// return err
//}
//err = os.Chmod(targetFile, 0777)
//if err != nil {
// return err
//}
//
///** Pack App **/
//
//// Make file executable
//// Set environment variable: OUTPUT=outputfilename
//command := shell.NewCommand("linuxdeploy-x86_64.AppImage")
//command.Dir(buildDirectory)
//
//argslice := slicer.String()
//argslice.Add("--appdir", "AppDir")
//argslice.Add("-d", filepath.Join("..", name+".desktop"))
//argslice.Add("-i", name+".png")
//argslice.Add("-e", name)
//argslice.Add("--output", "appimage")
//command.AddArgs(argslice.AsSlice())
//
//command.Env("OUTPUT", name+".AppImage")
//
//err = command.Run()
//if err != nil {
// println(command.Stdout())
// println(command.Stderr())
// return err
//}
//
//// Copy app to project dir
//
//println(buildDirectory)
return nil
}