Merge pull request 'merge master into develop' (#22) from master into develop
All checks were successful
CI / Lint (push) Successful in 1m10s
CI / Test (push) Successful in 3m38s
CI / Build (push) Successful in 4m9s

Reviewed-on: #22
This commit is contained in:
s1d3sw1ped
2024-03-12 05:16:43 +00:00
5 changed files with 28 additions and 20 deletions

View File

@@ -90,8 +90,9 @@ jobs:
- name: Build for linux
run: |
fyne package --appBuild=${BUILD} --exe bin/swiped-mod-switcher-${VERSION}.${BUILD}-${GOOS}-${GOARCH}${EXE} main.go
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}
env:
VERSION: ${{github.ref_name}}
BUILD: ${{github.run_number}}
GOOS: linux
GOARCH: amd64
@@ -101,12 +102,13 @@ jobs:
- name: Build for windows
run: |
fyne package --appBuild=${BUILD} --exe bin/swiped-mod-switcher-${VERSION}.${BUILD}-${GOOS}-${GOARCH}${EXE} main.go
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}.exe
env:
VERSION: ${{github.ref_name}}
BUILD: ${{github.run_number}}
GOOS: windows
GOARCH: amd64
EXE: .exe
EXE: ".exe"
CGO_ENABLED: 1
CC: x86_64-w64-mingw32-gcc

View File

@@ -6,7 +6,7 @@ on:
jobs:
lint:
name: Lint
env:
env:
RUNNER_TOOL_CACHE: /toolcache
runs-on: ubuntu-latest
steps:
@@ -91,25 +91,25 @@ jobs:
- name: Build for linux
run: |
fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64 main.go
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}
ls bin
env:
VERSION: ${{github.ref_name}}
BUILD: ${{github.run_number}}
GOOS: linux
GOARCH: amd64
EXE: ""
CGO_ENABLED: 1
CC: gcc
- name: Build for windows
run: |
fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-windows-amd64.exe main.go
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}.exe
ls bin
env:
VERSION: ${{github.ref_name}}
BUILD: ${{github.run_number}}
GOOS: windows
GOARCH: amd64
EXE: .exe
CGO_ENABLED: 1
CC: x86_64-w64-mingw32-gcc

View File

@@ -87,7 +87,7 @@ jobs:
- name: Build for linux
run: |
fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64 main.go
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}
env:
VERSION: ${{github.ref_name}}
BUILD: ${{github.run_number}}
@@ -97,10 +97,9 @@ jobs:
CGO_ENABLED: 1
CC: gcc
- name: Build for windows
run: |
fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-windows-amd64.exe main.go
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}.exe
env:
VERSION: ${{github.ref_name}}
BUILD: ${{github.run_number}}
@@ -110,7 +109,6 @@ jobs:
CGO_ENABLED: 1
CC: x86_64-w64-mingw32-gcc
- name: Release binaries
uses: https://gitea.com/actions/release-action@main
with:

View File

@@ -1,6 +1,6 @@
[Details]
Icon = "icon.png"
Name = "Swiped Mod Switcher"
ID = "com.s1d3sw1ped.swipedmodswitcher"
Version = "0.0.0"
Build = 1
Icon = "icon.png"
Name = "Swiped Mod Switcher"
ID = "com.s1d3sw1ped.swipedmodswitcher"
Version = "0.0.0"
Build = 2

14
main.go
View File

@@ -18,6 +18,8 @@ import (
"gopkg.in/yaml.v3"
)
var Version = ""
type Config struct {
ModProfilesDirectory string `yaml:"mod_profiles_dir"`
GameModsDirectory string `yaml:"game_mods_dir"`
@@ -61,10 +63,12 @@ var cfg *Config
func main() {
if !admin.Admin() {
fmt.Println("not running as administrator relaunching")
if err := admin.RunSelfElevated(); err != nil {
panic(err)
}
os.Exit(0)
return // just incase
}
cfg = loadConfig()
@@ -136,9 +140,13 @@ func fillGrid(grid *fyne.Container, parent fyne.Window) {
grid.Hide()
defer grid.Show()
grid.RemoveAll()
for _, profile := range profiles {
profilename := filepath.Base(profile)
grid.Add(widget.NewButton(profilename, makeIFunc(profile, archive, parent)))
if admin.Admin() {
for _, profile := range profiles {
profilename := filepath.Base(profile)
grid.Add(widget.NewButton(profilename, makeIFunc(profile, archive, parent)))
}
} else {
grid.Add(widget.NewLabel("not running as administrator"))
}
}