package steam import ( "git.riedstra.us/mitch/steam-export/archive" "os" "path/filepath" ) func (l *Library) PackageGameToFile(index int, file string) error { g := l.Games[index] working_dir, err := os.Getwd() if err != nil { return err } // output := working_dir + "/" + g + ".tar" output, err := filepath.Abs(file) if err != nil { return err } os.Chdir(l.Folder) acf, err := l.FindACF(g) if err != nil { return err } input := []string{"common/" + g, acf} a := archive.Archive{Output: output, Input: input} err = a.Tar() if err != nil { return err } os.Chdir(working_dir) return nil } func (l *Library) ExtractGameFromFile(f string) error { working_dir, err := os.Getwd() if err != nil { return err } f, err = filepath.Abs(f) if err != nil { return err } if err = os.Chdir(l.Folder); err != nil { return err } u := &archive.Unarchive{ Input: f, } if err := u.UnTar(); err != nil { return err } if err = os.Chdir(working_dir); err != nil { return err } return nil } /* func (l *Library) DeleteGame(i index) error { g := l.Games[i] working_dir, err := os.Getwd() if err != nil { return err } // os.RemoveAll() if err = os.Chdir(working_dir); err != nil { return err } return nil } */