feat: finalize pkg
This commit is contained in:
parent
98c91b5ca0
commit
e34caf4ffe
8
.idea/.gitignore
generated
vendored
Normal file
8
.idea/.gitignore
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# Editor-based HTTP Client requests
|
||||
/httpRequests/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
9
.idea/flatpak-downgrade.iml
generated
Normal file
9
.idea/flatpak-downgrade.iml
generated
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="WEB_MODULE" version="4">
|
||||
<component name="Go" enabled="true" />
|
||||
<component name="NewModuleRootManager">
|
||||
<content url="file://$MODULE_DIR$" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
8
.idea/modules.xml
generated
Normal file
8
.idea/modules.xml
generated
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/flatpak-downgrade.iml" filepath="$PROJECT_DIR$/.idea/flatpak-downgrade.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
6
.idea/vcs.xml
generated
Normal file
6
.idea/vcs.xml
generated
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
47
cmd/root.go
47
cmd/root.go
@ -1,23 +1,18 @@
|
||||
/*
|
||||
Copyright © 2024 Mark Bailey <gitea.com/cerbervs>
|
||||
This file is part of a CLI application developed by Mark Bailey
|
||||
*/
|
||||
// Package cmd
|
||||
package cmd
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"github.com/spf13/cobra"
|
||||
"log"
|
||||
"os"
|
||||
"os/exec"
|
||||
"strings"
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var (
|
||||
// Flags
|
||||
IgnoreUpgrade bool
|
||||
Unmask bool
|
||||
Version string
|
||||
|
||||
// Args
|
||||
@ -44,36 +39,25 @@ func downgrade() {
|
||||
|
||||
cmd := exec.Command("flatpak", "update", "--commit="+Version, PkgName)
|
||||
|
||||
outpipe, _ := cmd.StdoutPipe()
|
||||
defer outpipe.Close()
|
||||
scanner := bufio.NewScanner(outpipe)
|
||||
|
||||
cmd.Stdin = os.Stdin
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
|
||||
err := cmd.Start()
|
||||
err := cmd.Run()
|
||||
if err != nil {
|
||||
log.Fatal("Start Error: ", "\nPlease try running with root privileges.")
|
||||
panic(err)
|
||||
}
|
||||
|
||||
var text string
|
||||
for scanner.Scan() {
|
||||
text = scanner.Text() + text
|
||||
if strings.Contains(scanner.Text(), "Nothing to do.") {
|
||||
os.Exit(0)
|
||||
if IgnoreUpgrade && Unmask {
|
||||
log.Fatal("Error: Cannot use both --ignore-upgrade and --unmask flags together.")
|
||||
}
|
||||
}
|
||||
|
||||
fmt.Println("Text was: " + text)
|
||||
|
||||
if IgnoreUpgrade {
|
||||
mask()
|
||||
} else if Unmask {
|
||||
unmask()
|
||||
}
|
||||
|
||||
fmt.Println("Downgrade successful!")
|
||||
os.Exit(0)
|
||||
}
|
||||
|
||||
func mask() {
|
||||
@ -86,6 +70,15 @@ func mask() {
|
||||
}
|
||||
}
|
||||
|
||||
func unmask() {
|
||||
mask := exec.Command("flatpak", "mask", "--remove", PkgName)
|
||||
maskErr := mask.Run()
|
||||
if maskErr != nil {
|
||||
log.Fatal("Error: ", maskErr, "\nPlease try running with root privileges.")
|
||||
} else {
|
||||
fmt.Println("Marked ", PkgName, " as upgradable.")
|
||||
}
|
||||
}
|
||||
func Execute() {
|
||||
err := rootCmd.Execute()
|
||||
if err != nil {
|
||||
@ -95,5 +88,11 @@ func Execute() {
|
||||
|
||||
func init() {
|
||||
rootCmd.Flags().BoolVarP(&IgnoreUpgrade, "ignore-upgrage", "i", false, "Mark flatpak as ignored for upgrade")
|
||||
rootCmd.Flags().BoolVarP(&Unmask, "unmask", "u", false, "Mark flatpak as upgradable")
|
||||
rootCmd.Flags().StringVarP(&Version, "version", "v", "", "Commit hash of the specific version")
|
||||
}
|
||||
|
||||
/*
|
||||
* Copyright © 2024 Mark Bailey <gitea.com/cerbervs>
|
||||
* This file is part of a CLI application developed by Mark Bailey
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user