bug fixes

This commit is contained in:
huker667 committed 2026-05-04 14:07:50 +03:00
1 parent b666285bd8
commit c6fef39af5
4 files changed
+26 -15

No files matched your search

+3 -3
View File
@@ -1,5 +1,5 @@
package paths package paths
const ReposUrlsFile = "/etc/qulay/repositories" const ReposUrlsFile = "etc/qulay/repositories"
const ReposDir = "/var/lib/qulay/repos/" const ReposDir = "var/lib/qulay/repos/"
const InstalledFile = "/var/lib/qulay/installed" const InstalledFile = "var/lib/qulay/installed"
+8 -6
View File
@@ -24,8 +24,8 @@ import (
var _name string = filepath.Base(os.Args[0]) var _name string = filepath.Base(os.Args[0])
func GetReposUrls() []string { func GetReposUrls(destDir string) []string {
f, err := os.Open(paths.ReposUrlsFile) f, err := os.Open(filepath.Join(destDir, paths.ReposUrlsFile))
if err != nil { if err != nil {
return []string{} return []string{}
} }
@@ -160,9 +160,11 @@ func GetPackageVersion(name string, destDir string) string {
func RegPackage(name string, version string, destDir string) error { func RegPackage(name string, version string, destDir string) error {
data := ReadInstalled(destDir) data := ReadInstalled(destDir)
_, installed := data[name] val, installed := data[name]
if installed {
if data[name][0].(string) != version { if installed && len(val) > 0 {
currentVersion := fmt.Sprintf("%v", val[0])
if currentVersion != version {
data[name][0] = version data[name][0] = version
} }
} else { } else {
@@ -175,7 +177,7 @@ func UnRegPackage(name string, destDir string) error {
data := ReadInstalled(destDir) data := ReadInstalled(destDir)
_, ok := data[name] _, ok := data[name]
if !ok { if !ok {
return fmt.Errorf("!! cant unregister '%s': package", name, "is not installed") return fmt.Errorf("cant unregister '%s': package is not installed", name)
} }
delete(data, name) delete(data, name)
return WriteInstalled(data, destDir) return WriteInstalled(data, destDir)
+4 -3
View File
@@ -16,7 +16,7 @@ var _name string = filepath.Base(os.Args[0])
var _cmds = []string{"h", "+", "-", "g", "s", "p", "u", "r", "q", "v"} var _cmds = []string{"h", "+", "-", "g", "s", "p", "u", "r", "q", "v"}
var _root_cmds = []string{"+", "-", "u", "i"} var _root_cmds = []string{"+", "-", "u", "i"}
const _version string = "0.5" const _version string = "0.6"
const _help string = `{_name}: command-line interface to the Qulay Package Manager const _help string = `{_name}: command-line interface to the Qulay Package Manager
Usage: Usage:
{_name} h -> help menu {_name} h -> help menu
@@ -104,7 +104,7 @@ func main() {
} }
} }
} else if cmds[0] == "u" { } else if cmds[0] == "u" {
database.DownloadRepos(database.GetReposUrls(), destDir) database.DownloadRepos(database.GetReposUrls(destDir), destDir)
} else if cmds[0] == "g" { } else if cmds[0] == "g" {
if len(oths) < 1 { if len(oths) < 1 {
fmt.Println("!! no package(s) received") fmt.Println("!! no package(s) received")
@@ -114,7 +114,7 @@ func main() {
fmt.Println(database.GetPackageVersion(name, destDir)) fmt.Println(database.GetPackageVersion(name, destDir))
} }
} else if cmds[0] == "r" { } else if cmds[0] == "r" {
for _, url := range database.GetReposUrls() { for _, url := range database.GetReposUrls(destDir) {
fmt.Println(url) fmt.Println(url)
} }
} else if cmds[0] == "q" { } else if cmds[0] == "q" {
@@ -124,6 +124,7 @@ func main() {
} else if cmds[0] == "s" { } else if cmds[0] == "s" {
if len(oths) < 1 { if len(oths) < 1 {
pkgs := pkg.GetPackages(destDir) pkgs := pkg.GetPackages(destDir)
fmt.Println(pkgs)
for _, p := range pkgs { for _, p := range pkgs {
if database.IsInstalled(p.Repo + "/" + p.Name, destDir) { if database.IsInstalled(p.Repo + "/" + p.Name, destDir) {
fmt.Printf("[+] %s/%s - %v - %v\n", p.Repo, p.Name, p.Data[0], p.Data[1]) fmt.Printf("[+] %s/%s - %v - %v\n", p.Repo, p.Name, p.Data[0], p.Data[1])
+11 -3
View File
@@ -165,7 +165,14 @@ func Install(name string, args []string, destDir string) error {
if n == pkg.Name || n == pkg.Repo + "/" + pkg.Name { if n == pkg.Name || n == pkg.Repo + "/" + pkg.Name {
return errors.New("broken depends in package " + n) return errors.New("broken depends in package " + n)
} }
fmt.Printf("%v. %s - %v", i, n, database.GetPackageVersion(n, destDir))
depPkgs := FindPackages(n, destDir)
v := "not found"
if len(depPkgs) > 0 {
v = fmt.Sprintf("%v", depPkgs[0].Data[1])
}
fmt.Printf("%v. %s - %v\n", i+1, n, v)
} }
} }
} }
@@ -234,9 +241,10 @@ func Remove(name string, args []string, destDir string) error {
err = database.UnRegPackage(pkg.Repo + "/" + pkg.Name, destDir) err = database.UnRegPackage(pkg.Repo + "/" + pkg.Name, destDir)
if err != nil { if err != nil {
return errors.New("failed to unregister package in installed database: " + err.Error()) return err
} }
fmt.Println(":: " + pkg.Repo + "/" + pkg.Name + " (" + database.GetPackageVersion(pkg.Repo + "/" + pkg.Name, destDir) + ") removed") v := helpers.ToString(pkg.Data[1])
fmt.Println(":: " + pkg.Repo + "/" + pkg.Name + " (" + v + ") removed")
return nil return nil
} }